diff options
author | gshapiro <gshapiro@FreeBSD.org> | 2002-02-17 21:56:45 +0000 |
---|---|---|
committer | gshapiro <gshapiro@FreeBSD.org> | 2002-02-17 21:56:45 +0000 |
commit | 8449595fe97f4474b9b9a7e4edee1ef35dcff393 (patch) | |
tree | e7a33b132264d449a512ddf4a8685df097669c1d /contrib/sendmail/libsm/t-scanf.c | |
parent | 289b381b31415647269c7520d881017e2dcb27f1 (diff) | |
download | FreeBSD-src-8449595fe97f4474b9b9a7e4edee1ef35dcff393.zip FreeBSD-src-8449595fe97f4474b9b9a7e4edee1ef35dcff393.tar.gz |
Import sendmail 8.12.2
Diffstat (limited to 'contrib/sendmail/libsm/t-scanf.c')
-rw-r--r-- | contrib/sendmail/libsm/t-scanf.c | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/contrib/sendmail/libsm/t-scanf.c b/contrib/sendmail/libsm/t-scanf.c new file mode 100644 index 0000000..b3ca0bd --- /dev/null +++ b/contrib/sendmail/libsm/t-scanf.c @@ -0,0 +1,59 @@ +/* + * Copyright (c) 2001 Sendmail, Inc. and its suppliers. + * All rights reserved. + * + * By using this file, you agree to the terms and conditions set + * forth in the LICENSE file which can be found at the top level of + * the sendmail distribution. + */ + +#include <sm/gen.h> +SM_IDSTR(id, "@(#)$Id: t-scanf.c,v 1.5 2001/11/13 00:51:28 ca Exp $") + +#include <sm/limits.h> +#include <sm/io.h> +#include <sm/string.h> +#include <sm/test.h> +#include <sm/types.h> + +int +main(argc, argv) + int argc; + char **argv; +{ + int i, d, h; + char buf[128]; + char *r; + + sm_test_begin(argc, argv, "test scanf point stuff"); +#if !SM_CONF_BROKEN_SIZE_T + (void) sm_io_fprintf(smioout, SM_TIME_DEFAULT, +"If tests for \"h == 2\" fail, check whether size_t is signed on your OS.\n\ +If that is the case, add -DSM_CONF_BROKEN_SIZE_T to confENVDEF\n\ +and start over. Otherwise contact sendmail.org.\n"); +#endif /* !SM_CONF_BROKEN_SIZE_T */ + + d = 2; + sm_snprintf(buf, sizeof(buf), "%d", d); + r = "2"; + if (!SM_TEST(strcmp(buf, r) == 0)) + (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, + "got %s instead\n", buf); + + i = sm_io_sscanf(buf, "%d", &h); + SM_TEST(i == 1); + SM_TEST(h == 2); + + d = 2; + sm_snprintf(buf, sizeof(buf), "%d\n", d); + r = "2\n"; + if (!SM_TEST(strcmp(buf, r) == 0)) + (void) sm_io_fprintf(smioerr, SM_TIME_DEFAULT, + "got %s instead\n", buf); + + i = sm_io_sscanf(buf, "%d", &h); + SM_TEST(i == 1); + SM_TEST(h == 2); + + return sm_test_end(); +} |