From owner-cvs-src@FreeBSD.ORG Thu Mar 30 19:20:12 2006 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1EECA16A400; Thu, 30 Mar 2006 19:20:12 +0000 (UTC) (envelope-from bz@FreeBSD.org) Received: from transport.cksoft.de (transport.cksoft.de [62.111.66.27]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9756F43D48; Thu, 30 Mar 2006 19:20:09 +0000 (GMT) (envelope-from bz@FreeBSD.org) Received: from transport.cksoft.de (localhost [127.0.0.1]) by transport.cksoft.de (Postfix) with ESMTP id 853802000F6; Thu, 30 Mar 2006 21:20:08 +0200 (CEST) Received: by transport.cksoft.de (Postfix, from userid 66) id CBBEA2000D4; Thu, 30 Mar 2006 21:20:05 +0200 (CEST) Received: from maildrop.int.zabbadoz.net (maildrop.int.zabbadoz.net [10.111.66.10]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mail.int.zabbadoz.net (Postfix) with ESMTP id 3DB5A444F41; Thu, 30 Mar 2006 19:17:07 +0000 (UTC) Date: Thu, 30 Mar 2006 19:17:07 +0000 (UTC) From: "Bjoern A. Zeeb" X-X-Sender: bz@maildrop.int.zabbadoz.net To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org In-Reply-To: <200603301857.k2UIv46o066136@repoman.freebsd.org> Message-ID: <20060330191338.Q2181@maildrop.int.zabbadoz.net> References: <200603301857.k2UIv46o066136@repoman.freebsd.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed X-Virus-Scanned: by AMaViS cksoft-s20020300-20031204bz on transport.cksoft.de Cc: Subject: Re: cvs commit: src/sys/netipsec xform.h xform_ipip.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Mar 2006 19:20:12 -0000 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 ;-) -- Bjoern A. Zeeb bzeeb at Zabbadoz dot NeT