root/source3/torture/t_strappend.c

/* [<][>][^][v][top][bottom][index][help] */

DEFINITIONS

This source file includes following definitions.
  1. main

   1 /*
   2  * Copyright (C) 2005 by Volker Lendecke
   3  *
   4  * Test harness for sprintf_append
   5  */
   6 
   7 #include "includes.h"
   8 #include <assert.h>
   9 
  10 int main(int argc, char *argv[])
     /* [<][>][^][v][top][bottom][index][help] */
  11 {
  12         TALLOC_CTX *mem_ctx;
  13         char *string = NULL;
  14         int len = 0;
  15         int bufsize = 4;
  16         int i;
  17 
  18         mem_ctx = talloc_init("t_strappend");
  19         if (mem_ctx == NULL) {
  20                 fprintf(stderr, "talloc_init failed\n");
  21                 return 1;
  22         }
  23 
  24         sprintf_append(mem_ctx, &string, &len, &bufsize, "");
  25         assert(strlen(string) == len);
  26         sprintf_append(mem_ctx, &string, &len, &bufsize, "");
  27         assert(strlen(string) == len);
  28         sprintf_append(mem_ctx, &string, &len, &bufsize,
  29                        "01234567890123456789012345678901234567890123456789\n");
  30         assert(strlen(string) == len);
  31 
  32 
  33         for (i=0; i<(100000); i++) {
  34                 if (i%1000 == 0) {
  35                         printf("%d %d\r", i, bufsize);
  36                         fflush(stdout);
  37                 }
  38                 sprintf_append(mem_ctx, &string, &len, &bufsize, "%d\n", i);
  39                 assert(strlen(string) == len);
  40         }
  41 
  42         talloc_destroy(mem_ctx);
  43 
  44         return 0;
  45 }

/* [<][>][^][v][top][bottom][index][help] */