Michael Adam
78979c6420
s3:idmap_tdb: properly initialize the idmap_tdb context with zero
2010-08-14 02:10:52 +02:00
Michael Adam
9c3d4dff82
s3:idmap_tdb: prevent opening the idmap db more than once.
2010-08-14 02:10:52 +02:00
Michael Adam
66a38d8612
s3:idmap_tdb: rewrite sids_to_unixids to create mappings for unmapped sids.
2010-08-14 02:10:52 +02:00
Michael Adam
4f2bb1a259
s3:idmap_tdb: add a idmap_tdb_new_mapping().
...
High level function to create a new mapping for an unmapped sid.
This builds logic that used to reside in the top level idmap code
in the backend. To be called inside a transaction to guarantee
atomicity of the operation.
2010-08-14 02:10:51 +02:00
Michael Adam
47387b3ebb
s3:idmap_tdb: move the set_mapping code up
2010-08-14 02:10:51 +02:00
Michael Adam
2b2a8f9b3b
s3:idmap_tdb: use transaction wrapper for idmap_tdb_set_mapping().
2010-08-14 02:10:51 +02:00
Michael Adam
b0615e4757
s3:idmap_tdb: remove unused struct idmap_tdb_state.
2010-08-14 02:10:51 +02:00
Michael Adam
28535349bd
s3:idmap_tdb: remove unused idmap_alloc_db
2010-08-14 02:10:51 +02:00
Michael Adam
9010194972
s3:idmap_tdb: remove unused idmap_tdb_alloc_close().
2010-08-14 02:10:51 +02:00
Michael Adam
2e4a0382f5
s3:idmap_tdb: give idmap_domain arg to idmap_tdb_allocate_id and use ctx->db
...
instead of alloc_db
2010-08-14 02:10:50 +02:00
Michael Adam
4301a81c99
s3:idmap_tdb: call idmap_tdb_init_hwm() from idmap_tdb_open_db().
2010-08-14 02:10:50 +02:00
Michael Adam
1039506493
s3:idmap_tdb: move idmap_tdb_init_hwm up.
2010-08-14 02:10:50 +02:00
Michael Adam
f739ccb1b9
s3:idmap_tdb: remove unused idmap_tdb_load_ranges()
...
The idmap_tdb_state (which should actually be called idmap_tdb_alloc_context)
is being removed since the alloc part is combined with the id mapping part.
2010-08-14 02:10:50 +02:00
Michael Adam
b1285a5cb3
s3:idmap_tdb: have idmap_tdb_open_db take an idmap_domain struct as argument
...
the other arguments are not needed any more and are removed.
2010-08-14 02:10:49 +02:00
Michael Adam
53856fc8b0
s3:idmap_tdb: rename idmap_tdb_alloc_init->idmap_tdb_init_hwm and use db from idmap_tdb_context
...
instead of the special idmap_alloc_db
2010-08-14 02:10:49 +02:00
Michael Adam
384e35f8a7
s3:idmap_tdb: move definition of struct idmap_tdb_context up.
2010-08-14 02:10:47 +02:00
Michael Adam
db38972583
s3:idmap_tdb: remove filter_low_id,filter_high_id from idmap_tdb_context
...
These are now taken from the idmap_domain struct.
2010-08-14 02:10:47 +02:00
Michael Adam
3315f2cf9b
s3:idmap_tdb: add idmap domain arg to idmap_tdb_upgrade and use domain range
2010-08-14 02:10:47 +02:00
Michael Adam
6d66018187
s3:idmap_tdb: use filter from idmap_domain rather than from idmap_tdb_context
2010-08-14 02:10:47 +02:00
Michael Adam
053e4510cd
s3:idmap_tdb: give idmap domain argument to idmap_tdb_sid_to_id
...
instead of idmap_tdb_context. This is in preparation of using the
filter from the idmap_domain struct.
2010-08-14 02:10:47 +02:00
Michael Adam
f7a5f0987c
s3:idmap_tdb: give idmap domain argument to idmap_tdb_id_to_sid
...
instead of idmap_tdb_context. This is in preparation of using the
filter from the idmap_domain struct.
2010-08-14 02:10:47 +02:00
Michael Adam
0f248169d9
s3:idmap_tdb: implement allocate_id in idmap methods for tdb backend
2010-08-14 02:10:46 +02:00
Michael Adam
2b9ad09ae7
s3:idmap_tdb: add idmap_tdb_get_new_id() to allocate a new id given a domain
...
Currently this only works with the default domain, calling out
to idmap_tdb_allocate_id(). In the future this will be extended
to also work for non-default domains.
2010-08-14 02:10:46 +02:00
Michael Adam
9e8df7403a
s3:idmap_tdb: convert idmap_tdb_allocate_id() to use transaction wrappers
2010-08-14 02:10:46 +02:00
Michael Adam
85e9b35993
s3:idmap_tdb: remove an extra blank line
2010-08-14 02:10:46 +02:00
Michael Adam
aad8756dae
s3:idmap_tdb2: add my (C)
2010-08-14 02:10:46 +02:00
Michael Adam
dac9f73ccd
s3:idmap_tdb2: move idmap_tdb2_new_mapping() up. spare a prototype.
2010-08-14 02:10:46 +02:00
Michael Adam
627b9aa4b7
s3:idmap_tdb2: get rid of an extra variable in idmap_tdb2_db_init().
2010-08-14 02:10:46 +02:00
Michael Adam
d27992e708
s3:idmap_tdb2: move idmap_tdb2_set_mapping() up to its _action callback.
2010-08-14 02:10:45 +02:00
Michael Adam
3bc40a0979
s3:idmap_tdb2: use the right talloc context for db_open in idmap_tdb2_open_db()
2010-08-14 02:10:45 +02:00
Michael Adam
39079acc57
s3:idmap_tdb2: don't check whether sid is already mapped in idmap_tdb2_new_mapping().
...
idmap_tdb2_new_mapping() is called from inside a transaction only
with sids, that have been verified not to be mapped directly before
that in the same transaction.
2010-08-14 02:10:45 +02:00
Michael Adam
1a52e0d25b
s3:idmap_tdb2: add the db_context to the idmap_tdb2_context
...
this removes the idmap_tdb2 global variable
2010-08-14 02:10:45 +02:00
Michael Adam
83ad3cdf69
s3:idmap_tdb2: talloc_zero (instead of talloc) the idmap_tdb2_context
2010-08-14 02:10:45 +02:00
Michael Adam
c08a45ebd9
s3:idmap_tdb2: rename idmap_tdb2_alloc_load -> idmap_tdb2_init_hwm
2010-08-14 02:10:45 +02:00
Michael Adam
41cead6a31
s3:idmap_tdb2: move idmap_tdb2_alloc_load() up to reduce need for prototype
2010-08-14 02:10:45 +02:00
Michael Adam
2c549be359
s3:idmap_tdb2: remove unused idmap_tdb2_state and idmap_tdb2_load_ranges
2010-08-14 02:10:44 +02:00
Michael Adam
fd81228ed8
s3:idmap_tdb2: give idmap_tdb2_alloc_load() and idmap domain arguemnt
...
and use the ranges from the idmap domain for checking the HWM values
2010-08-14 02:10:44 +02:00
Michael Adam
bd4cc44c7d
s3:idmap_tdb2: add an idmap_domain struct argument to idmap_tdb2_open_db()
2010-08-14 02:10:44 +02:00
Michael Adam
871945ae19
s3:idmap_tdb2: remove filter_low_id and filter_high_id from idmap_tdb2_context
...
Now these are taken from the idmap_domain struct.
2010-08-14 02:10:44 +02:00
Michael Adam
2842389e55
s3:idmap_tdb2: don't parse config and fill filter_low_id and filter_high_id
...
into idmap_tdb2_context in idmap_tdb2_db_init().
Now these are taken from the idmap_domain struct instead.
2010-08-14 02:10:44 +02:00
Michael Adam
6a70e7da58
s3:idmap_tdb2: honour the "idmap read only" flag in the tdb2 module.
...
Note that this will not prevent the idmap script from writing its
mappings to the database, but no new unix ids will be allocated via
the allocator and hence no new mappings will be autogenerated.
2010-08-14 02:10:43 +02:00
Michael Adam
d5c3cb5a8a
s3:idmap_tdb2: use range from idmap_domain in idmap_tdb2_allocate_id
2010-08-14 02:10:43 +02:00
Michael Adam
4b10036da8
s3:idmap_tdb2: use filter from idmap_domain rather than from idmap_tdb2_context
2010-08-14 02:10:43 +02:00
Michael Adam
77096b9a26
s3:idmap_tdb2: pass idmap_domain (not idmap_tdb2_context) to idmap_tdb2_sid_to_id
2010-08-14 02:10:43 +02:00
Michael Adam
863212ad0e
s3:idmap_tdb2: pass idmap_domain instead of idmap_tdb2_context to idmap_tdb2_unixids_to_sids
...
The reason for this will become apparent later: The ranges are being moved to
the idmap_domain: They are universal.
2010-08-14 02:10:43 +02:00
Michael Adam
bb8a4415c8
s3:idmap_tdb2: also support idmap script for named domains
...
this can be configured via "idmap config DOMAIN : script = foobar"
2010-08-14 02:10:43 +02:00
Michael Adam
f27858548e
s3:idmap_tdb2: move the idmap script from idmap_tdb2_state to idmap_tdb2_context
...
The state (aka idmap_tdb2_alloc_context) is being removed.
The (global) idmap script was wrong there anyways.
It belongs to the per-domain context.
2010-08-14 02:10:43 +02:00
Michael Adam
834008c2cd
s3:idmap_tdb2: remove use of idmap_tdb2_state from idmap_tdb2_allocate_id
...
idmap_tdb2_state should actually be called idmap_tdb2_alloc_context.
This is being removed as the idmap and allocation is moved together.
We use the idmap_tdb2_context * that is sitting in dom->private_data.
This contains the same ranges as those in the state anyways.
Later, when we can also allocate for named domains, this will become
necessary anyways.
2010-08-14 02:10:43 +02:00
Michael Adam
1dfb20d029
s3:idmap_tdb2: move definition of struct idmap_tdb2_context up.
2010-08-14 02:10:42 +02:00
Michael Adam
5b264561e7
s3:idmap_tdb2: open the db after loading the ranges in idmap_tdb2_db_init().
2010-08-14 02:10:42 +02:00