MM7 and "Forward to e-mail address"

MM7 and "Forward to e-mail address" SearchSearch
Author Message
Vladimir Brezhnev
New member
Username: Vladimir

Post Number: 1
Registered: 12-2004
Posted on Tuesday, December 14, 2004 - 07:33 am:   

I have some troubles with MM7 in nowsms.

There is MIME header when I send attachment to MMSC using MM7 interface:

------------=_1103008320-3892-0
Content-Type: image/gif; name="weather.gif"
Content-Disposition: attachment; filename="weather.gif"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
X-Mailer: MIME-tools 5.411 (Entity 5.404)
Content-Id: <weather>

R0lGODlhZQBQAKIAAP///wAAf76+vv8AAAMDfwAAfgp7Awd7ACH5BAEAAAAA
[skipped]

And there is the header, when MMSC sends MMS to e-mail:

----mime-boundary-mms-message-3E7CB712
Content-Type: image/gif; name="weather.gif"
Content-disposition: attachment; filename="weather.gif"
Content-location: weather.gif
Content-Transfer-Encoding: quoted-printable

R0lGODlhZQBQAKIAAP///wAAf76+vv8AAAMDfwAAfgp7Awd7ACH5BAEAAAAA
[skipped]


Content-Type are different! (in the first header -"base64", in the second "quoted-printable")
How to solve this problem?
Bryce Norwood - NowSMS Support
Board Administrator
Username: Bryce

Post Number: 3820
Registered: 10-2002
Posted on Thursday, December 30, 2004 - 09:43 pm:   

Follow-up posting ... Vladimir and I traded a number of e-mails on this issue.

And I can finally provide some follow-up information on what was going wrong.

NowSMS was not properly decoding MM7 submissions when MIME headers were separated by only a LF (linefeed), instead of CRLF (carriage return/line feed).

The result was that NowSMS did not see the "Content-Transfer-Encoding:" header which told it that the content was in BASE64 to begin with. Therefore, the content was never decoded from BASE64 format.

According to the MIME specifications, MIME headers should always be terminated by CRLF ... and neither CR or LF should appear by themselves. So technically, the MM7 submission is in error because the headers are not following the MIME specifications.

So the quick solution is to make sure that CRLF is used to terminate each MIME header.

However, we have also made modifications to NowSMS to make it more flexible so that it can support MIME headers that terminate with only LF. The update that includes this change can be downloaded at http://www.nowsms.com/download/20041230.zip.

-bn