From owner-cvs-all@FreeBSD.ORG Sun Jul 18 19:10:37 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 5BA9916A4CE; Sun, 18 Jul 2004 19:10:37 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 52EDE43D2D; Sun, 18 Jul 2004 19:10:37 +0000 (GMT) (envelope-from dwmalone@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 i6IJAb5l099950; Sun, 18 Jul 2004 19:10:37 GMT (envelope-from dwmalone@repoman.freebsd.org) Received: (from dwmalone@localhost) by repoman.freebsd.org (8.12.11/8.12.11/Submit) id i6IJAbrk099949; Sun, 18 Jul 2004 19:10:37 GMT (envelope-from dwmalone) Message-Id: <200407181910.i6IJAbrk099949@repoman.freebsd.org> From: David Malone Date: Sun, 18 Jul 2004 19:10:36 +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: Sun, 18 Jul 2004 19:10:37 -0000 dwmalone 2004-07-18 19:10:36 UTC FreeBSD src repository Modified files: sys/kern uipc_socket.c Log: The recent changes to control message passing broke some things that get certain types of control messages (ping6 and rtsol are examples). This gets the new code closer to working: 1) Collect control mbufs for processing in the controlp == NULL case, so that they can be freed by externalize. 2) Loop over the list of control mbufs, as the externalize function may not know how to deal with chains. 3) In the case where there is no externalize function, remember to add the control mbuf to the controlp list so that it will be returned. 4) After adding stuff to the controlp list, walk to the end of the list of stuff that was added, incase we added a chain. This code can be further improved, but this is enough to get most things working again. Reviewed by: rwatson Revision Changes Path 1.205 +16 -12 src/sys/kern/uipc_socket.c