aboutsummaryrefslogtreecommitdiff
path: root/contrib/sendmail/libsm/t-streq.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/sendmail/libsm/t-streq.c')
-rw-r--r--contrib/sendmail/libsm/t-streq.c42
1 files changed, 32 insertions, 10 deletions
diff --git a/contrib/sendmail/libsm/t-streq.c b/contrib/sendmail/libsm/t-streq.c
index a193eca5f02d..c6f369be0945 100644
--- a/contrib/sendmail/libsm/t-streq.c
+++ b/contrib/sendmail/libsm/t-streq.c
@@ -17,7 +17,6 @@ SM_IDSTR(id, "@(#)$Id: t-qic.c,v 1.10 2013-11-22 20:51:43 ca Exp $")
#include <sm/ixlen.h>
#include <sm/test.h>
-#if _FFR_8BITENVADDR
extern bool SmTestVerbose;
static int
@@ -37,6 +36,32 @@ usage(prg)
fprintf(stderr, "options:\n");
}
+static void
+hack(str)
+ char *str;
+{
+ char c;
+
+ /* replace just one \x char */
+ while ((c = *str++) != '\0')
+ {
+ if (c != '\\')
+ continue;
+ c = *str;
+ switch (c)
+ {
+ case 'n': c ='\n'; break;
+ case 't': c ='\t'; break;
+ case 'r': c ='\r'; break;
+ /* case 'X': c ='\X'; break; */
+ default: c ='\0'; break;
+ }
+ *(str - 1) = c;
+ *str = '\0';
+ break;
+ }
+}
+
int
main(argc, argv)
int argc;
@@ -61,17 +86,14 @@ main(argc, argv)
while (fscanf(stdin, "%d:%s\n", &len, s1) == 2 &&
fscanf(stdin, "%d:%s\n", &o,s2) == 2)
{
+ int r;
+
+ hack(s1);
+ hack(s2);
SM_TEST(tstrncaseeq(s1, s2, len) == o);
+ if ((r = tstrncaseeq(s1, s2, len)) != o)
+ fprintf(stderr, "\"%s\"\n\"%s\"\n%d!=%d\n", s1, s2, o, r);
}
return sm_test_end();
}
-#else /* _FFR_8BITENVADDR */
-int
-main(argc, argv)
- int argc;
- char *argv[];
-{
- return 0;
-}
-#endif /* _FFR_8BITENVADDR */