1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
9 "Project-Id-Version: PACKAGE VERSION\n"
10 "POT-Creation-Date: 2015-02-04 23:33+0900\n"
11 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
12 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
13 "Language-Team: LANGUAGE <LL@li.org>\n"
16 "Content-Type: text/plain; charset=UTF-8\n"
17 "Content-Transfer-Encoding: 8bit\n"
20 #: build/C/man3/adjtime.3:25
26 #: build/C/man3/adjtime.3:25
32 #: build/C/man3/adjtime.3:25 build/C/man2/adjtimex.2:29 build/C/man3/clock_getcpuclockid.3:26 build/C/man2/clock_nanosleep.2:26 build/C/man3/futimes.3:25 build/C/man2/futimesat.2:25 build/C/man2/gettimeofday.2:40 build/C/man2/nanosleep.2:34 build/C/man4/rtc.4:30 build/C/man2/stime.2:30 build/C/man2/time.2:29 build/C/man7/time.7:28 build/C/man3/timeradd.3:27 build/C/man2/times.2:38 build/C/man2/utime.2:31 build/C/man2/utimensat.2:26
38 #: build/C/man3/adjtime.3:25 build/C/man2/adjtimex.2:29 build/C/man3/clock.3:29 build/C/man3/clock_getcpuclockid.3:26 build/C/man2/clock_getres.2:30 build/C/man2/clock_nanosleep.2:26 build/C/man3/ctime.3:35 build/C/man3/difftime.3:30 build/C/man3/dysize.3:26 build/C/man3/ftime.3:30 build/C/man3/futimes.3:25 build/C/man2/futimesat.2:25 build/C/man3/getdate.3:30 build/C/man2/gettimeofday.2:40 build/C/man2/nanosleep.2:34 build/C/man4/rtc.4:30 build/C/man2/stime.2:30 build/C/man3/strftime.3:37 build/C/man3/strptime.3:31 build/C/man2/time.2:29 build/C/man7/time.7:28 build/C/man3/timegm.3:25 build/C/man3/timeradd.3:27 build/C/man2/times.2:38 build/C/man5/tzfile.5:8 build/C/man3/tzset.3:33 build/C/man2/utime.2:31 build/C/man2/utimensat.2:26
40 msgid "Linux Programmer's Manual"
44 #: build/C/man3/adjtime.3:26 build/C/man2/adjtimex.2:30 build/C/man3/clock.3:30 build/C/man3/clock_getcpuclockid.3:27 build/C/man2/clock_getres.2:31 build/C/man2/clock_nanosleep.2:27 build/C/man3/ctime.3:36 build/C/man3/difftime.3:31 build/C/man3/dysize.3:27 build/C/man3/ftime.3:31 build/C/man3/futimes.3:26 build/C/man2/futimesat.2:26 build/C/man3/getdate.3:31 build/C/man2/gettimeofday.2:41 build/C/man2/nanosleep.2:35 build/C/man4/rtc.4:31 build/C/man2/stime.2:31 build/C/man3/strftime.3:38 build/C/man3/strptime.3:32 build/C/man1/time.1:10 build/C/man2/time.2:30 build/C/man7/time.7:29 build/C/man3/timegm.3:26 build/C/man3/timeradd.3:28 build/C/man2/times.2:39 build/C/man5/tzfile.5:9 build/C/man8/tzselect.8:6 build/C/man3/tzset.3:34 build/C/man2/utime.2:32 build/C/man2/utimensat.2:27 build/C/man8/zdump.8:6 build/C/man8/zic.8:6
50 #: build/C/man3/adjtime.3:28
51 msgid "adjtime - correct the time to synchronize the system clock"
55 #: build/C/man3/adjtime.3:28 build/C/man2/adjtimex.2:32 build/C/man3/clock.3:32 build/C/man3/clock_getcpuclockid.3:29 build/C/man2/clock_getres.2:33 build/C/man2/clock_nanosleep.2:29 build/C/man3/ctime.3:39 build/C/man3/difftime.3:33 build/C/man3/dysize.3:29 build/C/man3/ftime.3:33 build/C/man3/futimes.3:28 build/C/man2/futimesat.2:29 build/C/man3/getdate.3:33 build/C/man2/gettimeofday.2:43 build/C/man2/nanosleep.2:37 build/C/man4/rtc.4:33 build/C/man2/stime.2:33 build/C/man3/strftime.3:40 build/C/man3/strptime.3:34 build/C/man1/time.1:12 build/C/man2/time.2:32 build/C/man3/timegm.3:28 build/C/man3/timeradd.3:30 build/C/man2/times.2:41 build/C/man8/tzselect.8:8 build/C/man3/tzset.3:36 build/C/man2/utime.2:34 build/C/man2/utimensat.2:29 build/C/man8/zdump.8:8 build/C/man8/zic.8:8
61 #: build/C/man3/adjtime.3:31 build/C/man3/futimes.3:31 build/C/man2/gettimeofday.2:46 build/C/man3/timeradd.3:33 build/C/man2/utime.2:43
63 msgid "B<#include E<lt>sys/time.hE<gt>>\n"
67 #: build/C/man3/adjtime.3:33
70 "B<int adjtime(const struct timeval *>I<delta>B<, struct timeval "
71 "*>I<olddelta>B<);>\n"
75 #: build/C/man3/adjtime.3:38 build/C/man3/clock_getcpuclockid.3:42 build/C/man2/clock_getres.2:47 build/C/man2/clock_nanosleep.2:44 build/C/man3/ctime.3:65 build/C/man3/dysize.3:37 build/C/man3/futimes.3:40 build/C/man2/futimesat.2:41 build/C/man3/getdate.3:47 build/C/man2/gettimeofday.2:56 build/C/man2/nanosleep.2:45 build/C/man2/stime.2:41 build/C/man3/timegm.3:40 build/C/man3/timeradd.3:50 build/C/man3/tzset.3:50 build/C/man2/utimensat.2:43
76 msgid "Feature Test Macro Requirements for glibc (see B<feature_test_macros>(7)):"
80 #: build/C/man3/adjtime.3:42
81 msgid "B<adjtime>(): _BSD_SOURCE"
85 #: build/C/man3/adjtime.3:42 build/C/man2/adjtimex.2:39 build/C/man3/clock.3:38 build/C/man3/clock_getcpuclockid.3:49 build/C/man2/clock_getres.2:57 build/C/man2/clock_nanosleep.2:51 build/C/man3/ctime.3:77 build/C/man3/difftime.3:39 build/C/man3/dysize.3:41 build/C/man3/ftime.3:37 build/C/man3/futimes.3:45 build/C/man2/futimesat.2:45 build/C/man3/getdate.3:62 build/C/man2/gettimeofday.2:60 build/C/man2/nanosleep.2:49 build/C/man4/rtc.4:37 build/C/man2/stime.2:45 build/C/man3/strftime.3:47 build/C/man3/strptime.3:41 build/C/man1/time.1:14 build/C/man2/time.2:36 build/C/man7/time.7:31 build/C/man3/timegm.3:45 build/C/man3/timeradd.3:54 build/C/man2/times.2:45 build/C/man5/tzfile.5:11 build/C/man8/tzselect.8:10 build/C/man3/tzset.3:63 build/C/man2/utime.2:46 build/C/man2/utimensat.2:68 build/C/man8/zdump.8:21 build/C/man8/zic.8:32
91 #: build/C/man3/adjtime.3:51
93 "The B<adjtime>() function gradually adjusts the system clock (as returned "
94 "by B<gettimeofday>(2)). The amount of time by which the clock is to be "
95 "adjusted is specified in the structure pointed to by I<delta>. This "
96 "structure has the following form:"
100 #: build/C/man3/adjtime.3:58 build/C/man2/gettimeofday.2:79 build/C/man3/timeradd.3:67
104 " time_t tv_sec; /* seconds */\n"
105 " suseconds_t tv_usec; /* microseconds */\n"
110 #: build/C/man3/adjtime.3:70
112 "If the adjustment in I<delta> is positive, then the system clock is speeded "
113 "up by some small percentage (i.e., by adding a small amount of time to the "
114 "clock value in each second) until the adjustment has been completed. If the "
115 "adjustment in I<delta> is negative, then the clock is slowed down in a "
120 #: build/C/man3/adjtime.3:80
122 "If a clock adjustment from an earlier B<adjtime>() call is already in "
123 "progress at the time of a later B<adjtime>() call, and I<delta> is not NULL "
124 "for the later call, then the earlier adjustment is stopped, but any already "
125 "completed part of that adjustment is not undone."
129 #: build/C/man3/adjtime.3:86
131 "If I<olddelta> is not NULL, then the buffer that it points to is used to "
132 "return the amount of time remaining from any previous adjustment that has "
133 "not yet been completed."
137 #: build/C/man3/adjtime.3:86 build/C/man2/adjtimex.2:285 build/C/man3/clock.3:42 build/C/man3/clock_getcpuclockid.3:60 build/C/man2/clock_getres.2:180 build/C/man2/clock_nanosleep.2:152 build/C/man3/ctime.3:277 build/C/man3/ftime.3:67 build/C/man3/futimes.3:61 build/C/man2/futimesat.2:84 build/C/man3/getdate.3:135 build/C/man2/gettimeofday.2:138 build/C/man2/nanosleep.2:102 build/C/man2/stime.2:53 build/C/man3/strftime.3:327 build/C/man3/strptime.3:288 build/C/man2/time.2:46 build/C/man3/timeradd.3:140 build/C/man2/times.2:101 build/C/man2/utime.2:124 build/C/man2/utimensat.2:225
143 #: build/C/man3/adjtime.3:93
145 "On success, B<adjtime>() returns 0. On failure, -1 is returned, and "
146 "I<errno> is set to indicate the error."
150 #: build/C/man3/adjtime.3:93 build/C/man2/adjtimex.2:317 build/C/man3/clock_getcpuclockid.3:65 build/C/man2/clock_getres.2:188 build/C/man2/clock_nanosleep.2:158 build/C/man3/futimes.3:66 build/C/man2/futimesat.2:91 build/C/man3/getdate.3:151 build/C/man2/gettimeofday.2:145 build/C/man2/nanosleep.2:110 build/C/man2/stime.2:58 build/C/man2/time.2:50 build/C/man3/timeradd.3:145 build/C/man2/times.2:110 build/C/man2/utime.2:129 build/C/man2/utimensat.2:234
156 #: build/C/man3/adjtime.3:94 build/C/man2/adjtimex.2:322 build/C/man2/clock_getres.2:193 build/C/man2/clock_nanosleep.2:168 build/C/man2/clock_nanosleep.2:175 build/C/man2/gettimeofday.2:153 build/C/man2/nanosleep.2:124 build/C/man2/utimensat.2:307 build/C/man2/utimensat.2:311 build/C/man2/utimensat.2:322
162 #: build/C/man3/adjtime.3:99
163 msgid "The adjustment in I<delta> is outside the permitted range."
167 #: build/C/man3/adjtime.3:99 build/C/man2/adjtimex.2:339 build/C/man3/clock_getcpuclockid.3:72 build/C/man2/clock_getres.2:201 build/C/man2/gettimeofday.2:156 build/C/man2/stime.2:62 build/C/man2/utime.2:153 build/C/man2/utimensat.2:365
173 #: build/C/man3/adjtime.3:105
175 "The caller does not have sufficient privilege to adjust the time. Under "
176 "Linux, the B<CAP_SYS_TIME> capability is required."
180 #: build/C/man3/adjtime.3:105 build/C/man3/clock_getcpuclockid.3:88 build/C/man3/difftime.3:48 build/C/man3/dysize.3:51 build/C/man3/ftime.3:70 build/C/man3/futimes.3:93 build/C/man3/getdate.3:196
186 #: build/C/man3/adjtime.3:106 build/C/man3/clock_getcpuclockid.3:89 build/C/man3/difftime.3:49 build/C/man3/dysize.3:52 build/C/man3/ftime.3:71 build/C/man3/futimes.3:94 build/C/man3/getdate.3:197
188 msgid "Multithreading (see pthreads(7))"
192 #: build/C/man3/adjtime.3:110
193 msgid "The B<adjtime>() function is thread-safe."
197 #: build/C/man3/adjtime.3:110 build/C/man2/adjtimex.2:361 build/C/man3/clock.3:50 build/C/man3/clock_getcpuclockid.3:93 build/C/man2/clock_getres.2:207 build/C/man2/clock_nanosleep.2:187 build/C/man3/ctime.3:282 build/C/man3/difftime.3:53 build/C/man3/dysize.3:56 build/C/man3/ftime.3:75 build/C/man3/futimes.3:100 build/C/man2/futimesat.2:112 build/C/man3/getdate.3:205 build/C/man2/gettimeofday.2:163 build/C/man2/nanosleep.2:131 build/C/man2/stime.2:68 build/C/man3/strftime.3:361 build/C/man3/strptime.3:302 build/C/man2/time.2:55 build/C/man3/timegm.3:54 build/C/man3/timeradd.3:147 build/C/man2/times.2:115 build/C/man3/tzset.3:203 build/C/man2/utime.2:166 build/C/man2/utimensat.2:421
199 msgid "CONFORMING TO"
203 #: build/C/man3/adjtime.3:112
204 msgid "4.3BSD, System V."
208 #: build/C/man3/adjtime.3:112 build/C/man2/adjtimex.2:348 build/C/man3/clock.3:56 build/C/man3/clock_getcpuclockid.3:95 build/C/man2/clock_getres.2:224 build/C/man2/clock_nanosleep.2:189 build/C/man3/ctime.3:301 build/C/man3/difftime.3:55 build/C/man3/dysize.3:58 build/C/man2/futimesat.2:119 build/C/man3/getdate.3:207 build/C/man2/gettimeofday.2:174 build/C/man2/nanosleep.2:133 build/C/man4/rtc.4:302 build/C/man3/strftime.3:385 build/C/man3/strptime.3:304 build/C/man2/time.2:61 build/C/man3/timegm.3:58 build/C/man2/times.2:117 build/C/man3/tzset.3:205 build/C/man2/utime.2:175 build/C/man2/utimensat.2:426 build/C/man8/zic.8:412
214 #: build/C/man3/adjtime.3:123
216 "The adjustment that B<adjtime>() makes to the clock is carried out in such "
217 "a manner that the clock is always monotonically increasing. Using "
218 "B<adjtime>() to adjust the time prevents the problems that can be caused "
219 "for certain applications (e.g., B<make>(1)) by abrupt positive or negative "
220 "jumps in the system time."
224 #: build/C/man3/adjtime.3:133
226 "B<adjtime>() is intended to be used to make small adjustments to the system "
227 "time. Most systems impose a limit on the adjustment that can be specified "
228 "in I<delta>. In the glibc implementation, I<delta> must be less than or "
229 "equal to (INT_MAX / 1000000 - 2) and greater than or equal to (INT_MIN / "
230 "1000000 + 2) (respectively 2145 and -2145 seconds on i386)."
234 #: build/C/man3/adjtime.3:133 build/C/man2/clock_getres.2:266 build/C/man3/ftime.3:90 build/C/man2/nanosleep.2:196 build/C/man3/strftime.3:454 build/C/man1/time.1:253 build/C/man2/times.2:193 build/C/man2/utimensat.2:472
239 #. http://sourceware.org/bugzilla/show_bug?id=2449
240 #. http://bugzilla.kernel.org/show_bug.cgi?id=6761
241 #. Thanks to the new adjtimex() ADJ_OFFSET_SS_READ flag
243 #: build/C/man3/adjtime.3:149
245 "A longstanding bug meant that if I<delta> was specified as NULL, no valid "
246 "information about the outstanding clock adjustment was returned in "
247 "I<olddelta>. (In this circumstance, B<adjtime>() should return the "
248 "outstanding clock adjustment, without changing it.) This bug is fixed on "
249 "systems with glibc 2.8 or later and Linux kernel 2.6.26 or later."
253 #: build/C/man3/adjtime.3:149 build/C/man2/adjtimex.2:369 build/C/man3/clock.3:97 build/C/man3/clock_getcpuclockid.3:154 build/C/man2/clock_getres.2:276 build/C/man2/clock_nanosleep.2:253 build/C/man3/ctime.3:362 build/C/man3/difftime.3:68 build/C/man3/dysize.3:62 build/C/man3/ftime.3:100 build/C/man3/futimes.3:103 build/C/man2/futimesat.2:128 build/C/man3/getdate.3:310 build/C/man2/gettimeofday.2:246 build/C/man2/nanosleep.2:210 build/C/man4/rtc.4:331 build/C/man2/stime.2:70 build/C/man3/strftime.3:564 build/C/man3/strptime.3:429 build/C/man1/time.1:306 build/C/man2/time.2:76 build/C/man7/time.7:188 build/C/man3/timegm.3:102 build/C/man3/timeradd.3:150 build/C/man2/times.2:208 build/C/man5/tzfile.5:157 build/C/man8/tzselect.8:47 build/C/man3/tzset.3:220 build/C/man2/utime.2:185 build/C/man2/utimensat.2:618 build/C/man8/zdump.8:56 build/C/man8/zic.8:418
259 #: build/C/man3/adjtime.3:153
260 msgid "B<adjtimex>(2), B<gettimeofday>(2), B<time>(7)"
264 #: build/C/man3/adjtime.3:153 build/C/man2/adjtimex.2:375 build/C/man3/clock.3:101 build/C/man3/clock_getcpuclockid.3:159 build/C/man2/clock_getres.2:288 build/C/man2/clock_nanosleep.2:261 build/C/man3/ctime.3:374 build/C/man3/difftime.3:75 build/C/man3/dysize.3:64 build/C/man3/ftime.3:103 build/C/man3/futimes.3:107 build/C/man2/futimesat.2:134 build/C/man3/getdate.3:316 build/C/man2/gettimeofday.2:256 build/C/man2/nanosleep.2:218 build/C/man4/rtc.4:344 build/C/man2/stime.2:74 build/C/man3/strftime.3:571 build/C/man3/strptime.3:435 build/C/man1/time.1:310 build/C/man2/time.2:82 build/C/man7/time.7:220 build/C/man3/timegm.3:107 build/C/man3/timeradd.3:153 build/C/man2/times.2:215 build/C/man5/tzfile.5:164 build/C/man8/tzselect.8:52 build/C/man3/tzset.3:227 build/C/man2/utime.2:192 build/C/man2/utimensat.2:627 build/C/man8/zdump.8:60 build/C/man8/zic.8:422
270 #: build/C/man3/adjtime.3:161 build/C/man2/adjtimex.2:383 build/C/man3/clock.3:109 build/C/man3/clock_getcpuclockid.3:167 build/C/man2/clock_getres.2:296 build/C/man2/clock_nanosleep.2:269 build/C/man3/ctime.3:382 build/C/man3/difftime.3:83 build/C/man3/dysize.3:72 build/C/man3/ftime.3:111 build/C/man3/futimes.3:115 build/C/man2/futimesat.2:142 build/C/man3/getdate.3:324 build/C/man2/gettimeofday.2:264 build/C/man2/nanosleep.2:226 build/C/man4/rtc.4:352 build/C/man2/stime.2:82 build/C/man3/strftime.3:579 build/C/man3/strptime.3:443 build/C/man1/time.1:318 build/C/man2/time.2:90 build/C/man7/time.7:228 build/C/man3/timegm.3:115 build/C/man3/timeradd.3:161 build/C/man2/times.2:223 build/C/man5/tzfile.5:172 build/C/man8/tzselect.8:60 build/C/man3/tzset.3:235 build/C/man2/utime.2:200 build/C/man2/utimensat.2:635 build/C/man8/zdump.8:68 build/C/man8/zic.8:430
272 "This page is part of release 3.79 of the Linux I<man-pages> project. A "
273 "description of the project, information about reporting bugs, and the latest "
274 "version of this page, can be found at "
275 "\\%http://www.kernel.org/doc/man-pages/."
279 #: build/C/man2/adjtimex.2:29
285 #: build/C/man2/adjtimex.2:29 build/C/man2/clock_nanosleep.2:26
291 #: build/C/man2/adjtimex.2:32
292 msgid "adjtimex - tune kernel clock"
296 #: build/C/man2/adjtimex.2:36
299 "B<#define _BSD_SOURCE> /* See feature_test_macros(7) */\n"
300 "B<#include E<lt>sys/timex.hE<gt>>\n"
304 #: build/C/man2/adjtimex.2:38
306 msgid "B<int adjtimex(struct timex *>I<buf>B<);>\n"
310 #: build/C/man2/adjtimex.2:49
312 "Linux uses David L. Mills' clock adjustment algorithm (see RFC\\ 5905). The "
313 "system call B<adjtimex>() reads and optionally sets adjustment parameters "
314 "for this algorithm. It takes a pointer to a I<timex> structure, updates "
315 "kernel parameters from field values, and returns the same structure with "
316 "current kernel values. This structure is declared as follows:"
320 #: build/C/man2/adjtimex.2:87
324 " int modes; /* Mode selector */\n"
325 " long offset; /* Time offset; nanoseconds, if STA_NANO\n"
326 " status flag is set, otherwise microseconds */\n"
327 " long freq; /* Frequency offset, in units of 2^-16 ppm\n"
328 " (parts per million, see NOTES below) */\n"
329 " long maxerror; /* Maximum error (microseconds) */\n"
330 " long esterror; /* Estimated error (microseconds) */\n"
331 " int status; /* Clock command/status */\n"
332 " long constant; /* PLL (phase-locked loop) time constant */\n"
333 " long precision; /* Clock precision (microseconds, read-only) */\n"
334 " long tolerance; /* Clock frequency tolerance (ppm, read-only) */\n"
335 " struct timeval time;\n"
336 " /* Current time (read-only, except for\n"
337 " ADJ_SETOFFSET); upon return, time.tv_usec\n"
338 " contains nanoseconds, if STA_NANO status\n"
339 " flag is set, otherwise microseconds */\n"
340 " long tick; /* Microseconds between clock ticks */\n"
341 " long ppsfreq; /* PPS (pulse per second) frequency (in units\n"
342 " of 2^-16 ppm--see NOTES, read-only) */\n"
343 " long jitter; /* PPS jitter (read-only); nanoseconds, if\n"
344 " STA_NANO status flag is set, otherwise\n"
346 " int shift; /* PPS interval duration (seconds, read-only) */\n"
347 " long stabil; /* PPS stability (2^-16 ppm--see NOTES,\n"
349 " long jitcnt; /* PPS jitter limit exceeded (read-only) */\n"
350 " long calcnt; /* PPS calibration intervals (read-only) */\n"
351 " long errcnt; /* PPS calibration errors (read-only) */\n"
352 " long stbcnt; /* PPS stability limit exceeded (read-only) */\n"
353 " int tai; /* TAI offset, as set by previous ADJ_TAI\n"
354 " operation (seconds, read-only,\n"
355 " since Linux 2.6.26) */\n"
356 " /* Further padding bytes to allow for future expansion */\n"
361 #: build/C/man2/adjtimex.2:96
363 "The I<modes> field determines which parameters, if any, to set. It is a bit "
364 "mask containing a bitwise-I<or> combination of zero or more of the following "
369 #: build/C/man2/adjtimex.2:96
371 msgid "B<ADJ_OFFSET>"
375 #: build/C/man2/adjtimex.2:100
376 msgid "Set time offset from I<buf.offset>."
380 #: build/C/man2/adjtimex.2:100
382 msgid "B<ADJ_FREQUENCY>"
386 #: build/C/man2/adjtimex.2:104
387 msgid "Set frequency offset from I<buf.freq>."
391 #: build/C/man2/adjtimex.2:104
393 msgid "B<ADJ_MAXERROR>"
397 #: build/C/man2/adjtimex.2:108
398 msgid "Set maximum time error from I<buf.maxerror>."
402 #: build/C/man2/adjtimex.2:108
404 msgid "B<ADJ_ESTERROR>"
408 #: build/C/man2/adjtimex.2:112
409 msgid "Set estimated time error from I<buf.esterror>."
413 #: build/C/man2/adjtimex.2:112
415 msgid "B<ADJ_STATUS>"
419 #: build/C/man2/adjtimex.2:116
420 msgid "Set clock status from I<buf.status>."
424 #: build/C/man2/adjtimex.2:116
426 msgid "B<ADJ_TIMECONST>"
430 #: build/C/man2/adjtimex.2:123
432 "Set PLL time constant from I<buf.constant>. If the B<STA_NANO> status flag "
433 "(see below) is clear, the kernel adds 4 to this value."
437 #: build/C/man2/adjtimex.2:123
439 msgid "B<ADJ_SETOFFSET> (since Linux 2.6.29)"
442 #. commit 094aa1881fdc1b8889b442eb3511b31f3ec2b762
443 #. Author: Richard Cochran <richardcochran@gmail.com>
445 #: build/C/man2/adjtimex.2:138
447 "Add I<buf.time> to the current time. If I<buf.status> includes the "
448 "B<ADJ_NANO> flag, then I<buf.time.tv_usec> is interpreted as a nanosecond "
449 "value; otherwise it is interpreted as microseconds."
453 #: build/C/man2/adjtimex.2:138
455 msgid "B<ADJ_MICRO> (since Linux 2.6.36)"
458 #. commit eea83d896e318bda54be2d2770d2c5d6668d11db
459 #. Author: Roman Zippel <zippel@linux-m68k.org>
461 #: build/C/man2/adjtimex.2:143
462 msgid "Select microsecond resolution."
466 #: build/C/man2/adjtimex.2:143
468 msgid "B<ADJ_NANO> (since Linux 2.6.36)"
471 #. commit eea83d896e318bda54be2d2770d2c5d6668d11db
472 #. Author: Roman Zippel <zippel@linux-m68k.org>
474 #: build/C/man2/adjtimex.2:153
476 "Select nanosecond resolution. Only one of B<ADJ_MICRO> and B<ADJ_NANO> "
477 "should be specified."
481 #: build/C/man2/adjtimex.2:153
483 msgid "B<ADJ_TAI> (since Linux 2.6.26)"
486 #. commit 153b5d054ac2d98ea0d86504884326b6777f683d
488 #: build/C/man2/adjtimex.2:158
489 msgid "Set TAI (Atomic International Time) offset from I<buf-E<gt>constant>."
493 #: build/C/man2/adjtimex.2:165
495 "B<ADJ_TAI> should not be used in conjunction with B<ADJ_TIMECONST>, since "
496 "the latter mode also employs the I<buf-E<gt>constant> field."
500 #: build/C/man2/adjtimex.2:171
502 "For a complete explanation of TAI and the difference between TAI and UTC, "
503 "see E<.UR http://www.bipm.org/en/bipm/tai/tai.html> I<BIPM> E<.UE>"
507 #: build/C/man2/adjtimex.2:171
513 #: build/C/man2/adjtimex.2:175
514 msgid "Set tick value from I<buf.tick>."
517 #. In general, the other bits are ignored, but ADJ_OFFSET_SINGLESHOT 0x8001
518 #. ORed with ADJ_NANO (0x2000) gives 0xa0001 == ADJ_OFFSET_SS_READ!!
520 #: build/C/man2/adjtimex.2:183
522 "Alternatively, I<modes> can be specified as either of the following "
523 "(multibit mask) values, in which case other bits should not be specified in "
528 #: build/C/man2/adjtimex.2:183
530 msgid "B<ADJ_OFFSET_SINGLESHOT>"
533 #. In user space, ADJ_OFFSET_SINGLESHOT is 0x8001
534 #. In kernel space it is 0x0001, and must be ANDed with ADJ_ADJTIME (0x8000)
536 #: build/C/man2/adjtimex.2:192
538 "Old-fashioned B<adjtime>(): (gradually) adjust time by value specified in "
539 "I<buf.offset>, which specifies an adjustment in microseconds."
543 #: build/C/man2/adjtimex.2:192
545 msgid "B<ADJ_OFFSET_SS_READ> (functional since Linux 2.6.28)"
548 #. In user space, ADJ_OFFSET_SS_READ is 0xa001
549 #. In kernel space there is ADJ_OFFSET_READONLY (0x2000) anded with
550 #. ADJ_ADJTIME (0x8000) and ADJ_OFFSET_SINGLESHOT (0x0001) to give 0xa001)
551 #. commit 52bfb36050c8529d9031d2c2513b281a360922ec
552 #. commit 916c7a855174e3b53d182b97a26b2e27a29726a1
554 #: build/C/man2/adjtimex.2:207
556 "Return (in I<buf.offset>) the remaining amount of time to be adjusted after "
557 "an earlier B<ADJ_OFFSET_SINGLESHOT> operation. This feature was added in "
558 "Linux 2.6.24, but did not work correctly until Linux 2.6.28."
562 #: build/C/man2/adjtimex.2:213
564 "Ordinary users are restricted to a value of either 0 or "
565 "B<ADJ_OFFSET_SS_READ> for I<modes>. Only the superuser may set any "
570 #: build/C/man2/adjtimex.2:220
572 "The I<buf.status> field is a bit mask that is used to set and/or retrieve "
573 "status bits associated with the NTP implementation. Some bits in the mask "
574 "are both readable and settable, while others are read-only."
578 #: build/C/man2/adjtimex.2:220
584 #: build/C/man2/adjtimex.2:224
585 msgid "Enable phase-locked loop (PLL) updates (read-write) via B<ADJ_OFFSET>."
589 #: build/C/man2/adjtimex.2:224
591 msgid "B<STA_PPSFREQ>"
595 #: build/C/man2/adjtimex.2:227
596 msgid "Enable PPS freq discipline (read-write)."
600 #: build/C/man2/adjtimex.2:227
602 msgid "B<STA_PPSTIME>"
606 #: build/C/man2/adjtimex.2:230
607 msgid "Enable PPS time discipline (read-write)."
611 #: build/C/man2/adjtimex.2:230
617 #: build/C/man2/adjtimex.2:233
618 msgid "Select frequency-locked loop (FLL) mode (read-write)."
622 #: build/C/man2/adjtimex.2:233
628 #: build/C/man2/adjtimex.2:236
629 msgid "Insert leap second (read-write)."
633 #: build/C/man2/adjtimex.2:236
639 #: build/C/man2/adjtimex.2:239
640 msgid "Delete leap second (read-write)."
644 #: build/C/man2/adjtimex.2:239
646 msgid "B<STA_UNSYNC>"
650 #: build/C/man2/adjtimex.2:242
651 msgid "Clock unsynchronized (read-write)."
655 #: build/C/man2/adjtimex.2:242
657 msgid "B<STA_FREQHOLD>"
661 #: build/C/man2/adjtimex.2:245
662 msgid "Hold frequency (read-write)."
666 #: build/C/man2/adjtimex.2:245
668 msgid "B<STA_PPSSIGNAL>"
672 #: build/C/man2/adjtimex.2:248
673 msgid "PPS signal present (read-only)."
677 #: build/C/man2/adjtimex.2:248
679 msgid "B<STA_PPSJITTER>"
683 #: build/C/man2/adjtimex.2:251
684 msgid "PPS signal jitter exceeded (read-only)."
688 #: build/C/man2/adjtimex.2:251
690 msgid "B<STA_PPSWANDER>"
694 #: build/C/man2/adjtimex.2:254
695 msgid "PPS signal wander exceeded (read-only)."
699 #: build/C/man2/adjtimex.2:254
701 msgid "B<STA_PPSERROR>"
705 #: build/C/man2/adjtimex.2:257
706 msgid "PPS signal calibration error (read-only)."
710 #: build/C/man2/adjtimex.2:257
712 msgid "B<STA_CLOCKERR>"
716 #: build/C/man2/adjtimex.2:260
717 msgid "Clock hardware fault (read-only)."
721 #: build/C/man2/adjtimex.2:260
723 msgid "B<STA_NANO> (since Linux 2.6.26)"
726 #. commit eea83d896e318bda54be2d2770d2c5d6668d11db
727 #. Author: Roman Zippel <zippel@linux-m68k.org>
729 #: build/C/man2/adjtimex.2:269
731 "Resolution (0 = microsecond, 1 = nanoseconds; read-only). Set via "
732 "B<ADJ_NANO>, cleared via B<ADJ_MICRO>."
736 #: build/C/man2/adjtimex.2:269
738 msgid "B<STA_MODE> (since Linux 2.6.26)"
741 #. commit eea83d896e318bda54be2d2770d2c5d6668d11db
742 #. Author: Roman Zippel <zippel@linux-m68k.org>
744 #: build/C/man2/adjtimex.2:274
745 msgid "Mode (0 = Phase Locked Loop, 1 = Frequency Locked Loop; read-only)."
749 #: build/C/man2/adjtimex.2:274
751 msgid "B<STA_CLK> (since Linux 2.6.26)"
754 #. commit eea83d896e318bda54be2d2770d2c5d6668d11db
755 #. Author: Roman Zippel <zippel@linux-m68k.org>
756 #. FIXME It would be helpful to have some explanation of what
757 #. "Clock source" is.
759 #: build/C/man2/adjtimex.2:281
760 msgid "Clock source (0 = A, 1 = B; read-only)."
764 #: build/C/man2/adjtimex.2:285
765 msgid "Attempts to set read-only I<status> bits are silently ignored."
769 #: build/C/man2/adjtimex.2:289
771 "On success, B<adjtimex>() returns the clock state; that is, one of the "
776 #: build/C/man2/adjtimex.2:289
782 #: build/C/man2/adjtimex.2:292
783 msgid "Clock synchronized."
787 #: build/C/man2/adjtimex.2:292
793 #: build/C/man2/adjtimex.2:295
794 msgid "Insert leap second."
798 #: build/C/man2/adjtimex.2:295
804 #: build/C/man2/adjtimex.2:298
805 msgid "Delete leap second."
809 #: build/C/man2/adjtimex.2:298
815 #: build/C/man2/adjtimex.2:301
816 msgid "Leap second in progress."
820 #: build/C/man2/adjtimex.2:301
826 #: build/C/man2/adjtimex.2:304
827 msgid "Leap second has occurred."
831 #: build/C/man2/adjtimex.2:304
833 msgid "B<TIME_ERROR>"
837 #: build/C/man2/adjtimex.2:312
839 "Clock not synchronized. The symbolic name B<TIME_BAD> is a synonym for "
840 "B<TIME_ERROR>, provided for backward compatibility."
844 #: build/C/man2/adjtimex.2:317
845 msgid "On failure, B<adjtimex>() returns -1 and sets I<errno>."
849 #: build/C/man2/adjtimex.2:318 build/C/man2/clock_getres.2:189 build/C/man2/clock_nanosleep.2:159 build/C/man2/gettimeofday.2:146 build/C/man2/nanosleep.2:111 build/C/man2/stime.2:59 build/C/man2/time.2:51 build/C/man2/times.2:111 build/C/man2/utimensat.2:297
855 #: build/C/man2/adjtimex.2:322
856 msgid "I<buf> does not point to writable memory."
860 #: build/C/man2/adjtimex.2:339
862 "An attempt was made to set I<buf.offset> to a value outside the range "
863 "-131071 to +131071, or to set I<buf.status> to a value other than those "
864 "listed above, or to set I<buf.tick> to a value outside the range "
865 "900000/B<HZ> to 1100000/B<HZ>, where B<HZ> is the system timer interrupt "
870 #: build/C/man2/adjtimex.2:348
872 "I<buf.modes> is neither 0 nor B<ADJ_OFFSET_SS_READ>, and the caller does not "
873 "have sufficient privilege. Under Linux, the B<CAP_SYS_TIME> capability is "
878 #: build/C/man2/adjtimex.2:361
880 "In struct I<timex>, I<freq>, I<ppsfreq>, and I<stabil> are ppm (parts per "
881 "million) with a 16-bit fractional part, which means that a value of 1 in one "
882 "of those fields actually means 2^-16 ppm, and 2^16=65536 is 1 ppm. This is "
883 "the case for both input values (in the case of I<freq>) and output values."
887 #: build/C/man2/adjtimex.2:369
889 "B<adjtimex>() is Linux-specific and should not be used in programs intended "
890 "to be portable. See B<adjtime>(3) for a more portable, but less flexible, "
891 "method of adjusting the system clock."
895 #: build/C/man2/adjtimex.2:375
897 "B<settimeofday>(2), B<adjtime>(3), B<capabilities>(7), B<time>(7), "
902 #: build/C/man3/clock.3:29
908 #: build/C/man3/clock.3:29
914 #: build/C/man3/clock.3:29 build/C/man3/difftime.3:30 build/C/man3/dysize.3:26 build/C/man3/ftime.3:30 build/C/man3/strftime.3:37 build/C/man3/strptime.3:31 build/C/man3/timegm.3:25
920 #: build/C/man3/clock.3:32
921 msgid "clock - determine processor time"
925 #: build/C/man3/clock.3:35 build/C/man3/ctime.3:42 build/C/man3/difftime.3:36 build/C/man3/strftime.3:43 build/C/man3/timegm.3:31 build/C/man3/tzset.3:39
927 msgid "B<#include E<lt>time.hE<gt>>\n"
931 #: build/C/man3/clock.3:37
933 msgid "B<clock_t clock(void);>\n"
937 #: build/C/man3/clock.3:42
939 "The B<clock>() function returns an approximation of processor time used by "
944 #: build/C/man3/clock.3:50
946 "The value returned is the CPU time used so far as a I<clock_t>; to get the "
947 "number of seconds used, divide by B<CLOCKS_PER_SEC>. If the processor time "
948 "used is not available or its value cannot be represented, the function "
949 "returns the value I<(clock_t)\\ -1>."
953 #: build/C/man3/clock.3:56
955 "C89, C99, POSIX.1-2001. POSIX requires that B<CLOCKS_PER_SEC> equals "
956 "1000000 independent of the actual resolution."
960 #: build/C/man3/clock.3:61
962 "The C standard allows for arbitrary values at the start of the program; "
963 "subtract the value returned from a call to B<clock>() at the start of the "
964 "program to get maximum portability."
968 #: build/C/man3/clock.3:67
970 "Note that the time can wrap around. On a 32-bit system where "
971 "B<CLOCKS_PER_SEC> equals 1000000 this function will return the same value "
972 "approximately every 72 minutes."
975 #. I have seen this behavior on Irix 6.3, and the OSF/1, HP/UX, and
976 #. Solaris manual pages say that clock() also does this on those systems.
977 #. POSIX.1-2001 doesn't explicitly allow this, nor is there an
978 #. explicit prohibition. -- MTK
980 #: build/C/man3/clock.3:86
982 "On several other implementations, the value returned by B<clock>() also "
983 "includes the times of any children whose status has been collected via "
984 "B<wait>(2) (or another wait-type call). Linux does not include the times "
985 "of waited-for children in the value returned by B<clock>(). The B<times>(2) "
986 "function, which explicitly returns (separate) information about the caller "
987 "and its children, may be preferable."
991 #: build/C/man3/clock.3:97
993 "In glibc 2.17 and earlier, B<clock>() was implemented on top of "
994 "B<times>(2). For improved accuracy, since glibc 2.18, it is implemented on "
995 "top of B<clock_gettime>(2) (using the B<CLOCK_PROCESS_CPUTIME_ID> clock)."
999 #: build/C/man3/clock.3:101
1000 msgid "B<clock_gettime>(2), B<getrusage>(2), B<times>(2)"
1004 #: build/C/man3/clock_getcpuclockid.3:26
1006 msgid "CLOCK_GETCPUCLOCKID"
1010 #: build/C/man3/clock_getcpuclockid.3:26 build/C/man3/timegm.3:25
1016 #: build/C/man3/clock_getcpuclockid.3:29
1017 msgid "clock_getcpuclockid - obtain ID of a process CPU-time clock"
1021 #: build/C/man3/clock_getcpuclockid.3:31 build/C/man2/clock_getres.2:35 build/C/man2/clock_nanosleep.2:31 build/C/man3/dysize.3:31 build/C/man3/getdate.3:35 build/C/man3/getdate.3:41 build/C/man2/nanosleep.2:39 build/C/man2/stime.2:35 build/C/man3/strptime.3:38 build/C/man2/time.2:34
1022 msgid "B<#include E<lt>time.hE<gt>>"
1026 #: build/C/man3/clock_getcpuclockid.3:34
1028 msgid "B<int clock_getcpuclockid(pid_t >I<pid>B<, clockid_t *>I<clock_id>B<);>\n"
1032 #: build/C/man3/clock_getcpuclockid.3:37 build/C/man2/clock_getres.2:43 build/C/man2/clock_nanosleep.2:39
1033 msgid "Link with I<-lrt> (only for glibc versions before 2.17)."
1037 #: build/C/man3/clock_getcpuclockid.3:45
1038 msgid "B<clock_getcpuclockid>():"
1042 #: build/C/man3/clock_getcpuclockid.3:47 build/C/man2/clock_nanosleep.2:49
1043 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 600 || _POSIX_C_SOURCE\\ E<gt>=\\ 200112L"
1047 #: build/C/man3/clock_getcpuclockid.3:60
1049 "The B<clock_getcpuclockid>() function obtains the ID of the CPU-time clock "
1050 "of the process whose ID is I<pid>, and returns it in the location pointed to "
1051 "by I<clock_id>. If I<pid> is zero, then the clock ID of the CPU-time clock "
1052 "of the calling process is returned."
1056 #: build/C/man3/clock_getcpuclockid.3:65
1058 "On success, B<clock_getcpuclockid>() returns 0; on error, it returns one of "
1059 "the positive error numbers listed in ERRORS."
1063 #: build/C/man3/clock_getcpuclockid.3:66 build/C/man3/futimes.3:75 build/C/man3/futimes.3:83
1069 #: build/C/man3/clock_getcpuclockid.3:72
1071 "The kernel does not support obtaining the per-process CPU-time clock of "
1072 "another process, and I<pid> does not specify the calling process."
1076 #: build/C/man3/clock_getcpuclockid.3:80
1078 "The caller does not have permission to access the CPU-time clock of the "
1079 "process specified by I<pid>. (Specified as an optional error in "
1080 "POSIX.1-2001; does not occur on Linux unless the kernel does not support "
1081 "obtaining the per-process CPU-time clock of another process.)"
1085 #: build/C/man3/clock_getcpuclockid.3:80 build/C/man2/utimensat.2:408
1091 #: build/C/man3/clock_getcpuclockid.3:84
1092 msgid "There is no process with the ID I<pid>."
1096 #: build/C/man3/clock_getcpuclockid.3:84 build/C/man2/clock_getres.2:205 build/C/man2/clock_nanosleep.2:182 build/C/man3/futimes.3:86 build/C/man2/futimesat.2:108 build/C/man2/utimensat.2:413
1102 #: build/C/man3/clock_getcpuclockid.3:88
1104 "The B<clock_getcpuclockid>() function is available in glibc since version "
1109 #: build/C/man3/clock_getcpuclockid.3:93
1110 msgid "The B<clock_getcpuclockid>() function is thread-safe."
1114 #: build/C/man3/clock_getcpuclockid.3:95 build/C/man2/clock_nanosleep.2:189 build/C/man3/getdate.3:207 build/C/man2/nanosleep.2:133
1115 msgid "POSIX.1-2001."
1119 #: build/C/man3/clock_getcpuclockid.3:105
1121 "Calling B<clock_gettime>(2) with the clock ID obtained by a call to "
1122 "B<clock_getcpuclockid>() with a I<pid> of 0, is the same as using the clock "
1123 "ID B<CLOCK_PROCESS_CPUTIME_ID>."
1127 #: build/C/man3/clock_getcpuclockid.3:105 build/C/man3/getdate.3:221 build/C/man3/strftime.3:505 build/C/man3/strptime.3:403
1133 #: build/C/man3/clock_getcpuclockid.3:112
1135 "The example program below obtains the CPU-time clock ID of the process whose "
1136 "ID is given on the command line, and then uses B<clock_gettime>(2) to "
1137 "obtain the time on that clock. An example run is the following:"
1141 #: build/C/man3/clock_getcpuclockid.3:117
1144 "$B< ./a.out 1> # Show CPU clock of init process\n"
1145 "CPU-time clock for PID 1 is 2.213466748 seconds\n"
1149 #: build/C/man3/clock_getcpuclockid.3:119 build/C/man3/getdate.3:272 build/C/man3/strftime.3:535
1151 msgid "Program source"
1155 #: build/C/man3/clock_getcpuclockid.3:127
1158 "#define _XOPEN_SOURCE 600\n"
1159 "#include E<lt>stdio.hE<gt>\n"
1160 "#include E<lt>unistd.hE<gt>\n"
1161 "#include E<lt>stdlib.hE<gt>\n"
1162 "#include E<lt>time.hE<gt>\n"
1166 #: build/C/man3/clock_getcpuclockid.3:133
1170 "main(int argc, char *argv[])\n"
1172 " clockid_t clockid;\n"
1173 " struct timespec ts;\n"
1177 #: build/C/man3/clock_getcpuclockid.3:138
1180 " if (argc != 2) {\n"
1181 " fprintf(stderr, \"%s E<lt>process-IDE<gt>\\en\", argv[0]);\n"
1182 " exit(EXIT_FAILURE);\n"
1187 #: build/C/man3/clock_getcpuclockid.3:143
1190 " if (clock_getcpuclockid(atoi(argv[1]), &clockid) != 0) {\n"
1191 " perror(\"clock_getcpuclockid\");\n"
1192 " exit(EXIT_FAILURE);\n"
1197 #: build/C/man3/clock_getcpuclockid.3:148
1200 " if (clock_gettime(clockid, &ts) == -1) {\n"
1201 " perror(\"clock_gettime\");\n"
1202 " exit(EXIT_FAILURE);\n"
1207 #: build/C/man3/clock_getcpuclockid.3:153
1210 " printf(\"CPU-time clock for PID %s is %ld.%09ld seconds\\en\",\n"
1211 " argv[1], (long) ts.tv_sec, (long) ts.tv_nsec);\n"
1212 " exit(EXIT_SUCCESS);\n"
1217 #: build/C/man3/clock_getcpuclockid.3:159
1219 "B<clock_getres>(2), B<timer_create>(2), B<pthread_getcpuclockid>(3), "
1224 #: build/C/man2/clock_getres.2:30
1226 msgid "CLOCK_GETRES"
1230 #: build/C/man2/clock_getres.2:30
1236 #: build/C/man2/clock_getres.2:33
1237 msgid "clock_getres, clock_gettime, clock_settime - clock and time functions"
1241 #: build/C/man2/clock_getres.2:37
1242 msgid "B<int clock_getres(clockid_t >I<clk_id>B<, struct timespec *>I<res>B<);>"
1246 #: build/C/man2/clock_getres.2:39
1247 msgid "B<int clock_gettime(clockid_t >I<clk_id>B<, struct timespec *>I<tp>B<);>"
1251 #: build/C/man2/clock_getres.2:41
1253 "B<int clock_settime(clockid_t >I<clk_id>B<, const struct timespec "
1258 #: build/C/man2/clock_getres.2:53
1259 msgid "B<clock_getres>(), B<clock_gettime>(), B<clock_settime>():"
1263 #: build/C/man2/clock_getres.2:55
1264 msgid "_POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
1268 #: build/C/man2/clock_getres.2:76
1270 "The function B<clock_getres>() finds the resolution (precision) of the "
1271 "specified clock I<clk_id>, and, if I<res> is non-NULL, stores it in the "
1272 "I<struct timespec> pointed to by I<res>. The resolution of clocks depends "
1273 "on the implementation and cannot be configured by a particular process. If "
1274 "the time value pointed to by the argument I<tp> of B<clock_settime>() is "
1275 "not a multiple of I<res>, then it is truncated to a multiple of I<res>."
1279 #: build/C/man2/clock_getres.2:83
1281 "The functions B<clock_gettime>() and B<clock_settime>() retrieve and set "
1282 "the time of the specified clock I<clk_id>."
1286 #: build/C/man2/clock_getres.2:92
1288 "The I<res> and I<tp> arguments are I<timespec> structures, as specified in "
1289 "I<E<lt>time.hE<gt>>:"
1293 #: build/C/man2/clock_getres.2:99
1296 "struct timespec {\n"
1297 " time_t tv_sec; /* seconds */\n"
1298 " long tv_nsec; /* nanoseconds */\n"
1303 #: build/C/man2/clock_getres.2:107
1305 "The I<clk_id> argument is the identifier of the particular clock on which to "
1306 "act. A clock may be system-wide and hence visible for all processes, or "
1307 "per-process if it measures time only within a single process."
1311 #: build/C/man2/clock_getres.2:114
1313 "All implementations support the system-wide real-time clock, which is "
1314 "identified by B<CLOCK_REALTIME>. Its time represents seconds and "
1315 "nanoseconds since the Epoch. When its time is changed, timers for a "
1316 "relative interval are unaffected, but timers for an absolute point in time "
1321 #: build/C/man2/clock_getres.2:118
1323 "More clocks may be implemented. The interpretation of the corresponding "
1324 "time values and the effect on timers is unspecified."
1328 #: build/C/man2/clock_getres.2:121
1330 "Sufficiently recent versions of glibc and the Linux kernel support the "
1335 #: build/C/man2/clock_getres.2:121 build/C/man2/clock_nanosleep.2:80
1337 msgid "B<CLOCK_REALTIME>"
1341 #: build/C/man2/clock_getres.2:130
1343 "System-wide clock that measures real (i.e., wall-clock) time. Setting this "
1344 "clock requires appropriate privileges. This clock is affected by "
1345 "discontinuous jumps in the system time (e.g., if the system administrator "
1346 "manually changes the clock), and by the incremental adjustments performed by "
1347 "B<adjtime>(3) and NTP."
1351 #: build/C/man2/clock_getres.2:130
1353 msgid "B<CLOCK_REALTIME_COARSE> (since Linux 2.6.32; Linux-specific)"
1356 #. Added in commit da15cfdae03351c689736f8d142618592e3cebc3
1358 #: build/C/man2/clock_getres.2:136
1360 "A faster but less precise version of B<CLOCK_REALTIME>. Use when you need "
1361 "very fast, but not fine-grained timestamps."
1365 #: build/C/man2/clock_getres.2:137 build/C/man2/clock_nanosleep.2:83
1367 msgid "B<CLOCK_MONOTONIC>"
1371 #: build/C/man2/clock_getres.2:146
1373 "Clock that cannot be set and represents monotonic time since some "
1374 "unspecified starting point. This clock is not affected by discontinuous "
1375 "jumps in the system time (e.g., if the system administrator manually changes "
1376 "the clock), but is affected by the incremental adjustments performed by "
1377 "B<adjtime>(3) and NTP."
1381 #: build/C/man2/clock_getres.2:146
1383 msgid "B<CLOCK_MONOTONIC_COARSE> (since Linux 2.6.32; Linux-specific)"
1386 #. Added in commit da15cfdae03351c689736f8d142618592e3cebc3
1388 #: build/C/man2/clock_getres.2:152
1390 "A faster but less precise version of B<CLOCK_MONOTONIC>. Use when you need "
1391 "very fast, but not fine-grained timestamps."
1395 #: build/C/man2/clock_getres.2:152
1397 msgid "B<CLOCK_MONOTONIC_RAW> (since Linux 2.6.28; Linux-specific)"
1400 #. Added in commit 2d42244ae71d6c7b0884b5664cf2eda30fb2ae68, John Stultz
1402 #: build/C/man2/clock_getres.2:161
1404 "Similar to B<CLOCK_MONOTONIC>, but provides access to a raw hardware-based "
1405 "time that is not subject to NTP adjustments or the incremental adjustments "
1406 "performed by B<adjtime>(3)."
1410 #: build/C/man2/clock_getres.2:161
1412 msgid "B<CLOCK_BOOTTIME> (since Linux 2.6.39; Linux-specific)"
1415 #. commit 7fdd7f89006dd5a4c702fa0ce0c272345fa44ae0
1416 #. commit 70a08cca1227dc31c784ec930099a4417a06e7d0
1418 #: build/C/man2/clock_getres.2:173
1420 "Identical to B<CLOCK_MONOTONIC>, except it also includes any time that the "
1421 "system is suspended. This allows applications to get a suspend-aware "
1422 "monotonic clock without having to deal with the complications of "
1423 "B<CLOCK_REALTIME>, which may have discontinuities if the time is changed "
1424 "using B<settimeofday>(2)."
1428 #: build/C/man2/clock_getres.2:173
1430 msgid "B<CLOCK_PROCESS_CPUTIME_ID> (since Linux 2.6.12)"
1434 #: build/C/man2/clock_getres.2:177
1436 "Per-process CPU-time clock (measures CPU time consumed by all threads in the "
1441 #: build/C/man2/clock_getres.2:177
1443 msgid "B<CLOCK_THREAD_CPUTIME_ID> (since Linux 2.6.12)"
1447 #: build/C/man2/clock_getres.2:180
1448 msgid "Thread-specific CPU-time clock."
1452 #: build/C/man2/clock_getres.2:188
1454 "B<clock_gettime>(), B<clock_settime>() and B<clock_getres>() return 0 for "
1455 "success, or -1 for failure (in which case I<errno> is set appropriately)."
1459 #: build/C/man2/clock_getres.2:193
1460 msgid "I<tp> points outside the accessible address space."
1463 #. Linux also gives this error on attempts to set CLOCK_PROCESS_CPUTIME_ID
1464 #. and CLOCK_THREAD_CPUTIME_ID, when probably the proper error should be
1467 #: build/C/man2/clock_getres.2:201
1468 msgid "The I<clk_id> specified is not supported on this system."
1472 #: build/C/man2/clock_getres.2:205
1473 msgid "B<clock_settime>() does not have permission to set the clock indicated."
1477 #: build/C/man2/clock_getres.2:207
1478 msgid "These system calls first appeared in Linux 2.6."
1482 #: build/C/man2/clock_getres.2:209 build/C/man3/strptime.3:304
1483 msgid "SUSv2, POSIX.1-2001."
1487 #: build/C/man2/clock_getres.2:209
1489 msgid "AVAILABILITY"
1493 #: build/C/man2/clock_getres.2:224
1495 "On POSIX systems on which these functions are available, the symbol "
1496 "B<_POSIX_TIMERS> is defined in I<E<lt>unistd.hE<gt>> to a value greater than "
1497 "0. The symbols B<_POSIX_MONOTONIC_CLOCK>, B<_POSIX_CPUTIME>, "
1498 "B<_POSIX_THREAD_CPUTIME> indicate that B<CLOCK_MONOTONIC>, "
1499 "B<CLOCK_PROCESS_CPUTIME_ID>, B<CLOCK_THREAD_CPUTIME_ID> are available. (See "
1500 "also B<sysconf>(3).)"
1504 #: build/C/man2/clock_getres.2:225
1506 msgid "Historical note for SMP systems"
1510 #: build/C/man2/clock_getres.2:237
1512 "Before Linux added kernel support for B<CLOCK_PROCESS_CPUTIME_ID> and "
1513 "B<CLOCK_THREAD_CPUTIME_ID>, glibc implemented these clocks on many platforms "
1514 "using timer registers from the CPUs (TSC on i386, AR.ITC on Itanium). These "
1515 "registers may differ between CPUs and as a consequence these clocks may "
1516 "return B<bogus results> if a process is migrated to another CPU."
1520 #: build/C/man2/clock_getres.2:248
1522 "If the CPUs in an SMP system have different clock sources, then there is no "
1523 "way to maintain a correlation between the timer registers since each CPU "
1524 "will run at a slightly different frequency. If that is the case, then "
1525 "I<clock_getcpuclockid(0)> will return B<ENOENT> to signify this condition. "
1526 "The two clocks will then be useful only if it can be ensured that a process "
1527 "stays on a certain CPU."
1531 #: build/C/man2/clock_getres.2:257
1533 "The processors in an SMP system do not start all at exactly the same time "
1534 "and therefore the timer registers are typically running at an offset. Some "
1535 "architectures include code that attempts to limit these offsets on bootup. "
1536 "However, the code cannot guarantee to accurately tune the offsets. Glibc "
1537 "contains no provisions to deal with these offsets (unlike the Linux "
1538 "Kernel). Typically these offsets are small and therefore the effects may be "
1539 "negligible in most cases."
1543 #: build/C/man2/clock_getres.2:266
1545 "Since glibc 2.4, the wrapper functions for the system calls described in "
1546 "this page avoid the abovementioned problems by employing the kernel "
1547 "implementation of B<CLOCK_PROCESS_CPUTIME_ID> and "
1548 "B<CLOCK_THREAD_CPUTIME_ID>, on systems that provide such an implementation "
1549 "(i.e., Linux 2.6.12 and later)."
1552 #. See http://bugzilla.kernel.org/show_bug.cgi?id=11972
1554 #: build/C/man2/clock_getres.2:276
1556 "According to POSIX.1-2001, a process with \"appropriate privileges\" may set "
1557 "the B<CLOCK_PROCESS_CPUTIME_ID> and B<CLOCK_THREAD_CPUTIME_ID> clocks using "
1558 "B<clock_settime>(). On Linux, these clocks are not settable (i.e., no "
1559 "process has \"appropriate privileges\")."
1563 #: build/C/man2/clock_getres.2:288
1565 "B<date>(1), B<gettimeofday>(2), B<settimeofday>(2), B<time>(2), "
1566 "B<adjtime>(3), B<clock_getcpuclockid>(3), B<ctime>(3), B<ftime>(3), "
1567 "B<pthread_getcpuclockid>(3), B<sysconf>(3), B<time>(7)"
1571 #: build/C/man2/clock_nanosleep.2:26
1573 msgid "CLOCK_NANOSLEEP"
1577 #: build/C/man2/clock_nanosleep.2:29
1578 msgid "clock_nanosleep - high-resolution sleep with specifiable clock"
1582 #: build/C/man2/clock_nanosleep.2:36
1585 "B<int clock_nanosleep(clockid_t >I<clock_id>B<, int >I<flags>B<,>\n"
1586 "B< const struct timespec *>I<request>B<,>\n"
1587 "B< struct timespec *>I<remain>B<);>\n"
1591 #: build/C/man2/clock_nanosleep.2:47
1592 msgid "B<clock_nanosleep>():"
1596 #: build/C/man2/clock_nanosleep.2:61
1598 "Like B<nanosleep>(2), B<clock_nanosleep>() allows the calling thread to "
1599 "sleep for an interval specified with nanosecond precision. It differs in "
1600 "allowing the caller to select the clock against which the sleep interval is "
1601 "to be measured, and in allowing the sleep interval to be specified as either "
1602 "an absolute or a relative value."
1606 #: build/C/man2/clock_nanosleep.2:65
1608 "The time values passed to and returned by this call are specified using "
1609 "I<timespec> structures, defined as follows:"
1613 #: build/C/man2/clock_nanosleep.2:72
1616 "struct timespec {\n"
1617 " time_t tv_sec; /* seconds */\n"
1618 " long tv_nsec; /* nanoseconds [0 .. 999999999] */\n"
1623 #: build/C/man2/clock_nanosleep.2:80
1625 "The I<clock_id> argument specifies the clock against which the sleep "
1626 "interval is to be measured. This argument can have one of the following "
1631 #: build/C/man2/clock_nanosleep.2:83
1632 msgid "A settable system-wide real-time clock."
1635 #. On Linux this clock measures time since boot.
1637 #: build/C/man2/clock_nanosleep.2:89
1639 "A nonsettable, monotonically increasing clock that measures time since some "
1640 "unspecified point in the past that does not change after system startup."
1644 #: build/C/man2/clock_nanosleep.2:89
1646 msgid "B<CLOCK_PROCESS_CPUTIME_ID>"
1649 #. There is some trickery between glibc and the kernel
1650 #. to deal with the CLOCK_PROCESS_CPUTIME_ID case.
1652 #: build/C/man2/clock_nanosleep.2:95
1654 "A settable per-process clock that measures CPU time consumed by all threads "
1659 #: build/C/man2/clock_nanosleep.2:105
1661 "See B<clock_getres>(2) for further details on these clocks. In addition, "
1662 "the CPU clock IDs returned by B<clock_getcpuclockid>(3) and "
1663 "B<pthread_getcpuclockid>(3) can also be passed in I<clock_id>."
1667 #: build/C/man2/clock_nanosleep.2:113
1669 "If I<flags> is 0, then the value specified in I<request> is interpreted as "
1670 "an interval relative to the current value of the clock specified by "
1675 #: build/C/man2/clock_nanosleep.2:128
1677 "If I<flags> is B<TIMER_ABSTIME>, then I<request> is interpreted as an "
1678 "absolute time as measured by the clock, I<clock_id>. If I<request> is less "
1679 "than or equal to the current value of the clock, then B<clock_nanosleep>() "
1680 "returns immediately without suspending the calling thread."
1684 #: build/C/man2/clock_nanosleep.2:136
1686 "B<clock_nanosleep>() suspends the execution of the calling thread until "
1687 "either at least the time specified by I<request> has elapsed, or a signal is "
1688 "delivered that causes a signal handler to be called or that terminates the "
1693 #: build/C/man2/clock_nanosleep.2:152
1695 "If the call is interrupted by a signal handler, B<clock_nanosleep>() fails "
1696 "with the error B<EINTR>. In addition, if I<remain> is not NULL, and "
1697 "I<flags> was not B<TIMER_ABSTIME>, it returns the remaining unslept time in "
1698 "I<remain>. This value can then be used to call B<clock_nanosleep>() again "
1699 "and complete a (relative) sleep."
1703 #: build/C/man2/clock_nanosleep.2:158
1705 "On successfully sleeping for the requested interval, B<clock_nanosleep>() "
1706 "returns 0. If the call is interrupted by a signal handler or encounters an "
1707 "error, then it returns one of the positive error number listed in ERRORS."
1711 #: build/C/man2/clock_nanosleep.2:165
1712 msgid "I<request> or I<remain> specified an invalid address."
1716 #: build/C/man2/clock_nanosleep.2:165 build/C/man2/nanosleep.2:114
1722 #: build/C/man2/clock_nanosleep.2:168
1723 msgid "The sleep was interrupted by a signal handler."
1727 #: build/C/man2/clock_nanosleep.2:175 build/C/man2/nanosleep.2:131
1729 "The value in the I<tv_nsec> field was not in the range 0 to 999999999 or "
1730 "I<tv_sec> was negative."
1734 #: build/C/man2/clock_nanosleep.2:182
1736 "I<clock_id> was invalid. (B<CLOCK_THREAD_CPUTIME_ID> is not a permitted "
1737 "value for I<clock_id>.)"
1741 #: build/C/man2/clock_nanosleep.2:187
1743 "The B<clock_nanosleep>() system call first appeared in Linux 2.6. Support "
1744 "is available in glibc since version 2.1."
1748 #: build/C/man2/clock_nanosleep.2:197
1750 "If the interval specified in I<request> is not an exact multiple of the "
1751 "granularity underlying clock (see B<time>(7)), then the interval will be "
1752 "rounded up to the next multiple. Furthermore, after the sleep completes, "
1753 "there may still be a delay before the CPU becomes free to once again execute "
1754 "the calling thread."
1758 #: build/C/man2/clock_nanosleep.2:212
1760 "Using an absolute timer is useful for preventing timer drift problems of the "
1761 "type described in B<nanosleep>(2). (Such problems are exacerbated in "
1762 "programs that try to restart a relative sleep that is repeatedly interrupted "
1763 "by signals.) To perform a relative sleep that avoids these problems, call "
1764 "B<clock_gettime>(2) for the desired clock, add the desired interval to the "
1765 "returned time value, and then call B<clock_nanosleep>() with the "
1766 "B<TIMER_ABSTIME> flag."
1770 #: build/C/man2/clock_nanosleep.2:219
1772 "B<clock_nanosleep>() is never restarted after being interrupted by a signal "
1773 "handler, regardless of the use of the B<sigaction>(2) B<SA_RESTART> flag."
1777 #: build/C/man2/clock_nanosleep.2:229
1779 "The I<remain> argument is unused, and unnecessary, when I<flags> is "
1780 "B<TIMER_ABSTIME>. (An absolute sleep can be restarted using the same "
1781 "I<request> argument.)"
1785 #: build/C/man2/clock_nanosleep.2:233
1787 "POSIX.1 specifies that B<clock_nanosleep>() has no effect on signals "
1788 "dispositions or the signal mask."
1792 #: build/C/man2/clock_nanosleep.2:245
1794 "POSIX.1 specifies that after changing the value of the B<CLOCK_REALTIME> "
1795 "clock via B<clock_settime>(2), the new clock value shall be used to "
1796 "determine the time at which a thread blocked on an absolute "
1797 "B<clock_nanosleep>() will wake up; if the new clock value falls past the "
1798 "end of the sleep interval, then the B<clock_nanosleep>() call will return "
1803 #: build/C/man2/clock_nanosleep.2:253
1805 "POSIX.1 specifies that changing the value of the B<CLOCK_REALTIME> clock via "
1806 "B<clock_settime>(2) shall have no effect on a thread that is blocked on a "
1807 "relative B<clock_nanosleep>()."
1811 #: build/C/man2/clock_nanosleep.2:261
1813 "B<clock_getres>(2), B<nanosleep>(2), B<restart_syscall>(2), "
1814 "B<timer_create>(2), B<sleep>(3), B<usleep>(3), B<time>(7)"
1818 #: build/C/man3/ctime.3:35
1824 #: build/C/man3/ctime.3:35 build/C/man3/ftime.3:30 build/C/man3/strftime.3:37 build/C/man3/strptime.3:31 build/C/man2/utime.2:31
1830 #: build/C/man3/ctime.3:39
1832 "asctime, ctime, gmtime, localtime, mktime, asctime_r, ctime_r, gmtime_r, "
1833 "localtime_r - transform date and time to broken-down time or ASCII"
1837 #: build/C/man3/ctime.3:44
1839 msgid "B<char *asctime(const struct tm *>I<tm>B<);>\n"
1843 #: build/C/man3/ctime.3:46
1845 msgid "B<char *asctime_r(const struct tm *>I<tm>B<, char *>I<buf>B<);>\n"
1849 #: build/C/man3/ctime.3:48
1851 msgid "B<char *ctime(const time_t *>I<timep>B<);>\n"
1855 #: build/C/man3/ctime.3:50
1857 msgid "B<char *ctime_r(const time_t *>I<timep>B<, char *>I<buf>B<);>\n"
1861 #: build/C/man3/ctime.3:52
1863 msgid "B<struct tm *gmtime(const time_t *>I<timep>B<);>\n"
1867 #: build/C/man3/ctime.3:54
1870 "B<struct tm *gmtime_r(const time_t *>I<timep>B<, struct tm "
1871 "*>I<result>B<);>\n"
1875 #: build/C/man3/ctime.3:56
1877 msgid "B<struct tm *localtime(const time_t *>I<timep>B<);>\n"
1881 #: build/C/man3/ctime.3:58
1884 "B<struct tm *localtime_r(const time_t *>I<timep>B<, struct tm "
1885 "*>I<result>B<);>\n"
1889 #: build/C/man3/ctime.3:60
1891 msgid "B<time_t mktime(struct tm *>I<tm>B<);>\n"
1895 #: build/C/man3/ctime.3:72
1896 msgid "B<asctime_r>(), B<ctime_r>(), B<gmtime_r>(), B<localtime_r>():"
1900 #: build/C/man3/ctime.3:75
1902 "_POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _BSD_SOURCE || _SVID_SOURCE "
1907 #: build/C/man3/ctime.3:87
1909 "The B<ctime>(), B<gmtime>() and B<localtime>() functions all take an "
1910 "argument of data type I<time_t>, which represents calendar time. When "
1911 "interpreted as an absolute time value, it represents the number of seconds "
1912 "elapsed since the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
1916 #: build/C/man3/ctime.3:95
1918 "The B<asctime>() and B<mktime>() functions both take an argument "
1919 "representing broken-down time, which is a representation separated into "
1920 "year, month, day, and so on."
1924 #: build/C/man3/ctime.3:98
1926 "Broken-down time is stored in the structure I<tm>, which is defined in "
1927 "I<E<lt>time.hE<gt>> as follows:"
1931 #: build/C/man3/ctime.3:112 build/C/man3/strptime.3:74
1935 " int tm_sec; /* Seconds (0-60) */\n"
1936 " int tm_min; /* Minutes (0-59) */\n"
1937 " int tm_hour; /* Hours (0-23) */\n"
1938 " int tm_mday; /* Day of the month (1-31) */\n"
1939 " int tm_mon; /* Month (0-11) */\n"
1940 " int tm_year; /* Year - 1900 */\n"
1941 " int tm_wday; /* Day of the week (0-6, Sunday = 0) */\n"
1942 " int tm_yday; /* Day in the year (0-365, 1 Jan = 0) */\n"
1943 " int tm_isdst; /* Daylight saving time */\n"
1948 #: build/C/man3/ctime.3:116
1949 msgid "The members of the I<tm> structure are:"
1953 #: build/C/man3/ctime.3:116
1959 #: build/C/man3/ctime.3:120
1961 "The number of seconds after the minute, normally in the range 0 to 59, but "
1962 "can be up to 60 to allow for leap seconds."
1966 #: build/C/man3/ctime.3:120
1972 #: build/C/man3/ctime.3:123
1973 msgid "The number of minutes after the hour, in the range 0 to 59."
1977 #: build/C/man3/ctime.3:123
1983 #: build/C/man3/ctime.3:126
1984 msgid "The number of hours past midnight, in the range 0 to 23."
1988 #: build/C/man3/ctime.3:126
1994 #: build/C/man3/ctime.3:129
1995 msgid "The day of the month, in the range 1 to 31."
1999 #: build/C/man3/ctime.3:129
2005 #: build/C/man3/ctime.3:132
2006 msgid "The number of months since January, in the range 0 to 11."
2010 #: build/C/man3/ctime.3:132
2016 #: build/C/man3/ctime.3:135
2017 msgid "The number of years since 1900."
2021 #: build/C/man3/ctime.3:135
2027 #: build/C/man3/ctime.3:138
2028 msgid "The number of days since Sunday, in the range 0 to 6."
2032 #: build/C/man3/ctime.3:138
2038 #: build/C/man3/ctime.3:141
2039 msgid "The number of days since January 1, in the range 0 to 365."
2043 #: build/C/man3/ctime.3:141
2049 #: build/C/man3/ctime.3:148
2051 "A flag that indicates whether daylight saving time is in effect at the time "
2052 "described. The value is positive if daylight saving time is in effect, zero "
2053 "if it is not, and negative if the information is not available."
2057 #: build/C/man3/ctime.3:155
2059 "The call B<ctime(>I<t>B<)> is equivalent to B<asctime(localtime(>I<t>B<))>. "
2060 "It converts the calendar time I<t> into a null-terminated string of the form"
2064 #: build/C/man3/ctime.3:158
2065 msgid "Wed Jun 30 21:49:08 1993\\en"
2069 #: build/C/man3/ctime.3:179
2071 "The abbreviations for the days of the week are \"Sun\", \"Mon\", \"Tue\", "
2072 "\"Wed\", \"Thu\", \"Fri\", and \"Sat\". The abbreviations for the months "
2073 "are \"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", "
2074 "\"Sep\", \"Oct\", \"Nov\", and \"Dec\". The return value points to a "
2075 "statically allocated string which might be overwritten by subsequent calls "
2076 "to any of the date and time functions. The function also sets the external "
2077 "variables I<tzname>, I<timezone>, and I<daylight> (see B<tzset>(3)) with "
2078 "information about the current timezone. The reentrant version B<ctime_r>() "
2079 "does the same, but stores the string in a user-supplied buffer which should "
2080 "have room for at least 26 bytes. It need not set I<tzname>, I<timezone>, "
2085 #: build/C/man3/ctime.3:192
2087 "The B<gmtime>() function converts the calendar time I<timep> to broken-down "
2088 "time representation, expressed in Coordinated Universal Time (UTC). It may "
2089 "return NULL when the year does not fit into an integer. The return value "
2090 "points to a statically allocated struct which might be overwritten by "
2091 "subsequent calls to any of the date and time functions. The B<gmtime_r>() "
2092 "function does the same, but stores the data in a user-supplied struct."
2096 #: build/C/man3/ctime.3:212
2098 "The B<localtime>() function converts the calendar time I<timep> to "
2099 "broken-down time representation, expressed relative to the user's specified "
2100 "timezone. The function acts as if it called B<tzset>(3) and sets the "
2101 "external variables I<tzname> with information about the current timezone, "
2102 "I<timezone> with the difference between Coordinated Universal Time (UTC) and "
2103 "local standard time in seconds, and I<daylight> to a nonzero value if "
2104 "daylight savings time rules apply during some part of the year. The return "
2105 "value points to a statically allocated struct which might be overwritten by "
2106 "subsequent calls to any of the date and time functions. The "
2107 "B<localtime_r>() function does the same, but stores the data in a "
2108 "user-supplied struct. It need not set I<tzname>, I<timezone>, and "
2113 #: build/C/man3/ctime.3:224
2115 "The B<asctime>() function converts the broken-down time value I<tm> into a "
2116 "null-terminated string with the same format as B<ctime>(). The return value "
2117 "points to a statically allocated string which might be overwritten by "
2118 "subsequent calls to any of the date and time functions. The B<asctime_r>() "
2119 "function does the same, but stores the string in a user-supplied buffer "
2120 "which should have room for at least 26 bytes."
2124 #: build/C/man3/ctime.3:249
2126 "The B<mktime>() function converts a broken-down time structure, expressed "
2127 "as local time, to calendar time representation. The function ignores the "
2128 "values supplied by the caller in the I<tm_wday> and I<tm_yday> fields. The "
2129 "value specified in the I<tm_isdst> field informs B<mktime>() whether or not "
2130 "daylight saving time (DST) is in effect for the time supplied in the I<tm> "
2131 "structure: a positive value means DST is in effect; zero means that DST is "
2132 "not in effect; and a negative value means that B<mktime>() should (use "
2133 "timezone information and system databases to) attempt to determine whether "
2134 "DST is in effect at the specified time."
2138 #: build/C/man3/ctime.3:269
2140 "The B<mktime>() function modifies the fields of the I<tm> structure as "
2141 "follows: I<tm_wday> and I<tm_yday> are set to values determined from the "
2142 "contents of the other fields; if structure members are outside their valid "
2143 "interval, they will be normalized (so that, for example, 40 October is "
2144 "changed into 9 November); I<tm_isdst> is set (regardless of its initial "
2145 "value) to a positive value or to 0, respectively, to indicate whether DST "
2146 "is or is not in effect at the specified time. Calling B<mktime>() also "
2147 "sets the external variable I<tzname> with information about the current "
2152 #: build/C/man3/ctime.3:277
2154 "If the specified broken-down time cannot be represented as calendar time "
2155 "(seconds since the Epoch), B<mktime>() returns I<(time_t)\\ -1> and does "
2156 "not alter the members of the broken-down time structure."
2160 #: build/C/man3/ctime.3:282
2162 "Each of these functions returns the value described, or NULL (-1 in case of "
2163 "B<mktime>()) in case an error was detected."
2167 #: build/C/man3/ctime.3:301
2169 "POSIX.1-2001. C89 and C99 specify B<asctime>(), B<ctime>(), B<gmtime>(), "
2170 "B<localtime>(), and B<mktime>(). POSIX.1-2008 marks B<asctime>(), "
2171 "B<asctime_r>(), B<ctime>(), and B<ctime_r>() as obsolete, recommending the "
2172 "use of B<strftime>(3) instead."
2176 #: build/C/man3/ctime.3:316
2178 "The four functions B<asctime>(), B<ctime>(), B<gmtime>() and B<localtime>() "
2179 "return a pointer to static data and hence are not thread-safe. The "
2180 "thread-safe versions, B<asctime_r>(), B<ctime_r>(), B<gmtime_r>() and "
2181 "B<localtime_r>(), are specified by SUSv2."
2185 #: build/C/man3/ctime.3:330
2187 "POSIX.1-2001 says: \"The B<asctime>(), B<ctime>(), B<gmtime>(), and "
2188 "B<localtime>() functions shall return values in one of two static objects: "
2189 "a broken-down time structure and an array of type I<char>. Execution of any "
2190 "of the functions may overwrite the information returned in either of these "
2191 "objects by any of the other functions.\" This can occur in the glibc "
2196 #: build/C/man3/ctime.3:334
2198 "In many implementations, including glibc, a 0 in I<tm_mday> is interpreted "
2199 "as meaning the last day of the preceding month."
2203 #: build/C/man3/ctime.3:336
2204 msgid "The glibc version of I<struct tm> has additional fields"
2208 #: build/C/man3/ctime.3:341
2211 "long tm_gmtoff; /* Seconds east of UTC */\n"
2212 "const char *tm_zone; /* Timezone abbreviation */\n"
2216 #: build/C/man3/ctime.3:349
2218 "defined when B<_BSD_SOURCE> was set before including I<E<lt>time.hE<gt>>. "
2219 "This is a BSD extension, present in 4.3BSD-Reno."
2222 #. See http://thread.gmane.org/gmane.comp.time.tz/2034/
2224 #: build/C/man3/ctime.3:362
2226 "According to POSIX.1-2004, B<localtime>() is required to behave as though "
2227 "B<tzset>(3) was called, while B<localtime_r>() does not have this "
2228 "requirement. For portable code, B<tzset>(3) should be called before "
2233 #: build/C/man3/ctime.3:374
2235 "B<date>(1), B<gettimeofday>(2), B<time>(2), B<utime>(2), B<clock>(3), "
2236 "B<difftime>(3), B<strftime>(3), B<strptime>(3), B<timegm>(3), B<tzset>(3), "
2241 #: build/C/man3/difftime.3:30
2247 #: build/C/man3/difftime.3:30
2253 #: build/C/man3/difftime.3:33
2254 msgid "difftime - calculate time difference"
2258 #: build/C/man3/difftime.3:38
2260 msgid "B<double difftime(time_t >I<time1>B<, time_t >I<time0>B<);>\n"
2264 #: build/C/man3/difftime.3:48
2266 "The B<difftime>() function returns the number of seconds elapsed between "
2267 "time I<time1> and time I<time0>, represented as a I<double>. Each of the "
2268 "times is specified in calendar time, which means its value is a measurement "
2269 "(in seconds) relative to the Epoch, 1970-01-01 00:00:00 +0000 (UTC)."
2273 #: build/C/man3/difftime.3:53
2274 msgid "The B<difftime>() function is thread-safe."
2278 #: build/C/man3/difftime.3:55
2279 msgid "SVr4, 4.3BSD, C89, C99."
2283 #: build/C/man3/difftime.3:60
2285 "On a POSIX system, I<time_t> is an arithmetic type, and one could just "
2290 #: build/C/man3/difftime.3:64
2292 msgid "#define difftime(t1,t0) (double)(t1 - t0)\n"
2296 #: build/C/man3/difftime.3:68
2297 msgid "when the possible overflow in the subtraction is not a concern."
2301 #: build/C/man3/difftime.3:75
2303 "B<date>(1), B<gettimeofday>(2), B<time>(2), B<ctime>(3), B<gmtime>(3), "
2308 #: build/C/man3/dysize.3:26
2314 #: build/C/man3/dysize.3:26
2320 #: build/C/man3/dysize.3:29
2321 msgid "dysize - get number of days for a given year"
2325 #: build/C/man3/dysize.3:33
2326 msgid "B<int dysize(int >I<year>B<);>"
2330 #: build/C/man3/dysize.3:41
2331 msgid "B<dysize>(): _BSD_SOURCE || _SVID_SOURCE"
2335 #: build/C/man3/dysize.3:44
2337 "The function returns 365 for a normal year and 366 for a leap year. The "
2338 "calculation for leap year is based on:"
2342 #: build/C/man3/dysize.3:46
2343 msgid "(year) %4 == 0 && ((year) %100 != 0 || (year) %400 == 0)"
2347 #: build/C/man3/dysize.3:51
2349 "The formula is defined in the macro I<__isleap(year)> also found in "
2350 "I<E<lt>time.hE<gt>>."
2354 #: build/C/man3/dysize.3:56
2355 msgid "The B<dysize>() function is thread-safe."
2359 #: build/C/man3/dysize.3:58
2360 msgid "This function occurs in SunOS 4.x."
2363 #. The SCO version of this function had a year-2000 problem.
2365 #: build/C/man3/dysize.3:62
2366 msgid "This is a compatibility function only. Don't use it in new programs."
2370 #: build/C/man3/dysize.3:64
2371 msgid "B<strftime>(3)"
2375 #: build/C/man3/ftime.3:30
2381 #: build/C/man3/ftime.3:33
2382 msgid "ftime - return date and time"
2386 #: build/C/man3/ftime.3:35
2387 msgid "B<#include E<lt>sys/timeb.hE<gt>>"
2391 #: build/C/man3/ftime.3:37
2392 msgid "B<int ftime(struct timeb *>I<tp>B<);>"
2396 #: build/C/man3/ftime.3:43
2398 "This function returns the current time as seconds and milliseconds since the "
2399 "Epoch, 1970-01-01 00:00:00 +0000 (UTC). The time is returned in I<tp>, "
2400 "which is declared as follows:"
2404 #: build/C/man3/ftime.3:52
2409 " unsigned short millitm;\n"
2410 " short timezone;\n"
2416 #: build/C/man3/ftime.3:64
2418 "Here I<time> is the number of seconds since the Epoch, and I<millitm> is the "
2419 "number of milliseconds since I<time> seconds since the Epoch. The "
2420 "I<timezone> field is the local timezone measured in minutes of time west of "
2421 "Greenwich (with a negative value indicating minutes east of Greenwich). The "
2422 "I<dstflag> field is a flag that, if nonzero, indicates that Daylight Saving "
2423 "time applies locally during the appropriate part of the year."
2427 #: build/C/man3/ftime.3:67
2429 "POSIX.1-2001 says that the contents of the I<timezone> and I<dstflag> fields "
2430 "are unspecified; avoid relying on them."
2434 #: build/C/man3/ftime.3:70
2436 "This function always returns 0. (POSIX.1-2001 specifies, and some systems "
2437 "document, a -1 error return.)"
2441 #: build/C/man3/ftime.3:75
2442 msgid "The B<ftime>() function is thread-safe."
2446 #: build/C/man3/ftime.3:79
2447 msgid "4.2BSD, POSIX.1-2001. POSIX.1-2008 removes the specification of B<ftime>()."
2451 #: build/C/man3/ftime.3:90
2453 "This function is obsolete. Don't use it. If the time in seconds suffices, "
2454 "B<time>(2) can be used; B<gettimeofday>(2) gives microseconds; "
2455 "B<clock_gettime>(2) gives nanoseconds but is not as widely available."
2461 #. function appeared in 4.2BSD.
2463 #: build/C/man3/ftime.3:100
2465 "Early glibc2 is buggy and returns 0 in the I<millitm> field; glibc 2.1.1 is "
2470 #: build/C/man3/ftime.3:103
2471 msgid "B<gettimeofday>(2), B<time>(2)"
2475 #: build/C/man3/futimes.3:25
2481 #: build/C/man3/futimes.3:25
2487 #: build/C/man3/futimes.3:28
2488 msgid "futimes, lutimes - change file timestamps"
2492 #: build/C/man3/futimes.3:33
2494 msgid "B<int futimes(int >I<fd>B<, const struct timeval >I<tv>B<[2]);>\n"
2498 #: build/C/man3/futimes.3:35
2501 "B<int lutimes(const char *>I<filename>B<, const struct timeval "
2506 #: build/C/man3/futimes.3:45
2507 msgid "B<futimes>(), B<lutimes>(): _BSD_SOURCE"
2511 #: build/C/man3/futimes.3:53
2513 "B<futimes>() changes the access and modification times of a file in the "
2514 "same way as B<utimes>(2), with the difference that the file whose timestamps "
2515 "are to be changed is specified via a file descriptor, I<fd>, rather than via "
2520 #: build/C/man3/futimes.3:61
2522 "B<lutimes>() changes the access and modification times of a file in the "
2523 "same way as B<utimes>(2), with the difference that if I<filename> refers to "
2524 "a symbolic link, then the link is not dereferenced: instead, the timestamps "
2525 "of the symbolic link are changed."
2529 #: build/C/man3/futimes.3:66 build/C/man2/stime.2:58 build/C/man2/utime.2:129
2531 "On success, zero is returned. On error, -1 is returned, and I<errno> is set "
2536 #: build/C/man3/futimes.3:71
2538 "Errors are as for B<utimes>(2), with the following additions for "
2543 #: build/C/man3/futimes.3:71 build/C/man2/futimesat.2:98 build/C/man2/utimensat.2:283 build/C/man2/utimensat.2:288
2549 #: build/C/man3/futimes.3:75
2550 msgid "I<fd> is not a valid file descriptor."
2554 #: build/C/man3/futimes.3:80
2555 msgid "The I</proc> filesystem could not be accessed."
2559 #: build/C/man3/futimes.3:83
2560 msgid "The following additional error may occur for B<lutimes>():"
2564 #: build/C/man3/futimes.3:86
2565 msgid "The kernel does not support this call; Linux 2.6.22 or later is required."
2569 #: build/C/man3/futimes.3:93
2571 "B<futimes>() is available since glibc 2.3. B<lutimes>() is available "
2572 "since glibc 2.6, and is implemented using the B<utimensat>(2) system call, "
2573 "which is supported since kernel 2.6.22."
2577 #: build/C/man3/futimes.3:100
2578 msgid "The B<futimes>() and B<lutimes>() functions are thread-safe."
2582 #: build/C/man3/futimes.3:103
2584 "These functions are not specified in any standard. Other than Linux, they "
2585 "are available only on the BSDs."
2589 #: build/C/man3/futimes.3:107
2590 msgid "B<utime>(2), B<utimensat>(2), B<symlink>(7)"
2594 #: build/C/man2/futimesat.2:25
2600 #: build/C/man2/futimesat.2:25
2606 #: build/C/man2/futimesat.2:29
2608 "futimesat - change timestamps of a file relative to a directory file "
2613 #: build/C/man2/futimesat.2:33
2616 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
2617 "B<#include E<lt>sys/time.hE<gt>>\n"
2621 #: build/C/man2/futimesat.2:36
2624 "B<int futimesat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
2625 "B< const struct timeval >I<times>B<[2]);>\n"
2629 #: build/C/man2/futimesat.2:45
2630 msgid "B<futimesat>(): _GNU_SOURCE"
2634 #: build/C/man2/futimesat.2:50
2635 msgid "This system call is obsolete. Use B<utimensat>(2) instead."
2639 #: build/C/man2/futimesat.2:56
2641 "The B<futimesat>() system call operates in exactly the same way as "
2642 "B<utimes>(2), except for the differences described in this manual page."
2646 #: build/C/man2/futimesat.2:66
2648 "If the pathname given in I<pathname> is relative, then it is interpreted "
2649 "relative to the directory referred to by the file descriptor I<dirfd> "
2650 "(rather than relative to the current working directory of the calling "
2651 "process, as is done by B<utimes>(2) for a relative pathname)."
2655 #: build/C/man2/futimesat.2:78 build/C/man2/utimensat.2:207
2657 "If I<pathname> is relative and I<dirfd> is the special value B<AT_FDCWD>, "
2658 "then I<pathname> is interpreted relative to the current working directory of "
2659 "the calling process (like B<utimes>(2))."
2663 #: build/C/man2/futimesat.2:84 build/C/man2/utimensat.2:213
2664 msgid "If I<pathname> is absolute, then I<dirfd> is ignored."
2668 #: build/C/man2/futimesat.2:91
2670 "On success, B<futimesat>() returns a 0. On error, -1 is returned and "
2671 "I<errno> is set to indicate the error."
2675 #: build/C/man2/futimesat.2:98
2677 "The same errors that occur for B<utimes>(2) can also occur for "
2678 "B<futimesat>(). The following additional errors can occur for "
2683 #: build/C/man2/futimesat.2:102
2684 msgid "I<dirfd> is not a valid file descriptor."
2688 #: build/C/man2/futimesat.2:102 build/C/man2/utimensat.2:353
2694 #: build/C/man2/futimesat.2:108
2696 "I<pathname> is relative and I<dirfd> is a file descriptor referring to a "
2697 "file other than a directory."
2701 #: build/C/man2/futimesat.2:112
2703 "B<futimesat>() was added to Linux in kernel 2.6.16; library support was "
2704 "added to glibc in version 2.4."
2708 #: build/C/man2/futimesat.2:117
2710 "This system call is nonstandard. It was implemented from a specification "
2711 "that was proposed for POSIX.1, but that specification was replaced by the "
2712 "one for B<utimensat>(2)."
2716 #: build/C/man2/futimesat.2:119
2717 msgid "A similar system call exists on Solaris."
2721 #: build/C/man2/futimesat.2:120 build/C/man3/strftime.3:411 build/C/man3/strptime.3:342
2726 #. The Solaris futimesat() also has this strangeness.
2728 #: build/C/man2/futimesat.2:128
2730 "If I<pathname> is NULL, then the glibc B<futimesat>() wrapper function "
2731 "updates the times for the file referred to by I<dirfd>."
2735 #: build/C/man2/futimesat.2:134
2737 "B<stat>(2), B<utimensat>(2), B<utimes>(2), B<futimes>(3), "
2738 "B<path_resolution>(7)"
2742 #: build/C/man3/getdate.3:30
2748 #: build/C/man3/getdate.3:30
2754 #: build/C/man3/getdate.3:33
2755 msgid "getdate, getdate_r - convert a date-plus-time string to broken-down time"
2759 #: build/C/man3/getdate.3:37
2760 msgid "B<struct tm *getdate(const char *>I<string>B<);>"
2764 #: build/C/man3/getdate.3:39
2765 msgid "B<extern int getdate_err;>"
2769 #: build/C/man3/getdate.3:43
2770 msgid "B<int getdate_r(const char *>I<string>B<, struct tm *>I<res>B<);>"
2774 #: build/C/man3/getdate.3:50
2775 msgid "B<getdate>():"
2779 #: build/C/man3/getdate.3:54
2780 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 500 || _XOPEN_SOURCE\\ &&\\ _XOPEN_SOURCE_EXTENDED"
2784 #: build/C/man3/getdate.3:57
2785 msgid "B<getdate_r>():"
2789 #: build/C/man3/getdate.3:60 build/C/man2/utimensat.2:65
2794 #: build/C/man3/getdate.3:78
2796 "The function B<getdate>() converts a string representation of a date and "
2797 "time, contained in the buffer pointed to by I<string>, into a broken-down "
2798 "time. The broken-down time is stored in a I<tm> structure, and a pointer to "
2799 "this structure is returned as the function result. This I<tm> structure is "
2800 "allocated in static storage, and consequently it will be overwritten by "
2801 "further calls to B<getdate>()."
2805 #: build/C/man3/getdate.3:90
2807 "In contrast to B<strptime>(3), (which has a I<format> argument), "
2808 "B<getdate>() uses the formats found in the file whose full pathname is "
2809 "given in the environment variable B<DATEMSK>. The first line in the file "
2810 "that matches the given input string is used for the conversion."
2814 #: build/C/man3/getdate.3:94
2816 "The matching is done case insensitively. Superfluous whitespace, either in "
2817 "the pattern or in the string to be converted, is ignored."
2821 #: build/C/man3/getdate.3:98
2823 "The conversion specifications that a pattern can contain are those given for "
2824 "B<strptime>(3). One more conversion specification is specified in "
2829 #: build/C/man3/getdate.3:98 build/C/man3/strftime.3:270 build/C/man3/strptime.3:377 build/C/man1/time.1:175
2835 #: build/C/man3/getdate.3:102
2836 msgid "Timezone name. This is not implemented in glibc."
2840 #: build/C/man3/getdate.3:111
2842 "When B<%Z> is given, the structure containing the broken-down time is "
2843 "initialized with values corresponding to the current time in the given "
2844 "timezone. Otherwise, the structure is initialized to the broken-down time "
2845 "corresponding to the current local time (as by a call to B<localtime>(3))."
2849 #: build/C/man3/getdate.3:115
2851 "When only the day of the week is given, the day is taken to be the first "
2852 "such day on or after today."
2856 #: build/C/man3/getdate.3:119
2858 "When only the month is given (and no year), the month is taken to be the "
2859 "first such month equal to or after the current month. If no day is given, "
2860 "it is the first day of the month."
2864 #: build/C/man3/getdate.3:122
2866 "When no hour, minute and second are given, the current hour, minute and "
2871 #: build/C/man3/getdate.3:125
2873 "If no date is given, but we know the hour, then that hour is taken to be the "
2874 "first such hour equal to or after the current hour."
2878 #: build/C/man3/getdate.3:135
2880 "B<getdate_r>() is a GNU extension that provides a reentrant version of "
2881 "B<getdate>(). Rather than using a global variable to report errors and a "
2882 "static buffer to return the broken down time, it returns errors via the "
2883 "function result value, and returns the resulting broken-down time in the "
2884 "caller-allocated buffer pointed to by the argument I<res>."
2888 #: build/C/man3/getdate.3:146
2890 "When successful, B<getdate>() returns a pointer to a I<struct tm>. "
2891 "Otherwise, it returns NULL and sets the global variable I<getdate_err> to "
2892 "one of the error numbers shown below. Changes to I<errno> are unspecified."
2896 #: build/C/man3/getdate.3:151
2898 "On success B<getdate_r>() returns 0; on error it returns one of the error "
2899 "numbers shown below."
2903 #: build/C/man3/getdate.3:158
2905 "The following errors are returned via I<getdate_err> (for B<getdate>()) or "
2906 "as the function result (for B<getdate_r>()):"
2910 #: build/C/man3/getdate.3:158
2916 #: build/C/man3/getdate.3:163
2918 "The B<DATEMSK> environment variable is not defined, or its value is an empty "
2923 #: build/C/man3/getdate.3:163
2929 #: build/C/man3/getdate.3:168
2930 msgid "The template file specified by B<DATEMSK> cannot be opened for reading."
2934 #: build/C/man3/getdate.3:168
2941 #: build/C/man3/getdate.3:172
2942 msgid "Failed to get file status information."
2946 #: build/C/man3/getdate.3:172
2952 #: build/C/man3/getdate.3:175
2953 msgid "The template file is not a regular file."
2957 #: build/C/man3/getdate.3:175
2963 #: build/C/man3/getdate.3:178
2964 msgid "An error was encountered while reading the template file."
2968 #: build/C/man3/getdate.3:178
2973 #. Error 6 doesn't seem to occur in glibc
2975 #: build/C/man3/getdate.3:182
2976 msgid "Memory allocation failed (not enough memory available)."
2980 #: build/C/man3/getdate.3:182
2986 #: build/C/man3/getdate.3:185
2987 msgid "There is no line in the file that matches the input."
2991 #: build/C/man3/getdate.3:185
2997 #: build/C/man3/getdate.3:188
2998 msgid "Invalid input specification."
3002 #: build/C/man3/getdate.3:188 build/C/man3/strftime.3:355 build/C/man1/time.1:74 build/C/man8/tzselect.8:23 build/C/man3/tzset.3:176
3008 #: build/C/man3/getdate.3:189
3014 #: build/C/man3/getdate.3:192
3015 msgid "File containing format patterns."
3019 #: build/C/man3/getdate.3:192
3021 msgid "B<TZ>, B<LC_TIME>"
3025 #: build/C/man3/getdate.3:196
3026 msgid "Variables used by B<strptime>(3)."
3030 #: build/C/man3/getdate.3:201
3031 msgid "The B<getdate>() function is not thread-safe."
3035 #: build/C/man3/getdate.3:205
3036 msgid "The B<getdate_r>() function is thread-safe."
3040 #: build/C/man3/getdate.3:221
3042 "The POSIX.1-2001 specification for B<strptime>(3) contains conversion "
3043 "specifications using the B<%E> or B<%O> modifier, while such specifications "
3044 "are not given for B<getdate>(). In glibc, B<getdate>() is implemented "
3045 "using B<strptime>(3), so that precisely the same conversions are supported "
3050 #: build/C/man3/getdate.3:229
3052 "The program below calls B<getdate>() for each of its command-line "
3053 "arguments, and for each call displays the values in the fields of the "
3054 "returned I<tm> structure. The following shell session demonstrates the "
3055 "operation of the program:"
3059 #: build/C/man3/getdate.3:270
3062 "$B< TFILE=$PWD/tfile>\n"
3063 "$B< echo \\(aq%A\\(aq E<gt> $TFILE > # Full name of the day of the "
3065 "$B< echo \\(aq%T\\(aq E<gt>E<gt> $TFILE> # ISO date (YYYY-MM-DD)\n"
3066 "$B< echo \\(aq%F\\(aq E<gt>E<gt> $TFILE> # Time (HH:MM:SS)\n"
3068 "$B< export DATEMSK=$TFILE>\n"
3069 "$B< ./a.out Tuesday \\(aq2009-12-28\\(aq \\(aq12:22:33\\(aq>\n"
3070 "Sun Sep 7 06:03:36 CEST 2008\n"
3071 "Call 1 (\"Tuesday\") succeeded:\n"
3081 "Call 2 (\"2009-12-28\") succeeded:\n"
3091 "Call 3 (\"12:22:33\") succeeded:\n"
3104 #: build/C/man3/getdate.3:279
3107 "#define _GNU_SOURCE\n"
3108 "#include E<lt>time.hE<gt>\n"
3109 "#include E<lt>stdio.hE<gt>\n"
3110 "#include E<lt>stdlib.hE<gt>\n"
3114 #: build/C/man3/getdate.3:285
3118 "main(int argc, char *argv[])\n"
3120 " struct tm *tmp;\n"
3125 #: build/C/man3/getdate.3:288
3128 " for (j = 1; j E<lt> argc; j++) {\n"
3129 " tmp = getdate(argv[j]);\n"
3133 #: build/C/man3/getdate.3:294
3136 " if (tmp == NULL) {\n"
3137 " printf(\"Call %d failed; getdate_err = %d\\en\",\n"
3138 " j, getdate_err);\n"
3144 #: build/C/man3/getdate.3:306
3147 " printf(\"Call %d (\\e\"%s\\e\") succeeded:\\en\", j, argv[j]);\n"
3148 " printf(\" tm_sec = %d\\en\", tmp-E<gt>tm_sec);\n"
3149 " printf(\" tm_min = %d\\en\", tmp-E<gt>tm_min);\n"
3150 " printf(\" tm_hour = %d\\en\", tmp-E<gt>tm_hour);\n"
3151 " printf(\" tm_mday = %d\\en\", tmp-E<gt>tm_mday);\n"
3152 " printf(\" tm_mon = %d\\en\", tmp-E<gt>tm_mon);\n"
3153 " printf(\" tm_year = %d\\en\", tmp-E<gt>tm_year);\n"
3154 " printf(\" tm_wday = %d\\en\", tmp-E<gt>tm_wday);\n"
3155 " printf(\" tm_yday = %d\\en\", tmp-E<gt>tm_yday);\n"
3156 " printf(\" tm_isdst = %d\\en\", tmp-E<gt>tm_isdst);\n"
3161 #: build/C/man3/getdate.3:309
3164 " exit(EXIT_SUCCESS);\n"
3169 #: build/C/man3/getdate.3:316
3170 msgid "B<time>(2), B<localtime>(3), B<setlocale>(3), B<strftime>(3), B<strptime>(3)"
3174 #: build/C/man2/gettimeofday.2:40
3176 msgid "GETTIMEOFDAY"
3180 #: build/C/man2/gettimeofday.2:40
3186 #: build/C/man2/gettimeofday.2:43
3187 msgid "gettimeofday, settimeofday - get / set time"
3191 #: build/C/man2/gettimeofday.2:48
3193 msgid "B<int gettimeofday(struct timeval *>I<tv>B<, struct timezone *>I<tz>B<);>\n"
3197 #: build/C/man2/gettimeofday.2:51
3200 "B<int settimeofday(const struct timeval *>I<tv>B<, const struct timezone "
3205 #: build/C/man2/gettimeofday.2:60
3206 msgid "B<settimeofday>(): _BSD_SOURCE"
3210 #: build/C/man2/gettimeofday.2:72
3212 "The functions B<gettimeofday>() and B<settimeofday>() can get and set the "
3213 "time as well as a timezone. The I<tv> argument is a I<struct timeval> (as "
3214 "specified in I<E<lt>sys/time.hE<gt>>):"
3218 #: build/C/man2/gettimeofday.2:88
3220 "and gives the number of seconds and microseconds since the Epoch (see "
3221 "B<time>(2)). The I<tz> argument is a I<struct timezone>:"
3225 #: build/C/man2/gettimeofday.2:95
3228 "struct timezone {\n"
3229 " int tz_minuteswest; /* minutes west of Greenwich */\n"
3230 " int tz_dsttime; /* type of DST correction */\n"
3234 #. FIXME . The compilation warning looks to be going away in 2.17
3235 #. see glibc commit 4b7634a5e03b0da6f8875de9d3f74c1cf6f2a6e8
3236 #. The following is covered under EPERM below:
3238 #. Only the superuser may use
3239 #. .BR settimeofday ().
3241 #: build/C/man2/gettimeofday.2:112
3243 "If either I<tv> or I<tz> is NULL, the corresponding structure is not set or "
3244 "returned. (However, compilation warnings will result if I<tv> is NULL.)"
3248 #: build/C/man2/gettimeofday.2:119
3250 "The use of the I<timezone> structure is obsolete; the I<tz> argument should "
3251 "normally be specified as NULL. (See NOTES below.)"
3255 #: build/C/man2/gettimeofday.2:138
3257 "Under Linux, there are some peculiar \"warp clock\" semantics associated "
3258 "with the B<settimeofday>() system call if on the very first call (after "
3259 "booting) that has a non-NULL I<tz> argument, the I<tv> argument is NULL and "
3260 "the I<tz_minuteswest> field is nonzero. (The I<tz_dsttime> field should be "
3261 "zero for this case.) In such a case it is assumed that the CMOS clock is on "
3262 "local time, and that it has to be incremented by this amount to get UTC "
3263 "system time. No doubt it is a bad idea to use this feature."
3267 #: build/C/man2/gettimeofday.2:145
3269 "B<gettimeofday>() and B<settimeofday>() return 0 for success, or -1 for "
3270 "failure (in which case I<errno> is set appropriately)."
3274 #: build/C/man2/gettimeofday.2:153
3275 msgid "One of I<tv> or I<tz> pointed outside the accessible address space."
3279 #: build/C/man2/gettimeofday.2:156
3280 msgid "Timezone (or something else) is invalid."
3284 #: build/C/man2/gettimeofday.2:163
3286 "The calling process has insufficient privilege to call B<settimeofday>(); "
3287 "under Linux the B<CAP_SYS_TIME> capability is required."
3291 #: build/C/man2/gettimeofday.2:174
3293 "SVr4, 4.3BSD. POSIX.1-2001 describes B<gettimeofday>() but not "
3294 "B<settimeofday>(). POSIX.1-2008 marks B<gettimeofday>() as obsolete, "
3295 "recommending the use of B<clock_gettime>(2) instead."
3299 #: build/C/man2/gettimeofday.2:182
3301 "The time returned by B<gettimeofday>() I<is> affected by discontinuous "
3302 "jumps in the system time (e.g., if the system administrator manually changes "
3303 "the system time). If you need a monotonically increasing clock, see "
3304 "B<clock_gettime>(2)."
3308 #: build/C/man2/gettimeofday.2:187
3310 "Macros for operating on I<timeval> structures are described in "
3315 #: build/C/man2/gettimeofday.2:192
3316 msgid "Traditionally, the fields of I<struct timeval> were of type I<long>."
3320 #. been and will not be supported by libc or glibc.
3321 #. Each and every occurrence of this field in the kernel source
3322 #. (other than the declaration) is a bug.
3324 #: build/C/man2/gettimeofday.2:202
3326 "The I<tz_dsttime> field has never been used under Linux. Thus, the "
3327 "following is purely of historic interest."
3331 #: build/C/man2/gettimeofday.2:212
3333 "On old systems, the field I<tz_dsttime> contains a symbolic constant (values "
3334 "are given below) that indicates in which part of the year Daylight Saving "
3335 "Time is in force. (Note: this value is constant throughout the year: it "
3336 "does not indicate that DST is in force, it just selects an algorithm.) The "
3337 "daylight saving time algorithms defined are as follows:"
3341 #: build/C/man2/gettimeofday.2:216
3343 msgid "B<DST_NONE> /* not on DST */\n"
3347 #: build/C/man2/gettimeofday.2:218
3349 msgid "B<DST_USA> /* USA style DST */\n"
3353 #: build/C/man2/gettimeofday.2:220
3355 msgid "B<DST_AUST> /* Australian style DST */\n"
3359 #: build/C/man2/gettimeofday.2:222
3361 msgid "B<DST_WET> /* Western European DST */\n"
3365 #: build/C/man2/gettimeofday.2:224
3367 msgid "B<DST_MET> /* Middle European DST */\n"
3371 #: build/C/man2/gettimeofday.2:226
3373 msgid "B<DST_EET> /* Eastern European DST */\n"
3377 #: build/C/man2/gettimeofday.2:228
3379 msgid "B<DST_CAN> /* Canada */\n"
3383 #: build/C/man2/gettimeofday.2:230
3385 msgid "B<DST_GB> /* Great Britain and Eire */\n"
3389 #: build/C/man2/gettimeofday.2:232
3391 msgid "B<DST_RUM> /* Romania */\n"
3395 #: build/C/man2/gettimeofday.2:234
3397 msgid "B<DST_TUR> /* Turkey */\n"
3401 #: build/C/man2/gettimeofday.2:236
3403 msgid "B<DST_AUSTALT> /* Australian style with shift in 1986 */\n"
3407 #: build/C/man2/gettimeofday.2:246
3409 "Of course it turned out that the period in which Daylight Saving Time is in "
3410 "force cannot be given by a simple algorithm, one per country; indeed, this "
3411 "period is determined by unpredictable political decisions. So this method "
3412 "of representing timezones has been abandoned."
3416 #: build/C/man2/gettimeofday.2:256
3418 "B<date>(1), B<adjtimex>(2), B<clock_gettime>(2), B<time>(2), B<ctime>(3), "
3419 "B<ftime>(3), B<timeradd>(3), B<capabilities>(7), B<time>(7)"
3423 #: build/C/man2/nanosleep.2:34
3429 #: build/C/man2/nanosleep.2:34
3435 #: build/C/man2/nanosleep.2:37
3436 msgid "nanosleep - high-resolution sleep"
3440 #: build/C/man2/nanosleep.2:41
3442 "B<int nanosleep(const struct timespec *>I<req>B<, struct timespec "
3447 #: build/C/man2/nanosleep.2:49
3448 msgid "B<nanosleep>(): _POSIX_C_SOURCE\\ E<gt>=\\ 199309L"
3452 #: build/C/man2/nanosleep.2:57
3454 "B<nanosleep>() suspends the execution of the calling thread until either at "
3455 "least the time specified in I<*req> has elapsed, or the delivery of a signal "
3456 "that triggers the invocation of a handler in the calling thread or that "
3457 "terminates the process."
3461 #: build/C/man2/nanosleep.2:74
3463 "If the call is interrupted by a signal handler, B<nanosleep>() returns -1, "
3464 "sets I<errno> to B<EINTR>, and writes the remaining time into the structure "
3465 "pointed to by I<rem> unless I<rem> is NULL. The value of I<*rem> can then "
3466 "be used to call B<nanosleep>() again and complete the specified pause (but "
3471 #: build/C/man2/nanosleep.2:79
3473 "The structure I<timespec> is used to specify intervals of time with "
3474 "nanosecond precision. It is defined as follows:"
3478 #: build/C/man2/nanosleep.2:86 build/C/man2/utimensat.2:108
3481 "struct timespec {\n"
3482 " time_t tv_sec; /* seconds */\n"
3483 " long tv_nsec; /* nanoseconds */\n"
3488 #: build/C/man2/nanosleep.2:90
3489 msgid "The value of the nanoseconds field must be in the range 0 to 999999999."
3493 #: build/C/man2/nanosleep.2:102
3495 "Compared to B<sleep>(3) and B<usleep>(3), B<nanosleep>() has the following "
3496 "advantages: it provides a higher resolution for specifying the sleep "
3497 "interval; POSIX.1 explicitly specifies that it does not interact with "
3498 "signals; and it makes the task of resuming a sleep that has been interrupted "
3499 "by a signal handler easier."
3503 #: build/C/man2/nanosleep.2:110
3505 "On successfully sleeping for the requested interval, B<nanosleep>() returns "
3506 "0. If the call is interrupted by a signal handler or encounters an error, "
3507 "then it returns -1, with I<errno> set to indicate the error."
3511 #: build/C/man2/nanosleep.2:114
3512 msgid "Problem with copying information from user space."
3516 #: build/C/man2/nanosleep.2:124
3518 "The pause has been interrupted by a signal that was delivered to the "
3519 "thread. The remaining sleep time has been written into I<*rem> so that the "
3520 "thread can easily call B<nanosleep>() again and continue with the pause."
3524 #: build/C/man2/nanosleep.2:141
3526 "If the interval specified in I<req> is not an exact multiple of the "
3527 "granularity underlying clock (see B<time>(7)), then the interval will be "
3528 "rounded up to the next multiple. Furthermore, after the sleep completes, "
3529 "there may still be a delay before the CPU becomes free to once again execute "
3530 "the calling thread."
3534 #: build/C/man2/nanosleep.2:151
3536 "The fact that B<nanosleep>() sleeps for a relative interval can be "
3537 "problematic if the call is repeatedly restarted after being interrupted by "
3538 "signals, since the time between the interruptions and restarts of the call "
3539 "will lead to drift in the time when the sleep finally completes. This "
3540 "problem can be avoided by using B<clock_nanosleep>(2) with an absolute time "
3544 #. See also http://thread.gmane.org/gmane.linux.kernel/696854/
3545 #. Subject: nanosleep() uses CLOCK_MONOTONIC, should be CLOCK_REALTIME?
3546 #. Date: 2008-06-22 07:35:41 GMT
3548 #: build/C/man2/nanosleep.2:169
3550 "POSIX.1 specifies that B<nanosleep>() should measure time against the "
3551 "B<CLOCK_REALTIME> clock. However, Linux measures the time using the "
3552 "B<CLOCK_MONOTONIC> clock. This probably does not matter, since the POSIX.1 "
3553 "specification for B<clock_settime>(2) says that discontinuous changes in "
3554 "B<CLOCK_REALTIME> should not affect B<nanosleep>():"
3558 #: build/C/man2/nanosleep.2:182
3560 "Setting the value of the B<CLOCK_REALTIME> clock via B<clock_settime>(2) "
3561 "shall have no effect on threads that are blocked waiting for a relative time "
3562 "service based upon this clock, including the B<nanosleep>() function; ... "
3563 "Consequently, these time services shall expire when the requested relative "
3564 "interval elapses, independently of the new or old value of the clock."
3568 #: build/C/man2/nanosleep.2:183
3570 msgid "Old behavior"
3574 #: build/C/man2/nanosleep.2:196
3576 "In order to support applications requiring much more precise pauses (e.g., "
3577 "in order to control some time-critical hardware), B<nanosleep>() would "
3578 "handle pauses of up to 2\\ ms by busy waiting with microsecond precision "
3579 "when called from a thread scheduled under a real-time policy like "
3580 "B<SCHED_FIFO> or B<SCHED_RR>. This special extension was removed in kernel "
3581 "2.5.39, hence is still present in current 2.4 kernels, but not in 2.6 "
3586 #: build/C/man2/nanosleep.2:210
3588 "In Linux 2.4, if B<nanosleep>() is stopped by a signal (e.g., B<SIGTSTP>), "
3589 "then the call fails with the error B<EINTR> after the thread is resumed by a "
3590 "B<SIGCONT> signal. If the system call is subsequently restarted, then the "
3591 "time that the thread spent in the stopped state is I<not> counted against "
3592 "the sleep interval."
3596 #: build/C/man2/nanosleep.2:218
3598 "B<clock_nanosleep>(2), B<restart_syscall>(2), B<sched_setscheduler>(2), "
3599 "B<timer_create>(2), B<sleep>(3), B<usleep>(3), B<time>(7)"
3603 #: build/C/man4/rtc.4:30
3609 #: build/C/man4/rtc.4:30 build/C/man3/timeradd.3:27 build/C/man8/zic.8:5
3615 #: build/C/man4/rtc.4:33
3616 msgid "rtc - real-time clock"
3620 #: build/C/man4/rtc.4:35
3621 msgid "#include E<lt>linux/rtc.hE<gt>"
3625 #: build/C/man4/rtc.4:37
3626 msgid "B<int ioctl(>I<fd>B<, RTC_>I<request>B<, >I<param>B<);>"
3630 #: build/C/man4/rtc.4:39
3631 msgid "This is the interface to drivers for real-time clocks (RTCs)."
3635 #: build/C/man4/rtc.4:46
3637 "Most computers have one or more hardware clocks which record the current "
3638 "\"wall clock\" time. These are called \"Real Time Clocks\" (RTCs). One of "
3639 "these usually has battery backup power so that it tracks the time even while "
3640 "the computer is turned off. RTCs often provide alarms and other interrupts."
3644 #: build/C/man4/rtc.4:51
3646 "All i386 PCs, and ACPI-based systems, have an RTC that is compatible with "
3647 "the Motorola MC146818 chip on the original PC/AT. Today such an RTC is "
3648 "usually integrated into the mainboard's chipset (south bridge), and uses a "
3649 "replaceable coin-sized backup battery."
3653 #: build/C/man4/rtc.4:55
3655 "Non-PC systems, such as embedded systems built around system-on-chip "
3656 "processors, use other implementations. They usually won't offer the same "
3657 "functionality as the RTC from a PC/AT."
3661 #: build/C/man4/rtc.4:55
3663 msgid "RTC vs system clock"
3667 #: build/C/man4/rtc.4:67
3669 "RTCs should not be confused with the system clock, which is a software clock "
3670 "maintained by the kernel and used to implement B<gettimeofday>(2) and "
3671 "B<time>(2), as well as setting timestamps on files, and so on. The system "
3672 "clock reports seconds and microseconds since a start point, defined to be "
3673 "the POSIX Epoch: 1970-01-01 00:00:00 +0000 (UTC). (One common "
3674 "implementation counts timer interrupts, once per \"jiffy\", at a frequency "
3675 "of 100, 250, or 1000 Hz.) That is, it is supposed to report wall clock "
3676 "time, which RTCs also do."
3680 #: build/C/man4/rtc.4:77
3682 "A key difference between an RTC and the system clock is that RTCs run even "
3683 "when the system is in a low power state (including \"off\"), and the system "
3684 "clock can't. Until it is initialized, the system clock can only report time "
3685 "since system boot ... not since the POSIX Epoch. So at boot time, and after "
3686 "resuming from a system low power state, the system clock will often be set "
3687 "to the current wall clock time using an RTC. Systems without an RTC need to "
3688 "set the system clock using another clock, maybe across the network or by "
3689 "entering that data manually."
3693 #: build/C/man4/rtc.4:77
3695 msgid "RTC functionality"
3699 #: build/C/man4/rtc.4:81
3701 "RTCs can be read and written with B<hwclock>(8), or directly with the ioctl "
3702 "requests listed below."
3706 #: build/C/man4/rtc.4:84
3707 msgid "Besides tracking the date and time, many RTCs can also generate interrupts"
3711 #: build/C/man4/rtc.4:84 build/C/man4/rtc.4:86 build/C/man4/rtc.4:89 build/C/man2/utimensat.2:246 build/C/man2/utimensat.2:277 build/C/man2/utimensat.2:384 build/C/man2/utimensat.2:390 build/C/man2/utimensat.2:480 build/C/man2/utimensat.2:495 build/C/man2/utimensat.2:597
3717 #: build/C/man4/rtc.4:86
3718 msgid "on every clock update (i.e., once per second);"
3722 #: build/C/man4/rtc.4:89
3724 "at periodic intervals with a frequency that can be set to any power-of-2 "
3725 "multiple in the range 2 Hz to 8192 Hz;"
3729 #: build/C/man4/rtc.4:91
3730 msgid "on reaching a previously specified alarm time."
3734 #: build/C/man4/rtc.4:100
3736 "Each of those interrupt sources can be enabled or disabled separately. On "
3737 "many systems, the alarm interrupt can be configured as a system wakeup "
3738 "event, which can resume the system from a low power state such as "
3739 "Suspend-to-RAM (STR, called S3 in ACPI systems), Hibernation (called S4 in "
3740 "ACPI systems), or even \"off\" (called S5 in ACPI systems). On some "
3741 "systems, the battery backed RTC can't issue interrupts, but another one can."
3745 #: build/C/man4/rtc.4:120
3747 "The I</dev/rtc> (or I</dev/rtc0>, I</dev/rtc1>, etc.) device can be opened "
3748 "only once (until it is closed) and it is read-only. On B<read>(2) and "
3749 "B<select>(2) the calling process is blocked until the next interrupt from "
3750 "that RTC is received. Following the interrupt, the process can read a long "
3751 "integer, of which the least significant byte contains a bit mask encoding "
3752 "the types of interrupt that occurred, while the remaining 3 bytes contain "
3753 "the number of interrupts since the last B<read>(2)."
3757 #: build/C/man4/rtc.4:120
3759 msgid "ioctl(2) interface"
3763 #: build/C/man4/rtc.4:124
3765 "The following B<ioctl>(2) requests are defined on file descriptors "
3766 "connected to RTC devices:"
3770 #: build/C/man4/rtc.4:124
3772 msgid "B<RTC_RD_TIME>"
3776 #: build/C/man4/rtc.4:127
3777 msgid "Returns this RTC's time in the following structure:"
3781 #: build/C/man4/rtc.4:141
3784 "struct rtc_time {\n"
3791 " int tm_wday; /* unused */\n"
3792 " int tm_yday; /* unused */\n"
3793 " int tm_isdst; /* unused */\n"
3798 #: build/C/man4/rtc.4:151
3800 "The fields in this structure have the same meaning and ranges as for the "
3801 "I<tm> structure described in B<gmtime>(3). A pointer to this structure "
3802 "should be passed as the third B<ioctl>(2) argument."
3806 #: build/C/man4/rtc.4:151
3808 msgid "B<RTC_SET_TIME>"
3812 #: build/C/man4/rtc.4:162
3814 "Sets this RTC's time to the time specified by the I<rtc_time> structure "
3815 "pointed to by the third B<ioctl>(2) argument. To set the RTC's time the "
3816 "process must be privileged (i.e., have the B<CAP_SYS_TIME> capability)."
3820 #: build/C/man4/rtc.4:162
3822 msgid "B<RTC_ALM_READ>, B<RTC_ALM_SET>"
3826 #: build/C/man4/rtc.4:179
3828 "Read and set the alarm time, for RTCs that support alarms. The alarm "
3829 "interrupt must be separately enabled or disabled using the B<RTC_AIE_ON>, "
3830 "B<RTC_AIE_OFF> requests. The third B<ioctl>(2) argument is a pointer to an "
3831 "I<rtc_time> structure. Only the I<tm_sec>, I<tm_min>, and I<tm_hour> fields "
3832 "of this structure are used."
3836 #: build/C/man4/rtc.4:179
3838 msgid "B<RTC_IRQP_READ>, B<RTC_IRQP_SET>"
3842 #: build/C/man4/rtc.4:201
3844 "Read and set the frequency for periodic interrupts, for RTCs that support "
3845 "periodic interrupts. The periodic interrupt must be separately enabled or "
3846 "disabled using the B<RTC_PIE_ON>, B<RTC_PIE_OFF> requests. The third "
3847 "B<ioctl>(2) argument is an I<unsigned long\\ *> or an I<unsigned long>, "
3848 "respectively. The value is the frequency in interrupts per second. The set "
3849 "of allowable frequencies is the multiples of two in the range 2 to 8192. "
3850 "Only a privileged process (i.e., one having the B<CAP_SYS_RESOURCE> "
3851 "capability) can set frequencies above the value specified in "
3852 "I</proc/sys/dev/rtc/max-user-freq>. (This file contains the value 64 by "
3857 #: build/C/man4/rtc.4:201
3859 msgid "B<RTC_AIE_ON>, B<RTC_AIE_OFF>"
3863 #: build/C/man4/rtc.4:207
3865 "Enable or disable the alarm interrupt, for RTCs that support alarms. The "
3866 "third B<ioctl>(2) argument is ignored."
3870 #: build/C/man4/rtc.4:207
3872 msgid "B<RTC_UIE_ON>, B<RTC_UIE_OFF>"
3876 #: build/C/man4/rtc.4:214
3878 "Enable or disable the interrupt on every clock update, for RTCs that support "
3879 "this once-per-second interrupt. The third B<ioctl>(2) argument is ignored."
3883 #: build/C/man4/rtc.4:214
3885 msgid "B<RTC_PIE_ON>, B<RTC_PIE_OFF>"
3889 #: build/C/man4/rtc.4:226
3891 "Enable or disable the periodic interrupt, for RTCs that support these "
3892 "periodic interrupts. The third B<ioctl>(2) argument is ignored. Only a "
3893 "privileged process (i.e., one having the B<CAP_SYS_RESOURCE> capability) can "
3894 "enable the periodic interrupt if the frequency is currently set above the "
3895 "value specified in I</proc/sys/dev/rtc/max-user-freq>."
3899 #: build/C/man4/rtc.4:226
3901 msgid "B<RTC_EPOCH_READ>, B<RTC_EPOCH_SET>"
3905 #: build/C/man4/rtc.4:249
3907 "Many RTCs encode the year in an 8-bit register which is either interpreted "
3908 "as an 8-bit binary number or as a BCD number. In both cases, the number is "
3909 "interpreted relative to this RTC's Epoch. The RTC's Epoch is initialized to "
3910 "1900 on most systems but on Alpha and MIPS it might also be initialized to "
3911 "1952, 1980, or 2000, depending on the value of an RTC register for the "
3912 "year. With some RTCs, these operations can be used to read or to set the "
3913 "RTC's Epoch, respectively. The third B<ioctl>(2) argument is a I<unsigned "
3914 "long\\ *> or a I<unsigned long>, respectively, and the value returned (or "
3915 "assigned) is the Epoch. To set the RTC's Epoch the process must be "
3916 "privileged (i.e., have the B<CAP_SYS_TIME> capability)."
3920 #: build/C/man4/rtc.4:249
3922 msgid "B<RTC_WKALM_RD>, B<RTC_WKALM_SET>"
3926 #: build/C/man4/rtc.4:253
3928 "Some RTCs support a more powerful alarm interface, using these ioctls to "
3929 "read or write the RTC's alarm time (respectively) with this structure:"
3933 #: build/C/man4/rtc.4:262
3936 "struct rtc_wkalrm {\n"
3937 " unsigned char enabled;\n"
3938 " unsigned char pending;\n"
3939 " struct rtc_time time;\n"
3944 #: build/C/man4/rtc.4:294
3946 "The I<enabled> flag is used to enable or disable the alarm interrupt, or to "
3947 "read its current status; when using these calls, B<RTC_AIE_ON> and "
3948 "B<RTC_AIE_OFF> are not used. The I<pending> flag is used by B<RTC_WKALM_RD> "
3949 "to report a pending interrupt (so it's mostly useless on Linux, except when "
3950 "talking to the RTC managed by EFI firmware). The I<time> field is as used "
3951 "with B<RTC_ALM_READ> and B<RTC_ALM_SET> except that the I<tm_mday>, "
3952 "I<tm_mon>, and I<tm_year> fields are also valid. A pointer to this "
3953 "structure should be passed as the third B<ioctl>(2) argument."
3957 #: build/C/man4/rtc.4:294 build/C/man8/tzselect.8:35 build/C/man3/tzset.3:185 build/C/man8/zic.8:410
3963 #: build/C/man4/rtc.4:299
3965 "I</dev/rtc>, I</dev/rtc0>, I</dev/rtc1>, etc: RTC special character device "
3970 #: build/C/man4/rtc.4:302
3971 msgid "I</proc/driver/rtc>: status of the (first) RTC."
3975 #: build/C/man4/rtc.4:309
3977 "When the kernel's system time is synchronized with an external reference "
3978 "using B<adjtimex>(2) it will update a designated RTC periodically every 11 "
3979 "minutes. To do so, the kernel has to briefly turn off periodic interrupts; "
3980 "this might affect programs using that RTC."
3984 #: build/C/man4/rtc.4:312
3986 "An RTC's Epoch has nothing to do with the POSIX Epoch which is used only for "
3991 #: build/C/man4/rtc.4:316
3993 "If the year according to the RTC's Epoch and the year register is less than "
3994 "1970 it is assumed to be 100 years later, that is, between 2000 and 2069."
3998 #: build/C/man4/rtc.4:323
4000 "Some RTCs support \"wildcard\" values in alarm fields, to support scenarios "
4001 "like periodic alarms at fifteen minutes after every hour, or on the first "
4002 "day of each month. Such usage is nonportable; portable user-space code "
4003 "expects only a single alarm interrupt, and will either disable or "
4004 "reinitialize the alarm after receiving it."
4008 #: build/C/man4/rtc.4:331
4010 "Some RTCs support periodic interrupts with periods that are multiples of a "
4011 "second rather than fractions of a second; multiple alarms; programmable "
4012 "output clock signals; nonvolatile memory; and other hardware capabilities "
4013 "that are not currently exposed by this API."
4017 #: build/C/man4/rtc.4:341
4019 "B<date>(1), B<adjtimex>(2), B<gettimeofday>(2), B<settimeofday>(2), "
4020 "B<stime>(2), B<time>(2), B<gmtime>(3), B<time>(7), B<hwclock>(8)"
4024 #: build/C/man4/rtc.4:344
4025 msgid "I<Documentation/rtc.txt> in the Linux kernel source tree"
4029 #: build/C/man2/stime.2:30
4035 #: build/C/man2/stime.2:30
4041 #: build/C/man2/stime.2:33
4042 msgid "stime - set time"
4046 #: build/C/man2/stime.2:37
4047 msgid "B<int stime(const time_t *>I<t>B<);>"
4051 #: build/C/man2/stime.2:45
4052 msgid "B<stime>(): _SVID_SOURCE"
4056 #: build/C/man2/stime.2:53
4058 "B<stime>() sets the system's idea of the time and date. The time, pointed "
4059 "to by I<t>, is measured in seconds since the Epoch, 1970-01-01 00:00:00 "
4060 "+0000 (UTC). B<stime>() may be executed only by the superuser."
4064 #: build/C/man2/stime.2:62
4065 msgid "Error in getting information from user space."
4069 #: build/C/man2/stime.2:68
4071 "The calling process has insufficient privilege. Under Linux, the "
4072 "B<CAP_SYS_TIME> privilege is required."
4076 #: build/C/man2/stime.2:70
4081 #: build/C/man2/stime.2:74
4082 msgid "B<date>(1), B<settimeofday>(2), B<capabilities>(7)"
4086 #: build/C/man3/strftime.3:37
4092 #: build/C/man3/strftime.3:40
4093 msgid "strftime - format date and time"
4097 #: build/C/man3/strftime.3:46
4100 "B<size_t strftime(char *>I<s>B<, size_t >I<max>B<, const char "
4102 "B< const struct tm *>I<tm>B<);>\n"
4105 #. FIXME . POSIX says: Local timezone information is used as though
4106 #. strftime() called tzset(). But this doesn't appear to be the case
4108 #: build/C/man3/strftime.3:61
4110 "The B<strftime>() function formats the broken-down time I<tm> according to "
4111 "the format specification I<format> and places the result in the character "
4112 "array I<s> of size I<max>."
4116 #: build/C/man3/strftime.3:70
4118 "The format specification is a null-terminated string and may contain special "
4119 "character sequences called I<conversion specifications>, each of which is "
4120 "introduced by a \\(aq%\\(aq character and terminated by some other character "
4121 "known as a I<conversion specifier character>. All other character sequences "
4122 "are I<ordinary character sequences>."
4126 #: build/C/man3/strftime.3:78
4128 "The characters of ordinary character sequences (including the null byte) "
4129 "are copied verbatim from I<format> to I<s>. However, the characters of "
4130 "conversion specifications are replaced as follows:"
4134 #: build/C/man3/strftime.3:78
4140 #: build/C/man3/strftime.3:81
4141 msgid "The abbreviated name of the day of the week according to the current locale."
4145 #: build/C/man3/strftime.3:81
4151 #: build/C/man3/strftime.3:84
4152 msgid "The full name of the day of the week according to the current locale."
4156 #: build/C/man3/strftime.3:84
4162 #: build/C/man3/strftime.3:87
4163 msgid "The abbreviated month name according to the current locale."
4167 #: build/C/man3/strftime.3:87
4173 #: build/C/man3/strftime.3:90
4174 msgid "The full month name according to the current locale."
4178 #: build/C/man3/strftime.3:90 build/C/man3/strptime.3:127 build/C/man1/time.1:193
4184 #: build/C/man3/strftime.3:93
4185 msgid "The preferred date and time representation for the current locale."
4189 #: build/C/man3/strftime.3:93 build/C/man3/strptime.3:130 build/C/man1/time.1:218
4195 #: build/C/man3/strftime.3:96
4196 msgid "The century number (year/100) as a 2-digit integer. (SU)"
4200 #: build/C/man3/strftime.3:96
4206 #: build/C/man3/strftime.3:99
4207 msgid "The day of the month as a decimal number (range 01 to 31)."
4211 #: build/C/man3/strftime.3:99 build/C/man3/strptime.3:136 build/C/man1/time.1:166
4217 #: build/C/man3/strftime.3:109
4219 "Equivalent to B<%m/%d/%y>. (Yecch\\(emfor Americans only. Americans should "
4220 "note that in other countries B<%d/%m/%y> is rather common. This means that "
4221 "in international context this format is ambiguous and should not be used.) "
4226 #: build/C/man3/strftime.3:109 build/C/man1/time.1:142
4232 #: build/C/man3/strftime.3:115
4234 "Like B<%d>, the day of the month as a decimal number, but a leading zero is "
4235 "replaced by a space. (SU)"
4239 #: build/C/man3/strftime.3:115 build/C/man1/time.1:139
4245 #: build/C/man3/strftime.3:118 build/C/man3/strftime.3:177
4246 msgid "Modifier: use alternative format, see below. (SU)"
4250 #: build/C/man3/strftime.3:118 build/C/man3/strptime.3:351 build/C/man1/time.1:179
4256 #: build/C/man3/strftime.3:123
4257 msgid "Equivalent to B<%Y-%m-%d> (the ISO\\ 8601 date format). (C99)"
4261 #: build/C/man3/strftime.3:123 build/C/man3/strptime.3:360
4267 #: build/C/man3/strftime.3:132
4269 "The ISO\\ 8601 week-based year (see NOTES) with century as a decimal "
4270 "number. The 4-digit year corresponding to the ISO week number (see B<%V>). "
4271 "This has the same format and value as B<%Y>, except that if the ISO week "
4272 "number belongs to the previous or next year, that year is used instead. (TZ)"
4276 #: build/C/man3/strftime.3:132 build/C/man3/strptime.3:356
4282 #: build/C/man3/strftime.3:137
4283 msgid "Like B<%G>, but without century, that is, with a 2-digit year (00-99). (TZ)"
4287 #: build/C/man3/strftime.3:137
4293 #: build/C/man3/strftime.3:142
4294 msgid "Equivalent to B<%b>. (SU)"
4298 #: build/C/man3/strftime.3:142 build/C/man3/strptime.3:146
4304 #: build/C/man3/strftime.3:145
4305 msgid "The hour as a decimal number using a 24-hour clock (range 00 to 23)."
4309 #: build/C/man3/strftime.3:145 build/C/man3/strptime.3:149 build/C/man1/time.1:203
4315 #: build/C/man3/strftime.3:148
4316 msgid "The hour as a decimal number using a 12-hour clock (range 01 to 12)."
4320 #: build/C/man3/strftime.3:148 build/C/man3/strptime.3:152
4326 #: build/C/man3/strftime.3:151
4327 msgid "The day of the year as a decimal number (range 001 to 366)."
4331 #: build/C/man3/strftime.3:151 build/C/man1/time.1:215
4337 #: build/C/man3/strftime.3:158
4339 "The hour (24-hour clock) as a decimal number (range 0 to 23); single digits "
4340 "are preceded by a blank. (See also B<%H>.) (TZ)"
4344 #: build/C/man3/strftime.3:158
4350 #: build/C/man3/strftime.3:165
4352 "The hour (12-hour clock) as a decimal number (range 1 to 12); single digits "
4353 "are preceded by a blank. (See also B<%I>.) (TZ)"
4357 #: build/C/man3/strftime.3:165 build/C/man3/strptime.3:155
4363 #: build/C/man3/strftime.3:168
4364 msgid "The month as a decimal number (range 01 to 12)."
4368 #: build/C/man3/strftime.3:168 build/C/man3/strptime.3:158 build/C/man1/time.1:156
4374 #: build/C/man3/strftime.3:171
4375 msgid "The minute as a decimal number (range 00 to 59)."
4379 #: build/C/man3/strftime.3:171 build/C/man3/strptime.3:161
4385 #: build/C/man3/strftime.3:174
4386 msgid "A newline character. (SU)"
4390 #: build/C/man3/strftime.3:174 build/C/man1/time.1:206
4396 #: build/C/man3/strftime.3:177 build/C/man3/strptime.3:164 build/C/man1/time.1:169
4402 #: build/C/man3/strftime.3:182
4404 "Either \"AM\" or \"PM\" according to the given time value, or the "
4405 "corresponding strings for the current locale. Noon is treated as \"PM\" and "
4406 "midnight as \"AM\"."
4410 #: build/C/man3/strftime.3:182 build/C/man1/time.1:151
4416 #: build/C/man3/strftime.3:188
4418 "Like B<%p> but in lowercase: \"am\" or \"pm\" or a corresponding string for "
4419 "the current locale. (GNU)"
4423 #: build/C/man3/strftime.3:188 build/C/man3/strptime.3:168 build/C/man1/time.1:209
4429 #: build/C/man3/strftime.3:194
4431 "The time in a.m. or p.m. notation. In the POSIX locale this is equivalent "
4432 "to B<%I:%M:%S %p>. (SU)"
4436 #: build/C/man3/strftime.3:194 build/C/man3/strptime.3:179 build/C/man1/time.1:183
4442 #: build/C/man3/strftime.3:202
4444 "The time in 24-hour notation (B<%H:%M>). (SU) For a version including the "
4445 "seconds, see B<%T> below."
4449 #: build/C/man3/strftime.3:202 build/C/man3/strptime.3:396 build/C/man1/time.1:212
4455 #: build/C/man3/strftime.3:205
4456 msgid "The number of seconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC). (TZ)"
4460 #: build/C/man3/strftime.3:205 build/C/man3/strptime.3:183 build/C/man1/time.1:145
4466 #: build/C/man3/strftime.3:209
4468 "The second as a decimal number (range 00 to 60). (The range is up to 60 to "
4469 "allow for occasional leap seconds.)"
4473 #: build/C/man3/strftime.3:209 build/C/man3/strptime.3:187 build/C/man1/time.1:159
4479 #: build/C/man3/strftime.3:212
4480 msgid "A tab character. (SU)"
4484 #: build/C/man3/strftime.3:212 build/C/man3/strptime.3:190
4490 #: build/C/man3/strftime.3:217
4491 msgid "The time in 24-hour notation (B<%H:%M:%S>). (SU)"
4495 #: build/C/man3/strftime.3:217 build/C/man3/strptime.3:364
4501 #: build/C/man3/strftime.3:223
4503 "The day of the week as a decimal, range 1 to 7, Monday being 1. See also "
4508 #: build/C/man3/strftime.3:223 build/C/man3/strptime.3:194 build/C/man1/time.1:148
4514 #: build/C/man3/strftime.3:232
4516 "The week number of the current year as a decimal number, range 00 to 53, "
4517 "starting with the first Sunday as the first day of week 01. See also B<%V> "
4522 #: build/C/man3/strftime.3:232 build/C/man3/strptime.3:367
4528 #: build/C/man3/strftime.3:242
4530 "The ISO\\ 8601 week number (see NOTES) of the current year as a decimal "
4531 "number, range 01 to 53, where week 1 is the first week that has at least 4 "
4532 "days in the new year. See also B<%U> and B<%W>. (SU)"
4536 #: build/C/man3/strftime.3:242 build/C/man3/strptime.3:198 build/C/man1/time.1:197
4542 #: build/C/man3/strftime.3:247
4544 "The day of the week as a decimal, range 0 to 6, Sunday being 0. See also "
4549 #: build/C/man3/strftime.3:247 build/C/man3/strptime.3:201 build/C/man1/time.1:190
4555 #: build/C/man3/strftime.3:251
4557 "The week number of the current year as a decimal number, range 00 to 53, "
4558 "starting with the first Monday as the first day of week 01."
4562 #: build/C/man3/strftime.3:251 build/C/man3/strptime.3:205 build/C/man1/time.1:221
4568 #: build/C/man3/strftime.3:254
4569 msgid "The preferred date representation for the current locale without the time."
4573 #: build/C/man3/strftime.3:254 build/C/man3/strptime.3:208 build/C/man1/time.1:172
4579 #: build/C/man3/strftime.3:257
4580 msgid "The preferred time representation for the current locale without the date."
4584 #: build/C/man3/strftime.3:257 build/C/man3/strptime.3:211
4590 #: build/C/man3/strftime.3:260
4591 msgid "The year as a decimal number without a century (range 00 to 99)."
4595 #: build/C/man3/strftime.3:260 build/C/man3/strptime.3:217
4601 #: build/C/man3/strftime.3:263
4602 msgid "The year as a decimal number including the century."
4606 #: build/C/man3/strftime.3:263 build/C/man3/strptime.3:374
4612 #: build/C/man3/strftime.3:270
4614 "The I<+hhmm> or I<-hhmm> numeric timezone (that is, the hour and minute "
4615 "offset from UTC). (SU)"
4619 #: build/C/man3/strftime.3:273
4620 msgid "The timezone name or abbreviation."
4624 #: build/C/man3/strftime.3:273
4629 #. Nov 05 -- Not in Linux/glibc, but is in some BSDs (according to
4632 #: build/C/man3/strftime.3:281
4633 msgid "The date and time in B<date>(1) format. (TZ) (Not supported in glibc2.)"
4637 #: build/C/man3/strftime.3:281 build/C/man3/strptime.3:114
4643 #: build/C/man3/strftime.3:284
4644 msgid "A literal \\(aq%\\(aq character."
4648 #: build/C/man3/strftime.3:320
4650 "Some conversion specifications can be modified by preceding the conversion "
4651 "specifier character by the B<E> or B<O> I<modifier> to indicate that an "
4652 "alternative format should be used. If the alternative format or "
4653 "specification does not exist for the current locale, the behavior will be as "
4654 "if the unmodified conversion specification were used. (SU) The Single UNIX "
4655 "Specification mentions B<%Ec>, B<%EC>, B<%Ex>, B<%EX>, B<%Ey>, B<%EY>, "
4656 "B<%Od>, B<%Oe>, B<%OH>, B<%OI>, B<%Om>, B<%OM>, B<%OS>, B<%Ou>, B<%OU>, "
4657 "B<%OV>, B<%Ow>, B<%OW>, B<%Oy>, where the effect of the B<O> modifier is to "
4658 "use alternative numeric symbols (say, roman numerals), and that of the E "
4659 "modifier is to use a locale-dependent alternative representation."
4663 #: build/C/man3/strftime.3:327
4665 "The broken-down time structure I<tm> is defined in I<E<lt>time.hE<gt>>. See "
4669 #. (This behavior applies since at least libc 4.4.4;
4670 #. very old versions of libc, such as libc 4.4.1,
4673 #. if the array was too small.)
4675 #: build/C/man3/strftime.3:347
4677 "Provided that the result string, including the terminating null byte, does "
4678 "not exceed I<max> bytes, B<strftime>() returns the number of bytes "
4679 "(excluding the terminating null byte) placed in the array I<s>. If the "
4680 "length of the result string (including the terminating null byte) would "
4681 "exceed I<max> bytes, then B<strftime>() returns 0, and the contents of the "
4682 "array are undefined."
4686 #: build/C/man3/strftime.3:355
4688 "Note that the return value 0 does not necessarily indicate an error. For "
4689 "example, in many locales B<%p> yields an empty string. An empty I<format> "
4690 "string will likewise yield an empty string."
4694 #: build/C/man3/strftime.3:361
4695 msgid "The environment variables B<TZ> and B<LC_TIME> are used."
4699 #: build/C/man3/strftime.3:378
4701 "SVr4, C89, C99. There are strict inclusions between the set of conversions "
4702 "given in ANSI C (unmarked), those given in the Single UNIX Specification "
4703 "(marked SU), those given in Olson's timezone package (marked TZ), and those "
4704 "given in glibc (marked GNU), except that B<%+> is not supported in glibc2. "
4705 "On the other hand glibc2 has several more extensions. POSIX.1 only refers "
4706 "to ANSI C; POSIX.2 describes under B<date>(1) several extensions that could "
4707 "apply to B<strftime>() as well. The B<%F> conversion is in C99 and "
4712 #: build/C/man3/strftime.3:385
4714 "In SUSv2, the B<%S> specifier allowed a range of 00 to 61, to allow for the "
4715 "theoretical possibility of a minute that included a double leap second "
4716 "(there never has been such a minute)."
4720 #: build/C/man3/strftime.3:386
4722 msgid "ISO 8601 week dates"
4726 #: build/C/man3/strftime.3:411
4728 "B<%G>, B<%g>, and B<%V> yield values calculated from the week-based year "
4729 "defined by the ISO\\ 8601 standard. In this system, weeks start on a "
4730 "Monday, and are numbered from 01, for the first week, up to 52 or 53, for "
4731 "the last week. Week 1 is the first week where four or more days fall within "
4732 "the new year (or, synonymously, week 01 is: the first week of the year that "
4733 "contains a Thursday; or, the week that has 4 January in it). When three of "
4734 "fewer days of the first calendar week of the new year fall within that year, "
4735 "then the ISO 8601 week-based system counts those days as part of week 53 of "
4736 "the preceding year. For example, 1 January 2010 is a Friday, meaning that "
4737 "just three days of that calendar week fall in 2010. Thus, the ISO\\ 8601 "
4738 "week-based system considers these days to be part of week 53 (B<%V>) of the "
4739 "year 2009 (B<%G>); week 01 of ISO\\ 8601 year 2010 starts on Monday, 4 "
4743 #. HP-UX and Tru64 also have features like this.
4745 #: build/C/man3/strftime.3:427
4747 "Glibc provides some extensions for conversion specifications. (These "
4748 "extensions are not specified in POSIX.1-2001, but a few other systems "
4749 "provide similar features.) Between the \\(aq%\\(aq character and the "
4750 "conversion specifier character, an optional I<flag> and field I<width> may "
4751 "be specified. (These precede the B<E> or B<O> modifiers, if present.)"
4755 #: build/C/man3/strftime.3:429
4756 msgid "The following flag characters are permitted:"
4760 #: build/C/man3/strftime.3:429
4766 #: build/C/man3/strftime.3:433
4767 msgid "(underscore) Pad a numeric result string with spaces."
4771 #: build/C/man3/strftime.3:433
4777 #: build/C/man3/strftime.3:437
4778 msgid "(dash) Do not pad a numeric result string."
4782 #: build/C/man3/strftime.3:437
4788 #: build/C/man3/strftime.3:441
4790 "Pad a numeric result string with zeros even if the conversion specifier "
4791 "character uses space-padding by default."
4795 #: build/C/man3/strftime.3:441
4801 #: build/C/man3/strftime.3:444
4802 msgid "Convert alphabetic characters in result string to uppercase."
4806 #: build/C/man3/strftime.3:444
4812 #: build/C/man3/strftime.3:450
4814 "Swap the case of the result string. (This flag works only with certain "
4815 "conversion specifier characters, and of these, it is only really useful with "
4820 #: build/C/man3/strftime.3:454
4822 "An optional decimal width specifier may follow the (possibly absent) flag. "
4823 "If the natural size of the field is smaller than this width, then the result "
4824 "string is padded (on the left) to the specified width."
4828 #: build/C/man3/strftime.3:472
4830 "If the output string would exceed I<max> bytes, I<errno> is I<not> set. "
4831 "This makes it impossible to distinguish this error case from cases where the "
4832 "I<format> string legitimately produces a zero-length output string. "
4833 "POSIX.1-2001 does I<not> specify any I<errno> settings for B<strftime>()."
4837 #: build/C/man3/strftime.3:487
4839 "Some buggy versions of B<gcc>(1) complain about the use of B<%c>: "
4840 "I<warning: `%c' yields only last 2 digits of year in some locales>. Of "
4841 "course programmers are encouraged to use B<%c>, it gives the preferred date "
4842 "and time representation. One meets all kinds of strange obfuscations to "
4843 "circumvent this B<gcc>(1) problem. A relatively clean one is to add an "
4844 "intermediate function"
4848 #: build/C/man3/strftime.3:496
4852 "my_strftime(char *s, size_t max, const char *fmt,\n"
4853 " const struct tm *tm)\n"
4855 " return strftime(s, max, fmt, tm);\n"
4860 #: build/C/man3/strftime.3:505
4862 "Nowadays, B<gcc>(1) provides the I<-Wno-format-y2k> option to prevent the "
4863 "warning, so that the above workaround is no longer required."
4867 #: build/C/man3/strftime.3:508
4868 msgid "B<RFC\\ 2822-compliant date format> (with an English locale for %a and %b)"
4872 #: build/C/man3/strftime.3:511
4873 msgid "%a,\\ %d\\ %b\\ %Y\\ %T\\ %z"
4877 #: build/C/man3/strftime.3:514
4878 msgid "B<RFC\\ 822-compliant date format> (with an English locale for %a and %b)"
4882 #: build/C/man3/strftime.3:517
4883 msgid "%a,\\ %d\\ %b\\ %y\\ %T\\ %z"
4887 #: build/C/man3/strftime.3:517
4889 msgid "Example program"
4893 #: build/C/man3/strftime.3:520
4894 msgid "The program below can be used to experiment with B<strftime>()."
4898 #: build/C/man3/strftime.3:524
4900 "Some examples of the result string produced by the glibc implementation of "
4901 "B<strftime>() are as follows:"
4905 #: build/C/man3/strftime.3:533
4908 "$B< ./a.out \\(aq%m\\(aq>\n"
4909 "Result string is \"11\"\n"
4910 "$B< ./a.out \\(aq%5m\\(aq>\n"
4911 "Result string is \"00011\"\n"
4912 "$B< ./a.out \\(aq%_5m\\(aq>\n"
4913 "Result string is \" 11\"\n"
4917 #: build/C/man3/strftime.3:540
4920 "#include E<lt>time.hE<gt>\n"
4921 "#include E<lt>stdio.hE<gt>\n"
4922 "#include E<lt>stdlib.hE<gt>\n"
4926 #: build/C/man3/strftime.3:547
4930 "main(int argc, char *argv[])\n"
4932 " char outstr[200];\n"
4934 " struct tm *tmp;\n"
4938 #: build/C/man3/strftime.3:554
4941 " t = time(NULL);\n"
4942 " tmp = localtime(&t);\n"
4943 " if (tmp == NULL) {\n"
4944 " perror(\"localtime\");\n"
4945 " exit(EXIT_FAILURE);\n"
4950 #: build/C/man3/strftime.3:559
4953 " if (strftime(outstr, sizeof(outstr), argv[1], tmp) == 0) {\n"
4954 " fprintf(stderr, \"strftime returned 0\");\n"
4955 " exit(EXIT_FAILURE);\n"
4960 #: build/C/man3/strftime.3:563
4963 " printf(\"Result string is \\e\"%s\\e\"\\en\", outstr);\n"
4964 " exit(EXIT_SUCCESS);\n"
4969 #: build/C/man3/strftime.3:571
4971 "B<date>(1), B<time>(2), B<ctime>(3), B<setlocale>(3), B<sprintf>(3), "
4976 #: build/C/man3/strptime.3:31
4982 #: build/C/man3/strptime.3:34
4983 msgid "strptime - convert a string representation of time to a time tm structure"
4987 #: build/C/man3/strptime.3:36
4988 msgid "B<#define _XOPEN_SOURCE> /* See feature_test_macros(7) */"
4992 #: build/C/man3/strptime.3:41
4994 "B<char *strptime(const char *>I<s>B<, const char *>I<format>B<,> B<struct tm "
4999 #: build/C/man3/strptime.3:54
5001 "The B<strptime>() function is the converse of B<strftime>(3); it converts "
5002 "the character string pointed to by I<s> to values which are stored in the "
5003 "\"broken-down time\" structure pointed to by I<tm>, using the format "
5004 "specified by I<format>."
5008 #: build/C/man3/strptime.3:60
5010 "The broken-down time structure I<tm> is defined in I<E<lt>time.hE<gt>> as "
5015 #: build/C/man3/strptime.3:81
5016 msgid "For more details on the I<tm> structure, see B<ctime>(3)."
5020 #: build/C/man3/strptime.3:99
5022 "The I<format> argument is a character string that consists of field "
5023 "descriptors and text characters, reminiscent of B<scanf>(3). Each field "
5024 "descriptor consists of a B<%> character followed by another character that "
5025 "specifies the replacement for the field descriptor. All other characters in "
5026 "the I<format> string must have a matching character in the input string, "
5027 "except for whitespace, which matches zero or more whitespace characters in "
5028 "the input string. There should be white\\%space or other alphanumeric "
5029 "characters between any two field descriptors."
5033 #: build/C/man3/strptime.3:108
5035 "The B<strptime>() function processes the input string from left to right. "
5036 "Each of the three possible input elements (whitespace, literal, or format) "
5037 "are handled one after the other. If the input cannot be matched to the "
5038 "format string, the function stops. The remainder of the format and input "
5039 "strings are not processed."
5043 #: build/C/man3/strptime.3:114
5045 "The supported input field descriptors are listed below. In case a text "
5046 "string (such as the name of a day of the week or a month name) is to be "
5047 "matched, the comparison is case insensitive. In case a number is to be "
5048 "matched, leading zeros are permitted but not required."
5052 #: build/C/man3/strptime.3:119
5053 msgid "The B<%> character."
5057 #: build/C/man3/strptime.3:119
5059 msgid "B<%a> or B<%A>"
5063 #: build/C/man3/strptime.3:123
5065 "The name of the day of the week according to the current locale, in "
5066 "abbreviated form or the full name."
5070 #: build/C/man3/strptime.3:123
5072 msgid "B<%b> or B<%B> or B<%h>"
5076 #: build/C/man3/strptime.3:127
5078 "The month name according to the current locale, in abbreviated form or the "
5083 #: build/C/man3/strptime.3:130
5084 msgid "The date and time representation for the current locale."
5088 #: build/C/man3/strptime.3:133
5089 msgid "The century number (0-99)."
5093 #: build/C/man3/strptime.3:133
5095 msgid "B<%d> or B<%e>"
5099 #: build/C/man3/strptime.3:136
5100 msgid "The day of month (1-31)."
5104 #: build/C/man3/strptime.3:146
5106 "Equivalent to B<%m/%d/%y>. (This is the American style date, very confusing "
5107 "to non-Americans, especially since B<%d/%m/%y> is widely used in Europe. "
5108 "The ISO 8601 standard format is B<%Y-%m-%d>.)"
5112 #: build/C/man3/strptime.3:149
5113 msgid "The hour (0-23)."
5117 #: build/C/man3/strptime.3:152
5118 msgid "The hour on a 12-hour clock (1-12)."
5122 #: build/C/man3/strptime.3:155
5123 msgid "The day number in the year (1-366)."
5127 #: build/C/man3/strptime.3:158
5128 msgid "The month number (1-12)."
5132 #: build/C/man3/strptime.3:161
5133 msgid "The minute (0-59)."
5137 #: build/C/man3/strptime.3:164 build/C/man3/strptime.3:190
5138 msgid "Arbitrary whitespace."
5142 #: build/C/man3/strptime.3:168
5143 msgid "The locale's equivalent of AM or PM. (Note: there may be none.)"
5147 #: build/C/man3/strptime.3:179
5149 "The 12-hour clock time (using the locale's AM or PM). In the POSIX locale "
5150 "equivalent to B<%I:%M:%S %p>. If I<t_fmt_ampm> is empty in the B<LC_TIME> "
5151 "part of the current locale, then the behavior is undefined."
5155 #: build/C/man3/strptime.3:183
5156 msgid "Equivalent to B<%H:%M>."
5160 #: build/C/man3/strptime.3:187
5162 "The second (0-60; 60 may occur for leap seconds; earlier also 61 was "
5167 #: build/C/man3/strptime.3:194
5168 msgid "Equivalent to B<%H:%M:%S>."
5172 #: build/C/man3/strptime.3:198
5174 "The week number with Sunday the first day of the week (0-53). The first "
5175 "Sunday of January is the first day of week 1."
5179 #: build/C/man3/strptime.3:201
5180 msgid "The ordinal number of the day of the week (0-6), with Sunday = 0."
5184 #: build/C/man3/strptime.3:205
5186 "The week number with Monday the first day of the week (0-53). The first "
5187 "Monday of January is the first day of week 1."
5191 #: build/C/man3/strptime.3:208
5192 msgid "The date, using the locale's date format."
5196 #: build/C/man3/strptime.3:211
5197 msgid "The time, using the locale's time format."
5201 #: build/C/man3/strptime.3:217
5203 "The year within century (0-99). When a century is not otherwise specified, "
5204 "values in the range 69-99 refer to years in the twentieth century "
5205 "(1969-1999); values in the range 00-68 refer to years in the twenty-first "
5206 "century (2000-2068)."
5210 #: build/C/man3/strptime.3:220
5211 msgid "The year, including century (for example, 1991)."
5215 #: build/C/man3/strptime.3:226
5217 "Some field descriptors can be modified by the E or O modifier characters to "
5218 "indicate that an alternative format or specification should be used. If the "
5219 "alternative format or specification does not exist in the current locale, "
5220 "the unmodified field descriptor is used."
5224 #: build/C/man3/strptime.3:229
5226 "The E modifier specifies that the input string may contain alternative "
5227 "locale-dependent versions of the date and time representation:"
5231 #: build/C/man3/strptime.3:229
5237 #: build/C/man3/strptime.3:232
5238 msgid "The locale's alternative date and time representation."
5242 #: build/C/man3/strptime.3:232
5248 #: build/C/man3/strptime.3:235
5250 "The name of the base year (period) in the locale's alternative "
5255 #: build/C/man3/strptime.3:235
5261 #: build/C/man3/strptime.3:238
5262 msgid "The locale's alternative date representation."
5266 #: build/C/man3/strptime.3:238
5272 #: build/C/man3/strptime.3:241
5273 msgid "The locale's alternative time representation."
5277 #: build/C/man3/strptime.3:241
5283 #: build/C/man3/strptime.3:246
5285 "The offset from B<%EC> (year only) in the locale's alternative "
5290 #: build/C/man3/strptime.3:246
5296 #: build/C/man3/strptime.3:249
5297 msgid "The full alternative year representation."
5301 #: build/C/man3/strptime.3:252
5303 "The O modifier specifies that the numerical input may be in an alternative "
5304 "locale-dependent format:"
5308 #: build/C/man3/strptime.3:252
5310 msgid "B<%Od> or B<%Oe>"
5314 #: build/C/man3/strptime.3:256
5316 "The day of the month using the locale's alternative numeric symbols; leading "
5317 "zeros are permitted but not required."
5321 #: build/C/man3/strptime.3:256
5327 #: build/C/man3/strptime.3:259
5328 msgid "The hour (24-hour clock) using the locale's alternative numeric symbols."
5332 #: build/C/man3/strptime.3:259
5338 #: build/C/man3/strptime.3:262
5339 msgid "The hour (12-hour clock) using the locale's alternative numeric symbols."
5343 #: build/C/man3/strptime.3:262
5349 #: build/C/man3/strptime.3:265
5350 msgid "The month using the locale's alternative numeric symbols."
5354 #: build/C/man3/strptime.3:265
5360 #: build/C/man3/strptime.3:268
5361 msgid "The minutes using the locale's alternative numeric symbols."
5365 #: build/C/man3/strptime.3:268
5371 #: build/C/man3/strptime.3:271
5372 msgid "The seconds using the locale's alternative numeric symbols."
5376 #: build/C/man3/strptime.3:271
5382 #: build/C/man3/strptime.3:275
5384 "The week number of the year (Sunday as the first day of the week) using the "
5385 "locale's alternative numeric symbols."
5389 #: build/C/man3/strptime.3:275
5395 #: build/C/man3/strptime.3:279
5398 "The ordinal number of the day of the week (Sunday=0),\n"
5399 " using the locale's alternative numeric symbols.\n"
5403 #: build/C/man3/strptime.3:279
5409 #: build/C/man3/strptime.3:283
5411 "The week number of the year (Monday as the first day of the week) using the "
5412 "locale's alternative numeric symbols."
5416 #: build/C/man3/strptime.3:283
5422 #: build/C/man3/strptime.3:288
5424 "The year (offset from B<%C>) using the locale's alternative numeric "
5429 #: build/C/man3/strptime.3:302
5431 "The return value of the function is a pointer to the first character not "
5432 "processed in this function call. In case the input string contains more "
5433 "characters than required by the format string, the return value points right "
5434 "after the last consumed input character. In case the whole input string is "
5435 "consumed, the return value points to the null byte at the end of the "
5436 "string. If B<strptime>() fails to match all of the format string and "
5437 "therefore an error occurred, the function returns NULL."
5441 #. This function is available since libc 4.6.8.
5442 #. Linux libc4 and libc5 includes define the prototype unconditionally;
5443 #. glibc2 includes provide a prototype only when
5449 #. Before libc 5.4.13 whitespace
5450 #. (and the \(aqn\(aq and \(aqt\(aq specifications) was not handled,
5451 #. no \(aqE\(aq and \(aqO\(aq locale modifier characters were accepted,
5452 #. and the \(aqC\(aq specification was a synonym for the \(aqc\(aq specification.
5454 #: build/C/man3/strptime.3:333
5456 "In principle, this function does not initialize I<tm> but stores only the "
5457 "values specified. This means that I<tm> should be initialized before the "
5458 "call. Details differ a bit between different UNIX systems. The glibc "
5459 "implementation does not touch those fields which are not explicitly "
5460 "specified, except that it recomputes the I<tm_wday> and I<tm_yday> field if "
5461 "any of the year, month, or day elements changed."
5464 #. in the 20th century by libc4 and libc5.
5465 #. It is taken to be a year
5466 #. In libc4 and libc5 the code for %I is broken (fixed in glibc;
5467 #. %OI was fixed in glibc 2.2.4).
5469 #: build/C/man3/strptime.3:342
5471 "The \\(aqy\\(aq (year in century) specification is taken to specify a year "
5472 "in the range 1950-2049 by glibc 2.0. It is taken to be a year in 1969-2068 "
5477 #: build/C/man3/strptime.3:351
5479 "For reasons of symmetry, glibc tries to support for B<strptime>() the same "
5480 "format characters as for B<strftime>(3). (In most cases, the corresponding "
5481 "fields are parsed, but no field in I<tm> is changed.) This leads to"
5485 #: build/C/man3/strptime.3:356
5486 msgid "Equivalent to B<%Y-%m-%d>, the ISO 8601 date format."
5490 #: build/C/man3/strptime.3:360
5492 "The year corresponding to the ISO week number, but without the century "
5497 #: build/C/man3/strptime.3:364
5498 msgid "The year corresponding to the ISO week number. (For example, 1991.)"
5502 #: build/C/man3/strptime.3:367
5503 msgid "The day of the week as a decimal number (1-7, where Monday = 1)."
5507 #: build/C/man3/strptime.3:374
5509 "The ISO 8601:1988 week number as a decimal number (1-53). If the week "
5510 "(starting on Monday) containing 1 January has four or more days in the new "
5511 "year, then it is considered week 1. Otherwise, it is the last week of the "
5512 "previous year, and the next week is week 1."
5516 #: build/C/man3/strptime.3:377
5517 msgid "An RFC-822/ISO 8601 standard timezone specification."
5521 #: build/C/man3/strptime.3:380
5522 msgid "The timezone name."
5526 #: build/C/man3/strptime.3:396
5528 "Similarly, because of GNU extensions to B<strftime>(3), B<%k> is accepted as "
5529 "a synonym for B<%H>, and B<%l> should be accepted as a synonym for B<%I>, "
5530 "and B<%P> is accepted as a synonym for B<%p>. Finally"
5534 #: build/C/man3/strptime.3:400
5536 "The number of seconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC). "
5537 "Leap seconds are not counted unless leap second support is available."
5541 #: build/C/man3/strptime.3:403
5543 "The glibc implementation does not require whitespace between two field "
5548 #: build/C/man3/strptime.3:408
5550 "The following example demonstrates the use of B<strptime>() and "
5555 #: build/C/man3/strptime.3:415
5558 "#define _XOPEN_SOURCE\n"
5559 "#include E<lt>stdio.hE<gt>\n"
5560 "#include E<lt>stdlib.hE<gt>\n"
5561 "#include E<lt>string.hE<gt>\n"
5562 "#include E<lt>time.hE<gt>\n"
5566 #: build/C/man3/strptime.3:421
5577 #: build/C/man3/strptime.3:428
5580 " memset(&tm, 0, sizeof(struct tm));\n"
5581 " strptime(\"2001-11-12 18:31:01\", \"%Y-%m-%d %H:%M:%S\", &tm);\n"
5582 " strftime(buf, sizeof(buf), \"%d %b %Y %H:%M\", &tm);\n"
5584 " exit(EXIT_SUCCESS);\n"
5589 #: build/C/man3/strptime.3:435
5590 msgid "B<time>(2), B<getdate>(3), B<scanf>(3), B<setlocale>(3), B<strftime>(3)"
5594 #: build/C/man1/time.1:9 build/C/man2/time.2:29 build/C/man7/time.7:28
5600 #: build/C/man1/time.1:9
5606 #: build/C/man1/time.1:9
5608 msgid "Linux User's Manual"
5612 #: build/C/man1/time.1:12
5613 msgid "time - time a simple command or give resource usage"
5617 #: build/C/man1/time.1:14
5618 msgid "B<time [>I<options>B<] >I<command>B< [>I<arguments...>B<] >"
5622 #: build/C/man1/time.1:44
5624 "The B<time> command runs the specified program I<command> with the given "
5625 "arguments. When I<command> finishes, B<time> writes a message to standard "
5626 "error giving timing statistics about this program run. These statistics "
5627 "consist of (i) the elapsed real time between invocation and termination, "
5628 "(ii) the user CPU time (the sum of the I<tms_utime> and I<tms_cutime> values "
5629 "in a I<struct tms> as returned by B<times>(2)), and (iii) the system CPU "
5630 "time (the sum of the I<tms_stime> and I<tms_cstime> values in a I<struct "
5631 "tms> as returned by B<times>(2))."
5635 #: build/C/man1/time.1:53
5637 "Note: some shells (e.g., B<bash>(1)) have a built-in B<time> command that "
5638 "provides less functionality than the command described here. To access the "
5639 "real command, you may need to specify its pathname (something like "
5640 "I</usr/bin/time>)."
5644 #: build/C/man1/time.1:53
5650 #: build/C/man1/time.1:54
5656 #: build/C/man1/time.1:57
5657 msgid "When in the POSIX locale, use the precise traditional format"
5661 #: build/C/man1/time.1:60
5662 msgid "real %f\\enuser %f\\ensys %f\\en"
5666 #: build/C/man1/time.1:65
5668 "(with numbers in seconds) where the number of decimals in the output for %f "
5669 "is unspecified but is sufficient to express the clock tick accuracy, and at "
5674 #: build/C/man1/time.1:65 build/C/man8/tzselect.8:20
5680 #: build/C/man1/time.1:74
5682 "If I<command> was invoked, the exit status is that of I<command>. "
5683 "Otherwise, it is 127 if I<command> could not be found, 126 if it could be "
5684 "found but could not be invoked, and some other nonzero value (1-125) if "
5685 "something else went wrong."
5689 #: build/C/man1/time.1:88
5691 "The variables B<LANG>, B<LC_ALL>, B<LC_CTYPE>, B<LC_MESSAGES>, "
5692 "B<LC_NUMERIC>, B<NLSPATH>, and B<PATH> are used. The last one to search for "
5693 "I<command>. The remaining ones for the text and formatting of the output."
5697 #: build/C/man1/time.1:88
5703 #: build/C/man1/time.1:100
5705 "Below a description of the GNU 1.7 version of B<time>. Disregarding the "
5706 "name of the utility, GNU makes it output lots of useful information, not "
5707 "only about time used, but also on other resources like memory, I/O and IPC "
5708 "calls (where available). The output is formatted using a format string that "
5709 "can be specified using the I<-f> option or the B<TIME> environment variable."
5713 #: build/C/man1/time.1:102
5714 msgid "The default format string is:"
5718 #: build/C/man1/time.1:105
5719 msgid "%Uuser %Ssystem %Eelapsed %PCPU (%Xtext+%Ddata %Mmax)k"
5723 #: build/C/man1/time.1:107
5724 msgid "%Iinputs+%Ooutputs (%Fmajor+%Rminor)pagefaults %Wswaps"
5728 #: build/C/man1/time.1:113
5729 msgid "When the I<-p> option is given the (portable) output format"
5733 #: build/C/man1/time.1:116
5738 #: build/C/man1/time.1:118
5743 #: build/C/man1/time.1:120
5748 #: build/C/man1/time.1:124
5753 #: build/C/man1/time.1:124
5755 msgid "The format string"
5759 #: build/C/man1/time.1:137
5761 "The format is interpreted in the usual printf-like way. Ordinary characters "
5762 "are directly copied, tab, newline and backslash are escaped using \\et, \\en "
5763 "and \\e\\e, a percent sign is represented by %%, and otherwise % indicates a "
5764 "conversion. The program B<time> will always add a trailing newline itself. "
5765 "The conversions follow. All of those used by B<tcsh>(1) are supported."
5769 #: build/C/man1/time.1:139
5774 #: build/C/man1/time.1:142
5775 msgid "Elapsed real time (in [hours:]minutes:seconds)."
5779 #: build/C/man1/time.1:145
5780 msgid "(Not in tcsh.) Elapsed real time (in seconds)."
5784 #: build/C/man1/time.1:148
5785 msgid "Total number of CPU-seconds that the process spent in kernel mode."
5789 #: build/C/man1/time.1:151
5790 msgid "Total number of CPU-seconds that the process spent in user mode."
5794 #: build/C/man1/time.1:154
5795 msgid "Percentage of the CPU that this job got, computed as (%U + %S) / %E."
5799 #: build/C/man1/time.1:156
5804 #: build/C/man1/time.1:159
5805 msgid "Maximum resident set size of the process during its lifetime, in Kbytes."
5809 #: build/C/man1/time.1:162
5810 msgid "(Not in tcsh.) Average resident set size of the process, in Kbytes."
5814 #: build/C/man1/time.1:162
5820 #: build/C/man1/time.1:166
5821 msgid "Average total (data+stack+text) memory use of the process, in Kbytes."
5825 #: build/C/man1/time.1:169
5826 msgid "Average size of the process's unshared data area, in Kbytes."
5830 #: build/C/man1/time.1:172
5832 "(Not in tcsh.) Average size of the process's unshared stack space, in "
5837 #: build/C/man1/time.1:175
5838 msgid "Average size of the process's shared text space, in Kbytes."
5842 #: build/C/man1/time.1:179
5844 "(Not in tcsh.) System's page size, in bytes. This is a per-system constant, "
5845 "but varies between systems."
5849 #: build/C/man1/time.1:183
5851 "Number of major page faults that occurred while the process was running. "
5852 "These are faults where the page has to be read in from disk."
5856 #: build/C/man1/time.1:190
5858 "Number of minor, or recoverable, page faults. These are faults for pages "
5859 "that are not valid but which have not yet been claimed by other virtual "
5860 "pages. Thus the data in the page is still valid but the system tables must "
5865 #: build/C/man1/time.1:193
5866 msgid "Number of times the process was swapped out of main memory."
5870 #: build/C/man1/time.1:197
5872 "Number of times the process was context-switched involuntarily (because the "
5873 "time slice expired)."
5877 #: build/C/man1/time.1:201
5879 "Number of waits: times that the program was context-switched voluntarily, "
5880 "for instance while waiting for an I/O operation to complete."
5884 #: build/C/man1/time.1:203
5889 #: build/C/man1/time.1:206
5890 msgid "Number of filesystem inputs by the process."
5894 #: build/C/man1/time.1:209
5895 msgid "Number of filesystem outputs by the process."
5899 #: build/C/man1/time.1:212
5900 msgid "Number of socket messages received by the process."
5904 #: build/C/man1/time.1:215
5905 msgid "Number of socket messages sent by the process."
5909 #: build/C/man1/time.1:218
5910 msgid "Number of signals delivered to the process."
5914 #: build/C/man1/time.1:221
5915 msgid "(Not in tcsh.) Name and command-line arguments of the command being timed."
5919 #: build/C/man1/time.1:224
5920 msgid "(Not in tcsh.) Exit status of the command."
5924 #: build/C/man1/time.1:224
5930 #: build/C/man1/time.1:225
5932 msgid "B<-f >I<FORMAT>B<, --format=>I<FORMAT>"
5936 #: build/C/man1/time.1:229
5938 "Specify output format, possibly overriding the format specified in the "
5939 "environment variable TIME."
5943 #: build/C/man1/time.1:229
5945 msgid "B<-p, --portability>"
5949 #: build/C/man1/time.1:232
5950 msgid "Use the portable output format."
5954 #: build/C/man1/time.1:232
5956 msgid "B<-o >I<FILE>B<, --output=>I<FILE>"
5960 #: build/C/man1/time.1:237
5961 msgid "Do not send the results to I<stderr>, but overwrite the specified file."
5965 #: build/C/man1/time.1:237
5967 msgid "B<-a, --append>"
5971 #: build/C/man1/time.1:240
5972 msgid "(Used together with -o.) Do not overwrite but append."
5976 #: build/C/man1/time.1:240
5978 msgid "B<-v, --verbose>"
5982 #: build/C/man1/time.1:243
5983 msgid "Give very verbose output about all the program knows about."
5987 #: build/C/man1/time.1:243
5989 msgid "GNU standard options"
5993 #: build/C/man1/time.1:244 build/C/man8/zdump.8:31
5999 #: build/C/man1/time.1:247
6000 msgid "Print a usage message on standard output and exit successfully."
6004 #: build/C/man1/time.1:247
6006 msgid "B<-V, --version>"
6010 #: build/C/man1/time.1:250
6011 msgid "Print version information on standard output, then exit successfully."
6015 #: build/C/man1/time.1:250
6021 #: build/C/man1/time.1:253
6022 msgid "Terminate option list."
6026 #: build/C/man1/time.1:258
6028 "Not all resources are measured by all versions of UNIX, so some of the "
6029 "values might be reported as zero. The present selection was mostly inspired "
6030 "by the data provided by 4.2 or 4.3BSD."
6034 #: build/C/man1/time.1:261
6036 "GNU time version 1.7 is not yet localized. Thus, it does not implement the "
6037 "POSIX requirements."
6041 #: build/C/man1/time.1:273
6043 "The environment variable B<TIME> was badly chosen. It is not unusual for "
6044 "systems like B<autoconf>(1) or B<make>(1) to use environment variables "
6045 "with the name of a utility to override the utility to be used. Uses like "
6046 "MORE or TIME for options to programs (instead of program pathnames) tend to "
6047 "lead to difficulties."
6051 #: build/C/man1/time.1:280
6053 "It seems unfortunate that I<-o> overwrites instead of appends. (That is, "
6054 "the I<-a> option should be the default.)"
6058 #: build/C/man1/time.1:284
6059 msgid "Mail suggestions and bug reports for GNU B<time> to"
6063 #: build/C/man1/time.1:286
6064 msgid "I<bug-utils@prep.ai.mit.edu>"
6068 #: build/C/man1/time.1:290
6069 msgid "Please include the version of B<time>, which you can get by running"
6073 #: build/C/man1/time.1:292
6074 msgid "I<time --version>"
6079 #. .IP "David Keppel"
6081 #. .IP "David MacKenzie"
6082 #. POSIXization, autoconfiscation, GNU getoptization,
6083 #. documentation, other bug fixes and improvements.
6084 #. .IP "Arne Henrik Juul"
6085 #. Helped with portability
6086 #. .IP "Francois Pinard"
6087 #. Helped with portability
6089 #: build/C/man1/time.1:306
6090 msgid "and the operating system and C compiler you used."
6094 #: build/C/man1/time.1:310
6095 msgid "B<tcsh>(1), B<times>(2), B<wait3>(2)"
6099 #: build/C/man2/time.2:29
6105 #: build/C/man2/time.2:32
6106 msgid "time - get time in seconds"
6110 #: build/C/man2/time.2:36
6111 msgid "B<time_t time(time_t *>I<t>B<);>"
6115 #: build/C/man2/time.2:40
6117 "B<time>() returns the time as the number of seconds since the Epoch, "
6118 "1970-01-01 00:00:00 +0000 (UTC)."
6122 #: build/C/man2/time.2:46
6124 "If I<t> is non-NULL, the return value is also stored in the memory pointed "
6129 #: build/C/man2/time.2:50
6131 "On success, the value of time in seconds since the Epoch is returned. On "
6132 "error, I<((time_t)\\ -1)> is returned, and I<errno> is set appropriately."
6136 #: build/C/man2/time.2:55
6137 msgid "I<t> points outside your accessible address space."
6141 #. Under 4.3BSD, this call is obsoleted by
6142 #. .BR gettimeofday (2).
6144 #: build/C/man2/time.2:61
6146 "SVr4, 4.3BSD, C89, C99, POSIX.1-2001. POSIX does not specify any error "
6151 #: build/C/man2/time.2:76
6153 "POSIX.1 defines I<seconds since the Epoch> using a formula that approximates "
6154 "the number of seconds between a specified time and the Epoch. This formula "
6155 "takes account of the facts that all years that are evenly divisible by 4 are "
6156 "leap years, but years that are evenly divisible by 100 are not leap years "
6157 "unless they are also evenly divisible by 400, in which case they are leap "
6158 "years. This value is not the same as the actual number of seconds between "
6159 "the time and the Epoch, because of leap seconds and because system clocks "
6160 "are not required to be synchronized to a standard reference. The intention "
6161 "is that the interpretation of seconds since the Epoch values be consistent; "
6162 "see POSIX.1-2008 Rationale A.4.15 for further rationale."
6166 #: build/C/man2/time.2:82
6167 msgid "B<date>(1), B<gettimeofday>(2), B<ctime>(3), B<ftime>(3), B<time>(7)"
6171 #: build/C/man7/time.7:28
6177 #: build/C/man7/time.7:31
6178 msgid "time - overview of time and timers"
6182 #: build/C/man7/time.7:32
6184 msgid "Real time and process time"
6188 #: build/C/man7/time.7:39
6190 "I<Real time> is defined as time measured from some fixed point, either from "
6191 "a standard point in the past (see the description of the Epoch and calendar "
6192 "time below), or from some point (e.g., the start) in the life of a process "
6193 "(I<elapsed time>)."
6197 #: build/C/man7/time.7:59
6199 "I<Process time> is defined as the amount of CPU time used by a process. "
6200 "This is sometimes divided into I<user> and I<system> components. User CPU "
6201 "time is the time spent executing code in user mode. System CPU time is the "
6202 "time spent by the kernel executing in system mode on behalf of the process "
6203 "(e.g., executing system calls). The B<time>(1) command can be used to "
6204 "determine the amount of CPU time consumed during the execution of a "
6205 "program. A program can determine the amount of CPU time it has consumed "
6206 "using B<times>(2), B<getrusage>(2), or B<clock>(3)."
6210 #: build/C/man7/time.7:59
6212 msgid "The hardware clock"
6216 #: build/C/man7/time.7:66
6218 "Most computers have a (battery-powered) hardware clock which the kernel "
6219 "reads at boot time in order to initialize the software clock. For further "
6220 "details, see B<rtc>(4) and B<hwclock>(8)."
6224 #: build/C/man7/time.7:66
6226 msgid "The software clock, HZ, and jiffies"
6229 #. semtimedop(), mq_timedwait(), io_getevents(), poll() are the same
6230 #. futexes and thus sem_timedwait() seem to use high-res timers.
6232 #: build/C/man7/time.7:81
6234 "The accuracy of various system calls that set timeouts, (e.g., B<select>(2), "
6235 "B<sigtimedwait>(2)) and measure CPU time (e.g., B<getrusage>(2)) is "
6236 "limited by the resolution of the I<software clock>, a clock maintained by "
6237 "the kernel which measures time in I<jiffies>. The size of a jiffy is "
6238 "determined by the value of the kernel constant I<HZ>."
6242 #: build/C/man7/time.7:96
6244 "The value of I<HZ> varies across kernel versions and hardware platforms. On "
6245 "i386 the situation is as follows: on kernels up to and including 2.4.x, HZ "
6246 "was 100, giving a jiffy value of 0.01 seconds; starting with 2.6.0, HZ was "
6247 "raised to 1000, giving a jiffy of 0.001 seconds. Since kernel 2.6.13, the "
6248 "HZ value is a kernel configuration parameter and can be 100, 250 (the "
6249 "default) or 1000, yielding a jiffies value of, respectively, 0.01, 0.004, or "
6250 "0.001 seconds. Since kernel 2.6.20, a further frequency is available: 300, "
6251 "a number that divides evenly for the common video frame rates (PAL, 25 HZ; "
6255 #. glibc gets this info with a little help from the ELF loader;
6256 #. see glibc elf/dl-support.c and kernel fs/binfmt_elf.c.
6258 #: build/C/man7/time.7:107
6260 "The B<times>(2) system call is a special case. It reports times with a "
6261 "granularity defined by the kernel constant I<USER_HZ>. User-space "
6262 "applications can determine the value of this constant using "
6263 "I<sysconf(_SC_CLK_TCK)>."
6267 #: build/C/man7/time.7:107
6269 msgid "High-resolution timers"
6273 #: build/C/man7/time.7:110
6275 "Before Linux 2.6.21, the accuracy of timer and sleep system calls (see "
6276 "below) was also limited by the size of the jiffy."
6280 #: build/C/man7/time.7:123
6282 "Since Linux 2.6.21, Linux supports high-resolution timers (HRTs), optionally "
6283 "configurable via B<CONFIG_HIGH_RES_TIMERS>. On a system that supports HRTs, "
6284 "the accuracy of sleep and timer system calls is no longer constrained by the "
6285 "jiffy, but instead can be as accurate as the hardware allows (microsecond "
6286 "accuracy is typical of modern hardware). You can determine whether "
6287 "high-resolution timers are supported by checking the resolution returned by "
6288 "a call to B<clock_getres>(2) or looking at the \"resolution\" entries in "
6289 "I</proc/timer_list>."
6293 #: build/C/man7/time.7:126
6295 "HRTs are not supported on all hardware architectures. (Support is provided "
6296 "on x86, arm, and powerpc, among others.)"
6300 #: build/C/man7/time.7:126
6306 #: build/C/man7/time.7:130
6308 "UNIX systems represent time in seconds since the I<Epoch>, 1970-01-01 "
6309 "00:00:00 +0000 (UTC)."
6313 #: build/C/man7/time.7:142
6315 "A program can determine the I<calendar time> using B<gettimeofday>(2), which "
6316 "returns time (in seconds and microseconds) that have elapsed since the "
6317 "Epoch; B<time>(2) provides similar information, but only with accuracy to "
6318 "the nearest second. The system time can be changed using "
6319 "B<settimeofday>(2)."
6323 #: build/C/man7/time.7:142
6325 msgid "Broken-down time"
6329 #: build/C/man7/time.7:160
6331 "Certain library functions use a structure of type I<tm> to represent "
6332 "I<broken-down time>, which stores time value separated out into distinct "
6333 "components (year, month, day, hour, minute, second, etc.). This structure "
6334 "is described in B<ctime>(3), which also describes functions that convert "
6335 "between calendar time and broken-down time. Functions for converting "
6336 "between broken-down time and printable string representations of the time "
6337 "are described in B<ctime>(3), B<strftime>(3), and B<strptime>(3)."
6341 #: build/C/man7/time.7:160
6343 msgid "Sleeping and setting timers"
6347 #: build/C/man7/time.7:167
6349 "Various system calls and functions allow a program to sleep (suspend "
6350 "execution) for a specified period of time; see B<nanosleep>(2), "
6351 "B<clock_nanosleep>(2), and B<sleep>(3)."
6355 #: build/C/man7/time.7:176
6357 "Various system calls allow a process to set a timer that expires at some "
6358 "point in the future, and optionally at repeated intervals; see B<alarm>(2), "
6359 "B<getitimer>(2), B<timerfd_create>(2), and B<timer_create>(2)."
6363 #: build/C/man7/time.7:176
6369 #: build/C/man7/time.7:188
6371 "Since Linux 2.6.28, it is possible to control the \"timer slack\" value for "
6372 "a thread. The timer slack is the length of time by which the kernel may "
6373 "delay the wake-up of certain system calls that block with a timeout. "
6374 "Permitting this delay allows the kernel to coalesce wake-up events, thus "
6375 "possibly reducing the number of system wake-ups and saving power. For more "
6376 "details, see the description of B<PR_SET_TIMERSLACK> in B<prctl>(2)."
6380 #: build/C/man7/time.7:220
6382 "B<date>(1), B<time>(1), B<adjtimex>(2), B<alarm>(2), B<clock_gettime>(2), "
6383 "B<clock_nanosleep>(2), B<getitimer>(2), B<getrlimit>(2), B<getrusage>(2), "
6384 "B<gettimeofday>(2), B<nanosleep>(2), B<stat>(2), B<time>(2), "
6385 "B<timer_create>(2), B<timerfd_create>(2), B<times>(2), B<utime>(2), "
6386 "B<adjtime>(3), B<clock>(3), B<clock_getcpuclockid>(3), B<ctime>(3), "
6387 "B<pthread_getcpuclockid>(3), B<sleep>(3), B<strftime>(3), B<strptime>(3), "
6388 "B<timeradd>(3), B<usleep>(3), B<rtc>(4), B<hwclock>(8)"
6392 #: build/C/man3/timegm.3:25
6398 #: build/C/man3/timegm.3:28
6399 msgid "timegm, timelocal - inverses of gmtime and localtime"
6403 #: build/C/man3/timegm.3:33
6405 msgid "B<time_t timelocal(struct tm *>I<tm>B<);>\n"
6409 #: build/C/man3/timegm.3:35
6411 msgid "B<time_t timegm(struct tm *>I<tm>B<);>\n"
6415 #: build/C/man3/timegm.3:45
6416 msgid "B<timelocal>(), B<timegm>(): _BSD_SOURCE || _SVID_SOURCE"
6420 #: build/C/man3/timegm.3:54
6422 "The functions B<timelocal>() and B<timegm>() are the inverses of "
6423 "B<localtime>(3) and B<gmtime>(3)."
6427 #: build/C/man3/timegm.3:58
6429 "These functions are nonstandard GNU extensions that are also present on the "
6430 "BSDs. Avoid their use; see NOTES."
6434 #: build/C/man3/timegm.3:64
6436 "The B<timelocal>() function is equivalent to the POSIX standard function "
6437 "B<mktime>(3). There is no reason to ever use it."
6441 #: build/C/man3/timegm.3:74
6443 "For a portable version of B<timegm>(), set the B<TZ> environment variable to "
6444 "UTC, call B<mktime>(3) and restore the value of B<TZ>. Something like"
6448 #: build/C/man3/timegm.3:79
6451 "#include E<lt>time.hE<gt>\n"
6452 "#include E<lt>stdlib.hE<gt>\n"
6456 #: build/C/man3/timegm.3:85
6460 "my_timegm(struct tm *tm)\n"
6467 #: build/C/man3/timegm.3:100
6470 " tz = getenv(\"TZ\");\n"
6472 " tz = strdup(tz);\n"
6473 " setenv(\"TZ\", \"\", 1);\n"
6475 " ret = mktime(tm);\n"
6477 " setenv(\"TZ\", tz, 1);\n"
6480 " unsetenv(\"TZ\");\n"
6487 #: build/C/man3/timegm.3:107
6488 msgid "B<gmtime>(3), B<localtime>(3), B<mktime>(3), B<tzset>(3)"
6492 #: build/C/man3/timeradd.3:27
6498 #: build/C/man3/timeradd.3:30
6499 msgid "timeradd, timersub, timercmp, timerclear, timerisset - timeval operations"
6503 #: build/C/man3/timeradd.3:36
6506 "B<void timeradd(struct timeval *>I<a>B<, struct timeval *>I<b>B<,>\n"
6507 "B< struct timeval *>I<res>B<);>\n"
6511 #: build/C/man3/timeradd.3:39
6514 "B<void timersub(struct timeval *>I<a>B<, struct timeval *>I<b>B<,>\n"
6515 "B< struct timeval *>I<res>B<);>\n"
6519 #: build/C/man3/timeradd.3:41
6521 msgid "B<void timerclear(struct timeval *>I<tvp>B<);>\n"
6525 #: build/C/man3/timeradd.3:43
6527 msgid "B<int timerisset(struct timeval *>I<tvp>B<);>\n"
6531 #: build/C/man3/timeradd.3:45
6534 "B<int timercmp(struct timeval *>I<a>B<, struct timeval *>I<b>B<, "
6539 #: build/C/man3/timeradd.3:54
6540 msgid "All functions shown above: _BSD_SOURCE"
6544 #: build/C/man3/timeradd.3:60
6546 "The macros are provided to operate on I<timeval> structures, defined in "
6547 "I<E<lt>sys/time.hE<gt>> as:"
6551 #: build/C/man3/timeradd.3:82
6553 "B<timeradd>() adds the time values in I<a> and I<b>, and places the sum in "
6554 "the I<timeval> pointed to by I<res>. The result is normalized such that "
6555 "I<res-E<gt>tv_usec> has a value in the range 0 to 999,999."
6559 #: build/C/man3/timeradd.3:95
6561 "B<timersub>() subtracts the time value in I<b> from the time value in I<a>, "
6562 "and places the result in the I<timeval> pointed to by I<res>. The result is "
6563 "normalized such that I<res-E<gt>tv_usec> has a value in the range 0 to "
6568 #: build/C/man3/timeradd.3:102
6570 "B<timerclear>() zeros out the I<timeval> structure pointed to by I<tvp>, so "
6571 "that it represents the Epoch: 1970-01-01 00:00:00 +0000 (UTC)."
6575 #: build/C/man3/timeradd.3:109
6577 "B<timerisset>() returns true (nonzero) if either field of the I<timeval> "
6578 "structure pointed to by I<tvp> contains a nonzero value."
6581 #. HP-UX, Tru64, Irix have a definition like:
6582 #. #define timercmp(tvp, uvp, cmp) \
6583 #. ((tvp)->tv_sec cmp (uvp)->tv_sec || \
6584 #. (tvp)->tv_sec == (uvp)->tv_sec && (tvp)->tv_usec cmp (uvp)->tv_usec)
6586 #: build/C/man3/timeradd.3:136
6588 "B<timercmp>() compares the timer values in I<a> and I<b> using the "
6589 "comparison operator I<CMP>, and returns true (nonzero) or false (0) "
6590 "depending on the result of the comparison. Some systems (but not "
6591 "Linux/glibc), have a broken B<timercmp>() implementation, in which I<CMP> "
6592 "of I<E<gt>=>, I<E<lt>=>, and I<==> do not work; portable applications can "
6597 #: build/C/man3/timeradd.3:140
6600 " !timercmp(..., E<lt>)\n"
6601 " !timercmp(..., E<gt>)\n"
6602 " !timercmp(..., !=)\n"
6606 #: build/C/man3/timeradd.3:145
6607 msgid "B<timerisset>() and B<timercmp>() return true (nonzero) or false (0)."
6611 #: build/C/man3/timeradd.3:147
6612 msgid "No errors are defined."
6616 #: build/C/man3/timeradd.3:150
6617 msgid "Not in POSIX.1-2001. Present on most BSD derivatives."
6621 #: build/C/man3/timeradd.3:153
6622 msgid "B<gettimeofday>(2), B<time>(7)"
6626 #: build/C/man2/times.2:38
6632 #: build/C/man2/times.2:38
6638 #: build/C/man2/times.2:41
6639 msgid "times - get process times"
6643 #: build/C/man2/times.2:43
6644 msgid "B<#include E<lt>sys/times.hE<gt>>"
6648 #: build/C/man2/times.2:45
6649 msgid "B<clock_t times(struct tms *>I<buf>B<);>"
6653 #: build/C/man2/times.2:56
6655 "B<times>() stores the current process times in the I<struct tms> that "
6656 "I<buf> points to. The I<struct tms> is as defined in "
6657 "I<E<lt>sys/times.hE<gt>>:"
6661 #: build/C/man2/times.2:65
6665 " clock_t tms_utime; /* user time */\n"
6666 " clock_t tms_stime; /* system time */\n"
6667 " clock_t tms_cutime; /* user time of children */\n"
6668 " clock_t tms_cstime; /* system time of children */\n"
6673 #: build/C/man2/times.2:90
6675 "The I<tms_utime> field contains the CPU time spent executing instructions of "
6676 "the calling process. The I<tms_stime> field contains the CPU time spent in "
6677 "the system while executing tasks on behalf of the calling process. The "
6678 "I<tms_cutime> field contains the sum of the I<tms_utime> and I<tms_cutime> "
6679 "values for all waited-for terminated children. The I<tms_cstime> field "
6680 "contains the sum of the I<tms_stime> and I<tms_cstime> values for all "
6681 "waited-for terminated children."
6685 #: build/C/man2/times.2:99
6687 "Times for terminated children (and their descendants) are added in at the "
6688 "moment B<wait>(2) or B<waitpid>(2) returns their process ID. In "
6689 "particular, times of grandchildren that the children did not wait for are "
6694 #: build/C/man2/times.2:101
6695 msgid "All times reported are in clock ticks."
6699 #: build/C/man2/times.2:110
6701 "B<times>() returns the number of clock ticks that have elapsed since an "
6702 "arbitrary point in the past. The return value may overflow the possible "
6703 "range of type I<clock_t>. On error, I<(clock_t)\\ -1> is returned, and "
6704 "I<errno> is set appropriately."
6708 #: build/C/man2/times.2:115
6709 msgid "I<tms> points outside the process's address space."
6713 #: build/C/man2/times.2:117
6714 msgid "SVr4, 4.3BSD, POSIX.1-2001."
6718 #: build/C/man2/times.2:119
6719 msgid "The number of clock ticks per second can be obtained using:"
6723 #: build/C/man2/times.2:122
6724 msgid "sysconf(_SC_CLK_TCK);"
6728 #: build/C/man2/times.2:128
6730 "In POSIX.1-1996 the symbol B<CLK_TCK> (defined in I<E<lt>time.hE<gt>>) is "
6731 "mentioned as obsolescent. It is obsolete now."
6734 #. See the description of times() in XSH, which says:
6735 #. The times of a terminated child process are included... when wait()
6736 #. or waitpid() returns the process ID of this terminated child.
6738 #: build/C/man2/times.2:147
6740 "In Linux kernel versions before 2.6.9, if the disposition of B<SIGCHLD> is "
6741 "set to B<SIG_IGN>, then the times of terminated children are automatically "
6742 "included in the I<tms_cstime> and I<tms_cutime> fields, although "
6743 "POSIX.1-2001 says that this should happen only if the calling process "
6744 "B<wait>(2)s on its children. This nonconformance is rectified in Linux "
6749 #: build/C/man2/times.2:156
6751 "On Linux, the I<buf> argument can be specified as NULL, with the result that "
6752 "B<times>() just returns a function result. However, POSIX does not specify "
6753 "this behavior, and most other UNIX implementations require a non-NULL value "
6758 #: build/C/man2/times.2:165
6760 "Note that B<clock>(3) also returns a value of type I<clock_t>, but this "
6761 "value is measured in units of B<CLOCKS_PER_SEC>, not the clock ticks used by "
6766 #. On older systems the number of clock ticks per second is given
6767 #. by the variable HZ.
6769 #: build/C/man2/times.2:182
6771 "On Linux, the \"arbitrary point in the past\" from which the return value of "
6772 "B<times>() is measured has varied across kernel versions. On Linux 2.4 and "
6773 "earlier this point is the moment the system was booted. Since Linux 2.6, "
6774 "this point is I<(2^32/HZ) - 300> (i.e., about 429 million) seconds before "
6775 "system boot time. This variability across kernel versions (and across UNIX "
6776 "implementations), combined with the fact that the returned value may "
6777 "overflow the range of I<clock_t>, means that a portable application would be "
6778 "wise to avoid using this value. To measure changes in elapsed time, use "
6779 "B<clock_gettime>(2) instead."
6783 #: build/C/man2/times.2:182
6789 #: build/C/man2/times.2:193
6791 "SVr1-3 returns I<long> and the struct members are of type I<time_t> although "
6792 "they store clock ticks, not seconds since the Epoch. V7 used I<long> for "
6793 "the struct members, because it had no type I<time_t> yet."
6796 #. The problem is that a syscall return of -4095 to -1
6797 #. is interpreted by glibc as an error, and the wrapper converts
6798 #. the return value to -1.
6799 #. http://marc.info/?l=linux-kernel&m=119447727031225&w=2
6800 #. "compat_sys_times() bogus until jiffies >= 0"
6803 #: build/C/man2/times.2:208
6805 "A limitation of the Linux system call conventions on some architectures "
6806 "(notably i386) means that on Linux 2.6 there is a small time window (41 "
6807 "seconds) soon after boot when B<times>() can return -1, falsely indicating "
6808 "that an error occurred. The same problem can occur when the return value "
6809 "wraps past the maximum value that can be stored in B<clock_t>."
6813 #: build/C/man2/times.2:215
6815 "B<time>(1), B<getrusage>(2), B<wait>(2), B<clock>(3), B<sysconf>(3), "
6820 #: build/C/man5/tzfile.5:8
6826 #: build/C/man5/tzfile.5:8
6832 #: build/C/man5/tzfile.5:11
6833 msgid "tzfile - timezone information"
6837 #: build/C/man5/tzfile.5:18
6839 "This page describes the structure of the timezone files used by "
6840 "B<tzset>(3). These files are typically found under one of the directories "
6841 "I</usr/lib/zoneinfo> or I</usr/share/zoneinfo>."
6845 #: build/C/man5/tzfile.5:31
6847 "Timezone information files begin with the magic characters \"TZif\" to "
6848 "identify them as timezone information files, followed by a character "
6849 "identifying the version of the file's format (as of 2005, either an ASCII "
6850 "NUL (\\(aq\\e0\\(aq) or a \\(aq2\\(aq) followed by fifteen bytes containing "
6851 "zeros reserved for future use, followed by six four-byte values of type "
6852 "I<long>, written in a \"standard\" byte order (the high-order byte of the "
6853 "value is written first). These values are, in order:"
6857 #: build/C/man5/tzfile.5:31
6859 msgid "I<tzh_ttisgmtcnt>"
6863 #: build/C/man5/tzfile.5:34
6864 msgid "The number of UTC/local indicators stored in the file."
6868 #: build/C/man5/tzfile.5:34
6870 msgid "I<tzh_ttisstdcnt>"
6874 #: build/C/man5/tzfile.5:37
6875 msgid "The number of standard/wall indicators stored in the file."
6879 #: build/C/man5/tzfile.5:37
6881 msgid "I<tzh_leapcnt>"
6885 #: build/C/man5/tzfile.5:40
6886 msgid "The number of leap seconds for which data is stored in the file."
6890 #: build/C/man5/tzfile.5:40
6892 msgid "I<tzh_timecnt>"
6896 #: build/C/man5/tzfile.5:44
6897 msgid "The number of \"transition times\" for which data is stored in the file."
6901 #: build/C/man5/tzfile.5:44
6903 msgid "I<tzh_typecnt>"
6907 #: build/C/man5/tzfile.5:48
6909 "The number of \"local time types\" for which data is stored in the file "
6910 "(must not be zero)."
6914 #: build/C/man5/tzfile.5:48
6916 msgid "I<tzh_charcnt>"
6920 #: build/C/man5/tzfile.5:52
6922 "The number of characters of \"timezone abbreviation strings\" stored in the "
6927 #: build/C/man5/tzfile.5:74
6929 "The above header is followed by I<tzh_timecnt> four-byte values of type "
6930 "I<long>, sorted in ascending order. These values are written in "
6931 "\"standard\" byte order. Each is used as a transition time (as returned by "
6932 "B<time>(2)) at which the rules for computing local time change. Next come "
6933 "I<tzh_timecnt> one-byte values of type I<unsigned char>; each one tells "
6934 "which of the different types of \"local time\" types described in the file "
6935 "is associated with the same-indexed transition time. These values serve as "
6936 "indices into an array of I<ttinfo> structures (with I<tzh_typecnt> entries) "
6937 "that appear next in the file; these structures are defined as follows:"
6941 #: build/C/man5/tzfile.5:82
6945 " long tt_gmtoff;\n"
6947 " unsigned int tt_abbrind;\n"
6952 #: build/C/man5/tzfile.5:107
6954 "Each structure is written as a four-byte value for I<tt_gmtoff> of type "
6955 "I<long>, in a standard byte order, followed by a one-byte value for "
6956 "I<tt_isdst> and a one-byte value for I<tt_abbrind>. In each structure, "
6957 "I<tt_gmtoff> gives the number of seconds to be added to UTC, I<tt_isdst> "
6958 "tells whether I<tm_isdst> should be set by B<localtime>(3), and "
6959 "I<tt_abbrind> serves as an index into the array of timezone abbreviation "
6960 "characters that follow the I<ttinfo> structure(s) in the file."
6964 #: build/C/man5/tzfile.5:119
6966 "Then there are I<tzh_leapcnt> pairs of four-byte values, written in standard "
6967 "byte order; the first value of each pair gives the time (as returned by "
6968 "B<time>(2)) at which a leap second occurs; the second gives the I<total> "
6969 "number of leap seconds to be applied after the given time. The pairs of "
6970 "values are sorted in ascending order by time."
6974 #: build/C/man5/tzfile.5:127
6976 "Then there are I<tzh_ttisstdcnt> standard/wall indicators, each stored as a "
6977 "one-byte value; they tell whether the transition times associated with local "
6978 "time types were specified as standard time or wall clock time, and are used "
6979 "when a timezone file is used in handling POSIX-style timezone environment "
6984 #: build/C/man5/tzfile.5:135
6986 "Finally, there are I<tzh_ttisgmtcnt> UTC/local indicators, each stored as a "
6987 "one-byte value; they tell whether the transition times associated with local "
6988 "time types were specified as UTC or local time, and are used when a timezone "
6989 "file is used in handling POSIX-style timezone environment variables."
6993 #: build/C/man5/tzfile.5:147
6995 "B<localtime>(3) uses the first standard-time I<ttinfo> structure in the "
6996 "file (or simply the first I<ttinfo> structure in the absence of a "
6997 "standard-time structure) if either I<tzh_timecnt> is zero or the time "
6998 "argument is less than the first transition time recorded in the file."
7002 #: build/C/man5/tzfile.5:157
7004 "For version-2-format timezone files, the above header and data is followed "
7005 "by a second header and data, identical in format except that eight bytes are "
7006 "used for each transition time or leap-second time. After the second header "
7007 "and data comes a newline-enclosed, POSIX-TZ-environment-variable-style "
7008 "string for use in handling instants after the last transition time stored in "
7009 "the file (with nothing between the newlines if there is no POSIX "
7010 "representation for such instants)."
7014 #: build/C/man5/tzfile.5:161
7015 msgid "B<ctime>(3), B<tzset>(3), B<tzselect>(8),"
7019 #: build/C/man5/tzfile.5:164
7020 msgid "I<timezone/tzfile.h> in the glibc source tree"
7024 #: build/C/man8/tzselect.8:5
7030 #: build/C/man8/tzselect.8:5
7036 #: build/C/man8/tzselect.8:5 build/C/man8/zdump.8:5 build/C/man8/zic.8:5
7038 msgid "Linux System Administration"
7042 #: build/C/man8/tzselect.8:8
7043 msgid "tzselect - select a timezone"
7047 #: build/C/man8/tzselect.8:10
7052 #: build/C/man8/tzselect.8:18
7054 "The B<tzselect> program asks the user for information about the current "
7055 "location, and outputs the resulting timezone description to standard "
7056 "output. The output is suitable as a value for the B<TZ> environment "
7061 #: build/C/man8/tzselect.8:20
7062 msgid "All interaction with the user is done via standard input and standard error."
7066 #: build/C/man8/tzselect.8:23
7068 "The exit status is zero if a timezone was successfully obtained from the "
7069 "user, nonzero otherwise."
7073 #: build/C/man8/tzselect.8:24
7079 #: build/C/man8/tzselect.8:30
7080 msgid "Name of a Posix-compliant I<awk> program (default: B<awk>)."
7084 #: build/C/man8/tzselect.8:30 build/C/man3/tzset.3:181
7089 #. or perhaps /usr/local/etc/zoneinfo in some older systems.
7091 #: build/C/man8/tzselect.8:35
7093 "Name of the directory containing timezone data files (default: "
7094 "I</usr/share/zoneinfo>)."
7098 #: build/C/man8/tzselect.8:36
7100 msgid "B<TZDIR>I</iso3166.tab>"
7104 #: build/C/man8/tzselect.8:39
7105 msgid "Table of ISO 3166 2-letter country codes and country names."
7109 #: build/C/man8/tzselect.8:39
7111 msgid "B<TZDIR>I</zone.tab>"
7115 #: build/C/man8/tzselect.8:43
7117 "Table of country codes, latitude and longitude, TZ values, and descriptive "
7122 #: build/C/man8/tzselect.8:43
7124 msgid "B<TZDIR>I</>I<TZ>"
7128 #: build/C/man8/tzselect.8:47
7129 msgid "Time zone data file for timezone I<TZ>."
7132 #. @(#)tzselect.8 1.3
7134 #: build/C/man8/tzselect.8:52
7135 msgid "B<tzfile>(5), B<zdump>(8), B<zic>(8)"
7139 #: build/C/man3/tzset.3:33
7145 #: build/C/man3/tzset.3:33
7151 #: build/C/man3/tzset.3:36
7152 msgid "tzset, tzname, timezone, daylight - initialize time conversion information"
7156 #: build/C/man3/tzset.3:41
7158 msgid "B<void tzset (void);>\n"
7162 #: build/C/man3/tzset.3:45
7165 "B<extern char *>I<tzname>B<[2];>\n"
7166 "B<extern long >I<timezone>B<;>\n"
7167 "B<extern int >I<daylight>B<;>\n"
7171 #: build/C/man3/tzset.3:54
7172 msgid "B<tzset>(): _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
7176 #: build/C/man3/tzset.3:57
7177 msgid "I<tzname>: _POSIX_C_SOURCE\\ E<gt>=\\ 1 || _XOPEN_SOURCE || _POSIX_SOURCE"
7181 #: build/C/man3/tzset.3:60
7182 msgid "I<timezone>: _SVID_SOURCE || _XOPEN_SOURCE"
7186 #: build/C/man3/tzset.3:63
7187 msgid "I<daylight>: _SVID_SOURCE || _XOPEN_SOURCE"
7191 #: build/C/man3/tzset.3:75
7193 "The B<tzset>() function initializes the I<tzname> variable from the B<TZ> "
7194 "environment variable. This function is automatically called by the other "
7195 "time conversion functions that depend on the timezone. In a System-V-like "
7196 "environment, it will also set the variables I<timezone> (seconds West of "
7197 "UTC) and I<daylight> (to 0 if this timezone does not have any daylight "
7198 "saving time rules, or to nonzero if there is a time during the year when "
7199 "daylight saving time applies)."
7203 #: build/C/man3/tzset.3:84
7205 "If the B<TZ> variable does not appear in the environment, the system "
7206 "timezone is used. The system timezone is configured by copying, or linking, "
7207 "a file in the B<tzfile>(5) format to I</etc/localtime>. A timezone database "
7208 "of these files may be located in the system timezone directory (see the "
7209 "B<FILES> section below)."
7213 #: build/C/man3/tzset.3:90
7215 "If the B<TZ> variable does appear in the environment, but its value is "
7216 "empty, or its value cannot be interpreted using any of the formats specified "
7217 "below, then Coordinated Universal Time (UTC) is used."
7221 #: build/C/man3/tzset.3:96
7223 "The value of B<TZ> can be one of two formats. The first format is a string "
7224 "of characters that directly represent the timezone to be used:"
7228 #: build/C/man3/tzset.3:99
7229 msgid "std offset I<dst>[I<offset>][,I<start>[I</time>],I<end>[I</time>]]"
7233 #: build/C/man3/tzset.3:112
7235 "There are no spaces in the specification. The I<std> string specifies the "
7236 "name of the timezone and must be three or more alphabetic characters. The "
7237 "I<offset> string immediately follows I<std> and specifies the time value to "
7238 "be added to the local time to get Coordinated Universal Time (UTC). The "
7239 "I<offset> is positive if the local timezone is west of the Prime Meridian "
7240 "and negative if it is east. The hour must be between 0 and 24, and the "
7241 "minutes and seconds 0 and 59."
7245 #: build/C/man3/tzset.3:117
7247 "The I<dst> string and I<offset> specify the name and offset for the "
7248 "corresponding daylight saving timezone. If the offset is omitted, it "
7249 "defaults to one hour ahead of standard time."
7253 #: build/C/man3/tzset.3:122
7255 "The I<start> field specifies when daylight saving time goes into effect and "
7256 "the I<end> field specifies when the change is made back to standard time. "
7257 "These fields may have the following formats:"
7261 #: build/C/man3/tzset.3:122
7267 #: build/C/man3/tzset.3:128
7269 "This specifies the Julian day with I<n> between 1 and 365. Leap days are "
7270 "not counted. In this format, February 29 can't be represented; February 28 "
7271 "is day 59, and March 1 is always day 60."
7275 #: build/C/man3/tzset.3:128
7281 #: build/C/man3/tzset.3:132
7283 "This specifies the zero-based Julian day with I<n> between 0 and 365. "
7284 "February 29 is counted in leap years."
7288 #: build/C/man3/tzset.3:132
7290 msgid "MI<m>.I<w>.I<d>"
7294 #: build/C/man3/tzset.3:140
7296 "This specifies day I<d> (0 E<lt>= I<d> E<lt>= 6) of week I<w> (1 E<lt>= I<w> "
7297 "E<lt>= 5) of month I<m> (1 E<lt>= I<m> E<lt>= 12). Week 1 is the first week "
7298 "in which day I<d> occurs and week 5 is the last week in which day I<d> "
7299 "occurs. Day 0 is a Sunday."
7303 #: build/C/man3/tzset.3:144
7305 "The I<time> fields specify when, in the local time currently in effect, the "
7306 "change to the other time occurs. If omitted, the default is 02:00:00."
7310 #: build/C/man3/tzset.3:150
7312 "Here is an example for New Zealand, where the standard time (NZST) is 12 "
7313 "hours ahead of UTC, and daylight saving time (NZDT), 13 hours ahead of UTC, "
7314 "runs from the first Sunday in October to the third Sunday in March, and the "
7315 "changeovers happen at the default time of 02:00:00:"
7319 #: build/C/man3/tzset.3:153
7321 msgid " TZ=\"NZST-12:00:00NZDT-13:00:00,M10.1.0,M3.3.0\"\n"
7325 #: build/C/man3/tzset.3:157
7327 "The second format specifies that the timezone information should be read "
7332 #: build/C/man3/tzset.3:160
7337 #: build/C/man3/tzset.3:170
7339 "If the file specification I<filespec> is omitted, or its value cannot be "
7340 "interpreted, then Coordinated Universal Time (UTC) is used. If I<filespec> "
7341 "is given, it specifies another B<tzfile>(5)-format file to read the timezone "
7342 "information from. If I<filespec> does not begin with a \\(aq/\\(aq, the "
7343 "file specification is relative to the system timezone directory. If the "
7344 "colon is omitted each of the above B<TZ> formats will be tried."
7348 #: build/C/man3/tzset.3:172
7349 msgid "Here's an example, once more for New Zealand:"
7353 #: build/C/man3/tzset.3:175
7355 msgid " TZ=\":Pacific/Auckland\"\n"
7359 #: build/C/man3/tzset.3:177
7365 #: build/C/man3/tzset.3:181
7367 "If this variable is set its value takes precedence over the system "
7368 "configured timezone."
7372 #: build/C/man3/tzset.3:185
7374 "If this variable is set its value takes precedence over the system "
7375 "configured timezone database directory path."
7379 #: build/C/man3/tzset.3:186
7381 msgid "B</etc/localtime>"
7385 #: build/C/man3/tzset.3:189
7386 msgid "The system timezone file."
7390 #: build/C/man3/tzset.3:189
7392 msgid "B</usr/share/zoneinfo/>"
7396 #: build/C/man3/tzset.3:192
7397 msgid "The system timezone database directory."
7401 #: build/C/man3/tzset.3:192
7403 msgid "B</usr/share/zoneinfo/posixrules>"
7407 #: build/C/man3/tzset.3:200
7409 "When a TZ string includes a dst timezone without anything following it, then "
7410 "this file is used for the start/end rules. It is in the B<tzfile>(5) "
7411 "format. By default, the zoneinfo Makefile hard links it to the "
7412 "I<America/New_York> tzfile."
7416 #: build/C/man3/tzset.3:203
7418 "Above are the current standard file locations, but they are configurable "
7419 "when glibc is compiled."
7423 #: build/C/man3/tzset.3:205
7424 msgid "SVr4, POSIX.1-2001, 4.3BSD."
7428 #: build/C/man3/tzset.3:212
7430 "Note that the variable I<daylight> does not indicate that daylight saving "
7431 "time applies right now. It used to give the number of some algorithm (see "
7432 "the variable I<tz_dsttime> in B<gettimeofday>(2)). It has been obsolete for "
7433 "many years but is required by SUSv2."
7437 #: build/C/man3/tzset.3:220
7439 "4.3BSD had a function B<char *timezone(>I<zone>B<, >I<dst>B<)> that returned "
7440 "the name of the timezone corresponding to its first argument (minutes West "
7441 "of UTC). If the second argument was 0, the standard name was used, "
7442 "otherwise the daylight saving time version."
7446 #: build/C/man3/tzset.3:227
7448 "B<date>(1), B<gettimeofday>(2), B<time>(2), B<ctime>(3), B<getenv>(3), "
7453 #: build/C/man2/utime.2:31
7459 #: build/C/man2/utime.2:34
7460 msgid "utime, utimes - change file last access and modification times"
7464 #: build/C/man2/utime.2:37
7466 msgid "B<#include E<lt>sys/types.hE<gt>>\n"
7470 #: build/C/man2/utime.2:39
7472 msgid "B<#include E<lt>utime.hE<gt>>\n"
7476 #: build/C/man2/utime.2:41
7479 "B<int utime(const char *>I<filename>B<, const struct utimbuf "
7484 #: build/C/man2/utime.2:45
7487 "B<int utimes(const char *>I<filename>B<, const struct timeval "
7488 ">I<times>B<[2]);>\n"
7492 #: build/C/man2/utime.2:50
7494 "B<Note:> modern applications may prefer to use the interfaces described in "
7499 #: build/C/man2/utime.2:61
7501 "The B<utime>() system call changes the access and modification times of the "
7502 "inode specified by I<filename> to the I<actime> and I<modtime> fields of "
7503 "I<times> respectively."
7507 #: build/C/man2/utime.2:66
7509 "If I<times> is NULL, then the access and modification times of the file are "
7510 "set to the current time."
7514 #: build/C/man2/utime.2:73
7516 "Changing timestamps is permitted when: either the process has appropriate "
7517 "privileges, or the effective user ID equals the user ID of the file, or "
7518 "I<times> is NULL and the process has write permission for the file."
7522 #: build/C/man2/utime.2:77
7523 msgid "The I<utimbuf> structure is:"
7527 #: build/C/man2/utime.2:84
7530 "struct utimbuf {\n"
7531 " time_t actime; /* access time */\n"
7532 " time_t modtime; /* modification time */\n"
7537 #: build/C/man2/utime.2:91
7539 "The B<utime>() system call allows specification of timestamps with a "
7540 "resolution of 1 second."
7544 #: build/C/man2/utime.2:104
7546 "The B<utimes>() system call is similar, but the I<times> argument refers to "
7547 "an array rather than a structure. The elements of this array are I<timeval> "
7548 "structures, which allow a precision of 1 microsecond for specifying "
7549 "timestamps. The I<timeval> structure is:"
7553 #: build/C/man2/utime.2:111
7556 "struct timeval {\n"
7557 " long tv_sec; /* seconds */\n"
7558 " long tv_usec; /* microseconds */\n"
7563 #: build/C/man2/utime.2:124
7565 "I<times>[0] specifies the new access time, and I<times>[1] specifies the new "
7566 "modification time. If I<times> is NULL, then analogously to B<utime>(), the "
7567 "access and modification times of the file are set to the current time."
7571 #: build/C/man2/utime.2:130 build/C/man2/utime.2:137 build/C/man2/utimensat.2:235
7577 #: build/C/man2/utime.2:137
7579 "Search permission is denied for one of the directories in the path prefix of "
7580 "I<path> (see also B<path_resolution>(7))."
7584 #: build/C/man2/utime.2:149
7586 "I<times> is NULL, the caller's effective user ID does not match the owner of "
7587 "the file, the caller does not have write access to the file, and the caller "
7588 "is not privileged (Linux: does not have either the B<CAP_DAC_OVERRIDE> or "
7589 "the B<CAP_FOWNER> capability)."
7593 #: build/C/man2/utime.2:149 build/C/man2/utimensat.2:344
7599 #: build/C/man2/utime.2:153
7600 msgid "I<filename> does not exist."
7604 #: build/C/man2/utime.2:162
7606 "I<times> is not NULL, the caller's effective UID does not match the owner of "
7607 "the file, and the caller is not privileged (Linux: does not have the "
7608 "B<CAP_FOWNER> capability)."
7612 #: build/C/man2/utime.2:162 build/C/man2/utimensat.2:405
7618 #: build/C/man2/utime.2:166
7619 msgid "I<path> resides on a read-only filesystem."
7623 #: build/C/man2/utime.2:172
7624 msgid "B<utime>(): SVr4, POSIX.1-2001. POSIX.1-2008 marks B<utime>() as obsolete."
7628 #: build/C/man2/utime.2:175
7629 msgid "B<utimes>(): 4.3BSD, POSIX.1-2001."
7633 #. In libc4 and libc5,
7635 #. is just a wrapper for
7637 #. and hence does not allow a subsecond resolution.
7639 #: build/C/man2/utime.2:185
7641 "Linux does not allow changing the timestamps on an immutable file, or "
7642 "setting the timestamps to something other than the current time on an "
7647 #: build/C/man2/utime.2:192
7649 "B<chattr>(1), B<futimesat>(2), B<stat>(2), B<utimensat>(2), B<futimens>(3), "
7654 #: build/C/man2/utimensat.2:26
7660 #: build/C/man2/utimensat.2:26
7666 #: build/C/man2/utimensat.2:29
7667 msgid "utimensat, futimens - change file timestamps with nanosecond precision"
7671 #: build/C/man2/utimensat.2:33
7674 "B<#include E<lt>fcntl.hE<gt> /* Definition of AT_* constants */>\n"
7675 "B<#include E<lt>sys/stat.hE<gt>>\n"
7679 #: build/C/man2/utimensat.2:36
7682 "B<int utimensat(int >I<dirfd>B<, const char *>I<pathname>B<,>\n"
7683 "B< const struct timespec >I<times>B<[2], int >I<flags>B<);>\n"
7687 #: build/C/man2/utimensat.2:38
7689 msgid "B<int futimens(int >I<fd>B<, const struct timespec >I<times>B<[2]);>\n"
7693 #: build/C/man2/utimensat.2:48
7694 msgid "B<utimensat>():"
7698 #: build/C/man2/utimensat.2:49 build/C/man2/utimensat.2:59
7700 msgid "Since glibc 2.10:"
7704 #: build/C/man2/utimensat.2:52 build/C/man2/utimensat.2:62
7705 msgid "_XOPEN_SOURCE\\ E<gt>=\\ 700 || _POSIX_C_SOURCE\\ E<gt>=\\ 200809L"
7709 #: build/C/man2/utimensat.2:52 build/C/man2/utimensat.2:62
7711 msgid "Before glibc 2.10:"
7715 #: build/C/man2/utimensat.2:55
7716 msgid "_ATFILE_SOURCE"
7720 #: build/C/man2/utimensat.2:58
7721 msgid "B<futimens>():"
7725 #: build/C/man2/utimensat.2:79
7727 "B<utimensat>() and B<futimens>() update the timestamps of a file with "
7728 "nanosecond precision. This contrasts with the historical B<utime>(2) and "
7729 "B<utimes>(2), which permit only second and microsecond precision, "
7730 "respectively, when setting file timestamps."
7734 #: build/C/man2/utimensat.2:89
7736 "With B<utimensat>() the file is specified via the pathname given in "
7737 "I<pathname>. With B<futimens>() the file whose timestamps are to be "
7738 "updated is specified via an open file descriptor, I<fd>."
7742 #: build/C/man2/utimensat.2:101
7744 "For both calls, the new file timestamps are specified in the array I<times>: "
7745 "I<times>[0] specifies the new \"last access time\" (I<atime>); I<times>[1] "
7746 "specifies the new \"last modification time\" (I<mtime>). Each of the "
7747 "elements of I<times> specifies a time as the number of seconds and "
7748 "nanoseconds since the Epoch, 1970-01-01 00:00:00 +0000 (UTC). This "
7749 "information is conveyed in a structure of the following form:"
7753 #: build/C/man2/utimensat.2:113
7755 "Updated file timestamps are set to the greatest value supported by the "
7756 "filesystem that is not greater than the specified time."
7759 #. 2.6.22 was broken: it is not ignored
7761 #: build/C/man2/utimensat.2:132
7763 "If the I<tv_nsec> field of one of the I<timespec> structures has the special "
7764 "value B<UTIME_NOW>, then the corresponding file timestamp is set to the "
7765 "current time. If the I<tv_nsec> field of one of the I<timespec> structures "
7766 "has the special value B<UTIME_OMIT>, then the corresponding file timestamp "
7767 "is left unchanged. In both of these cases, the value of the corresponding "
7768 "I<tv_sec> field is ignored."
7772 #: build/C/man2/utimensat.2:137
7773 msgid "If I<times> is NULL, then both timestamps are set to the current time."
7777 #: build/C/man2/utimensat.2:137
7779 msgid "Permissions requirements"
7783 #: build/C/man2/utimensat.2:145
7785 "To set both file timestamps to the current time (i.e., I<times> is NULL, or "
7786 "both I<tv_nsec> fields specify B<UTIME_NOW>), either:"
7790 #: build/C/man2/utimensat.2:145
7795 #. 2.6.22 was broken here -- for futimens() the check is
7796 #. based on whether or not the file descriptor is writable,
7797 #. not on whether the caller's effective UID has write
7798 #. permission for the file referred to by the descriptor.
7800 #: build/C/man2/utimensat.2:151
7801 msgid "the caller must have write access to the file;"
7805 #: build/C/man2/utimensat.2:151
7811 #: build/C/man2/utimensat.2:153
7812 msgid "the caller's effective user ID must match the owner of the file; or"
7816 #: build/C/man2/utimensat.2:153
7822 #: build/C/man2/utimensat.2:155
7823 msgid "the caller must have appropriate privileges."
7826 #. 2.6.22 was broken here:
7827 #. both must be something other than *either* UTIME_OMIT *or* UTIME_NOW.
7829 #: build/C/man2/utimensat.2:170
7831 "To make any change other than setting both timestamps to the current time "
7832 "(i.e., I<times> is not NULL, and neither I<tv_nsec> field is B<UTIME_NOW> "
7833 "and neither I<tv_nsec> field is B<UTIME_OMIT>), either condition 2 or 3 "
7838 #: build/C/man2/utimensat.2:180
7840 "If both I<tv_nsec> fields are specified as B<UTIME_OMIT>, then no file "
7841 "ownership or permission checks are performed, and the file timestamps are "
7842 "not modified, but other error conditions may still be detected."
7846 #: build/C/man2/utimensat.2:180
7848 msgid "utimensat() specifics"
7851 #. FIXME . Say something about O_SEARCH? (But it's not in current
7852 #. glibc (Mar 08), or kernel 2.6.25.)
7854 #: build/C/man2/utimensat.2:195
7856 "If I<pathname> is relative, then by default it is interpreted relative to "
7857 "the directory referred to by the open file descriptor, I<dirfd> (rather than "
7858 "relative to the current working directory of the calling process, as is done "
7859 "by B<utimes>(2) for a relative pathname). See B<openat>(2) for an "
7860 "explanation of why this can be useful."
7864 #: build/C/man2/utimensat.2:219
7866 "The I<flags> field is a bit mask that may be 0, or include the following "
7867 "constant, defined in I<E<lt>fcntl.hE<gt>>:"
7871 #: build/C/man2/utimensat.2:219
7873 msgid "B<AT_SYMLINK_NOFOLLOW>"
7877 #: build/C/man2/utimensat.2:225
7879 "If I<pathname> specifies a symbolic link, then update the timestamps of the "
7880 "link, rather than the file to which it refers."
7884 #: build/C/man2/utimensat.2:234
7886 "On success, B<utimensat>() and B<futimens>() return 0. On error, -1 is "
7887 "returned and I<errno> is set to indicate the error."
7891 #: build/C/man2/utimensat.2:244
7892 msgid "I<times> is NULL, or both I<tv_nsec> values are B<UTIME_NOW>, and:"
7895 #. But Linux 2.6.22 was broken here.
7896 #. Traditionally, utime()/utimes() gives the error EACCES for the case
7897 #. where the timestamp pointer argument is NULL (i.e., set both timestamps
7898 #. to the current time), and the file is owned by a user other than the
7899 #. effective UID of the caller, and the file is not writable by the
7900 #. effective UID of the program. utimensat() also gives this error in the
7901 #. same case. However, in the same circumstances, when utimensat() is
7902 #. given a 'times' array in which both tv_nsec fields are UTIME_NOW, which
7903 #. provides equivalent functionality to specifying 'times' as NULL, the
7904 #. call succeeds. It should fail with the error EACCES in this case.
7906 #. POSIX.1-2008 has the following:
7909 #. .RB ( utimensat ())
7911 #. was not opened with
7913 #. and the permissions of the directory to which
7915 #. refers do not allow searches.
7917 #: build/C/man2/utimensat.2:277
7919 "the effective user ID of the caller does not match the owner of the file, "
7920 "the caller does not have write access to the file, and the caller is not "
7921 "privileged (Linux: does not have either the B<CAP_FOWNER> or the "
7922 "B<CAP_DAC_OVERRIDE> capability); or,"
7925 #. EXT2_IMMUTABLE_FL and similar flags for other filesystems.
7927 #: build/C/man2/utimensat.2:281
7928 msgid "the file is marked immutable (see B<chattr>(1))."
7932 #: build/C/man2/utimensat.2:288
7933 msgid "(B<futimens>()) I<fd> is not a valid file descriptor."
7937 #: build/C/man2/utimensat.2:297
7939 "(B<utimensat>()) I<pathname> is a relative pathname, but I<dirfd> is "
7940 "neither B<AT_FDCWD> nor a valid file descriptor."
7944 #: build/C/man2/utimensat.2:307
7946 "I<times> pointed to an invalid address; or, I<dirfd> was B<AT_FDCWD>, and "
7947 "I<pathname> is NULL or an invalid address."
7951 #: build/C/man2/utimensat.2:311
7952 msgid "Invalid value in I<flags>."
7956 #: build/C/man2/utimensat.2:322
7958 "Invalid value in one of the I<tv_nsec> fields (value outside range 0 to "
7959 "999,999,999, and not B<UTIME_NOW> or B<UTIME_OMIT>); or an invalid value in "
7960 "one of the I<tv_sec> fields."
7963 #. SUSv4 does not specify this error.
7965 #: build/C/man2/utimensat.2:334
7967 "I<pathname> is NULL, I<dirfd> is not B<AT_FDCWD>, and I<flags> contains "
7968 "B<AT_SYMLINK_NOFOLLOW>."
7972 #: build/C/man2/utimensat.2:334
7978 #: build/C/man2/utimensat.2:339
7980 "(B<utimensat>()) Too many symbolic links were encountered in resolving "
7985 #: build/C/man2/utimensat.2:339
7987 msgid "B<ENAMETOOLONG>"
7991 #: build/C/man2/utimensat.2:344
7992 msgid "(B<utimensat>()) I<pathname> is too long."
7996 #: build/C/man2/utimensat.2:353
7998 "(B<utimensat>()) A component of I<pathname> does not refer to an existing "
7999 "directory or file, or I<pathname> is an empty string."
8003 #: build/C/man2/utimensat.2:365
8005 "(B<utimensat>()) I<pathname> is a relative pathname, but I<dirfd> is "
8006 "neither B<AT_FDCWD> nor a file descriptor referring to a directory; or, one "
8007 "of the prefix components of I<pathname> is not a directory."
8011 #: build/C/man2/utimensat.2:382
8013 "The caller attempted to change one or both timestamps to a value other than "
8014 "the current time, or to change one of the timestamps to the current time "
8015 "while leaving the other timestamp unchanged, (i.e., I<times> is not NULL, "
8016 "neither I<tv_nsec> field is B<UTIME_NOW>, and neither I<tv_nsec> field is "
8017 "B<UTIME_OMIT>) and:"
8021 #: build/C/man2/utimensat.2:390
8023 "the caller's effective user ID does not match the owner of file, and the "
8024 "caller is not privileged (Linux: does not have the B<CAP_FOWNER> "
8028 #. Linux 2.6.22 was broken here:
8029 #. it was not consistent with the old utimes() implementation,
8030 #. since the case when both tv_nsec fields are UTIME_NOW, was not
8031 #. treated like the (times == NULL) case.
8032 #. EXT2_IMMUTABLE_FL EXT_APPPEND_FL and similar flags for
8033 #. other filesystems.
8035 #. Why the inconsistency (which is described under NOTES) between
8036 #. EACCES and EPERM, where only EPERM tests for append-only.
8037 #. (This was also so for the older utimes() implementation.)
8039 #: build/C/man2/utimensat.2:403
8040 msgid "the file is marked append-only or immutable (see B<chattr>(1))."
8044 #: build/C/man2/utimensat.2:408
8045 msgid "The file is on a read-only filesystem."
8049 #: build/C/man2/utimensat.2:413
8051 "(B<utimensat>()) Search permission is denied for one of the prefix "
8052 "components of I<pathname>."
8056 #: build/C/man2/utimensat.2:417
8058 "B<utimensat>() was added to Linux in kernel 2.6.22; glibc support was added "
8063 #: build/C/man2/utimensat.2:421
8064 msgid "Support for B<futimens>() first appeared in glibc 2.6."
8068 #: build/C/man2/utimensat.2:426
8069 msgid "B<futimens>() and B<utimensat>() are specified in POSIX.1-2008."
8073 #: build/C/man2/utimensat.2:430
8074 msgid "B<utimensat>() obsoletes B<futimesat>(2)."
8078 #: build/C/man2/utimensat.2:439
8080 "On Linux, timestamps cannot be changed for a file marked immutable, and the "
8081 "only change permitted for files marked append-only is to set the timestamps "
8082 "to the current time. (This is consistent with the historical behavior of "
8083 "B<utime>(2) and B<utimes>(2) on Linux.)"
8087 #: build/C/man2/utimensat.2:456
8089 "On Linux, B<futimens>() is a library function implemented on top of the "
8090 "B<utimensat>() system call. To support this, the Linux B<utimensat>() "
8091 "system call implements a nonstandard feature: if I<pathname> is NULL, then "
8092 "the call modifies the timestamps of the file referred to by the file "
8093 "descriptor I<dirfd> (which may refer to any type of file). Using this "
8094 "feature, the call I<futimens(fd,\\ times)> is implemented as:"
8098 #: build/C/man2/utimensat.2:459
8100 msgid " utimensat(fd, NULL, times, 0);\n"
8104 #: build/C/man2/utimensat.2:472
8106 "If both I<tv_nsec> fields are specified as B<UTIME_OMIT>, then the Linux "
8107 "implementation of B<utimensat>() succeeds even if the file referred to by "
8108 "I<dirfd> and I<pathname> does not exist."
8112 #: build/C/man2/utimensat.2:480
8114 "Several bugs afflict B<utimensat>() and B<futimens>() on kernels before "
8115 "2.6.26. These bugs are either nonconformances with the POSIX.1 draft "
8116 "specification or inconsistencies with historical Linux behavior."
8120 #: build/C/man2/utimensat.2:495
8122 "POSIX.1 specifies that if one of the I<tv_nsec> fields has the value "
8123 "B<UTIME_NOW> or B<UTIME_OMIT>, then the value of the corresponding I<tv_sec> "
8124 "field should be ignored. Instead, the value of the I<tv_sec> field is "
8125 "required to be 0 (or the error B<EINVAL> results)."
8128 #. Below, the long description of the errors from the previous bullet
8129 #. point (abridged because it's too much detail for a man page).
8139 #. should occur if the process's effective user ID does not match
8140 #. the file owner and the process is not privileged.
8141 #. Instead, the call successfully changes one of the timestamps.
8143 #. If file is not writable by the effective user ID of the process and
8144 #. the process's effective user ID does not match the file owner and
8145 #. the process is not privileged,
8148 #. is NULL, then the error
8151 #. This error should also occur if
8153 #. points to an array of structures in which both
8157 #. Instead the call succeeds.
8159 #. If a file is marked as append-only (see
8161 #. then Linux traditionally
8167 #. argument to be used in order to update both timestamps to the current time.
8172 #. should also produce the same result when given a
8174 #. argument that points to an array of structures in which both
8178 #. Instead, the call fails with the error
8181 #. If a file is marked as immutable (see
8183 #. then Linux traditionally
8196 #. should also produce the same result when given a
8198 #. that points to an array of structures in which both
8202 #. Instead, the call fails with the error
8205 #: build/C/man2/utimensat.2:597
8207 "Various bugs mean that for the purposes of permission checking, the case "
8208 "where both I<tv_nsec> fields are set to B<UTIME_NOW> isn't always treated "
8209 "the same as specifying I<times> as NULL, and the case where one I<tv_nsec> "
8210 "value is B<UTIME_NOW> and the other is B<UTIME_OMIT> isn't treated the same "
8211 "as specifying I<times> as a pointer to an array of structures containing "
8212 "arbitrary time values. As a result, in some cases: a) file timestamps can "
8213 "be updated by a process that shouldn't have permission to perform updates; "
8214 "b) file timestamps can't be updated by a process that should have permission "
8215 "to perform updates; and c) the wrong I<errno> value is returned in case of "
8219 #. This means that a process with a file descriptor that allows
8220 #. writing could change the timestamps of a file for which it
8221 #. does not have write permission;
8222 #. conversely, a process with a read-only file descriptor won't
8223 #. be able to update the timestamps of a file,
8224 #. even if it has write permission on the file.
8226 #: build/C/man2/utimensat.2:618
8228 "POSIX.1 says that a process that has I<write access to the file> can make a "
8229 "call with I<times> as NULL, or with I<times> pointing to an array of "
8230 "structures in which both I<tv_nsec> fields are B<UTIME_NOW>, in order to "
8231 "update both timestamps to the current time. However, B<futimens>() instead "
8232 "checks whether the I<access mode of the file descriptor allows writing>."
8236 #: build/C/man2/utimensat.2:627
8238 "B<chattr>(1), B<futimesat>(2), B<openat>(2), B<stat>(2), B<utimes>(2), "
8239 "B<futimes>(3), B<path_resolution>(7), B<symlink>(7)"
8243 #: build/C/man8/zdump.8:5
8249 #: build/C/man8/zdump.8:5
8255 #: build/C/man8/zdump.8:8
8256 msgid "zdump - timezone dumper"
8260 #: build/C/man8/zdump.8:21
8262 "B<zdump> [ B<--version> ] [ B<--help> ] [ B<-v> ] [ B<-c> "
8263 "[I<loyear>B<,>]I<hiyear> ] [ I<zonename> ... ]"
8267 #: build/C/man8/zdump.8:26
8269 "I<Zdump> prints the current time in each I<zonename> named on the command "
8274 #: build/C/man8/zdump.8:28 build/C/man8/zic.8:50
8275 msgid "These options are available:"
8279 #: build/C/man8/zdump.8:28
8281 msgid "B<--version>"
8285 #: build/C/man8/zdump.8:31
8286 msgid "Output version information and exit."
8290 #: build/C/man8/zdump.8:34
8291 msgid "Output short usage and exit."
8295 #: build/C/man8/zdump.8:34 build/C/man8/zic.8:76
8301 #: build/C/man8/zdump.8:50
8303 "For each I<zonename> on the command line, print the time at the lowest "
8304 "possible time value, the time one day after the lowest possible time value, "
8305 "the times both one second before and exactly at each detected time "
8306 "discontinuity, the time at one day less than the highest possible time "
8307 "value, and the time at the highest possible time value. Each line ends with "
8308 "B<isdst=1> if the given time is Daylight Saving Time or B<isdst=0> "
8313 #: build/C/man8/zdump.8:50
8315 msgid "B<-c >[I<loyear>B<,>]I<hiyear>"
8319 #: build/C/man8/zdump.8:56
8321 "Cut off the verbose output near the start of the given year(s). The output "
8322 "still includes the lowest possible time value and one day after it, and the "
8323 "highest possible time value preceded by the time value one day before it."
8328 #: build/C/man8/zdump.8:60
8329 msgid "B<tzfile>(5), B<zic>(8)"
8333 #: build/C/man8/zic.8:5
8339 #: build/C/man8/zic.8:8
8340 msgid "zic - timezone compiler"
8344 #: build/C/man8/zic.8:32
8346 "B<zic> [ B<-v> ] [ B<-d> I<directory> ] [ B<-l> I<localtime> ] [ B<-p> "
8347 "I<posixrules> ] [ B<-L> I<leapsecondfilename> ] [ B<-s> ] [ B<-y> I<command> "
8348 "] [ I<filename> \\&... ]"
8352 #: build/C/man8/zic.8:48
8354 "I<Zic> reads text from the file(s) named on the command line and creates the "
8355 "time conversion information files specified in this input. If a I<filename> "
8356 "is B<->, the standard input is read."
8360 #: build/C/man8/zic.8:50
8362 msgid "B<-d >I<directory>"
8366 #: build/C/man8/zic.8:54
8368 "Create time conversion information files in the named directory rather than "
8369 "in the standard directory named below."
8373 #: build/C/man8/zic.8:54
8375 msgid "B<-l >I<timezone>"
8379 #: build/C/man8/zic.8:59
8381 "Use the given timezone as local time. I<Zic> will act as if the input "
8382 "contained a link line of the form"
8386 #: build/C/man8/zic.8:62
8387 msgid "Link\tI<timezone>\t\tlocaltime"
8391 #: build/C/man8/zic.8:62
8393 msgid "B<-p >I<timezone>"
8397 #: build/C/man8/zic.8:68
8399 "Use the given timezone's rules when handling POSIX-format timezone "
8400 "environment variables. I<Zic> will act as if the input contained a link "
8405 #: build/C/man8/zic.8:71
8406 msgid "Link\tI<timezone>\t\tposixrules"
8410 #: build/C/man8/zic.8:71
8412 msgid "B<-L >I<leapsecondfilename>"
8416 #: build/C/man8/zic.8:76
8418 "Read leap second information from the file with the given name. If this "
8419 "option is not used, no leap second information appears in output files."
8423 #: build/C/man8/zic.8:82
8425 "Complain if a year that appears in a data file is outside the range of years "
8426 "representable by B<time>(2) values."
8430 #: build/C/man8/zic.8:82
8436 #: build/C/man8/zic.8:87
8438 "Limit time values stored in output files to values that are the same whether "
8439 "they're taken to be signed or unsigned. You can use this option to generate "
8440 "SVVS-compatible files."
8444 #: build/C/man8/zic.8:87
8446 msgid "B<-y >I<command>"
8450 #: build/C/man8/zic.8:94
8452 "Use the given I<command> rather than B<yearistype> when checking year types "
8457 #: build/C/man8/zic.8:105
8459 "Input lines are made up of fields. Fields are separated from one another by "
8460 "any number of white space characters. Leading and trailing white space on "
8461 "input lines is ignored. An unquoted sharp character (#) in the input "
8462 "introduces a comment which extends to the end of the line the sharp "
8463 "character appears on. White space characters and sharp characters may be "
8464 "enclosed in double quotes (\") if they're to be used as part of a field. "
8465 "Any line that is blank (after comment stripping) is ignored. Nonblank lines "
8466 "are expected to be of one of three types: rule lines, zone lines, and link "
8471 #: build/C/man8/zic.8:107
8472 msgid "A rule line has the form"
8476 #: build/C/man8/zic.8:109
8479 "\\w'Rule\\0\\0'u +\\w'NAME\\0\\0'u +\\w'FROM\\0\\0'u +\\w'1973\\0\\0'u "
8480 "+\\w'TYPE\\0\\0'u +\\w'Apr\\0\\0'u +\\w'lastSun\\0\\0'u +\\w'2:00\\0\\0'u "
8485 #: build/C/man8/zic.8:112
8487 msgid "Rule\tNAME\tFROM\tTO\tTYPE\tIN\tON\tAT\tSAVE\tLETTER/S\n"
8491 #: build/C/man8/zic.8:114 build/C/man8/zic.8:271 build/C/man8/zic.8:342 build/C/man8/zic.8:367
8493 msgid "For example:\n"
8497 #: build/C/man8/zic.8:117
8499 msgid "Rule\tUS\t1967\t1973\t-\tApr\tlastSun\t2:00\t1:00\tD\n"
8503 #: build/C/man8/zic.8:120
8504 msgid "The fields that make up a rule line are:"
8508 #: build/C/man8/zic.8:120 build/C/man8/zic.8:277
8514 #: build/C/man8/zic.8:123
8515 msgid "Gives the (arbitrary) name of the set of rules this rule is part of."
8519 #: build/C/man8/zic.8:123
8525 #: build/C/man8/zic.8:136
8527 "Gives the first year in which the rule applies. Any integer year can be "
8528 "supplied; the Gregorian calendar is assumed. The word I<minimum> (or an "
8529 "abbreviation) means the minimum year representable as an integer. The word "
8530 "I<maximum> (or an abbreviation) means the maximum year representable as an "
8531 "integer. Rules can describe times that are not representable as time "
8532 "values, with the unrepresentable times ignored; this allows rules to be "
8533 "portable among hosts with differing time value types."
8537 #: build/C/man8/zic.8:136
8543 #: build/C/man8/zic.8:150
8545 "Gives the final year in which the rule applies. In addition to I<minimum> "
8546 "and I<maximum> (as above), the word I<only> (or an abbreviation) may be "
8547 "used to repeat the value of the B<FROM> field."
8551 #: build/C/man8/zic.8:150
8557 #: build/C/man8/zic.8:167
8559 "Gives the type of year in which the rule applies. If B<TYPE> is B<->, then "
8560 "the rule applies in all years between B<FROM> and B<TO> inclusive. If "
8561 "B<TYPE> is something else, then I<zic> executes the command"
8565 #: build/C/man8/zic.8:171
8566 msgid "B<yearistype> I<year> I<type>"
8570 #: build/C/man8/zic.8:175
8572 "to check the type of a year: an exit status of zero is taken to mean that "
8573 "the year is of the given type; an exit status of one is taken to mean that "
8574 "the year is not of the given type."
8578 #: build/C/man8/zic.8:175
8584 #: build/C/man8/zic.8:179
8586 "Names the month in which the rule takes effect. Month names may be "
8591 #: build/C/man8/zic.8:179
8597 #: build/C/man8/zic.8:183
8598 msgid "Gives the day on which the rule takes effect. Recognized forms include:"
8602 #: build/C/man8/zic.8:186
8604 msgid "\\w'SunE<lt>=25\\0\\0'u"
8608 #: build/C/man8/zic.8:192
8611 "5\tthe fifth of the month\n"
8612 "lastSun\tthe last Sunday in the month\n"
8613 "lastMon\tthe last Monday in the month\n"
8614 "SunE<gt>=8\tfirst Sunday on or after the eighth\n"
8615 "SunE<lt>=25\tlast Sunday on or before the 25th\n"
8619 #: build/C/man8/zic.8:199
8621 "Names of days of the week may be abbreviated or spelled out in full. Note "
8622 "that there must be no spaces within the B<ON> field."
8626 #: build/C/man8/zic.8:199
8632 #: build/C/man8/zic.8:203
8634 "Gives the time of day at which the rule takes effect. Recognized forms "
8639 #: build/C/man8/zic.8:206
8641 msgid "\\w'1:28:13\\0\\0'u"
8645 #: build/C/man8/zic.8:212
8648 "2\ttime in hours\n"
8649 "2:00\ttime in hours and minutes\n"
8650 "15:00\t24-hour format time (for times after noon)\n"
8651 "1:28:14\ttime in hours, minutes, and seconds\n"
8652 "-\tequivalent to 0\n"
8656 #: build/C/man8/zic.8:234
8658 "where hour 0 is midnight at the start of the day, and hour 24 is midnight at "
8659 "the end of the day. Any of these forms may be followed by the letter I<w> "
8660 "if the given time is local E<.q \"wall clock\"> time, I<s> if the given time "
8661 "is local E<.q standard> time, or I<u> (or I<g> or I<z>) if the given time "
8662 "is universal time; in the absence of an indicator, wall clock time is "
8667 #: build/C/man8/zic.8:234
8673 #: build/C/man8/zic.8:246
8675 "Gives the amount of time to be added to local standard time when the rule is "
8676 "in effect. This field has the same format as the B<AT> field (although, of "
8677 "course, the I<w> and I<s> suffixes are not used)."
8681 #: build/C/man8/zic.8:246
8687 #: build/C/man8/zic.8:262
8689 "Gives the E<.q \"variable part\"> (for example, the E<.q S> or E<.q D> in "
8690 "E<.q EST> or E<.q EDT )> of timezone abbreviations to be used when this rule "
8691 "is in effect. If this field is B<->, the variable part is null."
8695 #: build/C/man8/zic.8:264
8696 msgid "A zone line has the form"
8700 #: build/C/man8/zic.8:267
8703 "\\w'Zone\\0\\0'u +\\w'Australia/Adelaide\\0\\0'u +\\w'UTCOFF\\0\\0'u "
8704 "+\\w'RULES/SAVE\\0\\0'u +\\w'FORMAT\\0\\0'u"
8708 #: build/C/man8/zic.8:269
8710 msgid "Zone\tNAME\tUTCOFF\tRULES/SAVE\tFORMAT\t[UNTIL]\n"
8714 #: build/C/man8/zic.8:274
8716 msgid "Zone\tAustralia/Adelaide\t9:30\tAus\tCST\t1971 Oct 31 2:00\n"
8720 #: build/C/man8/zic.8:277
8721 msgid "The fields that make up a zone line are:"
8725 #: build/C/man8/zic.8:282
8727 "The name of the timezone. This is the name used in creating the time "
8728 "conversion information file for the zone."
8732 #: build/C/man8/zic.8:282
8738 #: build/C/man8/zic.8:291
8740 "The amount of time to add to UTC to get standard time in this zone. This "
8741 "field has the same format as the B<AT> and B<SAVE> fields of rule lines; "
8742 "begin the field with a minus sign if time must be subtracted from UTC."
8746 #: build/C/man8/zic.8:291
8748 msgid "B<RULES/SAVE>"
8752 #: build/C/man8/zic.8:298
8754 "The name of the rule(s) that apply in the timezone or, alternately, an "
8755 "amount of time to add to local standard time. If this field is B<->, then "
8756 "standard time always applies in the timezone."
8760 #: build/C/man8/zic.8:298
8766 #: build/C/man8/zic.8:309
8768 "The format for timezone abbreviations in this timezone. The pair of "
8769 "characters B<%s> is used to show where the E<.q \"variable part\"> of the "
8770 "timezone abbreviation goes. Alternately, a slash (/) separates standard "
8771 "and daylight abbreviations."
8775 #: build/C/man8/zic.8:309
8781 #: build/C/man8/zic.8:319
8783 "The time at which the UTC offset or the rule(s) change for a location. It "
8784 "is specified as a year, a month, a day, and a time of day. If this is "
8785 "specified, the timezone information is generated from the given UTC offset "
8786 "and rule change until the time specified. The month, day, and time of day "
8787 "have the same format as the IN, ON, and AT columns of a rule; trailing "
8788 "columns can be omitted, and default to the earliest possible value for the "
8793 #: build/C/man8/zic.8:333
8795 "The next line must be a E<.q continuation> line; this has the same form as a "
8796 "zone line except that the string E<.q Zone> and the name are omitted, as the "
8797 "continuation line will place information starting at the time specified as "
8798 "the B<UNTIL> field in the previous line in the file used by the previous "
8799 "line. Continuation lines may contain an B<UNTIL> field, just as zone lines "
8800 "do, indicating that the next line is a further continuation."
8804 #: build/C/man8/zic.8:335
8805 msgid "A link line has the form"
8809 #: build/C/man8/zic.8:338
8811 msgid "\\w'Link\\0\\0'u +\\w'Europe/Istanbul\\0\\0'u"
8815 #: build/C/man8/zic.8:340
8817 msgid "Link\tLINK-FROM\tLINK-TO\n"
8821 #: build/C/man8/zic.8:345
8823 msgid "Link\tEurope/Istanbul\tAsia/Istanbul\n"
8827 #: build/C/man8/zic.8:355
8829 "The B<LINK-FROM> field should appear as the B<NAME> field in some zone line; "
8830 "the B<LINK-TO> field is used as an alternate name for that zone."
8834 #: build/C/man8/zic.8:358
8835 msgid "Except for continuation lines, lines may appear in any order in the input."
8839 #: build/C/man8/zic.8:360
8840 msgid "Lines in the file that describes leap seconds have the following form:"
8844 #: build/C/man8/zic.8:362
8847 "\\w'Leap\\0\\0'u +\\w'YEAR\\0\\0'u +\\w'MONTH\\0\\0'u +\\w'DAY\\0\\0'u "
8848 "+\\w'HH:MM:SS\\0\\0'u +\\w'CORR\\0\\0'u"
8852 #: build/C/man8/zic.8:365
8854 msgid "Leap\tYEAR\tMONTH\tDAY\tHH:MM:SS\tCORR\tR/S\n"
8858 #: build/C/man8/zic.8:370
8860 msgid "Leap\t1974\tDec\t31\t23:59:60\t+\tS\n"
8863 #. There's no need to document the following, since it's impossible for more
8864 #. than one leap second to be inserted or deleted at a time.
8865 #. The C Standard is in error in suggesting the possibility.
8866 #. See Terry J Quinn, The BIPM and the accurate measure of time,
8867 #. Proc IEEE 79, 7 (July 1991), 894-905.
8870 #. if two seconds were added
8873 #. if two seconds were skipped.
8875 #: build/C/man8/zic.8:410
8877 "The B<YEAR>, B<MONTH>, B<DAY>, and B<HH:MM:SS> fields tell when the leap "
8878 "second happened. The B<CORR> field should be E<.q +> if a second was added "
8879 "or E<.q -> if a second was skipped. The B<R/S> field should be (an "
8880 "abbreviation of) E<.q Stationary> if the leap second time given by the "
8881 "other fields should be interpreted as UTC or (an abbreviation of) E<.q "
8882 "Rolling> if the leap second time given by the other fields should be "
8883 "interpreted as local wall clock time."
8887 #: build/C/man8/zic.8:412
8888 msgid "/usr/local/etc/zoneinfo\tstandard directory used for created files"
8892 #: build/C/man8/zic.8:418
8894 "For areas with more than two types of local time, you may need to use local "
8895 "standard time in the B<AT> field of the earliest transition time's rule to "
8896 "ensure that the earliest transition time recorded in the compiled file is "
8902 #: build/C/man8/zic.8:422
8903 msgid "B<tzfile>(5), B<zdump>(8)"