From 0ea2caaf614204954fd0d241767f0dddfb7c83cb Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Tue, 24 Jan 2012 13:52:42 +0000 Subject: [PATCH] --- yaml --- r: 287620 b: refs/heads/master c: a43a5ccdfa5bd5b2f00aa9b2321df268c2e5d6e2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/xen/xenbus/xenbus_dev_frontend.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index e94470b394ed..711b08de43ea 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: e4de866a834620ef974f5ba86d394a13d2f0cf66 +refs/heads/master: a43a5ccdfa5bd5b2f00aa9b2321df268c2e5d6e2 diff --git a/trunk/drivers/xen/xenbus/xenbus_dev_frontend.c b/trunk/drivers/xen/xenbus/xenbus_dev_frontend.c index 527dc2a3b89f..89f76252a16f 100644 --- a/trunk/drivers/xen/xenbus/xenbus_dev_frontend.c +++ b/trunk/drivers/xen/xenbus/xenbus_dev_frontend.c @@ -369,6 +369,10 @@ static int xenbus_write_watch(unsigned msg_type, struct xenbus_file_priv *u) goto out; } token++; + if (memchr(token, 0, u->u.msg.len - (token - path)) == NULL) { + rc = -EILSEQ; + goto out; + } if (msg_type == XS_WATCH) { watch = alloc_watch_adapter(path, token);