Re: [PATCH v3 03/16] make shared crypto code behave library-like
authorDaniel Kahn Gillmor <dkg@fifthhorseman.net>
Wed, 10 Feb 2016 16:18:18 +0000 (11:18 +1900)
committerW. Trevor King <wking@tremily.us>
Sat, 20 Aug 2016 23:21:04 +0000 (16:21 -0700)
c1/1a405d3650c168a8d9c559f962ec664e28904f [new file with mode: 0644]

diff --git a/c1/1a405d3650c168a8d9c559f962ec664e28904f b/c1/1a405d3650c168a8d9c559f962ec664e28904f
new file mode 100644 (file)
index 0000000..a1eebf9
--- /dev/null
@@ -0,0 +1,107 @@
+Return-Path: <dkg@fifthhorseman.net>\r
+X-Original-To: notmuch@notmuchmail.org\r
+Delivered-To: notmuch@notmuchmail.org\r
+Received: from localhost (localhost [127.0.0.1])\r
+ by arlo.cworth.org (Postfix) with ESMTP id 659C66DE0B36\r
+ for <notmuch@notmuchmail.org>; Wed, 10 Feb 2016 08:18:42 -0800 (PST)\r
+X-Virus-Scanned: Debian amavisd-new at cworth.org\r
+X-Spam-Flag: NO\r
+X-Spam-Score: -0.018\r
+X-Spam-Level: \r
+X-Spam-Status: No, score=-0.018 tagged_above=-999 required=5\r
+ tests=[AWL=-0.018] autolearn=disabled\r
+Received: from arlo.cworth.org ([127.0.0.1])\r
+ by localhost (arlo.cworth.org [127.0.0.1]) (amavisd-new, port 10024)\r
+ with ESMTP id 1TNRkEoPGqyy for <notmuch@notmuchmail.org>;\r
+ Wed, 10 Feb 2016 08:18:40 -0800 (PST)\r
+Received: from che.mayfirst.org (che.mayfirst.org [209.234.253.108])\r
+ by arlo.cworth.org (Postfix) with ESMTP id 6608F6DE01D3\r
+ for <notmuch@notmuchmail.org>; Wed, 10 Feb 2016 08:18:40 -0800 (PST)\r
+Received: from fifthhorseman.net (unknown [38.109.115.130])\r
+ by che.mayfirst.org (Postfix) with ESMTPSA id 76C3EF997;\r
+ Wed, 10 Feb 2016 11:18:20 -0500 (EST)\r
+Received: by fifthhorseman.net (Postfix, from userid 1000)\r
+ id 270FE1FF75; Wed, 10 Feb 2016 11:18:19 -0500 (EST)\r
+From: Daniel Kahn Gillmor <dkg@fifthhorseman.net>\r
+To: David Bremner <david@tethera.net>, Notmuch Mail <notmuch@notmuchmail.org>\r
+Subject: Re: [PATCH v3 03/16] make shared crypto code behave library-like\r
+In-Reply-To: <87twlhuw8f.fsf@maritornes.cs.unb.ca>\r
+References: <1454272801-23623-1-git-send-email-dkg@fifthhorseman.net>\r
+ <1454272801-23623-4-git-send-email-dkg@fifthhorseman.net>\r
+ <87twlhuw8f.fsf@maritornes.cs.unb.ca>\r
+User-Agent: Notmuch/0.21+72~gd8c4f1c (http://notmuchmail.org) Emacs/24.5.1\r
+ (x86_64-pc-linux-gnu)\r
+Date: Wed, 10 Feb 2016 11:18:18 -0500\r
+Message-ID: <87d1s4o7xx.fsf@alice.fifthhorseman.net>\r
+MIME-Version: 1.0\r
+Content-Type: text/plain\r
+X-BeenThere: notmuch@notmuchmail.org\r
+X-Mailman-Version: 2.1.20\r
+Precedence: list\r
+List-Id: "Use and development of the notmuch mail system."\r
+ <notmuch.notmuchmail.org>\r
+List-Unsubscribe: <https://notmuchmail.org/mailman/options/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=unsubscribe>\r
+List-Archive: <http://notmuchmail.org/pipermail/notmuch/>\r
+List-Post: <mailto:notmuch@notmuchmail.org>\r
+List-Help: <mailto:notmuch-request@notmuchmail.org?subject=help>\r
+List-Subscribe: <https://notmuchmail.org/mailman/listinfo/notmuch>,\r
+ <mailto:notmuch-request@notmuchmail.org?subject=subscribe>\r
+X-List-Received-Date: Wed, 10 Feb 2016 16:18:42 -0000\r
+\r
+On Tue 2016-02-09 21:37:04 -0500, David Bremner wrote:\r
+> Daniel Kahn Gillmor <dkg@fifthhorseman.net> writes:\r
+>> -static GMimeCryptoContext*\r
+>> -create_gpg_context (_notmuch_crypto_t *crypto)\r
+>> +static notmuch_status_t\r
+>> +get_gpg_context (_notmuch_crypto_t *crypto, GMimeCryptoContext **ctx)\r
+>\r
+> I was a littled puzzled by this renaming. I guess it's fine, it just\r
+> creates a bit more diff noise.\r
+\r
+the renaming from create_ to get_ is meaningful -- this function won't\r
+actually create a new gpg context if one already exists.\r
+\r
+>>  /* Create a PKCS7 context (GMime 2.6) */\r
+>> -static notmuch_crypto_context_t *\r
+>> -create_pkcs7_context (notmuch_crypto_t *crypto)\r
+>> +static notmuch_status_t \r
+>> +create_pkcs7_context (_notmuch_crypto_t *crypto, GMimeCryptoContext **ctx)\r
+>\r
+> Especially since you only renamed the gpg version. Or did I miss\r
+> something?\r
+\r
+ah, you're right here, this should be fixed.\r
+\r
+>> +notmuch_status_t\r
+>> +_notmuch_crypto_get_gmime_ctx_for_protocol (_notmuch_crypto_t *crypto,\r
+>> +                                       const char *protocol,\r
+>> +                                       GMimeCryptoContext **ctx)\r
+>>  {\r
+>> -    GMimeCryptoContext *cryptoctx = NULL;\r
+>> -    size_t i;\r
+>> -\r
+>> -    if (! protocol) {\r
+>> -   fprintf (stderr, "Cryptographic protocol is empty.\n");\r
+>> -   return cryptoctx;\r
+>> -    }\r
+>> +    if (! protocol)\r
+>> +   return NOTMUCH_STATUS_MALFORMED_CRYPTO_PROTOCOL;\r
+>>  \r
+>>      /* As per RFC 1847 section 2.1: "the [protocol] value token is\r
+>>       * comprised of the type and sub-type tokens of the Content-Type".\r
+>> @@ -112,15 +112,12 @@ _notmuch_crypto_get_gmime_context (_notmuch_crypto_t *crypto, const char *protoc\r
+>>       * parameter names as defined in this document are\r
+>>       * case-insensitive."  Thus, we use strcasecmp for the protocol.\r
+>>       */\r
+>> -    for (i = 0; i < ARRAY_SIZE (protocols); i++) {\r
+>> +    for (size_t i = 0; i < ARRAY_SIZE (protocols); i++) {\r
+>\r
+> I forget whether we are using C99 for loop variable declarations.  I\r
+> like them myself. If someone figures out the answer, maybe they can\r
+> update devel/STYLE.\r
+\r
+is what i did above a C99 loop variable declaration?  If so, i also like\r
+them.  I've left it in for now :)\r
+\r
+       --dkg\r