+
    WBi5                        R t RtRt^ RIt^ RIt^ RIt^ RIt^ RIHt RtRt	Rt
RtRtR	tR
tRtRtRtRtRtRt ! R R4      t ! R R4      t ! R R4      t ! R R4      t ! R R4      t ! R R4      t ! R R4      tR tR tR  tR! tR" t R# t!]PD                  PG                  ]R$R%R&7      R' 4       t$]PD                  PG                  ]R(R%R&7      R) 4       t%]PD                  PG                  ]R(R%R&7      R* 4       t&]PD                  PG                  ]R+R%R&7      R, 4       t']PD                  PG                  ]R-R%R&7      R. 4       t(]PD                  PG                  ]R/R%R&7      R0 4       t)]PD                  PG                  ]R1R/R&7      R2 4       t*]PD                  PG                  ]R1R/R&7      R3 4       t+]PD                  PG                  ]R4R/R&7      R5 4       t,]PD                  PG                  ]R6R/R&7      R7 4       t-]PD                  PG                  ]R8R/R&7      R9 4       t.]PD                  PG                  ]R-R%R&7      R: 4       t/]PD                  PG                  ]R-R%R&7      R; 4       t0]PD                  PG                  ]R-R%R&7      R< 4       t1]PD                  PG                  ]R=R>R&7      R? 4       t2]PD                  PG                  ]R/R>R&7      R@ 4       t3RA t4RB t5RC t6RD t7R# )EzNetworkManager mock template

This creates the expected methods and properties of the main
org.freedesktop.NetworkManager object, but no devices. You can specify any
property such as 'NetworkingEnabled', or 'WirelessEnabled' etc. in
"parameters".
zIftikhar AhmadzH
(c) 2012 Canonical Ltd.
(c) 2017 - 2022 Martin Pitt <martin@piware.de>
N)
MOCK_IFACEorg.freedesktop.NetworkManagerz/org/freedesktopz/org/freedesktop/NetworkManagerz(/org/freedesktop/NetworkManager/Settingsz'org.freedesktop.NetworkManager.Settingsz%org.freedesktop.NetworkManager.Devicez.org.freedesktop.NetworkManager.Device.Wireless*org.freedesktop.NetworkManager.AccessPointz2org.freedesktop.NetworkManager.Settings.Connectionz0org.freedesktop.NetworkManager.Connection.ActiveTc                   :    ] tR t^-tRt^ t^
t^t^t^(t	^2t
^<t^FtRtR# )NMStatezdGlobal state

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMState
 N)__name__
__module____qualname____firstlineno____doc__NM_STATE_UNKNOWNNM_STATE_ASLEEPNM_STATE_DISCONNECTEDNM_STATE_DISCONNECTINGNM_STATE_CONNECTINGNM_STATE_CONNECTED_LOCALNM_STATE_CONNECTED_SITENM_STATE_CONNECTED_GLOBAL__static_attributes__r       F/usr/lib/python3.14/site-packages/dbusmock/templates/networkmanager.pyr   r   -   s8    
 O!  "r   r   c                   .    ] tR t^=tRt^ t^t^t^t^t	Rt
R# )NMConnectivityStatezuConnectvity state

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMConnectivityState
r   N)r   r	   r
   r   r   NM_CONNECTIVITY_UNKNOWNNM_CONNECTIVITY_NONENM_CONNECTIVITY_PORTALNM_CONNECTIVITY_LIMITEDNM_CONNECTIVITY_FULLr   r   r   r   r   r   =   s'    
  r   r   c                   .    ] tR t^JtRt^ t^t^t^t^t	Rt
R# )NMActiveConnectionStatezActive connection state

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMActiveConnectionState
r   N)r   r	   r
   r   r   "NM_ACTIVE_CONNECTION_STATE_UNKNOWN%NM_ACTIVE_CONNECTION_STATE_ACTIVATING$NM_ACTIVE_CONNECTION_STATE_ACTIVATED'NM_ACTIVE_CONNECTION_STATE_DEACTIVATING&NM_ACTIVE_CONNECTION_STATE_DEACTIVATEDr   r   r   r   r    r    J   s'    
 *+&,-)+,(./+-.*r   r    c                   >    ] tR t^WtRt^ t^t^t^t]R]R]R]R/t	Rt
