
    x[hw	                         S SK r S SKrS SKJrJr  \ R
                  " \5      r " S S\R                  R                  R                  5      rg)    N)subputilc                   r    \ rS rSrSrS/r/ SQrSS jrS rS r	\
SS	.S
\S\4S jj5       rS rS rS rSrg)Distro   z/etc/mynamercctl)z^{username}::z^{username}:\*:z'^{username}:\*\*\*\*\*\*\*\*\*\*\*\*\*:Nc                 B    [         R                  " U R                  5      $ N)r   load_text_filehostname_conf_fn)selffilenamedefaults      ;/usr/lib/python3/dist-packages/cloudinit/distros/openbsd.py_read_hostnameDistro._read_hostname   s    ""4#8#899    c                 P    US-   n[         R                  " U R                  U5        g )N
)r   
write_filer   )r   hostnamer   contents       r   _write_hostnameDistro._write_hostname   s    T/--w7r   c                     SSX!/$ )Nusermodz-G )r   member_name
group_names      r   _get_add_member_to_group_cmd#Distro._get_add_member_to_group_cmd"   s    499r   )rcsactionservicec          	          U R                   nSU/SU/SU/SU/SU/SU/SU/SU/S.n[        U5      [        Xa   5      -   n[        R                  " USUS	9$ )
zl
Perform the requested action on a service. This handles OpenBSD's
'rcctl'.
May raise ProcessExecutionError
stopstartenabledisablerestartcheck)r&   r'   r(   r)   r*   reloadz
try-reloadstatusT)capturer"   )init_cmdlistr   )clsr#   r$   r"   
extra_argsr/   cmdscmds           r   manage_serviceDistro.manage_service%   s~     <<W%w')!7+!7+ '*$g.(	
 8ntDL11yyd44r   c                      [         R                   " SSSU/5        g ! [         a    [        R                  " [        SU5        e f = f)Nr   z-p*zFailed to lock user %s)r   	Exceptionr   logexcLOGr   names     r   lock_passwdDistro.lock_passwd:   s?    	IIy$T23 	KK5t<	s	    (Ac                 0    [         R                  SU5        g )NzDOpenBSD password lock is not reversible, ignoring unlock for user %s)r;   debugr<   s     r   unlock_passwdDistro.unlock_passwdA   s    		*	
r   c                     0 $ )z:Return env vars used in OpenBSD package_command operationsr   )r   s    r   _get_pkg_cmd_environDistro._get_pkg_cmd_environH   s    	r   r   r
   )__name__
__module____qualname____firstlineno__r   r/   #shadow_empty_locked_passwd_patternsr   r   r    classmethodstrr5   r>   rB   rE   __static_attributes__r   r   r   r   r      sZ    $yH+':8: HL 5C 5# 5 5(
r   r   )loggingcloudinit.distros.netbsd	cloudinitr   r   	getLoggerrG   r;   distrosnetbsdNetBSDr   r   r   r   <module>rV      s>   
    !=Y%%,, =r   