[Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)
- Reply: bugzilla-noreply_a_freebsd.org: "maintainer-feedback requested: [Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 269433] ports-mgmt/pkg Segfault on malformed pkg.conf content (pkg_env)"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 09 Feb 2023 10:38:25 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=269433
Bug ID: 269433
Summary: ports-mgmt/pkg Segfault on malformed pkg.conf content
(pkg_env)
Product: Ports & Packages
Version: Latest
Hardware: amd64
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: Individual Port(s)
Assignee: pkg@FreeBSD.org
Reporter: theo.bertin@advens.fr
Assignee: pkg@FreeBSD.org
Flags: maintainer-feedback?(pkg@FreeBSD.org)
There seems to be a bug in the way pkg handles options in pkg.conf
(/usr/local/etc/pkg.conf).
Problem was initially detected on an HardenedBSD 13.1-STABLE, but was
reproduced on a fresh FreeBSD 13.1-RELEASE downloaded today:
- FreeBSD 13.1-RELEASE: uname -aKU = FreeBSD freebsd 13.1-RELEASE FreeBSD
13.1-RELEASE releng/13.1-n250148-fc952ac2212 GENERIC amd64 1301000 1301000
- pkg -vv:
Version : 1.19.0
PKG_DBDIR = "/var/db/pkg";
PKG_CACHEDIR = "/var/cache/pkg";
PORTSDIR = "/usr/ports";
INDEXDIR = "";
INDEXFILE = "INDEX-13";
HANDLE_RC_SCRIPTS = false;
DEFAULT_ALWAYS_YES = false;
ASSUME_ALWAYS_YES = false;
REPOS_DIR [
"/etc/pkg/",
"/usr/local/etc/pkg/repos/",
]
PLIST_KEYWORDS_DIR = "";
SYSLOG = true;
ABI = "FreeBSD:13:amd64";
ALTABI = "freebsd:13:x86:64";
DEVELOPER_MODE = false;
VULNXML_SITE = "http://vuxml.freebsd.org/freebsd/vuln.xml.xz";
FETCH_RETRY = 3;
PKG_PLUGINS_DIR = "/usr/local/lib/pkg/";
PKG_ENABLE_PLUGINS = true;
PLUGINS [
]
DEBUG_SCRIPTS = false;
PLUGINS_CONF_DIR = "/usr/local/etc/pkg/";
PERMISSIVE = false;
REPO_AUTOUPDATE = true;
NAMESERVER = "";
HTTP_USER_AGENT = "pkg/1.19.0";
EVENT_PIPE = "";
FETCH_TIMEOUT = 30;
UNSET_TIMESTAMP = false;
SSH_RESTRICT_DIR = "";
PKG_ENV {
}
ABI
Repositories:
FreeBSD: {
url : "pkg+http://pkg.FreeBSD.org/FreeBSD:13:amd64/quarterly",
enabled : yes,
priority : 0,
mirror_type : "SRV",
signature_type : "FINGERPRINTS",
fingerprints : "/usr/share/keys/pkg"
}
How to reproduce:
- install pkg
- install some package (step likely not necessary)
- edit /usr/local/etc/pkg.conf and add the following lines (without the "-"'s):
---------------------------------------
pkg_env {}
PKG_ENV : {
http_proxy: "http://10.0.0.1:3128"
https_proxy: "http://10.0.0.1:3128"
ftp_proxy: "http://10.0.0.1:3128"
}
---------------------------------------
- try doing a `pkg info`:
root@freebsd:~ # pkg info
gettext-runtime-0.21.1 GNU gettext runtime libraries and programs
indexinfo-0.3.1 Utility to regenerate the GNU info page index
libffi-3.4.4 Foreign Function Interface
mpdecimal-2.5.1 C/C++ arbitrary precision decimal floating point
libraries
pkg-1.19.0 Package manager
python39-3.9.16 Interpreted object-oriented programming language
readline-8.2.0 Library for editing command lines as they are
typed
vim-9.0.0981 Improved version of the vi editor (console
flavor)
Child process pid=1149 terminated abnormally: Segmentation fault
root@freebsd:~ #
The configuration is obviously wrong, but pkg shouldn't segfault on this.
After some testing, it seems that:
- pkg doesn't fail if multiple lines with same case are in the file ('pkg_env
{}' plus 'pkg_env : {...}')
- pkg fails when multiple lines are present, with a different casing ('pkg_env
{}' plus 'PKG_ENV : {...}')
I don't know if this bug occurs only for the pkg_env option, or other
parameters as well.
--
You are receiving this mail because:
You are the assignee for the bug.