PNG  IHDR;IDATxܻn0K )(pA 7LeG{ §㻢|ذaÆ 6lذaÆ 6lذaÆ 6lom$^yذag5bÆ 6lذaÆ 6lذa{ 6lذaÆ `}HFkm,mӪôô! x|'ܢ˟;E:9&ᶒ}{v]n&6 h_tڠ͵-ҫZ;Z$.Pkž)!o>}leQfJTu іچ\X=8Rن4`Vwl>nG^is"ms$ui?wbs[m6K4O.4%/bC%t Mז -lG6mrz2s%9s@-k9=)kB5\+͂Zsٲ Rn~GRC wIcIn7jJhۛNCS|j08yiHKֶۛkɈ+;SzL/F*\Ԕ#"5m2[S=gnaPeғL lذaÆ 6l^ḵaÆ 6lذaÆ 6lذa; _ذaÆ 6lذaÆ 6lذaÆ RIENDB`  $^c@@sdZddlmZddlZddlmZddlmZddlm Z ej e Z de fdYZeZdS( sQ This module contains default platform-specific implementations of system tasks. i(tabsolute_importN(t parse_version(tpaths(tipautiltBaseTaskNamespacecB@seZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZddZedZdZdZdZdZdZdZdZRS(cC@s tdS(sl Restore SELinux security context on the given filepath. No return value expected. N(tNotImplementedError(tselftfilepath((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytrestore_context'scC@s tdS(s Backs up the current hostname in the statestore (so that it can be restored by the restore_hostname platform task). No return value expected. N(R(Rtfstoret statestore((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytbackup_hostname0scC@s tdS(su Reloads the systemwide CA store. Returns True if the operation succeeded, False otherwise. N(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytreload_systemwide_ca_store:scC@s tdS(s Adds CA certificates from 'ca_certs' to the systemwide CA store (if available on the platform). Returns True if the operation succeeded, False otherwise. N(R(Rtca_certs((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt(insert_ca_certs_into_systemwide_ca_storeCscC@s tdS(s Removes IPA CA certificates from the systemwide CA store (if available on the platform). Returns True if the operation succeeded, False otherwise. N(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt(remove_ca_certs_from_systemwide_ca_storeMscC@stjS(s@ Returns the path to the IPA service list file. (Rt SVC_LIST_FILE(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytget_svc_list_fileWscC@stS(smCheck if SELinux is available and enabled :return: True if SELinux is available and enabled (tFalse(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytis_selinux_enabled^scC@s tdS(sChecks if SELinux is available on the platform. If it is, this task also makes sure that restorecon tool is available. If SELinux is available, but restorcon tool is not installed, raises an RuntimeError, which suggest installing the package containing restorecon and rerunning the installation. :return: True if SELinux is available and enabled N(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytcheck_selinux_statuses cC@s tdS(s*Check whether IPv6 kernel module is loadedN(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytcheck_ipv6_stack_enabledrscC@s tdS(ssCheck if running inside a container :returns: container runtime or None :rtype: str, None N(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytdetect_containerwscC@s tdS(sk Restores the original hostname as backed up in the backup_hostname platform task. N(R(RR R ((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytrestore_hostnamescC@s tdS(s Restores the pre-ipa-client configuration that was modified by the following platform tasks: modify_nsswitch_pam_stack modify_pam_to_use_krb5 N(R(RR R twas_sssd_installedtwas_sssd_configured((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt$restore_pre_ipa_client_configurations cC@s tdS(s: Sets the NIS domain name to 'nisdomain'. N(R(Rt nisdomain((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt set_nisdomainscC@s tdS(s If sssd flag is true, configure pam and nsswtich so that SSSD is used for retrieving user information and authentication. Otherwise, configure pam and nsswitch to leverage pure LDAP. N(R(Rtsssdt mkhomedirR ((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytmodify_nsswitch_pam_stackscC@s tdS(sG Configure pam stack to allow kerberos authentication. N(R(RR ((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytmodify_pam_to_use_krb5scC@s tdS(s Create backup of access control configuration. :param path: store the backup here. This will be passed to restore_auth_configuration as well. N(R(Rtpath((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytbackup_auth_configurationscC@s tdS(st Restore backup of access control configuration. :param path: restore the backup from here. N(R(RR!((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytrestore_auth_configurationscC@s tdS(stSet the specified SELinux booleans :param required_settings: A dictionary mapping the boolean names to desired_values. The desired value can be 'on' or 'off', or None to leave the setting unchanged. :param backup_func: A function called for each boolean with two arguments: the name and the previous value If SELinux is disabled, return False; on success returns True. If setting the booleans fails, an ipapython.errors.SetseboolError is raised. N(R(Rtrequired_settingst backup_func((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytset_selinux_booleansscC@s t|S(s :param version: textual version :return: object implementing proper __cmp__ method for version compare (R(tversion((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytparse_ipa_versionscC@s tdS(s} Set hostname for the system No return value expected, raise CalledProcessError when error occurred N(R(Rthostname((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt set_hostnamescC@s tdS(s(Configure httpd service to work with IPAN(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyt configure_httpd_service_ipa_confscC@s tdS(N(R(Rtipauser((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytconfigure_http_gssproxy_confscC@s tdS(s,Remove configuration of httpd service of IPAN(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytremove_httpd_service_ipa_confscC@s tdS(s)Configure WSGI for correct Python versionN(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytconfigure_httpd_wsgi_confscC@stS(N(R(R((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytis_fips_enabledscC@svtjd||tjdd||g}ytj|tjdWn&tjk rq}tjd|nXdS(NsAdding user %s to group %ss-as-GsDone adding user to groupsFailed to add user to group: %s(tloggertdebugRtUSERMODRtruntCalledProcessError(Rtusertgrouptargste((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pytadd_user_to_groups N(t__name__t __module__RR R RRRRRRRRRRRR R"R#tNoneR&t staticmethodR(R*R+R-R.R/R0R:(((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyR%s4                (t__doc__t __future__Rtloggingt pkg_resourcesRtipaplatform.pathsRt ipapythonRt getLoggerR;R1tobjectRttasks(((s:/usr/lib/python2.7/site-packages/ipaplatform/base/tasks.pyts