>>>>> "BN" == Bill Nottingham <notting@xxxxxxxxxx> writes: BN> It's actually a kudzu change, but you'd need to get the loader BN> built against new libkudzu. Thanks for the info! I rebuilt kudzu with that patch, then rebuilt anaconda (with the selinux policy hack) then incorporated those new packages into the distro and did a fresh buildinstall. The resulting images boot and load fine on the problem systems (without needing an extra net card) and correctly set up selinux. For posterity, the anaconda patch is below. If anyone actually wants the images, I'll be happy to send them along but I'm not sure how useful they'll be as you'd have to do a network install. --- loader2/selinux.c.uh 2005-03-23 10:27:27.000000000 -0600 +++ loader2/selinux.c 2006-02-15 18:48:28.332372412 -0600 @@ -28,30 +28,8 @@ #include "loadermisc.h" #include "log.h" -static char * getpolicyver() { - int fd; - char * buf; - - fd = open("/selinux/policyvers", O_RDONLY); - if (fd == -1) { - return NULL; - } - - buf = malloc(32); - buf = memset(buf, 0, 32); - if ((read(fd, buf, 32)) == -1) { - logMessage("error getting policy version: %s", strerror(errno)); - free(buf); - close(fd); - return NULL; - } - - close(fd); - return buf; -} - int loadpolicy() { - char * ver, * fn, * bfn; + char * fn, * bfn; char *paths[] = { "/tmp/updates", "/mnt/source/RHupdates", "/mnt/runtime/etc/selinux/targeted/policy", @@ -64,15 +42,10 @@ NULL }; int i, pid, status; - ver = getpolicyver(); - if (ver == NULL) { - return -1; - } - fn = malloc(128); fn = memset(fn, 0, 128); for (i = 0; paths[i]; i++) { - snprintf(fn, 128, "%s/policy.%s", (char *) paths[i], ver); + snprintf(fn, 128, "%s/policy.19", (char *) paths[i]); if (!access(fn, R_OK)) { break; } - J<