diff options
author | Andrew Tridgell <tridge@samba.org> | 2006-05-24 12:33:06 +0000 |
---|---|---|
committer | Gerald (Jerry) Carter <jerry@samba.org> | 2007-10-10 14:08:33 -0500 |
commit | b22d15a0f80be0de1bb123f79058ec85d083cd75 (patch) | |
tree | babdad8ea7f085dc5ef80236885c04bf9f0cf4f8 /source4/dsdb/samdb | |
parent | 9ff4fcab36aac36dc4b02cb218811ec8d8dc15d3 (diff) | |
download | samba-b22d15a0f80be0de1bb123f79058ec85d083cd75.tar.gz samba-b22d15a0f80be0de1bb123f79058ec85d083cd75.tar.xz samba-b22d15a0f80be0de1bb123f79058ec85d083cd75.zip |
r15859: fixed a crash bug in the ldb password_hash module. This one is quite
sublte - please have a look at the change if you are not certain you
know the semantics of constant arrays declared on the stack (they must
be static if you return them from the function)
(This used to be commit 1848078fee2041195e3d65fcc090d7b6330b8ea0)
Diffstat (limited to 'source4/dsdb/samdb')
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/password_hash.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/password_hash.c b/source4/dsdb/samdb/ldb_modules/password_hash.c index 1a2ca629bcf..2885fb82a29 100644 --- a/source4/dsdb/samdb/ldb_modules/password_hash.c +++ b/source4/dsdb/samdb/ldb_modules/password_hash.c @@ -1145,7 +1145,10 @@ static int get_domain_data_callback(struct ldb_context *ldb, void *context, stru static int build_domain_data_request(struct ph_async_context *ac, struct dom_sid *sid) { - const char * const attrs[] = { "pwdProperties", "pwdHistoryLength", "dnsDomain", NULL }; + /* attrs[] is returned from this function in + ac->dom_req->op.search.attrs, so it must be static, as + otherwise the compiler can put it on the stack */ + static const char * const attrs[] = { "pwdProperties", "pwdHistoryLength", "dnsDomain", NULL }; char *filter; ac->dom_req = talloc_zero(ac, struct ldb_request); |