Bug#396337: [Pkg-nagios-devel] Bug#396337: Acknowledgement (check_tcp: check_tcp (check_pop) fails on some specific +OK messages)

sean finney seanius at debian.org
Tue Oct 31 14:41:47 CET 2006

hi benoit,

On Tue, 2006-10-31 at 12:54 +0200, Benoit Panizzon wrote:
> 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.

thanks for the extra info.  strange new features in the kernel... i
guess there must be some rationale for it.  a question though: wouldn't
it be a better general solution to concatenate the read results
rather than changing kernel settings (of course this might mean more
code in the plugin)?  

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: This is a digitally signed message part
Url : http://lists.alioth.debian.org/pipermail/pkg-nagios-devel/attachments/20061031/3fa8eb4c/attachment.pgp

More information about the Pkg-nagios-devel mailing list