Diff for /libaitio/example/test_aio.c between versions 1.1.2.1 and 1.1.2.6

version 1.1.2.1, 2012/08/01 09:20:04 version 1.1.2.6, 2012/08/02 00:44:54
Line 1 Line 1
 #include <stdio.h>  #include <stdio.h>
   #include <string.h>
 #include <unistd.h>  #include <unistd.h>
 #include <fcntl.h>  #include <fcntl.h>
 #include <aitio.h>  #include <aitio.h>
Line 7 Line 8
 int  int
 main(int argc, char **argv)  main(int argc, char **argv)
 {  {
        int f;        int f, ret, i;
         char buf[BUFSIZ];
         struct iovec iv[3];
   
           iv[0].iov_len = 10;
           iv[0].iov_base = io_malloc(iv[0].iov_len);
           iv[0].iov_len--;
           iv[1].iov_len = 2;
           iv[1].iov_base = io_malloc(iv[1].iov_len);
           iv[1].iov_len--;
           iv[2].iov_len = 20;
           iv[2].iov_base = io_malloc(iv[2].iov_len);
           iv[2].iov_len--;
   
         f = open("test_aio.dat", O_CREAT | O_RDWR | O_TRUNC, 0644);          f = open("test_aio.dat", O_CREAT | O_RDWR | O_TRUNC, 0644);
         if (f == -1) {          if (f == -1) {
                 perror("open");                  perror("open");
                 return 1;                  return 1;
         }          }
   
           while (!feof(stdin)) {
                   memset(buf, 0, sizeof buf);
                   fgets(buf, sizeof buf, stdin);
                   printf("io_write=%d\n", (ret = io_write(f, buf, strlen(buf))));
                   if (ret == -1) {
                           ioLIBERR(io);
                           return 2;
                   }
           }
   
           memset(buf, 0, sizeof buf);
           printf("io_read=%d\n", (ret = io_rread(f, buf, sizeof buf, 0, 0)));
           if (ret == -1) {
                   ioLIBERR(io);
                   return 3;
           }
           printf("\n\n%s\n", buf);
   
           printf("io_readv=%d\n", (ret = io_rreadv(f, iv, 3, (off_t) 0, 1)));
           for (i = 0; i < 3; i++) {
                   printf("%d) len=%d - %s\n---\n", i, iv[i].iov_len, iv[i].iov_base);
                   io_free(iv[i].iov_base);
           }
   
           iv[0].iov_base = io_strdup("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n");
           iv[0].iov_len = strlen(iv[0].iov_base) + 1;
           iv[1].iov_base = io_strdup("bbbbbbbbbbbbbbbb\n");
           iv[1].iov_len = strlen(iv[1].iov_base) + 1;
           iv[2].iov_base = io_strdup("sdgnsjkfgbfgbfjhbjjjjjjjjjjjjjjjj\n");
           iv[2].iov_len = strlen(iv[2].iov_base) + 1;
           printf("io_writev=%d\n", (ret = io_rwritev(f, iv, 3, 0, 1)));
           for (i = 0; i < 3; i++)
                   memset(iv[i].iov_base, 0, iv[i].iov_len);
   
           printf("io_readv=%d\n", (ret = io_rreadv(f, iv, 3, 0, 1)));
           for (i = 0; i < 3; i++) {
                   printf("%d) len=%d - %s\n---\n", i, iv[i].iov_len, iv[i].iov_base);
                   io_free(iv[i].iov_base);
           }
   
         close(f);          close(f);
   
           /*
           for (i = 0; i < 3; i++)
                   io_free(iv[i].iov_base);
                   */
         return 0;          return 0;
 }  }

Removed from v.1.1.2.1  
changed lines
  Added in v.1.1.2.6


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>