From: Volker Lendecke Date: Tue, 7 Jun 2016 08:01:32 +0000 (+0200) Subject: rpc_server: Fix CID 1362565 Improper use of negative value X-Git-Tag: tdb-1.3.10~941 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f5e95af59b76f3aa0d428fbf2f5cc5e65f6cd409;p=thirdparty%2Fsamba.git rpc_server: Fix CID 1362565 Improper use of negative value Signed-off-by: Volker Lendecke Reviewed-by: Michael Adam --- diff --git a/source4/rpc_server/dcerpc_server.c b/source4/rpc_server/dcerpc_server.c index 8c6935111a4..36b3fd27c60 100644 --- a/source4/rpc_server/dcerpc_server.c +++ b/source4/rpc_server/dcerpc_server.c @@ -2077,8 +2077,16 @@ static void dcesrv_sock_accept(struct stream_connection *srv_conn) if (transport == NCALRPC) { uid_t uid; gid_t gid; + int sock_fd; - ret = getpeereid(socket_get_fd(srv_conn->socket), &uid, &gid); + sock_fd = socket_get_fd(srv_conn->socket); + if (sock_fd == -1) { + stream_terminate_connection( + srv_conn, "socket_get_fd failed\n"); + return; + } + + ret = getpeereid(sock_fd, &uid, &gid); if (ret == -1) { status = map_nt_error_from_unix_common(errno); DEBUG(0, ("dcesrv_sock_accept: "