summaryrefslogtreecommitdiff
path: root/src/shared
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2014-07-07 19:25:31 +0200
committerLennart Poettering <lennart@poettering.net>2014-07-07 21:05:09 +0200
commite26807239bd65bc17535a53cd540f38600e7ef24 (patch)
tree3100aec0ebcf4743d138fcf4d6d03977b8a90817 /src/shared
parent45035609fcfc3fe09324988c4929a3c147171c23 (diff)
firstboot: get rid of firstboot generator again, introduce ConditionFirstBoot= instead
As Zbigniew pointed out a new ConditionFirstBoot= appears like the nicer way to hook in systemd-firstboot.service on first boots (those with /etc unpopulated), so let's do this, and get rid of the generator again.
Diffstat (limited to 'src/shared')
-rw-r--r--src/shared/condition-util.c1
-rw-r--r--src/shared/condition-util.h1
-rw-r--r--src/shared/util.c10
-rw-r--r--src/shared/util.h2
4 files changed, 4 insertions, 10 deletions
diff --git a/src/shared/condition-util.c b/src/shared/condition-util.c
index 7b89b0fbaf..928edeeb9d 100644
--- a/src/shared/condition-util.c
+++ b/src/shared/condition-util.c
@@ -257,6 +257,7 @@ static const char* const condition_type_table[_CONDITION_TYPE_MAX] = {
[CONDITION_AC_POWER] = "ConditionACPower",
[CONDITION_ARCHITECTURE] = "ConditionArchitecture",
[CONDITION_NEEDS_UPDATE] = "ConditionNeedsUpdate",
+ [CONDITION_FIRST_BOOT] = "ConditionFirstBoot",
[CONDITION_NULL] = "ConditionNull"
};
diff --git a/src/shared/condition-util.h b/src/shared/condition-util.h
index 0b09f83f90..047fdbfd86 100644
--- a/src/shared/condition-util.h
+++ b/src/shared/condition-util.h
@@ -45,6 +45,7 @@ typedef enum ConditionType {
CONDITION_AC_POWER,
CONDITION_ARCHITECTURE,
CONDITION_NEEDS_UPDATE,
+ CONDITION_FIRST_BOOT,
CONDITION_NULL,
_CONDITION_TYPE_MAX,
_CONDITION_TYPE_INVALID = -1
diff --git a/src/shared/util.c b/src/shared/util.c
index 88511b69c0..33427981eb 100644
--- a/src/shared/util.c
+++ b/src/shared/util.c
@@ -3795,7 +3795,7 @@ bool dirent_is_file_with_suffix(const struct dirent *de, const char *suffix) {
return endswith(de->d_name, suffix);
}
-void execute_directory(const char *directory, DIR *d, usec_t timeout, char *argv[], char *env[]) {
+void execute_directory(const char *directory, DIR *d, usec_t timeout, char *argv[]) {
pid_t executor_pid;
int r;
@@ -3826,14 +3826,6 @@ void execute_directory(const char *directory, DIR *d, usec_t timeout, char *argv
assert_se(prctl(PR_SET_PDEATHSIG, SIGTERM) == 0);
- if (!strv_isempty(env)) {
- char **i;
-
- STRV_FOREACH(i, env)
- putenv(*i);
- }
-
-
if (!d) {
d = _d = opendir(directory);
if (!d) {
diff --git a/src/shared/util.h b/src/shared/util.h
index fb852d6973..c5eadc97c0 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -505,7 +505,7 @@ bool tty_is_console(const char *tty) _pure_;
int vtnr_from_tty(const char *tty);
const char *default_term_for_tty(const char *tty);
-void execute_directory(const char *directory, DIR *_d, usec_t timeout, char *argv[], char *env[]);
+void execute_directory(const char *directory, DIR *_d, usec_t timeout, char *argv[]);
int kill_and_sigcont(pid_t pid, int sig);