diff options
author | jkh <jkh@FreeBSD.org> | 2000-03-18 08:46:23 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 2000-03-18 08:46:23 +0000 |
commit | 1ed162731b0b7073dfba31f1298772cd6947d679 (patch) | |
tree | f95642cfffacf5a0ad95cb8c2eab89ccda5a94d1 /release | |
parent | 3bd4e62fed69d468cdb15c7bd8c83c0564d3d181 (diff) | |
download | FreeBSD-src-1ed162731b0b7073dfba31f1298772cd6947d679.zip FreeBSD-src-1ed162731b0b7073dfba31f1298772cd6947d679.tar.gz |
We still need a hack for rsaref package; add it. This doesn't
affect CDs since they don't contain the rsaref package anyway.
Diffstat (limited to 'release')
-rw-r--r-- | release/sysinstall/install.c | 7 | ||||
-rw-r--r-- | release/sysinstall/package.c | 8 |
2 files changed, 13 insertions, 2 deletions
diff --git a/release/sysinstall/install.c b/release/sysinstall/install.c index 42e8fcb..67f1bb8 100644 --- a/release/sysinstall/install.c +++ b/release/sysinstall/install.c @@ -52,6 +52,11 @@ #include <unistd.h> #include <termios.h> +/* Hack for rsaref package add, which displays interactive license. + * Used by package.c + */ +int _interactiveHack; + static void create_termcap(void); static void fixit_common(void); @@ -572,6 +577,7 @@ nodisks: "load the rsaref package from the current media? Some restrictions on\n" "usage may apply, so be sure to read the package installation output!")) { dialog_clear(); + _interactiveHack = 1; if (DITEM_STATUS(package_add("rsaref")) != DITEM_SUCCESS) { msgConfirm("Unable to find an rsaref package on the current intallation media.\n" "This is probably because you are installing from a CDROM which\n" @@ -581,6 +587,7 @@ nodisks: "the rsaref package manually through the Packages menu."); } dialog_clear(); + _interactiveHack = 0; } } else { diff --git a/release/sysinstall/package.c b/release/sysinstall/package.c index 8901d08..732f643 100644 --- a/release/sysinstall/package.c +++ b/release/sysinstall/package.c @@ -166,9 +166,13 @@ package_extract(Device *dev, char *name, Boolean depended) pipe(pfd); pid = fork(); if (!pid) { + extern int _interactiveHack; + dup2(pfd[0], 0); close(pfd[0]); - dup2(DebugFD, 1); - close(2); + if (!_interactiveHack) { + dup2(DebugFD, 1); + close(2); + } close(pfd[1]); if (isDebug()) i = execl("/usr/sbin/pkg_add", "/usr/sbin/pkg_add", "-v", "-", 0); |