The branch, master has been updated via 84b7a9f build:wafsamba: dead code removal in gettext detection via f9d6be3 selftest: Avoid system krb5.conf in "none" test env via 8d3106b selftest: Avoid system krb5.conf in some test envs that don't use kerberos via 63c8919 selftest: Avoid system krb5.conf in testenv provisioning via 843cb8e Documentation : Add GitHub notes to README. from 5350945 WHATSNEW: Describe nss_wins changes
https://git.samba.org/?p=samba.git;a=shortlog;h=master - Log ----------------------------------------------------------------- commit 84b7a9f939f43baf33de4384a8c06687dd4e9c2b Author: Thomas Nagy <tn...@waf.io> Date: Sun Oct 25 13:30:59 2015 +0100 build:wafsamba: dead code removal in gettext detection Since the --gettext-location command-line option has no effect, the misleading code is removed. The samba functions ADD_CFLAGS must also be used in the future Signed-off-by: Thomas Nagy <tn...@waf.io> Reviewed-by: Uri Simchoni <u...@samba.org> Reviewed-by: Andrew Bartlett <abart...@samba.org> Autobuild-User(master): Andrew Bartlett <abart...@samba.org> Autobuild-Date(master): Tue Oct 27 03:34:28 CET 2015 on sn-devel-104 commit f9d6be3b749313a03e9097d848ce078f19197a0a Author: Uri Simchoni <u...@samba.org> Date: Mon Oct 26 07:38:08 2015 +0200 selftest: Avoid system krb5.conf in "none" test env Some torture tests do not perform Kerberos activity and do not run against a server (hence the "none" test env), but do create a krb5 context, and that causes the Kerberos libs to read krb5.conf and choke if they don't understand it. Signed-off-by: Uri Simchoni <u...@samba.org> Reviewed-by: Andrew Bartlett <abart...@samba.org> commit 8d3106b1a4d9da5bf8b127fa70a77076d3dfeca8 Author: Uri Simchoni <u...@samba.org> Date: Sun Oct 25 15:02:17 2015 +0200 selftest: Avoid system krb5.conf in some test envs that don't use kerberos Some test envs don't use kerberos (e.g. nt4_dc). However, the client tools are built with Kerberos support and may get upset if hitting a krb5.conf file they don't understand. Signed-off-by: Uri Simchoni <u...@samba.org> Reviewed-by: Andrew Bartlett <abart...@samba.org> commit 63c891938a2d3e1c222898d6dea5c640822b0191 Author: Uri Simchoni <u...@samba.org> Date: Sat Oct 24 00:41:23 2015 +0300 selftest: Avoid system krb5.conf in testenv provisioning Some provisioning commands don't necessarily need a krb5.conf, but they still must cause samba's Kerberos libraries to avoid looking at the system krb5.conf, as this file may not be understood by samba's Kerberos libs and fail the env provisioning. Signed-off-by: Uri Simchoni <u...@samba.org> Reviewed-by: Andrew Bartlett <abart...@samba.org> commit 843cb8ec5b92ef72421952d5503c1deec1559fe8 Author: Scott Lovenberg <scott.lovenb...@gmail.com> Date: Tue Oct 20 12:20:10 2015 -0700 Documentation : Add GitHub notes to README. Signed-off-by: Scott Lovenberg <scott.lovenb...@gmail.com> Reviewed-by: Jeremy Allison <j...@samba.org> Reviewed-by: Andrew Bartlett <abart...@samba.org> ----------------------------------------------------------------------- Summary of changes: README | 18 +++++++++++++++++- buildtools/wafsamba/wscript | 3 --- lib/replace/wscript | 11 ----------- selftest/selftest.pl | 5 +---- selftest/target/Samba3.pm | 14 ++++++++++++++ selftest/target/Samba4.pm | 34 +++++++++++++++++++++++++++++----- 6 files changed, 61 insertions(+), 24 deletions(-) Changeset truncated at 500 lines: diff --git a/README b/README index 6fc98e6..e3982d9 100644 --- a/README +++ b/README @@ -100,7 +100,23 @@ Related packages include: CONTRIBUTIONS ============= -If you want to contribute to the development of the software then +1. To contribute via GitHub + - fork the official Samba team repository on GitHub + * see https://github.com/samba-team/samba + - become familiar with the coding standards as described in README.Coding + - make sure you read the Samba copyright policy + * see https://www.samba.org/samba/devel/copyright-policy.html + - create a feature branch + - make changes + - when committing, be sure to add signed-off-by tags + * see https://wiki.samba.org/index.php/CodeReview#commit_message_tags + - send a pull request for your branch through GitHub + - this will trigger an email to the samba-technical mailing list + - discussion happens on the samba-technical mailing list as described below + - more info on using Git for Samba development can be found on the Samba Wiki + * see https://wiki.samba.org/index.php/Using_Git_for_Samba_Development + +2. If you want to contribute to the development of the software then please join the mailing list. The Samba team accepts patches (preferably in "diff -u" format, see http://samba.org/samba/devel/ for more details) and are always glad to receive feedback or diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript index aca444b..f3e019c 100755 --- a/buildtools/wafsamba/wscript +++ b/buildtools/wafsamba/wscript @@ -78,9 +78,6 @@ def set_options(opt): help='additional directory to search for libiconv', action='store', dest='iconv_open', default='/usr/local', match = ['Checking for library iconv', 'Checking for iconv_open', 'Checking for header iconv.h']) - opt.add_option('--with-gettext', - help='additional directory to search for gettext', - action='store', dest='gettext_location', default='None') opt.add_option('--without-gettext', help=("Disable use of gettext"), action="store_true", dest='disable_gettext', default=False) diff --git a/lib/replace/wscript b/lib/replace/wscript index 0be52f7..a1c2094 100644 --- a/lib/replace/wscript +++ b/lib/replace/wscript @@ -361,13 +361,6 @@ removeea setea # try to find libintl (if --without-gettext is not given) conf.env.intl_libs='' if not Options.options.disable_gettext: - # any extra path given to look at? - if not Options.options.gettext_location == 'None': - conf.env['CFLAGS'].extend(["-I%s" % Options.options.gettext_location]); - conf.env['LDFLAGS'].extend(["-L%s" % Options.options.gettext_location]); - else: - conf.env['CFLAGS'].extend(["-I/usr/local"]); - conf.env['LDFLAGS'].extend(["-L/usr/local"]); conf.CHECK_HEADERS('libintl.h') conf.CHECK_LIB('intl') conf.CHECK_DECLS('dgettext gettext bindtextdomain textdomain bind_textdomain_codeset', headers="libintl.h") @@ -407,10 +400,6 @@ removeea setea conf.undefine('HAVE_DGETTEXT') conf.undefine('HAVE_DECL_DGETTEXT') - # did the user insist on gettext (--with-gettext)? - if Options.options.gettext_location != 'None' and (not conf.env['HAVE_GETTEXT'] or not conf.env['HAVE_DGETTEXT']): - conf.fatal('library gettext not found at specified location') - conf.CHECK_FUNCS_IN('pthread_create', 'pthread', checklibc=True, headers='pthread.h') PTHREAD_CFLAGS='error' diff --git a/selftest/selftest.pl b/selftest/selftest.pl index 779847f..db5da05 100755 --- a/selftest/selftest.pl +++ b/selftest/selftest.pl @@ -831,9 +831,7 @@ sub setup_env($$) $option = "client" if $option eq ""; - if ($envname eq "none") { - $testenv_vars = {}; - } elsif (defined(get_running_env($envname))) { + if (defined(get_running_env($envname))) { $testenv_vars = get_running_env($envname); if (not $testenv_vars->{target}->check_env($testenv_vars)) { print $testenv_vars->{target}->getlog_env($testenv_vars); @@ -901,7 +899,6 @@ sub getlog_env($) sub check_env($) { my ($envname) = @_; - return 1 if ($envname eq "none"); my $env = get_running_env($envname); return $env->{target}->check_env($env); } diff --git a/selftest/target/Samba3.pm b/selftest/target/Samba3.pm index 15423fe..f66aea7 100755 --- a/selftest/target/Samba3.pm +++ b/selftest/target/Samba3.pm @@ -172,6 +172,13 @@ sub setup_env($$$) return $self->{vars}->{$envname}; } + # + # Avoid hitting system krb5.conf - + # An env that needs Kerberos will reset this to the real + # value. + # + $ENV{KRB5_CONFIG} = "$path/no_krb5.conf"; + if ($envname eq "nt4_dc") { return $self->setup_nt4_dc("$path/nt4_dc"); } elsif ($envname eq "nt4_dc_schannel") { @@ -1632,6 +1639,13 @@ userdup:x:$gid_userdup:$unix_name $ret{LOCAL_PATH} = "$shrdir"; $ret{LOGDIR} = $logdir; + # + # Avoid hitting system krb5.conf - + # An env that needs Kerberos will reset this to the real + # value. + # + $ret{KRB5_CONFIG} = abs_path($prefix) . "/no_krb5.conf"; + return \%ret; } diff --git a/selftest/target/Samba4.pm b/selftest/target/Samba4.pm index 16d4b28..65308e2 100755 --- a/selftest/target/Samba4.pm +++ b/selftest/target/Samba4.pm @@ -646,6 +646,7 @@ sub provision_raw_prepare($$$$$$$$$$$) $ctx->{smb_conf_extra_options} = ""; my @provision_options = (); + push (@provision_options, "KRB5_CONFIG=\"$ctx->{krb5_config}\""); push (@provision_options, "NSS_WRAPPER_PASSWD=\"$ctx->{nsswrap_passwd}\""); push (@provision_options, "NSS_WRAPPER_GROUP=\"$ctx->{nsswrap_group}\""); push (@provision_options, "NSS_WRAPPER_HOSTS=\"$ctx->{nsswrap_hosts}\""); @@ -896,14 +897,18 @@ sub provision_raw_step2($$$) } my $testallowed_account = "testallowed"; - my $samba_tool_cmd = Samba::bindir_path($self, "samba-tool") + my $samba_tool_cmd = ""; + $samba_tool_cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" "; + $samba_tool_cmd .= Samba::bindir_path($self, "samba-tool") . " user add --configfile=$ctx->{smb_conf} $testallowed_account $ctx->{password}"; unless (system($samba_tool_cmd) == 0) { warn("Unable to add testallowed user: \n$samba_tool_cmd\n"); return undef; } - my $ldbmodify = Samba::bindir_path($self, "ldbmodify"); + my $ldbmodify = ""; + $ldbmodify .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" "; + $ldbmodify .= Samba::bindir_path($self, "ldbmodify"); my $base_dn = "DC=".join(",DC=", split(/\./, $ctx->{realm})); if ($ctx->{server_role} ne "domain controller") { @@ -932,7 +937,9 @@ servicePrincipalName: host/testallowed "; close(LDIF); - $samba_tool_cmd = Samba::bindir_path($self, "samba-tool") + $samba_tool_cmd = ""; + $samba_tool_cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" "; + $samba_tool_cmd .= Samba::bindir_path($self, "samba-tool") . " user add --configfile=$ctx->{smb_conf} testdenied $ctx->{password}"; unless (system($samba_tool_cmd) == 0) { warn("Unable to add testdenied user: \n$samba_tool_cmd\n"); @@ -949,7 +956,9 @@ userPrincipalName: testdenied_upn\@$ctx->{realm}.upn "; close(LDIF); - $samba_tool_cmd = Samba::bindir_path($self, "samba-tool") + $samba_tool_cmd = ""; + $samba_tool_cmd .= "KRB5_CONFIG=\"$ret->{KRB5_CONFIG}\" "; + $samba_tool_cmd .= Samba::bindir_path($self, "samba-tool") . " group addmembers --configfile=$ctx->{smb_conf} 'Allowed RODC Password Replication Group' '$testallowed_account'"; unless (system($samba_tool_cmd) == 0) { warn("Unable to add '$testallowed_account' user to 'Allowed RODC Password Replication Group': \n$samba_tool_cmd\n"); @@ -1990,8 +1999,11 @@ sub getlog_env($$) sub check_env($$) { my ($self, $envvars) = @_; + my $samba_pid = $envvars->{SAMBA_PID}; - my $childpid = Samba::cleanup_child($envvars->{SAMBA_PID}, "samba"); + return 1 if $samba_pid == -1; + + my $childpid = Samba::cleanup_child($samba_pid, "samba"); return ($childpid == 0); } @@ -2068,6 +2080,8 @@ sub setup_env($$$) } return $target3->setup_admember_rfc2307("$path/ad_member_rfc2307", $self->{vars}->{ad_dc_ntvfs}, 34); + } elsif ($envname eq "none") { + return $self->setup_none("$path/none"); } else { return "UNKNOWN"; } @@ -2470,4 +2484,14 @@ sub setup_ad_dc($$) return $env; } +sub setup_none($$) +{ + my ($self, $path) = @_; + + my $ret = { + KRB5_CONFIG => abs_path($path) . "/no_krb5.conf", + SAMBA_PID => -1, + } +} + 1; -- Samba Shared Repository