HEX
Server: Apache
System: Linux server2.voipitup.com.au 4.18.0-553.109.1.lve.el8.x86_64 #1 SMP Thu Mar 5 20:23:46 UTC 2026 x86_64
User: posscale (1027)
PHP: 8.2.30
Disabled: exec,passthru,shell_exec,system
Upload Files
File: //opt/saltstack/salt/lib/python3.10/site-packages/salt/states/__pycache__/pdbedit.cpython-310.pyc
o

�N�g�
�@sFdZddlZddlZe�e�ZdZdd�Zdd�Z	dd	�Z
d
d�ZdS)a�
Manage accounts in Samba's passdb using pdbedit

:maintainer:    Jorge Schrauwen <sjorge@blackdot.be>
:maturity:      new
:depends:       pdbedit
:platform:      posix

.. versionadded:: 2017.7.0

.. code-block:: yaml

    wash:
      pdbedit.absent

    kaylee:
      pdbedit.managed:
        - password: A70C708517B5DD0EDB67714FE25336EB
        - password_hashed: True
        - drive: 'X:'
        - homedir: '\\serenity\mechanic\profile'
�NZpdbeditcCsdtvrdSdd�t�fS)z)
    Provides pdbedit when available
    zpdbedit.createTFzG{} state module can only be loaded when the pdbedit module is available)�__salt__�format�__virtualname__�rr�G/opt/saltstack/salt/lib/python3.10/site-packages/salt/states/pdbedit.py�__virtual__"s��rcCst|iddd�}|tdd�vr0td|�}||dvr$|d�|�|S||d	vr.d|d
<|Sd|�d�|d
<|S)zK
    Ensure user account is absent

    name : string
        username
    T���name�changes�result�comment�pdbedit.listFzpdbedit.delete)Zdeletedr)�absentrzaccount z
 is absentr
)r�update)r
�ret�resrrrr1s��rcKs�|iddd�}tddd�}||vr||ni}||d<tddi|��}||dvr1||d	<|S||d
vrLtjj�|tddd�|�|d	|<|S||dvr\d|d
<|||d<|S)aw
    Manage user account

    login : string
        login name
    password : string
        password
    password_hashed : boolean
        set if password is a nt hash instead of plain text
    domain : string
        users domain
    profile : string
        profile path
    script : string
        logon script
    drive : string
        home drive
    homedir : string
        home directory
    fullname : string
        full name
    account_desc : string
        account description
    machine_sid : string
        specify the machines new primary group SID or rid
    user_sid : string
        specify the users new primary group SID or rid
    account_control : string
        specify user account control properties

        .. note::
            Only the following can be set:
            - N: No password required
            - D: Account disabled
            - H: Home directory required
            - L: Automatic Locking
            - X: Password does not expire
    reset_login_hours : boolean
        reset the users allowed logon hours
    reset_bad_password_count : boolean
        reset the stored bad login counter
    Trr	r)ZhashesZloginzpdbedit.modify)�createdr)�updated)Z	unchangedFrr
Nr)r�salt�utils�dataZ
compare_dicts)r
�kwargsrZsavedrrrr�managedGs$+
���rcKst|fi|��S)z#
    Alias for pdbedit.managed
    )r)r
rrrr�present�sr)�__doc__�loggingZsalt.utils.datar�	getLogger�__name__�logrrrrrrrrr�<module>s
D