summaryrefslogtreecommitdiff
path: root/src/regress/lib/libc/vis
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--src/regress/lib/libc/vis/Makefile10
-rw-r--r--src/regress/lib/libc/vis/valid.ok2
-rw-r--r--src/regress/lib/libc/vis/vis_test.c113
3 files changed, 0 insertions, 125 deletions
diff --git a/src/regress/lib/libc/vis/Makefile b/src/regress/lib/libc/vis/Makefile
deleted file mode 100644
index 13e560bbf7..0000000000
--- a/src/regress/lib/libc/vis/Makefile
+++ /dev/null
@@ -1,10 +0,0 @@
1# $OpenBSD: Makefile,v 1.1 2005/08/29 18:41:56 otto Exp $
2
3PROG= vis_test
4CLEANFILES+= valid.out
5
6run-regress-vis_test: ${PROG}
7 ./${PROG} >${.OBJDIR}/valid.out
8 cmp -s ${.OBJDIR}/valid.out ${.CURDIR}/valid.ok
9
10.include <bsd.regress.mk>
diff --git a/src/regress/lib/libc/vis/valid.ok b/src/regress/lib/libc/vis/valid.ok
deleted file mode 100644
index f8c0efa503..0000000000
--- a/src/regress/lib/libc/vis/valid.ok
+++ /dev/null
@@ -1,2 +0,0 @@
1\^@\^A\^B\^C\^D\^E\^F\^G\^H
2\^K\^L\^M\^N\^O\^P\^Q\^R\^S\^T\^U\^V\^W\^X\^Y\^Z\^[\^\\^]\^^\^_ !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~\^?\M^@\M^A\M^B\M^C\M^D\M^E\M^F\M^G\M^H\M^I\M^J\M^K\M^L\M^M\M^N\M^O\M^P\M^Q\M^R\M^S\M^T\M^U\M^V\M^W\M^X\M^Y\M^Z\M^[\M^\\M^]\M^^\M^_\240\M-!\M-"\M-#\M-$\M-%\M-&\M-'\M-(\M-)\M-*\M-+\M-,\M--\M-.\M-/\M-0\M-1\M-2\M-3\M-4\M-5\M-6\M-7\M-8\M-9\M-:\M-;\M-<\M-=\M->\M-?\M-@\M-A\M-B\M-C\M-D\M-E\M-F\M-G\M-H\M-I\M-J\M-K\M-L\M-M\M-N\M-O\M-P\M-Q\M-R\M-S\M-T\M-U\M-V\M-W\M-X\M-Y\M-Z\M-[\M-\\M-]\M-^\M-_\M-`\M-a\M-b\M-c\M-d\M-e\M-f\M-g\M-h\M-i\M-j\M-k\M-l\M-m\M-n\M-o\M-p\M-q\M-r\M-s\M-t\M-u\M-v\M-w\M-x\M-y\M-z\M-{\M-|\M-}\M-~\M^?
diff --git a/src/regress/lib/libc/vis/vis_test.c b/src/regress/lib/libc/vis/vis_test.c
deleted file mode 100644
index 92f2cee32d..0000000000
--- a/src/regress/lib/libc/vis/vis_test.c
+++ /dev/null
@@ -1,113 +0,0 @@
1/* $OpenBSD: vis_test.c,v 1.5 2017/07/27 15:08:37 bluhm Exp $ */
2
3/* Public domain. 2005, Otto Moerbeek */
4
5#include <limits.h>
6#include <stdlib.h>
7#include <string.h>
8#include <stdio.h>
9#include <vis.h>
10
11#define NTESTS 8000
12#define NCH 800
13
14char ibuf[NCH];
15char obuf[NCH * 4];
16char rbuf[NCH * 4];
17
18int flags[] = {
19 VIS_ALL,
20 VIS_GLOB,
21 VIS_TAB,
22 VIS_NL,
23 VIS_DQ,
24 VIS_WHITE,
25 VIS_SAFE
26};
27
28char *flagname[] = {
29 "VIS_ALL",
30 "VIS_GLOB",
31 "VIS_TAB",
32 "VIS_NL",
33 "VIS_DQ",
34 "VIS_WHITE",
35 "VIS_SAFE"
36};
37
38int title;
39
40void
41dotitle(int i, int j)
42{
43 if (title == 0)
44 printf("%d %s:", i, flagname[j]);
45 title = 1;
46}
47
48int
49main(int argc, char *argv[])
50{
51
52 char inp[UCHAR_MAX + 1];
53 char out[4 * UCHAR_MAX + 1];
54 int i, j, fail = 0;
55 ssize_t owant, o, r;
56
57 for (i = 0; i <= UCHAR_MAX; i++) {
58 inp[i] = i;
59 }
60 strvisx(out, inp, UCHAR_MAX + 1, 0);
61 printf("%s\n", out);
62
63 for (i = 0; i < NTESTS; i++) {
64 arc4random_buf(ibuf, sizeof(ibuf) - 1);
65 ibuf[sizeof(ibuf) - 1] = '\0';
66 title = 0;
67
68 for (j = 0; j < sizeof(flags)/sizeof(flags[0]); j++) {
69 owant = sizeof(ibuf);
70 o = strnvis(obuf, ibuf, owant, flags[j]);
71 if (o >= owant) {
72 owant = o + 1;
73 o = strnvis(obuf, ibuf, owant, flags[j]);
74 if (o > owant) {
75 dotitle(i, j);
76 printf("HUGE overflow\n");
77 }
78 if (o < owant - 1) {
79 dotitle(i, j);
80 printf("over-estimate of overflow\n");
81 }
82 } else if (o > strlen(ibuf) * 4) {
83 dotitle(i, j);
84 printf("wants too much %zd %zu\n",
85 o, strlen(ibuf) * 4);
86 continue;
87 }
88
89 r = strnunvis(rbuf, obuf, sizeof rbuf);
90
91 if (r == -1) {
92 dotitle(i, j);
93 printf("cannot decode\n");
94 printf("%s\n", obuf);
95 fail = 1;
96 } else if (r != strlen(ibuf)) {
97 dotitle(i, j);
98 printf("rlen %zd != inlen %zu\n",
99 r, strlen(ibuf));
100 printf("%s\n", obuf);
101 printf("%s\n", rbuf);
102 fail = 1;
103 } else if (bcmp(ibuf, rbuf, r)) {
104 dotitle(i, j);
105 printf("strings are different\n");
106 printf("%s\n", ibuf);
107 printf("%s\n", rbuf);
108 fail = 1;
109 }
110 }
111 }
112 exit(fail);
113}