/* Global variables! */
int global_quiet;
+int global_use_leading_time;
regex_t global_leading_from_line_regexp;
fprintf(out, " print the version number\n");
fprintf(out, " -q, --quiet\n");
fprintf(out, " do not print information during search\n");
+ fprintf(out, " -t, --use-leading-time\n");
+ fprintf(out, " use the time stamp from the leading line of each mail and not the Date:\n");
+ fprintf(out, " field\n");
fprintf(out, " -p <db filename pattern>, --db-pattern <db filename pattern>\n");
fprintf(out, " set the db filename pattern for recursive search\n");
fprintf(out, " -r <db root path>, --db-root <db root path>\n");
int mbox_id, const char *mbox_value) {
if(condition->field_id == ID_INTERVAL) {
- if(mbox_id == ID_LEADING_LINE) {
- const char *c;
- time_t t;
- struct tm tm;
-
- c = mbox_value;
- while(*c && *c != ' ') c++; while(*c && *c == ' ') c++;
- strptime(c, "%a %b %e %k:%M:%S %Y", &tm);
- t = mktime(&tm);
-
- return (t >= condition->interval_start &&
- (condition->interval_stop == 0 ||
- t <= condition->interval_stop));
+ const char *c;
+ time_t t;
+ struct tm tm;
+ if(global_use_leading_time) {
+ if(mbox_id == ID_LEADING_LINE) {
+ c = mbox_value;
+ while(*c && *c != ' ') c++; while(*c && *c == ' ') c++;
+ strptime(c, "%a %b %e %k:%M:%S %Y", &tm);
+ t = mktime(&tm);
+ return (t >= condition->interval_start &&
+ (condition->interval_stop == 0 ||
+ t <= condition->interval_stop));
+ } else {
+ return 0;
+ }
} else {
- return 0;
+ if(mbox_id == ID_DATE) {
+ strptime(mbox_value, "%a, %d %b %Y %k:%M:%S", &tm);
+ t = mktime(&tm);
+ return (t >= condition->interval_start &&
+ (condition->interval_stop == 0 ||
+ t <= condition->interval_stop));
+ } else {
+ return 0;
+ }
}
} else {
return
{ "help", no_argument, 0, 'h' },
{ "version", no_argument, 0, 'v' },
{ "quiet", no_argument, 0, 'q' },
+ { "use-leading-time", no_argument, 0, 't' },
{ "db-file-generate", 1, 0, 'd' },
{ "db-pattern", 1, 0, 'p' },
{ "db-root", 1, 0, 'r' },
}
global_quiet = 0;
+ global_use_leading_time = 0;
default_search_field = 0;
strncpy(output_filename, "", PATH_MAX);
global_quiet = 1;
break;
+ case 't':
+ global_use_leading_time = 1;
+ break;
+
case 'i':
action_index = 1;
break;