From owner-freebsd-hackers Tue Mar 19 0:11: 6 2002 Delivered-To: freebsd-hackers@freebsd.org Received: from warez.scriptkiddie.org (uswest-dsl-142-38.cortland.com [209.162.142.38]) by hub.freebsd.org (Postfix) with ESMTP id 46F6137B400 for ; Tue, 19 Mar 2002 00:11:03 -0800 (PST) Received: from [192.168.69.11] (unknown [192.168.69.11]) by warez.scriptkiddie.org (Postfix) with ESMTP id 64E2B62D01; Tue, 19 Mar 2002 00:10:58 -0800 (PST) Date: Tue, 19 Mar 2002 00:11:20 -0800 (PST) From: Lamont Granquist To: Terry Lambert Cc: Poul-Henning Kamp , Subject: (PATCH) Re: jail bug with ircd-hybrid in_pcbconnect()? In-Reply-To: <3C9672F8.D4ADEDDB@mindspring.com> Message-ID: <20020318235051.J2785-100000@coredump.scriptkiddie.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG this fixes the problem, i'm not familiar enough with pcbs to know if this opens up a security hole in the jail though... --- in_pcb.c.old Mon Mar 18 23:57:57 2002 +++ in_pcb.c Tue Mar 19 00:04:33 2002 @@ -500,7 +500,8 @@ struct sockaddr_in sa; int error; - if (inp->inp_laddr.s_addr == INADDR_ANY && p->p_prison != NULL) { + if (inp->inp_laddr.s_addr == INADDR_ANY && inp->inp_lport == 0 && + p->p_prison != NULL) { bzero(&sa, sizeof (sa)); sa.sin_addr.s_addr = htonl(p->p_prison->pr_ip); sa.sin_len=sizeof (sa); To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message