From: Brendan O'Dea Date: Sat, 7 May 2005 10:14:33 +0000 (+0000) Subject: Don't process C_LASTSEEN unless we're a master (otherwise a crashed X-Git-Tag: 2.2.1-2fdn3.1~19^2^2~1^2~210 X-Git-Url: http://git.sameswireless.fr/l2tpns.git/commitdiff_plain/ecd6721a858ba8090f500c93ffa333ba742c4844?hp=c07a2e8553cada19c523ef9aa07581ae8dd6a71f Don't process C_LASTSEEN unless we're a master (otherwise a crashed master kills all slaves once restarted). --- diff --git a/Changes b/Changes index c61169b..b4d9f9a 100644 --- a/Changes +++ b/Changes @@ -1,4 +1,4 @@ -* Thu May 5 2005 Brendan O'Dea 2.1.0 +* Sat May 7 2005 Brendan O'Dea 2.1.0 - Add IPv6 support from Jonathan McDowell. - Add CHAP support from Jordan Hrycaj (work in progress). - Add interim accounting support from Vladislav Bjelic. @@ -53,6 +53,10 @@ allocated (uses config->debug). - Initialise log_stream to stderr to catch errors before the config file is read. +- Fix leak in session freelist when initial RADIUS session allocation + fails. +- Don't process C_LASTSEEN unless we're a master (otherwise a crashed + master kills all slaves once restarted). * Fri Dec 17 2004 Brendan O'Dea 2.0.13 - Better cluster master collision resolution: keep a counter of state diff --git a/cluster.c b/cluster.c index cf85dbd..d7a74fe 100644 --- a/cluster.c +++ b/cluster.c @@ -1,6 +1,6 @@ // L2TPNS Clustering Stuff -char const *cvs_id_cluster = "$Id: cluster.c,v 1.35 2005-05-05 10:02:07 bodea Exp $"; +char const *cvs_id_cluster = "$Id: cluster.c,v 1.36 2005-05-07 10:14:33 bodea Exp $"; #include #include @@ -1364,6 +1364,11 @@ int processcluster(char *data, int size, in_addr_t addr) return cluster_add_peer(addr, more, (pingt *) p, s); case C_LASTSEEN: // Catch up a slave (slave missed a packet). + if (!config->cluster_iam_master) { // huh? + LOG(0, 0, 0, "I'm not the master, but I got a C_LASTSEEN from %s?\n", fmtaddr(addr, 0)); + return -1; + } + return cluster_catchup_slave(more, addr); case C_FORWARD: { // Forwarded control packet. pass off to processudp. diff --git a/l2tpns.spec b/l2tpns.spec index 4c414b6..3a3d47c 100644 --- a/l2tpns.spec +++ b/l2tpns.spec @@ -43,5 +43,5 @@ rm -rf %{buildroot} %attr(644,root,root) /usr/share/man/man[58]/* %changelog -* Thu May 5 2005 Brendan O'Dea 2.1.0-1 +* Sat May 7 2005 Brendan O'Dea 2.1.0-1 - 2.1.0 release, see /usr/share/doc/l2tpns-2.1.0/Changes