From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm Received: (qmail 25910 invoked from network); 20 May 2004 18:07:48 -0000 Received: from unknown (HELO NUTMEG.CAM.ARTIMI.COM) (217.40.111.177) by sourceware.org with SMTP; 20 May 2004 18:07:48 -0000 Received: from mace ([192.168.1.25]) by NUTMEG.CAM.ARTIMI.COM with Microsoft SMTPSVC(6.0.3790.0); Thu, 20 May 2004 19:07:30 +0100 From: "Dave Korn" To: Subject: RE: com1 access denied - win xp Date: Thu, 20 May 2004 18:27:00 -0000 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit In-Reply-To: Message-ID: X-OriginalArrivalTime: 20 May 2004 18:07:30.0710 (UTC) FILETIME=[513B3360:01C43E95] X-SW-Source: 2004-05/txt/msg00704.txt.bz2 > -----Original Message----- > From: cygwin-owner On Behalf Of Michael Wood > Sent: 20 May 2004 17:23 > Hi-ya, > > I get an "Access is denied" error message when attempting to create a > serial port connection through Cygwin, running on Win XP. > > In cygwin, when I execute: > ls -l COM1 > > I get the following: > -rw-r--r-- 1 mwood mkgroup- 0 Jan 1 1970 COM1 > > However, when I execute: > chmod a+rw COM1 > > the command exits normally (no error message), but the permissions on > COM1 stay the same. Furthermore, I do not particularly > understand why if > I am the owner of COM1 (as illustrated by the 'ls -l'), why I > would get > a permission error. > > I have successfully created and used a connection on the > serial port on > the same machine through a VMWare session running a Linux Red > Hat image. > I used a very similar procedure above, in that I simply changed the > permissions on "/dev/ttyS0" to grant all users read and write > permissions to the serial port. > > Help would be greatly appreciated. > > - Mike #1. Why not use /dev/ttyS0 again? Cygwin is a posix compatible layer and /dev/ttyS0 should work pretty much the same. BTW, which directory are you in when you do those commands on COM1? Did you "cd /dev" or do you expect it to just work anywhere, and if so, why? #2. 'doze has some pretty funny ideas about files having the same name as dos-devices (COMx:, PRN:, LPTx: etc). It doesn't like it at all. Presumably somewhere between cygwin and 'doze a bit of confusion is creeping in. #3. I notice that if you're in /dev and you do "ls -la com1", you get the right answer. But remember, under Posix, capitalisation matters, so "com1" and "COM1" are two different files. Under 'doze, unfortunately, it doesn't. So probably Cygwin knows that /dev/com1 is the serial port, thinks that /dev/COM1 is something different because the case doesn't match, assumes it's an ordinary file and passes the name through to the underlying 'doze file-handling calls, which disagree with cygwin and think that it IS a serial port, and then everybody gets confused. #4. When I do "ls -la COM1", I just get: dk@mace /> ls -la COM1 ---------- 0 ???????? ???????? 0 Jan 1 1970 COM1 no matter what directory I'm in. Bizarre. When I'm do "ls -la /dev/com1", I get the proper answer: dk@mace /> ls -la /dev/com1 crw-rw-rw- 1 dk Domain U 117, 1 May 20 19:05 /dev/com1 but capitalizing it never works, not even in the /dev directory. dk@mace /> ls -la /dev/COM1 ---------- 0 ???????? ???????? 0 Jan 1 1970 /dev/COM1 #5. Anyway, the answer to your problem is that you were using the wrong filename. The solution is to use the correct filename; either /dev/com1 or /dev/ttyS0. And as to why there's a messed up COM1 in there, that's a little bugette you've stumbled across. cheers, DaveK -- Can't think of a witty .sigline today....