diff options
author | Gordon Ross <gwr@nexenta.com> | 2018-11-06 01:27:53 -0500 |
---|---|---|
committer | Gordon Ross <gwr@nexenta.com> | 2019-06-03 22:09:35 -0400 |
commit | 7d1ffc32e5e72873791b96934af035e0f051fc14 (patch) | |
tree | 1b712216a61d8178e5df14b9bd4e1bb4a4a99050 /usr/src/cmd/smbsrv/test-msgbuf/test_main.c | |
parent | 07a6ae61f8958faa11352bf1b552d85d79e9cbbe (diff) | |
download | illumos-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.c | 86 |
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); + } +} |