Hello community,
here is the log from the commit of package yast2 for openSUSE:Factory
checked in at Sat Jul 23 11:41:12 CEST 2011.
--------
--- yast2/yast2.changes 2011-07-21 16:30:50.000000000 +0200
+++ /mounts/work_src_done/STABLE/yast2/yast2.changes 2011-07-22 16:53:52.000000000 +0200
@@ -1,0 +2,14 @@
+Fri Jul 22 16:18:30 CEST 2011 - mvidner@suse.cz
+
+- FCoE detection in NetworkStorage::isDiskOnNetwork (bnc#677251, FATE#306855).
+- Added NetworkInterfaces::GetTypeFromIfcfg which knows
+ ETHERDEVICE=>vlan (FATE#311380).
+- 2.21.6
+
+-------------------------------------------------------------------
+Fri Jul 22 16:10:07 CEST 2011 - locilka@suse.cz
+
+- Removed obsoleted X-KDE-SubstituteUID from desktop files
+ (bnc#540627)
+
+-------------------------------------------------------------------
calling whatdependson for head-i586
Old:
----
yast2-2.21.5.tar.bz2
New:
----
yast2-2.21.6.tar.bz2
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ yast2.spec ++++++
--- /var/tmp/diff_new_pack.iSrYfh/_old 2011-07-23 11:40:07.000000000 +0200
+++ /var/tmp/diff_new_pack.iSrYfh/_new 2011-07-23 11:40:07.000000000 +0200
@@ -19,11 +19,11 @@
Name: yast2
-Version: 2.21.5
+Version: 2.21.6
Release: 1
BuildRoot: %{_tmppath}/%{name}-%{version}-build
-Source0: yast2-2.21.5.tar.bz2
+Source0: yast2-2.21.6.tar.bz2
Prefix: /usr
@@ -130,7 +130,7 @@
installation with YaST2.
%prep
-%setup -n yast2-2.21.5
+%setup -n yast2-2.21.6
%build
%{prefix}/bin/y2tool y2autoconf
++++++ yast2-2.21.5.tar.bz2 -> yast2-2.21.6.tar.bz2 ++++++
++++ 1937 lines of diff (skipped)
++++ retrying with extended exclude list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/VERSION new/yast2-2.21.6/VERSION
--- old/yast2-2.21.5/VERSION 2011-07-21 15:21:37.000000000 +0200
+++ new/yast2-2.21.6/VERSION 2011-07-22 16:19:17.000000000 +0200
@@ -1 +1 @@
-2.21.5
+2.21.6
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/configure.in new/yast2-2.21.6/configure.in
--- old/yast2-2.21.5/configure.in 2011-07-21 16:29:11.000000000 +0200
+++ new/yast2-2.21.6/configure.in 2011-01-18 15:43:52.000000000 +0100
@@ -3,7 +3,7 @@
dnl -- This file is generated by y2autoconf 2.18.11 - DO NOT EDIT! --
dnl (edit configure.in.in instead)
-AC_INIT(yast2, 2.21.5, http://bugs.opensuse.org/, yast2)
+AC_INIT(yast2, 2.20.10, http://bugs.opensuse.org/, yast2)
dnl Check for presence of file 'RPMNAME'
AC_CONFIG_SRCDIR([RPMNAME])
@@ -18,7 +18,7 @@
AM_INIT_AUTOMAKE(tar-ustar -Wno-portability)
dnl Important YaST2 variables
-VERSION="2.21.5"
+VERSION="2.20.10"
RPMNAME="yast2"
MAINTAINER="Jiri Srain "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/hardware.desktop new/yast2-2.21.6/library/desktop/groups/hardware.desktop
--- old/yast2-2.21.5/library/desktop/groups/hardware.desktop 2011-06-21 11:31:36.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/hardware.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-hardware
Name=Hardware
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/misc.desktop new/yast2-2.21.6/library/desktop/groups/misc.desktop
--- old/yast2-2.21.5/library/desktop/groups/misc.desktop 2011-06-21 11:31:49.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/misc.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-misc
Name=Miscellaneous
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/network_devices.desktop new/yast2-2.21.6/library/desktop/groups/network_devices.desktop
--- old/yast2-2.21.5/library/desktop/groups/network_devices.desktop 2011-06-21 11:31:55.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/network_devices.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-network_devices
Name=Network Devices
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/network_services.desktop new/yast2-2.21.6/library/desktop/groups/network_services.desktop
--- old/yast2-2.21.5/library/desktop/groups/network_services.desktop 2011-06-21 11:32:00.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/network_services.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-network_services
Name=Network Services
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/security.desktop new/yast2-2.21.6/library/desktop/groups/security.desktop
--- old/yast2-2.21.5/library/desktop/groups/security.desktop 2011-06-21 11:32:08.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/security.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -15,6 +15,4 @@
Name=Security and Users
-X-KDE-SubstituteUID=true
-
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/software.desktop new/yast2-2.21.6/library/desktop/groups/software.desktop
--- old/yast2-2.21.5/library/desktop/groups/software.desktop 2011-06-21 11:32:14.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/software.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-software
Name=Software
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/support.desktop new/yast2-2.21.6/library/desktop/groups/support.desktop
--- old/yast2-2.21.5/library/desktop/groups/support.desktop 2011-06-21 11:32:19.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/support.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-support
Name=Support
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/desktop/groups/system.desktop new/yast2-2.21.6/library/desktop/groups/system.desktop
--- old/yast2-2.21.5/library/desktop/groups/system.desktop 2011-06-21 11:32:24.000000000 +0200
+++ new/yast2-2.21.6/library/desktop/groups/system.desktop 2011-07-22 16:48:20.000000000 +0200
@@ -14,6 +14,5 @@
Icon=yast-system
Name=System
-X-KDE-SubstituteUID=true
Exec=/sbin/yast2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/modules/Version.ycp new/yast2-2.21.6/library/modules/Version.ycp
--- old/yast2-2.21.5/library/modules/Version.ycp 2011-07-21 16:29:18.000000000 +0200
+++ new/yast2-2.21.6/library/modules/Version.ycp 2011-07-22 16:26:11.000000000 +0200
@@ -20,7 +20,7 @@
/**
* Version of the yast2 package
*/
-global string yast2 = "2.21.5";
+global string yast2 = "2.21.6";
/* EOF */
}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/src/NetworkInterfaces.ycp new/yast2-2.21.6/library/network/src/NetworkInterfaces.ycp
--- old/yast2-2.21.5/library/network/src/NetworkInterfaces.ycp 2011-01-07 15:03:33.000000000 +0100
+++ new/yast2-2.21.6/library/network/src/NetworkInterfaces.ycp 2011-07-22 16:07:11.000000000 +0200
@@ -180,18 +180,46 @@
return ifcfg_part (dev, "1");
}
+list<string> TypeByKeyValue = [
+ "INTERFACETYPE",
+ "TUNNEL",
+ ];
+list TypeByKeyExistence = [
+ ["ETHERDEVICE", "vlan"],
+ ];
+
+/**
+ *
+ */
+global string GetTypeFromIfcfg(ifcfg_t ifcfg) {
+ string type = nil; // unknown
+ foreach(list<string> key_type, TypeByKeyExistence, {
+ string rule_key = key_type[0]:"";
+ string rule_type = key_type[1]:"";
+ if (ifcfg[rule_key]:"" != "") {
+ type = rule_type;
+ }
+ });
+ foreach(string rule_key, TypeByKeyValue, {
+ string rule_type = ifcfg[rule_key]:"";
+ if (rule_type != "") {
+ type = rule_type;
+ }
+ });
+//y2internal("from ifcfg: %1", type);
+ return type;
+}
+
global string GetType(string dev) {
- string type = ifcfg_part (dev, "1");
- // test if this is VLAN (ethX.vlanid)
- if (type=="eth" && regexpmatch(dev, "^eth[[:digit:]]+\\.[[:digit:]]+$")) return "vlan";
- foreach(string dev_type,map confs, Devices, {
- if (haskey(confs, dev)){
- string int_type = confs[dev, "INTERFACETYPE"]:"";
- if (size(confs[dev, "TUNNEL"]:"")>0) int_type = confs[dev, "TUNNEL"]:"";
- if(size(int_type)>0) type = int_type;
- }
- });
- return type;
+ string type = device_type (dev);
+ foreach(string dev_type,map confs, Devices, {
+ ifcfg_t ifcfg = confs[dev]:$[];
+ string ifcfg_type = GetTypeFromIfcfg(ifcfg);
+ if (ifcfg_type != nil)
+ type = ifcfg_type;
+ });
+//y2internal("original %1: %2", dev, type);
+ return type;
}
/**
@@ -507,14 +535,6 @@
/* Read devices */
maplist(string d, devices, {
- string devtype = GetType(d);
-
-// string devnum = "";
- // if(regexpmatch(d, "[a-z][a-z-]*[0-9]+"))
-// devnum = sformat("%1", device_num(d));
-// y2debug("devnum=%1", devnum);
-
- map dev = Devices[devtype]:$[];
string pth = ".network.value.\"" + d + "\"";
y2debug("pth=%1", pth);
list<string> values = SCR::Dir(topath(pth));
@@ -561,17 +581,12 @@
config = CanonicalizeIP (config);
config = CanonicalizeStartmode (config);
- if (size(config["INTERFACETYPE"]:"")>0) {
- y2milestone("option INTERFACETYPE changes devtype from %1 to %2", devtype, config["INTERFACETYPE"]:"");
- devtype=config["INTERFACETYPE"]:"";
- dev = Devices[devtype]:$[];
- }
-/*
- if(haskey(dev, devnum)) {
- y2error("device already present: %1", devnum);
- return;
+ string devtype = GetTypeFromIfcfg(config);
+ if (devtype == nil) {
+ devtype = GetType(d);
}
-*/
+
+ map dev = Devices[devtype]:$[];
dev[d] = config;
Devices[devtype] = dev;
});
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/src/NetworkStorage.ycp new/yast2-2.21.6/library/network/src/NetworkStorage.ycp
--- old/yast2-2.21.5/library/network/src/NetworkStorage.ycp 2011-01-07 15:03:33.000000000 +0100
+++ new/yast2-2.21.6/library/network/src/NetworkStorage.ycp 2011-07-22 16:12:57.000000000 +0200
@@ -15,122 +15,141 @@
import "FileUtils";
-global string getDevice(string mount_point){
- map out = (map)SCR::Execute(.target.bash_output, sformat("grep ' %1 ' /proc/mounts|grep -v rootfs|tr -d '\n'", mount_point));
- y2milestone("mountpoint found %1", out);
- list<string> rows = splitstring(out["stdout"]:"", " ");
- string device="";
- if (rows[2]:""=="nfs") device="nfs";
- else device=rows[0]:"";
- y2milestone("%1 is on device: %2", mount_point, device);
- return device;
+/**
+ * Ask /proc/mounts what device a mount point is using.
+ * @return e.g. /dev/sda2 (or just "nfs")
+ */
+global string getDevice(string mount_point) {
+ string cmd = sformat("grep ' %1 ' /proc/mounts|grep -v rootfs|tr -d '\n'", mount_point);
+ map out = (map)SCR::Execute(.target.bash_output, cmd);
+ y2milestone("mountpoint found %1", out);
+ list<string> fields = splitstring(out["stdout"]:"", " ");
+ string vfstype = fields[2]:"";
+ string device = (vfstype == "nfs" || vfstype == "nfs4")? "nfs": fields[0]:"";
+ y2milestone("%1 is on device: %2", mount_point, device);
+ return device;
}
/**
* If the disk is on a networked device (NFS, ISCSI),
* the main NIC needs STARTMODE nfsroot instead of auto.
- * @return root dev over network
+ * @return root dev over network: 1 iSCSI, 2 NFS
*/
-global integer isDiskOnNetwork(string device){
- y2milestone("begin isDiskOnNetwork(%1) function", device);
- if (device=="nfs") return 2;
- if (size(device)==0) {
- y2error("Empty parameter for isDiskOnNetwork() function");
- return -1;
- }
- integer network_based=0;
-
- // test for multipath
- if (network_based==0 && issubstring(device, "/dev/dm-")) {
- y2warning("multipath detected!");
- string dev_name = splitstring(device, "/")[2]:"";
- y2milestone("Multipath device name %1", dev_name);
- map cmd = (map)SCR::Execute(.target.bash_output, sformat("ls /sys/block/%1/slaves/", dev_name));
- y2milestone("Show slaves command:%1", cmd);
- if (cmd["exit"]:-1==0){
- // FIXME: what about more slaves?
- list<string> slaves = splitstring(cmd["stdout"]:"", "\n");
- integer nb = isDiskOnNetwork(sformat("/dev/%1", slaves[0]:""));
- if (nb>0) network_based=nb;
- } else y2error("Error while executed show slaves commad:%1", cmd["stderr"]:"");
- }
-
- // test for LVM
- if (network_based==0 && issubstring(device, "/dev/mapper/")) {
- y2warning("LVM detected!");
- string group_name = splitstring(splitstring(device, "/")[3]:"", "-")[0]:"";
- y2milestone("LVM group name %1", group_name);
- map command = (map)SCR::Execute(.target.bash_output, sformat("pvs 2>/dev/null|grep %1", group_name));
- foreach(string row, filter(string s, splitstring(command["stdout"]:"", "\n"), { return (size(s)>0);}), {
- string lvm_device = filter(string s, splitstring(row, " "), { return (size(s)>0);})[0]:"";
- y2milestone("LVM physical device: %1", lvm_device);
- integer nb = isDiskOnNetwork(lvm_device);
- if (nb>0) network_based=nb;
- });
- }
-
- // test for RAID
- if (network_based==0 && issubstring(device, "/dev/md")){
- y2warning("RAID detected!");
- string raid = splitstring(device, "/")[2]:"";
- y2milestone("RAID %1 detected", raid);
- map command = (map)SCR::Execute(.target.bash_output, sformat("cat /proc/mdstat |grep %1|tr -d '\\n'", raid));
- list<string> raid_devices = sublist(splitstring(command["stdout"]:"", " "), 4);
- foreach(string dev, raid_devices, {
- if (!issubstring(dev, "/dev/")) dev = sformat("/dev/%1", dev);
- string raid_device = substring(dev, 0, findfirstof(dev, "["));
- integer nb = isDiskOnNetwork(raid_device);
- if (nb>0) network_based=nb;
- }
- );
- }
-
- //test for iSCSI
- if (network_based==0){
- if (issubstring(device, "/dev/")){
- device = splitstring(device, "/")[2]:"";
- }
- string sys=sformat("/sys/class/block/%1", device);
- if (FileUtils::Exists(sys)){
- if ((integer)SCR::Execute(.target.bash, sformat("ls -la %1 | grep -q session", sys))==0){
- y2warning("iSCSI detected!");
- network_based=1;
- }
- }
- }
-
- // test for nfs (bnc#384420)
- if (network_based==0) {
- string space="[[:space:]]";
- if (SCR::Execute(.target.bash, sformat("grep '%1%2%3*nfs%4' /proc/mounts ", space, device, space, space))==0){
- y2milestone("device %1 is network based : %2", device, network_based);
- network_based=2;
- }
- }
-
- //test for FCoE
- if (network_based==0){
- if (issubstring(device, "/dev/")){
- device = splitstring(device, "/")[2]:"";
- }
- string sys=sformat("/sys/class/block/%1", device);
- if (FileUtils::Exists(sys)){
- if ((integer)SCR::Execute(.target.bash, sformat("ls -la %1 | grep -q target", sys))==0){
- y2warning("FCoE detected!");
- network_based=3;
- }
- }
- }
-
- return network_based;
+global integer isDiskOnNetwork(string device) {
+ y2milestone("begin isDiskOnNetwork(%1) function", device);
+ if (device=="nfs") {
+ return 2;
+ }
+ if (size(device)==0) {
+ y2error("Empty parameter for isDiskOnNetwork() function");
+ return -1;
+ }
+ integer network_based=0;
+
+ // test for multipath
+ if (network_based==0 && issubstring(device, "/dev/dm-")) {
+ y2warning("multipath detected!");
+ string dev_name = splitstring(device, "/")[2]:"";
+ y2milestone("Multipath device name %1", dev_name);
+ map cmd = (map)SCR::Execute(.target.bash_output, sformat("ls /sys/block/%1/slaves/", dev_name));
+ y2milestone("Show slaves command:%1", cmd);
+ if (cmd["exit"]:-1==0){
+ // FIXME: what about more slaves?
+ list<string> slaves = splitstring(cmd["stdout"]:"", "\n");
+ integer nb = isDiskOnNetwork(sformat("/dev/%1", slaves[0]:""));
+ if (nb > 0) {
+ network_based = nb;
+ }
+ }
+ else {
+ y2error("Error while executed show slaves commad:%1", cmd["stderr"]:"");
+ }
+ }
+
+ // test for LVM
+ if (network_based==0 && issubstring(device, "/dev/mapper/")) {
+ y2warning("LVM detected!");
+ string group_name = splitstring(splitstring(device, "/")[3]:"", "-")[0]:"";
+ y2milestone("LVM group name %1", group_name);
+ map command = (map)SCR::Execute(.target.bash_output, sformat("pvs 2>/dev/null|grep %1", group_name));
+ foreach(string row, filter(string s, splitstring(command["stdout"]:"", "\n"), { return (size(s) > 0);}), {
+ string lvm_device = filter(string s, splitstring(row, " "), { return (size(s)>0);})[0]:"";
+ y2milestone("LVM physical device: %1", lvm_device);
+ integer nb = isDiskOnNetwork(lvm_device);
+ if (nb > 0) {
+ network_based = nb;
+ }
+ });
+ }
+
+ // test for RAID
+ if (network_based==0 && issubstring(device, "/dev/md")){
+ y2warning("RAID detected!");
+ string raid = splitstring(device, "/")[2]:"";
+ y2milestone("RAID %1 detected", raid);
+ map command = (map)SCR::Execute(.target.bash_output, sformat("cat /proc/mdstat |grep %1|tr -d '\\n'", raid));
+ list<string> raid_devices = sublist(splitstring(command["stdout"]:"", " "), 4);
+ foreach(string dev, raid_devices, {
+ if (!issubstring(dev, "/dev/")) {
+ dev = sformat("/dev/%1", dev);
+ }
+ string raid_device = substring(dev, 0, findfirstof(dev, "["));
+ integer nb = isDiskOnNetwork(raid_device);
+ if (nb > 0) {
+ network_based = nb;
+ }
+ });
+ }
+
+ //test for iSCSI
+ if (network_based==0){
+ if (issubstring(device, "/dev/")){
+ device = splitstring(device, "/")[2]:"";
+ }
+ string sys=sformat("/sys/class/block/%1", device);
+ if (FileUtils::Exists(sys)){
+ if ((integer)SCR::Execute(.target.bash, sformat("ls -la %1 | grep -q session", sys))==0){
+ y2warning("iSCSI detected!");
+ network_based = 1;
+ }
+ }
+ }
+
+ //test for FCoE
+ if (network_based==0){
+ if (issubstring(device, "/dev/")){
+ device = splitstring(device, "/")[2]:"";
+ }
+
+ string sys=sformat("/sys/class/block/%1/device", device);
+ if (FileUtils::Exists(sys) && FileUtils::IsDirectory(sys)){
+ if ((integer)SCR::Execute(.target.bash, sformat("cd %1; pwd -P | grep -q target", sys))==0){
+ y2warning("FCoE detected!");
+ network_based = 3;
+ }
+ }
+ }
+
+ // test for nfs (bnc#384420)
+ if (network_based==0) {
+ string space="[[:space:]]";
+ if (SCR::Execute(.target.bash, sformat("grep '%1%2%3*nfs%4' /proc/mounts ", space, device, space, space))==0){
+ y2milestone("device %1 is network based : %2", device, network_based);
+ network_based = 2;
+ }
+ }
+ return network_based;
}
-global list<string> getiBFTDevices(){
- if (SCR::Execute(.target.bash, "ls /sys/firmware/ibft")==0){
- map output = (map)SCR::Execute(.target.bash_output, "ls /sys/firmware/ibft/ethernet*/device/net/");
- list<string> ifaces = filter(string row, splitstring(output["stdout"]:"", "\n"), { return (size(row)>0);});
- return ifaces;
- } else return [];
+global list<string> getiBFTDevices() {
+ if (SCR::Execute(.target.bash, "ls /sys/firmware/ibft")==0){
+ map output = (map)SCR::Execute(.target.bash_output, "ls /sys/firmware/ibft/ethernet*/device/net/");
+ list<string> ifaces = filter(string row, splitstring(output["stdout"]:"", "\n"), { return (size(row)>0);});
+ return ifaces;
+ }
+ else {
+ return [];
+ }
}
/* EOF */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces.out new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces.out
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces.out 2011-01-07 15:03:33.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces.out 2011-07-22 16:40:43.000000000 +0200
@@ -9,8 +9,6 @@
Dump ifcfg-lo, type: lo
Dump ifcfg-eth0#1, type: eth
Dump ifcfg-eth1#20, type: eth
-Dump ifcfg-eth0.1, type: vlan
-Dump ifcfg-eth1.20, type: vlan
Dump ifcfg-eth-pcmcia-0#3, type: eth
Dump ifcfg-eth-usb-1#0, type: eth
Dump ifcfg-tr-pcmcia-2#432, type: tr
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces.ycp new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces.ycp
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces.ycp 2011-01-07 15:03:33.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces.ycp 2011-07-22 16:40:42.000000000 +0200
@@ -20,8 +20,6 @@
"lo",
"eth0#1",
"eth1#20",
- "eth0.1",
- "eth1.20",
"eth-pcmcia-0#3",
"eth-usb-1#0",
"tr-pcmcia-2#432",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces2.out new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces2.out
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces2.out 2010-03-10 16:41:23.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces2.out 2011-07-22 16:07:11.000000000 +0200
@@ -1,5 +1,5 @@
Dump NetworkInterfaces::Read
-Dir .network.section: ["arc5", "atm5", "ci5", "ctc5", "dummy5", "escon5", "eth5", "eth6", "eth7", "eth8", "eth9", "fddi5", "hippi5", "hsi5", "ippp5", "iucv5", "lo", "mynet0", "myri5", "ppp5", "tr5", "tr~"]
+Dir .network.section: ["arc5", "atm5", "ci5", "ctc5", "dummy5", "escon5", "eth0.3", "eth5", "eth6", "eth7", "eth8", "eth9", "fddi5", "hippi5", "hsi5", "ippp5", "iucv5", "lo", "mynet0", "myri5", "myvlantoo", "ppp5", "tr5", "tr~", "virtlan4", "vlan3"]
Dir .network.value."arc5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."arc5".BOOTPROTO "dhcp"
Read .network.value."arc5".STARTMODE "manual"
@@ -20,6 +20,10 @@
Dir .network.value."escon5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."escon5".BOOTPROTO "dhcp"
Read .network.value."escon5".STARTMODE "manual"
+Dir .network.value."eth0.3": ["BOOTPROTO", "ETHERDEVICE", "STARTMODE"]
+Read .network.value."eth0.3".BOOTPROTO "dhcp"
+Read .network.value."eth0.3".ETHERDEVICE "eth0"
+Read .network.value."eth0.3".STARTMODE "manual"
Dir .network.value."eth5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."eth5".BOOTPROTO "dhcp"
Read .network.value."eth5".STARTMODE "manual"
@@ -64,14 +68,27 @@
Dir .network.value."myri5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."myri5".BOOTPROTO "dhcp"
Read .network.value."myri5".STARTMODE "manual"
+Dir .network.value."myvlantoo": ["BOOTPROTO", "ETHERDEVICE", "STARTMODE", "VLAN_ID"]
+Read .network.value."myvlantoo".BOOTPROTO "dhcp"
+Read .network.value."myvlantoo".ETHERDEVICE "eth0"
+Read .network.value."myvlantoo".STARTMODE "manual"
+Read .network.value."myvlantoo".VLAN_ID "2"
Dir .network.value."ppp5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."ppp5".BOOTPROTO "dhcp"
Read .network.value."ppp5".STARTMODE "manual"
Dir .network.value."tr5": ["BOOTPROTO", "STARTMODE"]
Read .network.value."tr5".BOOTPROTO "dhcp"
Read .network.value."tr5".STARTMODE "manual"
+Dir .network.value."virtlan4": ["BOOTPROTO", "ETHERDEVICE", "STARTMODE"]
+Read .network.value."virtlan4".BOOTPROTO "dhcp"
+Read .network.value."virtlan4".ETHERDEVICE "eth0"
+Read .network.value."virtlan4".STARTMODE "manual"
+Dir .network.value."vlan3": ["BOOTPROTO", "ETHERDEVICE", "STARTMODE"]
+Read .network.value."vlan3".BOOTPROTO "dhcp"
+Read .network.value."vlan3".ETHERDEVICE "eth0"
+Read .network.value."vlan3".STARTMODE "manual"
Return true
-Dump all=$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.255.255.255", "PREFIXLEN":"32", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]]]
+Dump all=$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.255.255.255", "PREFIXLEN":"32", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "vlan":$["eth0.3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "myvlantoo":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual", "VLAN_ID":"2"], "virtlan4":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "vlan3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"]]]
Dump NetworkInterfaces::Write
Write .network.value."arc5".BOOTPROTO "dhcp" true
Write .network.value."arc5".STARTMODE "manual" true
@@ -124,6 +141,19 @@
Write .network.value."ppp5".STARTMODE "manual" true
Write .network.value."tr5".BOOTPROTO "dhcp" true
Write .network.value."tr5".STARTMODE "manual" true
+Write .network.value."eth0.3".BOOTPROTO "dhcp" true
+Write .network.value."eth0.3".ETHERDEVICE "eth0" true
+Write .network.value."eth0.3".STARTMODE "manual" true
+Write .network.value."myvlantoo".BOOTPROTO "dhcp" true
+Write .network.value."myvlantoo".ETHERDEVICE "eth0" true
+Write .network.value."myvlantoo".STARTMODE "manual" true
+Write .network.value."myvlantoo".VLAN_ID "2" true
+Write .network.value."virtlan4".BOOTPROTO "dhcp" true
+Write .network.value."virtlan4".ETHERDEVICE "eth0" true
+Write .network.value."virtlan4".STARTMODE "manual" true
+Write .network.value."vlan3".BOOTPROTO "dhcp" true
+Write .network.value."vlan3".ETHERDEVICE "eth0" true
+Write .network.value."vlan3".STARTMODE "manual" true
Write .network nil true
Return true
Write .network.value."eth5".BOOTPROTO "dhcp" true
@@ -161,9 +191,9 @@
Write .network nil true
Return true
Dump NetworkInterfaces::Export
-Dump exported=$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.255.255.255", "PREFIXLEN":"32", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]]]
+Dump exported=$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.255.255.255", "PREFIXLEN":"32", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "vlan":$["eth0.3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "myvlantoo":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual", "VLAN_ID":"2"], "virtlan4":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "vlan3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"]]]
Dump NetworkInterfaces::Import
-Dump all =$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]]]
+Dump all =$["arc":$["arc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "atm":$["atm5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ci":$["ci5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ctc":$["ctc5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "dummy":$["dummy5":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"]], "escon":$["escon5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "eth":$["eth5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"], "eth6":$["BOOTPROTO":"static", "IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth7":$["STARTMODE":"manual"], "eth8":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "eth9":$["IPADDR":"1.2.3.4", "NETMASK":"255.0.0.0", "PREFIXLEN":"8", "STARTMODE":"manual"], "mynet0":$["BOOTPROTO":"dhcp", "INTERFACETYPE":"eth", "STARTMODE":"auto"]], "fddi":$["fddi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hippi":$["hippi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "hsi":$["hsi5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ippp":$["ippp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "iucv":$["iucv5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "lo":$["lo":$["BROADCAST":"127.255.255.255", "IPADDR":"127.0.0.1", "NETMASK":"255.0.0.0", "NETWORK":"127.0.0.0", "PREFIXLEN":"8", "STARTMODE":"auto"]], "myri":$["myri5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "ppp":$["ppp5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "tr":$["tr5":$["BOOTPROTO":"dhcp", "STARTMODE":"manual"]], "vlan":$["eth0.3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "myvlantoo":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual", "VLAN_ID":"2"], "virtlan4":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"], "vlan3":$["BOOTPROTO":"dhcp", "ETHERDEVICE":"eth0", "STARTMODE":"manual"]]]
Dump NetworkInterfaces::GetFreeDevices
Return ["1", "2"]
Return ["0", "2"]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces2.ycp new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces2.ycp
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkInterfaces2.ycp 2010-03-10 16:41:23.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkInterfaces2.ycp 2011-07-22 16:07:12.000000000 +0200
@@ -29,6 +29,10 @@
"ppp5" : nil,
"tr5" : nil,
"tr~" : nil,
+ "vlan3" : nil,
+ "eth0.3" : nil,
+ "virtlan4" : nil,
+ "myvlantoo" : nil,
],
"value" : $[
"arc5" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual"],
@@ -55,6 +59,10 @@
"myri5" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual"],
"ppp5" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual"],
"tr5" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual"],
+ "vlan3" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual", "ETHERDEVICE": "eth0"],
+ "eth0.3" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual", "ETHERDEVICE": "eth0"],
+ "virtlan4" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual", "ETHERDEVICE": "eth0"],
+ "myvlantoo" : $["BOOTPROTO":"dhcp", "STARTMODE":"manual", "ETHERDEVICE": "eth0", "VLAN_ID": "2"],
]
],
"probe" : $[
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkStorage.out new/yast2-2.21.6/library/network/testsuite/tests/NetworkStorage.out
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkStorage.out 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkStorage.out 2011-07-22 16:12:58.000000000 +0200
@@ -0,0 +1,12 @@
+Read .target.tmpdir "/tmp"
+Execute .target.bash_output "grep ' / ' /proc/mounts|grep -v rootfs|tr -d '\n'" $["exit":0, "stderr":"", "stdout":"/dev/sda2 / ext3 rw,relatime,errors=continue,user_xattr,acl,commit=15,barrier=1,data=ordered 0 0"]
+Return PASS
+Execute .target.bash_output "grep ' /home ' /proc/mounts|grep -v rootfs|tr -d '\n'" $["exit":0, "stderr":"", "stdout":"nfs.example.com:/home/ /home nfs4 rw,relatime,vers=4,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=krb5i,clientaddr=10.0.2.2,minorversion=0,local_lock=none,addr=10.0.0.1 0 0"]
+Return PASS
+Read .target.stat "/sys/class/block/fc0" $["isdir":true]
+Execute .target.bash "ls -la /sys/class/block/fc0 | grep -q session" 1
+Read .target.stat "/sys/class/block/fc0/device" $["isdir":true]
+Read .target.stat "/sys/class/block/fc0/device" $["isdir":true]
+Execute .target.bash "cd /sys/class/block/fc0/device; pwd -P | grep -q target" 0
+Log FCoE detected!
+Return PASS
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' --exclude Makefile.in --exclude configure --exclude config.guess --exclude '*.pot' --exclude mkinstalldirs --exclude aclocal.m4 --exclude config.sub --exclude depcomp --exclude install-sh --exclude ltmain.sh old/yast2-2.21.5/library/network/testsuite/tests/NetworkStorage.ycp new/yast2-2.21.6/library/network/testsuite/tests/NetworkStorage.ycp
--- old/yast2-2.21.5/library/network/testsuite/tests/NetworkStorage.ycp 1970-01-01 01:00:00.000000000 +0100
+++ new/yast2-2.21.6/library/network/testsuite/tests/NetworkStorage.ycp 2011-07-22 16:12:58.000000000 +0200
@@ -0,0 +1,144 @@
+//
+{
+
+include "testsuite.ycp";
+
+// FIXME: factor out as Assert::Equal(...);
+string AssertEqual(any expected, any actual, string fail_message) {
+ if (expected == actual) {
+ return "PASS";
+ }
+ else {
+ if (fail_message == nil || fail_message == "") {
+ fail_message = sformat ("assertion failure, expected '%1', got '%2'", expected, actual);
+ }
+ y2error ("%1", fail_message);
+ return "FAIL";
+ }
+}
+
+/* TODO
+void Mock(map & dummy, path where, any what) {
+...
+}
+Mock (EXECUTE, .target.bash_output, $["stdout": "O HAI!", ...]);
+*/
+map MockBash(string stdout) {
+ return $[
+ "target" : $[
+ "bash_output" : $[
+ "exit" : 0,
+ "stdout" : stdout,
+ "stderr" : "",
+ ],
+ ],
+ ];
+}
+
+map MockExit(integer exit) {
+ return $[
+ "target" : $[
+ "bash" : exit
+ ],
+ ];
+}
+
+map MockDir =
+ $[
+ "target" : $[
+ "stat" : $[
+ "isdir": true,
+ ]
+ ],
+ ];
+
+map MockFileMissing =
+ $[
+ "target" : $[
+ "stat" : $[]
+ ],
+ ];
+
+map Add(map a, map b) {
+ map c = a;
+ foreach(any k, any v, b, {
+ if (is(v, map) && haskey(c, k) && is(c[k]:nil, map)) {
+ v = Add ((map) v, c[k]:$[]);
+ }
+ c[k] = v;
+ });
+ return c;
+}
+
+map Adder(list<map> many) {
+ map result = $[];
+ foreach(map one, many, {
+ result = Add (result, one);
+ });
+ return result;
+}
+
+map READ = $[
+ "target" : $[
+ "tmpdir" : "/tmp",
+ ]
+];
+TESTSUITE_INIT([READ], nil);
+
+import "NetworkStorage";
+
+map WRITE = $[];
+map EXECUTE = $[];
+
+EXECUTE = MockBash ("/dev/sda2 / ext3 rw,relatime,errors=continue,user_xattr,acl,commit=15,barrier=1,data=ordered 0 0");
+TEST(``(
+ AssertEqual("/dev/sda2", NetworkStorage::getDevice("/"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+
+EXECUTE = MockBash ("nfs.example.com:/home/ /home nfs4 rw,relatime,vers=4,rsize=1048576,wsize=1048576,namlen=255,hard,proto=tcp,port=0,timeo=600,retrans=2,sec=krb5i,clientaddr=10.0.2.2,minorversion=0,local_lock=none,addr=10.0.0.1 0 0");
+TEST(``(
+ AssertEqual("nfs", NetworkStorage::getDevice("/home"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+
+ READ = MockFileMissing;
+
+/*
+FIXME polish it to really test it
+
+// pvs | grep foo
+// FIXME I have no idea how the actual output looks like
+EXECUTE = Adder([
+ MockBash ("sda1 etc\nsda2 etc\n"),
+ MockExit (1),
+ ]);
+TEST(``(
+ AssertEqual(7, NetworkStorage::isDiskOnNetwork("/dev/mapper/foo-bar"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+
+EXECUTE = Adder([
+ MockBash ("A B C D E[i] F[j]"),
+ MockExit (1),
+ ]);
+TEST(``(
+ AssertEqual(7, NetworkStorage::isDiskOnNetwork("/dev/md9"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+
+TEST(``(
+ AssertEqual(7, NetworkStorage::isDiskOnNetwork("server:/export"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+
+TEST(``(
+ AssertEqual(7, NetworkStorage::isDiskOnNetwork("server-v4:/"), "")
+ ), [READ, WRITE, EXECUTE], nil);
+*/
+
+READ = MockDir;
+list EXECUTE2 = [
+ MockExit (1), //grep session
+ MockExit (0) //grep target
+];
+TEST(``(
+ AssertEqual(3, NetworkStorage::isDiskOnNetwork("/dev/fc0"), "")
+ ), [READ, WRITE, EXECUTE2], nil);
+
+}
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Remember to have fun...
--
To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org
For additional commands, e-mail: opensuse-commit+help@opensuse.org