R# )InfrastructureModezoInfrastructure mode

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NM80211Mode
unknownadhocinfrastructurezaccess-pointr   N)r   r	   r
   r   r   NM_802_11_MODE_UNKNOWNNM_802_11_MODE_ADHOCNM_802_11_MODE_INFRANM_802_11_MODE_APNAME_MAPr   r   r   r   r'   r'   W   s?    
  		g.>	Hr   r'   c                   N    ] tR t^jtRt^ t^
t^t^t^(t	^2t
^<t^Ft^Pt^Zt^dt^nt^xtRtR# )DeviceStatezkDevice states

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMDeviceState
r   N)r   r	   r
   r   r   UNKNOWN	UNMANAGEDUNAVAILABLEDISCONNECTEDPREPARECONFIG	NEED_AUTH	IP_CONFIGIP_CHECKSECONDARIES	ACTIVATEDDEACTIVATINGFAILEDr   r   r   r   r1   r1   j   sJ    
 GIKLGFIIHKILFr   r1   c                   V    ] tR t^tRt^ t^t^t^t^t	^t
^ t^@t^tRtRt]RRRR//tRtR	# )
NM80211ApSecurityFlagszuSecurity flags

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NM80211ApSecurityFlags
   i   zkey-mgmtzwpa-pskzauth-algopenr   N)r   r	   r
   r   r   NM_802_11_AP_SEC_NONENM_802_11_AP_SEC_PAIR_WEP40NM_802_11_AP_SEC_PAIR_WEP104NM_802_11_AP_SEC_PAIR_TKIPNM_802_11_AP_SEC_PAIR_CCMPNM_802_11_AP_SEC_GROUP_WEP40NM_802_11_AP_SEC_GROUP_WEP104NM_802_11_AP_SEC_GROUP_TKIPNM_802_11_AP_SEC_GROUP_CCMPNM_802_11_AP_SEC_KEY_MGMT_PSK NM_802_11_AP_SEC_KEY_MGMT_802_1Xr/   r   r   r   r   r@   r@      sb    
 '",#- !+!+#- $.!",",$.!'1$ 	&
Iz6'RHr   r@   c                   "    ] tR t^tRt^ t^tRtR# )NM80211ApFlagszkDevice flags

As per https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NM80211ApFlags
r   N)r   r	   r
   r   r   NM_802_11_AP_FLAGS_NONENM_802_11_AP_FLAGS_PRIVACYr   r   r   r   rO   rO      s    
 )!+r   rO   c                    ^ p\         P                  ! \        4      P                  \        R4      p \
        P                  ! R\        V4      ,           4      pWe9  d   MV^,          pK9  \
        P                  ! \        P                  4      p. p\        V4      R8w  d   VP                  V4       \
        P                  ! \        WW\        V4      V4      4      # )    ActiveConnections1/org/freedesktop/NetworkManager/ActiveConnection//)dbusmock
