From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id 8358B3858D38; Mon, 22 Apr 2024 08:54:35 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 8358B3858D38 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1713776075; bh=EpvB+YC32ZozVKKcfAXc0gwsD45BYnlwx+flpsin8DA=; h=Date:From:To:Subject:Reply-To:References:In-Reply-To:From; b=LtYUZGG4eb2BKpn9uNNOfkv1yzv+zVaQe2RtiS79T1PePMeieo8tDKntacnaLEGmt fUuS363ljOoEO3ylHqbxH8ZD3ANZMgezVieyxWQkOgGLcIctQzIyVsvaXns7TE7wRZ X3jDhFuGNWBmgT7WwoCuSdrcdo2AA3XIKBllZyRM= Received: by calimero.vinschen.de (Postfix, from userid 500) id C414EA80CED; Mon, 22 Apr 2024 10:54:33 +0200 (CEST) Date: Mon, 22 Apr 2024 10:54:33 +0200 From: Corinna Vinschen To: cygwin@cygwin.com Subject: Re: /usr/bin/sg in Cygwin? Message-ID: Reply-To: cygwin@cygwin.com Mail-Followup-To: cygwin@cygwin.com References: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: List-Id: On Apr 22 07:55, Cedric Blancher via Cygwin wrote: > On Mon, 22 Apr 2024 at 01:20, Dan Shelton via Cygwin wrote: > > > > On Sat, 20 Apr 2024 at 07:39, Brian Inglis via Cygwin wrote: > > > > > > On 2024-04-19 17:47, Dan Shelton via Cygwin wrote: > > > > On Fri, 23 Feb 2024 at 22:25, Dan Shelton wrote: > > > >> Is there a package which provides /usr/bin/sg (execute shell commands > > > >> in a different group)? > > > > > > The POSIX standard command is newgrp - install cygwin-doc to see Cygwin (and > > > newlib libc) man pages (and info, html, PDF docs), man-pages-posix to see POSIX > > > man pages, and man-pages-linux if you want to see recent Linux release man pages. > > > > > > To see possibly relevant commands, run: > > > > > > $ apropos -s 1,1p group > > > chgrp (1) - change group ownership > > > chgrp (1p) - change the file group ownership > > > chown (1) - change file owner and group > > > g3topbm (1) - convert a Group 3 fax file into a PBM image > > > groups (1) - print the groups a user is in > > > id (1) - print real and effective user and group IDs > > > make (1) - GNU Make utility to maintain groups of programs > > > make (1p) - maintain, update, and regenerate groups of programs > > > mkgroup (1) - Write /etc/group-like output to stdout > > > newgrp (1) - change primary group for a command > > > newgrp (1p) - change to a new group > > > pbmtog3 (1) - convert a PBM image into a Group 3 MH fax file > > > > newgrp(1) is USELESS. It only opens an interactive shell, but does not > > allow the user to execute a non-interactive script with the requested > > group like bash -c does. > > Linux /usr/bin/sg source is in > https://github.com/shadow-maint/shadow/blob/master/src/newgrp.c > So this is just a packaging issue that whoever does the Cygwin newgrp > package has to package /usr/bin/sg too newgrp(1) is a Cygwin util from the base package: $ cygcheck -f /usr/bin/newgrp cygwin-3.6.0-0.109.ga0a25849f9dd Reason being that the functionality under Windows is pretty limited compared to "real" POSIX systems... https://cygwin.com/cygwin-ug-net/newgrp.html ...and fetching the default environment of the user (to implement the dash option '-') is pretty different from any other known POSIX system, having to use Windows functions: https://cygwin.com/cgit/newlib-cygwin/tree/winsup/utils/newgrp.c If anybody thinks he or she can provide a useful shadow-utils package, feel free. But it might not be worth the effort, probably. Corinna