From: Rafał Miłecki Date: Thu, 30 Nov 2017 10:04:53 +0000 (+0100) Subject: rpcd-mod-lxc: info: return NOT_FOUND if container doesn't exist X-Git-Url: http://git.99rst.org/?a=commitdiff_plain;h=650704c4258c0e02fc3519cb8a45728ea14eac9a;p=openwrt-packages.git rpcd-mod-lxc: info: return NOT_FOUND if container doesn't exist It allow distinction between not existing and stopped container. So far querying for not existing container was resulting in: > ubus call lxc info '{ "name": "foo" }' { "name": "foo", "state": "STOPPED", "ips": [ ] } Now it's an error and it matches lxc-info command line: > ubus call lxc info '{ "name": "foo" }' Command failed: Not found > lxc-info --name foo foo doesn't exist Signed-off-by: Rafał Miłecki --- diff --git a/utils/rpcd-mod-lxc/files/lxc.c b/utils/rpcd-mod-lxc/files/lxc.c index 6db1b3117..a98fcfc54 100644 --- a/utils/rpcd-mod-lxc/files/lxc.c +++ b/utils/rpcd-mod-lxc/files/lxc.c @@ -332,6 +332,11 @@ rpc_lxc_info(struct ubus_context *ctx, struct ubus_object *obj, l = rpc_lxc_init(tb); if (!l) return UBUS_STATUS_INVALID_ARGUMENT; + + if (!l->container->is_running(l->container) && + !l->container->is_defined(l->container)) + return UBUS_STATUS_NOT_FOUND; + blob_buf_init(&buf, 0); blobmsg_add_string(&buf, "name", l->container->name);