<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; ">These days, we met with some Expire headers with following format </span>which are not supported by varnish yet.</div><div><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; "><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: Helvetica; line-height: normal; font-size: medium; ">Sun, 06 Nov 1994 08:49:37 +0000</span></span></div><div><br></div><div>Also it seems that strptime was broken dealing with %z & %Z, so </div><div><font class="Apple-style-span" color="#333333" face="Helvetica, arial, freesans, clean, sans-serif"><span class="Apple-style-span" style="font-size: 13px; line-height: 20px;">I create the patch t</span></font><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; ">o support timezone spec defined in </span><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; "><a href="http://www.ietf.org/rfc/rfc822.txt" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; color: rgb(65, 131, 196); text-decoration: none; ">http://www.ietf.org/rfc/rfc822.txt</a></span></div><div><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; "><div><br></div><div>zone = "UT" / "GMT" ; Universal Time</div><div>; North American : UT</div><div>/ "EST" / "EDT" ; Eastern: - 5/ - 4</div><div>/ "CST" / "CDT" ; Central: - 6/ - 5</div><div>/ "MST" / "MDT" ; Mountain: - 7/ - 6</div><div>/ "PST" / "PDT" ; Pacific: - 8/ - 7</div><div>/ 1ALPHA ; Military: Z = UT;</div><div>; A:-1; (J not used)</div><div>; M:-12; N:+1; Y:+12</div><div>/ ( ("+" / "-") 4DIGIT ) ; Local differential</div><div>; hours+min. (HHMM)</div></span></div><div><font class="Apple-style-span" color="#333333" face="Helvetica, arial, freesans, clean, sans-serif"><span class="Apple-style-span" style="font-size: 13px; line-height: 20px; "><br></span></font><span class="Apple-style-span" style="color: rgb(51, 51, 51); font-family: Helvetica, arial, freesans, clean, sans-serif; font-size: 13px; line-height: 20px; "><div><br></div><div>1ALPHA format is easy to add, too, but I think it might not be used widely, so I leave it unsupported with performance consideration.</div></span></div><div><br></div><div>Test cases:</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sunday, 06-Nov-94 08:49:37 CST", 784090177);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sunday, 06-Nov-94 08:49:37 PST", 784082977);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 +0000", 784111777);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 -0000", 784111777);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 +0100",784115377);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 -0100",784108177);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 +0010", 784112377);</div><div>+<span class="Apple-tab-span" style="white-space:pre"> </span>tst("Sun, 06 Nov 1994 08:49:37 -0010", 784111177);</div></div><div><br></div></body></html>