From dima@bog.msu.su  Mon Mar  9 14:47:38 1998
Received: from sunny.bog.msu.su (sunny.bog.msu.su [158.250.20.1])
          by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id OAA19363
          for <freebsd-gnats-submit@freebsd.org>; Mon, 9 Mar 1998 14:47:20 -0800 (PST)
          (envelope-from dima@bog.msu.su)
Received: from localhost (dima@localhost)
         by sunny.bog.msu.su (8.8.8/8.8.8) with SMTP id BAA08872
         for <freebsd-gnats-submit@freebsd.org>; Tue, 10 Mar 1998 01:47:11 +0300 (MSK)
         (envelope-from dima@bog.msu.su)
Message-Id: <Pine.GSO.3.95.980310014355.8819B-100000@sunny.bog.msu.su>
Date: Tue, 10 Mar 1998 01:47:10 +0300 (MSK)
From: Dmitry Khrustalev <dima@bog.msu.su>
To: freebsd-gnats-submit@freebsd.org
Subject: dup2 wrapper in libc_r is incomplete

>Number:         5961
>Category:       bin
>Synopsis:       [MFC] dup2 wrapper in libc_r is incomplete
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Mar  9 14:50:03 PST 1998
>Closed-Date:    Thu Dec 10 14:03:50 PST 1998
>Last-Modified:  Thu Dec 10 17:35:54 PST 1998
>Originator:     Dmitry Khrustalev
>Release:        FreeBSD 3.0-CURRENT i386
>Organization:
>Environment:

	perl5.004_62, cc -pthread

>Description:

	Then dup2 is given closed newfd it will call _thread_fd_lock on
closed file descriptor and fail. 

>How-To-Repeat:

	build multithreaded perl5, it will break due to inproper behavior of
	dup2 wrapper.

>Fix:
	
	I'm not shure what is the proper test for closed fd condition.
	Maybe _thread_fd_table[fd] == NULL ?

>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->suspended 
State-Changed-By: dt 
State-Changed-When: Thu Sep 17 12:15:05 PDT 1998 
State-Changed-Why:  
Fixed in rev. 1.4 of src/lib/libc_r/uthread_dup2.c 
State-Changed-From-To: suspended->closed 
State-Changed-By: steve 
State-Changed-When: Thu Dec 10 14:03:50 PST 1998 
State-Changed-Why:  
Thomas Gellekum merged this change into -stable in revision 1.1.2.1 of 
uthread_dup2.c. 
>Unformatted:
