summaryrefslogtreecommitdiff
path: root/mail/sqwebmail/patches
diff options
context:
space:
mode:
authoradrianp <adrianp@pkgsrc.org>2005-08-29 15:53:24 +0000
committeradrianp <adrianp@pkgsrc.org>2005-08-29 15:53:24 +0000
commit0a54350657f38cb32386f53577db7ce6c7526408 (patch)
tree18c070bc6cdf94e0aa6249db4f59838feab564e6 /mail/sqwebmail/patches
parent4ef1dbd5d3cc4a7969a34b9d561be6a79e97105a (diff)
downloadpkgsrc-0a54350657f38cb32386f53577db7ce6c7526408.tar.gz
Bump to nb1 for inclusion of patches to address security issue.
Diffstat (limited to 'mail/sqwebmail/patches')
-rw-r--r--mail/sqwebmail/patches/patch-ak25
-rw-r--r--mail/sqwebmail/patches/patch-al53
2 files changed, 78 insertions, 0 deletions
diff --git a/mail/sqwebmail/patches/patch-ak b/mail/sqwebmail/patches/patch-ak
new file mode 100644
index 00000000000..bb37259f4b8
--- /dev/null
+++ b/mail/sqwebmail/patches/patch-ak
@@ -0,0 +1,25 @@
+$NetBSD: patch-ak,v 1.1 2005/08/29 15:53:24 adrianp Exp $
+
+--- sqwebmail/folder.c.orig 2005-07-16 23:20:28.000000000 +0100
++++ sqwebmail/folder.c
+@@ -2238,13 +2238,19 @@ const struct unicode_info *uiptr=unicode
+ if (strcmp(cgi("form"), "print") == 0)
+ {
+ showattname(getarg("ATTSTUB"), dummy, content_type);
++
++ printf("&nbsp;(");
++ output_attrencoded(content_type);
++ printf(")");
+ }
+ else
+ {
+ printf("<div align=\"center\"><span class=\"message-attachment-header\">");
+ showattname(getarg("ATTACHMENT"), dummy, content_type);
+
+- printf("&nbsp;(%s)</span></div>",
++ printf("&nbsp;(");
++ output_attrencoded(content_type);
++ printf("; %s)</span></div>",
+ showsize(end_pos - start_body));
+ printf("<br /><div align=\"center\">");
+
diff --git a/mail/sqwebmail/patches/patch-al b/mail/sqwebmail/patches/patch-al
new file mode 100644
index 00000000000..b8bbe072016
--- /dev/null
+++ b/mail/sqwebmail/patches/patch-al
@@ -0,0 +1,53 @@
+$NetBSD: patch-al,v 1.1 2005/08/29 15:53:24 adrianp Exp $
+
+--- sqwebmail/html.c.orig 2003-10-06 01:16:13.000000000 +0100
++++ sqwebmail/html.c
+@@ -187,9 +187,16 @@ char *p;
+ if (tai) ++tai->tagvaluelen;
+ }
+ if (*p) p++;
++ else
++ {
++ memset(tagbuf, ' ', strlen(tagbuf));
++ }
+ }
+ else
+ {
++ if (c == 0)
++ memset(tagbuf, ' ', strlen(tagbuf));
++
+ if (tai)
+ {
+ tai->tagvalue=p;
+@@ -222,6 +229,31 @@ static void parsetagbuf()
+ while ((p=strchr(tagbuf, '<')) != NULL)
+ *p=' ';
+
++ for (p=tagbuf; *p; p++)
++ {
++ char *q;
++
++ if (*p != '&')
++ continue;
++
++ q=p;
++
++ ++p;
++
++ while (*p)
++ {
++ if (strchr("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", *p) == NULL)
++ break;
++ ++p;
++ }
++
++ if (*p != ';')
++ {
++ *q=0;
++ }
++ --p;
++ }
++
+ tagattrlen=parseattr(0);
+ if ( tagattrlen > tagattrsize)
+ {