[PATCH 01/12] gen_uuid.c: Fix two Unchecked return value from library errors

Ryan Long thisisryanlong at gmail.com
Thu Mar 4 14:05:02 UTC 2021


CID 1049146: Unchecked return value from library in get_clock().
CID 1049147: Unchecked return value from library in get_random_fd().

Closes #4280
---
 cpukit/libmisc/uuid/gen_uuid.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/cpukit/libmisc/uuid/gen_uuid.c b/cpukit/libmisc/uuid/gen_uuid.c
index 3ca75a0..0f2aba0 100644
--- a/cpukit/libmisc/uuid/gen_uuid.c
+++ b/cpukit/libmisc/uuid/gen_uuid.c
@@ -155,6 +155,7 @@ static int get_random_fd(void)
 	struct timeval	tv;
 	static int	fd = -2;
 	int		i;
+	int		sc;
 
 	if (fd == -2) {
 		gettimeofday(&tv, 0);
@@ -165,7 +166,12 @@ static int get_random_fd(void)
 		if (fd >= 0) {
 			i = fcntl(fd, F_GETFD);
 			if (i >= 0)
-				fcntl(fd, F_SETFD, i | FD_CLOEXEC);
+				#ifdef __rtems__
+					sc = fcntl(fd, F_SETFD, i | FD_CLOEXEC);
+					_Assert_Unused_variable_unequal(sc, -1);
+				#else
+					fcntl(fd, F_SETFD, i | FD_CLOEXEC);
+				#endif
 		}
 #endif
 		srand((getpid() << ((sizeof(pid_t)*CHAR_BIT)>>1)) ^ getuid() ^ tv.tv_sec ^ tv.tv_usec);
@@ -334,6 +340,7 @@ static int get_clock(uint32_t *clock_high, uint32_t *clock_low,
 	uint64_t			clock_reg;
 	mode_t				save_umask;
 	int				len;
+	int				sc;
 
 	if (state_fd == -2) {
 		save_umask = umask(0);
@@ -426,7 +433,8 @@ try_again:
 		}
 		rewind(state_f);
 		fl.l_type = F_UNLCK;
-		fcntl(state_fd, F_SETLK, &fl);
+		sc = fcntl(state_fd, F_SETLK, &fl);
+		_Assert_Unused_variable_unequal(sc, -1);
 	}
 
 	*clock_high = clock_reg >> 32;
-- 
1.8.3.1



More information about the devel mailing list