Mail Archives: djgpp-workers/2000/12/01/03:34:20
> Date: Fri, 01 Dec 2000 01:01:47 -0500
> From: "Peter J. Farley III" <pjfarley AT banet DOT net>
> >
> >A file handle's SH_DENY* flags are stored in the JFT like a lot of other
> >flags passed to open(). If you manipulate them using undocumented
> >methods, you just might be able to have a read lock for the whole file
> >that can then be unlocked by fiddling with the handle's open flagst.
> >However, I haven't tried this and I doubt it's worth the effort to work
> >on this just to get one special case of read locks working.
>
> OK, then we stay with the current F_RDLCK workaround, and allow whole-file
> read locks as previously discussed?
I don't think it's worth the hassle, for now. I think you need to
handle F_RDLCK as F_WRLCK.
> BTW, I was looking through RBIL, and I didn't see anything that suggested
> SH_DENY* equivalents in the SFT, but maybe I'm not reading the right
> section.
All of the access bits you specify in the call to Int 21h AH=6Ch are
kept in the SFT. The SFT is the only place where DOS keeps all it
knows about each open handle.
> And I also don't see anything in a JFT except the SFT number.
I think Mark mistakenly said JFT when he really meant SFT. JFT indeed
holds only the index of the entry in the SFT. SFT is where the real
info is stored.
- Raw text -