From owner-freebsd-ports Fri Apr 27 7:10:15 2001 Delivered-To: freebsd-ports@hub.freebsd.org Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 10A1137B424 for ; Fri, 27 Apr 2001 07:10:07 -0700 (PDT) (envelope-from gnats@FreeBSD.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f3REA7608814; Fri, 27 Apr 2001 07:10:07 -0700 (PDT) (envelope-from gnats) Received: from freefall.freebsd.org (freefall.freebsd.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 2A10237B422 for ; Fri, 27 Apr 2001 07:06:42 -0700 (PDT) (envelope-from nobody@FreeBSD.org) Received: (from nobody@localhost) by freefall.freebsd.org (8.11.1/8.11.1) id f3RE6gg04054; Fri, 27 Apr 2001 07:06:42 -0700 (PDT) (envelope-from nobody) Message-Id: <200104271406.f3RE6gg04054@freefall.freebsd.org> Date: Fri, 27 Apr 2001 07:06:42 -0700 (PDT) From: tstrike@targetnet.com To: freebsd-gnats-submit@FreeBSD.org X-Send-Pr-Version: www-1.0 Subject: ports/26894: omniORB 3.0.3 servers die when using FreeBSD 4.3 hosts.allow w/ service denied Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org >Number: 26894 >Category: ports >Synopsis: omniORB 3.0.3 servers die when using FreeBSD 4.3 hosts.allow w/ service denied >Confidential: no >Severity: serious >Priority: high >Responsible: freebsd-ports >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Fri Apr 27 07:10:03 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Tim Strike >Release: 4.3-STABLE >Organization: Targetnet >Environment: FreeBSD dev-405.tor4.targetnet.pvt 4.3-RC FreeBSD 4.3-RC #1: Thu Apr 19 09:27:08 EDT 2001 tim@dev-405.tor4.targetnet.pvt:/usr/obj/usr/src/sys/KERN_dev405 i386 >Description: With hosts.allow to deny for any omniORB service, the server will die if it receives a call from a client to be denied. Local client -> local server causes client to catch COMM_FAILURE and the server to emit error Fatal error 'longjmp()ing between thread contexts is undefined by POSIX 1003.1' at line ? in file /usr/src/lib/libc_r/uthread/uthread_jmp.c (errno = ?) and subsequently SIGABRT. Using a remote client to a local server causes the server to die, without an error message. Under FreeBSD 4.2, client catches COMM_FAILURE and server emits "connection refused" message (under logging) but continues to run. OF NOTE: We tried replacing the tcpwrapper code in tcpwrapperGK with the standard FreeBSD libwrap, and the problem persisted. OTHER NOTES: This appears to be related to either 1) compiler changes from 4.3 or 2) uthread changes from 4.3, but seems to affect only this port (that we've found). >How-To-Repeat: Use hosts.allow to deny service to an omniORB server (Echo from the dist. docs is fine) and use a client on a local or remote server to contact the server. >Fix: Setting access in hosts.allow to ALL for the service, but from a security standpoint, this is obviously unacceptable. >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message