summaryrefslogtreecommitdiff
path: root/source3/client
diff options
context:
space:
mode:
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>2018-02-17 10:46:44 +1300
committerDouglas Bagnall <dbagnall@samba.org>2018-02-22 01:04:18 +0100
commita4c853a7deb080dd44e3c54eb45935ff0df91baf (patch)
treea0c343ff4c1485f0fedb844f958529f56d1cc6dc /source3/client
parent6ef6ddce5a64c55729c2e3d423757f504b0ab15e (diff)
downloadsamba-a4c853a7deb080dd44e3c54eb45935ff0df91baf.tar.gz
util/rfc1738_unescape(): return end pointer or NULL on error
At present we don't detect errors, but when we do we'll return NULL. Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz> Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Diffstat (limited to 'source3/client')
-rw-r--r--source3/client/smbspool.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/source3/client/smbspool.c b/source3/client/smbspool.c
index 152492eadf1..3660319b5b1 100644
--- a/source3/client/smbspool.c
+++ b/source3/client/smbspool.c
@@ -698,12 +698,16 @@ static char *
uri_unescape_alloc(const char *uritok)
{
char *ret;
-
+ char *end;
ret = (char *) SMB_STRDUP(uritok);
if (!ret) {
return NULL;
}
- rfc1738_unescape(ret);
+ end = rfc1738_unescape(ret);
+ if (end == NULL) {
+ free(ret);
+ return NULL;
+ }
return ret;
}