X-Git-Url: https://www.tinc-vpn.org/git/browse?a=blobdiff_plain;f=src%2Fconnection.c;h=772b3c3739886988cef243adabd1097c16de9900;hb=e42255ae1374fe65e92de72de4508a84bdb91fa1;hp=dee0472a2ac2b82c5d357ebf09fc6cbebbdfbb60;hpb=408ca91766088b6c2d38e198b0692bf394b41248;p=tinc diff --git a/src/connection.c b/src/connection.c index dee0472a..772b3c37 100644 --- a/src/connection.c +++ b/src/connection.c @@ -17,7 +17,7 @@ along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - $Id: connection.c,v 1.1.2.1 2000/11/20 19:12:11 guus Exp $ + $Id: connection.c,v 1.1.2.3 2000/11/20 22:13:03 guus Exp $ */ #include "config.h" @@ -32,6 +32,7 @@ #include "config.h" #include "conf.h" #include +#include "subnet.h" #include "xalloc.h" #include "system.h" @@ -61,6 +62,8 @@ connection_t *new_connection(void) cp /* initialise all those stupid pointers at once */ memset(p, '\0', sizeof(*p)); + + p->subnet_tree = new_rbltree((rbl_compare_t)subnet_compare, NULL); cp return p; } @@ -135,10 +138,14 @@ cp connection_t *lookup_id(char *name) { - connection_t cl; + connection_t cl, *p; cp cl.name = name; - return rbl_search(connection_tree, &cl); + p = rbl_search(connection_tree, &cl); + if(p && p->status.active) + return p; + else + return NULL; cp }