xref: /csrg-svn/sys/nfs/nfsdiskless.h (revision 46986)
1*46986Smckusick /*
2*46986Smckusick  * Copyright (c) 1991 The Regents of the University of California.
3*46986Smckusick  * All rights reserved.
4*46986Smckusick  *
5*46986Smckusick  * This code is derived from software contributed to Berkeley by
6*46986Smckusick  * Rick Macklem at The University of Guelph.
7*46986Smckusick  *
8*46986Smckusick  * %sccs.include.redist.c%
9*46986Smckusick  *
10*46986Smckusick  *	@(#)nfsdiskless.h	7.1 (Berkeley) 03/04/91
11*46986Smckusick  */
12*46986Smckusick 
13*46986Smckusick /*
14*46986Smckusick  * Structure that must be initialized for a diskless nfs client.
15*46986Smckusick  * This structure is used by nfs_mountroot() to set up the root and swap
16*46986Smckusick  * vnodes plus do a partial ifconfig(8) and route(8) so that the critical net
17*46986Smckusick  * interface can communicate with the server.
18*46986Smckusick  * For now it is statically initialized in swapvmunix.c, but someday a primary
19*46986Smckusick  * bootstrap should fill it in.
20*46986Smckusick  */
21*46986Smckusick struct nfs_diskless {
22*46986Smckusick 	struct ifaliasreq myif;		/* Info. for partial ifconfig */
23*46986Smckusick 	struct sockaddr	mygateway;	/* Default gateway for "route add" */
24*46986Smckusick 	struct nfs_args	swap_args;	/* Mount args for swap file */
25*46986Smckusick 	u_char		swap_fh[NFS_FHSIZE]; /* Swap file's file handle */
26*46986Smckusick 	struct sockaddr	swap_saddr;	/* Address of swap server */
27*46986Smckusick 	char		*swap_hostnam;	/* Host name for mount pt */
28*46986Smckusick 	struct nfs_args	root_args;	/* Mount args for root fs */
29*46986Smckusick 	u_char		root_fh[NFS_FHSIZE]; /* File handle of root dir */
30*46986Smckusick 	struct sockaddr	root_saddr;	/* Address of root server */
31*46986Smckusick 	char		*root_hostnam;	/* Host name for mount pt */
32*46986Smckusick };
33