X-Git-Url: http://git.openwrt.org/?a=blobdiff_plain;f=ubusd_main.c;h=4ea5245f2fa0434c51d1896bac3444ba47a902a4;hb=a8cf678230ed163ff7a07eb1e2c872f9d655460a;hp=d298b51db17b5ccd35255a5f89877a6db781d67f;hpb=c736e47f3e2ad8f895306e9917f7bd6143fd29d9;p=project%2Fubus.git diff --git a/ubusd_main.c b/ubusd_main.c index d298b51..4ea5245 100644 --- a/ubusd_main.c +++ b/ubusd_main.c @@ -115,6 +115,8 @@ retry: if (cl->pending_msg_offset < (int) sizeof(cl->hdrbuf)) goto out; + if (blob_raw_len(&cl->hdrbuf.data) < sizeof(struct blob_attr)) + goto disconnect; if (blob_pad_len(&cl->hdrbuf.data) > UBUS_MAX_MSGLEN) goto disconnect;