From 7e22f21430275051cb212ab626957c93d71c9e8a Mon Sep 17 00:00:00 2001 From: Linus Nordberg Date: Tue, 1 Aug 2017 16:38:51 +0200 Subject: Move allocation of memory, making error case simpler. --- radsecproxy.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'radsecproxy.c') diff --git a/radsecproxy.c b/radsecproxy.c index 517a094..b333326 100644 --- a/radsecproxy.c +++ b/radsecproxy.c @@ -222,12 +222,7 @@ void freebios(struct gqueue *q) { } struct client *addclient(struct clsrvconf *conf, uint8_t lock) { - struct client *new = malloc(sizeof(struct client)); - - if (!new) { - debug(DBG_ERR, "malloc failed"); - return NULL; - } + struct client *new = NULL; if (lock) pthread_mutex_lock(conf->lock); @@ -241,7 +236,11 @@ struct client *addclient(struct clsrvconf *conf, uint8_t lock) { } } - memset(new, 0, sizeof(struct client)); + new = calloc(1, sizeof(struct client)); + if (!new) { + debug(DBG_ERR, "malloc failed"); + return NULL; + } new->conf = conf; if (conf->pdef->addclient) conf->pdef->addclient(new); -- cgit v1.1