
­­­­­­­­­­­­­­­­­­
<!DOCTYPE html>
<html>
3
[*e6                 @   s6   d dl Z d dlZejZG dd dZG dd dZdS )    Nc               @   st   e Zd Zdd Zdd Zdd Zdd Zed	d
 Zedd Z	edd Z
edd Zedd Zedd ZdS )Optionc             C   s.   || _ || _|| _|| _|| _d | _d| _d S )NF)namemetavarhelpfeature	supportedvaluefrom_sysconfig)selfr   r   r   r   r    r   (/usr/lib/python3.6/authcompat_Options.py__init__   s    zOption.__init__c             C   s
   || _ d S )N)r   )r
   	new_valuer   r   r   set&   s    z
Option.setc             C   s   | j | d| _d S )NT)r   r	   )r
   r   r   r   r   set_from_sysconfig)   s    
zOption.set_from_sysconfigc             C   s
   | j d k	S )N)r   )r
   r   r   r   isset-   s    zOption.issetc             C   s   t | ||dddS )NFT)r   r   )r   )r   r   r   r   r   r   Valued0   s    zOption.Valuedc             C   s   t | d |dddS )NFT)r   r   )r   )r   r   r   r   r   Switch4   s    zOption.Switchc             C   s   t | d |dddS )NT)r   r   )r   )r   r   r   r   r   Feature8   s    zOption.Featurec             C   s   t | |d dddS )NF)r   r   )r   )r   r   r   r   r   UnsupportedValued<   s    zOption.UnsupportedValuedc             C   s   t | d d dddS )NTF)r   r   )r   )r   r   r   r   UnsupportedFeature@   s    zOption.UnsupportedFeaturec             C   s   t | d d dddS )NF)r   r   )r   )r   r   r   r   UnsupportedSwitchD   s    zOption.UnsupportedSwitchN)__name__
