#include <lib-lib/mem.h>
#include <lib-lib/str.h>
#include <lib-lib/macros.h>
-#include <lib-lib/debug.h>
#include "mutt.h"
* From [ <return-path> ] <weekday> <month> <day> <time> [ <timezone> ] <year>
*/
-int is_from (const char *s, char *path, size_t pathlen, time_t * tp)
+int is_from (const char *s, char *path, ssize_t pathlen, time_t * tp)
{
struct tm tm;
int yr;
if (!*s)
return 0;
- debug_print (3, ("parsing: %s\n", s));
-
if (!is_day_name (s)) {
const char *p;
- size_t len;
+ ssize_t len;
short q = 0;
for (p = s; *p && (q || !ISSPACE (*p)); p++) {
return 0;
if (path) {
- len = (size_t) (p - s);
+ len = p - s;
if (len + 1 > pathlen)
len = pathlen - 1;
memcpy (path, s, len);
path[len] = 0;
- debug_print (3, ("got return path: %s\n", path));
}
s = vskipspaces(p + 1);
return 0;
if (!is_day_name (s)) {
- debug_print (1, ("expected weekday, got: %s\n", s));
return 0;
}
}
return 0;
tm.tm_year = yr > 1900 ? yr - 1900 : (yr < 70 ? yr + 100 : yr);
- debug_print (3, ("month=%d, day=%d, hr=%d, min=%d, sec=%d, yr=%d.\n",
- tm.tm_mon, tm.tm_mday, tm.tm_hour, tm.tm_min, tm.tm_sec,
- tm.tm_year));
-
tm.tm_isdst = -1;
if (tp)