[comp.binaries.ibm.pc] v06i010: fstat, list file status for MS-DOS

ibmbin-request@crdgw1.crd.ge.com (03/01/90)

Checksum: 3276784979  (Verify with "brik -cv")
Posting-number: Volume 06, Issue 010
Submitted-by: richard@calvin.spp.cornell.edu
Archive-name: fstat/part01

Reviewed by: davidsen@sixhub.UUCP

  I don't know who will find this useful, but a couple of DOS hackers
said they thought it would be great when you have any use for it at all.
It looks like a specialty tool which might save a lot of time chasing
obscure problems.

Submitter's comments:

FSTAT is a small utility to display a list of all open files and devices in
the system file table, along with as much information about them as I could
cram into one line.  I find it useful for diagnosing "no more file handle"
type messages, and for finding out what my TSRs are doing when I'm not
looking.  It works with DOS 2.x, 3.x and 4.x (not extensively tested on 2.x)
The source might prove useful if you want to know how to snoop in the system
file table.

                THIS CODE RELEASED TO THE PUBLIC DOMAIN

Richard Brittain
richard@calvin.spp.cornell.edu



[
Checksums obtained with the 4.3BSD "sum" or System V "sum -r" command.

checksum     size (bytes)  file (between BEGIN--cut and END--cut lines)
    1929        18334      part01

checksum     size (bytes)  file
   60733        13287      fstat.zoo

-- bill
]

fstat part01/01
BEGIN--cut here--cut here
begin 644 fstat.zoo
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
MQ/T"````````````````````````````````````````````````````````
,`````````/R#````
`
end
END--cut here--cut here