delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp-workers/1998/03/17/07:10:00

From: Martin Stromberg <Martin DOT Stromberg AT lu DOT erisoft DOT se>
Message-Id: <199803171209.NAA06351@propus.lu.erisoft.se>
Subject: Re: Where to get the latest sources for djtar
To: djgpp-workers AT delorie DOT com
Date: Tue, 17 Mar 1998 13:09:10 +0100 (MET)
In-Reply-To: <4C679816999@brain1.lstm.ruhr-uni-bochum.de> from "Tom Demmer" at Mar 17, 98 08:05:58 am
MIME-Version: 1.0

I hope it's alright if I only mail the list.

> > > > > I think the limitation is not 24 slashes, it's the length of the path 
> > > > > name.  Anything longer than 64 characters should make DOS barf.
> > 
> > Sorry, I meant
> > "C:/1/2/3/4/5/6/7/8/9/10/11/12/13/14/15/16/17/18/19/20/21/22/23/24/25".
> > This is 58 (or 59 including '\0' at the end) characters long.

Uuumh... I can't count. It's 68 long.

> Just to make things a bit more interesting, NetWare (at least 3.x) 
> has its own ideas about how deep directories may nest. The default 
> level is, IIRC, something between 6 and 10, so not quite a lot. This 
> can lead to funny bugs where you cannot untar to a networked drive, 
> but to a local one. So, checking for which kind of error occurs is 
> worth it.

For the following discussion, the error conditions that I've tried is
three: full disk, too deep directory nesting and already exist.

Well I tried looking at the error code in the registers from the 
__dpmi_int(21,39) call. The only error code I can get is 5. 
According to (what's his name, now)'s interrupt list INT21/39 only
gives 3 or 5 as error codes. And from what they mean, I think 3 is
when you try to create the directory /a/b when /a doesn't exist.

I've also tried calling INT21/59 (Get Extended Error or somthing like
that) and I always get the same information: (ah, bh, bl, ch) = 
(5, 3, 3, 2), for all the errors.

Could you, Tommas Demmer, perhaps check to see if what error codes to 
get from NetWare, in these three cases, if you have access to that?
I can send you my test program if you want. It's a hacked mkdir.c from
libc, with a main() function calling mkdir.


Now I'm not a DOS hacker so if somebody has any ideas how to get better
error codes, let's hear them.

If there aren't any then I can't see how else to know that the disk is
full, except calling statfs.


Dodo,

							MartinS

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019