get_objectMANAGER_OBJGetMANAGER_IFACEdbus
ObjectPathstrUInt32r    r#   appendAddActiveConnection)	selfconndevapcountactive_connectionspathstatedevicess	   &&&&     r   activate_connectionrk      s    E!,,[9==mM`a
RUXY^U__`)
KK/TTUEG
3x3s??.tdE
TYZ[[r   c                     \         P                  ! \        4      pVP                  4        F  p\	        WV4       K  	  R # N)rW   rX   rY   
GetDevicesRemoveActiveConnection)rb   active_conn_pathNMdev_paths   &&  r   deactivate_connectionrs      s-    			[	)BMMOt/?@ $r   c           	         VP                  R ^4      ^,          p\        WRV,           4        RP                  VR,          R,           Uu. uF  p\        V4      NK  	  up4      p\        P                  ! \        WWFR4      4      p\        WW#4      pWx3# u upi   \         d@    \
        P                  ! T4      P                  R,          R,          P                  4       p L~i ; i)rV   )/org/freedesktop/NetworkManager/Settings/ 802-11-wirelessssidr   Ssid)rsplitRemoveWifiConnectionjoinchrKeyErrorrW   rX   propsdecoder\   r]   AddWiFiConnectionrk   )	rb   	conn_confrd   re   namebyteraw_ssid	wifi_connactive_conns	   &&&&     r   add_and_activate_connectionr      s    99S!QD$ORV$VWp77)<M2Nv2VW2V$CI2VWX  1$TR PQI%ds?K## X p&&r*001]^_efmmops$   B BB B AC%$C%c                     \         P                  ! \        4      pVP                  4        F9  p\         P                  ! V4      pVP	                  \
        R 4      pWQ8X  g   K7  Vu # 	  R# )	InterfaceN)rW   rX   rY   rn   rZ   DEVICE_IFACE)_selfifacerq   rr   dev_obj	interfaces   &&    r   get_device_by_ip_ifacer      sR    			[	)BMMO%%h/KKk:	O	 $ r   c                 f   V'       dP   \        V \        P                  4       \        V \        P                  4       \        V \        P                  4       MN\        V \        P
                  4       \        V \        P                  4       \        V \        P                  4       \        W4       R # rm   )	SetGlobalConnectionStater   r   r   r   r   r   r   SetNetworkingEnabledrb   networking_enableds   &&r   set_networking_enabledr      sm     w'B'BC w'G'GH w'H'HI w'E'EF w'D'DE w'>'>?2r   c                 j   R \         P                  ! . RR7      R\         P                  ! . RR7      RVP                  RR4      RVP                  R\         P                  ! \        P
                  4      4      RVP                  R\         P                  ! \        P                  4      4      RR	R
VP                  R
R4      RVP                  RR4      RVP                  RR4      RVP                  RR4      RVP                  RR4      RVP                  RR	4      RVP                  RR4      /pR!R"RRRR\         R23RRRR\         R23R#R$R%R&R'R(.
pV P                  \        \        W#4       V P                  \        4       \        P                  ! \        4      p\        Vn        \        Vn        \         Vn        \"        Vn        \$        Vn        RRRRR\         P                  ! . RR7      /pRRRR\&         R23R)R*R+R,.pV P                  \(        \&        WV4       V P                  \(        4       R # )-rT   o	signatureDevicesNetworkingEnabledTConnectivityStateStartupFVersionz0.9.6.0WimaxEnabledWimaxHardwareEnabledWirelessEnabledWirelessHardwareEnabledWwanEnabledWwanHardwareEnabledrv   aori   uzret = self.Get('z', 'State')CheckConnectivityz', 'Connectivity')Hostnamehostname	CanModifyConnectionsListConnectionsz', 'Connections')N)rn   rv   r   z4ret = [k for k in objects.keys() if "/Devices" in k])GetPermissionsrv   za{ss}zret = {})ActivateConnectionooor   z?ret = self.activate_connection(self, args[0], args[1], args[2]))DeactivateConnectionr   rv   z)self.deactivate_connection(self, args[0]))AddAndActivateConnectionza{sa{sv}}oooozGret = self.add_and_activate_connection(self, args[0], args[1], args[2]))GetDeviceByIpIfacesr   z0ret = self.get_device_by_ip_iface(self, args[0]))Reloadr   rv   rv   )Enablebrv   z*self.set_networking_enabled(self, args[0]))GetConnectionByUuidr   r   z/ret = self.SettingsGetConnectionByUuid(args[0]))AddConnection	a{sa{sv}}r   )ret = self.SettingsAddConnection(args[0]))AddConnectionUnsavedr   r   r   )SaveHostnamer   rv   rv   )r\   Arraygetr_   r   r   r   r   r[   	AddObjectrY   object_manager_emit_addedrW   rX   rk   rs   r   r   r   SETTINGS_IFACESETTINGS_OBJ)mock
parametersmanager_propsmanager_methodsobjsettings_propssettings_methodss   &&     r   loadr      s   TZZc:4::bC0Z^^,?F
~t{{CVCkCk7lmW5V5V)WX5:>>)Y7
~t<
/Et L:>>*;TB!:>>2KT#Rz~~mU;z~~.CTJM  	Y3	"c-m_KHI	b#)9-HZ'[\mV	
 	]IO$ 	NN;}N"";/


k
*C1C 5C&AC#!7C!7C *k4PTPZPZ[]ilPmnN	B(88HHY&Z[\X_% 	NN<R""<0r   sssvrv   )in_signatureout_signaturec                     \         P                  ! V4      pVP                  W#V4       VP                  VR RW4/.4       R# )PropertiesChangeda{sv}N)rW   rX   Set
EmitSignal)r   rh   r   r   valuer   s   &&&&& r   SetPropertyr     s7    


d
#CGGENN5-w$Hr   r   c                     V P                  \        \        R \        P                  ! V4      4       V P                  \        RRV.4       R# )r   StateChangedr   N)r   rY   r[   r\   r_   r   )rb   ri   s   &&r   r   r     s3    [-$++e:LMOOM>3@r   c                 f    V P                  \        \        R \        P                  ! V4      4       R# )r   N)r   rY   r[   r\   r_   )rb   connectivitys   &&r   SetConnectivityr   $  s    [-\AZ[r   r   c                 f    V P                  \        \        R \        P                  ! V4      4       R# )r   N)r   rY   r[   r\   Booleanr   s   &&r   r   r   )  s!    [-1DdllSeFfgr   ssc           
      f   \         P                  ! V4      pVP                  \        R \        P
                  ! V4      4       VP                  \        R4      pVP                  \        R\        P                  ! \        P                  4      4       VP                  \        R\        P                  ! \        P                  4      \        P                  ! ^ 4      34       VP                  \        RR\        P                  ! \        P                  4      V\        P                  ! ^4      .4       R# )ActiveConnectionr   StateReasonr   uuuN)rW   rX   r   r   r\   r]   rZ   r_   r1   r<   r   )r   device_pathactive_connection_pathr   	old_states   &&&  r   SetDeviceActiver   .  s    !!+.GKK0$//BX2YZL'2IKKgt{{;3H3H'IJKKmdkk+:O:O.PRVR]R]^_R`-abnedkk+:O:O.PR[]a]h]hij]k-lr   r   c           
      f   \         P                  ! V4      pVP                  \        R \        P
                  ! R4      4       VP                  \        R4      pVP                  \        R\        P                  ! \        P                  4      4       VP                  \        R\        P                  ! \        P                  4      \        P                  ! ^ 4      34       VP                  \        RR\        P                  ! \        P                  4      V\        P                  ! ^4      .4       R# )r   rV   r   r   r   r   N)rW   rX   r   r   r\   r]   rZ   r_   r1   r5   r   )r   r   r   r   s   &&  r   SetDeviceDisconnectedr   ;  s    !!+.GKK0$//#2FGL'2IKKgt{{;3K3K'LMKKmdkk+:R:R.SUYU`U`abUc-denedkk+:R:R.SU^`d`k`klm`n-or   ssic                D   RV,           pRRR\         P                  ! R4      R\         P                  ! R4      R\         P                  ! ^ 4      /pV P                  VRV. 4       R	\         P                  ! ^4      R
