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
This commit is contained in:
parent
7b39bef2cf
commit
1f474190fc
@ -9,6 +9,7 @@
|
|||||||
|
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#ifdef HAVE_STDINT_H
|
#ifdef HAVE_STDINT_H
|
||||||
#include <stdint.h>
|
#include <stdint.h>
|
||||||
@ -79,7 +80,7 @@ build_cert(struct sshbuf *b, const struct sshkey *k, const char *type,
|
|||||||
|
|
||||||
critopts = sshbuf_new();
|
critopts = sshbuf_new();
|
||||||
ASSERT_PTR_NE(critopts, NULL);
|
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");
|
put_opt(critopts, "source-address", "192.168.0.0/24,127.0.0.1,::1");
|
||||||
|
|
||||||
exts = sshbuf_new();
|
exts = sshbuf_new();
|
||||||
|
@ -49,6 +49,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <limits.h>
|
#include <limits.h>
|
||||||
#include <nl_types.h>
|
#include <nl_types.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <pthread.h>
|
#include <pthread.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
@ -58,7 +59,9 @@ __FBSDID("$FreeBSD$");
|
|||||||
|
|
||||||
#include "../locale/xlocale_private.h"
|
#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; \
|
#define RLOCK(fail) { int ret; \
|
||||||
if (__isthreaded && \
|
if (__isthreaded && \
|
||||||
|
@ -44,6 +44,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#include <inttypes.h>
|
#include <inttypes.h>
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <poll.h>
|
#include <poll.h>
|
||||||
#include <pwd.h>
|
#include <pwd.h>
|
||||||
#include <stdarg.h>
|
#include <stdarg.h>
|
||||||
@ -1071,7 +1072,7 @@ fetch_ssl_setup_transport_layer(SSL_CTX *ctx, int verbose)
|
|||||||
/*
|
/*
|
||||||
* Configure peer verification based on environment.
|
* 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"
|
#define BASE_CERT_FILE "/etc/ssl/cert.pem"
|
||||||
static int
|
static int
|
||||||
fetch_ssl_setup_peer_verification(SSL_CTX *ctx, int verbose)
|
fetch_ssl_setup_peer_verification(SSL_CTX *ctx, int verbose)
|
||||||
|
@ -179,7 +179,7 @@ main(int argc, char *argv[])
|
|||||||
cmd_init();
|
cmd_init();
|
||||||
|
|
||||||
cmd_load_dir("/lib/nvmecontrol", NULL, NULL);
|
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);
|
cmd_dispatch(argc, argv, NULL);
|
||||||
|
|
||||||
|
@ -53,6 +53,10 @@ CFLAGS+= -include krb5_config.h
|
|||||||
SRCS+= krb5_config.h
|
SRCS+= krb5_config.h
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.if defined(LOCALBASE)
|
||||||
|
CFLAGS+= -D_PATH_SSH_ASKPASS_DEFAULT='"${LOCALBASE}/bin/ssh-askpass"'
|
||||||
|
.endif
|
||||||
|
|
||||||
NO_LINT=
|
NO_LINT=
|
||||||
|
|
||||||
LIBADD+= crypto crypt z
|
LIBADD+= crypto crypt z
|
||||||
|
@ -16,6 +16,10 @@ CFLAGS+= -DHAVE_LDNS=1
|
|||||||
#LDADD+= -lldns
|
#LDADD+= -lldns
|
||||||
.endif
|
.endif
|
||||||
|
|
||||||
|
.if defined(LOCALBASE)
|
||||||
|
CFLAGS+= -DDEFAULT_PKCS11_WHITELIST='"/usr/lib*/*,${LOCALBASE}/lib*/*"'
|
||||||
|
.endif
|
||||||
|
|
||||||
LIBADD+= crypto
|
LIBADD+= crypto
|
||||||
|
|
||||||
.include <bsd.prog.mk>
|
.include <bsd.prog.mk>
|
||||||
|
@ -41,12 +41,13 @@
|
|||||||
#include <getopt.h>
|
#include <getopt.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <err.h>
|
#include <err.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
|
|
||||||
#ifndef DIR_TEMPLATE
|
#ifndef DIR_TEMPLATE
|
||||||
#define DIR_TEMPLATE "/usr/local/libdata/athprom"
|
#define DIR_TEMPLATE _PATH_LOCALBASE "/libdata/athprom"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct ath_diag atd;
|
struct ath_diag atd;
|
||||||
|
@ -32,6 +32,7 @@
|
|||||||
#include <netinet/ip.h>
|
#include <netinet/ip.h>
|
||||||
#include <netinet/udp.h>
|
#include <netinet/udp.h>
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
@ -154,7 +155,7 @@ unsigned int min_prga = 128;
|
|||||||
* XXX builtin pathnames
|
* XXX builtin pathnames
|
||||||
*/
|
*/
|
||||||
#define CRACK_LOCAL_CMD "../aircrack/aircrack"
|
#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
|
#define INCR 10000
|
||||||
int thresh_incr = INCR;
|
int thresh_incr = INCR;
|
||||||
|
@ -30,5 +30,7 @@
|
|||||||
* $FreeBSD$
|
* $FreeBSD$
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <paths.h>
|
||||||
|
|
||||||
#define FORTDIR "/usr/share/games/fortune:" \
|
#define FORTDIR "/usr/share/games/fortune:" \
|
||||||
"/usr/local/share/games/fortune"
|
_PATH_LOCALBASE "/share/games/fortune"
|
||||||
|
@ -33,8 +33,10 @@
|
|||||||
* $FreeBSD$
|
* $FreeBSD$
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#include <paths.h>
|
||||||
|
|
||||||
#define _PATH_EX "/usr/bin/ex"
|
#define _PATH_EX "/usr/bin/ex"
|
||||||
#define _PATH_HELP "/usr/share/misc/mail.help"
|
#define _PATH_HELP "/usr/share/misc/mail.help"
|
||||||
#define _PATH_TILDE "/usr/share/misc/mail.tildehelp"
|
#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"
|
#define _PATH_LESS "/usr/bin/less"
|
||||||
|
@ -81,6 +81,7 @@
|
|||||||
#include <err.h>
|
#include <err.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
@ -148,7 +149,7 @@ static int32_t pbchar = -1;
|
|||||||
|
|
||||||
static const char *paths[MAX_PATHS + 1] = {
|
static const char *paths[MAX_PATHS + 1] = {
|
||||||
"/usr/share/snmp/defs",
|
"/usr/share/snmp/defs",
|
||||||
"/usr/local/share/snmp/defs",
|
_PATH_LOCALBASE "/share/snmp/defs",
|
||||||
NULL
|
NULL
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -38,6 +38,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#include <dirent.h>
|
#include <dirent.h>
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
@ -59,7 +60,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
|
|
||||||
int verbosity_level = 0;
|
int verbosity_level = 0;
|
||||||
|
|
||||||
#define DEFAULT_DATADIR "/usr/local/share/cpucontrol"
|
#define DEFAULT_DATADIR _PATH_LOCALBASE "/share/cpucontrol"
|
||||||
|
|
||||||
#define FLAG_I 0x01
|
#define FLAG_I 0x01
|
||||||
#define FLAG_M 0x02
|
#define FLAG_M 0x02
|
||||||
|
@ -59,7 +59,7 @@
|
|||||||
/* 4.3BSD-style crontab */
|
/* 4.3BSD-style crontab */
|
||||||
#define SYSCRONTAB "/etc/crontab"
|
#define SYSCRONTAB "/etc/crontab"
|
||||||
#define SYSCRONTABS "/etc/cron.d"
|
#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
|
/* what editor to use if no EDITOR or VISUAL
|
||||||
* environment variable specified.
|
* environment variable specified.
|
||||||
|
@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
|
|
||||||
#include <err.h>
|
#include <err.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
@ -105,7 +106,7 @@ main(int argc, char *argv[], char *envp[])
|
|||||||
addarg(&al, argv[0]);
|
addarg(&al, argv[0]);
|
||||||
|
|
||||||
snprintf(localmailerconf, MAXPATHLEN, "%s/etc/mail/mailer.conf",
|
snprintf(localmailerconf, MAXPATHLEN, "%s/etc/mail/mailer.conf",
|
||||||
getenv("LOCALBASE") ? getenv("LOCALBASE") : "/usr/local");
|
getenv("LOCALBASE") ? getenv("LOCALBASE") : _PATH_LOCALBASE);
|
||||||
|
|
||||||
mailerconf = localmailerconf;
|
mailerconf = localmailerconf;
|
||||||
if ((config = fopen(localmailerconf, "r")) == NULL)
|
if ((config = fopen(localmailerconf, "r")) == NULL)
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
/* $FreeBSD$ */
|
/* $FreeBSD$ */
|
||||||
|
#include <paths.h>
|
||||||
|
|
||||||
#define _PATH_DEVPCI "/dev/pci"
|
#define _PATH_DEVPCI "/dev/pci"
|
||||||
#define _PATH_PCIVDB "/usr/share/misc/pci_vendors"
|
#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"
|
||||||
|
@ -40,6 +40,7 @@ __FBSDID("$FreeBSD$");
|
|||||||
#include <ucl.h>
|
#include <ucl.h>
|
||||||
#include <err.h>
|
#include <err.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
|
#include <paths.h>
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
|
|
||||||
@ -454,7 +455,7 @@ config_init(void)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Read LOCALBASE/etc/pkg.conf first. */
|
/* 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",
|
snprintf(confpath, sizeof(confpath), "%s/etc/pkg.conf",
|
||||||
localbase);
|
localbase);
|
||||||
|
|
||||||
|
@ -31,7 +31,8 @@
|
|||||||
#ifndef _PKG_CONFIG_H
|
#ifndef _PKG_CONFIG_H
|
||||||
#define _PKG_CONFIG_H
|
#define _PKG_CONFIG_H
|
||||||
|
|
||||||
#define _LOCALBASE "/usr/local"
|
#include <paths.h>
|
||||||
|
|
||||||
#define URL_SCHEME_PREFIX "pkg+"
|
#define URL_SCHEME_PREFIX "pkg+"
|
||||||
|
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
@ -1046,7 +1046,7 @@ main(int argc, char *argv[])
|
|||||||
yes = false;
|
yes = false;
|
||||||
|
|
||||||
snprintf(pkgpath, MAXPATHLEN, "%s/sbin/pkg",
|
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) {
|
if (argc > 1 && strcmp(argv[1], "bootstrap") == 0) {
|
||||||
bootstrap_only = true;
|
bootstrap_only = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user