386BSD 0.1 development
[unix-history] / usr / src / usr.bin / tip / remcap.c
index 9c713ce..c573569 100644 (file)
@@ -1,26 +1,54 @@
 /*
 /*
- * Copyright (c) 1983 Regents of the University of California.
- * All rights reserved.  The Berkeley software License Agreement
- * specifies the terms and conditions for redistribution.
+ * Copyright (c) 1983 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ *    notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ *    notice, this list of conditions and the following disclaimer in the
+ *    documentation and/or other materials provided with the distribution.
+ * 3. All advertising materials mentioning features or use of this software
+ *    must display the following acknowledgement:
+ *     This product includes software developed by the University of
+ *     California, Berkeley and its contributors.
+ * 4. Neither the name of the University nor the names of its contributors
+ *    may be used to endorse or promote products derived from this software
+ *    without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
+ * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+ * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ * SUCH DAMAGE.
  */
 
 #ifndef lint
  */
 
 #ifndef lint
-static char sccsid[] = "@(#)remcap.c   5.1 (Berkeley) %G%";
-#endif not lint
+static char sccsid[] = "@(#)remcap.c   5.5 (Berkeley) 2/2/91";
+#endif /* not lint */
 
 /*
  * remcap - routines for dealing with the remote host data base
  *
  * derived from termcap
  */
 
 /*
  * remcap - routines for dealing with the remote host data base
  *
  * derived from termcap
  */
-#include <sys/file.h>
+#include <sys/types.h>
+#include <fcntl.h>
 #include <ctype.h>
 #include <ctype.h>
+#include "pathnames.h"
 
 #ifndef BUFSIZ
 #define        BUFSIZ          1024
 #endif
 #define MAXHOP         32              /* max number of tc= indirections */
 
 #ifndef BUFSIZ
 #define        BUFSIZ          1024
 #endif
 #define MAXHOP         32              /* max number of tc= indirections */
-#define SYSREMOTE      "/etc/remote"   /* system remote file */
 
 #define        tgetent         rgetent
 #define        tnchktc         rnchktc
 
 #define        tgetent         rgetent
 #define        tnchktc         rnchktc
@@ -28,7 +56,7 @@ static char sccsid[] = "@(#)remcap.c  5.1 (Berkeley) %G%";
 #define        tgetnum         rgetnum
 #define        tgetflag        rgetflag
 #define        tgetstr         rgetstr
 #define        tgetnum         rgetnum
 #define        tgetflag        rgetflag
 #define        tgetstr         rgetstr
-#define        E_TERMCAP       RM = SYSREMOTE
+#define        E_TERMCAP       RM = _PATH_REMOTE
 #define V_TERMCAP      "REMOTE"
 #define V_TERM         "HOST"
 
 #define V_TERMCAP      "REMOTE"
 #define V_TERM         "HOST"
 
@@ -68,13 +96,13 @@ tgetent(bp, name)
        int rc1, rc2;
 
        remotefile = cp = getenv(V_TERMCAP);
        int rc1, rc2;
 
        remotefile = cp = getenv(V_TERMCAP);
-       if (cp == (char *)0 || strcmp(cp, SYSREMOTE) == 0) {
-               remotefile = cp = SYSREMOTE;
+       if (cp == (char *)0 || strcmp(cp, _PATH_REMOTE) == 0) {
+               remotefile = cp = _PATH_REMOTE;
                return (getent(bp, name, cp));
        } else {
                if ((rc1 = getent(bp, name, cp)) != 1)
                        *bp = '\0';
                return (getent(bp, name, cp));
        } else {
                if ((rc1 = getent(bp, name, cp)) != 1)
                        *bp = '\0';
-               remotefile = cp = SYSREMOTE;
+               remotefile = cp = _PATH_REMOTE;
                rc2 = getent(lbuf, name, cp);
                if (rc1 != 1 && rc2 != 1)
                        return (rc2);
                rc2 = getent(lbuf, name, cp);
                if (rc1 != 1 && rc2 != 1)
                        return (rc2);
@@ -199,9 +227,9 @@ tnchktc()
                return (0);
        }
        if (getent(tcbuf, tcname, remotefile) != 1) {
                return (0);
        }
        if (getent(tcbuf, tcname, remotefile) != 1) {
-               if (strcmp(remotefile, SYSREMOTE) == 0)
+               if (strcmp(remotefile, _PATH_REMOTE) == 0)
                        return (0);
                        return (0);
-               else if (getent(tcbuf, tcname, SYSREMOTE) != 1)
+               else if (getent(tcbuf, tcname, _PATH_REMOTE) != 1)
                        return (0);
        }
        for (q = tcbuf; *q++ != ':'; )
                        return (0);
        }
        for (q = tcbuf; *q++ != ':'; )