\         P                  ! V4      R\         P                  ! V4      \         P                  ! ^ 4      3RVR\         P                  ! R4      R\         P
                  ! . RR7      RRRRRRRR/
p\        P                  ! V4      pVP                  \        V4       V P                  V4       \        P                  ! \        4      pVP                  \        R4      p	V	P                  V4       VP                  \        RV	4       VP!                  RRRV.4       V# )a  Add an ethernet device.

You have to specify device_name, device interface name (e. g. eth0), and
state. You can use the predefined DeviceState values (e. g.
DeviceState.ACTIVATED) or supply a numeric value. For valid state values
please visit
https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMDeviceState

Please note that this does not set any global properties.

Returns the new object path.
(/org/freedesktop/NetworkManager/Devices/CarrierF	HwAddressz78:DD:08:D2:3D:43PermHwAddressSpeedz+org.freedesktop.NetworkManager.Device.Wired
DeviceTyper   r   r   r   rV   AvailableConnectionsr   r   AutoConnectManagedTDriverrW   IpInterfacerv   r   r   DeviceAdded)r\   Stringr_   r   r]   r   rW   rX   AddPropertiesr   r   rY   rZ   r[   r`   r   r   )
rb   device_name
iface_nameri   rh   wired_propsr   r   rq   rj   s
   &&&&      r   AddEthernetDevicer   H  sW    6CD5T[[!45%89Q	K 	NN4FUWX 	dkk!nU#E*DKKN;ZDOOC0

2 =u4*rE 

d
#ClE*""4(			[	)Bff]I.GNN4FF=)W-MM2M3OKr   c                   RV,           pV P                  V\        R\        P                  ! R4      R\        P                  ! R4      R\        P                  ! R4      R\        P                  ! ^4      R\        P                  ! ^4      R	\        P
                  ! . R
R7      /. RO4       \        P                  ! V4      p. Vn        VP                  \        R\        P                  ! R4      R\        P
                  ! . R
R7      RRRRRRR\        P                  ! ^4      R\        P                  ! V4      R\        P                  ! V4      \        P                  ! ^ 4      3RVRV/
4       V P                  V4       \        P                  ! \        4      pVP                  \        R4      pVP!                  V4       VP#                  \        RV4       VP%                  RRR
V.4       V# )a  Add a WiFi Device.

You have to specify device_name, device interface name (e. g.  wlan0) and
state. You can use the predefined DeviceState values (e. g.
DeviceState.ACTIVATED) or supply a numeric value. For valid state values,
please visit
https://developer.gnome.org/NetworkManager/unstable/nm-dbus-types.html#NMDeviceState

Please note that this does not set any global properties.

Returns the new object path.
r   r   z11:22:33:44:55:66r   Bitratei  ModeWirelessCapabilitiesAccessPointsr   r   r   rV   r   r   Fr   Tr   rW   r   r   r   r   r   r   r   r   ))GetAccessPointsrv   r   ret = self.access_points)GetAllAccessPointsrv   r   r  )RequestScanr   rv   rv   )r   WIRELESS_DEVICE_IFACEr\   r   r_   r   rW   rX   access_pointsr   r   r]   r   rY   rZ   r[   r`   r   r   )rb   r   r   ri   rh   r   rq   rj   s   &&&&    r   AddWiFiDevicer	  z  s    6CDNN%89T[[)<=t{{4(DKKN"DKK$4DJJrS9	
	
$ !!$'GG 4"DJJrS$A5tj$++a.T[['DKK.A?:	
  	""4(			[	)Bff]I.GNN4FF=)W-MM2M3OKr   	ssssuuuyuc
                @   \         P                  ! V4      p
RV,           pWP                  9   d4   \        P                  P                  RV RV R2\        R,           R7      h\        P                  pV	\        P                  8X  d   \        P                  pV P                  V\        R\        P                  ! VP                  R4      4      R	\        P                   ! V4      R
\        P"                  ! V4      R\        P$                  ! ^4      R\        P"                  ! V4      R\        P"                  ! V4      R\        P"                  ! V4      R\        P"                  ! V	4      R\        P"                  ! V	4      R\        P&                  ! V4      /
. 4       V P)                  V4       V
P                  P+                  V4       V
P-                  \.        R4      pVP+                  V4       V
P1                  \.        RV4       V
P3                  \.        RRV.4       V# )a  Add an access point to an existing WiFi device.

You have to specify WiFi Device path, Access Point object name,
ssid, hw_address, mode, frequency, rate, strength and security.
For valid access point property values, please visit
https://developer.gnome.org/NetworkManager/unstable/gdbus-org.freedesktop.NetworkManager.AccessPoint.html

Please note that this does not set any global properties.

Returns the new object path.
z,/org/freedesktop/NetworkManager/AccessPoint/zAccess point  on device  already exists.AlreadyExistsr   ry   UTF-8r   FlagsLastSeen	Frequency
MaxBitrater   RsnFlagsWpaFlagsStrengthr  AccessPointAddedr   )rW   rX   r  r\   
exceptionsDBusExceptionr[   rO   rQ   r@   rC   rP   r   ACCESS_POINT_IFACE	ByteArrayencoder   r_   Int32Byter   r`   rZ   r  r   r   )rb   rr   ap_namerx   
hw_addressmode	frequencyratestrengthsecurityr   ap_pathflagsapss   &&&&&&&&&&    r   AddAccessPointr*    s    !!(+G<wFG'''oo++G9KzIP]`pPp , 
 	
 55E)???66NNDNN4;;w#78Z0T[['

1Y/$++d+DKK%H-H-		(+	
 	" 	""7+  )
+++^
<CJJwKK%~s;,.@#yQNr   ssssc                   \         P                  ! V4      pRV,           pVP                  \        R4      p\         P                  ! \        4      pVP                  4       p	VP                  R4      p
RpVP                  pRpV F:  p\         P                  ! V4      pVP                  \        R4      V
8X  g   K6  TpTp M	  V'       g1   \        P                  P                  RV R2\        R,           R	7      hVP                  \        R
4      pVP                  \        R4      pVP                  \        R4      pWg9   g   Wi9   d4   \        P                  P                  RV RV R2\        R,           R	7      h\        P                  ! VP                  RR4      4      pRRV.R\        P                   ! V
4      R\        P                   ! V4      R\"        P$                  V,          /RR\        P&                  ! R4      RRRVR\)        \*        P,                  ! 4       4      /RRR /R!RR //pV\.        P0                  8w  d'   R"VR,          R#&   \.        P$                  V,          VR"&   V P3                  V\4        R$R%/. R)O4       V P7                  V4       \         P                  ! V4      pVVn        VVn        \<        Vn        \>        Vn        \@        Vn         \B        Vn!        VPE                  \        PF                  ! V4      4       VPI                  \        RV4       V	PE                  V4       VPI                  \J        R&V	4       VPM                  \J        R'R(V.4       V# )*aT  Add an available connection to an existing WiFi device and access point.

You have to specify WiFi Device path, Connection object name,
SSID and key management.

The SSID must match one of the previously created access points.

Please note that this only sets minimal global properties in ipv{4,6}, no others.

Returns the new object path.
ru   r   r  Nry   zAccess point with SSID [z] could not be found.DoesNotExistr  r   r   r  Connection r  r  r  :rv   rw   zseen-bssidsrx   zmac-addressr"  
connection	timestampi7Qtypeiduuidipv4methodautoipv6z802-11-wireless-securityr&  UnsavedFr   NewConnectionr   )Deleterv   rv   zself.ConnectionDelete(self))GetSettingsrv   r   z&ret = self.ConnectionGetSettings(self))
GetSecretsr   r   z.ret = self.ConnectionGetSecrets(self, args[0]))Updater   rv   z$self.ConnectionUpdate(self, args[0]))'rW   rX   rZ   r   r   r   r  r  r  r\   r  r  r[   binascii	unhexlifyreplacer  r'   r/   UInt64r^   r4  uuid4r@   rC   r   CSETTINGS_IFACEr   settingsconnection_pathConnectionDeleteConnectionGetSettingsConnectionGetSecretsConnectionUpdater`   r]   r   r   r   )rb   rr   connection_name	ssid_name	_key_mgmtr   rG  connectionssettings_objmain_connectionsrx   access_pointr  access_point_pathr'  re   r!  r"  r&  	mac_bytesrF  connection_objs   &&&&&                 r   r   r     s(    !!(+GAOSO++l,BCK&&|4L#335G$D L))M   )66$f-5L ' ! oo++&yk1EF]]lMl , 
 	
 !!"4kBJ.7D 2J?H%)Loo++/*+hZOVcfvVv , 
 	

 "":#5#5c2#>?I 	J<DNN4(4>>)4&//5	
 	Z0%)C

%	
 	f
 	f
!H* )???2L"#J//E/N/Nx/X+,NN	E	
	
 	""?3((9N&N%4N"&6N#+@N(*>N'&6N#t78KK4kBO,^]4DENOSCTBUVr   assssuc                v   \         P                  ! V4      pVP                  pVR,          R,          pVR,          R,          p	VR,          R,          p
V Uu. uF  p\        P                  ! V4      NK  	  ppRV,           pV P                  V\        R\        P                  ! VRR7      R	R
RRRV	RV	R8H  R\        P                  ! V4      R\        P                  ! R4      R\        P                  ! V4      RVR\        P                  ! V4      RV
/. 4       V F  pV P                  W4       K  	  V P                  V4       \         P                  ! \        4      pVP                  \        R4      pVP                  \        P                  ! V4      4       VP                  \        \        RV4       V# u upi )a  Add an active connection to an existing WiFi device.

You have to a list of the involved WiFi devices, the connection path,
the access point path, ActiveConnection object name and connection
state.

Please note that this does not set any global properties.

Returns the new object path.
r0  r4  r2  r3  rU   r   r   r   Default6FDefaultTTypeVpnvpn
ConnectionMasterrV   SpecificObjectUuidr   IdrT   )rW   rX   rF  r\   r]   r   ACTIVE_CONNECTION_IFACEr   r_   r   r   rY   rZ   r[   r`   r   )rb   rj   connection_devicespecific_objectr   ri   conn_objrF  	conn_uuid	conn_typeconn_idrd   device_objectsr   rr   rq   rg   s   &&&&&&           r   ra   ra   [  s    ""#45H  H&v.I&v.I|$T*G6=>gsdooc*gN>PSWWNNtzz.C@tII&$//*;<dooc*dooo>IT[[''	
 	!& X>  	""#9:			[	)B/BCdoo.DEFNN;/BDVW!!A ?s   F6c                Z   \         P                  ! V4      pVP                  \        R4      pVP	                  V4       VP                  \        RV4       VP                  P	                  V4       VP                  \        RRV.4       V P                  V4       V P                  V4       R# )zRemove the specified access point.

You have to specify the device to remove the access point from, and the
path of the access point.

Please note that this does not set any global properties.
r  AccessPointRemovedr   N)
rW   rX   rZ   r  remover   r  r   object_manager_emit_removedRemoveObject)rb   rr   r'  r   r)  s   &&&  r   RemoveAccessPointro    s     !!(+G
+++^
<CJJwKK%~s;  ),.BC'S$$W-gr   c                h   \         P                  ! V4      p\         P                  ! \        4      pVP                  \        R4      pVP                  4       pW%9  d	   W&9  d   R# VP                  \        P                  ! V4      4       VP                  \        RV4       VP                  V4       VP                  \        RV4       VP                  \        RRV.4       \         P                  ! V4      pVP                  \        RR. 4       V P                  V4       V P                  V4       R# )zRemove the specified WiFi connection.

