X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 677BD38582B5 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1710120538; bh=ypU+zuKoa3l342yB8F9ynvPCTU66TWJVUkD0Fhkha8k=; h=References:In-Reply-To:Date:Subject:To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To: From; b=jkrWR649WvuDjlwIIet8Y3RtSy8yNOUxbbjG3F0BbaO/t1l2gfatCbEtPW7++ARkj mAChh2iORgi9xNQ52kzb9ar0Q9A0306+DOdcwBIEDc/20a6BzHZ8wG0iQq74G3xtrP FzPU1Q/mrZM8h9mcHPQMbwn+tCYT7Rj2ORnw0j0M= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2DBA0385842D ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2DBA0385842D ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710120517; cv=none; b=QB725ZMYNZ21DvYz5I1tJG3X5tKKORYh9A1eKa/wuvqvoyZwTcpNB3tyL5yzXDNcYOYnYRj58DDcH/53zT6eEJZl5enMdnvyBimwS+cBtne9HDRvr6FKiLxGDe0TAJCv/n4sYRaTWK3WMc3kkhAPvh+9Ur5wbcAiqUuIy52HHm4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1710120517; c=relaxed/simple; bh=2vccw1IGey6krH6AgRWoERDdipLjPKbImexvo1KgErk=; h=DKIM-Signature:MIME-Version:From:Date:Message-ID:Subject:To; b=ZodSmyh62/074Rqc85dhRuvIt4M4JSxOFfkGy08KDPxYXxGA8Fz/Q7FtSPnosbWNOwYdgiJLSzv885WhzbEJXkJR4SVG0Daqzy9+Gi20BKk2klxEvYLMDvtJuKnKm2/OT7WeWQ2A41RXTmCt028um9vVSm2aHIcOIdffRWLNcX0= ARC-Authentication-Results: i=1; server2.sourceware.org X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1710120512; x=1710725312; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=6Wf/CEaCK2E1jD6zahqVMMJe9yvGpwpm94QYUPK6QsU=; b=OGYjWDLRMyw2LPAKgt0ytgelb/+wcJm9HuKqYaMKBaodWGyICYsIjPnzSjcrJ+lgpJ NFcyMco5ZecBzHe/v3FWNYGyJxI301oy0pLYwQM8z0Py9NqstG/sy5pVb7WBmKbKhhge mhv/ingnC4Y1H5QWfmuJVmxteCQL/LvpYbH8bInNoLMDQfgAAlE+0LIFxEB5bsZEUgv6 zKUiwLVc87eMjm/6L6iqxoUAHoYbGLaNgJNnsgSROojKOdxFZEZc2bRrvXfogfZCpqEa tcyjwfHxx2OXAWqGPiWy49+E6WMlPyOaIwXCXnpohrzxBgz4DEKFZ2KEl2yCKNxVCa9M Um8w== X-Gm-Message-State: AOJu0YxhJGG7/tSC1Fy+0xNoFSaNzhuvBQEXCRbt2TTPYGjPoumW7p2F rFuvkg9K1CG+yUadgn4SRMHfVdnOk55zICSN3S7ND7H2wPzHcDakIxDtAn4TV18a5YplR8cccos V5mnEk9A8q5bQgQkhjHs4x3klH5Ll1o4A X-Google-Smtp-Source: AGHT+IFYEJFAI59RgQDIsYBevh7D/ybwEeGbjeohsPTp+WTtz1Ga+d95Zx50fUD+ujs4vhGgHHLCE/YQWumKDPKlqVk= X-Received: by 2002:a2e:9105:0:b0:2d3:f4a3:d21 with SMTP id m5-20020a2e9105000000b002d3f4a30d21mr2925275ljg.15.1710120512263; Sun, 10 Mar 2024 18:28:32 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Mon, 11 Mar 2024 02:28:05 +0100 Message-ID: Subject: Re: Switching groups with newgrp - how to get the new group with |GetTokenInformation()| ? To: cygwin AT cygwin DOT com X-Spam-Status: No, score=0.1 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: Dan Shelton via Cygwin Reply-To: Dan Shelton Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" On Wed, 6 Mar 2024 at 14:01, Corinna Vinschen via Cygwin wrote: > > On Mar 5 23:38, Dan Shelton via Cygwin wrote: > > On Sat, 24 Feb 2024 at 14:11, Corinna Vinschen via Cygwin > > wrote: > > > > > > On Feb 23 22:15, Dan Shelton via Cygwin wrote: > > > > HOWEVER, there is another Cygwin bug: > > > > "getent group mywingrp1" does not list any group members, even after > > > > "net localgroup mywingrp1 mywinuser44 /add", which is a POSIX > > > > violation. > > > > > > Not a bug. Two problems: > > > > > > - Getting members of a group can be an extremly costly operation > > > in a domain or, worse, a domain forest, or even worse, if the > > > domain or domain forest is remote. > > > > > > - Alonmg the same lines, getting members of a group can be extremly > > > costly in big orgs with thousands of users. Nobody want's to clutter > > > up space with the list of members in the "Domain Users" group. > > > > > > - Permissions to enumerate members of a group are restricted. > > > By default only admins and group members are allow to enumerate > > > members and this can be restricted further by domain admins. > > > > > > Therefore we dropped even trying to populate gr_mem, considering > > > that even in its original form on Unix systems, it's used only > > > to add supplementary groups. To do this right on Windows is even > > > more costly than blindly enumerating. > > > > > > It's not a bug, it's a feature :) > > > > Could you add an option to getent so that the full lookup can be > > requested via command line, pls? > > That's not possible. getent just calls getpwent/getgrent. What about environment variables? NSSWITCH_PATH=/etc/nsswitch.conf would be the default, and then let scripts customise it > > > Always editing /etc/nsswitch.conf > > forth and back is not a elegant solution, aside from race conditions > > with other users on a system > > So, here we go again. > > - What exactly are you trying to accomplish by enumerating the accounts? > Maybe you won't actually need it for your task at hand. We're trying to do several things, including but not limited to: - Finding which local groups exist. Part of our customer software expects that certain groups exist. Unfortunately the group names vary between installations, and sometimes names are prefixed with site names. Trying to do all permutations with just getent passwd $iteration means too many combinations (>= 4000000). So just enumerating all local groups with getent group would be the way to go. - get the uid and gid used by Cygwin, so the scripts can use them later for tar/pax and other scripts Dan -- Dan Shelton - Cluster Specialist Win/Lin/Bsd -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple