View | Details | Raw Unified | Return to bug 109607
Collapse All | Expand All

(-)./dbmail/Makefile (+1 lines)
Lines 7-12 Link Here
7
7
8
PORTNAME=	dbmail
8
PORTNAME=	dbmail
9
PORTVERSION=	2.2.2
9
PORTVERSION=	2.2.2
10
PORTREVISION=	1
10
CATEGORIES=	mail
11
CATEGORIES=	mail
11
MASTER_SITES=	http://www.dbmail.org/download/2.2/
12
MASTER_SITES=	http://www.dbmail.org/download/2.2/
12
13
(-)./dbmail/files/patch-rfc822_headername_case (+26 lines)
Line 0 Link Here
1
--- dbmail-message.c
2
+++ dbmail-message.c
3
@@ -885,9 +885,13 @@ static int _header_get_id(const struct D
4
 	u64_t tmp;
5
 	gpointer cacheid;
6
 	gchar *safe_header;
7
+	gchar *tmpheader;
8
 
9
-	if (! (safe_header = dm_strnesc(header,CACHE_WIDTH_NAME)))
10
+	// rfc822 headernames are case-insensitive
11
+	if (! (tmpheader = dm_strnesc(header,CACHE_WIDTH_NAME)))
12
 		return -1;
13
+	safe_header = g_ascii_strdown(tmpheader,-1);
14
+	g_free(tmpheader);
15
 
16
 	cacheid = g_hash_table_lookup(self->header_dict, (gconstpointer)safe_header);
17
 	if (cacheid) {
18
@@ -897,7 +901,7 @@ static int _header_get_id(const struct D
19
 	}
20
 		
21
 	GString *q = g_string_new("");
22
-	g_string_printf(q, "SELECT id FROM %sheadername WHERE headername='%s'", DBPFX, safe_header);
23
+	g_string_printf(q, "SELECT id FROM %sheadername WHERE lower(headername)='%s'", DBPFX, safe_header);
24
 	if (db_query(q->str) == -1) {
25
 		g_string_free(q,TRUE);
26
 		g_free(safe_header);

Return to bug 109607