Date: Thu, 30 Mar 2006 19:53:35 +0000 (UTC) From: "Bjoern A. Zeeb" <bz@FreeBSD.org> To: src-committers@freebsd.org Cc: cvs-src@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/netipsec xform.h xform_ipip.c Message-ID: <20060330195236.G2181@maildrop.int.zabbadoz.net> In-Reply-To: <200603302145.57382.max@love2party.net> References: <200603301857.k2UIv46o066136@repoman.freebsd.org> <20060330191338.Q2181@maildrop.int.zabbadoz.net> <200603302145.57382.max@love2party.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 30 Mar 2006, Max Laier wrote: > On Thursday 30 March 2006 21:17, Bjoern A. Zeeb wrote: >> On Thu, 30 Mar 2006, Bjoern A. Zeeb wrote: >>> bz 2006-03-30 18:57:04 UTC >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/netipsec xform.h xform_ipip.c >>> Log: >>> Fix more stack corruptions on amd64. >>> >>> Vararg functions have a different calling convention than regular >>> functions on amd64. Casting a varag function to a regular one to >>> match the function pointer declaration will hide the varargs from >>> the caller and we will end up with an incorrectly setup stack. >> >> I will try to go over sys/net*/** or even sys/** somewhen the next >> days and see if I can find more of them. >> >> If anybody knows an easy way to find all casted function pointers >> that are using varargs let me know ;-) > > Shouldn't we be able to teach Coverity? It certainly has the information > somewhere. next question: why does the compiler not complain? -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20060330195236.G2181>