From: Matthias Dieter Wallnöfer Date: Mon, 17 Aug 2009 11:10:16 +0000 (+0200) Subject: s4: Fixed the int32 datatype support X-Git-Url: http://git.samba.org/?p=metze%2Fsamba%2Fwip.git;a=commitdiff_plain;h=6cc9e4b9006e3f10ff88d20ecd0dd26c2fa63611 s4: Fixed the int32 datatype support Should finally fix bug #6136 ("groupType", "sAMAccountType" ... attributes). --- diff --git a/source4/dsdb/samdb/ldb_modules/simple_ldap_map.c b/source4/dsdb/samdb/ldb_modules/simple_ldap_map.c index fe1de1c7d627..8fb639f53f10 100644 --- a/source4/dsdb/samdb/ldb_modules/simple_ldap_map.c +++ b/source4/dsdb/samdb/ldb_modules/simple_ldap_map.c @@ -147,7 +147,7 @@ static struct ldb_val objectCategory_always_dn(struct ldb_module *module, TALLOC static struct ldb_val normalise_to_signed32(struct ldb_module *module, TALLOC_CTX *ctx, const struct ldb_val *val) { struct ldb_val out; - int32_t i = (int32_t) strtol((char *)val->data, NULL, 0); + int32_t i = (int32_t) strtoll((char *)val->data, NULL, 0); out = data_blob_string_const(talloc_asprintf(ctx, "%d", i)); return out; } diff --git a/source4/lib/ldb-samba/ldif_handlers.c b/source4/lib/ldb-samba/ldif_handlers.c index 2d3d2b994d14..acf8af7917b4 100644 --- a/source4/lib/ldb-samba/ldif_handlers.c +++ b/source4/lib/ldb-samba/ldif_handlers.c @@ -649,7 +649,7 @@ static int ldif_canonicalise_int32(struct ldb_context *ldb, void *mem_ctx, const struct ldb_val *in, struct ldb_val *out) { char *end; - int32_t i = (int32_t) strtol((char *)in->data, &end, 0); + int32_t i = (int32_t) strtoll((char *)in->data, &end, 0); if (*end != 0) { return -1; } @@ -665,8 +665,8 @@ static int ldif_canonicalise_int32(struct ldb_context *ldb, void *mem_ctx, static int ldif_comparison_int32(struct ldb_context *ldb, void *mem_ctx, const struct ldb_val *v1, const struct ldb_val *v2) { - return (int32_t) strtol((char *)v1->data, NULL, 0) - - (int32_t) strtol((char *)v2->data, NULL, 0); + return (int32_t) strtoll((char *)v1->data, NULL, 0) + - (int32_t) strtoll((char *)v2->data, NULL, 0); } static int extended_dn_write_hex(struct ldb_context *ldb, void *mem_ctx,