fix IPCP negotiation of secondary DNS server
authorbodea <bodea>
Sun, 4 Dec 2005 13:06:49 +0000 (13:06 +0000)
committerbodea <bodea>
Sun, 4 Dec 2005 13:06:49 +0000 (13:06 +0000)
Changes
THANKS
l2tpns.spec
ppp.c

diff --git a/Changes b/Changes
index 403d48b..0b3b86e 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,7 +1,8 @@
-* Fri Nov 25 2005 Brendan O'Dea <bod@optus.net> 2.1.13
+* Sun Dec 4 2005 Brendan O'Dea <bod@optus.net> 2.1.13
 - Add test/ping-sweep.
 - Apply spec changes from Charlie Brady: use License header, change
   BuildRoot to include username.
+- Fix IPCP negotiation of secondary DNS server, reported by Jon Morby.
 
 * Thu Nov 17 2005 Brendan O'Dea <bod@optus.net> 2.1.12
 - Set MTU on tunnel interface so the kernel will re-fragment large
diff --git a/THANKS b/THANKS
index 5b84a4a..23921d3 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -22,3 +22,4 @@ Tim Devries                <tdevries@northrock.bm>
 Slobodan Tomic             <stomic@loznica.com>
 Michael Chapman            <mike.chapman@optus.net>
 Charlie Brady              <charlieb@e-smith.com>
+Jon Morby                  <jon@fido.net>
index 8192a35..40d1d17 100644 (file)
@@ -43,5 +43,5 @@ rm -rf %{buildroot}
 %attr(644,root,root) /usr/share/man/man[58]/*
 
 %changelog
-* Fri Nov 25 2005 Brendan O'Dea <bod@optus.net> 2.1.13-1
+* Sun Dec 4 2005 Brendan O'Dea <bod@optus.net> 2.1.13-1
 - 2.1.13 release, see /usr/share/doc/l2tpns-2.1.13/Changes
diff --git a/ppp.c b/ppp.c
index 0f87c97..d7770e5 100644 (file)
--- a/ppp.c
+++ b/ppp.c
@@ -1,6 +1,6 @@
 // L2TPNS PPP Stuff
 
-char const *cvs_id_ppp = "$Id: ppp.c,v 1.86 2005/11/17 05:24:17 bodea Exp $";
+char const *cvs_id_ppp = "$Id: ppp.c,v 1.87 2005/12/04 13:06:50 bodea Exp $";
 
 #include <stdio.h>
 #include <string.h>
@@ -1037,7 +1037,7 @@ void processipcp(sessionidt s, tunnelidt t, uint8_t *p, uint16_t l)
                        case 131: // secondary DNS
                                if (o[1] != 6 || o[1] > length) return;
 
-                               addr = htonl(session[s].dns1);
+                               addr = htonl(session[s].dns2);
                                if (memcmp(o + 2, &addr, sizeof(addr)))
                                {
                                        q = ppp_conf_nak(s, b, sizeof(b), PPPIPCP, &response, q, p, o, (uint8_t *) &addr, sizeof(addr));