summaryrefslogtreecommitdiff
path: root/source3/torture/t_push_ucs2.c
diff options
context:
space:
mode:
authorcvs2svn Import User <samba-bugs@samba.org>2003-04-13 13:50:46 +0000
committercvs2svn Import User <samba-bugs@samba.org>2003-04-13 13:50:46 +0000
commita47d06a2c2c67cdc0b1dfc2d32df65f2b1bbeeda (patch)
tree94fc3e2c3166e1fa14849e50468b7b529f9e3385 /source3/torture/t_push_ucs2.c
parent74b163a83a7c516abe8192e3965832efa2fa64a4 (diff)
parente2996e29c7fb4697b9d95fe17d316bd2dded9d17 (diff)
downloadsamba-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.c54
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;
+}