Author: mzugec Date: Wed Jul 23 14:21:31 2008 New Revision: 49344 URL: http://svn.opensuse.org/viewcvs/yast?rev=49344&view=rev Log: convert eth-id-xx.. device names in AY profile into ethx and udev rule Modified: trunk/network/VERSION trunk/network/package/yast2-network.changes trunk/network/src/clients/lan_auto.ycp trunk/network/src/modules/LanUdevAuto.ycp Modified: trunk/network/VERSION URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/VERSION?rev=49344&r1=49343&r2=49344&view=diff ============================================================================== --- trunk/network/VERSION (original) +++ trunk/network/VERSION Wed Jul 23 14:21:31 2008 @@ -1 +1 @@ -2.17.10 +2.17.11 Modified: trunk/network/package/yast2-network.changes URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/package/yast2-network.changes?rev=49344&r1=49343&r2=49344&view=diff ============================================================================== --- trunk/network/package/yast2-network.changes (original) +++ trunk/network/package/yast2-network.changes Wed Jul 23 14:21:31 2008 @@ -1,4 +1,11 @@ ------------------------------------------------------------------- +Wed Jul 23 15:17:46 CEST 2008 - mzugec@suse.cz + +- convert eth-id-xx.. device names in AY profile into ethx and udev + rule +- 2.17.11 + +------------------------------------------------------------------- Tue Jul 22 12:46:07 CEST 2008 - mzugec@suse.cz - 2.17.10 Modified: trunk/network/src/clients/lan_auto.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/clients/lan_auto.ycp?rev=49344&r1=49343&r2=49344&view=diff ============================================================================== --- trunk/network/src/clients/lan_auto.ycp (original) +++ trunk/network/src/clients/lan_auto.ycp Wed Jul 23 14:21:31 2008 @@ -21,6 +21,7 @@ import "Map"; import "NetworkInterfaces"; import "LanItems"; +import "LanUdevAuto"; include "network/lan/wizards.ycp"; include "network/routines.ycp"; @@ -83,7 +84,8 @@ t=remove(t,k); value=t; }); - } + } else + if (key=="device") value = LanUdevAuto::getDeviceName(tostring(value)); iface[key]=value; }); ifaces = add(ifaces, iface); Modified: trunk/network/src/modules/LanUdevAuto.ycp URL: http://svn.opensuse.org/viewcvs/yast/trunk/network/src/modules/LanUdevAuto.ycp?rev=49344&r1=49343&r2=49344&view=diff ============================================================================== --- trunk/network/src/modules/LanUdevAuto.ycp (original) +++ trunk/network/src/modules/LanUdevAuto.ycp Wed Jul 23 14:21:31 2008 @@ -11,9 +11,46 @@ { module "LanUdevAuto"; + include "network/routines.ycp"; + textdomain "network"; list<map> udev_rules=[]; + list <map> hardware=nil; + +global string getDeviceName(string oldname){ + string newname=oldname; + if (hardware==nil) hardware=ReadHardware("netcard"); + + if (issubstring(oldname, "-id-")){ + y2milestone("device by ID found %1", oldname); + + string mac_from_ay = splitstring(tostring(oldname), "-")[2]:""; + y2milestone("MAC address from AY : %1", mac_from_ay); + foreach(map hw, hardware, { + y2internal("hw %1", hw["mac"]:""); + if (hw["mac"]:""==mac_from_ay){ + y2milestone("device matched : %1", hw["dev_name"]:""); + newname = hw["dev_name"]:""; + } + }); + } + + else if (issubstring(oldname, "-bus-")){ + y2milestone("device by BUS found %1", oldname); + string bus_from_ay = splitstring(tostring(oldname), "-")[2]:""; + y2milestone("BUSID from AY : %1", bus_from_ay); + foreach(map hw, hardware, { + y2internal("hw %1", hw["busid"]:""); + if (hw["busid"]:""==bus_from_ay){ + y2milestone("device matched : %1", hw["dev_name"]:""); + newname = hw["dev_name"]:""; + } + }); + } + if (oldname==newname) y2milestone("nothing changed, %1 is old style dev_name", newname); + return newname; +} /** * internal function: @@ -36,23 +73,20 @@ list<map> createUdevFromIfaceName(list<map> interfaces){ y2milestone("old-style names for interfaces found - convert into new-style"); y2internal("interfaces %1", interfaces); - integer pos=0; list<map> tmp_interfaces=[]; foreach(map interface, interfaces, { if (issubstring(interface["device"]:"", "-id-")||issubstring(interface["device"]:"", "-bus-")){ string value = splitstring(interface["device"]:"", "-")[2]:""; string rule="ATTR{address}"; if (splitstring(interface["device"]:"", "-")[1]:"" == "bus") rule = "KERNELS"; - interface["device"]=sformat("eth%1", pos); udev_rules = add(udev_rules, $[ "rule" : rule, "value" : value, - "name" : interface["device"]:"" + "name" : getDeviceName( interface["device"]:"" ) ]); tmp_interfaces=add(tmp_interfaces, interface); } - pos=pos+1; }); y2milestone("converted interfaces: %1", tmp_interfaces); return tmp_interfaces; -- To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org For additional commands, e-mail: yast-commit+help@opensuse.org