From owner-cvs-all@FreeBSD.ORG Sat Jan 21 10:44:39 2006 Return-Path: X-Original-To: cvs-all@FreeBSD.org Delivered-To: cvs-all@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 95F0516A41F; Sat, 21 Jan 2006 10:44:39 +0000 (GMT) (envelope-from bz@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3C25943D69; Sat, 21 Jan 2006 10:44:35 +0000 (GMT) (envelope-from bz@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k0LAiZIi066318; Sat, 21 Jan 2006 10:44:35 GMT (envelope-from bz@repoman.freebsd.org) Received: (from bz@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k0LAiZUB066317; Sat, 21 Jan 2006 10:44:35 GMT (envelope-from bz) Message-Id: <200601211044.k0LAiZUB066317@repoman.freebsd.org> From: "Bjoern A. Zeeb" Date: Sat, 21 Jan 2006 10:44:35 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/net if_gre.c src/sys/netinet ip_gre.c ip_gre.h src/sys/netipsec keysock.c keysock.h src/sys/netkey keysock.c keysock.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 21 Jan 2006 10:44:39 -0000 bz 2006-01-21 10:44:35 UTC FreeBSD src repository Modified files: sys/net if_gre.c sys/netinet ip_gre.c ip_gre.h sys/netipsec keysock.c keysock.h sys/netkey keysock.c keysock.h Log: Fix 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. Entirely remove the varargs from these functions and change the functions to match the declaration of the function pointers. Remove the now unnecessary casts. Lots of explanations and help from: peter Reviewed by: peter PR: amd64/89261 MFC after: 6 days Revision Changes Path 1.39 +2 -2 src/sys/net/if_gre.c 1.21 +3 -25 src/sys/netinet/ip_gre.c 1.4 +2 -2 src/sys/netinet/ip_gre.h 1.12 +2 -14 src/sys/netipsec/keysock.c 1.3 +1 -1 src/sys/netipsec/keysock.h 1.32 +2 -14 src/sys/netkey/keysock.c 1.9 +1 -1 src/sys/netkey/keysock.h