X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B7DF53858419 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1656654442; bh=gxsThCxXA0QFkTQdM3iN+VYV2n0+49V/UB9nxLJVRzI=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=Jdv3GqocJIOL+BHAudjUVw3R39OIKRARH06KL/ny4tjzPMx3Mdx4HXNT2ZK0MxIyP GzaaL1XtOIboKnb61oW1Bkyfe2137vyShxWPdziWnZ4ibEYq1rlfbRt1XLQR7opiLV afCACiCcbnKxqYgd5ocg+2byjMY7dCq/lCVkKtBs= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 84A313858D39 X-SBRS-Extended: Low X-IronPortListener: ces-out X-IronPort-AV: E=Sophos;i="5.92,236,1650945600"; d="scan'208";a="307205854" ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=hlIZEK2LLTO61O54qPZYAqRdFXtkPCiA7YltE6AwpIXi1W1zGBLQNDfJkw3C4ZzwKRQoYc91m7/puQ0GrwYIgS0rxKcsM8ERbUBuSY0rTdqelliriYaXgWSFncumXXnFpwTQuMxFrAkEnrjOAWknpNuGuywu8/bCq9TZwltoFn7STAjQNgnmE+u7okzV3Gm/8+KYezJnQp/d2kWQ0NGPvyy8Eu/ygzkZ12AI45aYcI1JuIagtNcRoVrUv64C+VfUKtRi+kwbUqEMgXOFqsbvGuYsnArhVnlNh48o/pLadrp5uMAJhHuHQHhd+hckRKBZVlXIy3DX50WD/QlMG3z6sA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KJ4VTneJIwQEfMZHr1SHMhJTznZ5eiIDZegwN+xDtqI=; b=SjEfCe7ZCVqEFldbobEycSNGgEG93O5wseE3RufIn9sj0Jzl7EbkTgR0qSEUsYaj/kKp9LvRQskeWoq5Lv5NUHT+lM9Al2vtmCq94JaF6z39S/EJ0zvMJF6lKvBmsBsGoRM49TjsctC0DZPKMjadqqdPv0blOTYMjvSi4nyGYeiDhU8XneHHpskH1XYIhv3psnGjK1I1G96F1SBEP/r4bmKsFypJONqH4eH0Ly0YqNgKCv7vWhdNk/qHuq4dujdyrwfGWQ9OOd2KXQJvPVpKRwm+P3xK0vAtNnF4/It33knemJL/osetwwE5kixHbLTEN3Fow3KGPnolF21fMErh/A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=ncbi.nlm.nih.gov; dmarc=pass action=none header.from=ncbi.nlm.nih.gov; dkim=pass header.d=ncbi.nlm.nih.gov; arc=none To: "'cygwin AT cygwin DOT com'" Subject: Weird issue with file permissions Thread-Topic: Weird issue with file permissions Thread-Index: AdiNDXVeWrE4qIEITUO9Wn6ddETWwA== Date: Fri, 1 Jul 2022 05:46:44 +0000 Message-ID: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 9a0b0693-dc39-4617-4046-08da5b251469 x-ms-traffictypediagnostic: DM6PR09MB4775:EE_ x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: /W2+5rgKW908xBLhICoqyxWrqhT1Knb4yWtLgBtwAsizuAVM3mnFtSsJZ1LBVMYy2siOexXrjADy6WtGG4kZFVb9zGCHH8af9l0hkwigXGnv9ttoD3HVbCNQK+3bym4X8N+PDVFNyInULpE5OxK7J2jcaKM67XxNa3BMUAn+4wbhgwcO6EOuNxHKdbLE9d0GfwksMtgbGPydVNwb1aRW/sjj5jN0JfZ0SyS2BCmYGHENS1gTo0/FqvFhEOR/aBGz4G3B/o4qdb2DVVIfWIUZ7xCZECKFFu8RvsBtEX8dj6hZHHIBDqopdDtKQKVuyLErOlhOlKltPzPeYR8f9GjNrntxU0PmhMhEUvwphXm7kW91SljdciLPkYQ0SNM0obSAQoCnQ2GXgVqxzn16kzUGGz5LF2wFosNe335OWtkIRJaSUcvCfxhrc2BFEzY6eI1Uf2C/hdYDGV85ObvOA5mAfoI6MY09OnYpzudVg10bZRje8+sbIKuHsIAJyM+CWV8ec8Qh1l8Mo4Sda+5svRXfEvu2fG6XMEEE+5n58XHSSOmFFAUJzPb20HiCjuzZAkguiXo+AMwkTO0kHLcIKiApUMdEIIJfGtR91ivYu12jCV3LkGOYC++/4ePyOfiJ8U1JSSL/B+aozSUpI+BUEAZo1vweCsvAEK1Z/UdnZrgWnxzFhbsIF+EGInqhlSgbnkgfLM0Dm/VLwfjpQL473L6ON7fJWSIEXJz73lly3Q+rQ+AAHvNyKpzSavxW3ahJzmnmkPCME3mWrZDq9UHpCrHrEde1xzmS8KWOmPHyjr0cBn4JBH/vzj/v+OHstxiI25iqd2Q1rKYKIxjad+es59LFUA== x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM8PR09MB7095.namprd09.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230016)(4636009)(366004)(38100700002)(186003)(83380400001)(64756008)(76116006)(8676002)(66446008)(66476007)(66946007)(71200400001)(66556008)(122000001)(55016003)(7696005)(52536014)(6916009)(6506007)(33656002)(8936002)(38070700005)(26005)(2906002)(86362001)(9686003)(498600001)(5660300002)(491001); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?nrEYAjpM6gJ3QsJcs0J7m+4u1d/y9750zZTRsOajiUMr+xZf+ob3V0Y/liP/?= =?us-ascii?Q?aAkFGBLv/IlRi3KyMGJZTPiDGML5i7YkP+mld8H/eZ6l0Y2arhl9IACvV672?= =?us-ascii?Q?aJUxI8tEpQGVc5JtK05WZPonZ7D6tcw8C/VYAwfP5yXxowbW3568HZIBGIon?= =?us-ascii?Q?YG2p61oAx1TL04R4y7LdJAhQ5cNLk+LOVrce/Cqk7Fe+1l+8s/fCcT8r8J9A?= =?us-ascii?Q?FucDajgvFvf5ULILBK/wVoVFF26+XeBymCYy0o9Ekh3Uv9lv3dXyqMW9cRtM?= =?us-ascii?Q?c0c2JD+aezGcO1jHoj1LkztDayC6VynhMiCIgJHeSj9P92UHtoTiLkpVYb3g?= =?us-ascii?Q?FTH/tF6Et3mn5lEZoVMfHuY3BADSU9rknt9qp08JTAK292XHYKGMqD3Ce77F?= =?us-ascii?Q?PxHdGEFL5S5UGXehxbPKWz94uV8RQqT2+WbEWst9np4AG3WmTWcOTj+3d4tx?= =?us-ascii?Q?O1PcszXqTVJ0m/vFPfzPsSJrrc/GaSABYBSYQl4ZHzryq4l7DfN3fLOtxdEI?= =?us-ascii?Q?9pvQfvGqnag7AzRqzpE7DYZ7vxP0w65oCkqhBpdvfSESYPiDtdwJ4urPj18J?= =?us-ascii?Q?CVZIad2VwwVEFKYVP6Ezjb8TZkZ9uT7HHuCPi+G3SwzAnEC8mk9pUKd40oBI?= =?us-ascii?Q?8GkCvLtgb4csnoV1XNBYKM2KDA3Pn6gs4oPg4dBFZmGDoyfa7a08FBlhEFtP?= =?us-ascii?Q?IdCurXzxACPdLsLhvmS0kAKvxfNtsneFs0lExdTQBdQxR7+gBQgQ8sJTanZI?= =?us-ascii?Q?K+cnGYclaZd/fT7Gs9vhbrieuvcqak4lx1GscqEXhG9E1QLpLR+Gj1KGMWOB?= =?us-ascii?Q?0i0a9Z1TCgxMGlat8VU3kCYoavYJ5zwDzPHcrpT+mJbwJ7qVsyGmlv7vDulg?= =?us-ascii?Q?iZlSEkB/QJgNmGdC8QGHFPNrRxD0ur4P3qiG7TeNKPMp4iKGUamJGU+ETGqq?= =?us-ascii?Q?YuyeUAKSt+/jox3lKm1P6FFCwhLyHoLIUJub3bddkRN9mN3BSVK2IGGmUvRx?= =?us-ascii?Q?vsyLcx6nPClLJXSHIVgwIu5YP2XIPkraFGuc21rOL/pB6AOxb8JWTSXf46FT?= =?us-ascii?Q?wDd1pphhnV9O6O8teUl6LiTTyMxZ9CR+7XMjTCXzsuUUjv0+xEinoE1QyV5c?= =?us-ascii?Q?UGgufEZu2oy7CC7MNOFh4wyBZoz3bIP32cRrbrxFZ/IWgGjNJJOvsy8aoWSh?= =?us-ascii?Q?t7SG0YHrs8RQSYTHiWrGHVYbRrjwo6aC3s/xxaOVzZQHb8gUDuIhc8CZifxD?= =?us-ascii?Q?gJz9nFJB9Fmg3ecOU7EyJwi5HoSe6WfrceVO+IadH5i3LnDSioUn/C5i0D/g?= =?us-ascii?Q?u2XAdUDmi38Khx0QuqrKOnWHtenI2bQXq6iqmK6LDOTanyssH9En1uxAwOI3?= =?us-ascii?Q?v4EhQdefBCWBF6Nku9CZ8q6Cj7kRtUjkR/U17LjkHg1qnL2TiCys6Koloiaz?= =?us-ascii?Q?vkTgaq10j/ozPSkt76tzyERHL2m9kaI5swBpSs1gIqPZh08QGEti4mW2tVEp?= =?us-ascii?Q?jPjEdQImcSZed7QGPDBEWksKoEj+OX3fHWQDJflFE9OfrBcBDRSMeqAva6gy?= =?us-ascii?Q?lZuMRv2dESEKgS5daZ4=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM8PR09MB7095.namprd09.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 9a0b0693-dc39-4617-4046-08da5b251469 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Jul 2022 05:46:44.0237 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 14b77578-9773-42d5-8507-251ca2dc2b06 X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM6PR09MB4775 X-OriginatorOrg: ncbi.nlm.nih.gov X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_EF, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE, T_SPF_HELO_PERMERROR 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.29 List-Id: General Cygwin discussions and problem reports List-Archive: List-Post: List-Help: List-Subscribe: , From: "Lavrentiev, Anton \(NIH/NLM/NCBI\) \[C\] via Cygwin" Reply-To: "Lavrentiev, Anton \(NIH/NLM/NCBI\) \[C\]" Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "Cygwin" Hi all, I am having an issue with socket file permissions... So here's a mockup of code that shows the problem: $ cat sun.c #include #include #include #include #include #include #include #define SOCKET "./.socket" int main() { struct sockaddr_un addr; struct stat st; mode_t u; int s; /* create a UNIX socket */ if ((s = socket(PF_UNIX, SOCK_STREAM, 0)) < 0) { perror("socket"); return 1; } memset(&addr, 0, sizeof(addr)); addr.sun_family = PF_UNIX; strcpy(addr.sun_path, SOCKET); unlink(SOCKET); u = umask(0); if (bind(s, (struct sockaddr*) &addr, sizeof(addr)) != 0) { perror("bind"); return 1; } umask(u); if (fchmod(s, 0666) < 0) printf("fchmod: %m\n"); if (fstat(s, &st) < 0) { perror("fstat"); return 1; } printf("fstat mode = %03o\n", st.st_mode); if (stat(SOCKET, &st) < 0) { perror("stat"); return 1; } printf("stat mode = %03o\n", st.st_mode); return 0; } $ gcc -Wall -o sun sun.c Now, if I run this code in my Cygwin home directory (and any directory that I create using "mkdir..." under it), I am getting the expected results: $ ~/sun fstat mode = 140666 stat mode = 140666 $ ls -l .socket srw-rw-rw-+ 1 ANTON None 0 Jul 1 01:19 .socket= However, if I run it elsewhere (different drive "cd /cygdrive/g/cygwin" -- it's NOT where Cygwin is installed, just a folder that keeps files for Cygwin development, the installation is on C:\Cygwin64), I cannot predict the results. What's weird is that fstat and stat report different file modes. $ pwd /cygdrive/g/cygwin $ ~/sun fstat mode = 140666 stat mode = 140666 $ ls -l .socket srw-rw-rw-+ 1 ANTON None 0 Jul 1 01:24 .socket= So all's good here, BUT: $ mkdir subdir $ cd subdir $ pwd /cygdrive/g/cygwin/subdir $ ~/sun fstat mode = 140666 stat mode = 140664 $ ls -l .socket srw-rw-r--+ 1 ANTON None 0 Jul 1 01:25 .socket= Note that fstat lied! For some reason getfacl returns "Not supported", so I could not investigate with that, but I'm showing below the icacls outputs for both /cygwin/g/cygwin and /cygdrive/g/cygwin/subdir with their .socket files, respectively. At any rate, it looks like fstat, despite reporting the mode, wasn't actually able to bake it on disk using those insanely complicated Windows permissions. What's more insane, is that using the chmod command from shell, I'm able to change the permissions to 0666, and it sticks: $ pwd /cygdrive/g/cygwin/subdir $ chmod 0666 .socket $ ls -l .socket srw-rw-rw-+ 1 ANTON None 0 Jul 1 01:25 .socket= Any insights will be highly appreciated! Thanks. $ pwd /cygdrive/g/cygwin $ icacls . . BUILTIN\Administrators:(I)(F) BUILTIN\Administrators:(I)(OI)(CI)(IO)(F) NT AUTHORITY\SYSTEM:(I)(F) NT AUTHORITY\SYSTEM:(I)(OI)(CI)(IO)(F) NT AUTHORITY\Authenticated Users:(I)(M) NT AUTHORITY\Authenticated Users:(I)(OI)(CI)(IO)(M) BUILTIN\Users:(I)(RX) BUILTIN\Users:(I)(OI)(CI)(IO)(GR,GE) $ icacls .socket .socket NULL SID:(DENY)(Rc,S,WEA,X,DC) ANTON\ANTON:(R,W,D,WDAC,WO) ANTON\None:(DENY)(S,X) NT AUTHORITY\Authenticated Users:(DENY)(S,X) NT AUTHORITY\SYSTEM:(DENY)(S,X) BUILTIN\Administrators:(DENY)(S,X) BUILTIN\Users:(DENY)(S,X) ANTON\None:(RX,W) NT AUTHORITY\Authenticated Users:(RX,W) NT AUTHORITY\SYSTEM:(RX,W) BUILTIN\Administrators:(RX,W) BUILTIN\Users:(RX,W) Everyone:(R,W) $ cd subdir $ icacls . . NULL SID:(DENY)(Rc,S,REA,WEA,X,DC) ANTON\ANTON:(F) ANTON\None:(RX) NT AUTHORITY\Authenticated Users:(RX,W,DC) NT AUTHORITY\SYSTEM:(RX,W,DC) BUILTIN\Administrators:(RX,W,DC) BUILTIN\Users:(RX) Everyone:(RX) NULL SID:(OI)(CI)(IO)(DENY)(Rc,S,REA,WEA,X,DC) CREATOR OWNER:(OI)(CI)(IO)(F) CREATOR GROUP:(OI)(CI)(IO)(RX) NT AUTHORITY\Authenticated Users:(OI)(CI)(IO)(RX,W,DC) NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(RX,W,DC) BUILTIN\Administrators:(OI)(CI)(IO)(RX,W,DC) BUILTIN\Users:(OI)(CI)(IO)(RX) Everyone:(OI)(CI)(IO)(RX) As created by the program: $ icacls .socket .socket NULL SID:(DENY)(Rc,S,WEA,X,DC) ANTON\ANTON:(R,W,D,WDAC,WO) ANTON\None:(DENY)(S,X) NT AUTHORITY\Authenticated Users:(DENY)(S,X) NT AUTHORITY\SYSTEM:(DENY)(S,X) BUILTIN\Administrators:(DENY)(S,X) BUILTIN\Users:(DENY)(S,X) ANTON\None:(RX) NT AUTHORITY\Authenticated Users:(RX,W) NT AUTHORITY\SYSTEM:(RX,W) BUILTIN\Administrators:(RX,W) BUILTIN\Users:(RX) Everyone:(R) After chmod: $ icacls .socket .socket NULL SID:(DENY)(Rc,S,WEA,X,DC) ANTON\ANTON:(R,W,D,WDAC,WO) ANTON\None:(DENY)(S,X) NT AUTHORITY\Authenticated Users:(DENY)(S,X) NT AUTHORITY\SYSTEM:(DENY)(S,X) BUILTIN\Administrators:(DENY)(S,X) BUILTIN\Users:(DENY)(S,X) ANTON\None:(RX) NT AUTHORITY\Authenticated Users:(RX,W) NT AUTHORITY\SYSTEM:(RX,W) BUILTIN\Administrators:(RX,W) BUILTIN\Users:(RX) ANTON\None:(DENY)(W,DC) BUILTIN\Users:(DENY)(W,DC) Everyone:(R,W) Anton Lavrentiev Contractor NIH/NLM/NCBI -- 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