]> git.armaanb.net Git - opendoas.git/commitdiff
Honor --sysconfdir option for doas.conf path.
authorSunil Nimmagadda <sunil@nimmagadda.net>
Mon, 2 Nov 2020 06:24:29 +0000 (11:54 +0530)
committerDuncan Overbruck <github@duncano.de>
Mon, 2 Nov 2020 13:01:52 +0000 (14:01 +0100)
Some distributions may choose to place configuration files in a different
directory than /etc. The configure script provides --sysconfdir
option already, use it to find doas.conf path instead of hardcoding
'/etc/doas.conf'.

bsd.prog.mk
doas.c

index df8f51461be9ed6968433e3a7b582047d6c75589..ba6c1418d6cedbe1411fcd5a4a20188f732b60be 100644 (file)
@@ -6,6 +6,8 @@ CFLAGS  += -I${CURDIR}/libopenbsd ${COPTS} -MD -MP -Wno-unused-result
 
 include config.mk
 
+CFLAGS += -DDOAS_CONF="\"${SYSCONFDIR}/doas.conf\""
+
 OPENBSD := $(addprefix libopenbsd/,${OPENBSD})
 OBJS    := ${SRCS:.y=.c}
 OBJS    := ${OBJS:.c=.o}
diff --git a/doas.c b/doas.c
index e2539057443058f6e6d7a0a6acc906d8fa38d3fc..008132b3a6e0d8c485f040049a973f54cec18040 100644 (file)
--- a/doas.c
+++ b/doas.c
@@ -325,7 +325,7 @@ main(int argc, char **argv)
        if (geteuid())
                errx(1, "not installed setuid");
 
-       parseconfig("/etc/doas.conf", 1);
+       parseconfig(DOAS_CONF, 1);
 
        /* cmdline is used only for logging, no need to abort on truncate */
        (void)strlcpy(cmdline, argv[0], sizeof(cmdline));