In C, is there a simple, cross-platform way of retrieving the dates that a given timezone begins and ends daylight saving?
I already have timezone offset information and whether or not daylight savings is currently being observed, but I really need the dates at which daylight savings begins and ends (for an external dependency I don't control). In Windows, I'm using GetTimeZoneInformation to get TimeZoneInfo, but I can't find a similar function for Linux/Solaris/Mac. I should point out also that I can't just rely on US rules for daylight savings adoption, as I can't predict the countries it will be used in.
The only way I'm aware of to get this information is via zdump or perhaps looking directly at the /usr/share/lib/zoneinfo files themselves, but I was hoping for a better solution.
Thanks for any help you can provide.