From: Volker Lendecke Date: Tue, 19 May 2009 21:48:41 +0000 (+0200) Subject: Set errno=ENOMEM if tevent_add_fd fails X-Git-Tag: tdb-1.1.5~472 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ac65ae9b1d0bba2420847dae48f5b07ed072b030;p=thirdparty%2Fsamba.git Set errno=ENOMEM if tevent_add_fd fails tevent_add_fd does not properly set that. At least in epoll and select this is the only error condition. Metze, please check! --- diff --git a/lib/tsocket/tsocket_bsd.c b/lib/tsocket/tsocket_bsd.c index 054bb3de3a7..8f5f009d4c1 100644 --- a/lib/tsocket/tsocket_bsd.c +++ b/lib/tsocket/tsocket_bsd.c @@ -618,6 +618,7 @@ static int tdgram_bsd_set_readable_handler(struct tdgram_bsd *bsds, tdgram_bsd_fde_handler, bsds); if (!bsds->fde) { + errno = ENOMEM; return -1; } @@ -669,6 +670,7 @@ static int tdgram_bsd_set_writeable_handler(struct tdgram_bsd *bsds, tdgram_bsd_fde_handler, bsds); if (!bsds->fde) { + errno = ENOMEM; return -1; } @@ -1329,6 +1331,7 @@ static int tstream_bsd_set_readable_handler(struct tstream_bsd *bsds, tstream_bsd_fde_handler, bsds); if (!bsds->fde) { + errno = ENOMEM; return -1; } @@ -1380,6 +1383,7 @@ static int tstream_bsd_set_writeable_handler(struct tstream_bsd *bsds, tstream_bsd_fde_handler, bsds); if (!bsds->fde) { + errno = ENOMEM; return -1; }