ROOTPLOIT
Server: LiteSpeed
System: Linux server71.web-hosting.com 4.18.0-513.18.1.lve.el8.x86_64 #1 SMP Thu Feb 22 12:55:50 UTC 2024 x86_64
User: niphet (1079)
PHP: 5.3.29
Disabled: NONE
Upload Files
File: //lib/python3.6/site-packages/dnf/yum/__pycache__/rpmtrans.cpython-36.pyc
3

ft`>	@sHddlmZmZddlmZddlZddlmZmZddl	Z
ddlZ
ddlZ
ddl
Z
ddlZddlZddlZddlZddlZddlZdZdZdZdZd	Zd
ZdZdZeeegZeeegZejjejj ejj!ejj"ejj#ejj$ejj%ejj&ejj'h	Z(ej)d
Z*ddZ+Gddde,Z-Gddde-Z.Gddde-Z/Gddde,Z0dS))print_functionabsolute_import)unicode_literalsN)_ucd
(2<FZddnfcstfdd}|S)zb
    Wrapper to return a deprecated action constant
    while printing a deprecation warning.
    cs2d|jjf}tj|tddttj}|S)Nz1%s.%s is deprecated. Use dnf.callback.%s instead.)
stacklevel)	__class____name__warningswarnDeprecationWarninggetattrrcallback)selfmsgvalue)name/usr/lib/python3.6/rpmtrans.py_funcCs
z%_add_deprecated_action.<locals>._func)property)rrr)rr_add_deprecated_action>sr!c@seZdZddZedZedZedZeZedZ	edZ
edZed	Zed
Z
edZedZed
ZddZddZddZddZddZdS)TransactionDisplaycCsdS)Nr)rrrr__init__PszTransactionDisplay.__init__PKG_CLEANUP
PKG_DOWNGRADE
PKG_REMOVEPKG_INSTALLPKG_OBSOLETE
PKG_REINSTALLPKG_UPGRADE
PKG_VERIFYTRANS_PREPARATION
PKG_SCRIPTLET
TRANS_POSTcCsdS)aReport ongoing progress on a transaction item. :api

        :param package: a package being processed
        :param action: the action being performed
        :param ti_done: number of processed bytes of the transaction
           item being processed
        :param ti_total: total number of bytes of the transaction item
           being processed
        :param ts_done: number of actions processed in the whole
           transaction
        :param ts_total: total number of actions in the whole
           transaction

        Nr)rpackageactionZti_doneZti_totalZts_doneZts_totalrrrprogressbszTransactionDisplay.progresscCsdS)z_Hook for reporting an rpm scriptlet output.

        :param msgs: the scriptlet output
        Nr)rmsgsrrr	scriptoutsszTransactionDisplay.scriptoutcCsdS)z:Report an error that occurred during the transaction. :apiNr)rmessagerrrerrorzszTransactionDisplay.errorcCsdS)z|package is the same as in progress() - a package object or simple
           string action is also the same as in progress()Nr)rr/r0rrrfilelog~szTransactionDisplay.filelogcCs|j|tjjdd||dS)Nr)r1rtransactionr+)rpkgcounttotalrrrverify_tsi_packagesz%TransactionDisplay.verify_tsi_packageN)r
__module____qualname__r#r!r$r%r&Z	PKG_ERASEr'r(r)r*r+r,r-r.r1r3r5r6r;rrrrr"Ms$r"cs eZdZdZfddZZS)ErrorTransactionDisplayz@An RPMTransaction display that prints errors to standard output.cs&tt|j|tjjd|tjdS)Nprint)superr>r5rutilZ_terminal_messengersysstderr)rr4)rrrr5szErrorTransactionDisplay.error)rr<r=__doc__r5
__classcell__rr)rrr>sr>cs8eZdZdZfddZddZddZdd	ZZS)
LoggingTransactionDisplayz@
    Base class for a RPMTransaction display callback class
    cstt|jtjd|_dS)Nzdnf.rpm)r@rFr#logging	getLogger
rpm_logger)r)rrrr#sz"LoggingTransactionDisplay.__init__cCs|jj|dS)N)rIr5)rr4rrrr5szLoggingTransactionDisplay.errorcCs.tjj|}d||f}|jjtjj|dS)Nz%s: %s)rr7ZFILE_ACTIONSrIlogrGZSUBDEBUG)rr/r0Z
action_strrrrrr6sz!LoggingTransactionDisplay.filelogcCs|r|jjt|dS)N)rIinfor)rr2rrrr3sz#LoggingTransactionDisplay.scriptout)	rr<r=rDr#r5r6r3rErr)rrrFs
rFc@seZdZdffddZd8ddZddZd	d
ZddZd
dZddZ	ddZ
ddZddZddZ
ddZddZddZdd Zd!d"Zd#d$Zd%d&Zd'd(Zd)d*Zd+d,Zd-d.Zd/d0Zd1d2Zd3d4Zd5d6Zd7S)9RPMTransactionFcCsn|stg}||_||_||_d|_d|_d|_d|_d|_t	|_
d|_|j|j
jg|_d|_d|_dS)NFr)r>displaysbasetest
trans_runningfd
total_actionstotal_installedcomplete_actionssetinstalled_pkg_names
total_removed_setupOutputLoggingZconfrpmverbosity_te_list	_te_index
_tsi_cache)rrNrOrMrrrr#s zRPMTransaction.__init__rKcCs~tj}||_t|jd|_|jjj|jddddddj	||}d|j
}tt|s^d	}tj
tt|tj|jdS)
Nzw+bZcritZemergerrrKZwarning)criticalZ	emergencyr5ZinformationrZRPMLOG_ZRPMLOG_INFO)tempfileZNamedTemporaryFile	_readpipeopenr
_writepiperN_tsZsetScriptFdgetupperhasattrrpmsetVerbosityr
setLogFile)rrYZio_rrrrrXs
z"RPMTransaction._setupOutputLoggingc	Cs8tjtjtjtjy|jjWnYnXdS)N)rgrhZ
RPMLOG_NOTICErirBrCrbclose)rrrr_shutdownOutputLoggingsz%RPMTransaction._shutdownOutputLoggingcCsBy(|jj|jj|jj}|s&dS|Stk
r<YnXdS)N)r`seektellreadIOError)routrrr
_scriptOutputs
zRPMTransaction._scriptOutputccs,|j}|r(x|jD]}t|VqWdS)N)rq
splitlinesr)rmessageslinerrrrsszRPMTransaction.messagescCs4|j}x|jD]}|j|qW|jjj|dS)N)rqrMr3rNhistoryZlog_scriptlet_output)rr2displayrrr
_scriptoutszRPMTransaction._scriptoutcCs|jdS)N)rk)rrrr__del__szRPMTransaction.__del__cCst|dr|}|gS|j|j}tjj|}|jrJt|jd|krJ|jSg}x2|jj	D]&}|j
tkrhqXt||krX|j|qXW|r||_|St
d|dS)z3Obtain the package related to the calling callback.r8rz%TransactionItem not found for key: %sN)rfrZr[rrAZ	_te_nevrar\strrNr7r0RPM_ACTIONS_SETappendRuntimeError)rZcbkeyZtsiZteZte_nevraitemsrrr_extract_cbkeys$

