]> granicus.if.org Git - libnl/commit
Patch for unexpectedly aligned messages
authorMarc de Kruijf <mdekruijf@gmail.com>
Wed, 26 Aug 2009 21:28:01 +0000 (16:28 -0500)
committerThomas Graf <tgr@lsx.localdomain>
Wed, 2 Sep 2009 16:43:03 +0000 (18:43 +0200)
commit1ed227d3a9684e84b1c19e083850d5f10e94348b
treed45de62d4780b3a5eb6e0f51dbd84d63ef56cae7
parentef858fb492dfe98e3ae194264fbc73649cf8493a
Patch for unexpectedly aligned messages

I found the following bug, where nlmsg_ok() in lib/msg.c would
incorrectly return 'true' when the input argument 'remaining' was a negative
number.  This happens when the message is not aligned the way that libnl
expects (although it is still legal).

In the comparison of the signed and unsigned numbers on line 284, the signed
number gets converted to an unsigned number, which is unexpected and
naturally produces a bug.  My patch is below.  The cast is ugly, but it
fixes the problem.
lib/msg.c