summary refs log tree commit diff
path: root/pkgs/applications/misc/fetchmail
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/applications/misc/fetchmail')
-rw-r--r--pkgs/applications/misc/fetchmail/default.nix9
-rw-r--r--pkgs/applications/misc/fetchmail/security-fix.patch11
2 files changed, 19 insertions, 1 deletions
diff --git a/pkgs/applications/misc/fetchmail/default.nix b/pkgs/applications/misc/fetchmail/default.nix
index 95fc61668fc..9639ff19fb0 100644
--- a/pkgs/applications/misc/fetchmail/default.nix
+++ b/pkgs/applications/misc/fetchmail/default.nix
@@ -1,7 +1,14 @@
-args: with args; stdenv.mkDerivation {
+args: with args;
+stdenv.mkDerivation {
   name="fetchmail-6.3.8";
   src = fetchurl {
     url = http://download.berlios.de/fetchmail/fetchmail-6.3.8.tar.bz2;
     sha256 = "5612f9af367f641e0efd084f44fcf1889669e711dbd8c60f6b7953e494d1b09b";
   };
+
+  patches = [ ./security-fix.patch ];
+
+  meta = {
+    homepage = http://www.fetchmail.info;
+  };
 }
diff --git a/pkgs/applications/misc/fetchmail/security-fix.patch b/pkgs/applications/misc/fetchmail/security-fix.patch
new file mode 100644
index 00000000000..4d48c7aa055
--- /dev/null
+++ b/pkgs/applications/misc/fetchmail/security-fix.patch
@@ -0,0 +1,11 @@
+--- old/sink.c	(revision 5118)
++++ new/sink.c	(revision 5119)
+@@ -262,7 +262,7 @@
+     const char *md1 = "MAILER-DAEMON", *md2 = "MAILER-DAEMON@";
+ 
+     /* don't bounce in reply to undeliverable bounces */
+-    if (!msg->return_path[0] ||
++    if (!msg || !msg->return_path[0] ||
+ 	strcmp(msg->return_path, "<>") == 0 ||
+ 	strcasecmp(msg->return_path, md1) == 0 ||
+ 	strncasecmp(msg->return_path, md2, strlen(md2)) == 0)