Lines Matching +full:boot +full:- +full:up

1 /*-
2 * SPDX-License-Identifier: BSD-3-Clause
108 nd->flags |= NFSMNT_SOFT; in nfs_parse_options()
110 nd->flags |= NFSMNT_INT; in nfs_parse_options()
112 nd->flags |= NFSMNT_NOCONN; in nfs_parse_options()
114 nd->flags |= NFSMNT_NOLOCKD; in nfs_parse_options()
116 nd->flags |= NFSMNT_NOCTO; in nfs_parse_options()
118 nd->flags &= ~(NFSMNT_NFSV3 | NFSMNT_NFSV4); in nfs_parse_options()
120 nd->flags &= ~NFSMNT_NFSV4; in nfs_parse_options()
121 nd->flags |= NFSMNT_NFSV3; in nfs_parse_options()
123 nd->sotype = SOCK_STREAM; in nfs_parse_options()
125 nd->sotype = SOCK_DGRAM; in nfs_parse_options()
129 nd->rsize = (int) v; in nfs_parse_options()
130 nd->flags |= NFSMNT_RSIZE; in nfs_parse_options()
135 nd->wsize = (int) v; in nfs_parse_options()
136 nd->flags |= NFSMNT_WSIZE; in nfs_parse_options()
150 if ((sdl->sdl_type == ourdl->sdl_type) && in nfs_setup_diskless_ifa_cb()
151 (sdl->sdl_alen == ourdl->sdl_alen) && in nfs_setup_diskless_ifa_cb()
152 !bcmp(LLADDR(sdl), LLADDR(ourdl), sdl->sdl_alen)) in nfs_setup_diskless_ifa_cb()
163 * boot.netif.name name of boot interface
164 * boot.netif.ip IP address on boot interface
165 * boot.netif.netmask netmask on boot interface
166 * boot.netif.gateway default gateway (optional)
167 * boot.netif.hwaddr hardware address of boot interface
168 * boot.netif.mtu interface mtu from bootp/dhcp (optional)
169 * boot.nfsroot.server IP address of root filesystem server
170 * boot.nfsroot.path path of the root filesystem on server
171 * boot.nfsroot.nfshandle NFS handle for root filesystem on server
172 * boot.nfsroot.nfshandlelen and length of this handle (for NFSv3 only)
173 * boot.nfsroot.options NFS options for the root filesystem
194 if ((cp = kern_getenv("boot.nfsroot.nfshandlelen")) != NULL) { in nfs_setup_diskless()
201 nd3->root_fhsize = len; in nfs_setup_diskless()
205 /* set up interface */ in nfs_setup_diskless()
206 if (inaddr_to_sockaddr("boot.netif.ip", &myaddr)) in nfs_setup_diskless()
208 if (inaddr_to_sockaddr("boot.netif.netmask", &netmask)) { in nfs_setup_diskless()
213 bcopy(&myaddr, &nd3->myif.ifra_addr, sizeof(myaddr)); in nfs_setup_diskless()
214 bcopy(&myaddr, &nd3->myif.ifra_broadaddr, sizeof(myaddr)); in nfs_setup_diskless()
216 &nd3->myif.ifra_broadaddr)->sin_addr.s_addr = in nfs_setup_diskless()
218 bcopy(&netmask, &nd3->myif.ifra_mask, sizeof(netmask)); in nfs_setup_diskless()
220 bcopy(&myaddr, &nd->myif.ifra_addr, sizeof(myaddr)); in nfs_setup_diskless()
221 bcopy(&myaddr, &nd->myif.ifra_broadaddr, sizeof(myaddr)); in nfs_setup_diskless()
223 &nd->myif.ifra_broadaddr)->sin_addr.s_addr = in nfs_setup_diskless()
225 bcopy(&netmask, &nd->myif.ifra_mask, sizeof(netmask)); in nfs_setup_diskless()
228 if (hwaddr_to_sockaddr("boot.netif.hwaddr", &ourdl)) { in nfs_setup_diskless()
254 kern_setenv("boot.netif.name", if_name(ifp)); in nfs_setup_diskless()
256 strlcpy(nd3->myif.ifra_name, if_name(ifp), in nfs_setup_diskless()
257 sizeof(nd3->myif.ifra_name)); in nfs_setup_diskless()
259 /* set up gateway */ in nfs_setup_diskless()
260 inaddr_to_sockaddr("boot.netif.gateway", &nd3->mygateway); in nfs_setup_diskless()
262 /* set up root mount */ in nfs_setup_diskless()
263 nd3->root_args.rsize = 32768; /* XXX tunable? */ in nfs_setup_diskless()
264 nd3->root_args.wsize = 32768; in nfs_setup_diskless()
265 nd3->root_args.sotype = SOCK_STREAM; in nfs_setup_diskless()
266 nd3->root_args.flags = (NFSMNT_NFSV3 | NFSMNT_WSIZE | in nfs_setup_diskless()
268 if (inaddr_to_sockaddr("boot.nfsroot.server", in nfs_setup_diskless()
269 &nd3->root_saddr)) { in nfs_setup_diskless()
273 nd3->root_saddr.sin_port = htons(NFS_PORT); in nfs_setup_diskless()
274 fhlen = decode_nfshandle("boot.nfsroot.nfshandle", in nfs_setup_diskless()
275 &nd3->root_fh[0], NFSX_V3FHMAX); in nfs_setup_diskless()
280 if (fhlen != nd3->root_fhsize) { in nfs_setup_diskless()
284 if ((cp = kern_getenv("boot.nfsroot.path")) != NULL) { in nfs_setup_diskless()
285 strncpy(nd3->root_hostnam, cp, MNAMELEN - 1); in nfs_setup_diskless()
288 if ((cp = kern_getenv("boot.nfsroot.options")) != NULL) { in nfs_setup_diskless()
289 nfs_parse_options(cp, &nd3->root_args); in nfs_setup_diskless()
295 strlcpy(nd->myif.ifra_name, if_name(ifp), in nfs_setup_diskless()
296 sizeof(nd->myif.ifra_name)); in nfs_setup_diskless()
298 /* set up gateway */ in nfs_setup_diskless()
299 inaddr_to_sockaddr("boot.netif.gateway", &nd->mygateway); in nfs_setup_diskless()
301 /* set up root mount */ in nfs_setup_diskless()
302 nd->root_args.rsize = 8192; /* XXX tunable? */ in nfs_setup_diskless()
303 nd->root_args.wsize = 8192; in nfs_setup_diskless()
304 nd->root_args.sotype = SOCK_STREAM; in nfs_setup_diskless()
305 nd->root_args.flags = (NFSMNT_WSIZE | in nfs_setup_diskless()
307 if (inaddr_to_sockaddr("boot.nfsroot.server", in nfs_setup_diskless()
308 &nd->root_saddr)) { in nfs_setup_diskless()
312 nd->root_saddr.sin_port = htons(NFS_PORT); in nfs_setup_diskless()
313 if (decode_nfshandle("boot.nfsroot.nfshandle", in nfs_setup_diskless()
314 &nd->root_fh[0], NFSX_V2FH) == 0) { in nfs_setup_diskless()
318 if ((cp = kern_getenv("boot.nfsroot.path")) != NULL) { in nfs_setup_diskless()
319 strncpy(nd->root_hostnam, cp, MNAMELEN - 1); in nfs_setup_diskless()
322 if ((cp = kern_getenv("boot.nfsroot.options")) != NULL) { in nfs_setup_diskless()
329 args.flags = nd->root_args.flags; in nfs_setup_diskless()
330 args.sotype = nd->root_args.sotype; in nfs_setup_diskless()
331 args.rsize = nd->root_args.rsize; in nfs_setup_diskless()
332 args.wsize = nd->root_args.wsize; in nfs_setup_diskless()
334 nd->root_args.flags = args.flags; in nfs_setup_diskless()
335 nd->root_args.sotype = args.sotype; in nfs_setup_diskless()
336 nd->root_args.rsize = args.rsize; in nfs_setup_diskless()
337 nd->root_args.wsize = args.wsize; in nfs_setup_diskless()
353 sa->sin_len = sizeof(*sa); in inaddr_to_sockaddr()
354 sa->sin_family = AF_INET; in inaddr_to_sockaddr()
362 sa->sin_addr.s_addr = in inaddr_to_sockaddr()
375 sa->sdl_len = sizeof(*sa); in hwaddr_to_sockaddr()
376 sa->sdl_family = AF_LINK; in hwaddr_to_sockaddr()
377 sa->sdl_type = IFT_ETHER; in hwaddr_to_sockaddr()
378 sa->sdl_alen = ETHER_ADDR_LEN; in hwaddr_to_sockaddr()
386 sa->sdl_data[0] = a[0]; in hwaddr_to_sockaddr()
387 sa->sdl_data[1] = a[1]; in hwaddr_to_sockaddr()
388 sa->sdl_data[2] = a[2]; in hwaddr_to_sockaddr()
389 sa->sdl_data[3] = a[3]; in hwaddr_to_sockaddr()
390 sa->sdl_data[4] = a[4]; in hwaddr_to_sockaddr()
391 sa->sdl_data[5] = a[5]; in hwaddr_to_sockaddr()