I think there's needs to be some clarification on the following (Section 6.4.2, last paragraph of page 19):
A request for the Renewal (T1) Time Value option or the Rebinding
(T2) Time Value option in the Parameter Request List of the
DHCPLEASEQUERY message MUST be handled like the IP Address Lease Time
option is handled. If there is a valid lease, then the DHCP server
SHOULD return these options (when requested) with the remaining time
until renewal or rebinding, respectively. If there is not currently
a valid lease for this IP address, the DHCP server MUST NOT return
these options.
This doesn't mention what to do if the T1 or T2 time has passed. Options 58 and 59 have no provisions for returning negative numbers. So would the better behaviour be to send back a zero time, or not send the option at all?
Come to think of it... back up two paragraphs:
If the IP Address Lease Time option (option 51) is specified in the
Parameter Request List and if there is a currently valid lease for
the IP address specified in the ciaddr, then the DHCP server MUST
return this option in the DHCPLEASEKNOWN with its value equal to the
time remaining until lease expiration. If there is no valid lease
for the IP address, then the server MUST NOT return the IP Address
Lease Time option (option 51).
If there's a currently valid lease for the device, shouldn't it be returning a DHCPLEASEACTIVE, not a DHCPLEASEKNOWN? (Other than that discrepancy, the paragraph is fine....)