pkg_add is documented to fail if another package, specified with a @pkgdep command, cannot be installed. If the subject package cannot be found, pkg_add continues installation, later giving a misleading warning. packages installed with missing dependencies may cause the system to fail in unspecified ways. Suppose package A-1.0 depends on B-1.3, and B-1.3 includes important security fixes. If B-1.2 is already installed, and has the same "stuff" as B-1.3, A-1.0 will install and run. User may have an erroneous impression that B-1.3 with its fixes has been installed. Fix: There is faulty code in /usr/src/usr.sbin/pkg_install/add/perform.c The following patch seems to correct the problem, although it has not been exhaustively tested: How-To-Repeat: Since kermit is not shipped with 2.2.6, any package depending on kermit will successfully install, even though no kermit package is available. One example is: pkg_add minicom-1.78 A similar problem and fix /may/ exist for required packages requested by ftp URL. This has not been examined for this pr.
Responsible Changed From-To: freebsd-ports->jkh Jordan is the pkg_* man.
State Changed From-To: open->closed Supplied fixed committed to both branches; thanks!