Send() failed (40: Message too long)



  • I'm getting this error, a lot.  How can you view the messages that are too long ??



  • @quikmcw:

    I'm getting this error, a lot.  How can you view the messages that are too long ??

    tcpdump ?



  • Dear all,

    I was looking for someting in nginx-error.log and I found this:

    2016/11/16 19:16:53 [alert] 33631#100096: send() failed (40: Message too long)
    2016/11/16 19:16:53 [error] 33631#100096: *1421957 upstream sent too big header while reading response header from upstream, client: 172.16.14.192, server: , request: "GET /index.php?zone=pucpcaldas&redirurl=http%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16.0.1%2Fhttp%3A%2F%2F172.16
    2016/11/16 19:16:53 [alert] 33631#100096: send() failed (40: Message too long)

    I think there is the problem, many redirects from the header…

    I changed my form from:

    To:

    to see the results… I will reply asap



  • setup a syslogd to a server and the pfSense box is dumping the same error and not the full "too long" message
    "nginx: 2016/11/17 08:36:08 [alert] 38209#100232: send() failed (40: Message too long)"

    What happens for me is I get many of these messages then the system will not allow gui access and affects the openvpn sessions, but other traffic works as normal.

    I'm running a SG-8860 box with the lastest version, no additional packages loaded, one internet connection, 4 subnets, 20 IPSecs and an average of 5 vpn's.

    I need to know what these too log messages are to see what is causing the problem.



  • just pulled this from the box:

    Crash report begins.  Anonymous machine information:

    amd64
    10.3-RELEASE-p9
    FreeBSD 10.3-RELEASE-p9 #1 5fc1b19(RELENG_2_3_2): Tue Sep 27 12:25:49 CDT 2016    root@factory23-amd64-builder:/builder/factory-232/tmp/obj/builder/factory-232/tmp/FreeBSD-src/sys/pfSense

    Crash report details:

    PHP Errors:
    [17-Nov-2016 09:46:52 America/New_York] PHP Fatal error:  Allowed memory size of 536870912 bytes exhausted (tried to allocate 72 bytes) in /usr/local/www/diag_command.php on line 231
    [17-Nov-2016 09:46:52 America/New_York] PHP Stack trace:
    [17-Nov-2016 09:46:52 America/New_York] PHP  1. {main}() /usr/local/www/diag_command.php:0
    [17-Nov-2016 09:46:52 America/New_York] PHP  2. exec() /usr/local/www/diag_command.php:231

    Filename: /var/crash/minfree
    2048



  • My pfsense is dumping the same error after upgrade 2.3.2-RELEASE (amd64).
    2WAN - 1LAN - Proxy Transp - Captive Portal

    
    nginx: 2016/11/24 11:58:30 [error] 18508#100108: send() failed (54: Connection reset by peer)
    nginx: 2016/11/24 12:02:38 [alert] 74659#100142: send() failed (40: Message too long)
    
    

    What happened?



  • Same problem in my pfsense, 2.3.2-RELEASE-p1 (amd64)
    built on Tue Sep 27 12:13:07 CDT 2016
    FreeBSD 10.3-RELEASE-p9

    2016/11/25 15:13:07 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:13:38 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:13:40 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:14:12 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:14:27 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:14:41 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:15:36 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:15:49 [alert] 15518#100112: send() failed (40: Message too long)
    2016/11/25 15:21:53 [alert] 15623#100082: send() failed (40: Message too long)
    2016/11/25 15:23:19 [alert] 15623#100082: send() failed (40: Message too long)



  • Same trouble with my pfsense after upgrade to 2.3.2 pi1, coming from pfsense 2.2.x
    I didn't installed any Captive portal.
    This issue looks related to the web interface, even if i can't be 100% sure.
    I tried to remove all widgets from dashboard, switch from http to https, and taking a look from shell with "tail -f /var/log/nginx-error.log", an alert entry appears a couple times per minutes, instead once per second as before.



  • Same problem here, 2.3.4-RELEASE-p1 (amd64)



  • 2.3.4-RELEASE-p1 (amd64)

    captive portal

    Any ideas for this problem?



  • Upgraded to 2.4.2 , still spams "send() failed (40: Message too long)" in log



  • @digital_janitor:

    I am also getting these since upgrade.  Are there any logs that give more info?

    Same here. help?



  • @krashneo:

    I changed my form from:

    To:

    to see the results… I will reply asap

    Did you try to change your old redirect URL "http%3A%2F%2F172.16.0.1%2F" == "http://172.16.0.1/"
    to "http://www.google.com" instead of changing the source ?

    What pfSense version ? - is it patched or modified ?



  • The same here.
    After re-applying the squid settings it stopped to logs the errors, but after 2 or 3 days (depends on load) it reappears



  • 2.4.2-RELEASE-p1 (amd64)
    built on Tue Dec 12 13:45:26 CST 2017
    FreeBSD 11.1-RELEASE-p6

    Intel(R) Core(TM) i5 CPU 750 @ 2.67GHz
    Current: 2667 MHz, Max: 2668 MHz
    4 CPUs: 1 package(s) x 4 core(s)
    AES-NI CPU Crypto: No

    Interfaces: 
    WAN 1000baseT <full-duplex>xx.xx.ccc.ccc
    LAN         autoselect 192.168.1.1
    OFFICE 100baseTX <full-duplex>192.168.100.1
    HOTSPOT 1000baseT <full-duplex>10.10.10.1 (captive portal is ON)

    nginx: 2018/02/10 19:49:01 [error] 28887#100127: *4888 open() "/usr/local/www/phpmyadmin" failed (2: No such file or directory), client: 1x0.2x9.1xx.x6, server: , request: "GET /phpmyadmin HTTP/1.1", host: "xx.3x.2xx.xxx", referrer: "http://xx.xx.xxx.xxx/phpmyadmin"

    I getting same a full page…

    Feb 10 15:05:55 nginx: 2018/02/10 15:05:55 [alert] 43837#100173: send() failed (40: Message too long)</full-duplex></full-duplex></full-duplex>



  • Hey guys, is there an update to this issue?



  • ishtiaqaj did you solve this problem



  • @Lampogriz

    Aug 28 10:22:38	pfsense.localdomain		nginx: 2019/08/28 10:22:38 [alert] 54908#100145: send() failed (40: Message too long)
    

    I experienced this also in latest pfsense right now. my captive portal disconnects .I hope there is a fix for this.



  • @dyobetem I also have this issue since 2 months and its related to Captive Portal. i have 2500+ captive portal users and 2 WAN. i changed a lot of settings in nginx but useless. still i am getting these errors. I've pfsense 2.4.4-P3 Lastest version.

    i have already mentioned this issue in given blow post ( last Issue )

    https://forum.netgate.com/topic/144868/dell-r430-bge-built-in-port-hangs-captive-portal-stop-working/23



  • @wazim4u : Do you redirect a new, just logged-in user to an URL ( setting After authentication Redirection URL ) ?

    b504e6ad-41e8-4aba-900a-b64db7af5a32-image.png

    This is what I think : when a user logged in using the IP (or URL) of the captive portal page, the users browser gets redirected to the same URL (== the captive pprtal's web server).... which will redirect again - to itself -, and again, and again etc - recursif. The URL thrown back to the browser becomes to big, nginx will finally produce the "send() failed (40: Message too long)" error.

    For myself, I redirect, no matter what, to "https://www.google.com" but you can take any URL like a your companie's site.

    Another explanation : you have quiet a lot of portal users. Not every user uses the latest smart devices /PC's with the latest OS and the best browsers.
    Even I see still IE8 (Windows XP) connecting to my portal.
    These ancient devices are not portal aware. They won't behave correctly.

    Or even : not all the apps are written the same way. At least, Apple reviews (some what) each and every app before it's released - the Android society is a pure zoo. So, a bad app can throw out an URL that's to big. nginx will bail out.

    So, mind you, these are all theories.
    I do not have the test park to test them.


Log in to reply