Compare commits
No commits in common. "c8" and "c9-beta" have entirely different histories.
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1 @@
|
||||
SOURCES/nfs4-acl-tools-0.3.5.tar.gz
|
||||
SOURCES/nfs4-acl-tools-0.4.2.tar.gz
|
||||
|
@ -1 +1 @@
|
||||
07e075ee51921ecb7529840919d62170a28b8762 SOURCES/nfs4-acl-tools-0.3.5.tar.gz
|
||||
9ca3d1e11ccfe372c99f2fbe0398806d814fa285 SOURCES/nfs4-acl-tools-0.4.2.tar.gz
|
||||
|
@ -1,76 +0,0 @@
|
||||
diff -up nfs4-acl-tools-0.3.5/man/man1/nfs4_getfacl.1.orig nfs4-acl-tools-0.3.5/man/man1/nfs4_getfacl.1
|
||||
--- nfs4-acl-tools-0.3.5/man/man1/nfs4_getfacl.1.orig 2018-08-21 12:07:51.000000000 -0400
|
||||
+++ nfs4-acl-tools-0.3.5/man/man1/nfs4_getfacl.1 2019-07-17 13:21:14.920774997 -0400
|
||||
@@ -28,6 +28,12 @@ flag is specified,
|
||||
.B nfs4_getfacl
|
||||
will list the NFSv4 ACLs of all files and directories recursively.
|
||||
|
||||
+If the
|
||||
+.BR -c / --omit-header
|
||||
+flag is specified,
|
||||
+.B nfs4_getfacl
|
||||
+will not display the comment header (Do not print filename).
|
||||
+
|
||||
The output format for an NFSv4 file ACL, e.g., is:
|
||||
.RS
|
||||
.nf
|
||||
diff -up nfs4-acl-tools-0.3.5/nfs4_getfacl/nfs4_getfacl.c.orig nfs4-acl-tools-0.3.5/nfs4_getfacl/nfs4_getfacl.c
|
||||
--- nfs4-acl-tools-0.3.5/nfs4_getfacl/nfs4_getfacl.c.orig 2019-07-17 13:23:47.030033107 -0400
|
||||
+++ nfs4-acl-tools-0.3.5/nfs4_getfacl/nfs4_getfacl.c 2019-07-17 13:23:12.818750147 -0400
|
||||
@@ -46,6 +46,7 @@ static void usage(int);
|
||||
static void more_help();
|
||||
static char *execname;
|
||||
static void print_acl_from_path();
|
||||
+static int ignore_comment = 0;
|
||||
|
||||
static int recursive(const char *fpath, const struct stat *sb, int tflag, struct FTW *ftwbuf)
|
||||
{
|
||||
@@ -57,6 +58,7 @@ static struct option long_options[] = {
|
||||
{"more-help", 0, 0, 'H' },
|
||||
{"help", 0, 0, 'h' },
|
||||
{"recursive", 0, 0, 'R' },
|
||||
+ {"omit-header", 0, 0, 'c'},
|
||||
{ NULL, 0, 0, 0, },
|
||||
};
|
||||
|
||||
@@ -73,7 +75,7 @@ int main(int argc, char **argv)
|
||||
goto out;
|
||||
}
|
||||
|
||||
- while ((opt = getopt_long(argc, argv, "HR?h", long_options, NULL)) != -1) {
|
||||
+ while ((opt = getopt_long(argc, argv, "HR?hc", long_options, NULL)) != -1) {
|
||||
switch(opt) {
|
||||
case 'H':
|
||||
more_help();
|
||||
@@ -83,7 +85,9 @@ int main(int argc, char **argv)
|
||||
case 'R':
|
||||
do_recursive = 1;
|
||||
break;
|
||||
-
|
||||
+ case 'c':
|
||||
+ ignore_comment = 1;
|
||||
+ break;
|
||||
default:
|
||||
usage(1);
|
||||
res = 0;
|
||||
@@ -115,8 +119,10 @@ static void print_acl_from_path(const ch
|
||||
struct nfs4_acl *acl;
|
||||
acl = nfs4_acl_for_path(fpath);
|
||||
if (acl != NULL) {
|
||||
- printf("\n# file: %s\n", fpath);
|
||||
+ if (ignore_comment == 0)
|
||||
+ printf("# file: %s\n", fpath);
|
||||
nfs4_print_acl(stdout, acl);
|
||||
+ printf("\n");
|
||||
nfs4_free_acl(acl);
|
||||
}
|
||||
}
|
||||
@@ -125,7 +131,7 @@ static void usage(int label)
|
||||
{
|
||||
if (label)
|
||||
fprintf(stderr, "%s %s -- get NFSv4 file or directory access control lists.\n", execname, VERSION);
|
||||
- fprintf(stderr, "Usage: %s [-R] file ...\n -H, --more-help\tdisplay ACL format information\n -?, -h, --help\tdisplay this help text\n -R --recursive\trecurse into subdirectories\n", execname);
|
||||
+ fprintf(stderr, "Usage: %s [-R] file ...\n -H, --more-help\tdisplay ACL format information\n -?, -h, --help\tdisplay this help text\n -R --recursive\trecurse into subdirectories\n -c, --omit-header\tDo not display the comment header (Do not print filename)\n", execname);
|
||||
}
|
||||
|
||||
static void more_help()
|
@ -1,135 +0,0 @@
|
||||
commit c9335db249eac09306a1432ebb2c4424bb30eb6f
|
||||
Author: Paul B. Henson <henson@acm.org>
|
||||
Date: Thu Aug 23 00:25:58 2018 +0000
|
||||
|
||||
Remove OWNER_AT, GROUP_AT, EVERYONE_AT flags
|
||||
|
||||
It's possible to set these bits using the "O", "G", and "E" in the flag
|
||||
field on the commandline. The bits are not part of the protocol and
|
||||
should not be sent or recieved. They have never been documented, and we
|
||||
don't know why they were added in the first place.
|
||||
|
||||
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
|
||||
|
||||
diff --git a/include/libacl_nfs4.h b/include/libacl_nfs4.h
|
||||
index 654061c..d3786c3 100644
|
||||
--- a/include/libacl_nfs4.h
|
||||
+++ b/include/libacl_nfs4.h
|
||||
@@ -54,9 +54,6 @@
|
||||
#define FLAG_SUCCESSFUL_ACCESS 'S'
|
||||
#define FLAG_FAILED_ACCESS 'F'
|
||||
#define FLAG_GROUP 'g'
|
||||
-#define FLAG_OWNER_AT 'O'
|
||||
-#define FLAG_GROUP_AT 'G'
|
||||
-#define FLAG_EVERYONE_AT 'E'
|
||||
|
||||
#define PERM_READ_DATA 'r'
|
||||
#define PERM_WRITE_DATA 'w'
|
||||
diff --git a/include/nfs4.h b/include/nfs4.h
|
||||
index c6d5b62..da6eefb 100644
|
||||
--- a/include/nfs4.h
|
||||
+++ b/include/nfs4.h
|
||||
@@ -62,9 +62,6 @@
|
||||
#define NFS4_ACE_SUCCESSFUL_ACCESS_ACE_FLAG 0x00000010
|
||||
#define NFS4_ACE_FAILED_ACCESS_ACE_FLAG 0x00000020
|
||||
#define NFS4_ACE_IDENTIFIER_GROUP 0x00000040
|
||||
-#define NFS4_ACE_OWNER 0x00000080
|
||||
-#define NFS4_ACE_GROUP 0x00000100
|
||||
-#define NFS4_ACE_EVERYONE 0x00000200
|
||||
|
||||
#define NFS4_ACE_READ_DATA 0x00000001
|
||||
#define NFS4_ACE_LIST_DIRECTORY 0x00000001
|
||||
diff --git a/libnfs4acl/nfs4_ace_from_string.c b/libnfs4acl/nfs4_ace_from_string.c
|
||||
index a7a3036..ab8401a 100644
|
||||
--- a/libnfs4acl/nfs4_ace_from_string.c
|
||||
+++ b/libnfs4acl/nfs4_ace_from_string.c
|
||||
@@ -209,15 +209,6 @@ struct nfs4_ace * nfs4_ace_from_string(char *ace_buf, int is_dir)
|
||||
case FLAG_GROUP:
|
||||
flags |= NFS4_ACE_IDENTIFIER_GROUP;
|
||||
break;
|
||||
- case FLAG_OWNER_AT:
|
||||
- flags |= NFS4_ACE_OWNER;
|
||||
- break;
|
||||
- case FLAG_GROUP_AT:
|
||||
- flags |= NFS4_ACE_GROUP;
|
||||
- break;
|
||||
- case FLAG_EVERYONE_AT:
|
||||
- flags |= NFS4_ACE_EVERYONE;
|
||||
- break;
|
||||
default:
|
||||
fprintf(stderr,"Bad Ace Flag:%c\n", *field);
|
||||
goto out_free;
|
||||
diff --git a/libnfs4acl/nfs4_get_ace_flags.c b/libnfs4acl/nfs4_get_ace_flags.c
|
||||
index 339a838..1d28ed4 100644
|
||||
--- a/libnfs4acl/nfs4_get_ace_flags.c
|
||||
+++ b/libnfs4acl/nfs4_get_ace_flags.c
|
||||
@@ -53,12 +53,6 @@ char* nfs4_get_ace_flags(struct nfs4_ace *ace, char *buf)
|
||||
*buf++ = FLAG_FAILED_ACCESS;;
|
||||
if (flags & NFS4_ACE_IDENTIFIER_GROUP)
|
||||
*buf++ = FLAG_GROUP;
|
||||
- if (flags & NFS4_ACE_OWNER)
|
||||
- *buf++ = FLAG_OWNER_AT;
|
||||
- if (flags & NFS4_ACE_GROUP)
|
||||
- *buf++ = FLAG_GROUP_AT;
|
||||
- if (flags & NFS4_ACE_EVERYONE)
|
||||
- *buf++ = FLAG_EVERYONE_AT;
|
||||
*buf = '\0';
|
||||
|
||||
return bp;
|
||||
diff --git a/libnfs4acl/nfs4_print_ace_verbose.c b/libnfs4acl/nfs4_print_ace_verbose.c
|
||||
index de9b424..96a6573 100644
|
||||
--- a/libnfs4acl/nfs4_print_ace_verbose.c
|
||||
+++ b/libnfs4acl/nfs4_print_ace_verbose.c
|
||||
@@ -131,12 +131,6 @@ int nfs4_print_ace_verbose(struct nfs4_ace * ace, u32 is_dir)
|
||||
printf("\t\tNFS4_ACE_FAILED_ACCESS_ACE_FLAG\n");
|
||||
if (flag & NFS4_ACE_IDENTIFIER_GROUP)
|
||||
printf("\t\tNFS4_ACE_IDENTIFIER_GROUP\n");
|
||||
- if (flag & NFS4_ACE_OWNER)
|
||||
- printf("\t\tNFS4_ACE_OWNER\n");
|
||||
- if (flag & NFS4_ACE_GROUP)
|
||||
- printf("\t\tNFS4_ACE_GROUP\n");
|
||||
- if (flag & NFS4_ACE_EVERYONE)
|
||||
- printf("\t\tNFS4_ACE_EVERYONE\n");
|
||||
|
||||
|
||||
mask = ace->access_mask;
|
||||
commit 5236e718f0d5dfb9008d3afed64aa642ea38d32e
|
||||
Author: Kenneth D'souza <kdsouza@redhat.com>
|
||||
Date: Tue Mar 26 19:41:09 2019 +0530
|
||||
|
||||
nfs4_setfacl: Skip comment field while reading ACE(s).
|
||||
|
||||
With commit 6630629bb661a7f48fb9856f7fd9616ce1499efa an additional field for filename
|
||||
was added due to which nfs4_setfacl failed to handle comments while reading ACE(s)
|
||||
from nfs4_getfacl output.
|
||||
This patch resolves the issue by skipping comment header.
|
||||
|
||||
With fix:
|
||||
|
||||
$ nfs4_setfacl --test -s "$(nfs4_getfacl file1)" file2
|
||||
## Test mode only - the resulting ACL for "/test/file2":
|
||||
A::OWNER@:rwatTcCy
|
||||
A:g:GROUP@:rtcy
|
||||
A::EVERYONE@:rtcy
|
||||
|
||||
Without fix:
|
||||
|
||||
$ nfs4_setfacl --test -s "$(nfs4_getfacl file1)" file2
|
||||
Failed while inserting ACE(s).
|
||||
|
||||
Signed-off-by: Kenneth D'souza <kdsouza@redhat.com>
|
||||
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
|
||||
|
||||
diff --git a/libnfs4acl/nfs4_insert_string_aces.c b/libnfs4acl/nfs4_insert_string_aces.c
|
||||
index 5a482d5..f93c3e9 100644
|
||||
--- a/libnfs4acl/nfs4_insert_string_aces.c
|
||||
+++ b/libnfs4acl/nfs4_insert_string_aces.c
|
||||
@@ -48,6 +48,8 @@ int nfs4_insert_string_aces(struct nfs4_acl *acl, const char *acl_spec, unsigned
|
||||
while ((ssp = strsep(&sp, ",\t\n\r")) != NULL) {
|
||||
if (!strlen(ssp))
|
||||
continue;
|
||||
+ if (*ssp == '#')
|
||||
+ continue;
|
||||
|
||||
if ((ace = nfs4_ace_from_string(ssp, acl->is_directory)) == NULL)
|
||||
goto out_failed;
|
25
SOURCES/nfs4-acl-tools-0.4.2-acl-ptr-null.patch
Normal file
25
SOURCES/nfs4-acl-tools-0.4.2-acl-ptr-null.patch
Normal file
@ -0,0 +1,25 @@
|
||||
commit ea0d882fa8c226ac27be4651f9550aa17d75462a
|
||||
Author: Steve Dickson <steved@redhat.com>
|
||||
Date: Mon Nov 21 14:07:58 2022 -0500
|
||||
|
||||
nfs4_getfacl: Initialize acl pointer to NULL
|
||||
|
||||
nfs4_getfacl.c: scope_hint: In function 'print_acl_from_path'
|
||||
nfs4_getfacl.c:168:17: warning[-Wmaybe-uninitialized]:
|
||||
'acl' may be used uninitialized in this function
|
||||
|
||||
Signed-off-by: Steve Dickson <steved@redhat.com>
|
||||
|
||||
diff --git a/nfs4_getfacl/nfs4_getfacl.c b/nfs4_getfacl/nfs4_getfacl.c
|
||||
index 954cf7e..ddb3005 100644
|
||||
--- a/nfs4_getfacl/nfs4_getfacl.c
|
||||
+++ b/nfs4_getfacl/nfs4_getfacl.c
|
||||
@@ -148,7 +148,7 @@ out:
|
||||
|
||||
static void print_acl_from_path(const char *fpath, enum acl_type type)
|
||||
{
|
||||
- struct nfs4_acl *acl;
|
||||
+ struct nfs4_acl *acl = NULL;
|
||||
|
||||
switch (type) {
|
||||
case ACL_TYPE_ACL:
|
@ -1,17 +1,16 @@
|
||||
Name: nfs4-acl-tools
|
||||
Version: 0.3.5
|
||||
Version: 0.4.2
|
||||
Release: 3%{?dist}
|
||||
Summary: The nfs4 ACL tools
|
||||
Group: Applications/System
|
||||
License: BSD
|
||||
URL: http://git.linux-nfs.org/?p=bfields/nfs4-acl-tools.git;a=summary
|
||||
Source0: http://linux-nfs.org/~bfields/nfs4-acl-tools/%{name}-%{version}.tar.gz
|
||||
|
||||
BuildRequires: make
|
||||
BuildRequires: libtool
|
||||
BuildRequires: libattr-devel
|
||||
|
||||
Patch001: nfs4-acl-tools-0.3.5-c-option.patch
|
||||
Patch002: nfs4-acl-tools-0.3.5-setfacl-skip-comment.patch
|
||||
Patch01: nfs4-acl-tools-0.4.2-acl-ptr-null.patch
|
||||
|
||||
%description
|
||||
This package contains commandline ACL utilities for the Linux
|
||||
@ -31,11 +30,7 @@ NFSv4 client.
|
||||
rm -rf %{buildroot}
|
||||
make DESTDIR=%{buildroot} install
|
||||
|
||||
%clean
|
||||
rm -rf %{buildroot}
|
||||
|
||||
%files
|
||||
%defattr(-,root,root)
|
||||
%doc COPYING INSTALL README TODO VERSION
|
||||
%{_bindir}/nfs4_editfacl
|
||||
%{_bindir}/nfs4_getfacl
|
||||
@ -44,25 +39,54 @@ rm -rf %{buildroot}
|
||||
%{_mandir}/man5/*
|
||||
|
||||
%changelog
|
||||
* Thu Jul 18 2019 Steve Dickson <steved@redhat.com> 0.3.5-2
|
||||
Gating tests: add gating.yaml (bz 1681966)
|
||||
* Wed Feb 21 2024 Pavel Reichl <preichl@redhat.com> - 0.4.2-3
|
||||
- Prepare gating tests (rhel-26256)
|
||||
|
||||
* Wed Jul 17 2019 Steve Dickson <steved@redhat.com> 0.3.5-2
|
||||
- nfs4_getfacl: Add new option -c/--omit-header (bz 1698281)
|
||||
- nfs4_setfacl: Skip comment field while reading ACE(s) (bz 1687299)
|
||||
* Tue Jun 6 2023 Steve Dickson <steved@redhat.com> - 0.4.2-2
|
||||
- Rebuild: nfs4_getfacl: Initialize acl pointer to NULL (bz 2144829)
|
||||
|
||||
* Wed Jul 17 2019 Steve Dickson <steved@redhat.com> 0.3.5-1
|
||||
- Gating tests: run tests from tests namespace (bz 1681966)
|
||||
* Mon Feb 13 2023 Steve Dickson <steved@redhat.com> - 0.4.2-1
|
||||
- nfs4_getfacl: Initialize acl pointer to NULL (bz 2144829)
|
||||
|
||||
* Sat Oct 6 2018 Steve Dickson <steved@redhat.com> 0.3.5-0
|
||||
- Updated to the latest upstream release: 0.3.5 (bz 1630606)
|
||||
* Tue Nov 15 2022 Steve Dickson <steved@redhat.com> - 0.4.2-0
|
||||
- Updated to the latest upstream release: nfs4-acl-tools-0.4.2 (bz 2059052)
|
||||
|
||||
* Tue Sep 18 2018 Troy Dawson <tdawson@redhat.com> - 0.3.4-1
|
||||
- Remove gui which was still a proof of concept
|
||||
- Resolves: bug#1542228
|
||||
* Wed Aug 18 2021 Steve Dickson <steved@redhat.com> - 0.3.5-8
|
||||
- nfs4_setfacl: Skip comment field while reading ACE(s) (bz 1970815)
|
||||
|
||||
* Tue Aug 14 2018 Steve Dickson <steved@redhat.com> 0.3.4-0
|
||||
- Updated to the latest upstream release: 0.3.4 (bz 1602029)
|
||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 0.3.5-7
|
||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||
Related: rhbz#1991688
|
||||
|
||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 0.3.5-6
|
||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.5-1
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Sat Oct 6 2018 Steve Dickson <steved@redhat.com> - 0.3.5-0
|
||||
- Updated to the latest upstream release: 0.3.5
|
||||
|
||||
* Sat Aug 4 2018 Steve Dickson <steved@redhat.com> - 0.3.4-0
|
||||
- Updated to latest upstream release: 0.3.4
|
||||
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.3-24
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.3-23
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 0.3.3-22
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
|
||||
|
Loading…
Reference in New Issue
Block a user