#include <sys/mount.h>
int mount(type, dir, M_NEWTYPE|flags, data) char *type; char *dir; int flags; caddr_t data;
int mount(spec, dir, rdonly) char *spec; char *dir; int rdonly;
mount() 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.
mount() may be invoked only by the super-user.
The flags argument is constructed by the logical OR of the following bits (defined in <sys/mount.h>):
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.
The type string indicates the type of the filesystem. 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:
4.2 struct ufs_args { char *fspec; /* Block special file to mount */ }; "lo" struct lo_args { char *fsdir; /* Pathname of directory to mount */ }; "nfs" #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 */ char *hostname; /* server's hostname */ int acregmin; /* attr cache file min secs */ int acregmax; /* attr cache file max secs */ int acdirmin; /* attr cache dir min secs */ int acdirmax; /* attr cache dir max secs */ char *netname; /* server's netname */ }; rfs struct rfs_args { char *rmtfs /* name of remote resource */ struct token { int t_id; /* token id */ char t_uname[64]; /* domain.machine name */ } *token; /* Identifier of remote machine */ };
mount() requests that a file system contained on the block special file identified by spec be mounted on the directory identified by dir. spec and dir point to path names. When mount() succeeds, subsequent references to the file named by dir refer to the root directory on the mounted file system.
The M_RDONLY bit of rdonly is used to control write permission on the mounted file system. If the bit is set, writing is not allowed. Otherwise, writing is permitted according to the access permissions of individual files.
mount() returns:
A pathname component is longer than {NAME_MAX} (see sysconf.2v while {_POSIX_NO_TRUNC} is in effect (see pathconf.2v
For a 4.2 file system, mount() fails when one of the following occurs:
A pathname component is longer than {NAME_MAX} (see sysconf.2v while {_POSIX_NO_TRUNC} is in effect (see pathconf.2v
There are no more mount table entries.
Some of the error codes need translation to more obvious messages.
Created by unroff & hp-tools. © somebody (See intro for details). All Rights Reserved. Last modified 11/5/97