From: David Scott Date: Tue, 30 Mar 2010 10:30:33 +0000 (+0100) Subject: CA-38687: be more accepting of ISO8601 dates without a timezone. X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=0af90d5d961bf361a78775294602ec0f902fc1c4;p=xcp%2Fxen-api-libs.git CA-38687: be more accepting of ISO8601 dates without a timezone. Note that xapi expects all dates to be in UTC; xapi knows nothing about timezones. The XMLRPC spec is vague but encourages people to *omit* the timezone information from requests. We now accept such vague inputs but we still expect them to be in UTC. The following python snippet produces no results without the fix and the full message list (as expected) with the fix: <<<<< #!/usr/bin/env python import xmlrpclib x = xmlrpclib.Server("http://localhost") session = x.session.login_with_password("root", "password")["Value"] print repr(x.message.get_since(session, xmlrpclib.DateTime(0))) >>>>> Signed-off-by: David Scott --- diff --git a/stdext/date.ml b/stdext/date.ml index 0d411c5..71546b6 100644 --- a/stdext/date.ml +++ b/stdext/date.ml @@ -41,7 +41,7 @@ let rfc822_to_string x = x (* Convert tm in localtime to calendar time, x *) let to_float_localtime x = - Scanf.sscanf x "%04d%02d%02dT%02d:%02d:%02dZ" + Scanf.sscanf x "%04d%02d%02dT%02d:%02d:%02d" (fun y mon d h min s -> fst (Unix.mktime { Unix.tm_year = y - 1900; tm_mon = mon - 1;