summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/Makefile.in5
-rw-r--r--source3/torture/t_push_ucs2.c40
2 files changed, 44 insertions, 1 deletions
diff --git a/source3/Makefile.in b/source3/Makefile.in
index 70591df2bd..4e7de666b2 100644
--- a/source3/Makefile.in
+++ b/source3/Makefile.in
@@ -893,7 +893,7 @@ bin/libsmbclient.a: $(LIBSMBCLIENT_PICOBJS)
bin/libbigballofmud.@SHLIBEXT@: $(LIBBIGBALLOFMUD_PICOBJS)
@echo Linking bigballofmud shared library $@
$(SHLD) $(LDSHFLAGS) -o $@ $(LIBBIGBALLOFMUD_PICOBJS) $(LIBS) \
- @SONAMEFLAG@`basename $@`.$(LIBBIGBALLOFMUD_MAJOR)
+ @SONAMEFLAG@`basename $@`.$(LIBBIGBALLOFMUD_MAJOR) $(PASSDBLIBS) $(ADSLIBS)
# It would be nice to build a static bigballofmud too, but when I try
# I get linker errors about dl_open and similar things. I'm not sure
@@ -1092,6 +1092,9 @@ bin/t_stringoverflow@EXEEXT@: bin/libbigballofmud.@SHLIBEXT@ torture/t_stringove
bin/t_doschar@EXEEXT@: bin/libbigballofmud.@SHLIBEXT@ torture/t_doschar.o
$(CC) $(FLAGS) -o $@ $(LIBS) torture/t_doschar.o -L ./bin -lbigballofmud
+bin/t_push_ucs2@EXEEXT@: bin/libbigballofmud.@SHLIBEXT@ torture/t_push_ucs2.o
+ $(CC) $(FLAGS) -o $@ $(LIBS) torture/t_push_ucs2.o -L ./bin -lbigballofmud
+
install: installbin installman installscripts installdat installswat installmodules installclientlib
# DESTDIR is used here to prevent packagers wasting their time
diff --git a/source3/torture/t_push_ucs2.c b/source3/torture/t_push_ucs2.c
new file mode 100644
index 0000000000..0ab17983a0
--- /dev/null
+++ b/source3/torture/t_push_ucs2.c
@@ -0,0 +1,40 @@
+/*
+ * 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);
+ SAFE_FREE(dest);
+ SAFE_FREE(orig2);
+}
+
+int main(int argc, char *argv[])
+{
+ int i, ret;
+
+ if (argc != 2) {
+ fprintf(stderr, "usage: %s STRING1\n"
+ "Converts a string, prints the results of memcmp\n",
+ argv[0]);
+ return 2;
+ }
+
+ for (i = 0; i < 10000; i++)
+ ret = check_push_ucs2(argv[1]);
+
+ printf("%d\n", ret);
+
+ return 0;
+}