Final development LAC functionality.
[l2tpns.git] / ppp.c
diff --git a/ppp.c b/ppp.c
index 518f6ec..236188e 100644 (file)
--- a/ppp.c
+++ b/ppp.c
@@ -1,7 +1,5 @@
 // L2TPNS PPP Stuff
 
-//#define LAC
-
 #include <stdio.h>
 #include <string.h>
 #include <unistd.h>
@@ -107,9 +105,9 @@ void processpap(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
        }
 
 #ifdef LAC
-       if (forwardtolns(s, user))
+       if ((!config->disable_lac_func) && lac_conf_forwardtoremotelns(s, user))
        {
-               LOG(3, s, t, "Forwarding login for %s to other LNS\n", user);
+               // Creating a tunnel/session has been started
                return;
        }
 #endif
@@ -266,12 +264,11 @@ void processchap(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
                memcpy(packet.username, p, l);
 
 #ifdef LAC
-               if (forwardtolns(s, packet.username))
+               if ((!config->disable_lac_func) && lac_conf_forwardtoremotelns(s, packet.username))
                {
-                       LOG(3, s, t, "Forwarding login for %s to other LNS\n", packet.username);
-
                        free(packet.username);
                        free(packet.password);
+                       // Creating a tunnel/session has been started
                        return;
                }
 #endif
@@ -428,7 +425,7 @@ void lcp_open(sessionidt s, tunnelidt t)
        }
 }
 
-static void lcp_restart(sessionidt s)
+void lcp_restart(sessionidt s)
 {
        session[s].ppp.phase = Establish;
        // This-Layer-Down
@@ -561,7 +558,7 @@ void processlcp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
        if (session[s].die) // going down...
                return;
 
-       LOG((*p == EchoReq || *p == EchoReply) ? 4 : 3, s, t,
+       LOG(((*p == EchoReq || *p == EchoReply) ? 4 : 3), s, t,
                "LCP: recv %s\n", ppp_code(*p));
 
        if (config->debug > 3) dumplcp(p, l);