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
+
+- 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
+
+- 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
- 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
+