X-Git-Url: https://www.tinc-vpn.org/git/browse?p=tinc;a=blobdiff_plain;f=src%2Fsubnet.c;h=d07e340535690f8d5f71a7bedaa79062d75b05bf;hp=b52dfa53b3a37d6f068e1a57e9f47e7b3dc15331;hb=df3220a1549f992cbf4a9b6e67c1e67b69896c7d;hpb=672ad5634cbedfbd6345e887935eed3e806f1e2d diff --git a/src/subnet.c b/src/subnet.c index b52dfa53..d07e3405 100644 --- a/src/subnet.c +++ b/src/subnet.c @@ -1,7 +1,7 @@ /* subnet.c -- handle subnet lookups and lists - Copyright (C) 2000-2004 Guus Sliepen , - 2000-2004 Ivo Timmermans + Copyright (C) 2000-2005 Guus Sliepen , + 2000-2005 Ivo Timmermans This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -247,6 +247,11 @@ bool net2str(char *netstr, int len, const subnet_t *subnet) { cp(); + if(!netstr || !subnet) { + logger(LOG_ERR, _("net2str() was called with netstr=%p, subnet=%p!\n"), netstr, subnet); + return false; + } + switch (subnet->type) { case SUBNET_MAC: snprintf(netstr, len, "%hx:%hx:%hx:%hx:%hx:%hx", @@ -424,9 +429,6 @@ void subnet_update(node_t *owner, subnet_t *subnet, bool up) { execute_script(name, envp); } - net2str(netstr, sizeof netstr, subnet); - envp[6] = envp[7] = NULL; - for(i = 0; i < (owner != myself ? 6 : 4); i++) free(envp[i]);