]> git.ozlabs.org Git - ppp.git/blobdiff - pppd/main.c
Merge branch 'master' of https://github.com/gburgessiv/ppp
[ppp.git] / pppd / main.c
index 6e7378be8d7e21ec0d7ed23e17630ec27b6d5e22..76b67d2485b71ce4dc11c6a9cd7ecfd2293f21d9 100644 (file)
 static const char rcsid[] = RCSID;
 
 /* interface vars */
-char ifname[32];               /* Interface name */
+char ifname[MAXIFNAMELEN];     /* Interface name */
 int ifunit;                    /* Interface unit number */
 
 struct channel *the_channel;
@@ -257,7 +257,6 @@ static void cleanup_db __P((void));
 static void handle_events __P((void));
 void print_link_stats __P((void));
 
-extern char    *ttyname __P((int));
 extern char    *getlogin __P((void));
 int main __P((int, char *[]));
 
@@ -298,13 +297,6 @@ struct protent *protocols[] = {
     NULL
 };
 
-/*
- * If PPP_DRV_NAME is not defined, use the default "ppp" as the device name.
- */
-#if !defined(PPP_DRV_NAME)
-#define PPP_DRV_NAME   "ppp"
-#endif /* !defined(PPP_DRV_NAME) */
-
 int
 main(argc, argv)
     int argc;
@@ -737,8 +729,11 @@ void
 set_ifunit(iskey)
     int iskey;
 {
-    info("Using interface %s%d", PPP_DRV_NAME, ifunit);
-    slprintf(ifname, sizeof(ifname), "%s%d", PPP_DRV_NAME, ifunit);
+    if (req_ifname[0] != '\0')
+       slprintf(ifname, sizeof(ifname), "%s", req_ifname);
+    else
+       slprintf(ifname, sizeof(ifname), "%s%d", PPP_DRV_NAME, ifunit);
+    info("Using interface %s", ifname);
     script_setenv("IFNAME", ifname, iskey);
     if (iskey) {
        create_pidfile(getpid());       /* write pid to file */
@@ -2043,9 +2038,11 @@ script_setenv(var, value, iskey)
                free(p-1);
                script_env[i] = newstring;
 #ifdef USE_TDB
-               if (iskey && pppdb != NULL)
-                   add_db_key(newstring);
-               update_db_entry();
+               if (pppdb != NULL) {
+                   if (iskey)
+                       add_db_key(newstring);
+                   update_db_entry();
+               }
 #endif
                return;
            }