zRPMTransaction._extract_cbkeyc
Csyt|trt|}|tjkr.|j|nv|tjkr<nh|tjkrV|j||nN|tj	krp|j
||n4|tjkr|j|S|tj
kr|j|n|tjkr|j|n|tjkr|j|n|tjkr|j|||n|tjkr|j|n|tjkr|j|n|tjkr,|j|||nx|tjkrD|j|n`|tjkr\|j|nH|tjkrx|j |||n,|tj!kr|j"|n|tj#kr|j$WnBt%k
rt&j'\}}}t(j)|||}	t*j+dj,|	YnXdS)N)-
isinstanceryrrgZRPMCALLBACK_TRANS_START_transStartZRPMCALLBACK_TRANS_STOPZRPMCALLBACK_TRANS_PROGRESS_trans_progressZRPMCALLBACK_ELEM_PROGRESS
_elemProgressZRPMCALLBACK_INST_OPEN_FILE
_instOpenFileZRPMCALLBACK_INST_CLOSE_FILE_instCloseFileZRPMCALLBACK_INST_START_inst_startZRPMCALLBACK_INST_STOP
_inst_stopZRPMCALLBACK_INST_PROGRESS
_instProgressZRPMCALLBACK_UNINST_START
_uninst_startZRPMCALLBACK_UNINST_STOP_unInstStopZRPMCALLBACK_UNINST_PROGRESS_uninst_progressZRPMCALLBACK_CPIO_ERROR
_cpioErrorZRPMCALLBACK_UNPACK_ERROR_unpackErrorZRPMCALLBACK_SCRIPT_ERROR_scriptErrorZRPMCALLBACK_SCRIPT_START
_script_startZRPMCALLBACK_SCRIPT_STOP_scriptStop	ExceptionrBexc_info	tracebackformat_exceptionloggerr^join)
rZwhatamountr:keyZclient_dataexc_type	exc_value
exc_tracebackZexcept_listrrrrsR











zRPMTransaction.callbackcCs(||_|jrdSd|_t|jj|_dS)NT)rRrOrPlistrNrcrZ)rr:rrrr<s
zRPMTransaction._transStartcCs4tjj}x&|jD]}|jd||d|ddqWdS)Nr)rr7r,rMr1)rrr:r0rvrrrrBszRPMTransaction._trans_progresscCsP||_|jd7_|jsL|j|}x&|jD]}|j|dj|djq,WdS)Nrr)r[rTrOr~rMr6r8r0)rrindextransaction_listrvrrrrGs
zRPMTransaction._elemProgresscCsd|_|j|}|dj}|j}yt||_WnDtk
rt}z(x |jD]}|jd||fqJWWYdd}~Xn.X|j	r|j
d7_
|jj|j
|jjSdS)NrzError: Cannot open file %s: %sr)Zlastmsgr~r8ZlocalPkgrarQrorMr5rPrSrVaddrfileno)rrrr8ZrpmlocervrrrrOs

(zRPMTransaction._instOpenFilecCs|jjd|_dS)N)rQrj)rrrrrr_s
zRPMTransaction._instCloseFilecCsdS)Nr)rrrrrrcszRPMTransaction._inst_startcCsV|js|jrdS|j|j|jkrRtjj}x"|jD]}|j	d|ddddq6WdS)N)
rOrPrwrTrRrr7r.rMr1)rrr0rvrrrrfszRPMTransaction._inst_stopcCsJ|j|}|dj}|dj}x&|jD]}|j|||||j|jq&WdS)Nr)r~r8r0rMr1rTrR)rrr:rrr8r0rvrrrrrs



zRPMTransaction._instProgresscCs|jd7_dS)Nr)rW)rrrrrryszRPMTransaction._uninst_startcCsJ|j|}|dj}|dj}x&|jD]}|j|||||j|jq&WdS)Nr)r~r8r0rMr1rTrR)rrr:rrr8r0rvrrrr|s



zRPMTransaction._uninst_progresscCs|jr
dS|jdS)N)rOrw)rrrrrrszRPMTransaction._unInstStopcCs6|j|}d|dj}x|jD]}|j|q WdS)Nz'Error in cpio payload of rpm package %sr)r~r8rMr5)rrrrrvrrrrs
zRPMTransaction._cpioErrorcCs6|j|}d|dj}x|jD]}|j|q WdS)NzError unpacking rpm package %sr)r~r8rMr5)rrrrrvrrrrs
zRPMTransaction._unpackErrorc	CsNtjj|d}|j|}|djj}d||f}x|jD]}|j|q8WdS)Nz	<unknown>rz'Error in %s scriptlet in rpm package %s)rgZtagnamesrdr~r8rrMr5)	rrr:rZscriptlet_namerrrrvrrrrs
zRPMTransaction._scriptErrorcCstjj}|dkr |jgkr d}n|j|}|dj}|jdkrN|jdkrN|jnd}|jdkrl|jdkrl|jnd}x"|jD]}|j	||dd||qxWdS)NNonerrr)
rr7r-rZr~r8rRrTrMr1)rrr0r8rZcompleter:rvrrrrs

zRPMTransaction._script_startcCs|jdS)N)rw)rrrrrszRPMTransaction._scriptStopcCs"x|jD]}|j|||qWdS)N)rMr;)rr8r9r:rvrrrr;sz!RPMTransaction.verify_tsi_packageN)rK)rr<r=r#rXrkrqrsrwrxr~rrrrrrrrrrrrrrrrrr;rrrrrLs4
	.
rL)1Z
__future__rrrZlibdnf.transactionZlibdnfZdnf.i18nrrZdnf.callbackrZdnf.transactionZdnf.utilrgosrGrBr_rrZ	TS_UPDATEZ
TS_INSTALLZTS_ERASEZTS_OBSOLETEDZ
TS_OBSOLETINGZTS_AVAILABLEZ
TS_UPDATEDZ	TS_FAILEDZTS_INSTALL_STATESZTS_REMOVE_STATESr7ZTransactionItemAction_INSTALLZTransactionItemAction_DOWNGRADEZ TransactionItemAction_DOWNGRADEDZTransactionItemAction_OBSOLETEZTransactionItemAction_OBSOLETEDZTransactionItemAction_UPGRADEZTransactionItemAction_UPGRADEDZTransactionItemAction_REMOVEZ!TransactionItemAction_REINSTALLEDrzrHrr!objectr"r>rFrLrrrr<module>sL



<