]> diplodocus.org Git - nmh/blobdiff - uip/aliasbr.c
Print port number in the connection error message
[nmh] / uip / aliasbr.c
index 1376cad7eaada9724c26d913d092e2c73ea972f2..aaf0c7f1e50efe5232551be585501463f44f6479 100644 (file)
@@ -5,10 +5,13 @@
  * complete copyright information.
  */
 
-#include <h/mh.h>
-#include <h/aliasbr.h>
-#include <h/addrsbr.h>
-#include <h/utils.h>
+#include "h/mh.h"
+#include "sbr/concat.h"
+#include "sbr/vfgets.h"
+#include "sbr/getcpy.h"
+#include "h/aliasbr.h"
+#include "h/addrsbr.h"
+#include "h/utils.h"
 #include <pwd.h>
 
 static int akvis;
@@ -20,15 +23,9 @@ struct aka *akatail = NULL;
 /*
  * prototypes
  */
-int alias (char *);
-int akvisible (void);
-char *akresult (struct aka *);
-char *akvalue (char *);
-char *akerror (int);
-
 static  char *akval (struct aka *, char *);
-static bool aleq (char *, char *);
-static char *scanp (char *);
+static bool aleq (char *, char *) PURE;
+static char *scanp (char *) PURE;
 static char *getp (char *);
 static char *seekp (char *, char *, char **);
 static int addfile (struct aka *, char *);
@@ -120,7 +117,7 @@ akval (struct aka *ak, char *s)
                struct mailname *mp = getm (name, NULL, 0, NULL, 0);
 
                if (mp  &&  mp->m_ingrp) {
-                   char *gname = add (mp->m_gname, NULL);
+                   char *gname = mh_xstrdup(FENDNULL(mp->m_gname));
 
                     /* FIXME: gname must be true;  add() never returns NULL.
                     * Is some other test required? */
@@ -160,7 +157,7 @@ aleq (char *string, char *aliasent)
         aliasent++;
     }
 
-    return (*aliasent == 0 || *aliasent == '*');
+    return *aliasent == 0 || *aliasent == '*';
 }
 
 
@@ -184,7 +181,7 @@ alias (char *file)
     while (vfgets (fp, &ap) == OK) {
        bp = ap;
        switch (*(pp = scanp (bp))) {
-           case '<':           /* recurse a level */
+           case '<':           /* recurse a level */
                if (!*(cp = getp (pp + 1))) {
                    akerrst = "'<' without alias-file";
                    fclose (fp);
@@ -195,8 +192,8 @@ alias (char *file)
                    return i;
                }
                continue;
-           case ':':           /* comment */
-           case ';': 
+           case ':':           /* comment */
+           case ';':
            case '#':
            case 0: 
                continue;
@@ -226,11 +223,11 @@ alias (char *file)
        }
 
        switch (*(pp = scanp (ap))) {
-           case 0:             /* EOL */
+           case 0:             /* EOL */
                fclose (fp);
                return AK_ERROR;
 
-           case '<':           /* read values from file */
+           case '<':           /* read values from file */
                if (!*(cp = getp (pp + 1))) {
                    fclose (fp);
                    return AK_ERROR;
@@ -241,7 +238,7 @@ alias (char *file)
                }
                break;
 
-           default:            /* list */
+           default:            /* list */
                while ((cp = getalias (pp)))
                    add_aka (ak, cp);
                break;
@@ -349,13 +346,13 @@ getalias (char *addrs)
     if (cp == NULL)
        cp = addrs;
     else if (*cp == 0)
-        return (cp = NULL);
+        return cp = NULL;
 
     /* Remove leading any space from the address. */
     for (pp = cp; isspace ((unsigned char) *pp); pp++)
        continue;
     if (*pp == 0)
-       return (cp = NULL);
+       return cp = NULL;
     /* Find the end of the address. */
     for (qp = pp; *qp != 0 && *qp != ','; qp++)
        continue;