SoupCookieJar: catch overflows when parsing very distant dates
authorDan Winship <danw@gnome.org>
Fri, 11 Mar 2011 11:52:56 +0000 (06:52 -0500)
committerDan Winship <danw@gnome.org>
Fri, 11 Mar 2011 11:52:56 +0000 (06:52 -0500)
commit3ed4ea046fdc4c41c8191225c7da05a04e5a4245
tree5ac9afef79086ad81eb748c1a7098a56ae0c355d
parent2ee3d2d1aef0eb6aada232dfc0c912f1b5abfbb2
SoupCookieJar: catch overflows when parsing very distant dates

Our APIs use an int for max_age, which meant that when reading a
cookie file/db written by another program on a 64-bit architecture, a
very large max_age would overflow. Fix things up to avoid that. Since
we can't change the APIs to use a long for max_age, this means that we
will end up expiring the cookie "early" (eg, in 20 years rather than
50).

Based on a patch from Mark Starovoytov
https://bugzilla.gnome.org/show_bug.cgi?id=643462
libsoup/soup-cookie-jar-sqlite.c
libsoup/soup-cookie-jar-text.c
libsoup/soup-date.c