summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorBenjamin Coddington <bcodding@redhat.com>2014-12-07 16:05:47 -0500
committerJiri Slaby <jslaby@suse.cz>2015-01-26 14:39:02 +0100
commit03e6a1dc9b69bed1e6c98ddfeb5232208f79e7a0 (patch)
tree49a4974a7ad9d0bbea60a293ed5a63bb17f829b4 /fs
parentb2abe3c2f4217e3df748a348d2536bae103afc9e (diff)
downloadlwn-03e6a1dc9b69bed1e6c98ddfeb5232208f79e7a0.tar.gz
lwn-03e6a1dc9b69bed1e6c98ddfeb5232208f79e7a0.zip
nfsd4: fix xdr4 inclusion of escaped char
commit 5a64e56976f1ba98743e1678c0029a98e9034c81 upstream. Fix a bug where nfsd4_encode_components_esc() includes the esc_end char as an additional string encoding. Signed-off-by: Benjamin Coddington <bcodding@redhat.com> Fixes: e7a0444aef4a "nfsd: add IPv6 addr escaping to fs_location hosts" Signed-off-by: J. Bruce Fields <bfields@redhat.com> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'fs')
-rw-r--r--fs/nfsd/nfs4xdr.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/nfsd/nfs4xdr.c b/fs/nfsd/nfs4xdr.c
index 42c8c8aeb465..1c825aee736d 100644
--- a/fs/nfsd/nfs4xdr.c
+++ b/fs/nfsd/nfs4xdr.c
@@ -1786,6 +1786,9 @@ static __be32 nfsd4_encode_components_esc(char sep, char *components,
}
else
end++;
+ if (found_esc)
+ end = next;
+
str = end;
}
*pp = p;