From: Jo-Philipp Wich Date: Thu, 15 Mar 2018 11:22:34 +0000 (+0100) Subject: session: ignore non-string username attribute upon restore X-Git-Url: http://git.openwrt.org/?p=project%2Frpcd.git;a=commitdiff_plain;h=eb09f3a3fde2efd79717b3e15488ca40988bc8b8 session: ignore non-string username attribute upon restore When restoring session information from blob data, only consider the embedded username attribute if it is a string value. Other types may cause invalid memory accesses when attempting to strcmp() the attribute value. Signed-off-by: Jo-Philipp Wich --- diff --git a/session.c b/session.c index 3bef025..3ed4519 100644 --- a/session.c +++ b/session.c @@ -1288,6 +1288,9 @@ rpc_session_from_blob(struct uci_context *uci, struct blob_attr *attr) blobmsg_for_each_attr(data, tb[RPC_DUMP_DATA], rem) { rpc_session_set(ses, data); + if (blobmsg_type(data) != BLOBMSG_TYPE_STRING) + continue; + if (!strcmp(blobmsg_name(data), "username")) user = blobmsg_get_string(data); }