Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ fsmount(2) — A/UX 0.7

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

unmount(2)

mount(8)

fsmount(2)



     fsmount(2)                                             fsmount(2)



     NAME
          fsmount - mount file system

     SYNOPSIS
          #include <sys/mount.h>
          fsmount(type, dir, flags, data)
          int type;
          char *dir;
          int flags;
          caddr_t data;

     DESCRIPTION
          fsmount attaches a file system to a directory.  After a
          successful return, references to directory dir will refer to
          the root directory on the newly mounted file system.  dir is
          a pointer to a null-terminated string containing a path
          name.  dir must exist already, and must be a directory.  Its
          old contents are inaccessible while the file system is
          mounted.

          The flags argument determines whether the file system can be
          written on, and if set-uid execution is allowed.  Physically
          write-protected and magnetic tape file systems must be
          mounted read-only or errors will occur when access times are
          updated, whether or not any explicit write is attempted.

          type indicates the type of the filesystem.  It must be one
          of the types defined in mount.h.  data is a pointer to a
          structure which contains the type specific arguments to
          mount.  Below is a list of the filesystem types supported
          and the type specific arguments to each:

          MOUNTUFS
              struct ufs_args {
                 char    *fspec;      /* Block special file to mount */
              };

          MOUNTNFS
              #include   <nfs/nfs.h>
              #include   <netinet/in.h>
              struct nfs_args {
                 struct sockaddr_in  *addr;  /* file server address */
                 fhandle_t   *fh;   /* File handle to be mounted */
                 int   flags;   /* flags */
                 int   wsize;   /* write size in bytes */
                 int   rsize;   /* read size in bytes */
                 int   timeo;   /* initial timeout in .1 secs */
                 int   retrans;   /* times to retry send */
              };

     RETURN VALUE
          fsmount returns 0 if the action occurred, and -1 if special



     Page 1                                        (last mod. 1/14/87)





     fsmount(2)                                             fsmount(2)



          is inaccessible or not an appropriate file, if name does not
          exist, if special is already mounted, if name is in use, or
          if there are already too many file systems mounted.

     ERRORS
          fsmount will fail when one of the following occurs:

          [EPERM]        The caller is not the super-user.

          [ENOTBLK]      special is not a block device.

          [ENXIO]        The major device number of special is out of
                         range (this indicates no device driver exists
                         for the associated hardware).

          [EBUSY]        Dir is not a directory, or another process
                         currently holds a reference to it.

          [EBUSY]        No space remains in the mount table.

          [EBUSY]        The super block for the file system had a bad
                         magic number or an out of range block size.

          [EBUSY]        Not enough memory was available to read the
                         cylinder group information for the file
                         system.

          [ENOTDIR]      A component of the path prefix in special or
                         name is not a directory.

          [EPERM]        The pathname of special or name contains a
                         character with the high-order bit set.

          [ENAMETOOLONG] The pathname of special or name was too long.

          [ENOENT]       special or name does not exist.

          [EACCES]       Search permission is denied for a component
                         of the path prefix of special or name.

          [EFAULT]       special or name points outside the process's
                         allocated address space.

          [ELOOP]        Too many symbolic links were encountered in
                         translating the pathname of special or name.

          [EIO]          An I/O error occurred while reading from or
                         writing to the file system.

     SEE ALSO
          unmount(2), mount(8)




     Page 2                                        (last mod. 1/14/87)





     fsmount(2)                                             fsmount(2)



     BUGS
          Too many errors appear to the caller as one value.





















































     Page 3                                        (last mod. 1/14/87)



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