From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ricardo Wurmus Newsgroups: gmane.lisp.guile.devel Subject: [PATCH] web: Accept dates with space-padded hour field. Date: Mon, 2 May 2016 17:13:07 +0200 Message-ID: <1462201987-20469-1-git-send-email-ricardo.wurmus@mdc-berlin.de> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1462205501 28825 80.91.229.3 (2 May 2016 16:11:41 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 2 May 2016 16:11:41 +0000 (UTC) To: Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Mon May 02 18:11:28 2016 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1axGRT-0005yh-Ox for guile-devel@m.gmane.org; Mon, 02 May 2016 18:11:27 +0200 Original-Received: from localhost ([::1]:37481 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axGRP-0006iH-KK for guile-devel@m.gmane.org; Mon, 02 May 2016 12:11:23 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45265) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axFXa-0007UE-KJ for guile-devel@gnu.org; Mon, 02 May 2016 11:13:49 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1axFXO-0003Pr-PG for guile-devel@gnu.org; Mon, 02 May 2016 11:13:37 -0400 Original-Received: from sinope02.bbbm.mdc-berlin.de ([141.80.25.24]:47505) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1axFXN-0003Ms-F9 for guile-devel@gnu.org; Mon, 02 May 2016 11:13:30 -0400 Original-Received: from localhost (localhost [127.0.0.1]) by sinope02.bbbm.mdc-berlin.de (Postfix) with ESMTP id A66ECFF35 for ; Mon, 2 May 2016 17:13:15 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mdc-berlin.de; h= content-type:content-type:mime-version:x-mailer:message-id:date :date:subject:subject:from:from:received:received:received; s= mdc; t=1462201990; x=1464016391; bh=UJcrFFLnxZivOBGj5I/pvzRggjzq IhNKThd5vum8aw4=; b=ON8yn+TjQNuAl82RPM7a75863rtPIatPThJ8qu4+N7FG OvJizkhbz5mVG52wkw79uK38Q4RRU1ORZ9ewZFy99oZi0hOQo/jpJENcB6kmG3/j O/jh02R5L+YQdu2KezznuZGU8HWY8hnFMnafFOKQPucllEophNQDmCbIJE2ZjiA= X-Virus-Scanned: amavisd-new at mdc-berlin.de Original-Received: from sinope02.bbbm.mdc-berlin.de ([127.0.0.1]) by localhost (sinope02.bbbm.mdc-berlin.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id IEMfNCl15Nqz for ; Mon, 2 May 2016 17:13:10 +0200 (CEST) Original-Received: from HTCAONE.mdc-berlin.net (puck.citx.mdc-berlin.de [141.80.36.101]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by sinope02.bbbm.mdc-berlin.de (Postfix) with ESMTPS for ; Mon, 2 May 2016 17:13:10 +0200 (CEST) Original-Received: from localhost (141.80.180.135) by HTCAONE.mdc-berlin.net (141.80.180.125) with Microsoft SMTP Server (TLS) id 14.3.279.2; Mon, 2 May 2016 17:13:07 +0200 X-Mailer: git-send-email 2.7.3 X-Originating-IP: [141.80.180.135] X-TM-AS-Product-Ver: SMEX-11.0.0.4255-8.000.1202-22298.000 X-TM-AS-Result: No-1.439200-0.000000-31 X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 141.80.25.24 X-Mailman-Approved-At: Mon, 02 May 2016 12:11:21 -0400 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: "guile-devel" Xref: news.gmane.org gmane.lisp.guile.devel:18295 Archived-At: Fixes . * module/web/http.scm (parse-rfc-822-date): Accept dates with space-padded hour field. --- module/web/http.scm | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/module/web/http.scm b/module/web/http.scm index 8a07f6d..5ba2574 100644 --- a/module/web/http.scm +++ b/module/web/http.scm @@ -751,6 +751,22 @@ as an ordered alist." (minute (parse-non-negative-integer str 19 21)) (second (parse-non-negative-integer str 22 24))) (make-date 0 second minute hour date month year zone-offset))) + ((string-match? (substring str 0 space) "aaa, dd aaa dddd d:dd:dd") + (let ((date (parse-non-negative-integer str 5 7)) + (month (parse-month str 8 11)) + (year (parse-non-negative-integer str 12 16)) + (hour (parse-non-negative-integer str 18 19)) + (minute (parse-non-negative-integer str 20 22)) + (second (parse-non-negative-integer str 23 25))) + (make-date 0 second minute hour date month year zone-offset))) + ((string-match? (substring str 0 space) "aaa, d aaa dddd d:dd:dd") + (let ((date (parse-non-negative-integer str 5 6)) + (month (parse-month str 7 10)) + (year (parse-non-negative-integer str 11 15)) + (hour (parse-non-negative-integer str 17 18)) + (minute (parse-non-negative-integer str 19 21)) + (second (parse-non-negative-integer str 22 24))) + (make-date 0 second minute hour date month year zone-offset))) (else (bad-header 'date str) ; prevent tail call #f))) -- 2.7.3