r15543: New implementation of 'net ads join' to be more like Windows XP.
authorGerald Carter <jerry@samba.org>
Fri, 12 May 2006 15:17:35 +0000 (15:17 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 16:16:57 +0000 (11:16 -0500)
commit4c4ea7b20f44cd200cef8c7b389d51b72eccc39b
tree176f89468f9d963456935e7a697e337f8ed5ad09
parente4734cb99cae189edf49c4d8f4e4324f5c51f443
r15543: New implementation of 'net ads join' to be more like Windows XP.
The motivating factor is to not require more privileges for
the user account than Windows does when joining a domain.

The points of interest are

* net_ads_join() uses same rpc mechanisms as net_rpc_join()
* Enable CLDAP queries for filling in the majority of the
  ADS_STRUCT->config information
* Remove ldap_initialized() from sam/idmap_ad.c and
  libads/ldap.c
* Remove some unnecessary fields from ADS_STRUCT
* Manually set the dNSHostName and servicePrincipalName attribute
  using the machine account after the join

Thanks to Guenther and Simo for the review.

Still to do:

* Fix the userAccountControl for DES only systems
* Set the userPrincipalName in order to support things like
  'kinit -k' (although we might be able to just use the sAMAccountName
  instead)
* Re-add support for pre-creating the machine account in
  a specific OU
16 files changed:
source/Makefile.in
source/include/ads.h
source/include/ads_cldap.h [new file with mode: 0644]
source/include/includes.h
source/libads/ads_struct.c
source/libads/cldap.c [moved from source/utils/net_ads_cldap.c with 68% similarity]
source/libads/ldap.c
source/libsmb/namequery.c
source/nsswitch/winbindd_cm.c
source/printing/nt_printing.c
source/sam/idmap_ad.c
source/utils/net.c
source/utils/net.h
source/utils/net_ads.c
source/utils/net_rpc.c
source/utils/net_rpc_join.c