summaryrefslogtreecommitdiffstats
path: root/usr.sbin
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-09-02 19:28:59 +0000
committerphk <phk@FreeBSD.org>2002-09-02 19:28:59 +0000
commit5f194761d66ccad78c5ba502671cb3dda1d9e268 (patch)
tree9711ce93fbc1503be31479927afea056beea4d6f /usr.sbin
parent49e348fa488ebb81ef2e61bed1a9d4aee0c58275 (diff)
downloadFreeBSD-src-5f194761d66ccad78c5ba502671cb3dda1d9e268.zip
FreeBSD-src-5f194761d66ccad78c5ba502671cb3dda1d9e268.tar.gz
Switch over to the new EA manipulation utilities.
Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/Makefile3
-rw-r--r--usr.sbin/getextattr/Makefile8
-rw-r--r--usr.sbin/getextattr/getextattr.8109
-rw-r--r--usr.sbin/getextattr/getextattr.c177
-rw-r--r--usr.sbin/setextattr/Makefile8
-rw-r--r--usr.sbin/setextattr/setextattr.889
-rw-r--r--usr.sbin/setextattr/setextattr.c74
7 files changed, 1 insertions, 467 deletions
diff --git a/usr.sbin/Makefile b/usr.sbin/Makefile
index eba209f..7e26e25 100644
--- a/usr.sbin/Makefile
+++ b/usr.sbin/Makefile
@@ -27,13 +27,13 @@ SUBDIR= IPXrouted \
digictl \
edquota \
elf2aout \
+ extattr \
extattrctl \
faithd \
fdcontrol \
fdformat \
fdread \
fdwrite \
- getextattr \
ifmcstat \
inetd \
iostat \
@@ -93,7 +93,6 @@ SUBDIR= IPXrouted \
rtsold \
rwhod \
sa \
- setextattr \
setkey \
sliplogin \
slstat \
diff --git a/usr.sbin/getextattr/Makefile b/usr.sbin/getextattr/Makefile
deleted file mode 100644
index c16e644..0000000
--- a/usr.sbin/getextattr/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# $FreeBSD$
-
-PROG= getextattr
-MAN= getextattr.8
-
-WARNS?= 2
-
-.include <bsd.prog.mk>
diff --git a/usr.sbin/getextattr/getextattr.8 b/usr.sbin/getextattr/getextattr.8
deleted file mode 100644
index b2798eb..0000000
--- a/usr.sbin/getextattr/getextattr.8
+++ /dev/null
@@ -1,109 +0,0 @@
-.\"-
-.\" Copyright (c) 2000, 2001, 2002 Robert N. M. Watson
-.\" All rights reserved.
-.\"
-.\" This software was developed by Robert Watson for the TrustedBSD
-.\" Project.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd March 30, 2000
-.Dt GETEXTATTR 8
-.Os
-.Sh NAME
-.Nm getextattr
-.Nd retrieve a named extended attribute
-.Sh SYNOPSIS
-.Nm
-.Op Fl ls
-.Ar attrnamespace
-.Ar attrname
-.Ar filename ...
-.Sh DESCRIPTION
-The
-.Nm
-utility is a user tool to retrieve a named extended attribute on a file or
-directory.
-The
-.Ar attrnamespace
-argument should be the namespace of the attribute to retrieve: legal
-values are "user" and "system".
-The
-.Ar attrname
-argument should be the name of the attribute, and
-.Ar filename
-a list of files and directories from which to retrieve attribute data.
-.Pp
-The following options are available:
-.Bl -tag -width indent
-.It Fl l
-Print attributes in the first column and file names in the second.
-Can be used only in conjunction with the
-.Fl s
-option.
-.It Fl s
-Attempt to display the attribute data as a string, although the
-results may not look pretty if the data is binary data.
-The
-.Xr strvisx 3
-function is used to generate the string, so control sequences should
-be safely escaped.
-Otherwise, the attribute data will be represented as a series of two-digit
-hex numbers.
-.El
-.Sh IMPLEMENTATION NOTES
-In order for
-.Nm
-to succeed, the attribute service must be available on the file system,
-and the attribute must of defined for the file queried.
-.Sh EXAMPLES
-.Bd -literal -offset indent
-# getextattr system md5 /boot/kernel/kernel
-/boot/kernel/kernel:
- 61 61 33 62 39 39 66 65 31 35 35 32 31 62 65 32
- 62 36 38 36 62 31 66 39 63 64 33 39 35 36 36 31
-# getextattr -s system md5 /boot/kernel/kernel
-/boot/kernel/kernel: "aa3b99fe15521be2b686b1f9cd395661"
-.Ed
-.Pp
-Retrieve the
-.Dq md5
-extended attribute for the file
-.Pa /boot/kernel/kernel .
-.Sh SEE ALSO
-.Xr extattr 2 ,
-.Xr extattr 3 ,
-.Xr extattrctl 8 ,
-.Xr setextattr 8 ,
-.Xr extattr 9
-.Sh HISTORY
-Extended attribute support was developed as part of the TrustedBSD Project,
-and introduced in
-.Fx 5.0 .
-It was developed to support security extensions requiring additional labels
-to be associated with each file or directory.
-.Sh AUTHORS
-Robert N M Watson
-.Sh BUGS
-The output format for this utility is ugly, and worse yet, not very useful.
diff --git a/usr.sbin/getextattr/getextattr.c b/usr.sbin/getextattr/getextattr.c
deleted file mode 100644
index 64bc9ac..0000000
--- a/usr.sbin/getextattr/getextattr.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*-
- * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson
- * Copyright (c) 2002 Networks Associates Technology, Inc.
- * All rights reserved.
- *
- * This software was developed by Robert Watson for the TrustedBSD Project.
- *
- * This software was developed for the FreeBSD Project in part by NAI Labs,
- * the Security Research Division of Network Associates, Inc. under
- * DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the DARPA
- * CHATS research program.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- * 3. The names of the authors may not be used to endorse or promote
- * products derived from this software without specific prior written
- * permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD$
- */
-/*
- * TrustedBSD Project - extended attribute support
- */
-#include <sys/types.h>
-#include <sys/uio.h>
-#include <sys/extattr.h>
-
-#include <libutil.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <unistd.h>
-#include <vis.h>
-#include <err.h>
-
-#define BUFSIZE 2048
-
-void usage(void);
-
-void
-usage(void)
-{
-
- fprintf(stderr, "getextattr [-ls] [attrnamespace] [attrname] "
- "[filename ...]\n");
- exit(-1);
-}
-
-int
-main(int argc, char *argv[])
-{
- size_t len;
- char *attrname;
- char *buf, *visbuf, *p, *pe;
- int ch, error, i, arg_counter, attrnamespace;
-
- int flag_as_string = 0;
- int flag_reverse = 0;
-
- while ((ch = getopt(argc, argv, "ls")) != -1) {
- switch (ch) {
- case 'l':
- flag_reverse = 1;
- case 's':
- flag_as_string = 1;
- break;
- case '?':
- default:
- usage();
- }
- }
-
- argc -= optind;
- argv += optind;
-
- if (argc < 3)
- usage();
-
- error = extattr_string_to_namespace(argv[0], &attrnamespace);
- if (error)
- err(-1, argv[0]);
- attrname = argv[1];
-
- argc--;
- argv++;
-
- /*
- * XXX: Note: now that EAs support querying the size, we could
- * actually allocate a buffer of the right size, rather than
- * truncating at BUFSIZE.
- */
- for (arg_counter = 1; arg_counter < argc; arg_counter++) {
- len = extattr_get_file(argv[arg_counter], attrnamespace,
- attrname, NULL, 0);
- if (len == -1) {
- perror(argv[arg_counter]);
- continue;
- }
- buf = (char *)malloc(len);
- if (buf == NULL) {
- perror("malloc");
- return (-1);
- }
- error = extattr_get_file(argv[arg_counter], attrnamespace,
- attrname, buf, BUFSIZE);
- if (error == -1) {
- perror(argv[arg_counter]);
- free(buf);
- continue;
- }
- len = error;
- if (strlen(attrname) == 0) { /* looking for EA names */
- visbuf = (char *)malloc(len*4);
- p = buf;
- pe = buf + len;
- printf("%s:", argv[arg_counter]);
- for (p = buf; p < pe; p += i + 1) {
- i = *p;
- strvisx(visbuf, p + 1, i,
- VIS_SAFE | VIS_WHITE);
- printf(" \"%s\"", visbuf);
- }
- free(visbuf);
- printf("\n");
- } else if (flag_as_string) {
- if (len > 0) {
- visbuf = (char *)malloc(len*4);
- if (visbuf == NULL) {
- perror("malloc");
- return (-1);
- }
- strvisx(visbuf, buf, len, VIS_SAFE | VIS_WHITE);
- } else {
- visbuf = strdup("");
- }
- if (flag_reverse) {
- printf("\"%s\" ", visbuf);
- printf("%s\n", argv[arg_counter]);
- } else {
- printf("%s:", argv[arg_counter]);
- printf(" \"%s\"\n", visbuf);
- }
- free(visbuf);
- } else {
- printf("%s:", argv[arg_counter]);
- for (i = 0; i < len; i++)
- if (i % 16 == 0)
- printf("\n %02x ", buf[i]);
- else if (i % 8 == 0)
- printf(" %02x ", buf[i]);
- else
- printf("%02x ", buf[i]);
- printf("\n");
- }
- free(buf);
- }
-
- return (0);
-}
diff --git a/usr.sbin/setextattr/Makefile b/usr.sbin/setextattr/Makefile
deleted file mode 100644
index 7eaf132..0000000
--- a/usr.sbin/setextattr/Makefile
+++ /dev/null
@@ -1,8 +0,0 @@
-# $FreeBSD$
-
-PROG= setextattr
-MAN= setextattr.8
-
-WARNS?= 2
-
-.include <bsd.prog.mk>
diff --git a/usr.sbin/setextattr/setextattr.8 b/usr.sbin/setextattr/setextattr.8
deleted file mode 100644
index ea9a147..0000000
--- a/usr.sbin/setextattr/setextattr.8
+++ /dev/null
@@ -1,89 +0,0 @@
-.\"-
-.\" Copyright (c) 2000, 2001 Robert N. M. Watson
-.\" All rights reserved.
-.\"
-.\" Redistribution and use in source and binary forms, with or without
-.\" modification, are permitted provided that the following conditions
-.\" are met:
-.\" 1. Redistributions of source code must retain the above copyright
-.\" notice, this list of conditions and the following disclaimer.
-.\" 2. Redistributions in binary form must reproduce the above copyright
-.\" notice, this list of conditions and the following disclaimer in the
-.\" documentation and/or other materials provided with the distribution.
-.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
-.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd March 30, 2000
-.Dt SETEXTATTR 8
-.Os
-.Sh NAME
-.Nm setextattr
-.Nd set a named extended attribute
-.Sh SYNOPSIS
-.Nm
-.Ar attrnamespace
-.Ar attrname
-.Ar filename
-.Ar attrvalue
-.Sh DESCRIPTION
-The
-.Nm
-utility
-is a user tool to set a named extended attribute on a file or directory to
-the provided string.
-The
-.Ar attrnamespace
-argument should be the namespace of the attribute to retrieve: legal
-values are "user" and "system".
-The
-.Ar attrname
-argument should be the name of the attribute,
-.Ar filename
-the name of the file or directory to set the attribute for, and
-.Ar attrvalue
-a string to store in the attribute.
-The
-.Nm
-utility will store the string in the file's attribute.
-In order for
-.Nm
-to succeed, the attribute service must be available on the file system,
-and appropriate privilege may be required.
-.Sh EXAMPLES
-.Dl # setextattr system md5 /boot/kernel/kernel `md5 -q /boot/kernel/kernel`
-.Pp
-Set the
-.Dq md5
-extended attribute on the file /boot/kernel/kernel to the string
-containing the output of
-.Dq md5 -q /boot/kernel/kernel .
-.Sh SEE ALSO
-.Xr extattr 2 ,
-.Xr extattr 3 ,
-.Xr extattrctl 8 ,
-.Xr getextattr 8 ,
-.Xr extattr 9
-.Sh HISTORY
-Extended attribute support was developed as part of the TrustedBSD Project,
-and introduced in
-.Fx 5.0 .
-It was developed to support security extensions requiring additional labels
-to be associated with each file or directory.
-.Sh AUTHORS
-Robert N M Watson
-.Sh BUGS
-The
-.Nm
-utility can only be used to set attributes to strings.
diff --git a/usr.sbin/setextattr/setextattr.c b/usr.sbin/setextattr/setextattr.c
deleted file mode 100644
index de68e68..0000000
--- a/usr.sbin/setextattr/setextattr.c
+++ /dev/null
@@ -1,74 +0,0 @@
-/*-
- * Copyright (c) 1999, 2000, 2001 Robert N. M. Watson
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
- * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
- * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
- * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
- * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
- * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- * SUCH DAMAGE.
- *
- * $FreeBSD$
- */
-/*
- * TrustedBSD Project - extended attribute support for UFS-like file systems
- */
-
-#include <sys/types.h>
-#include <sys/uio.h>
-#include <sys/extattr.h>
-
-#include <libutil.h>
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-
-void usage(void);
-
-void
-usage(void)
-{
-
- fprintf(stderr, "setextattr [attrnamespace] [attrname] [filename] "
- "[attrvalue]\n");
- exit(-1);
-}
-
-int
-main(int argc, char *argv[])
-{
- int error, attrnamespace;
-
- if (argc != 5)
- usage();
-
- error = extattr_string_to_namespace(argv[1], &attrnamespace);
- if (error) {
- perror(argv[1]);
- return (-1);
- }
-
- error = extattr_set_file(argv[3], attrnamespace, argv[2], argv[4],
- strlen(argv[4]));
- if (error == -1) {
- perror(argv[3]);
- return (-1);
- }
-
- return (0);
-}
OpenPOWER on IntegriCloud