Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 21 May 2005 12:36:05 -0700
From:      Steve Kargl <sgk@troutmask.apl.washington.edu>
To:        freebsd-standards@freebsd.org
Subject:   Read /dev/null differs from POSIX
Message-ID:  <20050521193605.GB51782@troutmask.apl.washington.edu>

next in thread | raw e-mail | index | archive | help
>From http://www.opengroup.org/onlinepubs/009695399/toc.htm

   /dev/null -- An infinite data source and data sink.  Data
   written to /dev/null shall be discarded.  Reads from
   /dev/null shall always return end-of-file (EOF).

This program

  #include <stdio.h>
  int main(void) {
     int i=0,j;
     FILE *fp;
     fp = fopen("/dev/null", "r");
     while(fread(&j, sizeof(int), 1, fp) != 1) {
       i++;
       if (i == 5) break;
     }
     printf("i = %d\n", i);
     if (j == EOF)
       printf("EOF\n");
     else
       printf("j = %d\n", j);
}

prints 

i = 5
j = 1

Is this historic BSD defacto behavior?

-- 
Steve



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050521193605.GB51782>