pid, p,
uid, name,
a->unique_name);
- ;
+
return 0;
}
if (r < 0)
return synthetic_reply_method_errno(m, r, NULL);
- if (service_name_is_valid(arg0) < 0)
+ if (!service_name_is_valid(arg0))
return synthetic_reply_method_errno(m, -EINVAL, NULL);
cmd.flags = KDBUS_NAME_LIST_QUEUED;
name_list = (struct kdbus_name_list *) ((uint8_t *) a->kdbus_buffer + cmd.offset);
KDBUS_ITEM_FOREACH(name, name_list, names) {
+ const char *entry_name = NULL;
+ struct kdbus_item *item;
char *n;
- if (name->size <= sizeof(*name))
- continue;
+ KDBUS_ITEM_FOREACH(item, name, items)
+ if (item->type == KDBUS_ITEM_NAME)
+ entry_name = item->str;
- if (!streq(name->name, arg0))
+ if (!streq_ptr(entry_name, arg0))
continue;
if (asprintf(&n, ":1.%llu", (unsigned long long) name->owner_id) < 0) {
if (r < 0)
return synthetic_reply_method_errno(m, r, NULL);
- if (service_name_is_valid(name) < 0)
+ if (!service_name_is_valid(name))
return synthetic_reply_method_errno(m, -EINVAL, NULL);
if (streq(name, "org.freedesktop.DBus"))
if (r < 0)
return synthetic_reply_method_errno(m, r, NULL);
- if (service_name_is_valid(name) < 0)
+ if (!service_name_is_valid(name))
return synthetic_reply_method_errno(m, -EINVAL, NULL);
r = sd_bus_release_name(a, name);
if (r < 0)
return synthetic_reply_method_errno(m, r, NULL);
- if (service_name_is_valid(name) < 0)
+ if (!service_name_is_valid(name))
return synthetic_reply_method_errno(m, -EINVAL, NULL);
if ((flags & ~(BUS_NAME_ALLOW_REPLACEMENT|BUS_NAME_REPLACE_EXISTING|BUS_NAME_DO_NOT_QUEUE)) != 0)
return synthetic_reply_method_errno(m, -EINVAL, NULL);
if (r < 0)
return synthetic_reply_method_errno(m, r, NULL);
- if (service_name_is_valid(name) < 0)
+ if (!service_name_is_valid(name))
return synthetic_reply_method_errno(m, -EINVAL, NULL);
if (flags != 0)
return synthetic_reply_method_errno(m, -EINVAL, NULL);
}
finish:
+ sd_notify(false,
+ "STOPPING=1\n"
+ "STATUS=Shutting down.");
+
policy_free(&policy);
strv_free(arg_configuration);
free(arg_address);