summaryrefslogtreecommitdiffstats
path: root/src/wgtpkg-permissions.c
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2016-09-12 14:52:30 +0200
committerJosé Bollo <jose.bollo@iot.bzh>2016-09-12 14:52:30 +0200
commit8afd46f28a677c40a482ccd18ca5568cf6c0f6aa (patch)
treecc8ad16d2cec14c1a49b31b51bc1b4510b4bda93 /src/wgtpkg-permissions.c
parent5b74cd6f2b5cdd82273759aa7d72150dfff58a2c (diff)
Avoid to exit in setting permission list
Change-Id: I623546a8c134b54f7b62b42a980f603202e42868 Signed-off-by: José Bollo <jose.bollo@iot.bzh>
Diffstat (limited to 'src/wgtpkg-permissions.c')
-rw-r--r--src/wgtpkg-permissions.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/wgtpkg-permissions.c b/src/wgtpkg-permissions.c
index 9e061c8..6aed31f 100644
--- a/src/wgtpkg-permissions.c
+++ b/src/wgtpkg-permissions.c
@@ -94,7 +94,7 @@ void crop_permissions(unsigned level)
}
/* add permissions granted for installation */
-void grant_permission_list(const char *list)
+int grant_permission_list(const char *list)
{
struct permission *p;
char *iter, c;
@@ -109,14 +109,15 @@ void grant_permission_list(const char *list)
iter[n] = 0;
p = add_permission(iter);
if (!p) {
- ERROR("Can't allocate permission");
- exit(1);
+ errno = ENOMEM;
+ return -1;
}
p->granted = 1;
iter += n;
*iter =c;
iter += strspn(iter, separators);
}
+ return 0;
}
/* checks if the permission 'name' is recorded */