x[hw ddlZddlZddlmZmZej eZGddejjjZ y)N)subputilcdeZdZdZdgZgdZddZdZdZe ddd e d e fd Z d Z d Z dZy)Distroz /etc/mynamercctl)z ^{username}::z^{username}:\*:z'^{username}:\*\*\*\*\*\*\*\*\*\*\*\*\*:Nc@tj|jSN)rload_text_filehostname_conf_fn)selffilenamedefaults ;/usr/lib/python3/dist-packages/cloudinit/distros/openbsd.py_read_hostnamezDistro._read_hostnames""4#8#899cN|dz}tj|j|y)N )r write_filer )r hostnamer contents r_write_hostnamezDistro._write_hostnamesT/ --w7rcdd||gS)Nusermodz-G)r member_name group_names r_get_add_member_to_group_cmdz#Distro._get_add_member_to_group_cmd"s4[99r)rcsactionservicec |j}d|gd|gd|gd|gd|gd|gd|gd|gd}t|t||z}tj|d| S) z Perform the requested action on a service. This handles OpenBSD's 'rcctl'. May raise ProcessExecutionError stopstartenabledisablerestartcheck)r"r#r$r%r&reloadz try-reloadstatusT)capturer)init_cmdlistr)clsrr r extra_argsr+cmdscmds rmanage_servicezDistro.manage_service%s<<W%w')!7+!7+ '*$g.(  8ntDL11yyd44rc tjddd|gy#t$rtjtd|wxYw)Nrz-p*zFailed to lock user %s)r ExceptionrlogexcLOGr names r lock_passwdzDistro.lock_passwd:s?  IIy$T2 3  KK5t <  s &Ac0tjd|y)NzDOpenBSD password lock is not reversible, ignoring unlock for user %s)r6debugr7s r unlock_passwdzDistro.unlock_passwdAs  *  rciS)z:Return env vars used in OpenBSD package_command operationsr)r s r_get_pkg_cmd_environzDistro._get_pkg_cmd_environHs rr )__name__ __module__ __qualname__r r+#shadow_empty_locked_passwd_patternsrrr classmethodstrr1r9r<r>rrrrr sZ$yH +' :8:HL5C5#55( rr) loggingcloudinit.distros.netbsd cloudinitrr getLoggerr?r6distrosnetbsdNetBSDrrrrrLs@  g!=Y   % % , ,=r