Search code examples
c++clinuxtimezonezoneinfo

Library/code for dynamically reloading the /usr/share/zoneinfo database?


Since the system /usr/share/zoneinfo database is updated fairly frequently, I would like to be able to load it (and reload it) dynamically in a very long running C++ program.

Now I know the standard library will use this database, but I doubt it offers dynamic reloading of it (or at least I couldn't find anything about it with Google.)

Is there any C or C++ library or code that I can use to do this?


Solution

  • I'm an idiot. IANA which provides the zoneinfo database, also provides a library for working with it. Funnily enough I discovered this by reading the postgresql source code.

    I'm not sure if this is sufficient, but it's public domain licensed so at the least I can pull it into my code and bend it to my needs.