[SCM] Samba Shared Repository - branch master updated
Günther Deschner
gd at samba.org
Mon Jan 27 15:56:02 UTC 2020
The branch, master has been updated
via 0ad6a243b25 lib:util: Log mkdir error on correct debug levels
via f9173c18a6a selftest: Convert Samba3::provision() to named parameters
via 26da6f562bb selftest: Factor out create_file_chmod()
from b2c13d9a162 krb5-wrap: deal with different krb5_trace_info struct flavors (earlier MIT krb5 releases)
https://git.samba.org/?p=samba.git;a=shortlog;h=master
- Log -----------------------------------------------------------------
commit 0ad6a243b259d284064c0c5abcc7d430d55be7e1
Author: Andreas Schneider <asn at samba.org>
Date: Mon Jan 27 14:58:10 2020 +0100
lib:util: Log mkdir error on correct debug levels
For smbd we want an error and for smbclient we only want it in NOTICE
debug level.
The default log level of smbclient is log level 1 so we need notice to
not spam the user.
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14253
Signed-off-by: Andreas Schneider <asn at samba.org>
Reviewed-by: Guenther Deschner <gd at samba.org>
Autobuild-User(master): Günther Deschner <gd at samba.org>
Autobuild-Date(master): Mon Jan 27 15:55:24 UTC 2020 on sn-devel-184
commit f9173c18a6acee12b0a0c20bf12af8d53947f8eb
Author: Volker Lendecke <vl at samba.org>
Date: Fri Jan 24 10:45:52 2020 +0100
selftest: Convert Samba3::provision() to named parameters
9 positional parameters is a bit too much for easy overview
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Guenther Deschner <gd at samba.org>
commit 26da6f562bba3ceea1fe5889e969bcef59346f4e
Author: Volker Lendecke <vl at samba.org>
Date: Thu Jan 23 16:07:59 2020 +0100
selftest: Factor out create_file_chmod()
24 lines less perl :-)
Signed-off-by: Volker Lendecke <vl at samba.org>
Reviewed-by: Guenther Deschner <gd at samba.org>
-----------------------------------------------------------------------
Summary of changes:
lib/util/util.c | 7 +-
selftest/target/Samba3.pm | 215 ++++++++++++++++++++++++----------------------
2 files changed, 115 insertions(+), 107 deletions(-)
Changeset truncated at 500 lines:
diff --git a/lib/util/util.c b/lib/util/util.c
index 3bdeded5c1b..0d9ffe5cb7b 100644
--- a/lib/util/util.c
+++ b/lib/util/util.c
@@ -353,9 +353,12 @@ _PUBLIC_ bool directory_create_or_exist(const char *dname,
old_umask = umask(0);
ret = mkdir(dname, dir_perms);
if (ret == -1 && errno != EEXIST) {
- DBG_WARNING("mkdir failed on directory %s: %s\n",
+ int dbg_level = geteuid() == 0 ? DBGLVL_ERR : DBGLVL_NOTICE;
+
+ DBG_PREFIX(dbg_level,
+ ("mkdir failed on directory %s: %s\n",
dname,
- strerror(errno));
+ strerror(errno)));
umask(old_umask);
return false;
}
diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm
index cdbbbdcef3d..991963b6074 100755
--- a/selftest/target/Samba3.pm
+++ b/selftest/target/Samba3.pm
@@ -219,10 +219,12 @@ sub setup_nt4_dc
check parent directory delete on close = yes
";
- my $vars = $self->provision($path, "SAMBA-TEST",
- "LOCALNT4DC2",
- "localntdc2pass",
- $nt4_dc_options);
+ my $vars = $self->provision(
+ prefix => $path,
+ domain => "SAMBA-TEST",
+ server => "LOCALNT4DC2",
+ password => "localntdc2pass",
+ extra_options => $nt4_dc_options);
$vars or return undef;
@@ -268,10 +270,12 @@ sub setup_nt4_dc_schannel
server max protocol = SMB2_02
";
- my $vars = $self->provision($path, "NT4SCHANNEL",
- "LOCALNT4DC9",
- "localntdc9pass",
- $pdc_options);
+ my $vars = $self->provision(
+ prefix => $path,
+ domain => "NT4SCHANNEL",
+ server => "LOCALNT4DC9",
+ password => "localntdc9pass",
+ extra_options => $pdc_options);
$vars or return undef;
@@ -306,10 +310,12 @@ sub setup_nt4_member
dbwrap_tdb_mutexes:* = yes
${require_mutexes}
";
- my $ret = $self->provision($prefix, $nt4_dc_vars->{DOMAIN},
- "LOCALNT4MEMBER3",
- "localnt4member3pass",
- $member_options);
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => $nt4_dc_vars->{DOMAIN},
+ server => "LOCALNT4MEMBER3",
+ password => "localnt4member3pass",
+ extra_options => $member_options);
$ret or return undef;
@@ -429,12 +435,14 @@ sub setup_ad_member
";
- my $ret = $self->provision($prefix, $dcvars->{DOMAIN},
- "LOCALADMEMBER",
- "loCalMemberPass",
- $member_options,
- $dcvars->{SERVER_IP},
- $dcvars->{SERVER_IPV6});
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => $dcvars->{DOMAIN},
+ server => "LOCALADMEMBER",
+ password => "loCalMemberPass",
+ extra_options => $member_options,
+ dc_server_ip => $dcvars->{SERVER_IP},
+ dc_server_ipv6 => $dcvars->{SERVER_IPV6});
$ret or return undef;
@@ -547,12 +555,14 @@ sub setup_ad_member_rfc2307
password server = $dcvars->{SERVER}
";
- my $ret = $self->provision($prefix, $dcvars->{DOMAIN},
- "RFC2307MEMBER",
- "loCalMemberPass",
- $member_options,
- $dcvars->{SERVER_IP},
- $dcvars->{SERVER_IPV6});
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => $dcvars->{DOMAIN},
+ server => "RFC2307MEMBER",
+ password => "loCalMemberPass",
+ extra_options => $member_options,
+ dc_server_ip => $dcvars->{SERVER_IP},
+ dc_server_ipv6 => $dcvars->{SERVER_IPV6});
$ret or return undef;
@@ -639,12 +649,14 @@ sub setup_ad_member_idmap_rid
map to guest = bad user
";
- my $ret = $self->provision($prefix, $dcvars->{DOMAIN},
- "IDMAPRIDMEMBER",
- "loCalMemberPass",
- $member_options,
- $dcvars->{SERVER_IP},
- $dcvars->{SERVER_IPV6});
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => $dcvars->{DOMAIN},
+ server => "IDMAPRIDMEMBER",
+ password => "loCalMemberPass",
+ extra_options => $member_options,
+ dc_server_ip => $dcvars->{SERVER_IP},
+ dc_server_ipv6 => $dcvars->{SERVER_IPV6});
$ret or return undef;
@@ -730,12 +742,14 @@ sub setup_ad_member_idmap_ad
idmap config $dcvars->{TRUST_DOMAIN} : range = 2000000-2999999
";
- my $ret = $self->provision($prefix, $dcvars->{DOMAIN},
- "IDMAPADMEMBER",
- "loCalMemberPass",
- $member_options,
- $dcvars->{SERVER_IP},
- $dcvars->{SERVER_IPV6});
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => $dcvars->{DOMAIN},
+ server => "IDMAPADMEMBER",
+ password => "loCalMemberPass",
+ extra_options => $member_options,
+ dc_server_ip => $dcvars->{SERVER_IP},
+ dc_server_ipv6 => $dcvars->{SERVER_IPV6});
$ret or return undef;
@@ -891,10 +905,12 @@ sub setup_simpleserver
hide new files timeout = 5
";
- my $vars = $self->provision($path, "WORKGROUP",
- "LOCALSHARE4",
- "local4pass",
- $simpleserver_options);
+ my $vars = $self->provision(
+ prefix => $path,
+ domain => "WORKGROUP",
+ server => "LOCALSHARE4",
+ password => "local4pass",
+ extra_options => $simpleserver_options);
$vars or return undef;
@@ -905,6 +921,18 @@ sub setup_simpleserver
return $vars;
}
+sub create_file_chmod($$)
+{
+ my ($name, $mode) = @_;
+ my $fh;
+
+ unless (open($fh, '>', $name)) {
+ warn("Unable to open $name");
+ return undef;
+ }
+ chmod($mode, $fh);
+}
+
sub setup_fileserver
{
my ($self, $path) = @_;
@@ -1045,13 +1073,13 @@ sub setup_fileserver
read only = No
";
- my $vars = $self->provision($path, "WORKGROUP",
- "FILESERVER",
- "fileserver",
- $fileserver_options,
- undef,
- undef,
- 1);
+ my $vars = $self->provision(
+ prefix => $path,
+ domain => "WORKGROUP",
+ server => "FILESERVER",
+ password => "fileserver",
+ extra_options => $fileserver_options,
+ no_delete_prefix => 1);
$vars or return undef;
@@ -1099,13 +1127,7 @@ sub setup_fileserver
##
## create a listable file in valid_users_share
##
- my $valid_users_target = "$valid_users_sharedir/foo";
- unless (open(VALID_USERS_TARGET, ">$valid_users_target")) {
- warn("Unable to open $valid_users_target");
- return undef;
- }
- close(VALID_USERS_TARGET);
- chmod 0644, $valid_users_target;
+ create_file_chmod("$valid_users_sharedir/foo", 0644) or return undef;
return $vars;
}
@@ -1135,10 +1157,12 @@ sub setup_ktest
ntlm auth = disabled
";
- my $ret = $self->provision($prefix, "KTEST",
- "LOCALKTEST6",
- "localktest6pass",
- $ktest_options);
+ my $ret = $self->provision(
+ prefix => $prefix,
+ domain => "KTEST",
+ server => "LOCALKTEST6",
+ password => "localktest6pass",
+ extra_options => $ktest_options);
$ret or return undef;
@@ -1227,10 +1251,12 @@ map to guest = bad user
ntlm auth = yes
";
- my $vars = $self->provision($path, "WORKGROUP",
- "maptoguest",
- "maptoguestpass",
- $options);
+ my $vars = $self->provision(
+ prefix => $path,
+ domain => "WORKGROUP",
+ server => "maptoguest",
+ password => "maptoguestpass",
+ extra_options => $options);
$vars or return undef;
@@ -1398,9 +1424,18 @@ sub createuser($$$$$)
}
}
-sub provision($$$$$$$$$)
+sub provision($$)
{
- my ($self, $prefix, $domain, $server, $password, $extra_options, $dc_server_ip, $dc_server_ipv6, $no_delete_prefix) = @_;
+ my ($self, %args) = @_;
+
+ my $prefix = $args{prefix};
+ my $domain = $args{domain};
+ my $server = $args{server};
+ my $password = $args{password};
+ my $extra_options = $args{extra_options};
+ my $dc_server_ip = $args{dc_server_ip};
+ my $dc_server_ipv6 = $args{dc_server_ipv6};
+ my $no_delete_prefix= $args{no_delete_prefix};
##
## setup the various environment variables we need
@@ -1546,21 +1581,10 @@ sub provision($$$$$$$$$)
##
chmod 0755, $ro_shrdir;
- my $unreadable_file = "$ro_shrdir/unreadable_file";
- unless (open(UNREADABLE_FILE, ">$unreadable_file")) {
- warn("Unable to open $unreadable_file");
- return undef;
- }
- close(UNREADABLE_FILE);
- chmod 0600, $unreadable_file;
- my $msdfs_target = "$ro_shrdir/msdfs-target";
- unless (open(MSDFS_TARGET, ">$msdfs_target")) {
- warn("Unable to open $msdfs_target");
- return undef;
- }
- close(MSDFS_TARGET);
- chmod 0666, $msdfs_target;
+ create_file_chmod("$ro_shrdir/unreadable_file", 0600) or return undef;
+
+ create_file_chmod("$ro_shrdir/msdfs-target", 0600) or return undef;
symlink "msdfs:$server_ip\\ro-tmp,$server_ipv6\\ro-tmp",
"$msdfs_shrdir/msdfs-src1";
symlink "msdfs:$server_ipv6\\ro-tmp", "$msdfs_shrdir/deeppath/msdfs-src2";
@@ -1569,31 +1593,16 @@ sub provision($$$$$$$$$)
## create bad names in $badnames_shrdir
##
## (An invalid name, would be mangled to 8.3).
- my $badname_target = "$badnames_shrdir/\340|\231\216\377\177";
- unless (open(BADNAME_TARGET, ">$badname_target")) {
- warn("Unable to open $badname_target");
- return undef;
- }
- close(BADNAME_TARGET);
- chmod 0666, $badname_target;
+ create_file_chmod("$badnames_shrdir/\340|\231\216\377\177",
+ 0600) or return undef;
## (A bad name, would not be mangled to 8.3).
- my $badname_target = "$badnames_shrdir/\240\276\346\327\377\177";
- unless (open(BADNAME_TARGET, ">$badname_target")) {
- warn("Unable to open $badname_target");
- return undef;
- }
- close(BADNAME_TARGET);
- chmod 0666, $badname_target;
+ create_file_chmod("$badnames_shrdir/\240\276\346\327\377\177",
+ 0666) or return undef;
## (A bad good name).
- my $badname_target = "$badnames_shrdir/blank.txt";
- unless (open(BADNAME_TARGET, ">$badname_target")) {
- warn("Unable to open $badname_target");
- return undef;
- }
- close(BADNAME_TARGET);
- chmod 0666, $badname_target;
+ create_file_chmod("$badnames_shrdir/blank.txt",
+ 0666) or return undef;
##
## create mangleable directory names in $manglenames_shrdir
@@ -1605,12 +1614,8 @@ sub provision($$$$$$$$$)
## create symlinks for widelinks tests.
##
my $widelinks_target = "$widelinks_linkdir/target";
- unless (open(WIDELINKS_TARGET, ">$widelinks_target")) {
- warn("Unable to open $widelinks_target");
- return undef;
- }
- close(WIDELINKS_TARGET);
- chmod 0666, $widelinks_target;
+ create_file_chmod("$widelinks_target", 0666) or return undef;
+
##
## This link should get ACCESS_DENIED
##
--
Samba Shared Repository
More information about the samba-cvs
mailing list