diff options
author | José Bollo <jose.bollo@iot.bzh> | 2017-10-12 22:42:00 +0200 |
---|---|---|
committer | José Bollo <jose.bollo@iot.bzh> | 2017-11-24 17:44:57 +0100 |
commit | 1b079c90ed954cca65a7b07d5480e75d46217b85 (patch) | |
tree | 54fb77cc6dfaeac63062a46ac55135aa4b5fa413 /src | |
parent | cd2df61ce0d2564f01c8e013ba125fc01bcd9b1c (diff) |
bug fixes and improvements
Change-Id: I2fc3de0a84e471e8e87f43170c20f8d6d0d05fdc
Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src')
-rw-r--r-- | src/afm-binding.c | 18 | ||||
-rw-r--r-- | src/afm-urun.c | 12 |
2 files changed, 14 insertions, 16 deletions
diff --git a/src/afm-binding.c b/src/afm-binding.c index 19abc4e..3923462 100644 --- a/src/afm-binding.c +++ b/src/afm-binding.c @@ -104,7 +104,7 @@ static int onrunid(struct afb_req req, const char *method, int *runid) json = afb_req_json(req); if (wrap_json_unpack(json, "s", runid) - || wrap_json_unpack(json, "{ss}", "runid", runid)) { + && wrap_json_unpack(json, "{ss}", "runid", runid)) { INFO("bad request method %s: %s", method, json_object_to_json_string(json)); bad_request(req); @@ -158,7 +158,7 @@ static void detail(struct afb_req req) /* scan the request */ json = afb_req_json(req); if (wrap_json_unpack(json, "s", &appid) - || wrap_json_unpack(json, "{ss}", _id_, &appid)) { + && wrap_json_unpack(json, "{ss}", _id_, &appid)) { bad_request(req); return; } @@ -184,7 +184,7 @@ static void start(struct afb_req req) /* scan the request */ json = afb_req_json(req); if (wrap_json_unpack(json, "s", &appid) - || wrap_json_unpack(json, "{ss}", _id_, &appid)) { + && wrap_json_unpack(json, "{ss}", _id_, &appid)) { bad_request(req); return; } @@ -222,7 +222,7 @@ static void once(struct afb_req req) /* scan the request */ json = afb_req_json(req); if (wrap_json_unpack(json, "s", &appid) - || wrap_json_unpack(json, "{ss}", _id_, &appid)) { + && wrap_json_unpack(json, "{ss}", _id_, &appid)) { bad_request(req); return; } @@ -325,7 +325,7 @@ static void install(struct afb_req req) /* scan the request */ json = afb_req_json(req); if (wrap_json_unpack(json, "s", &wgtfile) - || wrap_json_unpack(json, "{ss s?s s?b s?b}", + && wrap_json_unpack(json, "{ss s?s s?b s?b}", "wgt", &wgtfile, "root", &root, "force", &force, @@ -338,6 +338,7 @@ static void install(struct afb_req req) if (ifo == NULL) afb_req_fail_f(req, "failed", "installation failed: %m"); else { + afm_udb_update(afudb); /* reload if needed */ if (reload) do_reloads(); @@ -365,7 +366,7 @@ static void uninstall(struct afb_req req) /* scan the request */ json = afb_req_json(req); if (wrap_json_unpack(json, "s", &idaver) - || wrap_json_unpack(json, "{ss s?s}", + && wrap_json_unpack(json, "{ss s?s}", _id_, &idaver, "root", &root)) { return bad_request(req); @@ -376,6 +377,7 @@ static void uninstall(struct afb_req req) if (rc) afb_req_fail_f(req, "failed", "uninstallation failed: %m"); else { + afm_udb_update(afudb); afb_req_success(req, NULL, NULL); application_list_changed(_uninstall_, idaver); } @@ -390,10 +392,6 @@ static int init() return -1; } - /* set the systemd's buses */ - systemd_set_bus(0, afb_daemon_get_system_bus()); - systemd_set_bus(1, afb_daemon_get_user_bus()); - /* create TRUE */ json_true = json_object_new_boolean(1); diff --git a/src/afm-urun.c b/src/afm-urun.c index b6418ac..d242df8 100644 --- a/src/afm-urun.c +++ b/src/afm-urun.c @@ -110,9 +110,9 @@ static int get_basis(struct json_object *appli, int *isuser, const char **dpath, /* get dpath of userid */ nun = alloca((size_t)(arodot - uname) + strlen(userid) + strlen(arodot) + 1); stpcpy(stpcpy(stpncpy(nun, uname, (size_t)(arodot - uname)), userid), arodot); - dp = systemd_unit_dpath_by_name(*isuser, uname, 1); + dp = systemd_unit_dpath_by_name(*isuser, nun, 1); if (dp == NULL) { - ERROR("Can't load unit of name %s for %s: %m", uname, uscope); + ERROR("Can't load unit of name %s for %s: %m", nun, uscope); goto error; } /* record the dpath */ @@ -255,7 +255,7 @@ int afm_urun_once(struct json_object *appli, int uid) if (rc < 0) { j_read_string_at(appli, "unit-scope", &uscope); j_read_string_at(appli, "unit-name", &uname); - ERROR("can't start %s unit %s", uscope, uname); + ERROR("can't start %s unit %s for uid %d", uscope, uname, uid); goto error; } @@ -263,13 +263,13 @@ int afm_urun_once(struct json_object *appli, int uid) if (state == NULL) { j_read_string_at(appli, "unit-scope", &uscope); j_read_string_at(appli, "unit-name", &uname); - ERROR("can't wait %s unit %s: %m", uscope, uname); + ERROR("can't wait %s unit %s for uid %d: %m", uscope, uname, uid); goto error; } if (state != SysD_State_Active) { j_read_string_at(appli, "unit-scope", &uscope); j_read_string_at(appli, "unit-name", &uname); - ERROR("start error %s unit %s: %s", uscope, uname, state); + ERROR("start error %s unit %s for uid %d: %s", uscope, uname, uid, state); goto error; } @@ -277,7 +277,7 @@ int afm_urun_once(struct json_object *appli, int uid) if (rc < 0) { j_read_string_at(appli, "unit-scope", &uscope); j_read_string_at(appli, "unit-name", &uname); - ERROR("can't getpid of %s unit %s: %m", uscope, uname); + ERROR("can't getpid of %s unit %s for uid %d: %m", uscope, uname, uid); goto error; } |