aboutsummaryrefslogtreecommitdiff
path: root/contrib/sendmail/test/t_pathconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/sendmail/test/t_pathconf.c')
-rw-r--r--contrib/sendmail/test/t_pathconf.c84
1 files changed, 0 insertions, 84 deletions
diff --git a/contrib/sendmail/test/t_pathconf.c b/contrib/sendmail/test/t_pathconf.c
deleted file mode 100644
index 2baaaa61d9a9..000000000000
--- a/contrib/sendmail/test/t_pathconf.c
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * Copyright (c) 1999 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.
- *
- */
-
-/*
-** The following test program tries the pathconf(2) routine. It should
-** be run in a non-NFS-mounted directory (e.g., /tmp) and on remote (NFS)
-** mounted directories running both NFS-v2 and NFS-v3 from systems that
-** both do and do not permit file giveaway.
-*/
-
-#include <sys/types.h>
-#include <errno.h>
-#include <fcntl.h>
-#include <stdio.h>
-#include <unistd.h>
-#ifdef EX_OK
-# undef EX_OK /* unistd.h may have another use for this */
-#endif /* EX_OK */
-#include <sysexits.h>
-
-#ifndef lint
-static char id[] = "@(#)$Id: t_pathconf.c,v 8.6 2001/09/23 03:35:41 ca Exp $";
-#endif /* ! lint */
-
-int
-main(argc, argv)
- int argc;
- char **argv;
-{
- int fd;
- int i;
- char tbuf[100];
- extern int errno;
-
- if (geteuid() == 0)
- {
- printf("*** Run me as a non-root user! ***\n");
- exit(EX_USAGE);
- }
-
- strcpy(tbuf, "TXXXXXX");
- fd = mkstemp(tbuf);
- if (fd < 0)
- {
- printf("*** Could not create test file %s\n", tbuf);
- exit(EX_CANTCREAT);
- }
- errno = 0;
- i = pathconf(".", _PC_CHOWN_RESTRICTED);
- printf("pathconf(.) returns %2d, errno = %d\n", i, errno);
- errno = 0;
- i = pathconf(tbuf, _PC_CHOWN_RESTRICTED);
- printf("pathconf(%s) returns %2d, errno = %d\n", tbuf, i, errno);
- errno = 0;
- i = fpathconf(fd, _PC_CHOWN_RESTRICTED);
- printf("fpathconf(%s) returns %2d, errno = %d\n", tbuf, i, errno);
- if (errno == 0 && i >= 0)
- {
- /* so it claims that it doesn't work -- try anyhow */
- printf(" fpathconf claims that chown is safe ");
- if (fchown(fd, 1, 1) >= 0)
- printf("*** but fchown works anyhow! ***\n");
- else
- printf("and fchown agrees\n");
- }
- else
- {
- /* well, let's see what really happens */
- printf(" fpathconf claims that chown is not safe ");
- if (fchown(fd, 1, 1) >= 0)
- printf("as indeed it is not\n");
- else
- printf("*** but in fact it is safe ***\n");
- }
- (void) unlink(tbuf);
- exit(EX_OK);
-}