11dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project/*
21dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
31dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectCopyright (c) 2007-2008  Michael G Schwern
41dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
51dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectThis software originally derived from Paul Sheer's pivotal_gmtime_r.c.
61dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
71dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectThe MIT License:
81dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
91dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectPermission is hereby granted, free of charge, to any person obtaining a copy
101dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectof this software and associated documentation files (the "Software"), to deal
111dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectin the Software without restriction, including without limitation the rights
121dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectto use, copy, modify, merge, publish, distribute, sublicense, and/or sell
131dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectcopies of the Software, and to permit persons to whom the Software is
141dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectfurnished to do so, subject to the following conditions:
151dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
161dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectThe above copyright notice and this permission notice shall be included in
171dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectall copies or substantial portions of the Software.
181dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
191dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
201dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
211dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
221dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
231dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
241dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
251dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectTHE SOFTWARE.
261dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
271dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectOrigin: http://code.google.com/p/y2038
281dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source ProjectModified for Bionic by the Android Open Source Project
291dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
301dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project*/
311dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#ifndef TIME64_H
321dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#define TIME64_H
331dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
34b5239ed16aeba648f1c9bcb7a4887b8a41670326Fred Fettinger#include <sys/cdefs.h>
351dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <time.h>
361dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#include <stdint.h>
371dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
38b5239ed16aeba648f1c9bcb7a4887b8a41670326Fred Fettinger__BEGIN_DECLS
39b5239ed16aeba648f1c9bcb7a4887b8a41670326Fred Fettinger
401dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttypedef int64_t  time64_t;
411dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
421dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectstruct tm *gmtime64_r (const time64_t *, struct tm *);
431dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectstruct tm *localtime64_r (const time64_t *, struct tm *);
441dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectstruct tm *gmtime64 (const time64_t *);
451dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectstruct tm *localtime64 (const time64_t *);
461dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
471dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectchar *asctime64 (const struct tm *);
481dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectchar *asctime64_r (const struct tm *, char *);
491dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
501dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectchar *ctime64 (const time64_t*);
511dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projectchar *ctime64_r (const time64_t*, char*);
521dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
531dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttime64_t timegm64 (const struct tm *);
541dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttime64_t mktime64 (const struct tm *);
551dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Projecttime64_t timelocal64 (const struct tm *);
561dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project
57b5239ed16aeba648f1c9bcb7a4887b8a41670326Fred Fettinger__END_DECLS
58b5239ed16aeba648f1c9bcb7a4887b8a41670326Fred Fettinger
591dc9e472e19acfe6dc7f41e429236e7eef7ceda1The Android Open Source Project#endif /* TIME64_H */
60