Michael Adam [Wed, 16 Jun 2010 07:19:21 +0000 (09:19 +0200)]
s3:idmap_tdb: convert idmap_tdb_allocate_id() to use transaction wrappers
Michael Adam [Tue, 15 Jun 2010 07:12:49 +0000 (09:12 +0200)]
s3:idmap_tdb: remove an extra blank line
Michael Adam [Thu, 17 Jun 2010 07:39:24 +0000 (09:39 +0200)]
s3:idmap_tdb2: add my (C)
Michael Adam [Wed, 23 Jun 2010 09:30:56 +0000 (11:30 +0200)]
s3:idmap_tdb2: move idmap_tdb2_new_mapping() up. spare a prototype.
Michael Adam [Wed, 16 Jun 2010 07:31:53 +0000 (09:31 +0200)]
s3:idmap_tdb2: get rid of an extra variable in idmap_tdb2_db_init().
Michael Adam [Thu, 17 Jun 2010 06:23:25 +0000 (08:23 +0200)]
s3:idmap_tdb2: move idmap_tdb2_set_mapping() up to its _action callback.
Michael Adam [Thu, 17 Jun 2010 06:04:53 +0000 (08:04 +0200)]
s3:idmap_tdb2: use the right talloc context for db_open in idmap_tdb2_open_db()
Michael Adam [Wed, 16 Jun 2010 20:02:54 +0000 (22:02 +0200)]
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.
Michael Adam [Wed, 16 Jun 2010 15:40:12 +0000 (17:40 +0200)]
s3:idmap_tdb2: add the db_context to the idmap_tdb2_context
this removes the idmap_tdb2 global variable
Michael Adam [Wed, 16 Jun 2010 20:36:33 +0000 (22:36 +0200)]
s3:idmap_tdb2: talloc_zero (instead of talloc) the idmap_tdb2_context
Michael Adam [Wed, 16 Jun 2010 15:30:07 +0000 (17:30 +0200)]
s3:idmap_tdb2: rename idmap_tdb2_alloc_load -> idmap_tdb2_init_hwm
Michael Adam [Wed, 16 Jun 2010 15:28:34 +0000 (17:28 +0200)]
s3:idmap_tdb2: move idmap_tdb2_alloc_load() up to reduce need for prototype
Michael Adam [Wed, 16 Jun 2010 15:26:26 +0000 (17:26 +0200)]
s3:idmap_tdb2: remove unused idmap_tdb2_state and idmap_tdb2_load_ranges
Michael Adam [Wed, 16 Jun 2010 15:24:40 +0000 (17:24 +0200)]
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
Michael Adam [Wed, 16 Jun 2010 15:21:27 +0000 (17:21 +0200)]
s3:idmap_tdb2: add an idmap_domain struct argument to idmap_tdb2_open_db()
Michael Adam [Wed, 16 Jun 2010 15:31:52 +0000 (17:31 +0200)]
s3:idmap_tdb2: remove filter_low_id and filter_high_id from idmap_tdb2_context
Now these are taken from the idmap_domain struct.
Michael Adam [Wed, 16 Jun 2010 15:17:44 +0000 (17:17 +0200)]
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.
Michael Adam [Tue, 1 Jun 2010 14:45:51 +0000 (16:45 +0200)]
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.
Michael Adam [Wed, 16 Jun 2010 15:14:51 +0000 (17:14 +0200)]
s3:idmap_tdb2: use range from idmap_domain in idmap_tdb2_allocate_id
Michael Adam [Wed, 16 Jun 2010 15:12:44 +0000 (17:12 +0200)]
s3:idmap_tdb2: use filter from idmap_domain rather than from idmap_tdb2_context
Michael Adam [Wed, 16 Jun 2010 15:06:17 +0000 (17:06 +0200)]
s3:idmap_tdb2: pass idmap_domain (not idmap_tdb2_context) to idmap_tdb2_sid_to_id
Michael Adam [Wed, 16 Jun 2010 14:02:07 +0000 (16:02 +0200)]
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.
Michael Adam [Wed, 16 Jun 2010 13:49:30 +0000 (15:49 +0200)]
s3:idmap_tdb2: also support idmap script for named domains
this can be configured via "idmap config DOMAIN : script = foobar"
Michael Adam [Wed, 16 Jun 2010 13:47:23 +0000 (15:47 +0200)]
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.
Michael Adam [Wed, 16 Jun 2010 13:31:55 +0000 (15:31 +0200)]
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.
Michael Adam [Wed, 16 Jun 2010 13:31:05 +0000 (15:31 +0200)]
s3:idmap_tdb2: move definition of struct idmap_tdb2_context up.
Michael Adam [Wed, 16 Jun 2010 13:08:16 +0000 (15:08 +0200)]
s3:idmap_tdb2: open the db after loading the ranges in idmap_tdb2_db_init().
Michael Adam [Thu, 29 Jul 2010 21:13:54 +0000 (23:13 +0200)]
s3:idmap_tdb2: add allocation of new mappings to idmap_tdb2_sids_to_unixids
This moves the new_mapping feature inside the tdb2 backend to make creations
of mappings atomic.
Note: The new internal function idmap_tdb2_get_new_id() that is used to allocate
a new unix id is prepared to function for multiple explicitly configured idmap
domains, but currently it does only work for the default domain. The extended
allocation support requires extension of the data base format to store multiple
counters (per domain). This will be added in a later step (TODO!).
Michael Adam [Tue, 22 Jun 2010 12:47:11 +0000 (14:47 +0200)]
s3:idmap_tdb2: re-implement allocated_id in idmap methods.
Michael Adam [Wed, 16 Jun 2010 14:59:26 +0000 (16:59 +0200)]
s3:idmap: add idmap_unix_id_is_in_range() for checking an id against an idmap range
Michael Adam [Tue, 22 Jun 2010 14:29:13 +0000 (16:29 +0200)]
s3:idmap: don't check range for passdb idmap domain
Michael Adam [Wed, 16 Jun 2010 14:07:55 +0000 (16:07 +0200)]
s3:idmap: parse ranges and "read only" in idmap_init_domain().
Michael Adam [Thu, 29 Jul 2010 15:51:13 +0000 (17:51 +0200)]
s3:idmap: add a read_only flag to the idmap_domain struct.
This will be used to mark "allocating backends" (tdb, tdb2, ldap) read-only.
Michael Adam [Wed, 16 Jun 2010 14:05:34 +0000 (16:05 +0200)]
s3:idmap: add low_id and high_id to the idmap_domain struct
This global data will replace the backend-specific filter_low_id
and filter_high_id. The presence of a range is generic to all
idmap configs.
Michael Adam [Mon, 31 May 2010 13:55:01 +0000 (15:55 +0200)]
s3:docs: fix net manpage to reflect removal of net "idmap secret alloc" feature
Michael Adam [Mon, 31 May 2010 13:00:38 +0000 (15:00 +0200)]
s3:net: remove the "net idmap secret alloc" functionality.
This is now not available any more, since allocation is moved
below the id mapping layer. The functionality could be
reintroduced on a per domain basis as an e.g
"net idmap secret <domain> alloc" command.
Michael Adam [Fri, 30 Jul 2010 13:15:47 +0000 (15:15 +0200)]
s3:docs: add documentation for new "idmap read only" parameter
Michael Adam [Tue, 1 Jun 2010 13:35:01 +0000 (15:35 +0200)]
s3:loadparm: add new boolean parameter "idmap read only"
This will be used to be able to put the default idmap config
read only. This can make sense for instance with the tdb2
idmap backend and using the idmap script feature.
Michael Adam [Fri, 30 Jul 2010 13:01:37 +0000 (15:01 +0200)]
s3:docs: remove documentation of removed parameter "idmap alloc backend"
Michael Adam [Mon, 31 May 2010 13:53:27 +0000 (15:53 +0200)]
s3:loadparm: remove parameter "idmap alloc backend"
Michael Adam [Mon, 31 May 2010 09:56:55 +0000 (11:56 +0200)]
s3:idmap: remove unused definition of idmap_alloc_methods.
Allocation is now completely handled in the allocating backends.
Michael Adam [Mon, 31 May 2010 09:55:18 +0000 (11:55 +0200)]
s3:idmap: remove idmap_alloc_context from idmap.c
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
No list of alloc backends is maintained any more in the top level.
Michael Adam [Mon, 31 May 2010 09:47:04 +0000 (11:47 +0200)]
s3:idmap: remove the alloc methods list from idmap.c
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
No list of alloc backends is maintained any more in the top level.
Michael Adam [Mon, 31 May 2010 09:45:58 +0000 (11:45 +0200)]
s3:idmap: remove unused get_alloc_methods().
Michael Adam [Mon, 31 May 2010 09:44:44 +0000 (11:44 +0200)]
s3:idmap: remove unused smb_register_idmap_alloc().
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
Michael Adam [Mon, 31 May 2010 09:41:05 +0000 (11:41 +0200)]
s3:idmap_ldap: remove unused idmap_ldap_alloc_methods.
Michael Adam [Mon, 31 May 2010 09:38:58 +0000 (11:38 +0200)]
s3:idmap_ldap: remoce unused idmap_alloc_ldap_init
Michael Adam [Mon, 31 May 2010 09:37:40 +0000 (11:37 +0200)]
s3:idmap_ldap: don't call idmap_alloc_ldap_init in idmap_ldap_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
Michael Adam [Mon, 31 May 2010 09:34:46 +0000 (11:34 +0200)]
s3:idmap_tdb: remove unused idmap_alloc_methods
Michael Adam [Mon, 31 May 2010 09:33:34 +0000 (11:33 +0200)]
s3:idmap_tdb: remove unused idmap_alloc_tdb_init()
Michael Adam [Mon, 31 May 2010 09:32:20 +0000 (11:32 +0200)]
s3:idmap_tdb: don't call idmap_alloc_tdb_init in idmap_tdb_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
Michael Adam [Mon, 31 May 2010 09:29:00 +0000 (11:29 +0200)]
s3:idmap_tdb2: remove unused idmap_tdb2_alloc_init().
Michael Adam [Mon, 31 May 2010 09:28:02 +0000 (11:28 +0200)]
s3:idmap_tdb2: remove unused idmap_tdb2_alloc_close().
Michael Adam [Mon, 31 May 2010 09:27:18 +0000 (11:27 +0200)]
s3:idmap_tdb2: remove unused idmap_alloc_methods.
Michael Adam [Mon, 31 May 2010 09:24:52 +0000 (11:24 +0200)]
s3:idmap_tdb2: don't call smb_register_idmap_alloc() in idmap_tdb2_init
The registering of alloc backends is being removed.
The idmap backends are responsible for initializing
their alloc code on their own if necessary.
Michael Adam [Mon, 31 May 2010 08:14:18 +0000 (10:14 +0200)]
s3:idmap_tdb: make idmap_alloc_tdb_init() static.
Michael Adam [Sun, 30 May 2010 22:27:23 +0000 (00:27 +0200)]
s3:idmap: remove unused idmap_alloc_init().
Michael Adam [Thu, 29 Jul 2010 21:20:21 +0000 (23:20 +0200)]
s3:idmap: use allocate_id() from the idmap_methods in idmap_allocate_unixid()
The idmap alloc methods are being removed.
Michael Adam [Tue, 22 Jun 2010 12:31:24 +0000 (14:31 +0200)]
s3:idmap: add an allocate_id method to the idmap_methods struct.
The idmap_alloc_methods are being removed, but this single "alloc" method
is still needed for the samba-wide Unix-ID allocator, which is used in
group-mapping and ldapsam:editposix.
This method should ultimately also disappear.
Michael Adam [Sun, 30 May 2010 19:40:44 +0000 (21:40 +0200)]
s3:idmap: factor out common code of idmap_allocate_uid|gid()
into new idmap_allocate_unixid().
Michael Adam [Wed, 19 May 2010 08:20:08 +0000 (10:20 +0200)]
s3:idmap: remove the set_mapping method from the idmap API
Michael Adam [Thu, 20 May 2010 08:28:03 +0000 (10:28 +0200)]
s3:idmap: remove idmap_new_mapping() - now implemented in the backends
Michael Adam [Sat, 15 May 2010 22:32:10 +0000 (00:32 +0200)]
s3:idmap: add a debug message to idmap_sid_to_gid
Michael Adam [Sat, 15 May 2010 22:31:39 +0000 (00:31 +0200)]
s3:idmap: add a debug message to idmap_sid_to_uid
Michael Adam [Fri, 14 May 2010 14:19:46 +0000 (16:19 +0200)]
s3:idmap: don't call idmap_new_mapping idmap_sid_to_gid
The setting of a new mapping is moved into the backend code
to achieve atomicity and greater flexibility.
Michael
Michael Adam [Fri, 14 May 2010 14:18:16 +0000 (16:18 +0200)]
s3:idmap: don't call idmap_new_mapping idmap_sid_to_unixid.
The setting of a new mapping is moved into the backend code
to achieve atomicity and greater flexibility.
Michael
Michael Adam [Thu, 22 Jan 2009 17:05:20 +0000 (18:05 +0100)]
s3:winbind: increase interface version after removing calls
Michael
Michael Adam [Thu, 22 Jan 2009 16:59:18 +0000 (17:59 +0100)]
s3:idmap: remove unused method set_id_hwm from idmap API
Michael
Michael Adam [Thu, 22 Jan 2009 16:56:19 +0000 (17:56 +0100)]
s3:idmap: remove unused alloc method get_id_hwm from idmap API
Michael
Michael Adam [Thu, 22 Jan 2009 14:52:34 +0000 (15:52 +0100)]
s3:idmap: remove unused method dump_data() from the idmap API
Michael
Michael Adam [Thu, 22 Jan 2009 13:44:24 +0000 (14:44 +0100)]
s3:idmap: remove the remove_mapping method from API and backends
Michael
Michael Adam [Thu, 22 Jan 2009 13:38:21 +0000 (14:38 +0100)]
s3:idmap: remove unused idmap_remove_mapping().
Michael
Michael Adam [Thu, 22 Jan 2009 13:36:51 +0000 (14:36 +0100)]
s4: remove REMOVE_MAPPING from wb_samba3_protocol
Michael
Michael Adam [Thu, 22 Jan 2009 13:34:50 +0000 (14:34 +0100)]
s3:winbind: remove the method REMOVE_MAPPING from winbind's API
Michael
Michael Adam [Thu, 22 Jan 2009 13:31:55 +0000 (14:31 +0100)]
s3:idmap: remove unused idmap_set_mapping().
Michael
Michael Adam [Thu, 22 Jan 2009 13:30:25 +0000 (14:30 +0100)]
s4: remove SET_MAPPING from wb_samba3_protocol
Michael
Michael Adam [Thu, 22 Jan 2009 13:29:15 +0000 (14:29 +0100)]
s3:winbind: remove the method SET_MAPPING from winbind's API
Michael
Michael Adam [Thu, 22 Jan 2009 12:57:21 +0000 (13:57 +0100)]
libwbclient: unimplement wbcRemoveGidMapping()
Michael
Michael Adam [Thu, 22 Jan 2009 12:56:09 +0000 (13:56 +0100)]
libwbclient: unimplement wbcRemoveUidMapping()
Michael
Michael Adam [Thu, 22 Jan 2009 12:54:03 +0000 (13:54 +0100)]
libwbclient: unimplement wbcSetGidMapping()
Michael
Michael Adam [Thu, 22 Jan 2009 12:51:53 +0000 (13:51 +0100)]
libwbclient: unimplement wbcSetUidMapping()
Michael
Michael Adam [Thu, 22 Jan 2009 12:49:42 +0000 (13:49 +0100)]
s3:idmap: remove unused idmap_set_gid_hwm()
Michael
Michael Adam [Thu, 22 Jan 2009 12:49:06 +0000 (13:49 +0100)]
s3:idmap: remove unused idmap_set_uid_hwm()
Michael
Michael Adam [Thu, 22 Jan 2009 12:46:25 +0000 (13:46 +0100)]
s4: remove SET_HWM and SET_DUAL_HWM from wb_samba3_protocol
Michael
Michael Adam [Sun, 27 Jun 2010 22:34:29 +0000 (00:34 +0200)]
s3:winbind: remove SET_HWM from winbind's API.
Michael Adam [Thu, 22 Jan 2009 12:39:33 +0000 (13:39 +0100)]
libwbclient: unimplement wbcSetGidHwm()
Michael
Michael Adam [Thu, 22 Jan 2009 12:37:11 +0000 (13:37 +0100)]
libwbclient: unimplement wbcSetUidHwm()
Michael
Michael Adam [Thu, 22 Jan 2009 12:33:54 +0000 (13:33 +0100)]
s3:net: rewrite "net idmap restore" using dbwrap
This removes the use of libwbclient from "net idmap".
This detects the idmap backend from the current smb.conf
and stores the id mapping tables in the corresponding data bases.
Currently, only tdb and tdb2 backends are supported.
Support for the ldap backend may be implemented later.
Michael Adam [Mon, 14 Jun 2010 10:25:11 +0000 (12:25 +0200)]
s3:net: change "net idmap dump" to use dbwrap instead of direct tdb access
This way, it will also work in a samba-ctdb cluster.
Michael Adam [Thu, 22 Jan 2009 11:20:46 +0000 (12:20 +0100)]
s3:net sam provision: compose sid before getting uid for Guest
Michael
Michael Adam [Thu, 22 Jan 2009 11:12:43 +0000 (12:12 +0100)]
s3:net sam provision: allocate the uid after composing the sid for Administrator
Michael
Michael Adam [Thu, 22 Jan 2009 11:01:16 +0000 (12:01 +0100)]
s3:pdb_ldap: move some code in ldapsam_create_dom_group()
to make the flow more similar to ldapsam_create_user().
This prepares for calling winbind_sid_to_gid() instead of
winbind_allocate_gid(): we need the group_sid for this...
Michael
Michael Adam [Thu, 22 Jan 2009 10:10:01 +0000 (11:10 +0100)]
s3:groupdb: allocate a gid after allocating a rid in pdb_default_create_alias()
Michael
Michael Adam [Tue, 1 Jun 2010 12:03:32 +0000 (14:03 +0200)]
s3:idmap_tdb2: fix a debug message
Michael Adam [Fri, 13 Aug 2010 23:54:37 +0000 (01:54 +0200)]
s3:test: add a new "valgrindtestenv" target, similar to gdbtestenv
this runs the daemins in xterm under valgrind instead of in gdb
Michael Adam [Fri, 13 Aug 2010 23:52:41 +0000 (01:52 +0200)]
s3:gdbtestenv: also start an xterm with nmbd. and start winbindd before smbd.
Michael Adam [Fri, 13 Aug 2010 23:49:52 +0000 (01:49 +0200)]
s3:gdbtestenv: also set the xterm's window title appropriately
Michael Adam [Fri, 13 Aug 2010 23:48:09 +0000 (01:48 +0200)]
s3:gdbtestenv: print the server's name in the icontitle instead of "server"
Michael Adam [Fri, 13 Aug 2010 15:29:07 +0000 (17:29 +0200)]
pidl: fix printing of server side ndr request debug messages
The macros NDR_PRINT_IN_DEBUG and NDR_PRINT_OUT_DEBUG are made for
the client side. For the server side, the NDR_SET_VALUES flag needs
to be added for the OUT struct and not for the IN struct, otherwise,
the OUT part can print uninitialized data and the IN part may
recalculate string lengths illegally.
Volker Lendecke [Fri, 13 Aug 2010 20:51:29 +0000 (22:51 +0200)]
s3: Fix some error messages