1
0
mirror of https://github.com/samba-team/samba.git synced 2025-08-05 12:22:11 +03:00

join: Rename dc_join() so it looks like an object

dc_join() is creating an object, but it currently looks like it's
just a function call. Rename it to look more object-like.

Signed-off-by: Tim Beale <timbeale@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Gary Lockyer <gary@catalyst.net.nz>
This commit is contained in:
Tim Beale
2018-06-25 17:21:00 +12:00
committed by Gary Lockyer
parent bea990d296
commit 3ee38df87d
4 changed files with 44 additions and 31 deletions

View File

@ -50,7 +50,7 @@ class DCJoinException(Exception):
super(DCJoinException, self).__init__("Can't join, error: %s" % msg) super(DCJoinException, self).__init__("Can't join, error: %s" % msg)
class dc_join(object): class DCJoinContext(object):
"""Perform a DC join.""" """Perform a DC join."""
def __init__(ctx, logger=None, server=None, creds=None, lp=None, site=None, def __init__(ctx, logger=None, server=None, creds=None, lp=None, site=None,
@ -1418,9 +1418,10 @@ def join_RODC(logger=None, server=None, creds=None, lp=None, site=None, netbios_
backend_store=None): backend_store=None):
"""Join as a RODC.""" """Join as a RODC."""
ctx = dc_join(logger, server, creds, lp, site, netbios_name, targetdir, domain, ctx = DCJoinContext(logger, server, creds, lp, site, netbios_name,
machinepass, use_ntvfs, dns_backend, promote_existing, targetdir, domain, machinepass, use_ntvfs, dns_backend,
plaintext_secrets, backend_store=backend_store) promote_existing, plaintext_secrets,
backend_store=backend_store)
lp.set("workgroup", ctx.domain_name) lp.set("workgroup", ctx.domain_name)
logger.info("workgroup is %s" % ctx.domain_name) logger.info("workgroup is %s" % ctx.domain_name)
@ -1470,9 +1471,10 @@ def join_DC(logger=None, server=None, creds=None, lp=None, site=None, netbios_na
promote_existing=False, plaintext_secrets=False, promote_existing=False, plaintext_secrets=False,
backend_store=None): backend_store=None):
"""Join as a DC.""" """Join as a DC."""
ctx = dc_join(logger, server, creds, lp, site, netbios_name, targetdir, domain, ctx = DCJoinContext(logger, server, creds, lp, site, netbios_name,
machinepass, use_ntvfs, dns_backend, promote_existing, targetdir, domain, machinepass, use_ntvfs, dns_backend,
plaintext_secrets, backend_store=backend_store) promote_existing, plaintext_secrets,
backend_store=backend_store)
lp.set("workgroup", ctx.domain_name) lp.set("workgroup", ctx.domain_name)
logger.info("workgroup is %s" % ctx.domain_name) logger.info("workgroup is %s" % ctx.domain_name)
@ -1498,8 +1500,10 @@ def join_clone(logger=None, server=None, creds=None, lp=None,
targetdir=None, domain=None, include_secrets=False, targetdir=None, domain=None, include_secrets=False,
dns_backend="NONE"): dns_backend="NONE"):
"""Join as a DC.""" """Join as a DC."""
ctx = dc_join(logger, server, creds, lp, site=None, netbios_name=None, targetdir=targetdir, domain=domain, ctx = DCJoinContext(logger, server, creds, lp, site=None, netbios_name=None,
machinepass=None, use_ntvfs=False, dns_backend=dns_backend, promote_existing=False, clone_only=True) targetdir=targetdir, domain=domain, machinepass=None,
use_ntvfs=False, dns_backend=dns_backend,
promote_existing=False, clone_only=True)
lp.set("workgroup", ctx.domain_name) lp.set("workgroup", ctx.domain_name)
logger.info("workgroup is %s" % ctx.domain_name) logger.info("workgroup is %s" % ctx.domain_name)
@ -1522,8 +1526,9 @@ def join_subdomain(logger=None, server=None, creds=None, lp=None, site=None,
dns_backend=None, plaintext_secrets=False, dns_backend=None, plaintext_secrets=False,
backend_store=None): backend_store=None):
"""Join as a DC.""" """Join as a DC."""
ctx = dc_join(logger, server, creds, lp, site, netbios_name, targetdir, parent_domain, ctx = DCJoinContext(logger, server, creds, lp, site, netbios_name,
machinepass, use_ntvfs, dns_backend, plaintext_secrets, targetdir, parent_domain, machinepass, use_ntvfs,
dns_backend, plaintext_secrets,
backend_store=backend_store) backend_store=backend_store)
ctx.subdomain = True ctx.subdomain = True
if adminpass is None: if adminpass is None:

View File

