diff options
author | Andrew Morgan <morgan@kernel.org> | 2007-07-18 00:02:08 -0700 |
---|---|---|
committer | Andrew Morgan <morgan@kernel.org> | 2007-08-13 23:33:12 -0700 |
commit | e6033df7d6f7f913a1807964b770daf7f3567d96 (patch) | |
tree | 9ce41a914064fac2f497d4b0acc43728c4c8f084 /progs | |
parent | cd27cfaf1b6559296e2cbd357079f93f438b1458 (diff) | |
download | libcap2-e6033df7d6f7f913a1807964b770daf7f3567d96.tar.gz |
Add tentitive support for filesystem capabilities with 2.6.23-mm kernels
Diffstat (limited to 'progs')
-rw-r--r-- | progs/Makefile | 7 | ||||
-rw-r--r-- | progs/getcap.c (renamed from progs/old/getcap.c) | 6 | ||||
-rw-r--r-- | progs/old/execcap.c (renamed from progs/execcap.c) | 0 | ||||
-rw-r--r-- | progs/old/setpcaps.c (renamed from progs/setpcaps.c) | 0 | ||||
-rw-r--r-- | progs/old/sucap.c (renamed from progs/sucap.c) | 0 | ||||
-rw-r--r-- | progs/setcap.c (renamed from progs/old/setcap.c) | 6 |
6 files changed, 11 insertions, 8 deletions
diff --git a/progs/Makefile b/progs/Makefile index 4caf90c..8058cfa 100644 --- a/progs/Makefile +++ b/progs/Makefile @@ -4,15 +4,12 @@ include $(topdir)/Make.Rules # # Programs: all of the examples that we will compile # -PROGS=getpcaps setpcaps execcap sucap - -# when we have filecaps... -#PROGS+=getcap setcap +PROGS=getpcaps getcap setcap all: $(PROGS) $(PROGS): %: %.o - $(CC) $(COPTFLAG) $(LDFLAGS) -o $@ $< $(LIBS) + $(CC) --static $(COPTFLAG) $(LDFLAGS) -o $@ $< $(LIBS) %.o: %.c $(INCS) $(CC) $(CFLAGS) -c $< -o $@ diff --git a/progs/old/getcap.c b/progs/getcap.c index 7561f1c..a647b61 100644 --- a/progs/old/getcap.c +++ b/progs/getcap.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 Andrew G. Morgan <morgan@kernel.org> + * Copyright (c) 1997,2007 Andrew G. Morgan <morgan@kernel.org> * * This displays the capabilities of a given file. */ @@ -7,6 +7,7 @@ #include <errno.h> #include <stdio.h> #include <string.h> +#include <stdlib.h> #include <sys/capability.h> static void usage(void) @@ -43,6 +44,9 @@ int main(int argc, char **argv) result = cap_to_text(cap_d, &length); fprintf(stderr, "Capabilities for `%s':\n%s\n", *argv, result); + + cap_free(result); + cap_free(cap_d); } return 0; diff --git a/progs/execcap.c b/progs/old/execcap.c index 330cc93..330cc93 100644 --- a/progs/execcap.c +++ b/progs/old/execcap.c diff --git a/progs/setpcaps.c b/progs/old/setpcaps.c index 3720fce..3720fce 100644 --- a/progs/setpcaps.c +++ b/progs/old/setpcaps.c diff --git a/progs/sucap.c b/progs/old/sucap.c index 366a093..366a093 100644 --- a/progs/sucap.c +++ b/progs/old/sucap.c diff --git a/progs/old/setcap.c b/progs/setcap.c index ebf8608..d4a2ee4 100644 --- a/progs/old/setcap.c +++ b/progs/setcap.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 Andrew G. Morgan <morgan@kernel.org> + * Copyright (c) 1997,2007 Andrew G. Morgan <morgan@kernel.org> * * This sets the capabilities of a given file. */ @@ -7,6 +7,7 @@ #include <errno.h> #include <stdio.h> #include <string.h> +#include <stdlib.h> #include <sys/capability.h> #include <unistd.h> @@ -97,13 +98,14 @@ int main(int argc, char **argv) usage(); retval = cap_set_file(*++argv, cap_d); - if (retval != 0) { fprintf(stderr, "Failed to set capabilities on file `%s'\n" " (%s)\n", argv[0], strerror(errno)); usage(); } + + cap_free(cap_d); } return 0; |