If root, don't overwrite doas.conf
This commit is contained in:
parent
20e2f78f83
commit
3290c27210
1 changed files with 2 additions and 5 deletions
|
@ -667,8 +667,6 @@ agent_configure(struct system_config *sc)
|
||||||
|
|
||||||
/* password */
|
/* password */
|
||||||
if (sc->sc_password == NULL) {
|
if (sc->sc_password == NULL) {
|
||||||
str1 = "/PasswordAuthentication/"
|
|
||||||
"s/.*/PasswordAuthentication no/";
|
|
||||||
if (asprintf(&str2, "permit keepenv nopass %s as root\n"
|
if (asprintf(&str2, "permit keepenv nopass %s as root\n"
|
||||||
"permit keepenv nopass root\n", sc->sc_username) == -1)
|
"permit keepenv nopass root\n", sc->sc_username) == -1)
|
||||||
str2 = NULL;
|
str2 = NULL;
|
||||||
|
@ -677,15 +675,14 @@ agent_configure(struct system_config *sc)
|
||||||
sc->sc_username, NULL) != 0)
|
sc->sc_username, NULL) != 0)
|
||||||
log_warnx("password failed");
|
log_warnx("password failed");
|
||||||
|
|
||||||
str1 = "/PasswordAuthentication/"
|
|
||||||
"s/.*/PasswordAuthentication yes/";
|
|
||||||
if (asprintf(&str2, "permit keepenv persist %s as root\n"
|
if (asprintf(&str2, "permit keepenv persist %s as root\n"
|
||||||
"permit keepenv nopass root\n", sc->sc_username) == -1)
|
"permit keepenv nopass root\n", sc->sc_username) == -1)
|
||||||
str2 = NULL;
|
str2 = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* doas */
|
/* doas */
|
||||||
if (str2 == NULL || fileout(str2, "w", "/etc/doas.conf") != 0)
|
if ((strcmp("root", sc->sc_username) != 0) &&
|
||||||
|
(str2 == NULL || fileout(str2, "w", "/etc/doas.conf")) != 0)
|
||||||
log_warnx("doas failed");
|
log_warnx("doas failed");
|
||||||
free(str2);
|
free(str2);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue