-Index: lib/fsm.c
+Index: rpmsx.c
===================================================================
-RCS file: /cvs/devel/rpm/lib/fsm.c,v
-retrieving revision 2.101
-retrieving revision 2.102
-diff -u -u -r2.101 -r2.102
---- rpm/lib/fsm.c 5 Jan 2004 14:09:47 -0000 2.101
-+++ rpm/lib/fsm.c 9 Jan 2004 23:20:07 -0000 2.102
-@@ -2152,7 +2152,7 @@
- }
- break;
- case FSM_LSETFCON:
-- if (fsm->fcontext == NULL)
-+ if (fsm->fcontext == NULL || *fsm->fcontext == '\0')
- break;
- rc = lsetfilecon(fsm->path, (security_context_t)fsm->fcontext);
- if (_fsm_debug && (stage & FSM_SYSCALL))
-Index: lib/rpmfi.c
-===================================================================
-RCS file: /cvs/devel/rpm/lib/rpmfi.c,v
-retrieving revision 2.52
-retrieving revision 2.54
-diff -u -u -r2.52 -r2.54
---- rpm/lib/rpmfi.c 5 Jan 2004 14:09:47 -0000 2.52
-+++ rpm/lib/rpmfi.c 9 Jan 2004 23:17:33 -0000 2.54
-@@ -1593,7 +1593,7 @@
- fi = rpmfiInit(fi, 0);
- if (fi != NULL)
- while (rpmfiNext(fi) >= 0) {
-- av[ac] = NULL;
-+ av[ac] = "";
- if (fcnb[ac] > 0) {
- av[ac] = t;
- t += fcnb[ac];
-@@ -1670,7 +1670,7 @@
- fi = rpmfiInit(fi, 0);
- if (fi != NULL)
- while (rpmfiNext(fi) >= 0) {
-- av[ac] = NULL;
-+ av[ac] = "";
- if (fcnb[ac] > 0) {
- av[ac] = t;
- t += fcnb[ac];
+RCS file: /cvs/devel/rpm/lib/rpmsx.c,v
+retrieving revision 2.6
+diff -u -u -r2.6 rpmsx.c
+--- rpm/lib/rpmsx.c 25 Dec 2003 23:00:45 -0000 2.6
++++ rpm/lib/rpmsx.c 17 Jan 2004 17:52:19 -0000
+@@ -316,7 +316,10 @@
+ /*@=branchstate@*/
+
+ if ((fp = fopen(fn, "r")) == NULL) {
+- perror(fn);
++ if (ENOENT == errno)
++ fprintf(stderr, _("Parsing SELinux file contexts skipped: %s: %s\n"), fn, strerror(errno));
++ else
++ perror(fn);
+ return -1;
+ }
+
+