Problem CPANEL-39824 : message has lines too long for transport - Since January 21, 2022
-
Hi Rex, This is the process that triggered me seeing the error in the first place.
As desired I can open a ticket or feature request using one of my production (but not used much as it's in France) DNSONLY boxes. You can do most anything you want with it as long as it serves DNS... Let me know, best, Michael0 -
Thanks Sparek, root@srv07 [~/bin]# grep -i linelen /etc/exim.conf.localopts message_linelength_limit=65536 root@dnsonly04 [~]# grep -i linelen /etc/exim.conf.localopts root@dnsonly04 [~]#
Yeah, seems like an echo 'message_linelength_limit=65536' >> /etc/exim.conf.localopts should do the trick? (Well and restart Exim) Thoughts?0 -
You would have to run [font="courier new">/scripts/buildeximconf after making changes to the [font="courier new">/etc/exim.conf.localopts file and then restart Exim. The [font="courier new">/scripts/buildeximconf script just takes all of the various configuration options and templates scattered about for cPanel's Exim control and builds an actual [font="courier new">/etc/exim.conf file out of it. You still need to restart Exim after all of this to have the new configuration go into affect - [font="courier new">/scripts/restartsrv_exim IF [font="courier new">message_linelength_limit is an actual configuration option that is configured in [font="courier new">/etc/exim.conf.localopts. I have no idea if that's actually the case. 0 -
This must be fixed ASAP.... Add higher number to allow this problem to not happen again... Best Regards, Paulo Eduardo 0 -
@Paulus Cobris - it is fixed. 0 -
Hi good day, After much trying and testing, this is working for me with SMTP Relay from WHM. And this made the difference: Thanks. 0 -
I am on v 102.0.11 and I am having this issue now. It is obviously not resolved. I have tried changing the value but it has no effect. Still get the error when trying to send email via php 0 -
@mdspidle - could you submit a ticket to our team so we can check this out? 0 -
I am on cPanel & WHM v102.0.12 Still this problem exist. 0 -
@Steps Group - were you able to increase the value in WHM? 0 -
I increased to 65536 but it did not work and now i changed this to 1,000,000 Will try tomorrow as offices are closed here in Saudi Arabia. 0 -
Hi, we did the same with our to 65536 which should be more than enough, we set the settings as well but it does nothing, Our client is running into: [QUOTE]This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed: ????@gmail.com message has lines too long for transport ???@???.com message has lines too long for transport
The issue here is that the message according to our remote mail server, was delivered so either cPanel transmitted "partial message" to be delivered and didn't really STOP the message from going through our smart, OR it is a false bug reply to the client even if the message goes1nk3kE-0001ra-Ax 2022-04-28 12:59 host server host@whatever sender@domain receiver@whatever allowlisted RE: Introduction delivered 1nk3kE-0001ra-Ax 2022-04-28 12:59 host server host@whatever sender@domain receiver2@whatever allowlisted RE: Introduction delivered 0 -
@Steini Petur - we changed the value limit to 1000000 so you can try increasing that even more and see if that helps. 0 -
@Steini Petur - we changed the value limit to 1000000 so you can try increasing that even more and see if that helps.
Doesn't that seem a tad overzelous, I mean transportstart is because we use SpamExpertsremote_smtp_smart_dkim: driver = smtp hosts_require_tls = * interface = ${if exists {/etc/mailips}{${lookup{$sender_address_domain}lsearch*{/etc/mailips}{$value}{}}}{}} helo_data = ${if exists {/etc/mailhelo}{${lookup{$sender_address_domain}lsearch*{/etc/mailhelo}{$value}{$primary_hostname}}}{$primary_hostname}} dkim_domain = $sender_address_domain dkim_selector = default dkim_private_key = "/var/cpanel/domain_keys/private/${lookup{$dkim_domain}dsearch{/var/cpanel/domain_keys/private/}}" dkim_canon = relaxed headers_add = "${perl{check_mail_permissions_headers}}" remote_smtp_smart_regular: driver = smtp hosts_require_tls = * interface = ${if exists {/etc/mailips}{${lookup{$sender_address_domain}lsearch*{/etc/mailips}{$value}{}}}{}} helo_data = ${if exists {/etc/mailhelo}{${lookup{$sender_address_domain}lsearch*{/etc/mailhelo}{$value}{$primary_hostname}}}{$primary_hostname}} headers_add = "${perl{check_mail_permissions_headers}}"
So as someone said above he added the 65k line there?, shouldn't it be enough to change the exim itself? EDIT: If you add "message_linelength_limit = 65536"just under driver, things should work, this is me with0 -
I increased to 65536 but it did not work and now i changed this to 1,000,000 Will try tomorrow as offices are closed here in Saudi Arabia.
Let me know if this really made a difference @Steps Group0 -
@cPRex here is my problem I believe, took a command from way back on the page [root@hekla ~]# exim -bP transport_list | while read list ; do echo "$list" ; exim -bP transport $list | grep line ; done remote_smtp_smart_dkim message_linelength_limit = 998 remote_smtp_smart_regular message_linelength_limit = 998 mailman_virtual_transport mailman_virtual_transport_nodns remote_smtp message_linelength_limit = 100000 dkim_remote_smtp message_linelength_limit = 100000
It indicates "linelength limit 998 for the smart dkim and regular, whileon the bottom its set to 100k which I set earlier,,so where is the settings for the former which is 998 root@hekla etc]# grep -ir "100000" exim* exim.conf: message_linelength_limit = 100000 exim.conf: message_linelength_limit = 100000 exim.conf.localopts:message_linelength_limit=100000 Here are the 100k ones but where is this 998 coming from [root@hekla etc]# exim -bP transport remote_smtp_smart_dkim | grep "998" message_linelength_limit = 998 [root@hekla etc]# exim -bP transport remote_smtp_smart_regular | grep "998" message_linelength_limit = 998 okay lets append the message_linelength_limit into the transport start with SpamExperts and see if that wont resolve this for me.. [root@hekla etc]# exim -bP transport_list | while read list ; do echo "$list" ; exim -bP transport $list | grep message_linelength ; done remote_smtp_smart_dkim message_linelength_limit = 65535 remote_smtp_smart_regular message_linelength_limit = 65535 Resolves this, probably this is why the message failed, it was 998 on the remote_smtp_smart while proper in cPanel, need to let SpamExperts know about this.0 -
I'm not sure we want to get into that level of automation with customizations to the Exim configuration since that is already starting to get to the edge of what cPanel & WHM supports. 0 -
Fair enough @cPRex but I will promise you that people don't just stumble on this article you gave me, you can probably expect more people running into this throughout 2022 due to these limitations set by Exim v4.95 0 -
Can you get me more detail on why it would be necessary to make that change on a DNSOnly machine? If I can get a good use case, I can always make a case with our developers to get the functionality added.
Logwatch emails are impacted by this on DNSOnly. Sure, those running DNSOnly should be capable of fixing this manually but there is absolutely a legitimate case.0 -
That makes sense to me! I've created CPANEL-40654 for our team to see what the options are for getting some type of configuration mechanism added to DNSOnly. I'll post an update if I hear something! 0 -
Im on 102.0.18 and having this issue. Any help would be appreciated. 0 -
@steven059 - have you adjusted the configuration options mentioned? 0 -
@steven059 - have you adjusted the configuration options mentioned?
I was under the impression that the latest updates fixed this. There are a bunch of different ideas being tossed around. Which is correct?0 -
The most recent update gives you the option of changing the line length to a very large number, up to 1000000. You'll see the option listed in WHM >> Exim Configuration Manager under "Maximum line length for SMTP transports (Minimum: 1; Maximum: 1,000,000)" 0 -
Thanks, that worked. 0 -
I had this problem and found it was the length of the body of the email. Using HTML emails, the issue of going longer than 70 characters, is quite easy. I wrote a blog on it to explain. In short add this line to your php code: $message = wordwrap($message, 70, "\r\n"); More explanations here: text = $text; } /** * * * @param string $html */ public function setHtml($html) { $html = str_replace("\n","\r\n",$html); $html = str_replace(">",">\r\n",$html); $html = wordwrap($html, 70, "\r\n"); $this->html = $html; }
But it seems I'm still having emails blocked, bummer. This message was created automatically by mail delivery software. A message that you sent could not be delivered to one or more of its recipients. This is a permanent error. The following address(es) failed: gcits@outlook.com message has lines too long for transport Reporting-MTA: dns; hosting2.ro.hostsailor.com Action: failed Final-Recipient: rfc822;gcits@outlook.com Status: 5.0.0 X-Exim-DSN-Information: Due to administrative limits only headers are returned EDIT: Found the fix for all OpenCart users. Open /system/library/mail/mail.php and encase every instance of base64_encode() with chunk_split() So for example$message .= base64_encode($this->html) . $eol;
would become$message .= chunk_split(base64_encode($this->html)) . $eol;
That fixed all the emails, especially the gift certificate emails as they embedded images.0 -
The most recent update gives you the option of changing the line length to a very large number, up to 1000000. You'll see the option listed in WHM >> Exim Configuration Manager under "Maximum line length for SMTP transports (Minimum: 1; Maximum: 1,000,000)"
I've been having this problem for awhile, with Perl scripts sending to Gmail (no Outlook, no PHP). I found this thread while researching the problem. I changed this setting to 65536, which I saw earlier in the thread but I don't know why that's the magic number instead of just going for 1000000?0
Please sign in to leave a comment.
Comments
172 comments