Btw re computers without a working clock:
You could use the date on certain existing files to determine that the time/date must at least be that of those files. Like use time+date from the file that the dhcp client writes it's output to to set the clock if the clock is set to something before 1990 or so, perhaps?
Unless you already have done so, maybe combine a ntp client with the dhcp client, to do both in one go?
Note that some other protocols can also provide time, but they require a lot more stuff. For example NetBIOS, including NetBIOS over TCP/IP, cam provide time. (NET TIME \\server /SET /YES is a good idea to have in some startup script). I doubt that people who already have SMB running on their network would be that interested in also running mTCP rather than the classic SMB clients, but still.
I don't know which other network protocols and whatnot provided some network time/date. Perhaps Netware?
You could also do an ugly hack and just set the clock to a day before the expire date/time of the DHCP lease if the clock is obviously incorrect.