Date: Mon, 21 Jul 2014 16:20:12 +0000 From: bugzilla-noreply@freebsd.org To: freebsd-bugs@FreeBSD.org Subject: [Bug 192016] New: Incorrect result for %s in strftime Message-ID: <bug-192016-8@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=192016 Bug ID: 192016 Summary: Incorrect result for %s in strftime Product: Base System Version: 10.0-STABLE Hardware: Any OS: Any Status: Needs Triage Severity: Affects Many People Priority: --- Component: bin Assignee: freebsd-bugs@FreeBSD.org Reporter: quae@daurnimator.com The %s specifier in strftime doesn't respect timezones. Example: #include <time.h> #include <stdio.h> int main() { time_t t = 1234567890; struct tm *tmp = gmtime(&t); char output[200]; strftime(output, 200, "%s", tmp); printf("%s\n",output); return 0; } Run with a non UTC timezone. e.g. TZ=GMT+9 Output will be 1234600290 instead of expected 1234567890 Location in BSD's libc: https://svnweb.freebsd.org/base/release/10.0.0/lib/libc/stdtime/strftime.c?view=markup#l312 This bug also exists in glibc: http://fossies.org/dox/glibc-2.19/strftime__l_8c_source.html#l01133 Bug filed at https://sourceware.org/bugzilla/show_bug.cgi?id=17189 It does not occur in musl: http://git.musl-libc.org/cgit/musl/tree/src/time/strftime.c?id=ac0acd569e01735fc6052d43fdf57f3a07c93f3d#n127 -- You are receiving this mail because: You are the assignee for the bug.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-192016-8>