X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fhostname%2Fhostnamed.c;h=0123922c4a2f185583e42ae3f1b8939914e1f136;hb=5bb24cccbce846c0d77e71b70a3be7f4b2ba6c0e;hp=d31fef7abed894f66198aefcb56cf16a8740bd58;hpb=f38857914ab5c9cc55aac05795e1886963a5fd04;p=elogind.git diff --git a/src/hostname/hostnamed.c b/src/hostname/hostnamed.c index d31fef7ab..0123922c4 100644 --- a/src/hostname/hostnamed.c +++ b/src/hostname/hostnamed.c @@ -138,7 +138,8 @@ static bool valid_chassis(const char *chassis) { "server\0" "tablet\0" "handset\0" - "watch\0", + "watch\0" + "embedded\0", chassis); } @@ -287,7 +288,7 @@ static int context_update_kernel_hostname(Context *c) { else hn = "localhost"; - if (sethostname(hn, strlen(hn)) < 0) + if (sethostname_idempotent(hn) < 0) return -errno; return 0; @@ -613,7 +614,7 @@ static int method_set_location(sd_bus *bus, sd_bus_message *m, void *userdata, s static const sd_bus_vtable hostname_vtable[] = { SD_BUS_VTABLE_START(0), - SD_BUS_PROPERTY("Hostname", "s", NULL, offsetof(Context, data) + sizeof(char*) * PROP_HOSTNAME, 0), + SD_BUS_PROPERTY("Hostname", "s", NULL, offsetof(Context, data) + sizeof(char*) * PROP_HOSTNAME, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("StaticHostname", "s", NULL, offsetof(Context, data) + sizeof(char*) * PROP_STATIC_HOSTNAME, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("PrettyHostname", "s", NULL, offsetof(Context, data) + sizeof(char*) * PROP_PRETTY_HOSTNAME, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), SD_BUS_PROPERTY("IconName", "s", property_get_icon_name, 0, SD_BUS_VTABLE_PROPERTY_EMITS_CHANGE), @@ -684,7 +685,7 @@ int main(int argc, char *argv[]) { log_open(); umask(0022); - label_init("/etc"); + mac_selinux_init("/etc"); if (argc != 1) { log_error("This program takes no arguments.");