summaryrefslogtreecommitdiff
path: root/lib/parsedate.c
diff options
context:
space:
mode:
Diffstat (limited to 'lib/parsedate.c')
-rw-r--r--lib/parsedate.c22
1 files changed, 4 insertions, 18 deletions
diff --git a/lib/parsedate.c b/lib/parsedate.c
index eedab7c41..b9429db7f 100644
--- a/lib/parsedate.c
+++ b/lib/parsedate.c
@@ -589,26 +589,12 @@ time_t curl_getdate(const char *p, const time_t *now)
/* Curl_getdate_capped() differs from curl_getdate() in that this will return
TIME_T_MAX in case the parsed time value was too big, instead of an
- error. */
+ error. Returns non-zero on error. */
-time_t Curl_getdate_capped(const char *p)
+int Curl_getdate_capped(const char *p, time_t *tp)
{
- time_t parsed = -1;
- int rc = parsedate(p, &parsed);
-
- switch(rc) {
- case PARSEDATE_OK:
- if(parsed == (time_t)-1)
- /* avoid returning -1 for a working scenario */
- parsed++;
- return parsed;
- case PARSEDATE_LATER:
- /* this returns the maximum time value */
- return parsed;
- default:
- return -1; /* everything else is fail */
- }
- /* UNREACHABLE */
+ int rc = parsedate(p, tp);
+ return (rc == PARSEDATE_FAIL);
}
/*