delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2010/04/11/01:49:24

X-Recipient: archive-cygwin AT delorie DOT com
X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE,T_TO_NO_BRKTS_FREEMAIL
X-Spam-Check-By: sourceware.org
Date: Sun, 11 Apr 2010 01:48:51 -0400
From: tmhikaru AT gmail DOT com
To: cygwin AT cygwin DOT com
Subject: Usage of _exit(0) closes fd's of parent process
Message-ID: <20100411054851.GA25578@roll>
Mime-Version: 1.0
User-Agent: Mutt/1.4.2.3i
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

--BOKacYhQ+x31HxR3
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

	Hi. I'm having an unusual problem in a program I'm trying to get
working in cygwin. My program fork()'s a child process to do a hostname
lookup, establishes a tcp connection in the parent, then has the child
_exit(0) itself. For some reason I don't understand, _exit is not just
closing the fd's of the child, but of the parent as well. From my
understanding, _exit is supposed to close the fd's of the process it is run
from only.

	The program works correctly (That is to say, stays connected) if I
comment out the _exit and instead have it while (1) { sleep (10000); }.
Obviously I would like to be able to kill off the child at some point, but
for testing this proved to me that either my expectation of how _exit is
supposed to work in cygwin is flawed, or _exit is.

	Please let me know if I'm using this function call incorrectly, and
what behavior I should be expecting. If my expectation of how _exit is
supposed to act is correct, let me know and I'll file a bug report.


	I am not subscribed to the cygwin mailing list, so please make sure
replies are sent to my email address as well as the list.

Thank you,
Hikaru
--BOKacYhQ+x31HxR3
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)

iQEVAwUBS8Fiw5EncCrqzVruAQJiwQgAuBgIdkMC4EsHBNSBmUrFraXu/NCvq1Ja
SDjidNJ6bMdCGAeuYcXGUnSZWkWgjub9mTaWv923RtqUSWWtXbZKkdwdz0AwxO2d
DZjKrNADy7XxAnaEgm6CXeUzO7xYsb/6/l32+arCVFB0b6YGidBU2IFL3+WS2ArT
a3DT7i0qmtyIvR89s+g17WMAcMuAUH6UF2zchUuEmAZzwHhaneIY4j1T5EPMptiw
7ysILUUJ2+rHi37PUqMOvdrcJOOIfXOO6ybQ+gSL8urRAWcKFPuEQvaBpIROgruT
IgYeFp7WzzMRqfqcBVxzcGS5RvdsB/Vr2YKOEzBqMtV5ATd8Y2xYoQ==
=MetO
-----END PGP SIGNATURE-----

--BOKacYhQ+x31HxR3--

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019