Commits

Jilles Tjoelker  committed 5f26a1b

read/write return type should be ssize_t, not int or size_t.
The writev emulation used size_t, which is unsigned,
preventing negative values to be seen.
libratbox r25225

  • Participants
  • Parent commits 6db234d

Comments (0)

Files changed (1)

File libratbox/src/commio.c

 ssize_t
 rb_read(rb_fde_t *F, void *buf, int count)
 {
-	int ret;
+	ssize_t ret;
 	if(F == NULL)
 		return 0;
 		
 ssize_t
 rb_write(rb_fde_t *F, const void *buf, int count)
 {
-	int ret;
+	ssize_t ret;
 	if(F == NULL)
 		return 0;
 
 static ssize_t
 rb_fake_writev(rb_fde_t *F, const struct rb_iovec *vp, size_t vpcount)
 {
-	size_t count = 0;
+	ssize_t count = 0;
 
 	while (vpcount-- > 0) 
 	{
-		size_t written = rb_write(F, vp->iov_base, vp->iov_len);
+		ssize_t written = rb_write(F, vp->iov_base, vp->iov_len);
 
 		if (written <= 0)
 		{