On Thu, Apr 14, 2016 at 3:15 PM, Martin Natano <nat...@natano.net> wrote:
> In rbootd a struct bpf_timeval (with 32bit tv_sec) is copied to a struct
> timeval (with 64 tv_sec) via bcopy(). This most likely causes
> connections to not time out correctly in rbootd. I don't have an HP
> machine to test this with. Who owns such a machine and is willing to
> test this?

The current code is simply wrong: sizeof(struct timeval) >
sizeof(struct bpf_timeval).  I think we should make this change (ok
guenther@) and then work to update struct bpf_hdr or a replacement
thereof to not be limited to 32bit time_t values.  Maybe it should be
using a timespec instead too?  Have any other free OSes added timespec
(or bintime) APIs?

(BPF has been around since 1990; the time from then to now is less
than the time from now to 2038 when 32bit time_t fails...)


Philip Guenther

Reply via email to