maintainer-feedback requested: [Bug 280092] ports-mgmt/pkg: Y/n question is accepted on interrupt or EOF

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 02 Jul 2024 16:53:21 UTC
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-pkg (Nobody)
<pkg@FreeBSD.org> for maintainer-feedback:
Bug 280092: ports-mgmt/pkg: Y/n question is accepted on interrupt or EOF
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=280092



--- Description ---
When DEFAULT_ALWAYS_YES is set, pressing Ctrl-C or Ctrl-D at a pkg(8) 1.21.3 
prompt results in accepting the question (at least for fetch and install; for
remove, only Ctrl-D accepts...).  This is most definitely not what the user
expects.

# env DEFAULT_ALWAYS_YES=true pkg install wget
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
...
The following 1 package(s) will be affected (of 0 checked):

New packages to be INSTALLED:
	wget: 1.24.5 [FreeBSD]

Number of packages to be installed: 1

The process will require 4 MiB more space.
774 KiB to be downloaded.

Proceed with this action? [Y/n]: ^C
[1/1] Fetching wget-1.24.5.pkg: 100%  774 KiB 793.1kB/s    00:01    
Checking integrity... done (0 conflicting)
[1/1] Installing wget-1.24.5...
[1/1] Extracting wget-1.24.5: 100%


Instead, being interrupted (or getting EOF) should always result in a negative
answer.  One can probably check that the function read at least one character
(the newline).