Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-Id: <200304091311.h39DAukx021095@phys-nfs1.tvi.cc.nm.us> Date: Wed, 9 Apr 2003 07:10:46 -0600 (MDT) From: dmay AT tvi DOT edu Reply-To: dmay AT tvi DOT edu Subject: Re: Problem with database engine on Cygwin To: cygwin AT cygwin DOT com cc: lhall AT rfk DOT com In-Reply-To: MIME-Version: 1.0 Content-Type: TEXT/plain; charset=us-ascii On 8 Apr, Igor Pechtchanski wrote: | Larry, | | It may be more complicated than that. unlink() calls DeleteFile(), and | who knows what happens in the guts of it. For instance, I'm having a | permission problem with deleting files on a Samba share from inside of | applications (but no problems deleting them from the shell). I've traced | it as far as the DeleteFile() call, which fails in the former case and | succeeds in the latter. Go figure... | | My advice to the OP, though, is to check all the return codes, especially | for system calls. | Igor | | On Tue, 8 Apr 2003, lhall AT pop DOT ma DOT ultranet DOT com wrote: | |> Running on a FAT partition perhaps? |> |> You may find a review of the code for unlink() (remove() calls this) |> call in the Cygwin DLL interesting. You might find it even more interesting |> to build your own debug version of cygwin1.dll and stop in this function. |> ;-) |> |> Still sounds allot like you're having a permission problem on delete. |> |> Larry |> |> Original Message: |> ----------------- |> From: dmay AT tvi DOT edu |> Date: Tue, 8 Apr 2003 16:44:06 -0600 (MDT) |> To: cygwin AT cygwin DOT com, dmay AT tvi DOT edu |> Subject: Re: Problem with database engine on Cygwin |> |> |> On Monday, Apr 7, 2003 I posted a query re. an issue I am having using a |> database engine I wrote with Cygwin. Through the use of Asserts() and |> liberal |> printf()s I have traced the problem down to a single line of code. |> Basically, |> the code does the following: |> |> int fd; |> fd = creat ("SSNumberIndex.inx", 0644); |> |> This is failing with a "permission denied" system error. In terms of the |> order of how things are done, the file SSNumberIndex.inx is unattached from |> an |> old table, deleted, and then recreated. It is during this recreation that I |> am having the problem. There is not a file with this name in the current |> directory (it is deleted through a remove() system call, and the system |> indicates that the removal is successful). |> |> I have tried the following CYGWIN environment variables: |> |> set CYGWIN=nontsec tty glob |> set CYGWIN=nontsec tty glob binmode |> set CYGWIN=ntsec tty glob binmode |> set CYGWIN=ntsec tty glob |> |> All to no avail. I have read the sections on file permissions and text and |> binary modes in Chapter 3 of the User Guide. I have skimmed through the |> FAQ. |> I don't see anything that resembles this issue. My apologies if I just |> missed it. |> |> Any ideas would be appreciated. Thanks in advance. | | -- | http://cs.nyu.edu/~pechtcha/ | |\ _,,,---,,_ pechtcha AT cs DOT nyu DOT edu | ZZZzz /,`.-'`' -. ;-;;,_ igor AT watson DOT ibm DOT com | |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski | '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! | | Knowledge is an unending adventure at the edge of uncertainty. | -- Leto II This is an NTFS partition on Windows 2000, not a FAT partition. On the file deletion, I check the return value and it checks out OK. In stepping through the code, I get a return value of 0 from the delete call. At that point, the file no longer shows up in file listings. It is when I try to recreate the file with creat() that I get the "permission denied" error. Is it possible that the file isn't really deleted, even though the return value indicates the delete was successful? Thanks for the ideas. I thought before I started debugging this problem that I did a pretty good job of monitoring return values...I obviously have some work to do :o< -- ================================= David May Senior UNIX System Administrator Albuquerque TVI 505-224-3015 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/