Prv8 Shell
Server : Apache/2.2.22 (Unix) mod_ssl/2.2.22 OpenSSL/1.0.0-fips mod_auth_passthrough/2.1 mod_bwlimited/1.4
System : Linux server.jackjohnson.com 2.6.32-279.5.2.el6.x86_64 #1 SMP Fri Aug 24 01:07:11 UTC 2012 x86_64
User : jackjohn ( 502)
PHP Version : 5.3.17
Disable Function : NONE
Directory :  /usr/lib/yum-plugins/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //usr/lib/yum-plugins/security.pyo
cOc@sddkZddkZddklZddklZddkZddkTddkZ	dZ
efZdZddd	d
dfZ
dZd
eiifdYZdZdZdZdZdZdZdZdZdfdYZdZdZdZdZdZdZ dfd YZ!d!Z"d"Z#d#Z$d$Z%d%Z&d&Z'e(d'jo	d(GHndS()iN(tTYPE_INTERACTIVE(tUpdateMetadata(t*s2.5syum-plugin-securitytsecuritytbugfixtenhancementtrecommendedt
newpackagecCs=tii|d|d|df|d|d|dfS(s- Compare two "std." tuples, (n, a, e, v, r). iii(trpmUtilst	miscutilst
compareEVR(ttup1ttup2((s /usr/lib/yum-plugins/security.pyt_rpm_tup_vercmp=s!tCliErrorcBseZdZddZRS(s3
    Command line interface related Exception.
    tcCs tiii|||_dS(N(tyumtErrorstYumBaseErrort__init__targs(tselfR((s /usr/lib/yum-plugins/security.pyRHs(t__name__t
__module__t__doc__R(((s /usr/lib/yum-plugins/security.pyRBscCs_t}xO|D]G}|ipqny|i|Wqtiij
o
qqXqW|S(s3 Generate the info. from the updateinfo.xml files. (RtenabledtaddRRtRepoMDError(trepostmd_infotrepo((s /usr/lib/yum-plugins/security.pytysp_gen_metadataLs	
cCs|djogS|S(sj Sometimes refs == None, if so return the empty list here. 
        So we don't have to check everywhere. N(tNone(trefs((s /usr/lib/yum-plugins/security.pytysp__safe_refsYs
cCsCx<|D]4}ti||o|S|d|jo|SqWdS(Nt	update_id(tfnmatchR (tsec_cmdstpkgnametnoticeti((s /usr/lib/yum-plugins/security.pyt_match_sec_cmd`s	cCs^xWt|D]I}|d|joq
n|d|joq
nt|||d<|SWdS(s# Check if the given ID is a match. ttypetidN(R"tTrueR (tused_mapR!tref_typetref_idstref((s /usr/lib/yum-plugins/security.pyt_has_idhs
cCst|i||}|ot|d|<tS|io+|d|ijot|d|d<tS|io<|ddjo+|d|ijot|d|d<tS|io"t||dd	|iotS|io"t||dd
|iotS|io:|ddjo)|ipd|jp|dotS|i	o|ddjotS|ip9|ip/|ip%|ip|i	p|ip|iptSt
S(s; Do the package filtering for should_show and should_keep. tcmdR#R+R*Rtseveritytsevt
referencestcvetbugzillaR(R)R%R,tadvisoryR3R6R1tbzRtbugfixestFalse(toptsR&R'R-trcmd((s /usr/lib/yum-plugins/security.pytysp_should_filter_pkgss2''(cCs_|tjo|d|jo|Snx1t|dD]}|d|joq8n|SWdS(NR*R5(t__update_info_types__R"(trnametmdR0((s /usr/lib/yum-plugins/security.pytysp_has_info_mds
	cCshhd6hd6hd6hd6hd6}x|iD]}t|d|<q3Wx|iD]}t|d|<qUWx|iD]}t|d|<qwWx|iD]}t|d|<qWx|iD]}t|d|<qW|S(NR7R6R+R2R4(R%R;R8R9R6R3(R<R-R(((s /usr/lib/yum-plugins/security.pytysp_gen_used_maps")




cCsx3|dD]'}|d|p|d|qqWx3|dD]'}|d|p|d|qAqAWx3|dD]'}|d|p|d|qwqwWx3|dD]'}|d|p|d|qqWx3|d	D]'}|d	|p|d
|qqWdS(NR2s$No update information found for "%s"R+s2Advisory "%s" not found applicable for this systemR7s,BZ "%s" not found applicable for this systemR6s-CVE "%s" not found applicable for this systemR4s2Severity "%s" not found applicable for this system((R-tmsgR(((s /usr/lib/yum-plugins/security.pytysp_chk_used_maps(tUpdateinfoCommandcBs eZhdd6dd6dd6dd6dd6dd6dd	6Zd
ZdZdZd
ZdZdZdZ	dZ
hdd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6dd6ZxeD]Z
e
ee
<qWdZd Zd!Zd"ZRS(#tlistslist-updateinfos
list-securityslist-sectinfosinfo-updateinfos
info-securitysinfo-sectsummaryssummary-updateinfocCsdgt|iiS(Nt
updateinfo(tsortedtdirect_cmdstkeys(R((s /usr/lib/yum-plugins/security.pytgetNamesscCsdS(NsB[info|list|...] [security|...] [installed|available|all] [pkgs|id]((R((s /usr/lib/yum-plugins/security.pytgetUsagescCsdS(Ns%Acts on repository update information((R((s /usr/lib/yum-plugins/security.pyt
getSummaryscCsdS(N((Rtbasetbasecmdtextcmds((s /usr/lib/yum-plugins/security.pytdoCheckscCsVd}d}	d}
x|D]\}}}
tt|d|}|d}|djo|do|dd}ntt||
}
|oVxSt|dD]=}|d|joqnttt|d|	}	qWqqWxd|D]\\}}}
d	}|d
jo2d}t||d|djo
d}qFn|d}|djo|do|dd}n|oqt||oaxt|dD]H}|d|joqn|d
||	t|d|
||
fqWqt|
do(|id|
i|i	|
i
GHq|d|||d|
||
fqWdS(NiR#R*RR3s/Sec.R5R+Rtalls  si s%s %-*s %-*s %stnames%s: s%s%-*s %-*s %s(tmaxtlenR"tstrR
RBthasattrt
fmtKeyValFillRVt_encRI(RRQRt	list_typet	show_typet	iname2tuptdataRDt	n_maxsizet	r_maxsizet	t_maxsizeR'tpkgtuptpkgttnR0tmark((s /usr/lib/yum-plugins/security.pytlist_show_pkgssL
+

cCsh}x|D]\}	}
}|	d|joq
n|	||	d<t|	doQtii}tid}
|
i|o|	idg}q|	i}n
|	i}|djo:t	||
d|
djo|d}q|d}n||q
WdS(	NR#ttextsyum.verbose.maint	skip_dataRUis
  Installed : trues
  Installed : false(
RZRt
logginglevelstDEBUG_3tloggingt	getLoggertisEnabledForRit__str__R
(RRQRR]R^R_R`RDtshow_pkg_info_doneR'RdRet
debug_log_lvltvlogtobj((s /usr/lib/yum-plugins/security.pytinfo_show_pkgss$
cCsd}h}	h}
h}x|D]\}}
}|d|joq"n|||d<|	i|ddd|	|d<|ddjo?|d}|djo
d}n|
i|dd|
|<q"q"Wd}xOdD]G}||	joqntt|	|}||jo
|}qqW|pt|||dShdd	6d
d6dd
6dd6}dG|GHxdD]}||	joqsn||}|djoFt|
djo3|
id}|djo|d|}qnd||	||fGH|djoXt|
djoExBt|
D]0}||
||pd|df}d|GHq-WqsqsWt|||h|_dS(NcSs	|GHdS(N((tx((s /usr/lib/yum-plugins/security.pyt_msgsR#R*iiRR3RRRRsNew PackagetSecuritytBugfixtEnhancementsUpdates Information Summary:t s    %*u %s notice(s)t?s        %*u %s %s notice(s)(RssecuritysbugfixR(RssecuritysbugfixR(tgetR RXRYt_check_running_kernelRMRKRq(RRQRR]R^R_R`RDRwtcountst
sev_countsRqR'RdReR4tmaxsizetTtsizetoutTtntsnR((s /usr/lib/yum-plugins/security.pytsummary_show_pkgss`	"


"



	

 
 
!c	csx|iD]}|ddjoq
nxb|dD]V}xM|dD]A}|d|d|dpd|d	|d
f}||fVqDWq3Wq
WdS(NR*RtpkglisttpackagesRVtarchtepocht0tversiontrelease(tnotices(RRR'tupkgReRd((s /usr/lib/yum-plugins/security.pyt
_get_new_pkgsGs
R7t	bugzillastbzsR9RtsecR6tcvesRtnewpackagessnew-packagessnew-packagetnewcCs||ijo|i|}nm|o)|dd	jo|d}|d}n=|o|d|ijo
d}n|o
d}nd}|djo|i|d||iS|djo|i|d||iS|djo|i|d||iSdS(
NiRGRHRIisupdateinfo listsupdateinfo infosupdateinfo summary(slistsinfossummary(RLt	_cmd2filttdoCommand_liRhRuR(RRQRRRSt
subcommand((s /usr/lib/yum-plugins/security.pyt	doCommandcs&





c
Cst}g}xht|i|ddD]H\}	}
|ot||
d|	oq.n|
d}||joq.nttt|ii|g}|djo|o|i|q.n|djo|o|i|q.n|i	i
|
}
|
pq.n|djo,|
di|do|i|q.n|i||i|	|
|
dfq.W||||dh||dS(NtkeycSs|ddS(ii((Rv((s /usr/lib/yum-plugins/security.pyt<lambda>sit	installedtupdatest	available(Rsupdates(tsetRKRR)RGtreversedtrpmdbtsearchNamesRtpkgSacktsearchPkgTupletverLEtappendR (RRQR]RSRRDt	show_pkgst	done_pkgsR`R'RdRtipkgstpkgs((s /usr/lib/yum-plugins/security.pytdoCommand_li_new{s4	


'

%

cCsd}d}t|djo\d}|d|ijo|i|id}n|}|o|tjo
d}q{n|||fS(Nii(R RXRtpopR?(RRSt	filt_typeR^((s /usr/lib/yum-plugins/security.pyt_parse_extcmdsscsh|i|_t|iitid}d}|ii\}|i|\}}d|o$|ddjo|idndjo.|i	||||d|d	gfS|_
thtonddjot
|}	t|n;djot|}	ndjot|}	nfd
}
g}xt|	D]}x|
|	|D]\}
}h}|
\|d<|d<|d
<|d<|d<|d
djod|d<nd|d
|d<|i||
d|fqWqW|||||t|d|dgfS(Nsyum.verbose.maincSs	|GHdS(N((Rv((s /usr/lib/yum-plugins/security.pyRDsRiRRRURs	 new donec3s|d}ti|}x|D]\}}ot|oq&ndjo%t||djoq&qnt||o||fVq&q&WdS(NiR(Rtget_applicable_noticesRBR
R>(RdRVRR'(R_RRR-R]R<(s /usr/lib/yum-plugins/security.pyt_show_pkgtups

RtatetvtrRRRs%s:s %(n)s-%(epoch)s%(v)s-%(r)s.%(a)ss done(supdatess	availables	installedsall(s	installedsall(RRtlistEnabledRmRntpluginstcmdlineRRRR%RCR;t_get_name2allpkgtupt_get_name2instpkgtupt_get_name2oldpkgtupRKRRE(RRQRRRSRtloggerRDRR^tname2tupRR`R&RdR'td((R_RR-RR]R<s /usr/lib/yum-plugins/security.pyRsR	
	



)
(RRRLRNRORPRTRhRuRRRR?RRRRR(((s /usr/lib/yum-plugins/security.pyRFsD

					(		2	


			
cCs1|iidjo|iidtndS(sd
    Verify that the program is being run by the root user.

    @param base: a YumBase object.
    is,You need to be root to perform this command.N(tconftuidRtcriticalR(RQ((s /usr/lib/yum-plugins/security.pytyumcommands_checkRootUIDscCso|ip^x[|iiD]F}|idjo0|idjo d}|ii|tqqWndS(NtfalseRs

You have enabled checking of packages via GPG keys. This is a good thing. 
However, you do not have any GPG public keys installed. You need to download
the keys for packages you wish to install and install them.
You can do that by running the command:
    rpm --import public.gpg.key


Alternatively you can specify the url to the key you would like to use
for a repository in the 'gpgkey' option in a repository section and yum 
will install it for you.

For more information contact your distribution or package provider.
(tgpgKeyCheckRRtgpgchecktgpgkeyRRR(RQRRD((s /usr/lib/yum-plugins/security.pytyumcommands_checkGPGKeys
 cCs_h}xR|D]J}|d|jo%t||d|djoq
n|||d<q
W|S(Ni(R
(RQtpkgtupsRRd((s /usr/lib/yum-plugins/security.pyt_get_name2pkgtupscCs(td|ii}t||S(s? Get the pkgtups for all installed pkgs. which have an update. cSs|dS(i((Rv((s /usr/lib/yum-plugins/security.pyRs(tmaptuptgetUpdatesTuplesR(RQtoupdates((s /usr/lib/yum-plugins/security.pyRscCst||iiS(s) Get the pkgtups for all installed pkgs. (RRt
simplePkgList(RQ((s /usr/lib/yum-plugins/security.pyRscCsNg}|iiD]$}||d|ddddfq~}t||S(sa Get the pkgtups for all installed pkgs. and munge that to be the
        first possible pkgtup. iiR(RRR(RQt_[1]tpttofirst((s /usr/lib/yum-plugins/security.pyRsAtSecurityUpdateCommandcBs5eZdZdZdZdZdZRS(cCsdgS(Nsupdate-minimal((R((s /usr/lib/yum-plugins/security.pyRN scCsdS(Ns[PACKAGE-wildcard]((R((s /usr/lib/yum-plugins/security.pyRO#scCsdS(NshWorks like update, but goes to the 'newest' package match which fixes a problem that affects your system((R((s /usr/lib/yum-plugins/security.pyRP&scCst|t|dS(N(RR(RRQRRRS((s /usr/lib/yum-plugins/security.pyRT)s
cCst|do|iitnt|ii}|iid}g|_	t
|}|ip/|ip%|i
p|ip|ip|i}td|ii}xt|D]}	|i|	}
|o|
inx|
D]\}}|d}
|ot||
|oqn|ot||
||oqn|id|dd|dd|dd	|d
d|dPqWqWt|idjo!d
t|i}d|gfSddgfSdS(Ntrun_with_package_namesicSs|dS(i((Rv((s /usr/lib/yum-plugins/security.pyRAsRVRiRiRiRis%%d packages marked for minimal Updates%No Packages marked for minimal Update(RZRRt__package_name__RRRRRR%RCRR:R8R9R6R3RRRRKRtreverseR)R>tupdateRXttsInfo(RRQRRRSRR<R-tndataRt	oldpkgtupR`RdR'RVRD((s /usr/lib/yum-plugins/security.pyR-s:	(

'	(RRRNRORPRTR(((s /usr/lib/yum-plugins/security.pyRs
				cCs|i}|pdSt|do
|i}n|it|itd}d}d}d}d}d}|id	d
dd|dd
dtdd|idd
dd|dddtdd|idd
dddd|dddgdd|idd
dd|dddgdddd|idd
dd|dddgdddd|id d
dd|dd!dgdddd"dS(#s
    Yum Plugin Config Hook: 
    Setup the option parser with the '--advisory', '--bz', '--cve',
    '--security' and '--severity' command line options. Also the 'updateinfo'
    and 'update-minimal' commands.
    Ntplugin_option_groupcSst|i_dS(N(R,tvaluesR(toptRtvaltparser((s /usr/lib/yum-plugins/security.pytoseciscSst|i_dS(N(R,RR:(RRRR((s /usr/lib/yum-plugins/security.pytobuglscSs |iii|iddS(Nt,(RR6textendtsplit(RRRR((s /usr/lib/yum-plugins/security.pytocvenscSs|iiit|dS(N(RR9RRY(RRRR((s /usr/lib/yum-plugins/security.pytobzpscSs |iii|iddS(NR(RR8RR(RRRR((s /usr/lib/yum-plugins/security.pytoadvrscSs |iii|iddS(NR(RR3RR(RRRR((s /usr/lib/yum-plugins/security.pytosevtss
--securitytactiontcallbacktdestRtdefaultthelps"Include security relevant packagess
--bugfixesR:s Include bugfix relevant packagess--cveR*tstringR6s,Include packages needed to fix the given CVEs--bzR9tints+Include packages needed to fix the given BZs--sec-severityR3s4Include security relevant packages, of this severitys
--advisoryR8s1Include packages needed to fix the given advisory(tgetOptParserRZRtregisterCommandRFRt
add_optionR;(tconduitRRRRRRR((s /usr/lib/yum-plugins/security.pytconfig_hookXs>
						cCsI|d}x8|i|D]'\}}t||||otSqWtS(sA Do we want to keep this package to satisfy the security limits. i(RR>R,R;(R<RdRR-RVR'((s /usr/lib/yum-plugins/security.pytysp_should_keep_pkgs
	cCs|i\}}|ip%|ip|ip|ip|i}d}t|djox|ddjo)|ddjoh|d6td6}n|dd	jo)|ddjoh|d6td6}qnt|o|dd
jo |htd6t	d6td6fS|ddjoh|d6td6}n|ddjoh|d6t	d6}n|ddjo|htd6td6fS|dt
ijo|htd6td6fSn|o||fS|p|iddn|htd6t	d6td6fS(s4 Stuff we need to do in both list and update modes. iiRGit	obsoletesRtskiptlist_cmdRHsupdate-minimalRDscheck-updateRtupgradeRJs'Skipping security plugin, other commandN(s	obsoletessupdates(s	obsoletessupdates(supdateR(
t
getCmdLineRR:R8R9R6R RXR,R;RFRLterror(RR<RRtret((s /usr/lib/yum-plugins/security.pytysp_check_func_enters2""
 c
	st\}}|dodS|dpdStdoitniddtii}fd}g|_t	|}i
idd	}|i}i
idd
}||i
7}ti
}d}	d}
xd|D]\}|	d7}	|i}||jpt|||||o||qn|
d7}
qWt|fd
|
oidd|
|	fnidd|	ti
|fddS(sk
    Yum Plugin Exclude Hook:
    Check and remove packages that don't align with the security config.
    RNRtregisterPackageNameis0Limiting package lists to security relevant onescs.idd||ifi|dS(s7 Deletes a package from all trees that yum knows about is' --> %s from %s excluded (non-security)N(RHtrepoidt
delPackage(Re(R(s /usr/lib/yum-plugins/security.pytysp_del_pkgst	pkgnarrowRRiicsid|S(i(R(Rv(R(s /usr/lib/yum-plugins/security.pyRss6%d package(s) needed for security, out of %d availables6No packages needed for security; %d packages availablecsid|S(i(RH(Rv(R(s /usr/lib/yum-plugins/security.pyRs(RRZRRRHRtgetReposRR%RCt_basetdoPackageListsRRRRVRRER~(
RR<RHRRR-tupdsRRttottcntReRV((Rs /usr/lib/yum-plugins/security.pytexclude_hooksB		

	

c
Cs+ttidpdStii|i}|ddjodSt}x|i|D]\}}|p|ddjoqYnt}|i	i
|}|pqYn|d}d}|ddjod|d}nd	|d||d
|d|df}	|d
||d|	PqYWdS(Ntget_running_kernel_pkgtupiR*RRiRs%s:s
%s-%s%s-%s.%siiis,Security: %s is an installed security updates-Security: %s is the currently running version(RZRtmiscR
ttsR R;RR,RR(
tybRRDtkern_pkgtupt	found_secRdR'tipkgRtrpkg((s /usr/lib/yum-plugins/security.pyR~s0

csLt\}}|dodS|dodStdoitniddtii}fd}d}d}g|_t	|}i
i}t}	tt
tg}
t}x2|D]*}|i|
jo|i|iqqWti}
x|D]}|i|
jo|d	7}n|ii}||
jpt||
|||oq6n|i|
jo|d	7}n|	i|iq6W|}t}x|ot}x|D]}|i|	jo]x|iD]K\}}||	jo2||jo|d	7}n|	i|t}q
q
WqxZ|iD]O\}}||	jo6||jo|d	7}n|	i|it}PqgqgWqWqWx,|D]$}|i|	jo||qqWt|fd
|o%idd||||fnidd|dS(
sn
    Yum Plugin PreResolve Hook:
    Check and remove packages that don't align with the security config.
    RNRRis+Limiting packages to security relevant onescs7idd|i|iifi|idS(s) Deletes a package within a transaction. is' --> %s from %s excluded (non-security)N(RHtpoRtremoveRd(ttspkg(Rttsinfo(s /usr/lib/yum-plugins/security.pyR.siicsid|S(i(R(Rv(R(s /usr/lib/yum-plugins/security.pyRlssD%d package(s) needed (+%d related) for security, out of %d availables6No packages needed for security; %d packages available(RRZRRRHRRRR%RCt	getTsInfot
getMembersRtTS_INSTALL_STATEStTS_ERASEtoutput_stateRRRRRVRR,R;t	relatedtoRE(RR<RHRRRRR-ttspkgst	keep_pkgstcount_statest
count_pkgsRRRVtscnttmini_depsolve_againRtreason((RRs /usr/lib/yum-plugins/security.pytpreresolve_hooks			







%t__main__s8This is a plugin that is supposed to run from inside YUM()RR$tyum.pluginsRt
yum.update_mdRRmt
yum.constantstrpmUtils.miscutilsRtrequires_api_versiontplugin_typeRR?R
RRRRR"R)R1R>RBRCRERFRRRRRRRRRRR	R~R#R(((s /usr/lib/yum-plugins/security.pyt<module>*sL
			
	
								1								9	<		$	=		X


haha - 2025