diff options
author | Michael Adam <obnox@samba.org> | 2009-11-21 00:14:29 +0100 |
---|---|---|
committer | Michael Adam <obnox@samba.org> | 2009-11-21 00:49:29 +0100 |
commit | 446ed18eb6eeec06b4f81aaf89f75db32472defb (patch) | |
tree | 09d988a5b8c818fab400d3c67902327b073337bc | |
parent | 4afffc96ee7ed81c4d77b28da887fcb51f1b3579 (diff) | |
download | samba-446ed18eb6eeec06b4f81aaf89f75db32472defb.tar.gz samba-446ed18eb6eeec06b4f81aaf89f75db32472defb.tar.bz2 samba-446ed18eb6eeec06b4f81aaf89f75db32472defb.zip |
s3:fix endianness bug in dbwrap_change_int32_atomic() (bug #6901)
Michael
-rw-r--r-- | source3/lib/dbwrap_util.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/source3/lib/dbwrap_util.c b/source3/lib/dbwrap_util.c index 96888a4fb0..74b22655e2 100644 --- a/source3/lib/dbwrap_util.c +++ b/source3/lib/dbwrap_util.c @@ -204,7 +204,7 @@ static NTSTATUS dbwrap_change_int32_atomic_action(struct db_context *db, { struct db_record *rec; int32_t val = -1; - TDB_DATA data; + int32_t v_store; NTSTATUS ret; struct dbwrap_change_int32_atomic_context *state; @@ -227,10 +227,12 @@ static NTSTATUS dbwrap_change_int32_atomic_action(struct db_context *db, val += state->change_val; - data.dsize = sizeof(val); - data.dptr = (uint8 *)&val; + SIVAL(&v_store, 0, val); - ret = rec->store(rec, data, TDB_REPLACE); + ret = rec->store(rec, + make_tdb_data((const uint8_t *)&v_store, + sizeof(v_store)), + TDB_REPLACE); done: TALLOC_FREE(rec); |