Просмотр исходного кода

cov 10381: check result of open()

git-svn-id: http://svn.fedorahosted.org/svn/corosync/trunk@2824 fd59a12c-fef9-0310-b244-a6a79926bd2f
Angus Salkeld 15 лет назад
Родитель
Сommit
b4f61842b6
1 измененных файлов с 4 добавлено и 3 удалено
  1. 4 3
      exec/crypto.c

+ 4 - 3
exec/crypto.c

@@ -1258,9 +1258,10 @@ static unsigned long rng_nix(unsigned char *buf, unsigned long len,
 
 	fd = open ("/dev/urandom", O_RDONLY);
 
-	rb = (unsigned long)read (fd, buf, len);
-
-	close (fd);
+	if (fd >= 0) {
+		rb = (unsigned long)read (fd, buf, len);
+		close (fd);
+	}
 
 	return (rb);
 }