Hello community, here is the log from the commit of package yast2-samba-client for openSUSE:Factory checked in at 2019-02-15 09:53:12 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/yast2-samba-client (Old) and /work/SRC/openSUSE:Factory/.yast2-samba-client.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "yast2-samba-client" Fri Feb 15 09:53:12 2019 rev:97 rq:669482 version:4.1.0 Changes: -------- --- /work/SRC/openSUSE:Factory/yast2-samba-client/yast2-samba-client.changes 2018-12-31 09:41:22.778462696 +0100 +++ /work/SRC/openSUSE:Factory/.yast2-samba-client.new.28833/yast2-samba-client.changes 2019-02-15 09:53:14.471800906 +0100 @@ -1,0 +2,6 @@ +Fri Jan 18 19:38:21 UTC 2019 - David Mulder <[email protected]> + +- Use a cldap ping to search for the join server; (bsc#1122534). +- 4.1.0 + +------------------------------------------------------------------- Old: ---- yast2-samba-client-4.0.4.tar.bz2 New: ---- yast2-samba-client-4.1.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ yast2-samba-client.spec ++++++ --- /var/tmp/diff_new_pack.dYOUVj/_old 2019-02-15 09:53:15.151800692 +0100 +++ /var/tmp/diff_new_pack.dYOUVj/_new 2019-02-15 09:53:15.155800691 +0100 @@ -1,7 +1,7 @@ # # spec file for package yast2-samba-client # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: yast2-samba-client -Version: 4.0.4 +Version: 4.1.0 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -40,7 +40,9 @@ BuildArch: noarch +Requires: yast2-python3-bindings >= 4.0.8 Requires: yast2-ruby-bindings >= 1.0.0 +Recommends: samba-python3 Summary: YaST2 - Samba Client Configuration License: GPL-2.0-only @@ -67,6 +69,7 @@ %{yast_clientdir}/samba-client_*.rb %{yast_moduledir}/Samba*.pm %{yast_moduledir}/*.rb +%{yast_moduledir}/*.py %{yast_desktopdir}/samba-client.desktop %{yast_scrconfdir}/*.scr %{yast_agentdir}/ag_pam_mount ++++++ yast2-samba-client-4.0.4.tar.bz2 -> yast2-samba-client-4.1.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-samba-client-4.0.4/package/yast2-samba-client.changes new/yast2-samba-client-4.1.0/package/yast2-samba-client.changes --- old/yast2-samba-client-4.0.4/package/yast2-samba-client.changes 2018-11-29 09:08:05.000000000 +0100 +++ new/yast2-samba-client-4.1.0/package/yast2-samba-client.changes 2019-01-29 10:42:00.000000000 +0100 @@ -1,4 +1,10 @@ ------------------------------------------------------------------- +Fri Jan 18 19:38:21 UTC 2019 - David Mulder <[email protected]> + +- Use a cldap ping to search for the join server; (bsc#1122534). +- 4.1.0 + +------------------------------------------------------------------- Mon Nov 26 02:32:32 UTC 2018 - Noah Davis <[email protected]> - Provide icon with module (boo#1109310) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-samba-client-4.0.4/package/yast2-samba-client.spec new/yast2-samba-client-4.1.0/package/yast2-samba-client.spec --- old/yast2-samba-client-4.0.4/package/yast2-samba-client.spec 2018-11-29 09:08:05.000000000 +0100 +++ new/yast2-samba-client-4.1.0/package/yast2-samba-client.spec 2019-01-29 10:42:00.000000000 +0100 @@ -17,7 +17,7 @@ Name: yast2-samba-client -Version: 4.0.4 +Version: 4.1.0 Release: 0 BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -39,6 +39,8 @@ BuildArchitectures: noarch Requires: yast2-ruby-bindings >= 1.0.0 +Requires: yast2-python3-bindings >= 4.0.8 +Recommends: samba-python3 Summary: YaST2 - Samba Client Configuration @@ -64,6 +66,7 @@ %{yast_clientdir}/samba-client_*.rb %{yast_moduledir}/Samba*.pm %{yast_moduledir}/*.rb +%{yast_moduledir}/*.py %{yast_desktopdir}/samba-client.desktop %{yast_scrconfdir}/*.scr %{yast_agentdir}/ag_pam_mount diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-samba-client-4.0.4/src/Makefile.am new/yast2-samba-client-4.1.0/src/Makefile.am --- old/yast2-samba-client-4.0.4/src/Makefile.am 2018-11-29 09:08:05.000000000 +0100 +++ new/yast2-samba-client-4.1.0/src/Makefile.am 2019-01-29 10:42:00.000000000 +0100 @@ -6,6 +6,7 @@ modules/SambaNmbLookup.pm \ modules/SambaConfig.pm \ modules/SambaAD.pm \ + modules/SambaAPI.py \ modules/SambaNetJoin.pm \ modules/SambaWinbind.pm diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-samba-client-4.0.4/src/modules/SambaAD.pm new/yast2-samba-client-4.1.0/src/modules/SambaAD.pm --- old/yast2-samba-client-4.0.4/src/modules/SambaAD.pm 2018-11-29 09:08:05.000000000 +0100 +++ new/yast2-samba-client-4.1.0/src/modules/SambaAD.pm 2019-01-29 10:42:00.000000000 +0100 @@ -43,6 +43,7 @@ YaST::YCP::Import ("SCR"); YaST::YCP::Import ("SambaConfig"); YaST::YCP::Import ("YaPI::NETWORK"); +YaST::YCP::Import ("SambaAPI"); use constant { TRUE => 1, @@ -135,8 +136,11 @@ return ""; } + # First look for a server via a RootDSE query via samba (bsc#1122534) + $server = SambaAPI->GetLDAPDS($workgroup); + # use DNS for finding DC - if (FileUtils->Exists ("/usr/bin/dig")) { + if ($server eq "" && FileUtils->Exists ("/usr/bin/dig")) { # we have to select server from correct site - see bug #238249. # TODO use +short instead? diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/yast2-samba-client-4.0.4/src/modules/SambaAPI.py new/yast2-samba-client-4.1.0/src/modules/SambaAPI.py --- old/yast2-samba-client-4.0.4/src/modules/SambaAPI.py 1970-01-01 01:00:00.000000000 +0100 +++ new/yast2-samba-client-4.1.0/src/modules/SambaAPI.py 2019-01-29 10:42:00.000000000 +0100 @@ -0,0 +1,23 @@ +from yast import Declare, ycpbuiltins, import_module +import_module('PackageSystem') +import_module('Package') +from yast import PackageSystem, Package + +# Check if a given workgroup is a Active Directory domain and return the name +# of AD domain controler +# +# @param workgroup the name of a workgroup to be tested +# @return string non empty when ADS was found +@Declare('string', 'string') +def GetLDAPDS(workgroup): + if not PackageSystem.Installed('samba-python3'): + if not Package.InstallAll(['samba-python3']): + return '' + from samba.net import Net + from samba.credentials import Credentials + from samba.dcerpc import nbt + net = Net(Credentials()) + cldap_ret = net.finddc(domain=workgroup, flags=(nbt.NBT_SERVER_LDAP | nbt.NBT_SERVER_DS)) + ycpbuiltins.y2milestone('Found LDAP/DS server %s via cldap ping' % cldap_ret.pdc_dns_name) + return cldap_ret.pdc_dns_name +
