summaryrefslogtreecommitdiff
path: root/usr/src/cmd/smbsrv/test-msgbuf/test_main.c
diff options
context:
space:
mode:
authorGordon Ross <gwr@nexenta.com>2018-11-06 01:27:53 -0500
committerGordon Ross <gwr@nexenta.com>2019-06-03 22:09:35 -0400
commit7d1ffc32e5e72873791b96934af035e0f051fc14 (patch)
tree1b712216a61d8178e5df14b9bd4e1bb4a4a99050 /usr/src/cmd/smbsrv/test-msgbuf/test_main.c
parent07a6ae61f8958faa11352bf1b552d85d79e9cbbe (diff)
downloadillumos-gate-7d1ffc32e5e72873791b96934af035e0f051fc14.tar.gz
7587 SMB should support enhanced Unicode
Reviewed by: Matt Barden <matt.barden@nexenta.com> Reviewed by: Evan Layton <evan.layton@nexenta.com> Reviewed by: Joyce McIntosh <joyce.mcintosh@nexenta.com> Approved by: Richard Lowe <richlowe@richlowe.net>
Diffstat (limited to 'usr/src/cmd/smbsrv/test-msgbuf/test_main.c')
-rw-r--r--usr/src/cmd/smbsrv/test-msgbuf/test_main.c86
1 files changed, 86 insertions, 0 deletions
diff --git a/usr/src/cmd/smbsrv/test-msgbuf/test_main.c b/usr/src/cmd/smbsrv/test-msgbuf/test_main.c
new file mode 100644
index 0000000000..e79ccc08da
--- /dev/null
+++ b/usr/src/cmd/smbsrv/test-msgbuf/test_main.c
@@ -0,0 +1,86 @@
+/*
+ * This file and its contents are supplied under the terms of the
+ * Common Development and Distribution License ("CDDL"), version 1.0.
+ * You may only use this file in accordance with the terms of version
+ * 1.0 of the CDDL.
+ *
+ * A full copy of the text of the CDDL should have accompanied this
+ * source. A copy of the CDDL is also available via the Internet at
+ * http://www.illumos.org/license/CDDL.
+ */
+
+/*
+ * Copyright 2018 Nexenta Systems, Inc. All rights reserved.
+ */
+
+/*
+ * Test & debug program for smb_msgbuf.c and smb_mbuf_marshaling.c
+ */
+
+#include <sys/types.h>
+#include <sys/debug.h>
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <strings.h>
+#include <unistd.h>
+
+#include "test_defs.h"
+
+
+int
+main(int argc, char *argv[])
+{
+
+ test_conv();
+ test_mbmarshal();
+ test_msgbuf();
+
+ return (0);
+}
+
+void
+hexdump(const uchar_t *buf, int len)
+{
+ int idx;
+ char ascii[24];
+ char *pa = ascii;
+
+ memset(ascii, '\0', sizeof (ascii));
+
+ idx = 0;
+ while (len--) {
+ if ((idx & 15) == 0) {
+ printf("%04X: ", idx);
+ pa = ascii;
+ }
+ if (*buf > ' ' && *buf <= '~')
+ *pa++ = *buf;
+ else
+ *pa++ = '.';
+ printf("%02x ", *buf++);
+
+ idx++;
+ if ((idx & 3) == 0) {
+ *pa++ = ' ';
+ putchar(' ');
+ }
+ if ((idx & 15) == 0) {
+ *pa = '\0';
+ printf("%s\n", ascii);
+ }
+ }
+
+ if ((idx & 15) != 0) {
+ *pa = '\0';
+ /* column align the last ascii row */
+ while ((idx & 15) != 0) {
+ if ((idx & 3) == 0)
+ putchar(' ');
+ printf(" ");
+ idx++;
+ }
+ printf("%s\n", ascii);
+ }
+}