From owner-cvs-all@FreeBSD.ORG Thu Mar 30 18:57:12 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 1843516A424; Thu, 30 Mar 2006 18:57:12 +0000 (UTC) (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 01C3A43D9E; Thu, 30 Mar 2006 18:57:05 +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 k2UIv4PT066137; Thu, 30 Mar 2006 18:57:04 GMT (envelope-from bz@repoman.freebsd.org) Received: (from bz@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k2UIv46o066136; Thu, 30 Mar 2006 18:57:04 GMT (envelope-from bz) Message-Id: <200603301857.k2UIv46o066136@repoman.freebsd.org> From: "Bjoern A. Zeeb" Date: Thu, 30 Mar 2006 18:57:04 +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/netipsec xform.h xform_ipip.c 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: Thu, 30 Mar 2006 18:57:12 -0000 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. Entirely remove the varargs from these functions and change the functions to match the declaration of the function pointers. Remove the now unnecessary casts. Also change static struct ipprotosw[] to two independent protosw/ip6protosw definitions to remove an unnecessary cast. PR: amd64/95008 Submitted and tested by: Mats Palmgren Reviewed by: rwatson MFC after: 3 days Revision Changes Path 1.3 +1 -1 src/sys/netipsec/xform.h 1.12 +10 -18 src/sys/netipsec/xform_ipip.c