summaryrefslogtreecommitdiff
path: root/lib/parsedate.c
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2009-10-18 21:56:19 +0000
committerDaniel Stenberg <daniel@haxx.se>2009-10-18 21:56:19 +0000
commit6f4a5a46125d48d8fb9c6f8e112ca9c376829577 (patch)
treec67f35933fa927d19197fed9089f4448e28eee2c /lib/parsedate.c
parent6d4e6cc8137ff2ebdbaf055e39ce1263ad634191 (diff)
downloadcurl-6f4a5a46125d48d8fb9c6f8e112ca9c376829577.tar.gz
- Ray Dassen provided a patch in Debian's bug tracker (bug number #551461)
that now makes curl_getdate(3) actually handles RFC 822 formatted dates that use the "single letter military timezones". http://www.rfc-ref.org/RFC-TEXTS/822/chapter5.html has the details.
Diffstat (limited to 'lib/parsedate.c')
-rw-r--r--lib/parsedate.c30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/parsedate.c b/lib/parsedate.c
index 2b704b52e..b846501c1 100644
--- a/lib/parsedate.c
+++ b/lib/parsedate.c
@@ -147,6 +147,36 @@ static const struct tzinfo tz[]= {
{"NZST", -720}, /* New Zealand Standard */
{"NZDT", -720 tDAYZONE}, /* New Zealand Daylight */
{"IDLE", -720}, /* International Date Line East */
+ /* Next up: Military timezone names. RFC822 allowed these, but (as noted in
+ RFC 1123) had their signs wrong. Here we use the correct signs to match
+ actual military usage.
+ */
+ {"A", +1 * 60}, /* Alpha */
+ {"B", +2 * 60}, /* Bravo */
+ {"C", +3 * 60}, /* Charlie */
+ {"D", +4 * 60}, /* Delta */
+ {"E", +5 * 60}, /* Echo */
+ {"F", +6 * 60}, /* Foxtrot */
+ {"G", +7 * 60}, /* Golf */
+ {"H", +8 * 60}, /* Hotel */
+ {"I", +9 * 60}, /* India */
+ /* "J", Juliet is not used as a timezone, to indicate the observer's local time */
+ {"K", +10 * 60}, /* Kilo */
+ {"L", +11 * 60}, /* Lima */
+ {"M", +12 * 60}, /* Mike */
+ {"N", -1 * 60}, /* November */
+ {"O", -2 * 60}, /* Oscar */
+ {"P", -3 * 60}, /* Papa */
+ {"Q", -4 * 60}, /* Quebec */
+ {"R", -5 * 60}, /* Romeo */
+ {"S", -6 * 60}, /* Sierra */
+ {"T", -7 * 60}, /* Tango */
+ {"U", -8 * 60}, /* Uniform */
+ {"V", -9 * 60}, /* Victor */
+ {"W", -10 * 60}, /* Whiskey */
+ {"X", -11 * 60}, /* X-ray */
+ {"Y", -12 * 60}, /* Yankee */
+ {"Z", 0}, /* Zulu, zero meridian, a.k.a. UTC */
};
/* returns: