pkgsrc/pkgtools/pkg_install
agc 2c27b9f1b5 Fix for pkg_delete on NFS from Anthony Mallet.
Problem analysis from Anthony:

	On Wednesday, at 23:52, Anthony Mallet wrote:
	> # rm -rf ~tmp && mkdir ~/tmp
	> # pkg_add -K ~/tmp/var/db/pkg -p ~/tmp /usr/pkgsrc/packages/All/digest-20080510.tgz
	> # pkg_add -U -K ~/tmp/var/db/pkg -p ~/tmp /usr/pkgsrc/packages/All/digest-20080510.tgz
	> pkg_delete: Couldn't remove package directory in `/home/tho/tmp/var/db/pkg/digest-20080510'
	> Also, the dir var/db/pkg/digest-20080510.xxxxxxx is never cleaned.
	>
	> The problem apparently is that pkg_delete finds some stalled NFS entries
	> (.nfs*) in the var/db/pkg/digest-20080510 dir, so it does not delete the
	> directory. Is this due to pkg_add not correctly closing file descriptors before
	> exec'ing pkg_delete? For instance, I really don't understand the logic in
	> check_already_installed() (add/perform.c:375) regarding the open() of +CONTENTS
	> which is almost never closed (and never used as well...). Shouldn't this be
	> closed before running pkg_delete?

	ktrace shows that the +CONTENTS file is open() by pkg_add, I believe this is in
	check_already_installed(), add/perform.c:381. Then pkg_delete is run and when
	it comes to deleting the pkgdir entry, it finds that .nfs file and aborts.

Bump version to 20110805
2011-08-05 07:04:28 +00:00
..
files Fix for pkg_delete on NFS from Anthony Mallet. 2011-08-05 07:04:28 +00:00
DESCR Merge pkg_install-20090201 from pkg_install-renovation branch. 2009-02-02 12:34:59 +00:00
INSTALL
Makefile net/libfetch is USE_BSD_MAKEFILE, pass ${BSD_MAKE_ENV} additionally for 2011-04-26 12:17:51 +00:00
MESSAGE Merge pkg_install-20090201 from pkg_install-renovation branch. 2009-02-02 12:34:59 +00:00
options.mk pkg_install-20100126: Actually support IPv6. 2010-01-26 15:48:13 +00:00
PLIST Add man pages for audit-packages and download-vulnerability-list which 2010-03-19 12:49:53 +00:00