On Aug 16, 6:07pm, eggert@cs.ucla.edu (Paul Eggert) wrote: -- Subject: NetBSD and Android bionic APIs for tz values | * The NetBSD API's declarations confused about 'const'. Several | functions take arguments of type 'const timezone_t' but the const does | not have the intended meaning: it declares the argument to be a constant | pointer to non-constant data, which means the 'const' is irrelevant to | the caller and is ignored by the API. The simplest fix is to remove the | 'const's from the API's declarations. I agree. | * The arguments of localtime_rz and mktime_z should all be | restrict-qualified, for the same reason that localtime_r's arguments are | restrict-qualified. Yes. | * ctime and ctime_r have been deprecated by POSIX due to their security | issues, and ctime_rz has the same issues, so I suggest deprecating | ctime_rz in NetBSD, and the tz code should not support it. Callers can | use strftime instead. Yes, and we could supply a constant that has the traditional ctime semantics. | * tzgetname doesn't work for time zones that have three or more | abbreviations. Plus, tzgetname is redundant since callers can instead | use localtime_rz + strftime %Z, an approach that works even with three | or more abbreviations. Again, I suggest deprecating tzgetname in | NetBSD, and the tz code should not support it. Or fix it... | I don't know whether these NetBSD issues are something Christos can fix | directly or whether we need to file NetBSD bug reports or whatever. I can fix those directly. Would you like to supply patches? Thanks, christos