[Pkg-nagios-devel] Bug#396337: Acknowledgement (check_tcp:
check_tcp (check_pop) fails on some specific +OK messages)
Benoit Panizzon
benoit.panizzon at imp.ch
Tue Oct 31 11:54:23 CET 2006
Hi Again
It looks like we have been able to quite exactly figure out what goes wrong.
From Kernel 2.6.17 on, the tcp_window_scaling code was changed.
found on:
http://inodes.org/blog/2006/09/06/tcp-window-scaling-and-kernel-2617/
Linux starts with very small packets.
Our POP +OK string is exaclty 47 bytes long and split into two reads:
46 bytes + 1 byte
check_tcp apparently fails if a read is split into multiple reads and
terminates thos two reads with \0 and overwrites the first 46 bytes by
terminating them with \0 after the lenght of the second read, thus leaving
something like "+O" or even shorter remaining in the buffer.
If the string is shorter everything is OK as it fits into one read.
If the string is longer, the overwriting happens after the +OK and again the
check is OK.
Quick Fix: Disable TCP Window Scaling:
echo 0 > /proc/sys/net/ipv4/tcp_window_scaling
Mit freundlichen Grüssen
Benoit Panizzon
--
I m p r o W a r e A G - System Services
______________________________________________________
Zurlindenstrasse 29 Tel +41 61 826 93 00
CH-4133 Pratteln Fax +41 61 826 93 01
Schweiz Web http://www.imp.ch
______________________________________________________
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 185 bytes
Desc: not available
Url : http://lists.alioth.debian.org/pipermail/pkg-nagios-devel/attachments/20061031/8ef73f54/attachment.pgp
More information about the Pkg-nagios-devel
mailing list