@ -21,7 +21,7 @@ import sys
import shutil import shutil
import os import os
from samba.tests.dns_base import DNSTKeyTest from samba.tests.dns_base import DNSTKeyTest
from samba.join import dc_join from samba.join import DCJoinContext
from samba.dcerpc import drsuapi, misc, dns from samba.dcerpc import drsuapi, misc, dns
from samba.credentials import Credentials from samba.credentials import Credentials
@ -42,7 +42,8 @@ class JoinTestCase(DNSTKeyTest):
self.netbios_name = "jointest1" self.netbios_name = "jointest1"
logger = get_logger() logger = get_logger()
self.join_ctx = dc_join(server=self.server, creds=self.creds, lp=self.get_loadparm(), self.join_ctx = DCJoinContext(server=self.server, creds=self.creds,
lp=self.get_loadparm(),
netbios_name=self.netbios_name, netbios_name=self.netbios_name,
targetdir=self.tempdir, targetdir=self.tempdir,
domain=None, logger=logger, domain=None, logger=logger,

View File

@ -13,7 +13,7 @@ import samba
from samba.tests.subunitrun import SubunitOptions, TestProgram from samba.tests.subunitrun import SubunitOptions, TestProgram
import samba.getopt as options import samba.getopt as options
from samba.join import dc_join from samba.join import DCJoinContext
from ldb import ( from ldb import (
SCOPE_BASE, SCOPE_SUBTREE, LdbError, ERR_NO_SUCH_OBJECT, SCOPE_BASE, SCOPE_SUBTREE, LdbError, ERR_NO_SUCH_OBJECT,
@ -1841,11 +1841,12 @@ class AclSPNTests(AclTests):
self.computerdn = "CN=%s,CN=computers,%s" % (self.computername, self.base_dn) self.computerdn = "CN=%s,CN=computers,%s" % (self.computername, self.base_dn)
self.dc_dn = "CN=%s,OU=Domain Controllers,%s" % (self.dcname, self.base_dn) self.dc_dn = "CN=%s,OU=Domain Controllers,%s" % (self.dcname, self.base_dn)
self.site = "Default-First-Site-Name" self.site = "Default-First-Site-Name"
self.rodcctx = dc_join(server=host, creds=creds, lp=lp, self.rodcctx = DCJoinContext(server=host, creds=creds, lp=lp,
site=self.site, netbios_name=self.rodcname, targetdir=None, site=self.site, netbios_name=self.rodcname,
domain=None) targetdir=None, domain=None)
self.dcctx = dc_join(server=host, creds=creds, lp=lp, site=self.site, self.dcctx = DCJoinContext(server=host, creds=creds, lp=lp,
netbios_name=self.dcname, targetdir=None, domain=None) site=self.site, netbios_name=self.dcname,
targetdir=None, domain=None)
self.ldb_admin.newuser(self.test_user, self.user_pass) self.ldb_admin.newuser(self.test_user, self.user_pass)
self.ldb_user1 = self.get_ldb_connection(self.test_user, self.user_pass) self.ldb_user1 = self.get_ldb_connection(self.test_user, self.user_pass)
self.user_sid1 = self.sd_utils.get_object_sid(self.get_user_dn(self.test_user)) self.user_sid1 = self.sd_utils.get_object_sid(self.get_user_dn(self.test_user))

View File

@ -33,7 +33,7 @@ import ldb
from ldb import SCOPE_BASE from ldb import SCOPE_BASE
from samba import WERRORError from samba import WERRORError
from samba.join import dc_join from samba.join import DCJoinContext
from samba.dcerpc import drsuapi, misc, drsblobs, security from samba.dcerpc import drsuapi, misc, drsblobs, security
from samba.drs_utils import drs_DsBind, drs_Replicate from samba.drs_utils import drs_DsBind, drs_Replicate
from samba.ndr import ndr_unpack, ndr_pack from samba.ndr import ndr_unpack, ndr_pack
@ -101,9 +101,12 @@ class DrsRodcTestCase(drs_base.DrsBaseTestCase):
self.computer_dn = "CN=%s,OU=Domain Controllers,%s" % (self.rodc_name, self.base_dn) self.computer_dn = "CN=%s,OU=Domain Controllers,%s" % (self.rodc_name, self.base_dn)
self.rodc_ctx = dc_join(server=self.ldb_dc1.host_dns_name(), creds=self.get_credentials(), lp=self.get_loadparm(), self.rodc_ctx = DCJoinContext(server=self.ldb_dc1.host_dns_name(),
site=self.site, netbios_name=self.rodc_name, creds=self.get_credentials(),
targetdir=None, domain=None, machinepass=self.rodc_pass) lp=self.get_loadparm(), site=self.site,
netbios_name=self.rodc_name,
targetdir=None, domain=None,
machinepass=self.rodc_pass)
self._create_rodc(self.rodc_ctx) self._create_rodc(self.rodc_ctx)
self.rodc_ctx.create_tmp_samdb() self.rodc_ctx.create_tmp_samdb()
self.tmp_samdb = self.rodc_ctx.tmp_samdb self.tmp_samdb = self.rodc_ctx.tmp_samdb
@ -459,9 +462,12 @@ class DrsRodcTestCase(drs_base.DrsBaseTestCase):
""" """
# Create a new identical RODC with just the first letter missing # Create a new identical RODC with just the first letter missing
other_rodc_name = self.rodc_name[1:] other_rodc_name = self.rodc_name[1:]
other_rodc_ctx = dc_join(server=self.ldb_dc1.host_dns_name(), creds=self.get_credentials(), lp=self.get_loadparm(), other_rodc_ctx = DCJoinContext(server=self.ldb_dc1.host_dns_name(),
site=self.site, netbios_name=other_rodc_name, creds=self.get_credentials(),
targetdir=None, domain=None, machinepass=self.rodc_pass) lp=self.get_loadparm(), site=self.site,
netbios_name=other_rodc_name,
targetdir=None, domain=None,
machinepass=self.rodc_pass)
self._create_rodc(other_rodc_ctx) self._create_rodc(other_rodc_ctx)
other_rodc_creds = Credentials() other_rodc_creds = Credentials()