܍~c zddlmZddlmZmZmZGddeZGddeZGddeZd S) ) BootProtoEnum)NicBaseStaticIpv4BaseStaticIpv6BaseceZdZdZdZdZdZedZedZ edZ edZ ed Z ed Z ed Zed Zd S)Niczd Holds the information about each NIC specified in the customization specification file c"||_||_dSN)_name _configFile)selfname configFiles J/usr/lib/python3/dist-packages/cloudinit/sources/helpers/vmware/imc/nic.py__init__z Nic.__init__s %cN|j|jdz|zdS)N|)r getr)r whats r_getzNic._gets&##DIOd$:DAAArcF|j|j|zSr )r get_count_with_prefixr)r prefixs r_get_count_with_prefixzNic._get_count_with_prefixs 55di&6HIIIrc|jSr )r r s rrzNic.name s zrcP|dS)NMACADDRrlowerrs rmaczNic.mac$s yy##))+++rct|d}|r |}|dkp|dkSdS)NPRIMARYyestrueFr r values rprimaryz Nic.primary(s@ )$$  KKMMEE>4Uf_ 45rct|d}|r |}|dkp|dkSdS)NONBOOTr%r&Fr r's ronbootz Nic.onboot1s@ (##  KKMMEE>4Uf_ 45rc\|d}|r|SdS)N BOOTPROTOr r's r bootProtoz Nic.bootProto:. +&&  ;;== 2rc\|d}|r|SdS)N IPv4_MODEr/r r's r ipv4_modez Nic.ipv4_modeBr1rcP|jtjkrt|gSdS)z Checks the BOOTPROTO property and returns StaticIPv4Addr configuration object if STATIC configuration is set. N)r0rSTATICStaticIpv4Addrrs r staticIpv4zNic.staticIpv4Js* >]1 1 1"4(() )4rc|d}|sdSg}td|dzD]%}|t||&|S)Nz |IPv6ADDR|)rrangeappendStaticIpv6Addr)r cntresultindexs r staticIpv6zNic.staticIpv6Ush)),77 41cAg&& 7 7E MM.u55 6 6 6 6 rN)__name__ __module__ __qualname____doc__rrrpropertyrr"r)r,r0r4r8rArrrrs) &&&BBBJJJX,,X,XXXXX  X   rrcZeZdZdZdZedZedZedZdS)r7zStatic IPV4 Setting.c||_dSr )_nic)r nics rrzStaticIpv4Addr.__init__fs  rc6|jdS)NIPADDRrJrrs ripzStaticIpv4Addr.ipisy~~h'''rc6|jdS)NNETMASKrNrs rnetmaskzStaticIpv4Addr.netmaskmsy~~i(((rc||jd}|rd|dDSdS)NGATEWAYc6g|]}|SrG)strip).0xs r z+StaticIpv4Addr.gateways..us 888!AGGII888r,)rJrsplitr's rgatewayszStaticIpv4Addr.gatewaysqsB y))  88u{{3'7'7888 84rN) rBrCrDrErrFrOrRr\rGrrr7r7csz((X())X)Xrr7cZeZdZdZdZedZedZedZdS)r=zStatic IPV6 Address.c"||_||_dSr )rJ_index)r rKr@s rrzStaticIpv6Addr.__init__}s  rc`|jdt|jzS)Nz IPv6ADDR|rJrstrr_rs rrOzStaticIpv6Addr.ips%y~~kC ,<,<<===rc`|jdt|jzS)Nz IPv6NETMASK|rars rrRzStaticIpv6Addr.netmask%y~~ns4;/?/??@@@rc`|jdt|jzS)Nz IPv6GATEWAY|rars rgatewayzStaticIpv6Addr.gatewayrdrN) rBrCrDrErrFrOrRrfrGrrr=r=zs>>X>AAXAAAXAAArr=N) /cloudinit.sources.helpers.vmware.imc.boot_protor-cloudinit.sources.helpers.vmware.imc.nic_baserrrrr7r=rGrrrisJIIIIIPPPPP'PPPf^.AAAAA^AAAAAr