diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-08-21 14:23:52 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-08-21 14:23:52 +0200 |
commit | 20b4f55603ffc2c31d30760f86595cf46b75c40b (patch) | |
tree | 5cc0036afec03c5cb4f0d148cf647b2ee2b76ed4 /sys | |
parent | be0301f45850ca70db0f2ec8258e73615a0ec7be (diff) |
9bootpxe: try /cfg/pxe/default if /cfg/pxe/$ether fails before breaking to the prompt.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/man/8/9boot | 4 | ||||
-rw-r--r-- | sys/src/boot/pc/pxe.c | 9 |
2 files changed, 8 insertions, 5 deletions
diff --git a/sys/man/8/9boot b/sys/man/8/9boot index bf1f204ed..90ef87a8c 100644 --- a/sys/man/8/9boot +++ b/sys/man/8/9boot @@ -83,10 +83,12 @@ for details). Once started, .IR 9bootpxe will read the file .B /cfg/pxe/$ether +or, if this file is not present, +.B /cfg/pxe/default from the tftp server, where .B $ether is the MAC address of the client's network card -in lower case hex, and use this as its +in lower case hex, and uses this as its .IR plan9.ini (8) file. .SH FILES diff --git a/sys/src/boot/pc/pxe.c b/sys/src/boot/pc/pxe.c index a950b2579..97ee259cb 100644 --- a/sys/src/boot/pc/pxe.c +++ b/sys/src/boot/pc/pxe.c @@ -340,10 +340,11 @@ start(void *) } memmove(path, "/cfg/pxe/", 9); memmove(path+9, mac, 13); - if(tftpopen(f = &t, path, yip, sip, gip)){ - print("no config\r\n"); - f = 0; - } + if(tftpopen(f = &t, path, yip, sip, gip)) + if(tftpopen(f, "/cfg/pxe/default", yip, sip, gip)){ + print("no config\r\n"); + f = 0; + } for(;;){ kern = configure(f, path); f = 0; if(tftpopen(&t, kern, yip, sip, gip)){ |