c53c1f0ab8
Fixes an APOP authentication vulnerability (CVE-2007-1558). ok bernd@
50 lines
1.4 KiB
Plaintext
50 lines
1.4 KiB
Plaintext
$OpenBSD: patch-browser_c,v 1.4 2007/06/15 19:01:07 kili Exp $
|
|
--- browser.c.orig Wed May 23 03:17:52 2007
|
|
+++ browser.c Mon May 28 19:10:48 2007
|
|
@@ -22,6 +22,7 @@
|
|
#include "buffy.h"
|
|
#include "mapping.h"
|
|
#include "sort.h"
|
|
+#include "mx.h"
|
|
#include "mailbox.h"
|
|
#include "browser.h"
|
|
#ifdef USE_IMAP
|
|
@@ -346,6 +347,21 @@ static void init_state (struct browser_state *state, M
|
|
menu->data = state->entry;
|
|
}
|
|
|
|
+static void check_maildir_times (BUFFY *buf, struct stat *st)
|
|
+{
|
|
+ char buffer[_POSIX_PATH_MAX + SHORT_STRING];
|
|
+ struct stat s;
|
|
+
|
|
+ if(!buf || buf->magic != M_MAILDIR)
|
|
+ return;
|
|
+
|
|
+ snprintf (buffer, sizeof (buffer), "%s/tmp", buf->path);
|
|
+ if (lstat (buffer, &s) != 0)
|
|
+ return;
|
|
+
|
|
+ st->st_mtime = s.st_mtime;
|
|
+}
|
|
+
|
|
static int examine_directory (MUTTMENU *menu, struct browser_state *state,
|
|
char *d, const char *prefix)
|
|
{
|
|
@@ -409,6 +425,7 @@ static int examine_directory (MUTTMENU *menu, struct b
|
|
tmp = Incoming;
|
|
while (tmp && mutt_strcmp (buffer, tmp->path))
|
|
tmp = tmp->next;
|
|
+ check_maildir_times (tmp, &s);
|
|
add_folder (menu, state, de->d_name, &s, (tmp) ? tmp->new : 0);
|
|
}
|
|
closedir (dp);
|
|
@@ -454,6 +471,7 @@ static int examine_mailboxes (MUTTMENU *menu, struct b
|
|
strfcpy (buffer, NONULL(tmp->path), sizeof (buffer));
|
|
mutt_pretty_mailbox (buffer);
|
|
|
|
+ check_maildir_times (tmp, &s);
|
|
add_folder (menu, state, buffer, &s, tmp->new);
|
|
}
|
|
while ((tmp = tmp->next));
|