/usr/lib/python3.6/site-packages/dnf/rpm/__pycache__
Edit: /usr/lib/python3.6/site-packages/dnf/rpm/__pycache__/miscutils.cpython-36.pyc (2466B)
3
g @ sv d dl mZmZmZ d dlZd dlZd dlZd dlmZ d dl m
Z
ejdZda
dd Zdd Zd
d Zdd
ZdS ) )print_functionabsolute_importunicode_literalsN)which)_Zdnfc C s$ t d kr tda tjtdt t S )Nrpmkeysz3Using rpmkeys executable at %s to verify signatures)_rpmkeys_binaryr _loggerdebugr r r /usr/lib/python3.6/miscutils.py_find_rpmkeys_binary s
r
c C s t | dk s | d dks | d r$dS d\}}}}x^| dd D ]N}d|krNdS |jdr^d }q>|jd
rnd }q>|jdr~d }q>|jds>dS q>W |rdS |rdS |rd
S dS )N r s -: Fs : BADs : NOKEYTs : NOTTRUSTEDs
: NOTFOUNDs : OK )FFFFr )lenendswith)dataZseen_sigZmissing_keyZnot_trustedZ
not_signedir r r _process_rpm_output$ s*
r c
C s t }|d kstjj| r.tjtd dS ddd|dddd f}tj||d
ditj d| d
}|j
d }W d Q R X |j}t|t
k rtd|dks|dk rdS t|jd}|r|S |rdS dS )Nz4Cannot find rpmkeys executable to verify signatures.r r z
--checksigz--rootz --verbosez#--define=_pkgverify_level signaturez--define=_pkgverify_flags 0x0-LC_ALLC/)args
executableenvstdoutcwdstdinr z Popen set return code to non-int
)r
ospathisfiler Zcriticalr
subprocessPopenPIPEZcommunicate
returncodetypeintAssertionErrorr split)packageZinstallrootZrpmkeys_binaryr pr r) retr r r _verifyPackageUsingRpmkeys? s0
r1 c C s> t j|t jt jB t jB }zt|| jj}W dt j| X |S )a
Takes a transaction set and a package, check it's sigs,
return 0 if they are all fine
return 1 if the gpg key can't be found
return 2 if the header is in someway damaged
return 3 if the key is not trusted
return 4 if the pkg is not gpg or pgp signedN) r# openO_RDONLYO_NOCTTY O_CLOEXECr1 tsZrootDirclose)r6 r. Zfdnovaluer r r checkSig^ s
r9 )Z
__future__r r r r# r&