chiark / gitweb /
hostnamed: prevent it from crashing if the chassis is unknown
[elogind.git] / src / hostname / hostnamed.c
index db0762140b286405048c7b53e3c7562f2aafbdbe..ece5d1d410c0f94f8df06cc9e6c5b800523d5dc4 100644 (file)
@@ -360,6 +360,9 @@ static int property_get_chassis(
         else
                 name = c->data[PROP_CHASSIS];
 
+        if(!name)
+                name = "";
+
         r = sd_bus_message_append(reply, "s", name);
         if (r < 0)
                 return r;
@@ -371,7 +374,7 @@ static int method_set_hostname(sd_bus *bus, sd_bus_message *m, void *userdata) {
         _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
         Context *c = userdata;
         const char *name;
-        bool interactive;
+        unsigned interactive;
         char *h;
         int r;
 
@@ -421,7 +424,7 @@ static int method_set_static_hostname(sd_bus *bus, sd_bus_message *m, void *user
         _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
         Context *c = userdata;
         const char *name;
-        bool interactive;
+        unsigned interactive;
         int r;
 
         r = sd_bus_message_read(m, "sb", &name, &interactive);
@@ -472,7 +475,7 @@ static int method_set_static_hostname(sd_bus *bus, sd_bus_message *m, void *user
 
 static int set_machine_info(Context *c, sd_bus *bus, sd_bus_message *m, int prop, sd_bus_message_handler_t cb) {
         _cleanup_bus_error_free_ sd_bus_error error = SD_BUS_ERROR_NULL;
-        bool interactive;
+        unsigned interactive;
         const char *name;
         int r;