Rocco Rutte:
[apps/madmutt.git] / crypt-gpgme.c
index b9b7613..f22ca2d 100644 (file)
@@ -149,7 +149,7 @@ static const char *crypt_keyid (crypt_key_t * k)
 
   if (k->kobj && k->kobj->subkeys) {
     s = k->kobj->subkeys->keyid;
-    if ((!option (OPTPGPLONGIDS)) && (mutt_strlen (s) == 16))
+    if ((!option (OPTPGPLONGIDS)) && (str_len (s) == 16))
       /* Return only the short keyID.  */
       s += 8;
   }
@@ -295,11 +295,11 @@ static int crypt_id_matches_addr (ADDRESS * addr, ADDRESS * u_addr,
     rv |= CRYPT_KV_STRONGID;
 
   if (addr->mailbox && u_addr->mailbox
-      && safe_strcasecmp (addr->mailbox, u_addr->mailbox) == 0)
+      && str_casecmp (addr->mailbox, u_addr->mailbox) == 0)
     rv |= CRYPT_KV_ADDR;
 
   if (addr->personal && u_addr->personal
-      && safe_strcasecmp (addr->personal, u_addr->personal) == 0)
+      && str_casecmp (addr->personal, u_addr->personal) == 0)
     rv |= CRYPT_KV_STRING;
 
   return rv;
@@ -505,7 +505,7 @@ static char *data_object_to_tempfile (gpgme_data_t data, FILE ** ret_fp)
   }
   if (ret_fp)
     *ret_fp = fp;
-  return safe_strdup (tempfile);
+  return str_dup (tempfile);
 }
 
 
@@ -757,7 +757,7 @@ static BODY *sign_message (BODY * a, int use_smime)
 
   t = mutt_new_body ();
   t->type = TYPEMULTIPART;
-  t->subtype = safe_strdup ("signed");
+  t->subtype = str_dup ("signed");
   t->encoding = ENC7BIT;
   t->use_disp = 0;
   t->disposition = DISPINLINE;