You have to specify the device to remove the connection from, and the
path of the Connection.

Please note that this does not set any global properties.
r   Nr   ConnectionRemovedr   Removedrv   )rW   rX   r   rZ   r   r   rl  r\   r]   r   r   r   rE  rm  rn  )rb   rr   rG  r   rP  rO  rQ  rU  s   &&&     r   r{   r{     s     !!(+G&&|4L++l,BCK#335)o.Ut78KK4kBO,^]4DEN,?FWX((9Noy"bA$$_5o&r   c                ^   V P                  V4       \        P                  ! \        4      pVP	                  \
        R4      pW$9  d   R# VP                  \        P                  ! V4      4       VP                  \        \
        RV4       V P                  V4       V P                  V4       R# )zRemove the specified ActiveConnection.

You have to specify the device to remove the connection from, and the
path of the ActiveConnection.

Please note that this does not set any global properties.
rT   N)r   rW   rX   rY   rZ   r[   rl  r\   r]   r   rm  rn  )rb   rr   r   rq   rg   s   &&&  r   ro   ro     s     	x(			[	)B/BC7doo.DEFNN;/BDVW$$%;<,-r   r   r   c                   RVR,          9  d)   \        \        P                  ! 4       4      VR,          R&   \        P                  ! \
        4      p\        P                  ! \        4      pVP                  4       p^ p \        P                  ! \        R,           \        V4      ,           4      pWd9  d   MV^,          pKD  \        V4      pV P                  V\        RR/. RO4       V P                  V4       \        P                  ! V4      pWn        Wxn        \        Vn        \         Vn        \"        Vn        \$        Vn        VP'                  V4       VP)                  \*        RV4       VP-                  \*        RRV.4       Rp	R	VR,          9   d   VR,          R	,          p	V	'       d@   R
p
VP/                  4       p\1        V4      ^ 8  d
   V^ ,          p
V
'       d   \3        W'W4       V# )zAdd a connection.

connection_settings is a String String Variant Map Map. See
https://developer.gnome.org/NetworkManager/0.9/spec.html #type-String_String_Variant_Map_Map

If you omit uuid, this method adds one for you.
r4  r0  rV   r9  Fr   r:  r   autoconnectNr;  )r^   r4  rD  rW   rX   rY   r   r   r\   r]   r   rE  r   rF  rG  rH  rI  rJ  rK  r`   r   r   r   rn   lenrk   )rb   connection_settingsrq   rP  rQ  rf   connection_obj_pathrG  rU  auto_connectrd   rj   s   &&          r   SettingsAddConnectionrz    s    (6647

4EL)&1			[	)B&&|4L#335 E
"oolS.@3u:.MN6
-.ONN	E	
	
 	""?3((9N1%4"&6N#+@N(*>N'&6N#O,^]4DENOS?BSTL+L99*<8G--/ w<!!*CSJr   c                    V P                  4       pV FQ  p\        P                  ! V4      V n        V P                  P	                  4       pVR ,          R,          V8X  g   KO  Vu # 	  \
        P                  P                  R4      h)r0  r4  z&No connection with the UUID was found.)r   rW   rX   rc   r=  r\   r  r  )rb   rf  connsr   rF  s   &&   r   SettingsGetConnectionByUuidr}  )  sm      "E''*	99((*L!&)Y6H	 
 //
'
'(P
QQr   c                   V P                   p\        P                  ! \        4      p\        P                  ! \        4      pVP                  4       pW%9  d1   \        P                  P                  RV R2\        R,           R7      hV FO  pW,          pV F>  pW`P                  9  d   / V P                  V&   Wx,          V P                  V,          V&   K@  	  KQ  	  V P                  \        RR. 4       Rp	RVR	,          9   d   VR	,          R,          p	V	'       d@   R
p
VP                  4       p\        V4      ^ 8  d
   V^ ,          p
