o x[h‹ã@s&dd„Zdd„Zdd„Zd dd„ZdS) cCó|| ¡ksJ‚d||fS)z6Return a udev comparison clause, like `ACTION=="add"`.z%s=="%s"©Úupper©ÚkeyÚvalue©rú4/usr/lib/python3/dist-packages/cloudinit/net/udev.pyÚcompose_udev_equalityó r cCr)zBReturn a udev attribute comparison clause, like `ATTR{type}=="1"`.zATTR{%s}=="%s")Úlower)Ú attributerrrrÚcompose_udev_attr_equalityr r cCr)z4Return a udev assignment clause, like `NAME="eth0"`.z%s="%s"rrrrrÚcompose_udev_settingr rNc CsB|sd}d tddƒtddƒtd|ƒtd|ƒtd |ƒg¡}d |S) zïReturn a udev rule to set the name of network interface with `mac`. The rule ends up as a single line looking something like: SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}="ff:ee:dd:cc:bb:aa", NAME="eth0" z?*z, Ú SUBSYSTEMÚnetÚACTIONÚaddÚDRIVERSÚaddressÚNAMEz%s )Újoinr r r)Ú interfaceÚmacÚdriverÚrulerrrÚgenerate_udev_rulesûÿ r)N)r r rrrrrrÚs