delorie.com/archives/browse.cgi | search |
X-Recipient: | archive-cygwin AT delorie DOT com |
DomainKey-Signature: | a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; q=dns; s= | |
default; b=Oq2CpdDK67V+4SoE/cE9FAQqp4hBleQ4RlUieZMG1fe93fAkC1EV7 | |
+9s6TRFPXeaQE4n+KnM1qrnlTYSHKPjba/BTMfbpHmhrgqhr9pquo8PyDo5s+9Zd | |
l4Ro9juOkaURXnM2EErmoJMY6/1/ABsxSyRVpw0ZBgdiI8KcLWY+M8= | |
DKIM-Signature: | v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id |
:list-unsubscribe:list-subscribe:list-archive:list-post | |
:list-help:sender:date:from:to:subject:message-id:reply-to | |
:references:mime-version:content-type:in-reply-to; s=default; | |
bh=r2WCfWvkMqC8LMUqAuSqPnkOYjs=; b=QllDIPs7Vc1raEYS+lzvsQuSDaX9 | |
6huPr8lgRNEcWIutiWIvj+Fr5LJdMJkqA0iFJiYfgWeAMBLG4/3PLZ5STuVGWth6 | |
/L2NvUqFADdZRttVUftMExsPJNOv+Re+jeAfQomuJajFB1+398tZunTyN598+jjf | |
ALXGigjBGqqRSZM= | |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Id: | <cygwin.cygwin.com> |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sourceware.org/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
Authentication-Results: | sourceware.org; auth=none |
X-Virus-Found: | No |
X-Spam-SWARE-Status: | No, score=1.2 required=5.0 tests=AWL,BAYES_50,RDNS_NONE,URIBL_BLOCKED autolearn=no version=3.3.2 |
X-HELO: | mho-02-ewr.mailhop.org |
X-Mail-Handler: | Dyn Standard SMTP by Dyn |
X-Report-Abuse-To: | abuse AT dyndns DOT com (see http://www.dyndns.com/services/sendlabs/outbound_abuse.html for abuse reporting information) |
X-MHO-User: | U2FsdGVkX19wxTXhljWXJozoEJ6Gc/l9 |
Date: | Tue, 5 Nov 2013 00:22:32 -0500 |
From: | Christopher Faylor <cgf-use-the-mailinglist-please AT cygwin DOT com> |
To: | cygwin AT cygwin DOT com |
Subject: | Re: Cygwin exe magic does not understand .com extension? |
Message-ID: | <20131105052232.GA7141@ednor.casa.cgf.cx> |
Reply-To: | cygwin AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
References: | <3310368726 DOT 20131105025244 AT mtu-net DOT ru> <20131105035821 DOT GB3059 AT ednor DOT casa DOT cgf DOT cx> |
MIME-Version: | 1.0 |
In-Reply-To: | <20131105035821.GB3059@ednor.casa.cgf.cx> |
User-Agent: | Mutt/1.5.20 (2009-06-14) |
On Mon, Nov 04, 2013 at 10:58:21PM -0500, Christopher Faylor wrote: >On Tue, Nov 05, 2013 at 02:52:44AM +0400, Andrey Repin wrote: >>Greetings, All! >> >>$ mode<Tab> >>mode.com modemui.dll modex.dll > >That would be /bin/sh exe magic from the looks of it. It is probably >just trying to find anything with an executable bit set, just like on >Linux. > >>$ mode >>bash: mode: command not found >> >>Now, I see two issues. >>First, it is that it see .dll files as executables. Which is true in essence, >>but rather suspicious, as .dll files are normally not directly executable. >>Would really like an explanation for this behavior. >> >>Second, is that it actually see mode.com, but unable to execute it. > >It's likely that "mode.com" would execute it. > >>P.S. >>$ set | grep PATHEXT >>PATHEXT='.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.PSC1' > >% cd /cygwin/sources >% grep -B17 PATHEXT *(.) >environ.cc-/* Minimal list of Windows vars which must be converted to uppercase. >environ.cc- Either for POSIX compatibility of for backward compatibility with >environ.cc- existing applications. */ >environ.cc-static struct renv { >environ.cc- const char *name; >environ.cc- const size_t namelen; >environ.cc-} renv_arr[] = { >environ.cc- { NL("ALLUSERSPROFILE=") }, // 0 >environ.cc- { NL("COMMONPROGRAMFILES=") }, // 1 >environ.cc- { NL("COMPUTERNAME=") }, >environ.cc- { NL("COMSPEC=") }, >environ.cc- { NL("HOME=") }, // 4 >environ.cc- { NL("HOMEDRIVE=") }, >environ.cc- { NL("HOMEPATH=") }, >environ.cc- { NL("NUMBER_OF_PROCESSORS=") }, // 7 >environ.cc- { NL("OS=") }, // 8 >environ.cc- { NL("PATH=") }, // 9 >environ.cc: { NL("PATHEXT=") }, > > >i.e., the only thing Cygwin does with PATHEXT is convert it to upper >case. Further clarification: I went to the effort of checking the source for PATHEXT but didn't do so for .com. I thought we'd gotten rid of .com processing but we hadn't. Cygwin will execute mode on the path using execvp. It won't automatically add a .com extension to an open or stat call. Only .exe is really treated specially wrt filename lookups so if bash is doing its own PATH scanning it won't find 'mode' with no extension. However, if you type /path/to/mode it will work without the extension. .com files are a dying breed so please don't ask to further complicate Cygwin's path logic to add support. cgf -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |