[Bug 268479] lib/libc/stdlib/getenv.c may have a problem with putenv()
Date: Wed, 21 Dec 2022 20:25:41 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=268479
--- Comment #4 from Mark Millard <marklmi26-fbsd@yahoo.com> ---
(In reply to Dennis Clarke from comment #3)
FreeBSD and poudriere depend on using UNAME_[rvmp]= . . .
assignments, expecting the relevant changes to appear
in the specific activities targetted:
# grep -r UNAME_ /usr/local/share/poudriere/
/usr/local/share/poudriere/jail.sh: -e
's#:\(setenv.*\),UNAME_r=.*UNAME_v=FreeBSD.*,OSVERSION=[^:,]*\([,:]\)#:\1\2#' \
/usr/local/share/poudriere/jail.sh: -e
's#:\(setenv.*\),UNAME_m=.*,UNAME_p=[^:,]*\([,:]\)#:\1\2#' \
/usr/local/share/poudriere/common.sh: login_env=",UNAME_r=${version%
*},UNAME_v=FreeBSD ${version},OSVERSION=${osversion}"
/usr/local/share/poudriere/common.sh:
login_env="${login_env},UNAME_m=${arch%.*},UNAME_p=${arch#*.}"
/usr/local/share/poudriere/common.sh: sed -i "" -e "s/,UNAME_r.*:/:/ ;
s/:\(setenv.*\):/:\1${login_env}:/" \
/usr/local/share/poudriere/common.sh: export "UNAME_r=${version% *}"
/usr/local/share/poudriere/common.sh: export "UNAME_v=FreeBSD ${version}"
/usr/local/share/poudriere/common.sh: export "UNAME_m=${arch%.*}"
/usr/local/share/poudriere/common.sh: export "UNAME_p=${arch#*.}"
/usr/local/share/poudriere/common.sh: unset UNAME_r
/usr/local/share/poudriere/common.sh: unset UNAME_v
/usr/local/share/poudriere/common.sh: unset UNAME_m
/usr/local/share/poudriere/common.sh: unset UNAME_p
# grep -r "UNAME_[rvmp]" /usr/main-src/ | more
/usr/main-src/release/Makefile.gce: env UNAME_r=${UNAME_r} make -C
${PORTSDIR}/net/google-cloud-sdk BATCH=1 all install clean
/usr/main-src/release/release.sh:
UNAME_r=${REVISION}-${BRANCH}
/usr/main-src/release/release.sh:
PBUILD_FLAGS="${PBUILD_FLAGS} UNAME_r=${UNAME_r}"
/usr/main-src/release/release.sh: UNAME_r=${REVISION}-${BRANCH}
/usr/main-src/release/release.sh: PBUILD_FLAGS="${PBUILD_FLAGS}
UNAME_r=${UNAME_r}"
/usr/main-src/release/Makefile.inc1:# Override UNAME_r to allow building ports
for a different branch.
/usr/main-src/release/Makefile.inc1:UNAME_r= ${REVISION}-${BRANCH}
/usr/main-src/release/Makefile.inc1:.export UNAME_r
/usr/main-src/release/Makefile.ec2: env - UNAME_r=${UNAME_r} PATH=$$PATH
make -C ${PORTSDIR}/net/bsdec2-image-upload BATCH=1 all install clean
/usr/main-src/release/Makefile.vagrant: env UNAME_r=${UNAME_r} make -C
${PORTSDIR}/ftp/curl BATCH=1 all install clean
/usr/main-src/release/Makefile.azure: env UNAME_r=${UNAME_r} make -C
${PORTSDIR}/sysutils/py-azure-cli BATCH=1 all install clean
/usr/main-src/release/Makefile.vm: env - UNAME_r=${UNAME_r} PATH=$$PATH
make -C ${PORTSDIR}/emulators/qemu-user-static BATCH=1 all install clean
/usr/main-src/release/tools/arm.subr: export UNAME_r=${REVISION}-${BRANCH}
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh: UNAME_r=$1
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh: if echo
${UNAME_r} | grep -qE '^[0-9.]+$'; then
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh:
UNAME_r="${UNAME_r}-RELEASE"
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh: export UNAME_r
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh:
UNAME_r=$(freebsd-version -j ${JAIL})
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh: if [ -z
${BASEDIR} ] || [ -z ${UNAME_r} ]; then
/usr/main-src/usr.sbin/freebsd-update/freebsd-update.sh: export UNAME_r
/usr/main-src/lib/libc/gen/__xuname.c: if ((p = getenv("UNAME_r")))
/usr/main-src/lib/libc/gen/__xuname.c: if ((p = getenv("UNAME_v")))
/usr/main-src/lib/libc/gen/__xuname.c: if ((p = getenv("UNAME_m")))
/usr/main-src/lib/libc/gen/uname.3:.It Ev UNAME_r
/usr/main-src/lib/libc/gen/uname.3:.Ev UNAME_r
/usr/main-src/lib/libc/gen/uname.3:.It Ev UNAME_v
/usr/main-src/lib/libc/gen/uname.3:.Ev UNAME_v
/usr/main-src/lib/libc/gen/uname.3:.It Ev UNAME_m
/usr/main-src/lib/libc/gen/uname.3:.Ev UNAME_m
/usr/main-src/tools/test/stress2/misc/ldt2.sh:1) Install wine. For example by
"UNAME_m=i386 pkg_add -r wine"
/usr/main-src/tools/test/stress2/misc/ldt2.sh:Remember to set the environment
variable UNAME_m to "i386".
/usr/main-src/tools/tools/nanobsd/dhcpd/common: CR "env UNAME_p=${NANO_ARCH}
TARGET=${NANO_ARCH} \
For what purpose do you want to avoid tracking what FreeBSD
is deliberately doing that controls FreeBSD's its later
behavior for some specific activity?
--
You are receiving this mail because:
You are the assignee for the bug.