Sindbad~EG File Manager

Current Path : /lib/python3.6/site-packages/mockbuild/plugins/__pycache__/
Upload File :
Current File : //lib/python3.6/site-packages/mockbuild/plugins/__pycache__/pesign.cpython-36.pyc

3

�,d��@sbdZddlmZmZddlZdZe�dd��Zdd�Zd	d
�Z	dd�Z
d
d�ZGdd�de�Z
dS)zQ
mock plugin to make sure pesign and mockbuild users have the right uid and
gid.
�)�getLog�traceLogNz1.1cCst|||�dS)z hello N)�Pesign)�plugins�conf�	buildroot�r�/usr/lib/python3.6/pesign.py�initsr
cCs8tjjddd|fgddd�}|jd�}|d|d	fS)
z get a uid for a user name �getentZpasswdz%s�T)�returnOutput�printOutput�:��)�	mockbuild�util�do�split)�name�outputrrr	�getuids

rcCs,tjjddd|fgddd�}|jd�dS)	z get a gid for a group name r�groupz%srT)r
rrr)rrrr)rrrrr	�getgids
rcCsBt�jd||f�tjjddd|fdd|fd|fg�dS)z create a group with a gid zcreating group %s with gid %sZgroupaddz-gz%sz-RN)r�inforrr)r�gid�rootdirrrr	�newgroup#s


rc
CsLt�jd||f�tjjddd|fdd|fdd|fd|fg�dS)z create a user with a uid zcreating user %s with uid %sZuseraddz-uz%sz-gz-RN)rrrrr)r�uidrrrrr	�newuser,s


r c@s,eZdZdZe�dd��Ze�dd��ZdS)rz% Creates some stuff in our mock root cCs:||_||_|j|_|j|_i|_i|_|jd|j�dS)a# Effectively we're doing:
            getent group pesign >/dev/null || groupadd -r pesign
            getent passwd pesign >/dev/null ||                     useradd -r -g pesign -d /var/run/pesign -s /sbin/nologin                     -c "Group for the pesign signing daemon" pesign
        ZpostinitN)r�pesign_opts�config�state�users�groupsZadd_hook�_pesignPostInitHook)�selfrrrrrr	�__init__8s	zPesign.__init__cCs�x.|jdD] }t|�\}}|||g|j|<qWx(|jdD]}t|�}||g|j|<q<W|jj�}x"|jj�D]\}}t|||�qpWx&|jj�D]\}}}t	||||�q�WdS)z find our uid and gid lists r$r%N)
r!rr$rr%rZmake_chroot_path�valuesrr )r'�userrrrrrrrr	r&Is
zPesign._pesignPostInitHookN)�__name__�
__module__�__qualname__�__doc__rr(r&rrrr	r5sr)r.Zmockbuild.trace_decoratorrrZmockbuild.utilrZrequires_api_versionr
rrrr �objectrrrrr	�<module>
s		

Sindbad File Manager Version 1.0, Coded By Sindbad EG ~ The Terrorists