s4-selftest: Add test of RPC to a netbios alias
[kai/samba.git] / selftest / target / Samba4.pm
index 029629d954e278b5afa190dbcf430930f4ee93de..fa7988f67aa5d08389e8320afdfa2da1f7db249b 100644 (file)
@@ -602,7 +602,7 @@ sub provision_raw_step1($$)
        panic action = $RealBin/gdb_backtrace \%d
        wins support = yes
        server role = $ctx->{server_role}
-       server services = +echo
+       server services = +echo +dns
        notify:inotify = false
        ldb:nosync = true
 #We don't want to pass our self-tests if the PAC code is wrong
@@ -614,6 +614,7 @@ sub provision_raw_step1($$)
         spn update command = $ENV{SRCDIR_ABS}/source4/scripting/bin/samba_spnupdate
         resolv:host file = $ctx->{dns_host_file}
        dreplsrv:periodic_startup_interval = 0
+       dsdb:schema update allowed = yes
 
         passdb backend = samba4
 
@@ -868,6 +869,7 @@ sub provision_member($$$)
        $cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" ";
        $cmd .= "$samba_tool domain join $ret->{CONFIGURATION} $dcvars->{REALM} member";
        $cmd .= " -U$dcvars->{DC_USERNAME}\%$dcvars->{DC_PASSWORD}";