@@ -781,15 +781,15 @@ static BODY *sign_message (BODY * a, int use_smime)
   t = t->parts->next;
   t->type = TYPEAPPLICATION;
   if (use_smime) {
-    t->subtype = safe_strdup ("pkcs7-signature");
+    t->subtype = str_dup ("pkcs7-signature");
     mutt_set_parameter ("name", "smime.p7s", &t->parameter);
     t->encoding = ENCBASE64;
     t->use_disp = 1;
     t->disposition = DISPATTACH;
-    t->d_filename = safe_strdup ("smime.p7s");
+    t->d_filename = str_dup ("smime.p7s");
   }
   else {
-    t->subtype = safe_strdup ("pgp-signature");
+    t->subtype = str_dup ("pgp-signature");
     t->use_disp = 0;
     t->disposition = DISPINLINE;
     t->encoding = ENC7BIT;
@@ -844,7 +844,7 @@ BODY *pgp_gpgme_encrypt_message (BODY * a, char *keylist, int sign)
 
   t = mutt_new_body ();
   t->type = TYPEMULTIPART;
-  t->subtype = safe_strdup ("encrypted");
+  t->subtype = str_dup ("encrypted");
   t->encoding = ENC7BIT;
   t->use_disp = 0;
   t->disposition = DISPINLINE;
@@ -854,18 +854,18 @@ BODY *pgp_gpgme_encrypt_message (BODY * a, char *keylist, int sign)
 
   t->parts = mutt_new_body ();
   t->parts->type = TYPEAPPLICATION;
-  t->parts->subtype = safe_strdup ("pgp-encrypted");
+  t->parts->subtype = str_dup ("pgp-encrypted");
   t->parts->encoding = ENC7BIT;
 
   t->parts->next = mutt_new_body ();
   t->parts->next->type = TYPEAPPLICATION;
-  t->parts->next->subtype = safe_strdup ("octet-stream");
+  t->parts->next->subtype = str_dup ("octet-stream");
   t->parts->next->encoding = ENC7BIT;
   t->parts->next->filename = outfile;
   t->parts->next->use_disp = 1;
   t->parts->next->disposition = DISPINLINE;
   t->parts->next->unlink = 1;   /* delete after sending the message */
-  t->parts->next->d_filename = safe_strdup ("msg.asc"); /* non pgp/mime
+  t->parts->next->d_filename = str_dup ("msg.asc"); /* non pgp/mime
                                                            can save */
 
   return t;
@@ -902,13 +902,13 @@ BODY *smime_gpgme_build_smime_entity (BODY * a, char *keylist)
 
   t = mutt_new_body ();
   t->type = TYPEAPPLICATION;
-  t->subtype = safe_strdup ("pkcs7-mime");
+  t->subtype = str_dup ("pkcs7-mime");
   mutt_set_parameter ("name", "smime.p7m", &t->parameter);
   mutt_set_parameter ("smime-type", "enveloped-data", &t->parameter);
   t->encoding = ENCBASE64;      /* The output of OpenSSL SHOULD be binary */
   t->use_disp = 1;
   t->disposition = DISPATTACH;
-  t->d_filename = safe_strdup ("smime.p7m");
+  t->d_filename = str_dup ("smime.p7m");
   t->filename = outfile;
   t->unlink = 1;                /*delete after sending the message */
   t->parts = 0;
@@ -1003,7 +1003,7 @@ static int show_sig_summary (unsigned long sum,
       state_attach_puts (": ", s);
       if (t0)
         state_attach_puts (t0, s);
-      if (t1 && !(t0 && !mutt_strcmp (t0, t1))) {
+      if (t1 && !(t0 && !str_cmp (t0, t1))) {
         if (t0)
           state_attach_puts (",", s);
         state_attach_puts (t1, s);
@@ -1030,10 +1030,10 @@ static void show_fingerprint (gpgme_key_t key, STATE * state)
     return;
   is_pgp = (key->protocol == GPGME_PROTOCOL_OpenPGP);
 
-  buf = safe_malloc (mutt_strlen (prefix) + mutt_strlen (s) * 4 + 2);
+  buf = safe_malloc (str_len (prefix) + str_len (s) * 4 + 2);
   strcpy (buf, prefix);         /* __STRCPY_CHECKED__ */
-  p = buf + mutt_strlen (buf);
-  if (is_pgp && mutt_strlen (s) == 40) {     /* PGP v4 style formatted. */
+  p = buf + str_len (buf);
+  if (is_pgp && str_len (s) == 40) {     /* PGP v4 style formatted. */
     for (i = 0; *s && s[1] && s[2] && s[3] && s[4]; s += 4, i++) {
       *p++ = s[0];
       *p++ = s[1];
@@ -1298,7 +1298,7 @@ static int verify_one (BODY * sigbdy, STATE * s,
             if (notation->value) {
               state_attach_puts (notation->value, s);
               if (!(*notation->value
-                    && (notation->value[mutt_strlen (notation->value) - 1] ==
+                    && (notation->value[str_len (notation->value) - 1] ==
                         '\n')))
                 state_attach_puts ("\n", s);
             }
@@ -1656,10 +1656,10 @@ static int pgp_check_traditional_one_body (FILE * fp, BODY * b,
   }
 
   while (fgets (buf, sizeof (buf), tfp)) {
-    if (!safe_strncmp ("-----BEGIN PGP ", buf, 15)) {
-      if (!mutt_strcmp ("MESSAGE-----\n", buf + 15))
+    if (!str_ncmp ("-----BEGIN PGP ", buf, 15)) {
+      if (!str_cmp ("MESSAGE-----\n", buf + 15))
         enc = 1;
-      else if (!mutt_strcmp ("SIGNED MESSAGE-----\n", buf + 15))
+      else if (!str_cmp ("SIGNED MESSAGE-----\n", buf + 15))
         sgn = 1;
     }
   }
@@ -1738,7 +1738,7 @@ static void copy_clearsigned (gpgme_data_t data, STATE * s, char *charset)
       continue;
     }
 
-    if (!mutt_strcmp (buf, "-----BEGIN PGP SIGNATURE-----\n"))
+    if (!str_cmp (buf, "-----BEGIN PGP SIGNATURE-----\n"))
       break;
 
     if (armor_header) {
@@ -1795,21 +1795,21 @@ void pgp_gpgme_application_handler (BODY * m, STATE * s)
       break;
 
     offset = ftell (s->fpin);
-    bytes -= (offset - last_pos);       /* don't rely on mutt_strlen(buf) */
+    bytes -= (offset - last_pos);       /* don't rely on str_len(buf) */
     last_pos = offset;
 
-    if (!safe_strncmp ("-----BEGIN PGP ", buf, 15)) {
+    if (!str_ncmp ("-----BEGIN PGP ", buf, 15)) {
       clearsign = 0;
       start_pos = last_pos;
 
-      if (!mutt_strcmp ("MESSAGE-----\n", buf + 15))
+      if (!str_cmp ("MESSAGE-----\n", buf + 15))
         needpass = 1;
-      else if (!mutt_strcmp ("SIGNED MESSAGE-----\n", buf + 15)) {
+      else if (!str_cmp ("SIGNED MESSAGE-----\n", buf + 15)) {
         clearsign = 1;
         needpass = 0;
       }
       else if (!option (OPTDONTHANDLEPGPKEYS) &&
-               !mutt_strcmp ("PUBLIC KEY BLOCK-----\n", buf + 15)) {
+               !str_cmp ("PUBLIC KEY BLOCK-----\n", buf + 15)) {
         needpass = 0;
         pgp_keyblock = 1;
       }
@@ -1825,18 +1825,18 @@ void pgp_gpgme_application_handler (BODY * m, STATE * s)
 
       /* Copy PGP material to an data container */
       armored_data = create_gpgme_data ();
-      gpgme_data_write (armored_data, buf, mutt_strlen (buf));
+      gpgme_data_write (armored_data, buf, str_len (buf));
       while (bytes > 0 && fgets (buf, sizeof (buf) - 1, s->fpin) != NULL) {
         offset = ftell (s->fpin);
-        bytes -= (offset - last_pos);   /* don't rely on mutt_strlen(buf) */
+        bytes -= (offset - last_pos);   /* don't rely on str_len(buf) */
         last_pos = offset;
 
-        gpgme_data_write (armored_data, buf, mutt_strlen (buf));
+        gpgme_data_write (armored_data, buf, str_len (buf));
 
-        if ((needpass && !mutt_strcmp ("-----END PGP MESSAGE-----\n", buf))
+        if ((needpass && !str_cmp ("-----END PGP MESSAGE-----\n", buf))
             || (!needpass
-                && (!mutt_strcmp ("-----END PGP SIGNATURE-----\n", buf)
-                    || !mutt_strcmp ("-----END PGP PUBLIC KEY BLOCK-----\n",
+                && (!str_cmp ("-----END PGP SIGNATURE-----\n", buf)
+                    || !str_cmp ("-----END PGP PUBLIC KEY BLOCK-----\n",
                                      buf))))
           break;
       }
@@ -2368,10 +2368,10 @@ static int _crypt_compare_address (const void *a, const void *b)
   crypt_key_t **t = (crypt_key_t **) b;
   int r;
 
-  if ((r = safe_strcasecmp ((*s)->uid, (*t)->uid)))
+  if ((r = str_casecmp ((*s)->uid, (*t)->uid)))
     return r > 0;
   else
-    return safe_strcasecmp (crypt_keyid (*s), crypt_keyid (*t)) > 0;
+    return str_casecmp (crypt_keyid (*s), crypt_keyid (*t)) > 0;
 }
 
 static int crypt_compare_address (const void *a, const void *b)
@@ -2388,10 +2388,10 @@ static int _crypt_compare_keyid (const void *a, const void *b)
   crypt_key_t **t = (crypt_key_t **) b;
   int r;
 
-  if ((r = safe_strcasecmp (crypt_keyid (*s), crypt_keyid (*t))))
+  if ((r = str_casecmp (crypt_keyid (*s), crypt_keyid (*t))))
     return r > 0;
   else
-    return safe_strcasecmp ((*s)->uid, (*t)->uid) > 0;
+    return str_casecmp ((*s)->uid, (*t)->uid) > 0;
 }
 
 static int crypt_compare_keyid (const void *a, const void *b)
@@ -2417,7 +2417,7 @@ static int _crypt_compare_date (const void *a, const void *b)
   if (ts < tt)
     return 0;
 
-  return safe_strcasecmp ((*s)->uid, (*t)->uid) > 0;
+  return str_casecmp ((*s)->uid, (*t)->uid) > 0;
 }
 
 static int crypt_compare_date (const void *a, const void *b)
@@ -2462,9 +2462,9 @@ static int _crypt_compare_trust (const void *a, const void *b)
   if (ts < tt)
     return 0;
 
-  if ((r = safe_strcasecmp ((*s)->uid, (*t)->uid)))
+  if ((r = str_casecmp ((*s)->uid, (*t)->uid)))
     return r > 0;
-  return (safe_strcasecmp (crypt_keyid ((*s)), crypt_keyid ((*t)))) > 0;
+  return (str_casecmp (crypt_keyid ((*s)), crypt_keyid ((*t)))) > 0;
 }
 
 static int crypt_compare_trust (const void *a, const void *b)
@@ -2480,10 +2480,10 @@ static int print_dn_part (FILE * fp, struct dn_array_s *dn, const char *key)
   int any = 0;
 
   for (; dn->key; dn++) {
-    if (!mutt_strcmp (dn->key, key)) {
+    if (!str_cmp (dn->key, key)) {
       if (any)
         fputs (" + ", fp);
-      print_utf8 (fp, dn->value, mutt_strlen (dn->value));
+      print_utf8 (fp, dn->value, str_len (dn->value));
       any = 1;
     }
   }
@@ -2506,7 +2506,7 @@ static void print_dn_parts (FILE * fp, struct dn_array_s *dn)
   /* now print the rest without any specific ordering */
   for (; dn->key; dn++) {
     for (i = 0; stdpart[i]; i++) {
-      if (!mutt_strcmp (dn->key, stdpart[i]))
+      if (!str_cmp (dn->key, stdpart[i]))
         break;
     }
     if (!stdpart[i]) {
@@ -2759,7 +2759,7 @@ static void print_key_info (gpgme_key_t key, FILE * fp)
       putc (' ', fp);
     }
     if (is_pgp)
-      print_utf8 (fp, s, mutt_strlen (s));
+      print_utf8 (fp, s, str_len (s));
     else
       parse_and_print_user_id (fp, s);
     putc ('\n', fp);
@@ -2821,7 +2821,7 @@ static void print_key_info (gpgme_key_t key, FILE * fp)
   if (key->subkeys) {
     s = key->subkeys->fpr;
     fputs (_("Fingerprint: "), fp);
-    if (is_pgp && mutt_strlen (s) == 40) {
+    if (is_pgp && str_len (s) == 40) {
       for (i = 0; *s && s[1] && s[2] && s[3] && s[4]; s += 4, i++) {
         putc (*s, fp);
         putc (s[1], fp);
@@ -2867,7 +2867,7 @@ static void print_key_info (gpgme_key_t key, FILE * fp)
       s = subkey->keyid;
 
       putc ('\n', fp);
-      if (mutt_strlen (s) == 16)
+      if (str_len (s) == 16)
         s += 8;                 /* display only the short keyID */
       fprintf (fp, "Subkey ....: 0x%s", s);
       if (subkey->revoked) {
@@ -2980,7 +2980,7 @@ static void verify_key (crypt_key_t * key)
 
   k = key->kobj;
   gpgme_key_ref (k);
-  while ((s = k->chain_id) && k->subkeys && mutt_strcmp (s, k->subkeys->fpr)) {
+  while ((s = k->chain_id) && k->subkeys && str_cmp (s, k->subkeys->fpr)) {
     putc ('\n', fp);
     err = gpgme_op_keylist_start (listctx, s, 0);
     gpgme_key_release (k);
@@ -3109,7 +3109,7 @@ static crypt_key_t *get_candidates (LIST * hints, unsigned int app,
     patarr = safe_calloc (n + 1, sizeof *patarr);
     for (l = hints, n = 0; l; l = l->next) {
       if (l->data && *l->data)
-        patarr[n++] = safe_strdup (l->data);
+        patarr[n++] = str_dup (l->data);
     }
     patarr[n] = NULL;
     err = gpgme_op_keylist_ext_start (ctx, (const char **) patarr, secret, 0);
@@ -3214,12 +3214,12 @@ static LIST *crypt_add_string_to_hints (LIST * hints, const char *str)
   char *scratch;
   char *t;
 
-  if ((scratch = safe_strdup (str)) == NULL)
+  if ((scratch = str_dup (str)) == NULL)
     return hints;
 
   for (t = strtok (scratch, " ,.:\"()<>\n"); t;
        t = strtok (NULL, " ,.:\"()<>\n")) {
-    if (mutt_strlen (t) > 3)
+    if (str_len (t) > 3)
       hints = mutt_add_list (hints, t);
   }
 
@@ -3568,12 +3568,12 @@ static crypt_key_t *crypt_getkeybystr (char *p, short abilities,
     match = 0;
     debug_print (5, ("matching \"%s\" against " "key %s, \"%s\":\n", p, crypt_keyid (k), k->uid));
 
-    if (!*p || !safe_strcasecmp (p, crypt_keyid (k))
-        || (!safe_strncasecmp (p, "0x", 2)
-            && !safe_strcasecmp (p + 2, crypt_keyid (k)))
+    if (!*p || !str_casecmp (p, crypt_keyid (k))
+        || (!str_ncasecmp (p, "0x", 2)
+            && !str_casecmp (p + 2, crypt_keyid (k)))
         || (option (OPTPGPLONGIDS)
-            && !safe_strncasecmp (p, "0x", 2)
-            && !safe_strcasecmp (p + 2, crypt_keyid (k) + 8))
+            && !str_ncasecmp (p, "0x", 2)
+            && !str_casecmp (p + 2, crypt_keyid (k) + 8))
         || str_isstr (k->uid, p)) {
       crypt_key_t *tmp;
 
@@ -3620,7 +3620,7 @@ static crypt_key_t *crypt_ask_for_key (char *tag,
   if (whatfor) {
 
     for (l = id_defaults; l; l = l->next)
-      if (!safe_strcasecmp (whatfor, l->what)) {
+      if (!str_casecmp (whatfor, l->what)) {
         strfcpy (resp, NONULL (l->dflt), sizeof (resp));
         break;
       }
@@ -3639,8 +3639,8 @@ static crypt_key_t *crypt_ask_for_key (char *tag,
         l = safe_malloc (sizeof (struct crypt_cache));
         l->next = id_defaults;
         id_defaults = l;
-        l->what = safe_strdup (whatfor);
-        l->dflt = safe_strdup (resp);
+        l->what = str_dup (whatfor);
+        l->dflt = str_dup (resp);
       }
     }
 
@@ -3765,12 +3765,12 @@ static char *find_keys (ADDRESS * to, ADDRESS * cc, ADDRESS * bcc,
         *r_application &= ~APPLICATION_SMIME;
 #endif
 
-      keylist_size += mutt_strlen (s) + 4 + 1;
+      keylist_size += str_len (s) + 4 + 1;
       safe_realloc (&keylist, keylist_size);
       sprintf (keylist + keylist_used, "%s0x%s%s",      /* __SPRINTF_CHECKED__ */
                keylist_used ? " " : "", s, forced_valid ? "!" : "");
     }
-    keylist_used = mutt_strlen (keylist);
+    keylist_used = str_len (keylist);
 
     crypt_free_key (&key);
     rfc822_free_address (&addr);
@@ -3924,9 +3924,9 @@ static int verify_sender (HEADER * h, gpgme_protocol_t protocol)
       int sender_length = 0;
       int uid_length = 0;
 
-      sender_length = mutt_strlen (sender->mailbox);
+      sender_length = str_len (sender->mailbox);
       for (uid = key->uids; uid && ret; uid = uid->next) {
-        uid_length = mutt_strlen (uid->email);
+        uid_length = str_len (uid->email);
         if (1 && (uid->email[0] == '<')
             && (uid->email[uid_length - 1] == '>')
             && (uid_length == sender_length + 2)