torture/t_push_ucs2.c

説明を見る。
00001 /*
00002  * Copyright (C) 2003 by Martin Pool
00003  * Copyright (C) 2003 by Andrew Bartlett
00004  *
00005  * Test harness for push_ucs2
00006  */
00007 
00008 #include "includes.h"
00009 
00010 static int check_push_ucs2(const char *orig) 
00011 {
00012         smb_ucs2_t *dest = NULL;
00013         char *orig2 = NULL;
00014         int ret;
00015 
00016         push_ucs2_allocate(&dest, orig);
00017         pull_ucs2_allocate(&orig2, dest);
00018         ret = strcmp(orig, orig2);
00019         if (ret) {
00020                 fprintf(stderr, "orig: %s\n", orig);
00021                 fprintf(stderr, "orig (UNIX -> UCS2 -> UNIX): %s\n", orig2);
00022         }
00023 
00024         SAFE_FREE(dest);
00025         SAFE_FREE(orig2);
00026 
00027         return ret;
00028 }
00029 
00030 int main(int argc, char *argv[])
00031 {
00032         int i, ret = 0;
00033         int count = 1;
00034 
00035         /* Needed to initialize character set */
00036         lp_load("/dev/null", True, False, False, True);
00037 
00038         if (argc < 2) {
00039                 fprintf(stderr, "usage: %s STRING1 [COUNT]\n"
00040                         "Checks that a string translated UNIX->UCS2->UNIX is unchanged\n"
00041                         "Should be always 0\n",
00042                         argv[0]);
00043                 return 2;
00044         }
00045         if (argc >= 3)
00046                 count = atoi(argv[2]);
00047 
00048         for (i = 0; ((i < count) && (!ret)); i++)
00049                 ret = check_push_ucs2(argv[1]);
00050 
00051         printf("%d\n", ret);
00052         
00053         return 0;
00054 }

Sambaに対してSat Aug 29 21:23:27 2009に生成されました。  doxygen 1.4.7