if (c->ipaddr == htonl(INADDR_NONE)) {
radlog(L_CONS|L_ERR, "%s[%d]: Failed to look up hostname %s",
file, lineno, hostnm);
+ free(c);
return -1;
}
*/
client = client_find(c->ipaddr);
if (client == NULL) {
- radlog(L_CONS|L_ERR, "%s[%d]: Cannot find 'clients' file entry of remote server %s for realm \"%s\"",
- file, lineno, hostnm, realm);
- return -1;
+ radlog(L_CONS|L_ERR, "%s[%d]: Cannot find 'clients' file entry of remote server %s for realm \"%s\"",
+ file, lineno, hostnm, realm);
+ free(c);
+ return -1;
}
memcpy(c->secret, client->secret, sizeof(c->secret));
}
file, lineno,
(int) strlen(hostnm),
(int) sizeof(c->server) - 1);
+ free(c);
return -1;
}
if (strlen(realm) > sizeof(c->realm)) {
file, lineno,
(int) strlen(realm),
(int) sizeof(c->realm) - 1);
+ free(c);
return -1;
}