__module____qualname__r   r   r   r   staticmethodr   r   r   r   r   r   r   r   r   r   r      s   	r   c            M   @   s  e Zd Zejdedejdededejdededejd	ed
ejdedejdededejdededejdedejdedejdedejdedejdededejdedejded ejd!ed"ejd#eded$ejd%eded&ejd'ed(ed)ejd*ed+ejd,ed-ejd.ed/ejd0ed1ejd2ed3ed4ejd5ed6ejd7ed8ed9ejd:ed;ejd<ed=ejd>ed?ejd@edAejdBedCejdDedEejdFedGedHejdIedGedJejdKedGedLejdMedGedNejdOedPejdQedRejdSedTejdUedVejdWedXejdYedZejd[ed\ejd]ed\ejd^ej	ej
d_ej
d`ejdaedbejdcedbej
ddejdeejdfejdgej
dhejdiej
djejdkedlejdmednejdoedpejdqedrejdsed(ejdteduejdvedwejdxedwejdyedwejdzed{ejd|ed}ejd~edejdejdejdejdejdejdejdedgJZdDdd	ddfd.d5d:d!dddddkdidgd0d<dd@dBddd>dZdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd Zdd ZdS )OptionsZnisz#NIS for user information by defaultZ	nisdomainz<domain>zdefault NIS domainZ	nisserverz<server>zdefault NIS serverZldapz$LDAP for user information by defaultZldapauthz"LDAP for authentication by defaultZ
ldapserverz#default LDAP server hostname or URIZ
ldapbasednz<dn>zdefault LDAP base DNldaptlszuse of TLS with LDAP (RFC-2830)ldapstarttlsz4use of TLS for identity lookups with LDAP (RFC-2830)Z
rfc2307bisz;use of RFC-2307bis schema for LDAP user information lookupsZ	smartcardz)authentication with smart card by defaultZsmartcardactionz<0=Lock|1=Ignore>z(action to be taken on smart card removalZrequiresmartcardz0require smart card for authentication by defaultZfingerprintz2authentication with fingerprint readers by defaultZkrb5z"Kerberos authentication by defaultZkrb5kdczdefault Kerberos KDCZkrb5adminserverzdefault Kerberos admin serverZ	krb5realmz<realm>zdefault Kerberos realmZ
krb5kdcdnsz use of DNS to find Kerberos KDCsZkrb5realmdnsz"use of DNS to find Kerberos realmsZwinbindz'winbind for user information by defaultZwinbindauthz%winbind for authentication by defaultZwinbindjoinz<Administrator>z>join the winbind domain or ads realm now as this administratorZwinbindkrb5z(Kerberos 5 for authenticate with winbindZsmbworkgroupz<workgroup>z'workgroup authentication servers are inZsssdzHSSSD for user information by default with manually managed configurationZsssdauthzFSSSD for authentication by default with manually managed configurationZ
cachecredsz.caching of user credentials in SSSD by defaultZ	pamaccessz1check of access.conf during account authorizationZ	mkhomedirz;creation of home directories for users on their first loginZfaillockzGaccount locking in case of too many consecutive authentication failuresZ
passminlenz<number>zminimum length of a passwordZpassminclassz1minimum number of character classes in a passwordZpassmaxrepeatz;maximum number of same consecutive characters in a passwordZpassmaxclassrepeatzDmaximum number of consecutive characters of same class in a passwordZreqlowerz6require at least one lowercase character in a passwordZrequpperz6require at least one uppercase character in a passwordZreqdigitz(require at least one digit in a passwordZreqotherz2require at least one other character in a passwordZnostartzdo not start/stop servicesZ	updateallzupdate all configuration filesupdatezthe same as --updateallZ	kickstartz	test-callZtestZprobeZ
savebackupz<name>ZrestorebackupZrestorelastbackupcacheZecryptfsshadow	useshadowmd5usemd5Zpassalgoz%<descrypt|bigcrypt|md5|sha256|sha512>Zldaploadcacertz<URL>Zsmartcardmodulez<module>Zsmbsecurityz<user|server|domain|ads>ZsmbrealmZ
smbserversz	<servers>Zsmbidmaprangez<lowest-highest>ZsmbidmapuidZsmbidmapgidZwinbindseparatorz<\>Zwinbindtemplatehomedirz</home/%D/%U>Zwinbindtemplateshellz</bin/false>ZwinbindusedefaultdomainZwinbindofflineZ	preferdnsZforcelegacyZlocauthorizeZ
sysnetauthZfaillockargsz	<options>)ZUSEFAILLOCKZFAILLOCKARGSZUSELDAPZUSENISZUSEECRYPTFSZ
USEWINBINDZWINBINDKRB5ZUSESSSDZUSEKERBEROSZUSELDAPAUTHZUSESMARTCARDZFORCESMARTCARDZ
USEFPRINTDZPASSWDALGORITHMZUSEMD5Z	USESHADOWZUSEWINBINDAUTHZUSESSSDAUTHZUSELOCAUTHORIZEZUSEPAMACCESSZUSEMKHOMEDIRZUSESYSNETAUTHZFORCELEGACYZCACHECREDENTIALSc             C   s&   i | _ x| jD ]}|| j |j< qW d S )N)optionsListr   )r
   optionr   r   r   r      s    zOptions.__init__c             C   s
  t jdd}|jtd|jtdd}x,| jD ]"}|jr@dnd}| j|| | q2W |j }x*| jj	 D ]\}}t
||}|j| qlW | jd r| jd	r| jd| jd	 | jd
 r| jdr| jd
| jd | jdo| jd r| jd| jd d S )NzAuthconfig Compatibility Tool.)descriptionz(These options have a compatibility layerz8These options are no longer supported and have no effect)r   unsupportedr   r)   r#   r$   r!   r"   r   r   )argparseArgumentParserZadd_argument_group_r&   r   
add_option
parse_argsr%   itemsgetattrr   r   get)r
   parserZparsersr'   groupZcmdliner   r   r   r   r   parse   s     
zOptions.parsec             C   s<   x6| j j D ](\}}| j|s| j| j|j| qW d S )N)Mapr/   r   r%   r   r1   )r
   	sysconfigr   r'   r   r   r   applysysconfig   s    
zOptions.applysysconfigc             C   s8   x2| j j D ]$\}}| j|r|j|| j| qW d S )N)r5   r/   r   r   r1   )r
   r6   r   r'   r   r   r   updatesysconfig   s    
zOptions.updatesysconfigc             C   s   | j | jS )N)r%   r   )r
   r   r   r   r   r1      s    zOptions.getc             C   s   | j | j| d S )N)r%   r   )r
   r   r   r   r   r   r      s    zOptions.setc             C   s   | j | j S )N)r%   r   )r
   r   r   r   r   r      s    zOptions.issetc             C   s    | j |}|d ks| rdS dS )NFT)r1   )r
   r   r   r   r   r   getBool   s    
zOptions.getBoolc             C   s    | j |}|d ks| rd S dS )NT)r1   )r
   r   r   r   r   r   getTrueOrNone  s    
zOptions.getTrueOrNonec             C   s^   g }xTt jD ]J}|jrq|j s"q|jr*q|j}|jrL|jrDd| nd| }|j| qW |S )Nenabledisable)	r   r&   r   r   r	   r   r   r   append)r
   r%   r'   r   r   r   r   getSetButUnsupported
  s    zOptions.getSetButUnsupportedc             C   s<   |j d k	r| j|| n |jr,| j|| n| j|| d S )N)r   
add_valuedr   add_feature
add_switch)r
   r2   r'   r   r   r   r-     s
    
zOptions.add_optionc             C   s$   |j d|j d|j|j|jd d S )Nz--Zstore)actionr   destr   )add_argumentr   r   r   )r
   r2   r'   r   r   r   r?   &  s
    zOptions.add_valuedc             C   s"   |j d|j dd|j|jd d S )Nz--store_constT)rB   constr   rC   )rD   r   r   )r
   r2   r'   r   r   r   rA   -  s
    zOptions.add_switchc             C   sr   d }d }|j d k	r6tdd |j  }tdd |j  }|jd|j dd||jd |jd|j dd	||jd d S )
Nr;    r<   z--enablerE   T)rB   rF   r   rC   z	--disableF)r   r,   rD   r   )r
   r2   r'   Zhelp_enableZhelp_disabler   r   r   r@   4  s    

zOptions.add_featureN)r   r   r   r   r   r,   r   r   r*   ZSUPPRESSr   r   r   r&   r5   r   r4   r7   r8   r1   r   r   r9   r:   r>   r-   r?   rA   r@   r   r   r   r   r   I   s   	r   )r*   gettextr,   r   r   r   r   r   r   <module>   s   -