we're grownups now. don't care about stupid OS'es that don't know what an
[apps/madmutt.git] / pgppubring.c
index 7e62d83..88b11e4 100644 (file)
@@ -1,22 +1,10 @@
 /*
 /*
+ * Copyright notice from original mutt:
  * Copyright (C) 1997-2001 Thomas Roessler <roessler@does-not-exist.org>
  * Copyright (C) 1997-2001 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.
  */
 
 /*
  */
 
 /*
@@ -38,6 +26,9 @@
 # include "config.h"
 #endif
 
 # include "config.h"
 #endif
 
+#include "lib/mem.h"
+#include "lib/str.h"
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
@@ -65,8 +56,8 @@ short Umask;                    /* dirty hack because we need Umask in lib.c but
 #define FGETPOS(fp,pos) fgetpos((fp),&(pos))
 #define FSETPOS(fp,pos) fsetpos((fp),&(pos))
 #else
 #define FGETPOS(fp,pos) fgetpos((fp),&(pos))
 #define FSETPOS(fp,pos) fsetpos((fp),&(pos))
 #else
-#define FGETPOS(fp,pos) pos=ftell((fp));
-#define FSETPOS(fp,pos) fseek((fp),(pos),SEEK_SET)
+#define FGETPOS(fp,pos) pos=ftello((fp));
+#define FSETPOS(fp,pos) fseeko((fp),(pos),SEEK_SET)
 #endif
 
 
 #endif
 
 
@@ -255,13 +246,13 @@ static pgp_key_t pgp_parse_pgp2_key (unsigned char *buff, size_t l)
               "%08lX", id);
   }
 
               "%08lX", id);
   }
 
-  p->keyid = safe_strdup ((char *) scratch);
+  p->keyid = str_dup ((char *) scratch);
 
   return p;
 
 bailout:
 
 
   return p;
 
 bailout:
 
-  FREE (&p);
+  mem_free (&p);
   return NULL;
 }
 
   return NULL;
 }
 
@@ -357,7 +348,7 @@ static pgp_key_t pgp_parse_pgp3_key (unsigned char *buff, size_t l)
               id);
   }
 
               id);
   }
 
-  p->keyid = safe_strdup ((char *) scratch);
+  p->keyid = str_dup ((char *) scratch);
 
   return p;
 }
 
   return p;
 }
@@ -588,7 +579,7 @@ static pgp_key_t pgp_parse_keyblock (FILE * fp)
 #ifdef HAVE_FGETPOS
   fpos_t pos;
 #else
 #ifdef HAVE_FGETPOS
   fpos_t pos;
 #else
-  long pos;
+  off_t pos;
 #endif
 
   pgp_key_t root = NULL;
 #endif
 
   pgp_key_t root = NULL;
@@ -645,7 +636,7 @@ static pgp_key_t pgp_parse_keyblock (FILE * fp)
     case PT_SIG:
       {
         if (lsig) {
     case PT_SIG:
       {
         if (lsig) {
-          pgp_sig_t *signature = safe_calloc (sizeof (pgp_sig_t), 1);
+          pgp_sig_t *signature = mem_calloc (sizeof (pgp_sig_t), 1);
 
           *lsig = signature;
           lsig = &signature->next;
 
           *lsig = signature;
           lsig = &signature->next;
@@ -676,12 +667,12 @@ static pgp_key_t pgp_parse_keyblock (FILE * fp)
         if (!addr)
           break;
 
         if (!addr)
           break;
 
-        chr = safe_malloc (l);
+        chr = mem_malloc (l);
         memcpy (chr, buff + 1, l - 1);
         chr[l - 1] = '\0';
 
 
         memcpy (chr, buff + 1, l - 1);
         chr[l - 1] = '\0';
 
 
-        *addr = uid = safe_calloc (1, sizeof (pgp_uid_t));      /* XXX */
+        *addr = uid = mem_calloc (1, sizeof (pgp_uid_t));      /* XXX */
         uid->addr = chr;
         uid->parent = p;
         uid->trust = 0;
         uid->addr = chr;
         uid->parent = p;
         uid->trust = 0;
@@ -719,7 +710,7 @@ static int pgpring_string_matches_hint (const char *s, const char *hints[],
     return 1;
 
   for (i = 0; i < nhints; i++) {
     return 1;
 
   for (i = 0; i < nhints; i++) {
-    if (mutt_stristr (s, hints[i]) != NULL)
+    if (str_isstr (s, hints[i]) != NULL)
       return 1;
   }
 
       return 1;
   }
 
@@ -739,7 +730,7 @@ static void pgpring_find_candidates (char *ringfile, const char *hints[],
 #ifdef HAVE_FGETPOS
   fpos_t pos, keypos;
 #else
 #ifdef HAVE_FGETPOS
   fpos_t pos, keypos;
 #else
-  long pos, keypos;
+  off_t pos, keypos;
 #endif
 
   unsigned char *buff = NULL;
 #endif
 
   unsigned char *buff = NULL;
@@ -752,11 +743,11 @@ static void pgpring_find_candidates (char *ringfile, const char *hints[],
     char *error_buf;
     size_t error_buf_len;
 
     char *error_buf;
     size_t error_buf_len;
 
-    error_buf_len = sizeof ("fopen: ") - 1 + strlen (ringfile) + 1;
-    error_buf = safe_malloc (error_buf_len);
+    error_buf_len = sizeof ("fopen: ") - 1 + str_len (ringfile) + 1;
+    error_buf = mem_malloc (error_buf_len);
     snprintf (error_buf, error_buf_len, "fopen: %s", ringfile);
     perror (error_buf);
     snprintf (error_buf, error_buf_len, "fopen: %s", ringfile);
     perror (error_buf);
-    FREE (&error_buf);
+    mem_free (&error_buf);
     return;
   }
 
     return;
   }
 
@@ -773,7 +764,7 @@ static void pgpring_find_candidates (char *ringfile, const char *hints[],
       keypos = pos;
     }
     else if (pt == PT_NAME) {
       keypos = pos;
     }
     else if (pt == PT_NAME) {
-      char *tmp = safe_malloc (l);
+      char *tmp = mem_malloc (l);
 
       memcpy (tmp, buff + 1, l - 1);
       tmp[l - 1] = '\0';
 
       memcpy (tmp, buff + 1, l - 1);
       tmp[l - 1] = '\0';
@@ -794,7 +785,7 @@ static void pgpring_find_candidates (char *ringfile, const char *hints[],
         pgp_free_key (&p);
       }
 
         pgp_free_key (&p);
       }
 
-      FREE (&tmp);
+      mem_free (&tmp);
     }
 
     FGETPOS (rfp, pos);
     }
 
     FGETPOS (rfp, pos);