Rocco Rutte:
[apps/madmutt.git] / gnupgparse.c
index f2e740c..30e73e2 100644 (file)
@@ -1,23 +1,11 @@
 /*
+ * Copyright notice from original mutt:
  * Copyright (C) 1998-2000 Werner Koch <werner.koch@guug.de>
  * Copyright (C) 1999-2000 Thomas Roessler <roessler@does-not-exist.org>
  *
- *     This program is free software; you can redistribute it
- *     and/or modify it under the terms of the GNU General Public
- *     License as published by the Free Software Foundation; either
- *     version 2 of the License, or (at your option) any later
- *     version.
- *
- *     This program is distributed in the hope that it will be
- *     useful, but WITHOUT ANY WARRANTY; without even the implied
- *     warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
- *     PURPOSE.  See the GNU General Public License for more
- *     details.
- *
- *     You should have received a copy of the GNU General Public
- *     License along with this program; if not, write to the Free
- *     Software Foundation, Inc., 59 Temple Place - Suite 330,
- *     Boston, MA  02111, USA.
+ * This file is part of mutt-ng, see http://www.muttng.org/.
+ * It's licensed under the GNU General Public License,
+ * please see the file GPL in the top level source directory.
  */
 
 /*
 /* for hexval */
 #include "mime.h"
 
+#include "lib/mem.h"
+#include "lib/str.h"
+#include "lib/debug.h"
+
 /****************
  * Read the GNUPG keys.  For now we read the complete keyring by
  * calling gnupg in a special mode.
@@ -104,7 +96,7 @@ static void fix_uid (char *uid)
         memcpy (uid, buf, ob - buf);
         uid[ob - buf] = '\0';
       }
-      else if (ob - buf == n && (buf[n] = 0, strlen (buf) < n))
+      else if (ob - buf == n && (buf[n] = 0, safe_strlen (buf) < n))
         memcpy (uid, buf, n);
     }
     FREE (&buf);
@@ -124,7 +116,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
   if (!*buf)
     return NULL;
 
-  dprint (2, (debugfile, "parse_pub_line: buf = `%s'\n", buf));
+  debug_print (2, ("buf = `%s'\n", buf));
 
   for (p = buf; p; p = pend) {
     if ((pend = strchr (p, ':')))
@@ -136,15 +128,15 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
     switch (field) {
     case 1:                    /* record type */
       {
-        dprint (2, (debugfile, "record type: %s\n", p));
+        debug_print (2, ("record type: %s\n", p));
 
-        if (!mutt_strcmp (p, "pub"));
-        else if (!mutt_strcmp (p, "sub"))
+        if (!safe_strcmp (p, "pub"));
+        else if (!safe_strcmp (p, "sub"))
           *is_subkey = 1;
-        else if (!mutt_strcmp (p, "sec"));
-        else if (!mutt_strcmp (p, "ssb"))
+        else if (!safe_strcmp (p, "sec"));
+        else if (!safe_strcmp (p, "ssb"))
           *is_subkey = 1;
-        else if (!mutt_strcmp (p, "uid"))
+        else if (!safe_strcmp (p, "uid"))
           is_uid = 1;
         else
           return NULL;
@@ -156,7 +148,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
       }
     case 2:                    /* trust info */
       {
-        dprint (2, (debugfile, "trust info: %s\n", p));
+        debug_print (2, ("trust info: %s\n", p));
 
         switch (*p) {           /* look only at the first letter */
         case 'e':
@@ -190,7 +182,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
     case 3:                    /* key length  */
       {
 
-        dprint (2, (debugfile, "key len: %s\n", p));
+        debug_print (2, ("key len: %s\n", p));
 
         if (!(*is_subkey && option (OPTPGPIGNORESUB)))
           k->keylen = atoi (p); /* fixme: add validation checks */
@@ -199,7 +191,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
     case 4:                    /* pubkey algo */
       {
 
-        dprint (2, (debugfile, "pubkey algorithm: %s\n", p));
+        debug_print (2, ("pubkey algorithm: %s\n", p));
 
         if (!(*is_subkey && option (OPTPGPIGNORESUB))) {
           k->numalg = atoi (p);
@@ -209,10 +201,10 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
       }
     case 5:                    /* 16 hex digits with the long keyid. */
       {
-        dprint (2, (debugfile, "key id: %s\n", p));
+        debug_print (2, ("key id: %s\n", p));
 
         if (!(*is_subkey && option (OPTPGPIGNORESUB)))
-          mutt_str_replace (&k->keyid, p);
+          str_replace (&k->keyid, p);
         break;
 
       }
@@ -221,7 +213,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
         char tstr[11];
         struct tm time;
 
-        dprint (2, (debugfile, "time stamp: %s\n", p));
+        debug_print (2, ("time stamp: %s\n", p));
 
         if (!p)
           break;
@@ -252,7 +244,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
         if (!is_uid && (*is_subkey && option (OPTPGPIGNORESUB)))
           break;
 
-        dprint (2, (debugfile, "user ID: %s\n", p));
+        debug_print (2, ("user ID: %s\n", p));
 
         uid = safe_calloc (sizeof (pgp_uid_t), 1);
         fix_uid (p);
@@ -273,7 +265,7 @@ static pgp_key_t parse_pub_line (char *buf, int *is_subkey, pgp_key_t k)
     case 11:                   /* signature class  */
       break;
     case 12:                   /* key capabilities */
-      dprint (2, (debugfile, "capabilities info: %s\n", p));
+      debug_print (2, ("capabilities info: %s\n", p));
 
       while (*p) {
         switch (*p++) {
@@ -318,7 +310,7 @@ pgp_key_t pgp_get_candidates (pgp_ring_t keyring, LIST * hints)
   if ((devnull = open ("/dev/null", O_RDWR)) == -1)
     return NULL;
 
-  mutt_str_replace (&_chs, Charset);
+  str_replace (&_chs, Charset);
 
   thepid = pgp_invoke_list_keys (NULL, &fp, NULL, -1, -1, devnull,
                                  keyring, hints);