diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2008-12-23 22:12:23 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2008-12-23 22:12:23 +0100 |
commit | 5c75b65ca15f7c71babd835a45b252fed6534acf (patch) | |
tree | 6b8baa3f5d27c4eafd89fece7deedae30a6ff1fd /source3/libads/ads_struct.c | |
parent | 86cee0b28c50dd849fe919bbe3faa4deba5275bf (diff) | |
parent | ff26cb4b1c1d0292231e1cfc0490f4be6040d3e3 (diff) | |
download | samba-5c75b65ca15f7c71babd835a45b252fed6534acf.tar.gz samba-5c75b65ca15f7c71babd835a45b252fed6534acf.tar.xz samba-5c75b65ca15f7c71babd835a45b252fed6534acf.zip |
Merge branch 'master' of ssh://git.samba.org/data/git/samba
Diffstat (limited to 'source3/libads/ads_struct.c')
-rw-r--r-- | source3/libads/ads_struct.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/source3/libads/ads_struct.c b/source3/libads/ads_struct.c index 8cc2f1215e..aef35ad822 100644 --- a/source3/libads/ads_struct.c +++ b/source3/libads/ads_struct.c @@ -57,12 +57,17 @@ char *ads_build_path(const char *realm, const char *sep, const char *field, int strlcat(ret, p, len); while ((p=strtok_r(NULL, sep, &saveptr)) != NULL) { - char *s; + int retval; + char *s = NULL; if (reverse) - asprintf(&s, "%s%s,%s", field, p, ret); + retval = asprintf(&s, "%s%s,%s", field, p, ret); else - asprintf(&s, "%s,%s%s", ret, field, p); + retval = asprintf(&s, "%s,%s%s", ret, field, p); free(ret); + if (retval == -1) { + free(r); + return NULL; + } ret = SMB_STRDUP(s); free(s); } |