180203Skris$FreeBSD$ 26751Swpaul 36751SwpaulThis directory contains a version of the rpc.bootparamd, which have been 46751Swpaulwritten using the Sun's RPC protocol for bootparamd. To use it you must 56751Swpaulhave a copy of the bootparam_prot.x file which on Sun systems you find in 66751Swpaul 76751Swpaul /usr/include/rpcsvc/bootparam_prot.x 86751Swpaul 96751Swpaul(( This file was retrieved from the Sun-RPC source package )) 106751Swpaul 116751Swpaul 126751SwpaulThis code is not copyright, and is placed in the public domain. Feel free to 136751Swpauluse and modify. Please send modifications and/or suggestions + bug fixes to 146751Swpaul 156751Swpaul Klas Heggemann <klas@nada.kth.se> 166751Swpaul 176751Swpaul 186751SwpaulRPC.BOOTPARAMD 196751Swpaul 206751Swpaul 216751SwpaulThe rpc.bootparamd program does NOT use the yellow pages for the bootparams 22228990Suqsdatabase. This data should reside in /etc/bootparams on the local host, 236751Swpaulor another file given when the server is started. 246751Swpaul 256751SwpaulThe default router is set to the address of the machine running the server. 266751SwpaulThis may not be a good thing to do, so it can be modified using the -r 276751Swpauloption when startning the daemon. 286751Swpaul 296751SwpaulThis program was written with the need to keep short hostnames in the 306751Swpaul/etc/bootparams file and long (canonical) names in the hosts database. 316751SwpaulIt probably also will work in conjunction with a nameserver, since matching 326751Swpaulis done by comparing the canonical name of the booting machine with the 336751Swpaulcanonical name of the hosts found in the bootparams database. 346751Swpaul 356751SwpaulIt is kept simple, e g there is no caching of data, but the bootparameter file 366751Swpaulis read at each request. 376751Swpaul 386751Swpaul 396751SwpaulCALLBOOTD 406751Swpaul 416751SwpaulThe debugging tool callbootd is used to check the response you get 426751Swpaulto a specific (booting) request. It can be used as 4380203Skris callbootd server inet-address 446751Swpaulor 456751Swpaul callbootd server hostname file 466751Swpaulwhere "server" is a machine running the rpc.bootparamd program, "inet-address" 476751Swpaulis the internet address of a booting machine, "hostname" is the name of a 486751Swpaulbooting machine and "file" the requested file, typically "root", "swap" or 496751Swpaul"dump". 506751Swpaul 516751SwpaulYou may also use "all" instead of a specific server, in which case a RPC 526751Swpaulbroadcast is performed. The broadcast is performed 4 times and then the 536751Swpaulprogram times out, after printing all responses. 546751Swpaul 556751Swpaul 566751SwpaulTODO 576751Swpaul 586751SwpaulCache the date, instead of rereading it. 596751SwpaulMaybe match by comparing the inet address instead. (But beware that caching 606751Swpaulwill prevent the server from detecting that a machine has changed name 616751Swpaulor address.) 62