From: Tobias Klauser Date: Tue, 17 Jun 2014 12:58:09 +0000 (+0200) Subject: cache_mngr: Return proper error code if nl_socket_alloc() fails X-Git-Tag: libnl3_2_25rc1~7 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=8f82270cffb7034bc930a9606bc8e1412d2fa73d;p=libnl cache_mngr: Return proper error code if nl_socket_alloc() fails If nl_socket_alloc() failes in nl_cache_mngr_alloc() we would currently return 0 due to the previous assignment of the err variable, even though the failed allocation is an error condition. Fix this by setting err to -NLE_NOMEM if nl_socket_alloc() fails. Signed-off-by: Tobias Klauser Signed-off-by: Thomas Haller --- diff --git a/lib/cache_mngr.c b/lib/cache_mngr.c index 36f5ca8..e24d44c 100644 --- a/lib/cache_mngr.c +++ b/lib/cache_mngr.c @@ -173,8 +173,10 @@ int nl_cache_mngr_alloc(struct nl_sock *sk, int protocol, int flags, /* Create and allocate socket for sync cache fills */ mngr->cm_sync_sock = nl_socket_alloc(); - if (!mngr->cm_sync_sock) + if (!mngr->cm_sync_sock) { + err = -NLE_NOMEM; goto errout; + } if ((err = nl_connect(mngr->cm_sync_sock, protocol)) < 0) goto errout_free_sync_sock;