add support for adosfs.

This commit is contained in:
chopps 1994-05-11 18:50:36 +00:00
parent 780b200e72
commit cdad699946
4 changed files with 31 additions and 6 deletions

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* from: @(#)vfs_conf.c 7.3 (Berkeley) 6/28/90
* $Id: vfs_conf.c,v 1.17 1994/04/14 04:05:29 cgd Exp $
* $Id: vfs_conf.c,v 1.18 1994/05/11 18:51:18 chopps Exp $
*/
#include <sys/param.h>
@ -87,6 +87,10 @@ extern struct vfsops lofs_vfsops;
extern struct vfsops portal_vfsops;
#endif
#ifdef ADOSFS
extern struct vfsops adosfs_vfsops;
#endif
/*
* XXX ORDERING MATTERS, for COMPAT_09. when that goes away,
* empty slots can go away.
@ -145,6 +149,11 @@ struct vfsops *vfssw[] = {
#else
(struct vfsops *)0,
#endif
#ifdef ADOSFS
&adosfs_vfsops,
#else
(struct vfsops *)0,
#endif
#ifdef LKM /* for LKM's. add new FS's before these */
(struct vfsops *)0,
(struct vfsops *)0,

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* from: @(#)malloc.h 7.25 (Berkeley) 5/15/91
* $Id: malloc.h,v 1.13 1993/12/21 07:58:37 cgd Exp $
* $Id: malloc.h,v 1.14 1994/05/11 18:50:36 chopps Exp $
*/
#ifndef _SYS_MALLOC_H_
@ -104,7 +104,9 @@
#define M_MRTABLE 53 /* multicast routing tables */
#define M_LOFSMNT 54 /* Loopback FS mount structures */
#define M_PORTALMNT 55 /* Portal FS mount structures */
#define M_LAST M_PORTALMNT
#define M_ADOSFSMNT 56 /* adosfs mount structures. */
#define M_ANODE 57 /* adosfs anode structures and tables. */
#define M_LAST M_ANODE
#define INITKMEMNAMES { \
"free", /* 0 M_FREE */ \
@ -163,6 +165,8 @@
"mcast route", /* 53 M_MRTABLE */ \
"lofs mount", /* 54 M_LOFSMNT */ \
"portal mount", /* 55 M_PORTALMNT */ \
"adosfs mount", /* 56 M_ADOSFSMNT */ \
"adosfs anode", /* 57 M_ANODE */ \
}
struct kmemstats {

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* from: @(#)mount.h 7.22 (Berkeley) 6/3/91
* $Id: mount.h,v 1.29 1994/04/25 03:50:33 cgd Exp $
* $Id: mount.h,v 1.30 1994/05/11 18:50:39 chopps Exp $
*/
#ifndef _SYS_MOUNT_H_
@ -93,6 +93,7 @@ struct statfs {
#define MOUNT_PROCFS "procfs" /* proc filesystem */
#define MOUNT_LOFS "lofs" /* loopback filesystem */
#define MOUNT_PORTAL "portal" /* portal filesystem */
#define MOUNT_ADOSFS "adosfs" /* amigados filesystem */
/*
* Structure per mounted file system.
@ -304,6 +305,16 @@ struct msdosfs_args {
mode_t mask; /* mask to be applied for msdosfs perms */
};
/*
* Arguments to mount amigados filesystems.
*/
struct adosfs_args {
char *fspec; /* blocks special holding the fs to mount */
uid_t uid; /* uid that owns adosfs files */
gid_t gid; /* gid that owns adosfs files */
mode_t mask; /* mask to be applied for msdosfs perms */
};
#ifdef KERNEL
/*
* exported vnode operations

View File

@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* from: @(#)vnode.h 7.39 (Berkeley) 6/27/91
* $Id: vnode.h,v 1.18 1994/04/25 03:50:38 cgd Exp $
* $Id: vnode.h,v 1.19 1994/05/11 18:50:41 chopps Exp $
*/
#ifndef _SYS_VNODE_H_
@ -59,7 +59,8 @@ enum vtype { VNON, VREG, VDIR, VBLK, VCHR, VLNK, VSOCK, VFIFO, VBAD };
* and should NEVER be inspected inside the kernel.
*/
enum vtagtype { VT_NON, VT_UFS, VT_NFS, VT_MFS, VT_LFS, VT_MSDOSFS, VT_ISOFS,
VT_KERNFS, VT_FDESC, VT_PROCFS, VT_LOFS, VT_PORTAL };
VT_KERNFS, VT_FDESC, VT_PROCFS, VT_LOFS, VT_PORTAL,
VT_ADOSFS };
/*
* This defines the maximum size of the private data area