Between versions v2.11 and v2.12 struct ntptimeval got new fields. That wasn't a problem because new function ntp_gettimex was created (and made default) to support new struct. Old ntp_gettime was not using new fields so it was safe to call with old struct definition. Then between versions v2.31 and v2.32 when working on y2038 support, ntp_gettime start setting new fields. Is my reasoning correct that this constitutes abi break for old binaries using ntp_gettime function? And second question. what about ntptimeval struct getting new members. Wasn't that abi break if for example some library used that struct in their public interface?
Created attachment 14706 [details] patch
Fixed on 2.38.