On Sat, Dec 13, 2003 at 11:15:16AM -0500, Paul Mundt wrote: > Regardless, the reason you are seeing your toplevel minicom config being > touched is likely because you are getting -EPERM on the chroot(). For some > reason, if rpm fails to do the chroot() to the --root path, it still continues > on with the install silently without complaining loudly and bailing. > This patch against current CVS should fix that, if anyone is interested in this behavior. Index: lib/transaction.c =================================================================== RCS file: /cvs/devel/rpm/lib/transaction.c,v retrieving revision 1.301 diff -u -r1.301 transaction.c --- lib/transaction.c 23 Nov 2003 19:50:55 -0000 1.301 +++ lib/transaction.c 13 Dec 2003 16:35:23 -0000 @@ -1124,8 +1124,13 @@ const char * rootDir = rpmtsRootDir(ts); xx = chdir("/"); /*@-superuser -noeffect @*/ - if (rootDir != NULL) - xx = chroot(rootDir); + if (rootDir != NULL) { + if ((xx = chroot(rootDir)) != 0) { + perror("chroot"); + return -1; + } + } + /*@=superuser =noeffect @*/ (void) rpmtsSetChrootDone(ts, 1); }
Attachment:
pgp00012.pgp
Description: PGP signature