From 01f04b9a4127aa2bfb9cdaa8b2d4114268f45514 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 4 Mar 2002 10:09:48 +0000 Subject: ripped out from ../ and put in its own directory now --- docs/libcurl/curl_getdate.3 | 80 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 docs/libcurl/curl_getdate.3 (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 new file mode 100644 index 000000000..0141e8c49 --- /dev/null +++ b/docs/libcurl/curl_getdate.3 @@ -0,0 +1,80 @@ +.\" You can view this file with: +.\" nroff -man [file] +.\" $Id$ +.\" +.TH curl_getdate 3 "5 March 2001" "libcurl 7.0" "libcurl Manual" +.SH NAME +curl_getdate - Convert an date in a ASCII string to number of seconds since +January 1, 1970 +.SH SYNOPSIS +.B #include +.sp +.BI "time_t curl_getdate(char *" datestring ", time_t *"now" ); +.ad +.SH DESCRIPTION +This function returns the number of seconds since January 1st 1970, for the +date and time that the +.I datestring +parameter specifies. The +.I now +parameter is there and should hold the current time to allow the datestring to +specify relative dates/times. Read further in the date string parser section +below. +.SH PARSING DATES AND TIMES +A "date" is a string, possibly empty, containing many items separated by +whitespace. The whitespace may be omitted when no ambiguity arises. The +empty string means the beginning of today (i.e., midnight). Order of the +items is immaterial. A date string may contain many flavors of items: +.TP 0.8i +.B calendar date items +This can be specified in a number of different ways. Including 1970-09-17, 70-9-17, 70-09-17, 9/17/72, 24 September 1972, 24 Sept 72, 24 Sep 72, Sep 24, 1972, 24-sep-72, 24sep72. +The year can also be omitted, for example: 9/17 or "sep 17". +.TP +.B time of the day items +This string specifies the time on a given day. Syntax supported includes: +18:19:0, 18:19, 6:19pm, 18:19-0500 (for specifying the time zone as well). +.TP +.B time zone items +Specifies international time zone. There are a few acronyms supported, but in +general you should instead use the specific realtive time compared to +UTC. Supported formats include: -1200, MST, +0100. +.TP +.B day of the week items +Specifies a day of the week. If this is mentioned alone it means that day of +the week in the future. + +Days of the week may be spelled out in full: `Sunday', `Monday', etc or they +may be abbreviated to their first three letters, optionally followed by a +period. The special abbreviations `Tues' for `Tuesday', `Wednes' for +`Wednesday' and `Thur' or `Thurs' for `Thursday' are also allowed. + +A number may precede a day of the week item to move forward supplementary +weeks. It is best used in expression like `third monday'. In this context, +`last DAY' or `next DAY' is also acceptable; they move one week before or +after the day that DAY by itself would represent. +.TP +.B relative items +A relative item adjusts a date (or the current date if none) forward or +backward. Example syntax includes: "1 year", "1 year ago", "2 days", "4 +weeks". + +The string `tomorrow' is worth one day in the future (equivalent to `day'), +the string `yesterday' is worth one day in the past (equivalent to `day ago'). +.TP +.B pure numbers +If the decimal number is of the form YYYYMMDD and no other calendar date item +appears before it in the date string, then YYYY is read as the year, MM as the +month number and DD as the day of the month, for the specified calendar date. +.PP +.SH RETURN VALUE +This function returns zero when it fails to parse the date string. Otherwise +it returns the number of seconds as described. +.SH AUTHORS +Originally written by Steven M. Bellovin while at the +University of North Carolina at Chapel Hill. Later tweaked by a couple of +people on Usenet. Completely overhauled by Rich $alz and Jim +Berets in August, 1990. +.SH "SEE ALSO" +.BR +.SH BUGS +Surely there are some, you tell me! -- cgit v1.2.1 From 25bcd45034b2289becfb34a762d5a8c0e9a0c0ef Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 27 Feb 2004 15:34:06 +0000 Subject: formatting update to produce better links with the new roffit version --- docs/libcurl/curl_getdate.3 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 0141e8c49..dd29567b8 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -74,7 +74,7 @@ Originally written by Steven M. Bellovin while at the University of North Carolina at Chapel Hill. Later tweaked by a couple of people on Usenet. Completely overhauled by Rich $alz and Jim Berets in August, 1990. + +It has been modified extensively since imported to curl. .SH "SEE ALSO" -.BR -.SH BUGS -Surely there are some, you tell me! +.BR GNU date(1) -- cgit v1.2.1 From 4b78b4124eee95c42f05e9c3df9ca798a0318db9 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 24 Mar 2004 21:40:45 +0000 Subject: Tor Arntsen's major ispell patch --- docs/libcurl/curl_getdate.3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index dd29567b8..6e936cf13 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -36,7 +36,7 @@ This string specifies the time on a given day. Syntax supported includes: .TP .B time zone items Specifies international time zone. There are a few acronyms supported, but in -general you should instead use the specific realtive time compared to +general you should instead use the specific relative time compared to UTC. Supported formats include: -1200, MST, +0100. .TP .B day of the week items -- cgit v1.2.1 From f71b3f48a16e5d62079ad013adb2b96560a1c1fe Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 15 Sep 2004 07:28:04 +0000 Subject: Replaced the former date parser with a rewrite. No more yacc/bison needed. --- docs/libcurl/curl_getdate.3 | 116 ++++++++++++++++++++++++-------------------- 1 file changed, 64 insertions(+), 52 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 6e936cf13..65a0e738b 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -4,35 +4,36 @@ .\" .TH curl_getdate 3 "5 March 2001" "libcurl 7.0" "libcurl Manual" .SH NAME -curl_getdate - Convert an date in a ASCII string to number of seconds since -January 1, 1970 +curl_getdate - Convert an date string to number of seconds since January 1, +1970 .SH SYNOPSIS .B #include .sp -.BI "time_t curl_getdate(char *" datestring ", time_t *"now" ); +.BI "time_t curl_getdate(char *" datestring ", time_t *"now" );" .ad .SH DESCRIPTION -This function returns the number of seconds since January 1st 1970, for the -date and time that the -.I datestring -parameter specifies. The -.I now -parameter is there and should hold the current time to allow the datestring to -specify relative dates/times. Read further in the date string parser section -below. +This function returns the number of seconds since January 1st 1970 in the UTC +time zone, for the date and time that the \fIdatestring\fP parameter +specifies. The \fInow\fP parameter is not used, pass a NULL there. + +\fBNOTE:\fP This function was rewritten for the 7.12.2 release and this +documentation covers the functionality of the new one. The new one is not +feature-complete with the old one, but most of the formats supported by the +new one was supported by the old too. .SH PARSING DATES AND TIMES -A "date" is a string, possibly empty, containing many items separated by -whitespace. The whitespace may be omitted when no ambiguity arises. The -empty string means the beginning of today (i.e., midnight). Order of the -items is immaterial. A date string may contain many flavors of items: +A "date" is a string containing several items separated by whitespace. The +order of the items is immaterial. A date string may contain many flavors of +items: .TP 0.8i .B calendar date items -This can be specified in a number of different ways. Including 1970-09-17, 70-9-17, 70-09-17, 9/17/72, 24 September 1972, 24 Sept 72, 24 Sep 72, Sep 24, 1972, 24-sep-72, 24sep72. -The year can also be omitted, for example: 9/17 or "sep 17". +Can be specified several ways. Month names can only be three-letter +abbrivations, numbers can be zero-prefixed and the year may use 2 or 4 digits. +Examples: 06 Nov 1994, 06-Nov-94 and Nov-94 6. .TP .B time of the day items -This string specifies the time on a given day. Syntax supported includes: -18:19:0, 18:19, 6:19pm, 18:19-0500 (for specifying the time zone as well). +This string specifies the time on a given day. You must specify it with 6 +digits with two colons: HH:MM:SS. To not include the time in a date string, +will make the function assume 00:00:00. Example: 18:19:21. .TP .B time zone items Specifies international time zone. There are a few acronyms supported, but in @@ -40,41 +41,52 @@ general you should instead use the specific relative time compared to UTC. Supported formats include: -1200, MST, +0100. .TP .B day of the week items -Specifies a day of the week. If this is mentioned alone it means that day of -the week in the future. - -Days of the week may be spelled out in full: `Sunday', `Monday', etc or they -may be abbreviated to their first three letters, optionally followed by a -period. The special abbreviations `Tues' for `Tuesday', `Wednes' for -`Wednesday' and `Thur' or `Thurs' for `Thursday' are also allowed. - -A number may precede a day of the week item to move forward supplementary -weeks. It is best used in expression like `third monday'. In this context, -`last DAY' or `next DAY' is also acceptable; they move one week before or -after the day that DAY by itself would represent. -.TP -.B relative items -A relative item adjusts a date (or the current date if none) forward or -backward. Example syntax includes: "1 year", "1 year ago", "2 days", "4 -weeks". - -The string `tomorrow' is worth one day in the future (equivalent to `day'), -the string `yesterday' is worth one day in the past (equivalent to `day ago'). +Specifies a day of the week. Days of the week may be spelled out in full: +`Sunday', `Monday', etc or they may be abbreviated to their first three +letters. This is usually not info that adds anything. .TP .B pure numbers -If the decimal number is of the form YYYYMMDD and no other calendar date item -appears before it in the date string, then YYYY is read as the year, MM as the -month number and DD as the day of the month, for the specified calendar date. +If a decimal number of the form YYYYMMDD appears, then YYYY is read as the +year, MM as the month number and DD as the day of the month, for the specified +calendar date. .PP +.SH EXAMPLES +.nf +Sun, 06 Nov 1994 08:49:37 GMT +Sunday, 06-Nov-94 08:49:37 GMT +Sun Nov 6 08:49:37 1994 +06 Nov 1994 08:49:37 GMT +06-Nov-94 08:49:37 GMT +Nov 6 08:49:37 1994 +06 Nov 1994 08:49:37 +06-Nov-94 08:49:37 +1994 Nov 6 08:49:37 +GMT 08:49:37 06-Nov-94 Sunday +94 6 Nov 08:49:37 +1994 Nov 6 +06-Nov-94 +Sun Nov 6 94 +1994.Nov.6 +Sun/Nov/6/94/GMT +Sun, 06 Nov 1994 08:49:37 CET +06 Nov 1994 08:49:37 EST +Sun, 12 Sep 2004 15:05:58 -0700 +Sat, 11 Sep 2004 21:32:11 +0200 +20040912 15:05:58 -0700 +20040911 +0200 +.fi +.SH STANDARDS +This parser was written to handle date formats specified in RFC 822 (including +the update in RFC 1123) using time zone name or time zone delta and RFC 850 +(obsoleted by RFC 1036) and ANSI C's asctime() format. These formats are the +only ones RFC2616 says HTTP applications may use. .SH RETURN VALUE -This function returns zero when it fails to parse the date string. Otherwise -it returns the number of seconds as described. -.SH AUTHORS -Originally written by Steven M. Bellovin while at the -University of North Carolina at Chapel Hill. Later tweaked by a couple of -people on Usenet. Completely overhauled by Rich $alz and Jim -Berets in August, 1990. +This function returns -1 when it fails to parse the date string. Otherwise it +returns the number of seconds as described. +.SH REWRITE +The former version of this function was built with yacc and was not only very +large, it was also never quite understood and it wasn't possible to build with +non-GNU tools since only Bison could make it thread-safe! -It has been modified extensively since imported to curl. -.SH "SEE ALSO" -.BR GNU date(1) +The rewrite was done for 7.12.2. The new one is much smaller and use simpler +code. -- cgit v1.2.1 From cd73a733c78b7ab7b4e3ccaca9350bbcce124142 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Thu, 11 Nov 2004 09:26:09 +0000 Subject: dates from 2038 or later now return 0x7fffffff when 32 bit time_t is used --- docs/libcurl/curl_getdate.3 | 3 +++ 1 file changed, 3 insertions(+) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 65a0e738b..9d13433a3 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -83,6 +83,9 @@ only ones RFC2616 says HTTP applications may use. .SH RETURN VALUE This function returns -1 when it fails to parse the date string. Otherwise it returns the number of seconds as described. + +If the year is larger than 2037 on systems with 32 bit time_t, this function +will return 0x7fffffff (since that is the largest possible 31 bit number). .SH REWRITE The former version of this function was built with yacc and was not only very large, it was also never quite understood and it wasn't possible to build with -- cgit v1.2.1 From 86f059dcfbb32ee7ee25c7232457c558ea9f8c4f Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Mon, 15 Nov 2004 21:41:21 +0000 Subject: tiny format fix for nicer man output --- docs/libcurl/curl_getdate.3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 9d13433a3..9af2f8509 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -9,7 +9,7 @@ curl_getdate - Convert an date string to number of seconds since January 1, .SH SYNOPSIS .B #include .sp -.BI "time_t curl_getdate(char *" datestring ", time_t *"now" );" +.BI "time_t curl_getdate(char *" datestring ", time_t *"now " );" .ad .SH DESCRIPTION This function returns the number of seconds since January 1st 1970 in the UTC -- cgit v1.2.1 From 5cd9f57137fc185786f10b16ab73743386b95bd3 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 8 Mar 2005 11:15:29 +0000 Subject: days are english --- docs/libcurl/curl_getdate.3 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 9af2f8509..0ba4dfbd7 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -41,9 +41,9 @@ general you should instead use the specific relative time compared to UTC. Supported formats include: -1200, MST, +0100. .TP .B day of the week items -Specifies a day of the week. Days of the week may be spelled out in full: -`Sunday', `Monday', etc or they may be abbreviated to their first three -letters. This is usually not info that adds anything. +Specifies a day of the week. Days of the week may be spelled out in full +(using english): `Sunday', `Monday', etc or they may be abbreviated to their +first three letters. This is usually not info that adds anything. .TP .B pure numbers If a decimal number of the form YYYYMMDD appears, then YYYY is read as the -- cgit v1.2.1 From 8a96aec5673b9ba4787cef1319c105facbe82a40 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Tue, 8 Mar 2005 16:31:56 +0000 Subject: mktime() returns a time_t. time_t is often 32 bits, even on many architectures that feature 64 bit 'long'. Some systems have 64 bit time_t and deal with years beyond 2038. However, even some of the systems with 64 bit time_t returns -1 for dates beyond 03:14:07 UTC, January 19, 2038. (Such as AIX 5100-06) --- docs/libcurl/curl_getdate.3 | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 0ba4dfbd7..75fd0c039 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -85,7 +85,12 @@ This function returns -1 when it fails to parse the date string. Otherwise it returns the number of seconds as described. If the year is larger than 2037 on systems with 32 bit time_t, this function -will return 0x7fffffff (since that is the largest possible 31 bit number). +will return 0x7fffffff (since that is the largest possible signed 32 bit +number). + +Having a 64 bit time_t is not a guarantee that dates beyond 03:14:07 UTC, +January 19, 2038 will work fine. On systems with a 64 bit time_t but with a +crippled mktime(), \fIcurl_getdate\fP will return -1 in this case. .SH REWRITE The former version of this function was built with yacc and was not only very large, it was also never quite understood and it wasn't possible to build with -- cgit v1.2.1 From 2f78c96330f4ea921af711d8fd1526f25c33b2f7 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Fri, 12 Aug 2005 21:47:05 +0000 Subject: clarify --- docs/libcurl/curl_getdate.3 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 75fd0c039..0cd26e677 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -2,7 +2,7 @@ .\" nroff -man [file] .\" $Id$ .\" -.TH curl_getdate 3 "5 March 2001" "libcurl 7.0" "libcurl Manual" +.TH curl_getdate 3 "12 Aug 2005" "libcurl 7.0" "libcurl Manual" .SH NAME curl_getdate - Convert an date string to number of seconds since January 1, 1970 @@ -26,7 +26,7 @@ order of the items is immaterial. A date string may contain many flavors of items: .TP 0.8i .B calendar date items -Can be specified several ways. Month names can only be three-letter +Can be specified several ways. Month names can only be three-letter english abbrivations, numbers can be zero-prefixed and the year may use 2 or 4 digits. Examples: 06 Nov 1994, 06-Nov-94 and Nov-94 6. .TP @@ -94,7 +94,7 @@ crippled mktime(), \fIcurl_getdate\fP will return -1 in this case. .SH REWRITE The former version of this function was built with yacc and was not only very large, it was also never quite understood and it wasn't possible to build with -non-GNU tools since only Bison could make it thread-safe! +non-GNU tools since only GNU Bison could make it thread-safe! The rewrite was done for 7.12.2. The new one is much smaller and use simpler code. -- cgit v1.2.1 From f61cfc59314e4779c13312efc4845f580f0933b1 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Sun, 28 Dec 2008 21:56:56 +0000 Subject: Anthony Bryan's man page cleanup in language and spelling --- docs/libcurl/curl_getdate.3 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 0cd26e677..d1152ebc0 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -4,7 +4,7 @@ .\" .TH curl_getdate 3 "12 Aug 2005" "libcurl 7.0" "libcurl Manual" .SH NAME -curl_getdate - Convert an date string to number of seconds since January 1, +curl_getdate - Convert a date string to number of seconds since January 1, 1970 .SH SYNOPSIS .B #include @@ -27,7 +27,7 @@ items: .TP 0.8i .B calendar date items Can be specified several ways. Month names can only be three-letter english -abbrivations, numbers can be zero-prefixed and the year may use 2 or 4 digits. +abbreviations, numbers can be zero-prefixed and the year may use 2 or 4 digits. Examples: 06 Nov 1994, 06-Nov-94 and Nov-94 6. .TP .B time of the day items @@ -96,5 +96,5 @@ The former version of this function was built with yacc and was not only very large, it was also never quite understood and it wasn't possible to build with non-GNU tools since only GNU Bison could make it thread-safe! -The rewrite was done for 7.12.2. The new one is much smaller and use simpler +The rewrite was done for 7.12.2. The new one is much smaller and uses simpler code. -- cgit v1.2.1 From 2309b4e330b96bc2e1f8e36b6184015e59544037 Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Wed, 24 Mar 2010 11:02:54 +0100 Subject: remove the CVSish $Id$ lines --- docs/libcurl/curl_getdate.3 | 1 - 1 file changed, 1 deletion(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index d1152ebc0..73cd3ef1d 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -1,6 +1,5 @@ .\" You can view this file with: .\" nroff -man [file] -.\" $Id$ .\" .TH curl_getdate 3 "12 Aug 2005" "libcurl 7.0" "libcurl Manual" .SH NAME -- cgit v1.2.1 From 029136da6054a3b2d6cb36b3b4f2ed34f83e010a Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Sat, 12 Mar 2011 00:14:32 +0100 Subject: source header: added to more files --- docs/libcurl/curl_getdate.3 | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) (limited to 'docs/libcurl/curl_getdate.3') diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3 index 73cd3ef1d..65eed9c57 100644 --- a/docs/libcurl/curl_getdate.3 +++ b/docs/libcurl/curl_getdate.3 @@ -1,6 +1,24 @@ -.\" You can view this file with: -.\" nroff -man [file] -.\" +.\" ************************************************************************** +.\" * _ _ ____ _ +.\" * Project ___| | | | _ \| | +.\" * / __| | | | |_) | | +.\" * | (__| |_| | _ <| |___ +.\" * \___|\___/|_| \_\_____| +.\" * +.\" * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. +.\" * +.\" * This software is licensed as described in the file COPYING, which +.\" * you should have received as part of this distribution. The terms +.\" * are also available at http://curl.haxx.se/docs/copyright.html. +.\" * +.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell +.\" * copies of the Software, and permit persons to whom the Software is +.\" * furnished to do so, under the terms of the COPYING file. +.\" * +.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY +.\" * KIND, either express or implied. +.\" * +.\" ************************************************************************** .TH curl_getdate 3 "12 Aug 2005" "libcurl 7.0" "libcurl Manual" .SH NAME curl_getdate - Convert a date string to number of seconds since January 1, -- cgit v1.2.1