diff options
Diffstat (limited to 'source4/libcli/ldap')
-rw-r--r-- | source4/libcli/ldap/ldap.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/source4/libcli/ldap/ldap.c b/source4/libcli/ldap/ldap.c index 815d543038..043faabf2f 100644 --- a/source4/libcli/ldap/ldap.c +++ b/source4/libcli/ldap/ldap.c @@ -79,7 +79,7 @@ static BOOL ldap_push_filter(struct asn1_data *data, struct ldb_parse_tree *tree i = 0; if ( ! tree->u.substring.start_with_wildcard) { asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(0)); - asn1_write_LDAPString(data, tree->u.substring.chunks[i]->data); + asn1_write_LDAPString(data, (char *)tree->u.substring.chunks[i]->data); asn1_pop_tag(data); i++; } @@ -93,7 +93,7 @@ static BOOL ldap_push_filter(struct asn1_data *data, struct ldb_parse_tree *tree ctx = 1; } asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(ctx)); - asn1_write_LDAPString(data, tree->u.substring.chunks[i]->data); + asn1_write_LDAPString(data, (char *)tree->u.substring.chunks[i]->data); asn1_pop_tag(data); i++; } @@ -159,7 +159,7 @@ static BOOL ldap_push_filter(struct asn1_data *data, struct ldb_parse_tree *tree asn1_pop_tag(data); } asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(3)); - asn1_write_LDAPString(data, tree->u.extended.value.data); + asn1_write_LDAPString(data, (char *)tree->u.extended.value.data); asn1_pop_tag(data); asn1_push_tag(data, ASN1_CONTEXT_SIMPLE(4)); asn1_write_uint8(data, tree->u.extended.dnAttributes); @@ -517,7 +517,7 @@ static struct ldb_val **ldap_decode_substring(TALLOC_CTX *mem_ctx, struct ldb_va return NULL; } - chunks[chunk_num]->data = talloc_strdup(mem_ctx, value); + chunks[chunk_num]->data = (uint8_t *)talloc_strdup(mem_ctx, value); if (chunks[chunk_num]->data == NULL) { return NULL; } @@ -631,8 +631,7 @@ static struct ldb_parse_tree *ldap_decode_filter_tree(TALLOC_CTX *mem_ctx, } ret->operation = LDB_OP_SUBSTRING; - ret->u.substring.attr = talloc_memdup(ret, attr.data, attr.length + 1); - ret->u.substring.attr[attr.length] = '\0'; + ret->u.substring.attr = talloc_strndup(ret, (char *)attr.data, attr.length); ret->u.substring.chunks = NULL; ret->u.substring.start_with_wildcard = 1; ret->u.substring.end_with_wildcard = 1; |