On Sun, Feb 11, 2007 at 11:53:17AM +0300, Yar Tikhiy wrote: > On Sat, Feb 10, 2007 at 08:52:28PM +0000, Ceri Davies wrote: > > On Sat, Feb 10, 2007 at 01:13:33PM +0000, Yar Tikhiy wrote: > > > yar 2007-02-10 13:13:33 UTC > > > > > > FreeBSD src repository > > > > > > Modified files: > > > etc/rc.d hostname > > > Log: > > > Handle the case when the admin forgot to set $hostname, > > > which can happen in new installations: advise to set the > > > variable and refer to rc.conf(5). > > > > Isn't it possible for the hostname to come via DHCP? How does this > > behave in that case (or rather, I can see how it behaves; is that the > > right thing)? > > I've never played with setting the hostname via DHCP. In my change, > I just tried not to break the existing code related to DHCP. Perhaps > someone using DHCP to get the hostname could shed light on the topic.
This appears mostly harmless for systems that get their hostname via DHCP. They will get a warning, but it will otherwise work. -- Brooks > > > | @@ -58,7 +58,16 @@ hostname_start() > > > | fi > > > | fi > > > | > > > | - /bin/hostname ${hostname} > > > | + # Have we got a hostname yet? > > > | + # > > > | + if [ -z "${hostname}" ]; then > > > | + warn "\$hostname is not set -- see ${rcvar_manpage}." > > > | + return > > > | + fi > > > | + > > > | + # All right, it is safe to invoke hostname(1) now. > > > | + # > > > | + /bin/hostname "${hostname}" > > > | echo "Setting hostname: `hostname`." > > > > Are the backticks necessary here? Why don't we use ${hostname}? > > Thus we determine what name has actually been set. Our doing so > reeks of paranoia, of course. :-) Perhaps a better ordering would > be: > > echo "Setting hostname: ${hostname}." > /bin/hostname "${hostname}" > > So possible error messages will follow the introductory statement, > which makes more sense. Any objecttions? > > -- > Yar >
pgpNzHWAGDSna.pgp
Description: PGP signature