- Fix error reporting of matchpathcon
This commit is contained in:
parent
645f93a8a5
commit
2d9b36b51e
@ -181,8 +181,8 @@ diff --exclude-from=exclude -N -u -r nsalibselinux/src/matchpathcon.c libselinux
|
|||||||
+}
|
+}
|
||||||
diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselinux-1.30.15/utils/matchpathcon.c
|
diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselinux-1.30.15/utils/matchpathcon.c
|
||||||
--- nsalibselinux/utils/matchpathcon.c 2006-05-18 12:11:17.000000000 -0400
|
--- nsalibselinux/utils/matchpathcon.c 2006-05-18 12:11:17.000000000 -0400
|
||||||
+++ libselinux-1.30.15/utils/matchpathcon.c 2006-06-20 11:30:26.000000000 -0400
|
+++ libselinux-1.30.15/utils/matchpathcon.c 2006-06-21 09:05:20.000000000 -0400
|
||||||
@@ -12,19 +12,43 @@
|
@@ -12,19 +12,44 @@
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -190,8 +190,8 @@ diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselin
|
|||||||
+ char *buf;
|
+ char *buf;
|
||||||
+ int rc = matchpathcon(path, 0, &buf);
|
+ int rc = matchpathcon(path, 0, &buf);
|
||||||
+ if (rc < 0) {
|
+ if (rc < 0) {
|
||||||
+ fprintf(stderr, "matchpathcon(%s) failed\n", path);
|
+ fprintf(stderr, "matchpathcon(%s) failed: %s\n", path, strerror(errno));
|
||||||
+ return 2;
|
+ return 1;
|
||||||
+ }
|
+ }
|
||||||
+ if (header)
|
+ if (header)
|
||||||
+ printf("%s\t%s\n", path, buf);
|
+ printf("%s\t%s\n", path, buf);
|
||||||
@ -210,6 +210,7 @@ diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselin
|
|||||||
int header=1, opt;
|
int header=1, opt;
|
||||||
+ int verify=0;
|
+ int verify=0;
|
||||||
+ int notrans=0;
|
+ int notrans=0;
|
||||||
|
+ int error=0;
|
||||||
|
|
||||||
if (argc < 2) usage(argv[0]);
|
if (argc < 2) usage(argv[0]);
|
||||||
|
|
||||||
@ -229,7 +230,7 @@ diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselin
|
|||||||
case 'f':
|
case 'f':
|
||||||
if (init) {
|
if (init) {
|
||||||
fprintf(stderr, "%s: -f and -p are exclusive\n", argv[0]);
|
fprintf(stderr, "%s: -f and -p are exclusive\n", argv[0]);
|
||||||
@@ -54,17 +78,29 @@
|
@@ -54,18 +79,30 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (i = optind; i < argc; i++) {
|
for (i = optind; i < argc; i++) {
|
||||||
@ -256,16 +257,18 @@ diff --exclude-from=exclude -N -u -r nsalibselinux/utils/matchpathcon.c libselin
|
|||||||
- freecon(buf);
|
- freecon(buf);
|
||||||
+ if (rc >= 0) {
|
+ if (rc >= 0) {
|
||||||
+ printf("%s has context %s, should be ", argv[i], con);
|
+ printf("%s has context %s, should be ", argv[i], con);
|
||||||
+ printmatchpathcon(argv[i], 0);
|
+ error += printmatchpathcon(argv[i], 0);
|
||||||
+ freecon(con);
|
+ freecon(con);
|
||||||
+ } else {
|
+ } else {
|
||||||
+ printf("actual context unknown: %s, should be ", strerror(errno));
|
+ printf("actual context unknown: %s, should be ", strerror(errno));
|
||||||
+ printmatchpathcon(argv[i], 0);
|
+ error += printmatchpathcon(argv[i], 0);
|
||||||
+ }
|
+ }
|
||||||
+ }
|
+ }
|
||||||
+ } else {
|
+ } else {
|
||||||
+ printmatchpathcon(argv[i], header);
|
+ error += printmatchpathcon(argv[i], header);
|
||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
matchpathcon_fini();
|
matchpathcon_fini();
|
||||||
return 0;
|
- return 0;
|
||||||
|
+ return error;
|
||||||
|
}
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
Summary: SELinux library and simple utilities
|
Summary: SELinux library and simple utilities
|
||||||
Name: libselinux
|
Name: libselinux
|
||||||
Version: 1.30.15
|
Version: 1.30.15
|
||||||
Release: 2
|
Release: 3
|
||||||
License: Public domain (uncopyrighted)
|
License: Public domain (uncopyrighted)
|
||||||
Group: System Environment/Libraries
|
Group: System Environment/Libraries
|
||||||
Source: http://www.nsa.gov/selinux/archives/%{name}-%{version}.tgz
|
Source: http://www.nsa.gov/selinux/archives/%{name}-%{version}.tgz
|
||||||
@ -117,6 +117,9 @@ exit 0
|
|||||||
%{_libdir}/python*/site-packages/selinux.py*
|
%{_libdir}/python*/site-packages/selinux.py*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Jun 21 2006 Dan Walsh <dwalsh@redhat.com> 1.30.15-3
|
||||||
|
- Fix error reporting of matchpathcon
|
||||||
|
|
||||||
* Mon Jun 19 2006 Dan Walsh <dwalsh@redhat.com> 1.30.15-2
|
* Mon Jun 19 2006 Dan Walsh <dwalsh@redhat.com> 1.30.15-2
|
||||||
- Add function to compare file context on disk versus contexts in file_contexts file.
|
- Add function to compare file context on disk versus contexts in file_contexts file.
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user