X-Git-Url: http://git.sameswireless.fr/l2tpns.git/blobdiff_plain/5cc3beb6c7570c2b5b425e61d66000cc0a95da17..5dacb3cdf55ecd2bf6cc5a83cb791ad76b4bd086:/cluster.c?ds=inline

diff --git a/cluster.c b/cluster.c
index f601f70..0b595e3 100644
--- a/cluster.c
+++ b/cluster.c
@@ -1,6 +1,6 @@
 // L2TPNS Clustering Stuff
 
-char const *cvs_id_cluster = "$Id: cluster.c,v 1.46 2005/09/02 23:59:56 bodea Exp $";
+char const *cvs_id_cluster = "$Id: cluster.c,v 1.50 2006/04/05 02:13:48 bodea Exp $";
 
 #include <stdio.h>
 #include <stdlib.h>
@@ -1268,12 +1268,10 @@ static uint8_t *convert_session(struct oldsession *old)
 	new.next = old->next;
 	new.far = old->far;
 	new.tunnel = old->tunnel;
-	new.l2tp_flags = old->l2tp_flags;
+	new.flags = old->l2tp_flags;
 	new.ip = old->ip;
 	new.ip_pool_index = old->ip_pool_index;
 	new.unique_id = old->unique_id;
-	new.nr = old->nr;
-	new.ns = old->ns;
 	new.magic = old->magic;
 	new.pin = old->pin;
 	new.pout = old->pout;
@@ -1553,7 +1551,7 @@ static int cluster_process_heartbeat(uint8_t *data, int size, int more, uint8_t
 				s -= (p - orig_p);
 
 				if (size != sizeof(tunnelt) ) { // Ouch! Very very bad!
-					LOG(0, 0, 0, "DANGER: Received a CSESSION that didn't decompress correctly!\n");
+					LOG(0, 0, 0, "DANGER: Received a CTUNNEL that didn't decompress correctly!\n");
 						// Now what? Should exit! No-longer up to date!
 					break;
 				}
@@ -1657,7 +1655,11 @@ int processcluster(uint8_t *data, int size, in_addr_t addr)
 
 			STAT(recv_forward);
 			if (type == C_FORWARD_DAE)
-				processdae(p, s, &a, sizeof(a));
+			{
+				struct in_addr local;
+				local.s_addr = config->bind_address ? config->bind_address : my_address;
+				processdae(p, s, &a, sizeof(a), &local);
+			}
 			else
 				processudp(p, s, &a);