Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

IOS_DIR_$INTRO                    Domain/OS                     IOS_DIR_$INTRO


NAME
     intro - stream access to directories

SYNOPSIS (C)
     #include <apollo/base.h>
     #include <apollo/ios.h>
     #include <apollo/ios_dir.h>

SYNOPSIS (Pascal)
     %include '/sys/ins/base.ins.pas';
     %include '/sys/ins/ios.ins.pas';
     %include '/sys/ins/ios_dir.ins.pas';

SYNOPSIS (FORTRAN)
     %include '/sys/ins/base.ins.ftn'
     %include '/sys/ins/ios.ins.ftn'

DESCRIPTION
     The IOS_DIR (I/O Switch Directory) calls provide a stream interface to
     directory objects.

     The following is a list of the ios_dir_$ calls.

         ios_dir_$isa         test whether a stream is open on a directory
         ios_dir_$open        open an object in an open directory
         ios_dir_$readdir     read a directory
         ios_dir_$rewinddir   rewind a directory
         ios_dir_$seekdir     seek in a directory
         ios_dir_$telldir     return a seek key for a directory

   Constants
     ios_dir_$enttype_file
          The directory entry is a file.

     ios_dir_$enttype_link
          The directory entry is a link.

   Data Types
     ios_dir_$buf_t
          A large buffer for the receipt of a variable number of directory
          entries in ios_dir_$canonical_dir_entry_t records.

     ios_dir_$canonical_dir_entry_t
          A record type for holding a directory entry as returned by
          ios_dir_$readdir.  It has the following format:


              15                                                           0
              ______________________________________________________________
              |                           entnxt                            |
              |_____________________________________________________________|
              |                          enttype                            |
              |_____________________________________________________________|
              |                         reserved1                           |
              |_____________________________________________________________|
              |                         reserved1                           |
              |_____________________________________________________________|
              |                         reserved2                           |
              |_____________________________________________________________|
              |                         reserved2                           |
              |_____________________________________________________________|
              |                         reserved3                           |
              |_____________________________________________________________|
              |                         reserved3                           |
              |_____________________________________________________________|
              |                         enthandle                           |
              |_____________________________________________________________|
              |                         enthandle                           |
              |_____________________________________________________________|
              |                           entlen                            |
              |_____________________________________________________________|
              |          entname             |             ...              |
              ______________________________________________________________
              15                           8  7                            0


          entnxt
               An offset in bytes to the next entry in a list of directory
               entries.

          enttype
               The type of the directory entry.  It can be have one of the
               following values:

               ios_dir_$enttype_file
                    The directory entry is for a file.

               ios_dir_$enttype_link
                    The directory entry is for a link.

          reserved1
               Reserved for use by Domain/OS.

          reserved2
               Reserved for use by Domain/OS.

          reserved3
               Reserved for use by Domain/OS.

          enthandle
               A handle to the directory used by Domain/OS.

          entlen
               The number of bytes in entname.

          entname
               The directory entry name of type name_$long_name_t.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026