summaryrefslogtreecommitdiffstats
path: root/usr.sbin/sendmail/test/t_pathconf.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr.sbin/sendmail/test/t_pathconf.c')
-rw-r--r--usr.sbin/sendmail/test/t_pathconf.c63
1 files changed, 0 insertions, 63 deletions
diff --git a/usr.sbin/sendmail/test/t_pathconf.c b/usr.sbin/sendmail/test/t_pathconf.c
deleted file mode 100644
index a4b5038..0000000
--- a/usr.sbin/sendmail/test/t_pathconf.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
-** 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 <unistd.h>
-#include <errno.h>
-#include <sys/types.h>
-#include <fcntl.h>
-#include <sysexits.h>
-
-main()
-{
- 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");
- }
- unlink(tbuf);
- exit(EX_OK);
-}
OpenPOWER on IntegriCloud