[PATCH 0/4] Allow specifying alternate names for addresses in other_email
[notmuch-archives.git] / 8f / 437b1e61b92bc27dec4711f7b52f75d349d284
1 Return-Path: <cworth@cworth.org>\r
2 X-Original-To: notmuch@notmuchmail.org\r
3 Delivered-To: notmuch@notmuchmail.org\r
4 Received: from localhost (localhost [127.0.0.1])\r
5         by olra.theworths.org (Postfix) with ESMTP id 80186431FC0;\r
6         Fri, 27 Nov 2009 22:43:23 -0800 (PST)\r
7 X-Virus-Scanned: Debian amavisd-new at olra.theworths.org\r
8 Received: from olra.theworths.org ([127.0.0.1])\r
9         by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024)\r
10         with ESMTP id CMaHH260lOkY; Fri, 27 Nov 2009 22:43:22 -0800 (PST)\r
11 Received: from cworth.org (localhost [127.0.0.1])\r
12         by olra.theworths.org (Postfix) with ESMTP id 59FE7431FAE;\r
13         Fri, 27 Nov 2009 22:43:22 -0800 (PST)\r
14 From: Carl Worth <cworth@cworth.org>\r
15 To: Jeffrey Ollie <jeff@ocjtech.us>, Mikhail Gusarov <dottedmag@dottedmag.net>\r
16 In-Reply-To: <935ead450911272141g7ecf917ds1547fc95da3178aa@mail.gmail.com>\r
17 References: <1259378883-9181-1-git-send-email-jeff@ocjtech.us>\r
18         <87ws1be35o.fsf@vertex.dottedmag>\r
19         <935ead450911272141g7ecf917ds1547fc95da3178aa@mail.gmail.com>\r
20 Date: Fri, 27 Nov 2009 22:43:07 -0800\r
21 Message-ID: <87ws1brvyc.fsf@yoom.home.cworth.org>\r
22 MIME-Version: 1.0\r
23 Content-Type: multipart/signed; boundary="=-=-=";\r
24         micalg=pgp-sha1; protocol="application/pgp-signature"\r
25 Cc: Not Much Mail <notmuch@notmuchmail.org>\r
26 Subject: Re: [notmuch] [PATCH] Use libgcrypt for hashing.\r
27 X-BeenThere: notmuch@notmuchmail.org\r
28 X-Mailman-Version: 2.1.12\r
29 Precedence: list\r
30 List-Id: "Use and development of the notmuch mail system."\r
31         <notmuch.notmuchmail.org>\r
32 List-Unsubscribe: <http://notmuchmail.org/mailman/options/notmuch>,\r
33         <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
34 List-Archive: <http://notmuchmail.org/pipermail/notmuch>\r
35 List-Post: <mailto:notmuch@notmuchmail.org>\r
36 List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
37 List-Subscribe: <http://notmuchmail.org/mailman/listinfo/notmuch>,\r
38         <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
39 X-List-Received-Date: Sat, 28 Nov 2009 06:43:23 -0000\r
40 \r
41 --=-=-=\r
42 Content-Transfer-Encoding: quoted-printable\r
43 \r
44 On Fri, 27 Nov 2009 23:41:40 -0600, Jeffrey Ollie <jeff@ocjtech.us> wrote:\r
45 > That's great that you're willing to take on the task, but as I do a\r
46 > lot of work for Fedora I tend to think about these things differently.\r
47 >  It's not about a project here or there making private copies of some\r
48 > code, it's about tracking down *all* of the projects that have private\r
49 > copies of the code when something goes wrong, especially when there\r
50 > are security implications.\r
51 \r
52 Hi Jeffrey,\r
53 \r
54 Have you actually *looked* at the implementation of libsha1.c that we\r
55 have in notmuch? I can't say with 100% certainty that it's free of any\r
56 buffer overruns, but I can see that it's not doing any memory allocation\r
57 nor network communication. So there are entire classes of security\r
58 problems, (such as have afflicted libraries in your examples), that just\r
59 aren't present here.\r
60 \r
61 And as for security compromises due to a bug in the cryptographic nature\r
62 of this function---well, notmuch isn't even *using* SHA-1 for any secure\r
63 purpose.\r
64 \r
65 The actual functionality that we need here is *so* small that I am\r
66 unwilling to introduce a required dependency on any library as large as\r
67 libcrypt. I mean, look at the actual sizes we're talking about\r
68 \r
69 $ size lib/notmuch.a\r
70    text    data     bss     dec     hex filename\r
71    6774       0       0    6774    1a76 libsha1.o (ex lib/notmuch.a)\r
72    2372       0       4    2376     948 message-file.o (ex lib/notmuch.a)\r
73     756       0       0     756     2f4 messages.o (ex lib/notmuch.a)\r
74     405       0       0     405     195 sha1.o (ex lib/notmuch.a)\r
75     406       0       0     406     196 tags.o (ex lib/notmuch.a)\r
76     842       0       0     842     34a xutil.o (ex lib/notmuch.a)\r
77   15834     100       1   15935    3e3f database.o (ex lib/notmuch.a)\r
78    2826       0       4    2830     b0e index.o (ex lib/notmuch.a)\r
79   11834       0       4   11838    2e3e message.o (ex lib/notmuch.a)\r
80    7042       0       0    7042    1b82 query.o (ex lib/notmuch.a)\r
81    2553       0       0    2553     9f9 thread.o (ex lib/notmuch.a)\r
82 \r
83 $ size /usr/lib/libgcrypt.so.11.5.2=20\r
84    text    data     bss     dec     hex filename\r
85  466236    8424     748  475408   74110 /usr/lib/libgcrypt.so.11.5.2\r
86 \r
87 You can see that libgcrypt is 7 times the size of all of libnotmuch.a\r
88 combined.\r
89 \r
90 Now, if somebody wanted to maintain libsha1 inside a distribution like\r
91 Debian, say, then I'd be happy to link against that version rather than\r
92 a locally compiled version. And like I said earlier, if people would\r
93 rather link against a large cyptographic library for this one tiny\r
94 function, then we could arrange that too, but I don't think that\r
95 justifies dropping this code from notmuch and introducing a hard\r
96 dependency.\r
97 \r
98 =2DCarl\r
99 \r
100 --=-=-=\r
101 Content-Type: application/pgp-signature\r
102 \r
103 -----BEGIN PGP SIGNATURE-----\r
104 Version: GnuPG v1.4.10 (GNU/Linux)\r
105 \r
106 iD8DBQFLEMZ76JDdNq8qSWgRAmLdAKCbnadhkGWuPzRX/04wKJQ7A3CcLACfZ5Sh\r
107 h5zVHJHjqPWdcEloc9/6OL0=\r
108 =8CoD\r
109 -----END PGP SIGNATURE-----\r
110 --=-=-=--\r