From owner-cvs-all@FreeBSD.ORG Sat Oct 23 19:06:43 2004 Return-Path: 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 6BBEA16A4CE; Sat, 23 Oct 2004 19:06:43 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 609D443D45; Sat, 23 Oct 2004 19:06:43 +0000 (GMT) (envelope-from andre@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.11/8.12.11) with ESMTP id i9NJ6h4X017496; Sat, 23 Oct 2004 19:06:43 GMT (envelope-from andre@repoman.freebsd.org) Received: (from andre@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i9NJ6h8q017495; Sat, 23 Oct 2004 19:06:43 GMT (envelope-from andre) Message-Id: <200410231906.i9NJ6h8q017495@repoman.freebsd.org> From: Andre Oppermann Date: Sat, 23 Oct 2004 19:06:43 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Subject: cvs commit: src/sys/kern uipc_socket.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 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, 23 Oct 2004 19:06:43 -0000 andre 2004-10-23 19:06:43 UTC FreeBSD src repository Modified files: sys/kern uipc_socket.c Log: socreate() does an early abort if either the protocol cannot be found, or pru_attach is NULL. With loadable protocols the SPACER dummy protocols have valid function pointers for all methods to functions returning just EOPNOTSUPP. Thus the early abort check would not detect immediately that attach is not supported for this protocol. Instead it would correctly get the EOPNOTSUPP error later on when it calls the protocol specific attach function. Add testing against the pru_attach_notsupp() function pointer to the early abort check as well. Revision Changes Path 1.215 +2 -1 src/sys/kern/uipc_socket.c