Mailing-List: contact cygwin-developers-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-developers-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin-developers AT sources DOT redhat DOT com Message-ID: <39FEA32B.58D3518F@cygnus.com> Date: Tue, 31 Oct 2000 11:47:07 +0100 From: Corinna Vinschen Reply-To: cygdev X-Mailer: Mozilla 4.75 [en] (X11; U; Linux 2.2.14-SMP i686) X-Accept-Language: de, en MIME-Version: 1.0 To: cygdev Subject: [RFD]: Execute permission for DLLs? Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit On NTFS partitions, NT/W2K require the execute permission for DLLs to allow loading a DLL on process startup. That's no problem unless a person using `ntsec' gets a tar archive packed by a person not using `ntsec' or packing on a FAT partition. Since Cygwin fakes the execute permission only for the suffixes "exe", "bat", "com", DLLs are treated as non executable by the stat() call when `ntsec' isn't set. When a person using `ntsec' unpacks that tar archive, the start of an application which requires one of the DLLs from the archive will fail with the Windows message "The application failed to initialize properly (0xc0000022)" which isn't that meaningful for most of the users. To solve that problem we would have to do a simple step. Fake execute permissions for DLLs when `ntsec' isn't set or the file system doesn't support ACLs (FAT/FAT32). Thoughts? Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Developer mailto:cygwin AT sources DOT redhat DOT com Red Hat, Inc. mailto:vinschen AT redhat DOT com