Author: se Date: Tue Oct 27 11:29:11 2020 New Revision: 367075 URL: https://svnweb.freebsd.org/changeset/base/367075
Log: Replace literal uses of /usr/local in C sources with _PATH_LOCALBASE Literal references to /usr/local exist in a large number of files in the FreeBSD base system. Many are in contributed software, in configuration files, or in the documentation, but 19 uses have been identified in C source files or headers outside the contrib and sys/contrib directories. This commit makes it possible to set _PATH_LOCALBASE in paths.h to use a different prefix for locally installed software. In order to avoid changes to openssh source files, LOCALBASE is passed to the build via Makefiles under src/secure. While _PATH_LOCALBASE could have been used here, there is precedent in the construction of the path used to a xauth program which depends on the LOCALBASE value passed on the compiler command line to select a non-default directory. This could be changed in a later commit to make the openssh build consistently use _PATH_LOCALBASE. It is considered out-of-scope for this commit. Reviewed by: imp MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D26942 Modified: head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c head/lib/libc/nls/msgcat.c head/lib/libfetch/common.c head/sbin/nvmecontrol/nvmecontrol.c head/secure/lib/libssh/Makefile head/secure/usr.bin/ssh-agent/Makefile head/tools/tools/ath/athprom/athprom.c head/tools/tools/net80211/wesside/wesside/wesside.c head/usr.bin/fortune/fortune/pathnames.h head/usr.bin/mail/pathnames.h head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpimport.c head/usr.sbin/cpucontrol/cpucontrol.c head/usr.sbin/cron/cron/pathnames.h head/usr.sbin/mailwrapper/mailwrapper.c head/usr.sbin/pciconf/pathnames.h head/usr.sbin/pkg/config.c head/usr.sbin/pkg/config.h head/usr.sbin/pkg/pkg.c Modified: head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c ============================================================================== --- head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/crypto/openssh/regress/unittests/sshkey/test_sshkey.c Tue Oct 27 11:29:11 2020 (r367075) @@ -9,6 +9,7 @@ #include <sys/types.h> #include <sys/param.h> +#include <paths.h> #include <stdio.h> #ifdef HAVE_STDINT_H #include <stdint.h> @@ -79,7 +80,7 @@ build_cert(struct sshbuf *b, const struct sshkey *k, c critopts = sshbuf_new(); ASSERT_PTR_NE(critopts, NULL); - put_opt(critopts, "force-command", "/usr/local/bin/nethack"); + put_opt(critopts, "force-command", _PATH_LOCALBASE "/bin/nethack"); put_opt(critopts, "source-address", "192.168.0.0/24,127.0.0.1,::1"); exts = sshbuf_new(); Modified: head/lib/libc/nls/msgcat.c ============================================================================== --- head/lib/libc/nls/msgcat.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/lib/libc/nls/msgcat.c Tue Oct 27 11:29:11 2020 (r367075) @@ -49,6 +49,7 @@ __FBSDID("$FreeBSD$"); #include <fcntl.h> #include <limits.h> #include <nl_types.h> +#include <paths.h> #include <pthread.h> #include <stdio.h> #include <stdlib.h> @@ -58,7 +59,9 @@ __FBSDID("$FreeBSD$"); #include "../locale/xlocale_private.h" -#define _DEFAULT_NLS_PATH "/usr/share/nls/%L/%N.cat:/usr/share/nls/%N/%L:/usr/local/share/nls/%L/%N.cat:/usr/local/share/nls/%N/%L" +#define _DEFAULT_NLS_PATH "/usr/share/nls/%L/%N.cat:/usr/share/nls/%N/%L:" \ + _PATH_LOCALBASE "/share/nls/%L/%N.cat:" \ + _PATH_LOCALBASE "/share/nls/%N/%L" #define RLOCK(fail) { int ret; \ if (__isthreaded && \ Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/lib/libfetch/common.c Tue Oct 27 11:29:11 2020 (r367075) @@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$"); #include <fcntl.h> #include <inttypes.h> #include <netdb.h> +#include <paths.h> #include <poll.h> #include <pwd.h> #include <stdarg.h> @@ -1071,7 +1072,7 @@ fetch_ssl_setup_transport_layer(SSL_CTX *ctx, int verb /* * Configure peer verification based on environment. */ -#define LOCAL_CERT_FILE "/usr/local/etc/ssl/cert.pem" +#define LOCAL_CERT_FILE _PATH_LOCALBASE "/etc/ssl/cert.pem" #define BASE_CERT_FILE "/etc/ssl/cert.pem" static int fetch_ssl_setup_peer_verification(SSL_CTX *ctx, int verbose) Modified: head/sbin/nvmecontrol/nvmecontrol.c ============================================================================== --- head/sbin/nvmecontrol/nvmecontrol.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/sbin/nvmecontrol/nvmecontrol.c Tue Oct 27 11:29:11 2020 (r367075) @@ -179,7 +179,7 @@ main(int argc, char *argv[]) cmd_init(); cmd_load_dir("/lib/nvmecontrol", NULL, NULL); - cmd_load_dir("/usr/local/lib/nvmecontrol", NULL, NULL); + cmd_load_dir(_PATH_LOCALBASE "/lib/nvmecontrol", NULL, NULL); cmd_dispatch(argc, argv, NULL); Modified: head/secure/lib/libssh/Makefile ============================================================================== --- head/secure/lib/libssh/Makefile Tue Oct 27 09:53:49 2020 (r367074) +++ head/secure/lib/libssh/Makefile Tue Oct 27 11:29:11 2020 (r367075) @@ -53,6 +53,10 @@ CFLAGS+= -include krb5_config.h SRCS+= krb5_config.h .endif +.if defined(LOCALBASE) +CFLAGS+= -D_PATH_SSH_ASKPASS_DEFAULT='"${LOCALBASE}/bin/ssh-askpass"' +.endif + NO_LINT= LIBADD+= crypto crypt z Modified: head/secure/usr.bin/ssh-agent/Makefile ============================================================================== --- head/secure/usr.bin/ssh-agent/Makefile Tue Oct 27 09:53:49 2020 (r367074) +++ head/secure/usr.bin/ssh-agent/Makefile Tue Oct 27 11:29:11 2020 (r367075) @@ -16,6 +16,10 @@ CFLAGS+= -DHAVE_LDNS=1 #LDADD+= -lldns .endif +.if defined(LOCALBASE) +CFLAGS+= -DDEFAULT_PKCS11_WHITELIST='"/usr/lib*/*,${LOCALBASE}/lib*/*"' +.endif + LIBADD+= crypto .include <bsd.prog.mk> Modified: head/tools/tools/ath/athprom/athprom.c ============================================================================== --- head/tools/tools/ath/athprom/athprom.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/tools/tools/ath/athprom/athprom.c Tue Oct 27 11:29:11 2020 (r367075) @@ -41,12 +41,13 @@ #include <getopt.h> #include <errno.h> #include <err.h> +#include <paths.h> #include <stdlib.h> #include <string.h> #include <ctype.h> #ifndef DIR_TEMPLATE -#define DIR_TEMPLATE "/usr/local/libdata/athprom" +#define DIR_TEMPLATE _PATH_LOCALBASE "/libdata/athprom" #endif struct ath_diag atd; Modified: head/tools/tools/net80211/wesside/wesside/wesside.c ============================================================================== --- head/tools/tools/net80211/wesside/wesside/wesside.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/tools/tools/net80211/wesside/wesside/wesside.c Tue Oct 27 11:29:11 2020 (r367075) @@ -32,6 +32,7 @@ #include <netinet/ip.h> #include <netinet/udp.h> #include <arpa/inet.h> +#include <paths.h> #include <stdlib.h> #include <stdio.h> #include <unistd.h> @@ -154,7 +155,7 @@ unsigned int min_prga = 128; * XXX builtin pathnames */ #define CRACK_LOCAL_CMD "../aircrack/aircrack" -#define CRACK_INSTALL_CMD "/usr/local/bin/aircrack" +#define CRACK_INSTALL_CMD _PATH_LOCALBASE "/bin/aircrack" #define INCR 10000 int thresh_incr = INCR; Modified: head/usr.bin/fortune/fortune/pathnames.h ============================================================================== --- head/usr.bin/fortune/fortune/pathnames.h Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.bin/fortune/fortune/pathnames.h Tue Oct 27 11:29:11 2020 (r367075) @@ -30,5 +30,7 @@ * $FreeBSD$ */ +#include <paths.h> + #define FORTDIR "/usr/share/games/fortune:" \ - "/usr/local/share/games/fortune" + _PATH_LOCALBASE "/share/games/fortune" Modified: head/usr.bin/mail/pathnames.h ============================================================================== --- head/usr.bin/mail/pathnames.h Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.bin/mail/pathnames.h Tue Oct 27 11:29:11 2020 (r367075) @@ -33,8 +33,10 @@ * $FreeBSD$ */ +#include <paths.h> + #define _PATH_EX "/usr/bin/ex" #define _PATH_HELP "/usr/share/misc/mail.help" #define _PATH_TILDE "/usr/share/misc/mail.tildehelp" -#define _PATH_MASTER_RC "/usr/share/misc/mail.rc:/usr/local/etc/mail.rc:/etc/mail.rc" +#define _PATH_MASTER_RC "/usr/share/misc/mail.rc:" _PATH_LOCALBASE "/etc/mail.rc:/etc/mail.rc" #define _PATH_LESS "/usr/bin/less" Modified: head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpimport.c ============================================================================== --- head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpimport.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/bsnmpd/tools/libbsnmptools/bsnmpimport.c Tue Oct 27 11:29:11 2020 (r367075) @@ -81,6 +81,7 @@ #include <err.h> #include <errno.h> #include <fcntl.h> +#include <paths.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -148,7 +149,7 @@ static int32_t pbchar = -1; static const char *paths[MAX_PATHS + 1] = { "/usr/share/snmp/defs", - "/usr/local/share/snmp/defs", + _PATH_LOCALBASE "/share/snmp/defs", NULL }; Modified: head/usr.sbin/cpucontrol/cpucontrol.c ============================================================================== --- head/usr.sbin/cpucontrol/cpucontrol.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/cpucontrol/cpucontrol.c Tue Oct 27 11:29:11 2020 (r367075) @@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$"); #include <errno.h> #include <dirent.h> #include <fcntl.h> +#include <paths.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -59,7 +60,7 @@ __FBSDID("$FreeBSD$"); int verbosity_level = 0; -#define DEFAULT_DATADIR "/usr/local/share/cpucontrol" +#define DEFAULT_DATADIR _PATH_LOCALBASE "/share/cpucontrol" #define FLAG_I 0x01 #define FLAG_M 0x02 Modified: head/usr.sbin/cron/cron/pathnames.h ============================================================================== --- head/usr.sbin/cron/cron/pathnames.h Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/cron/cron/pathnames.h Tue Oct 27 11:29:11 2020 (r367075) @@ -59,7 +59,7 @@ /* 4.3BSD-style crontab */ #define SYSCRONTAB "/etc/crontab" #define SYSCRONTABS "/etc/cron.d" -#define LOCALSYSCRONTABS "/usr/local/etc/cron.d" +#define LOCALSYSCRONTABS _PATH_LOCALBASE "/etc/cron.d" /* what editor to use if no EDITOR or VISUAL * environment variable specified. Modified: head/usr.sbin/mailwrapper/mailwrapper.c ============================================================================== --- head/usr.sbin/mailwrapper/mailwrapper.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/mailwrapper/mailwrapper.c Tue Oct 27 11:29:11 2020 (r367075) @@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$"); #include <sys/param.h> #include <err.h> +#include <paths.h> #include <stdio.h> #include <string.h> #include <unistd.h> @@ -105,7 +106,7 @@ main(int argc, char *argv[], char *envp[]) addarg(&al, argv[0]); snprintf(localmailerconf, MAXPATHLEN, "%s/etc/mail/mailer.conf", - getenv("LOCALBASE") ? getenv("LOCALBASE") : "/usr/local"); + getenv("LOCALBASE") ? getenv("LOCALBASE") : _PATH_LOCALBASE); mailerconf = localmailerconf; if ((config = fopen(localmailerconf, "r")) == NULL) Modified: head/usr.sbin/pciconf/pathnames.h ============================================================================== --- head/usr.sbin/pciconf/pathnames.h Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/pciconf/pathnames.h Tue Oct 27 11:29:11 2020 (r367075) @@ -1,4 +1,6 @@ /* $FreeBSD$ */ +#include <paths.h> + #define _PATH_DEVPCI "/dev/pci" #define _PATH_PCIVDB "/usr/share/misc/pci_vendors" -#define _PATH_LPCIVDB "/usr/local/share/pciids/pci.ids" +#define _PATH_LPCIVDB _PATH_LOCALBASE "/share/pciids/pci.ids" Modified: head/usr.sbin/pkg/config.c ============================================================================== --- head/usr.sbin/pkg/config.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/pkg/config.c Tue Oct 27 11:29:11 2020 (r367075) @@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$"); #include <ucl.h> #include <err.h> #include <errno.h> +#include <paths.h> #include <stdbool.h> #include <unistd.h> @@ -454,7 +455,7 @@ config_init(void) } /* Read LOCALBASE/etc/pkg.conf first. */ - localbase = getenv("LOCALBASE") ? getenv("LOCALBASE") : _LOCALBASE; + localbase = getenv("LOCALBASE") ? getenv("LOCALBASE") : _PATH_LOCALBASE; snprintf(confpath, sizeof(confpath), "%s/etc/pkg.conf", localbase); Modified: head/usr.sbin/pkg/config.h ============================================================================== --- head/usr.sbin/pkg/config.h Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/pkg/config.h Tue Oct 27 11:29:11 2020 (r367075) @@ -31,7 +31,8 @@ #ifndef _PKG_CONFIG_H #define _PKG_CONFIG_H -#define _LOCALBASE "/usr/local" +#include <paths.h> + #define URL_SCHEME_PREFIX "pkg+" typedef enum { Modified: head/usr.sbin/pkg/pkg.c ============================================================================== --- head/usr.sbin/pkg/pkg.c Tue Oct 27 09:53:49 2020 (r367074) +++ head/usr.sbin/pkg/pkg.c Tue Oct 27 11:29:11 2020 (r367075) @@ -1046,7 +1046,7 @@ main(int argc, char *argv[]) yes = false; snprintf(pkgpath, MAXPATHLEN, "%s/sbin/pkg", - getenv("LOCALBASE") ? getenv("LOCALBASE") : _LOCALBASE); + getenv("LOCALBASE") ? getenv("LOCALBASE") : _PATH_LOCALBASE); if (argc > 1 && strcmp(argv[1], "bootstrap") == 0) { bootstrap_only = true; _______________________________________________ svn-src-head@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/svn-src-head To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"