Mailing-List: contact cygwin-developers-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT cygwin DOT com Delivered-To: mailing list cygwin-developers AT cygwin DOT com content-class: urn:content-classes:message Subject: Alloc_sd() fragile? MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Date: Tue, 5 Mar 2002 09:04:29 +1100 Message-ID: X-MimeOLE: Produced By Microsoft Exchange V6.0.5762.3 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: Alloc_sd() fragile? Thread-Index: AcHDyI5cp+qAnZi0TwOyh9utrorobQ== From: "Robert Collins" To: Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from quoted-printable to 8bit by delorie.com id g24M4aO12795 I've been tracking down a failure in the daemon code... The interesting bit is how alloc_sd appears to work ~ 50% of the time. The other interesting bit is how CreateFile (used to open the pipe) appears to set the same error number as the GetSecurityDescriptorOwner and Group calls do. (Oh, the SD is passed into the daemon and used in creating and opening the file mappings, so that NT enforces the SHM security for us.) Any ideas? (Is this a roberts-system-is-stuffed quirk, a don't-do-x-it-causes-this quirk?) Rob 2367 1395449 [main] shmctl_rmid 1568 transport_layer_pipes::close: closing pipe 0x794 3565 1399014 [main] shmctl_rmid 1568 alloc_sd: owner: Administrator [500] 2209 1401223 [main] shmctl_rmid 1568 alloc_sd: ACL-Size: 100 1481 1402704 [main] shmctl_rmid 1568 alloc_sd: Created SD-Size: 176 4610 1407314 [main] shmctl_rmid 1568 cygserver_request: connected to server 0xA0112F8 1770 1409084 [main] shmctl_rmid 1568 client_request::send: this=0xA013878, conn=0xA0112F8 2987 1412071 [main] shmctl_rmid 1568 client_request::send: header.cb = 4128 1617 1413688 [main] shmctl_rmid 1568 transport_layer_pipes::write: writing to pipe 0x760 1146 1414834 [main] shmctl_rmid 1568 transport_layer_pipes::write: writing to pipe 0x760 2402 1417236 [main] shmctl_rmid 1568 client_request::send: Sent request, size (4128) 1590 1418826 [main] shmctl_rmid 1568 transport_layer_pipes::read: reading from pipe 0x760 8897 1427723 [main] shmctl_rmid 1568 transport_layer_pipes::read: reading from pipe 0x760 2623 1430346 [main] shmctl_rmid 1568 client_request::send: completed ok 1718 1432064 [main] shmctl_rmid 1568 transport_layer_pipes::close: closing pipe 0x760 2301 1434365 [main] shmctl_rmid 1568 _write: write (1, 0xA012430, 25) 759 1435124 [main] shmctl_rmid 1568 fhandler_console::write: A012430, 25 1372 1436496 [main] shmctl_rmid 1568 fhandler_console::write: at 100(d) state is 1 delete private key... ok 3767 1440263 [main] shmctl_rmid 1568 fhandler_console::write: 25 = write_console (,..25) 1768 1442031 [main] shmctl_rmid 1568 _write: 25 = write (1, 0xA012430, 25) 1645 1443676 [main] shmctl_rmid 1568 alloc_sd: owner: Administrator [500] 2182 1445858 [main] shmctl_rmid 1568 alloc_sd: GetSecurityDescriptorOwner Win32 error 1305 2088 1447946 [main] shmctl_rmid 1568 alloc_sd: GetSecurityDescriptorGroup Win32 error 1305 1963 1449909 [main] shmctl_rmid 1568 alloc_sd: ACL-Size: 100 854 1450763 [main] shmctl_rmid 1568 alloc_sd: Created SD-Size: 176 4095 1454858 [main] shmctl_rmid 1568 transport_layer_pipes::connect: Error opening the pipe (1305) 3432 1458290 [main] shmctl_rmid 1568 _write: write (1, 0xA012430, 23) 1618 1459908 [main] shmctl_rmid 1568 fhandler_console::write: A012430, 23 1564 1461472 [main] shmctl_rmid 1568 fhandler_console::write: at 99(c) state is 1