V
'       d   \        W2W4       V# )zUpdate settings on a connection.

settings is a String String Variant Map Map. See
https://developer.gnome.org/NetworkManager/0.9/spec.html#type-String_String_Variant_Map_Map
r.  z does not existr-  r  Updatedrv   Fru  r0  N)rG  rW   rX   rY   r   r   r\   r  r  r[   rF  r   rE  rn   rv  rk   )rb   rF  rG  rq   rP  rQ  setting_namesettingkry  rd   rj   s   &&          r   rK  rK  4  s2    **O			[	)B&&|4L#335.oo++/*/:0 , 
 	
 !(A==0.0l+-4ZDMM,'*  ! 	OOOYB7L..-m<--/ w<!!*CSJr   c                     / pV P                    FC  pV P                   V,          pV F'  pVR 8w  g   K  W!9  d   / W&   W4,          W,          V&   K)  	  KE  	  V# )secretsrF  )rb   rF  r  r  r  s   &    r   rI  rI  c  sZ     H---AI~/-/H*,3J&q)	  & Or   c                 h    V P                   V,          pR V9   d   VR VR ,          //pV# VR RR///pV# )r  z
no-secretsTr  )rb   r  rF  r  s   &&  r   rJ  rJ  s  sN    }}W%HHY(;<= N Yt(<=>Nr   c                V   V P                   p\        P                  ! \        4      p\        P                  ! \        4      pVP                  \        R4      p. pV FH  p\        P                  ! V4      pVP                  \        R4      pW8X  g   K7  VP                  V4       KJ  	  \        V4      \        V4      8X  d    V P                  \        P                  4       VP                  4        F  p	\        P                  ! V	4      p
V
P                  \        R4      pV F  pVP                  W4       K  	  W9  d   KQ  VP!                  \"        P$                  ! V4      4       V
P'                  \        RV4       K  	  VP)                  4       pW9  d   R# VP!                  V4       VP'                  \*        RV4       VP-                  \*        RRV.4       \        P                  ! V4      pVP-                  \.        RR	. 4       V P1                  V4       V P3                  V4       R# )
aR  Deletes a connection.

This also
    * removes the deleted connection from any device,
    * removes any active connection(s) it might be associated with,
    * removes it from the Settings interface,
    * as well as deletes the object from the mock.

Note: If this was the only active connection, we change the global
connection state.
rT   r]  r   Nr   rq  r   rr  rv   )rG  rW   rX   rY   r   rZ   r[   rb  r`   rv  r   r   r   rn   r   ro   rl  r\   r]   r   r   r   r   rE  rm  rn  )rb   rG  rq   rP  rg   associated_active_connectionsacac_objac_conrr   r   rO  rQ  rU  s   &             r   rH  rH  ~  s    **O			[	)B&&|4L /BC$&! $$R(3\B$)004	 ! #&C"DD%%g&C&CD MMO%%h/kk,0FG/B%%h3 0 -4???;<L"8+F $ $335.O,^]4DEN,?FWX ((9Noy"bA$$_5o&r   )8r   
__author____copyright__r@  r4  r\   rW   r   BUS_NAMEMAIN_OBJr[   rY   r   r   r   r  r  rE  rb  
SYSTEM_BUSIS_OBJECT_MANAGERr   r   r    r'   r1   r@   rO   rk   rs   r   r   r   r   servicer6  r   r   r   r   r   r   r   r	  r*  r   ra   ro  r{   ro   rz  r}  rK  rI  rJ  rH  r   r   r   <module>r     s   

     +0/9:6H A FL 
 # # 
 

/ 
/ & * ., ,\"A$
351p ZfBGI HI ZcDA EA
 ZcD\ E\ ZcDh Eh Zd"E	 F	 ZcD	 E	 Ze3G. H.b Ze3G; H;| ZkM2 N2j ZfCHh IhV ZhcJ2" K2"j Zd"E F. Zd"E' F'B Zd"E. F.. ^+SQB RBJ ^#SIR JR,^ <'r   