summaryrefslogtreecommitdiffstats
path: root/fs/dlm/rcom.c
diff options
context:
space:
mode:
authorDavid Teigland <teigland@redhat.com>2008-02-21 20:39:57 +0100
committerDavid Teigland <teigland@redhat.com>2008-02-21 22:19:54 +0100
commit599e0f584de8ff16b1428e2e16118757619f1d1b (patch)
tree2c7cc24266290200cedf732b8bca28cc1b266583 /fs/dlm/rcom.c
parentFRV: Change the timerfd syscalls to be the same as i386 (diff)
downloadlinux-599e0f584de8ff16b1428e2e16118757619f1d1b.tar.xz
linux-599e0f584de8ff16b1428e2e16118757619f1d1b.zip
dlm: fix rcom_names message to self
The recent patch to validate data lengths in rcom_names messages failed to account for fake messages a node directs to itself before ever sending it. In this case we need to fill in the message length in the header for the validation code to use. Signed-off-by: David Teigland <teigland@redhat.com>
Diffstat (limited to 'fs/dlm/rcom.c')
-rw-r--r--fs/dlm/rcom.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/dlm/rcom.c b/fs/dlm/rcom.c
index 035e6f9990b0..67522c268c14 100644
--- a/fs/dlm/rcom.c
+++ b/fs/dlm/rcom.c
@@ -215,6 +215,8 @@ int dlm_rcom_names(struct dlm_ls *ls, int nodeid, char *last_name, int last_len)
ls->ls_recover_nodeid = nodeid;
if (nodeid == dlm_our_nodeid()) {
+ ls->ls_recover_buf->rc_header.h_length =
+ dlm_config.ci_buffer_size;
dlm_copy_master_names(ls, last_name, last_len,
ls->ls_recover_buf->rc_buf,
max_size, nodeid);