diff options
author | cvs2svn Import User <samba-bugs@samba.org> | 2003-04-13 13:50:46 +0000 |
---|---|---|
committer | cvs2svn Import User <samba-bugs@samba.org> | 2003-04-13 13:50:46 +0000 |
commit | a47d06a2c2c67cdc0b1dfc2d32df65f2b1bbeeda (patch) | |
tree | 94fc3e2c3166e1fa14849e50468b7b529f9e3385 /source3/torture/t_push_ucs2.c | |
parent | 74b163a83a7c516abe8192e3965832efa2fa64a4 (diff) | |
parent | e2996e29c7fb4697b9d95fe17d316bd2dded9d17 (diff) | |
download | samba-a47d06a2c2c67cdc0b1dfc2d32df65f2b1bbeeda.tar.gz samba-a47d06a2c2c67cdc0b1dfc2d32df65f2b1bbeeda.tar.bz2 samba-a47d06a2c2c67cdc0b1dfc2d32df65f2b1bbeeda.zip |
This commit was manufactured by cvs2svn to create branch 'SAMBA_3_0'.(This used to be commit 381649916ecbaddefbb6ee0e6137b7cc73eb54b1)
Diffstat (limited to 'source3/torture/t_push_ucs2.c')
-rw-r--r-- | source3/torture/t_push_ucs2.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/source3/torture/t_push_ucs2.c b/source3/torture/t_push_ucs2.c new file mode 100644 index 0000000000..8bfc6f7ad9 --- /dev/null +++ b/source3/torture/t_push_ucs2.c @@ -0,0 +1,54 @@ +/* + * Copyright (C) 2003 by Martin Pool + * Copyright (C) 2003 by Andrew Bartlett + * + * Test harness for push_ucs2 + */ + +#include "includes.h" + +static int check_push_ucs2(const char *orig) +{ + smb_ucs2_t *dest = NULL; + char *orig2 = NULL; + int ret; + + push_ucs2_allocate(&dest, orig); + pull_ucs2_allocate(&orig2, dest); + ret = strcmp(orig, orig2); + if (ret) { + fprintf(stderr, "orig: %s\n", orig); + fprintf(stderr, "orig (UNIX -> UCS2 -> UNIX): %s\n", orig2); + } + + SAFE_FREE(dest); + SAFE_FREE(orig2); + + return ret; +} + +int main(int argc, char *argv[]) +{ + int i, ret = 0; + int count = 1; + + /* Needed to initialize character set */ + lp_load("/dev/null", True, False, False); + + if (argc < 2) { + fprintf(stderr, "usage: %s STRING1 [COUNT]\n" + "Checks that a string translated UNIX->UCS2->UNIX is unchanged\n" + "Should be always 0\n", + argv[0]); + return 2; + } + if (argc >= 3) + count = atoi(argv[2]); + + for (i = 0; ((i < count) && (!ret)); i++) + ret = check_push_ucs2(argv[1]); + + printf("%d\n", ret); + + return 0; +} |