aboutsummaryrefslogtreecommitdiffstats
path: root/src/zrand.c
diff options
context:
space:
mode:
authorMattias Andrée <maandree@kth.se>2016-03-04 09:28:01 +0100
committerMattias Andrée <maandree@kth.se>2016-03-04 09:28:01 +0100
commit0a7e36380717fe926d43ab30ef6162db9bd71723 (patch)
treeb0ad75c7525688f8e54319e440b251213a4ef3db /src/zrand.c
parentAdd zptest (diff)
downloadlibzahl-0a7e36380717fe926d43ab30ef6162db9bd71723.tar.gz
libzahl-0a7e36380717fe926d43ab30ef6162db9bd71723.tar.bz2
libzahl-0a7e36380717fe926d43ab30ef6162db9bd71723.tar.xz
Add makefile and fix errors
Signed-off-by: Mattias Andrée <maandree@kth.se>
Diffstat (limited to 'src/zrand.c')
-rw-r--r--src/zrand.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/zrand.c b/src/zrand.c
index fa1bdfa..c5c8e8a 100644
--- a/src/zrand.c
+++ b/src/zrand.c
@@ -1,5 +1,5 @@
/* See LICENSE file for copyright and license details. */
-#include "internals"
+#include "internals.h"
#include <fcntl.h>
#include <unistd.h>
@@ -27,12 +27,12 @@ zrand_get_random_bits(z_t r, size_t bits, int fd)
read_just = read(fd, (char *)(r->chars) + read_total, n);
if (read_just < 0)
FAILURE_JUMP();
- read_total += read_just;
- n -= read_just;
+ read_total += (size_t)read_just;
+ n -= (size_t)read_just;
}
- bit = BITS_IN_LAST_CHAR(bit)
- mask <<= bit;
+ bits = BITS_IN_LAST_CHAR(bits);
+ mask <<= bits;
mask -= 1;
r->chars[chars - 1] &= mask;
@@ -70,6 +70,8 @@ zrand(z_t r, enum zranddev dev, enum zranddist dist, z_t n)
}
fd = open(pathname, O_RDONLY);
+ if (fd < 0)
+ FAILURE_JUMP();
switch (dist) {
case QUASIUNIFORM: