Summary: | Cannot send from kmail with "allow 8-bit" setting | ||
---|---|---|---|
Product: | [Unmaintained] kmail | Reporter: | Niels Elgaard Larsen <elgaard> |
Component: | sending | Assignee: | kdepim bugs <kdepim-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | giovanni, jlp, mss, syam, w-e-f-bauer |
Priority: | NOR | Keywords: | triaged |
Version: | 1.6.1 | ||
Target Milestone: | --- | ||
Platform: | Debian testing | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | A hack to fix checking of 8BITMIME |
Description
Niels Elgaard Larsen
2004-03-09 02:46:41 UTC
The "allow 8-bit" setting has to go. KMail or more precisely the SMTP kioslave have to decide automatically whether 8-bit is possible or not. Anyway, the obvious solution is not to use "allow 8-bit" if KMail tells you that the server doesn't support it. I had exactly the same error using KDE 3.2.1 on SUSE 8.2. since I upgraded from version KDE 3.2.0 to KDE 3.2.1 This error happens always when I try to send mails in 8-bit mode. Changes of the charset type (us-ascii, utf-8, ...) doesn't show any effect. I have the same problem after upgrading on a SuSE 8.1 to 3.2.1 from 3.1.3. Additioanally - and it drives me crazy - I cannot find the "allow 8-bit" switch in the settings (although I use the Greek translation). Same problem here, but only with the mailserver from 1und1, t-online is working fine I have spent a some time debugging the problem mentioned in bug 240256 on Debian and bug 77058 on KDE. In fact, I have looked through the kmail (kdepim) and kio_smtp (kdebase) source code. Perhaps I did not need to do so, but it was a real problem for me and the explanations given were not obvious. The problem is not with KMail. It is not technically even with kio_slave. The real problem lies somewhere between the server and kio_slave. Allow me to explain. Version 3.2.1 of kio_smtp now checks the EHLO capabilities of the SMTP server. If you "telnet your-smtp-server smtp" and type in something like "EHLO your-machine-name", you should get a whole list of capabilities back, each starting with the string "250". The problem is that kio_smtp now checks for the capability "8BITMIME" to determine whether the server supports this facility or not. The real problem is that many servers DO sort-of support this facility, but do not advertise it. Hence, kio_smtp does not see "8BITMIME" and thinks that the e-mail server cannot handle it. The solution is to either: 1. Hack kio_smtp to send 8-bit e-mails, whether or not the server advertises this clause, or 2. Change your e-mail server. Point 1 is not really a viable option. Point 2 is not much easier! I run the Exim server (v3, as it happens, on a Debian stable box). The appropriate option to modify in /etc/exim/exim.conf is: accept_8bitmime = true Please read the warning associated with this option, right there in the config file. The Exim 4 documentation states: This option causes Exim to send 8BITMIME in its response to an SMTP EHLO command, and to accept the BODY= parameter on MAIL commands. However, though Exim is 8-bit clean, it is not a protocol converter, and it takes no steps to do anything special with messages received by this route. Consequently, this option is turned off by default. You have a problem if you (a) don't control the SMTP server and (b) need to send 8-bit non-quoted-printable e-mails. In that case, you may want to add the following (not recommended!) patch to the file kioslave/smtp/smtp.cc in the kdebase package: --- smtp.cc.orig 2004-02-08 23:28:03.000000000 +1100 +++ smtp.cc 2004-04-16 20:18:16.000000000 +1000 @@ -230,6 +230,8 @@ return; } +/* Always assume the SMTP server has 8-bit capabilities. This is a hack! + if ( request.is8BitBody() && !haveCapability("8BITMIME") && metaData("8bitmime") != "on" ) { error( KIO::ERR_SERVICE_NOT_AVAILABLE, @@ -237,6 +239,7 @@ "Please use base64 or quoted-printable encoding.") ); return; } +*/ queueCommand( new MailFromCommand( this, request.fromAddress().latin1(), request.is8BitBody(), request.size() ) ); Created attachment 5659 [details]
A hack to fix checking of 8BITMIME
I have the same problem in version 1.9.4. I have already contacted my webhoster which administrates my mail server but they have told me the server would not reject 8 bit encoded messages. So the only problem really seems to be that kmail (or kioslave) does not detect the server capabilities correctly. *** Bug 98069 has been marked as a duplicate of this bug. *** *** Bug 112812 has been marked as a duplicate of this bug. *** *** Bug 122692 has been marked as a duplicate of this bug. *** *** Bug 125228 has been marked as a duplicate of this bug. *** The option is long gone and I haven't seen any problems with my 8BITMIME MSA for quite some time. |