3 # Copyright Matthias Dieter Wallnoefer 2009
4 # Copyright Andrew Kroeger 2009
5 # Copyright Jelmer Vernooij 2007-2012
6 # Copyright Giampaolo Lauria 2011
7 # Copyright Matthieu Patou <mat@matws.net> 2011
8 # Copyright Andrew Bartlett 2008-2015
9 # Copyright Stefan Metzmacher 2012
11 # This program is free software; you can redistribute it and/or modify
12 # it under the terms of the GNU General Public License as published by
13 # the Free Software Foundation; either version 3 of the License, or
14 # (at your option) any later version.
16 # This program is distributed in the hope that it will be useful,
17 # but WITHOUT ANY WARRANTY; without even the implied warranty of
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 # GNU General Public License for more details.
21 # You should have received a copy of the GNU General Public License
22 # along with this program. If not, see <http://www.gnu.org/licenses/>.
25 from samba
import is_ad_dc_built
26 from samba
.netcmd
import SuperCommand
28 from .auth
import cmd_domain_auth
29 from .backup
import cmd_domain_backup
30 from .claim
import cmd_domain_claim
31 from .classicupgrade
import cmd_domain_classicupgrade
32 from .common
import (common_join_options
, common_ntvfs_options
,
33 common_provision_join_options
)
34 from .dcpromo
import cmd_domain_dcpromo
35 from .demote
import cmd_domain_demote
36 from .functional_prep
import cmd_domain_functional_prep
37 from .info
import cmd_domain_info
38 from .join
import cmd_domain_join
39 from .kds
import cmd_domain_kds
40 from .keytab
import cmd_domain_export_keytab
41 from .leave
import cmd_domain_leave
42 from .level
import cmd_domain_level
43 from .passwordsettings
import cmd_domain_passwordsettings
44 from .provision
import cmd_domain_provision
45 from .samba3upgrade
import cmd_domain_samba3upgrade
46 from .schemaupgrade
import cmd_domain_schema_upgrade
47 from .tombstones
import cmd_domain_tombstones
48 from .trust
import cmd_domain_trust
51 class cmd_domain(SuperCommand
):
52 """Domain management."""
55 if cmd_domain_export_keytab
is not None:
56 subcommands
["exportkeytab"] = cmd_domain_export_keytab()
57 subcommands
["info"] = cmd_domain_info()
58 subcommands
["join"] = cmd_domain_join()
59 subcommands
["leave"] = cmd_domain_leave()
60 subcommands
["claim"] = cmd_domain_claim()
61 subcommands
["auth"] = cmd_domain_auth()
63 subcommands
["demote"] = cmd_domain_demote()
64 subcommands
["provision"] = cmd_domain_provision()
65 subcommands
["dcpromo"] = cmd_domain_dcpromo()
66 subcommands
["kds"] = cmd_domain_kds()
67 subcommands
["level"] = cmd_domain_level()
68 subcommands
["passwordsettings"] = cmd_domain_passwordsettings()
69 subcommands
["classicupgrade"] = cmd_domain_classicupgrade()
70 subcommands
["samba3upgrade"] = cmd_domain_samba3upgrade()
71 subcommands
["trust"] = cmd_domain_trust()
72 subcommands
["tombstones"] = cmd_domain_tombstones()
73 subcommands
["schemaupgrade"] = cmd_domain_schema_upgrade()
74 subcommands
["functionalprep"] = cmd_domain_functional_prep()
75 subcommands
["backup"] = cmd_domain_backup()