+       $cmd .= " --machinepass=machine$ret->{password}";
 
        unless (system($cmd) == 0) {
                warn("Join failed\n$cmd");
@@ -936,6 +938,7 @@ sub provision_rpc_proxy($$$)
        $cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" ";
        $cmd .= "$samba_tool domain join $ret->{CONFIGURATION} $dcvars->{REALM} member";
        $cmd .= " -U$dcvars->{DC_USERNAME}\%$dcvars->{DC_PASSWORD}";
+       $cmd .= " --machinepass=machine$ret->{password}";
 
        unless (system($cmd) == 0) {
                warn("Join failed\n$cmd");
@@ -1020,6 +1023,7 @@ sub provision_vampire_dc($$$)
        $cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" ";
        $cmd .= "$samba_tool domain join $ret->{CONFIGURATION} $dcvars->{REALM} DC --realm=$dcvars->{REALM}";
        $cmd .= " -U$dcvars->{DC_USERNAME}\%$dcvars->{DC_PASSWORD} --domain-critical-only";
+       $cmd .= " --machinepass=machine$ret->{password}";
 
        unless (system($cmd) == 0) {
                warn("Join failed\n$cmd");
@@ -1082,6 +1086,7 @@ sub provision_subdom_dc($$$)
        $cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" ";
        $cmd .= "$samba_tool domain join $ret->{CONFIGURATION} $ctx->{realm} subdomain ";
        $cmd .= "--parent-domain=$dcvars->{REALM} -U$dcvars->{DC_USERNAME}\@$dcvars->{REALM}\%$dcvars->{DC_PASSWORD}";
+       $cmd .= " --machinepass=machine$ret->{password}";
 
        unless (system($cmd) == 0) {
                warn("Join failed\n$cmd");
@@ -1114,15 +1119,14 @@ sub provision_dc($$)
                                   "2008",
                                   21,
                                   "locDCpass1",
-                                  undef, "netbios aliases = DC1");
+                                  undef, "netbios aliases = localDC1-a");
 
        return undef unless(defined $ret);
        unless($self->add_wins_config("$prefix/private")) {
                warn("Unable to add wins configuration");
                return undef;
        }
-
-       $ret->{NETBIOSALIAS} = "DC1";
+       $ret->{NETBIOSALIAS} = "localdc1-a";
        $ret->{DC_SERVER} = $ret->{SERVER};
        $ret->{DC_SERVER_IP} = $ret->{SERVER_IP};
        $ret->{DC_NETBIOSNAME} = $ret->{NETBIOSNAME};
@@ -1426,65 +1430,6 @@ sub setup_env($$$)
                return $target3->setup_admember("$path/s3member", $self->{vars}->{dc}, 29);
        } elsif ($envname eq "plugin_s4_dc") {
                return $self->setup_plugin_s4_dc("$path/plugin_s4_dc");
-       } elsif ($envname eq "all") {
-               if (not defined($self->{vars}->{dc})) {
-                       $ENV{ENVNAME} = "dc";
-                       $self->setup_dc("$path/dc");
-               }
-               my $ret = $self->setup_member("$path/s4member", $self->{vars}->{dc});
-               if (not defined($self->{vars}->{rpc_proxy})) {
-                       $ENV{ENVNAME} = "rpc_proxy";
-                       my $rpc_proxy_ret = $self->setup_rpc_proxy("$path/rpc_proxy", $self->{vars}->{dc});
-                       
-                       $ret->{RPC_PROXY_SERVER} = $rpc_proxy_ret->{SERVER};
-                       $ret->{RPC_PROXY_SERVER_IP} = $rpc_proxy_ret->{SERVER_IP};
-                       $ret->{RPC_PROXY_NETBIOSNAME} = $rpc_proxy_ret->{NETBIOSNAME};
-                       $ret->{RPC_PROXY_USERNAME} = $rpc_proxy_ret->{USERNAME};
-                       $ret->{RPC_PROXY_PASSWORD} = $rpc_proxy_ret->{PASSWORD};
-               }
-               if (not defined($self->{vars}->{fl2000dc})) {
-                       $ENV{ENVNAME} = "fl2000dc";
-                       my $fl2000dc_ret = $self->setup_fl2000dc("$path/fl2000dc", $self->{vars}->{dc});
-                       
-                       $ret->{FL2000DC_SERVER} = $fl2000dc_ret->{SERVER};
-                       $ret->{FL2000DC_SERVER_IP} = $fl2000dc_ret->{SERVER_IP};
-                       $ret->{FL2000DC_NETBIOSNAME} = $fl2000dc_ret->{NETBIOSNAME};
-                       $ret->{FL2000DC_USERNAME} = $fl2000dc_ret->{USERNAME};
-                       $ret->{FL2000DC_PASSWORD} = $fl2000dc_ret->{PASSWORD};
-               }
-               if (not defined($self->{vars}->{fl2003dc})) {
-                       $ENV{ENVNAME} = "fl2003dc";
-                       my $fl2003dc_ret = $self->setup_fl2003dc("$path/fl2003dc", $self->{vars}->{dc});
-
-                       $ret->{FL2003DC_SERVER} = $fl2003dc_ret->{SERVER};
-                       $ret->{FL2003DC_SERVER_IP} = $fl2003dc_ret->{SERVER_IP};
-                       $ret->{FL2003DC_NETBIOSNAME} = $fl2003dc_ret->{NETBIOSNAME};
-                       $ret->{FL2003DC_USERNAME} = $fl2003dc_ret->{USERNAME};
-                       $ret->{FL2003DC_PASSWORD} = $fl2003dc_ret->{PASSWORD};
-               }
-               if (not defined($self->{vars}->{fl2008r2dc})) {
-                       $ENV{ENVNAME} = "fl2008r2dc";
-                       my $fl2008r2dc_ret = $self->setup_fl2008r2dc("$path/fl2008r2dc", $self->{vars}->{dc});
-
-                       $ret->{FL2008R2DC_SERVER} = $fl2008r2dc_ret->{SERVER};
-                       $ret->{FL2008R2DC_SERVER_IP} = $fl2008r2dc_ret->{SERVER_IP};
-                       $ret->{FL2008R2DC_NETBIOSNAME} = $fl2008r2dc_ret->{NETBIOSNAME};
-                       $ret->{FL2008R2DC_USERNAME} = $fl2008r2dc_ret->{USERNAME};
-                       $ret->{FL2008R2DC_PASSWORD} = $fl2008r2dc_ret->{PASSWORD};
-               }
-               if (not defined($self->{vars}->{s3member})) {
-                       $ENV{ENVNAME} = "s3member";
-                       my $s3member_ret = $target3->setup_admember("$path/s3member", $self->{vars}->{dc}, 29);
-                       $self->{vars}->{s3member} = $s3member_ret;
-
-                       $ret->{S3MEMBER_SERVER} = $s3member_ret->{SERVER};
-                       $ret->{S3MEMBER_SERVER_IP} = $s3member_ret->{SERVER_IP};
-                       $ret->{S3MEMBER_NETBIOSNAME} = $s3member_ret->{NETBIOSNAME};
-                       $ret->{S3MEMBER_NETBIOSALIAS} = $s3member_ret->{NETBIOSALIAS};
-                       $ret->{S3MEMBER_USERNAME} = $s3member_ret->{USERNAME};
-                       $ret->{S3MEMBER_PASSWORD} = $s3member_ret->{PASSWORD};
-               }
-               return $ret;
        } else {
                return undef;
        }