projects
/
project
/
libubox.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
08aada9
)
blobmsg: fill padding between name and data
author
Felix Fietkau
<nbd@openwrt.org>
Thu, 6 Oct 2011 15:19:28 +0000
(17:19 +0200)
committer
Felix Fietkau
<nbd@openwrt.org>
Thu, 6 Oct 2011 15:19:28 +0000
(17:19 +0200)
blobmsg.c
patch
|
blob
|
history
diff --git
a/blobmsg.c
b/blobmsg.c
index
0129640
..
0551b26
100644
(file)
--- a/
blobmsg.c
+++ b/
blobmsg.c
@@
-114,6
+114,7
@@
blobmsg_new(struct blob_buf *buf, int type, const char *name, int payload_len, v
struct blob_attr *attr;
struct blobmsg_hdr *hdr;
int attrlen, namelen;
struct blob_attr *attr;
struct blobmsg_hdr *hdr;
int attrlen, namelen;
+ char *pad_start, *pad_end;
if (!name)
name = "";
if (!name)
name = "";
@@
-127,7
+128,10
@@
blobmsg_new(struct blob_buf *buf, int type, const char *name, int payload_len, v
hdr = blob_data(attr);
hdr->namelen = cpu_to_be16(namelen);
strcpy((char *) hdr->name, (const char *)name);
hdr = blob_data(attr);
hdr->namelen = cpu_to_be16(namelen);
strcpy((char *) hdr->name, (const char *)name);
- *data = blobmsg_data(attr);
+ pad_end = *data = blobmsg_data(attr);
+ pad_start = (char *) &hdr->name[namelen];
+ if (pad_start < pad_end)
+ memset(pad_start, 0, pad_end - pad_start);
return attr;
}
return attr;
}