summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorSage Weil <sage@newdream.net>2010-05-11 15:01:51 -0700
committerSage Weil <sage@newdream.net>2010-05-11 15:17:40 -0700
commit45c6ceb547ad2d98215351974a4686bf8cb13e14 (patch)
treef7d5dc6b7900faebef1a29a5e0af5ac263a64337 /fs
parent9abf82b8bc93dd904738a71ca69aa5df356d4d24 (diff)
downloadop-kernel-dev-45c6ceb547ad2d98215351974a4686bf8cb13e14.zip
op-kernel-dev-45c6ceb547ad2d98215351974a4686bf8cb13e14.tar.gz
ceph: zero unused message header, footer fields
We shouldn't leak any prior memory contents to other parties. And random data, particularly in the 'version' field, can cause problems down the line. Signed-off-by: Sage Weil <sage@newdream.net>
Diffstat (limited to 'fs')
-rw-r--r--fs/ceph/messenger.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/fs/ceph/messenger.c b/fs/ceph/messenger.c
index 509f57d..a3a8f36 100644
--- a/fs/ceph/messenger.c
+++ b/fs/ceph/messenger.c
@@ -2085,15 +2085,19 @@ struct ceph_msg *ceph_msg_new(int type, int front_len,
kref_init(&m->kref);
INIT_LIST_HEAD(&m->list_head);
+ m->hdr.tid = 0;
m->hdr.type = cpu_to_le16(type);
+ m->hdr.priority = cpu_to_le16(CEPH_MSG_PRIO_DEFAULT);
+ m->hdr.version = 0;
m->hdr.front_len = cpu_to_le32(front_len);
m->hdr.middle_len = 0;
m->hdr.data_len = cpu_to_le32(page_len);
m->hdr.data_off = cpu_to_le16(page_off);
- m->hdr.priority = cpu_to_le16(CEPH_MSG_PRIO_DEFAULT);
+ m->hdr.reserved = 0;
m->footer.front_crc = 0;
m->footer.middle_crc = 0;
m->footer.data_crc = 0;
+ m->footer.flags = 0;
m->front_max = front_len;
m->front_is_vmalloc = false;
m->more_to_follow = false;
OpenPOWER on IntegriCloud