summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2013-09-12 10:35:55 +0200
committerJo-Philipp Wich <jow@openwrt.org>2013-09-12 10:35:55 +0200
commit00a3ec2e523ffbdb4f027642da18cc0bf8ce9285 (patch)
tree23634a23d11799468b74898aba55196775858cd1
parentae63188069e433c20b8add7b0fba636f36551ed0 (diff)
downloadrpcd-00a3ec2e523ffbdb4f027642da18cc0bf8ce9285.tar.gz
session: disallow destroying the null session
-rw-r--r--session.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/session.c b/session.c
index 5d403f0..fc5f19b 100644
--- a/session.c
+++ b/session.c
@@ -751,6 +751,9 @@ rpc_handle_destroy(struct ubus_context *ctx, struct ubus_object *obj,
if (!tb)
return UBUS_STATUS_INVALID_ARGUMENT;
+ if (!strcmp(blobmsg_get_string(tb), RPC_DEFAULT_SESSION_ID))
+ return UBUS_STATUS_PERMISSION_DENIED;
+
ses = rpc_session_get(blobmsg_data(tb));
if (!ses)
return UBUS_STATUS_NOT_FOUND;