From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtpng1.m.smailru.net (smtpng1.m.smailru.net [94.100.181.251]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dev.tarantool.org (Postfix) with ESMTPS id E3C99469719 for ; Tue, 10 Mar 2020 19:36:43 +0300 (MSK) Date: Tue, 10 Mar 2020 19:36:46 +0300 From: Alexander Turenko Message-ID: <20200310163646.3yngdlq6wzutzmri@tkn_work_nb> References: <20200302201227.31785-1-gorcunov@gmail.com> <20200302201227.31785-7-gorcunov@gmail.com> <20200303113853.2gmoaph7zet7rzwo@tkn_work_nb> <20200303114537.GF22649@uranus> <20200310154949.5zdpc4pcpc7evczz@tkn_work_nb> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <20200310154949.5zdpc4pcpc7evczz@tkn_work_nb> Subject: Re: [Tarantool-patches] [PATCH 6/7] popen: handle setsid os specifics List-Id: Tarantool development patches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Cyrill Gorcunov Cc: tml > It seems that setsid() is used mainly to disassociate from a controlling > terminal (to don't be hit by SIGHUP if it'll die). In this context > setpgrp() would not be sufficient. I just realized that there is another reason to use setsid(), where setpgrp() is applicable too: move the child into its own process group and kill the whole group (child and its childs if any) then. I mean, use the corresponding flag (which I proposed to add in [1]), which will change :kill() behaviour. [1]: https://lists.tarantool.org/pipermail/tarantool-patches/2020-March/014608.html So, it seems, we should do ioctl() + setpgrp() on Mac OS? WBR, Alexander Turenko.