From f03582e35cefdf917bd15716dedb18fca8224654 Mon Sep 17 00:00:00 2001 From: divverent Date: Thu, 5 Feb 2015 06:50:51 +0000 Subject: [PATCH] More coverity. git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12148 d7cf8633-e32d-0410-b094-e92efae38249 --- fs.c | 6 +++++- lhnet.c | 21 ++++++++++++++++++--- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/fs.c b/fs.c index 994155aa..67d65713 100644 --- a/fs.c +++ b/fs.c @@ -797,7 +797,11 @@ static qboolean PK3_GetTrueFileOffset (packfile_t *pfile, pack_t *pack) return true; // Load the local file description - lseek (pack->handle, pfile->offset, SEEK_SET); + if (lseek (pack->handle, pfile->offset, SEEK_SET) == -1) + { + Con_Printf ("Can't seek in package %s\n", pack->filename); + return false; + } count = read (pack->handle, buffer, ZIP_LOCAL_CHUNK_BASE_SIZE); if (count != ZIP_LOCAL_CHUNK_BASE_SIZE || BuffBigLong (buffer) != ZIP_DATA_HEADER) { diff --git a/lhnet.c b/lhnet.c index 22982571..e2ded868 100644 --- a/lhnet.c +++ b/lhnet.c @@ -978,7 +978,13 @@ lhnetsocket_t *LHNET_OpenSocket_Connectionless(lhnetaddress_t *address) namelen = sizeof(localaddress->addr.in6); bindresult = bind(lhnetsocket->inetsocket, &localaddress->addr.sock, namelen); if (bindresult != -1) - getsockname(lhnetsocket->inetsocket, &localaddress->addr.sock, &namelen); + { + if (getsockname(lhnetsocket->inetsocket, &localaddress->addr.sock, &namelen)) + { + // If getsockname failed, we can assume the bound socket is useless. + bindresult = -1; + } + } } else #endif @@ -986,7 +992,13 @@ lhnetsocket_t *LHNET_OpenSocket_Connectionless(lhnetaddress_t *address) namelen = sizeof(localaddress->addr.in); bindresult = bind(lhnetsocket->inetsocket, &localaddress->addr.sock, namelen); if (bindresult != -1) - getsockname(lhnetsocket->inetsocket, &localaddress->addr.sock, &namelen); + { + if (getsockname(lhnetsocket->inetsocket, &localaddress->addr.sock, &namelen)) + { + // If getsockname failed, we can assume the bound socket is useless. + bindresult = -1; + } + } } if (bindresult != -1) { @@ -997,7 +1009,10 @@ lhnetsocket_t *LHNET_OpenSocket_Connectionless(lhnetaddress_t *address) { // enable DSCP for ToS support int tos = lhnet_default_dscp << 2; - setsockopt(lhnetsocket->inetsocket, IPPROTO_IP, IP_TOS, (char *) &tos, sizeof(tos)); + if (setsockopt(lhnetsocket->inetsocket, IPPROTO_IP, IP_TOS, (char *) &tos, sizeof(tos))) + { + // Error in setsockopt - fine, we'll simply set no TOS then. + } } #endif lhnetsocket->next = &lhnet_socketlist; -- 2.39.2