main.c (880B)
1 #include <stdlib.h> 2 #include <stdio.h> 3 #include <string.h> 4 5 #include "util/buffer.h" 6 7 int main(int argc, char *argv[]) { 8 FILE *fp; 9 size_t n; 10 11 char *infile = "-"; 12 if (argc > 1) { 13 infile = argv[1]; 14 } 15 16 if (!strcmp(infile, "-")) { 17 fp = stdin; 18 } else { 19 fp = fopen(infile, "r"); 20 } 21 if (!fp) { 22 perror("fopen"); 23 return EXIT_FAILURE; 24 } 25 26 27 struct confgen_buffer *ring = calloc(1, sizeof(struct confgen_buffer)); 28 char *intermediate = malloc(BUFSIZ); 29 while(!feof(fp)) { 30 n = fread(intermediate, 1, BUFSIZ, fp); 31 confgen_buffer_append(ring, intermediate, n); 32 } 33 34 printf("Stats:\n"); 35 printf(" alloc: %p\n" , ring->alloc); 36 printf(" dat : %p\n" , ring->dat); 37 printf(" len : %ld\n", ring->len); 38 printf(" cap : %ld\n", ring->cap); 39 printf(" data : [%*s]\n", (int)(ring->len), ring->dat); 40 printf("\n"); 41 42 return 0; 43 }