libselinux/libselinux-rhat.patch

119 lines
2.7 KiB
Diff
Raw Normal View History

auto-import changelog data from libselinux-1.4-9.src.rpm Fri Jan 23 2004 Dan Walsh <dwalsh@redhat.com> 1.4-9 - Add rootok patch Wed Jan 14 2004 Dan Walsh <dwalsh@redhat.com> 1.4-8 - Updated getpeernam patch Tue Jan 13 2004 Dan Walsh <dwalsh@redhat.com> 1.4-7 - Add getpeernam patch Thu Dec 18 2003 Dan Walsh <dwalsh@redhat.com> 1.4-6 - Add getpeercon patch Thu Dec 18 2003 Dan Walsh <dwalsh@redhat.com> 1.4-5 - Put mntpoint patch, because found fix for SysVinit Wed Dec 17 2003 Dan Walsh <dwalsh@redhat.com> 1.4-4 - Add remove mntpoint patch, because it breaks SysVinit Wed Dec 17 2003 Dan Walsh <dwalsh@redhat.com> 1.4-3 - Add mntpoint patch for SysVinit Fri Dec 12 2003 Dan Walsh <dwalsh@redhat.com> 1.4-2 - Add -r -u -t to getcon Sat Dec 06 2003 Dan Walsh <dwalsh@redhat.com> 1.4-1 - Upgrade to latest from NSA Mon Oct 27 2003 Dan Walsh <dwalsh@redhat.com> 1.3-2 - Fix x86_64 build Tue Oct 21 2003 Dan Walsh <dwalsh@redhat.com> 1.3-1 - Latest tarball from NSA. Tue Oct 21 2003 Dan Walsh <dwalsh@redhat.com> 1.2-9 - Update with latest changes from NSA Mon Oct 20 2003 Dan Walsh <dwalsh@redhat.com> 1.2-8 - Change location of .so file Wed Oct 08 2003 Dan Walsh <dwalsh@redhat.com> 1.2-7 - Break out into development library Wed Oct 08 2003 Dan Walsh <dwalsh@redhat.com> 1.2-6 - Move location of libselinux.so to /lib Fri Oct 03 2003 Dan Walsh <dwalsh@redhat.com> 1.2-5 - Add selinuxenabled patch Wed Oct 01 2003 Dan Walsh <dwalsh@redhat.com> 1.2-4 - Update with final NSA 1.2 sources. Fri Sep 12 2003 Dan Walsh <dwalsh@redhat.com> 1.2-3 - Update with latest from NSA. Thu Aug 28 2003 Dan Walsh <dwalsh@redhat.com> 1.2-2 - Fix to build on x86_64 Thu Aug 21 2003 Dan Walsh <dwalsh@redhat.com> 1.2-1 - update for version 1.2 Tue May 27 2003 Dan Walsh <dwalsh@redhat.com> 1.0-1 - Initial version
2004-09-09 07:41:25 +00:00
--- libselinux-1.4/utils/getcon.c.rhat 2003-10-24 16:39:11.000000000 -0400
+++ libselinux-1.4/utils/getcon.c 2003-12-18 14:50:39.000000000 -0500
@@ -2,19 +2,103 @@
#include <stdio.h>
#include <stdlib.h>
#include <selinux/selinux.h>
+#include <selinux/context.h>
+#include <getopt.h>
+
+/* The name the program was run with. */
+static char *program_name;
+static struct option const long_options[] =
+{
+ {"user", no_argument, 0, 'u'},
+ {"role", no_argument, 0, 'r'},
+ {"type", no_argument, 0, 't'},
+ {"help", no_argument, 0, 'h'},
+ {0, 0, 0, 0}
+};
+
+static void
+usage (int status)
+{
+ if (status != 0)
+ fprintf (stderr, "Try `%s --help' for more information.\n",
+ program_name);
+ else
+ {
+ printf ("\
+Usage: %s [ [-u USER] | [-r ROLE] | [-t TYPE] ] \n\
+",
+ program_name);
+ printf ("\
+Get the current security context for this process.\n\
+\n\
+ -u, --user=USER set user USER in the target security context\n\
+ -r, --role=ROLE set role ROLE in the target security context\n\
+ -t, --type=TYPE set type TYPE in the target security context\n\
+ --help display this help and exit\n\
+ --version output version information and exit\n\
+");
+ }
+ exit (status);
+}
int main(int argc __attribute__ ((unused)), char **argv)
{
char *buf;
int rc;
+ int user=0,type=0,role=0,show_help=0;
+ char optc;
+ program_name = argv[0];
+ while ((optc = getopt_long (argc, argv, "hurt", long_options, NULL)) != -1)
+ {
+ switch (optc)
+ {
+ case 0:
+ break;
+ case 'u':
+ if (type || role)
+ usage(1);
+ user = 1;
+ break;
+ case 'r':
+ if (user || type)
+ usage(1);
+ role = 1;
+ break;
+ case 't':
+ if (user || role)
+ usage(1);
+ type=1;
+ break;
+ case 'h':
+ show_help=1;
+ break;
+ default:
+ usage (1);
+ }
+ }
rc = getcon(&buf);
if (rc < 0) {
fprintf(stderr, "%s: getcon() failed\n", argv[0]);
exit(2);
}
-
- printf("%s\n", buf);
+ if (show_help)
+ usage (0);
+ if (role || user || type) {
+ context_t context=context_new(buf);
+ if (user) {
+ printf("%s",context_user_get(context));
+ }
+ if (role) {
+ printf("%s",context_role_get(context));
+ }
+ if (type) {
+ printf("%s",context_type_get(context));
+ }
+ context_free(context);
+ } else {
+ printf("%s\n", buf);
+ }
freecon(buf);
exit(0);
}
--- libselinux-1.4/utils/Makefile.rhat 2003-12-19 15:37:51.815619330 -0500
+++ libselinux-1.4/utils/Makefile 2003-12-19 15:37:32.014789494 -0500
@@ -1,6 +1,5 @@
# Installation directories.
-PREFIX ?= $(DESTDIR)/usr
-BINDIR ?= $(PREFIX)/bin
+BINDIR ?= $(DESTDIR)/bin
CFLAGS = -Wall
override CFLAGS += -I../include