/usr/lib/python3.9/site-packages/rhn/__pycache__
NameSizeModeActions
connections.cpython-39.opt-1.pyc7000644editdlrm
connections.cpython-39.pyc7000644editdlrm
i18n.cpython-39.opt-1.pyc8780644editdlrm
i18n.cpython-39.pyc8780644editdlrm
rhnLockfile.cpython-39.opt-1.pyc32160644editdlrm
rhnLockfile.cpython-39.pyc32160644editdlrm
rpclib.cpython-39.opt-1.pyc41550644editdlrm
rpclib.cpython-39.pyc41550644editdlrm
transports.cpython-39.opt-1.pyc34880644editdlrm
transports.cpython-39.pyc34880644editdlrm
__init__.cpython-39.opt-1.pyc2140644editdlrm
__init__.cpython-39.pyc2140644editdlrm
Edit: /usr/lib/python3.9/site-packages/rhn/__pycache__/rhnLockfile.cpython-39.pyc (3216B)
a ÓXj.ã@s†ddlZddlZddlZddlZddlmZmZddlmZddlZGdd„de ƒZ Gdd„dƒZ dd „Z e d kr‚e e ƒp~d¡dS) éN)Ú EWOULDBLOCKÚEEXIST)Úbstrc@seZdZdZdS)ÚLockfileLockedExceptionz$thrown ONLY when pid file is locked.N)Ú__name__Ú __module__Ú __qualname__Ú__doc__©r r ú3/usr/lib/python3.9/site-packages/rhn/rhnLockfile.pyrsrc@s*eZdZdZd dd„Zdd„Zdd„ZdS) ÚLockfilezïclass that provides simple access to a PID-style lockfile. methods: __init__(lockfile), acquire(), and release() NOTE: currently acquires upon init The *.pid file will be acquired, or an LockfileLockedException is raised. NcCstj tj tj |¡¡¡|_||_|js4t ¡|_tj |j¡}tj  |¡s”zt  |¡Wn6t y’t   ¡d}t|dƒrŒ|jtkrŒn‚Yn0t |jtjtjBtjBtjBtjBd¡|_t |j¡}t |j¡rè|jt ¡krt |j¡t d|jt ¡|j|jfƒ‚| ¡dS)zlcreate (if need be), and acquire lock on lockfile lockfile example: '/var/run/up2date.pid' éÚerrnoi€zSrefusing to use lockfile %s: not a regular file owned by uid %d (mode 0o%o, uid %d)N) ÚosÚpathÚabspathÚ expanduserÚ expandvarsÚlockfileÚpidÚgetpidÚdirnameÚexistsÚmakedirsÚOSErrorÚsysÚexc_infoÚhasattrrrÚopenÚO_RDWRÚO_CREATÚO_SYNCÚ O_NOFOLLOWÚ O_CLOEXECÚfÚfstatÚstatÚS_ISREGÚst_modeÚst_uidÚgeteuidÚcloseÚacquire)ÚselfrrrÚeÚstr r r Ú__init__%sD ÿÿ     ÿÿþ  þÿzLockfile.__init__cCsžzt |jtjtjB¡WnBty\t ¡djt krVt d|j dt ¡dƒ‚n‚Yn0t |jtj d¡t  |jd¡t  |jtt|jƒdƒ¡dS)z5acquire the lock; else raise LockfileLockedException.r zcannot acquire lock on %s.NérÚ )ÚfcntlÚflockr$ZLOCK_EXZLOCK_NBÚIOErrorrrrrrrZF_SETFDrÚ ftruncateÚwriterÚstrr)r-r r r r,^s ÿzLockfile.acquirecCs|z4t |j¡}t |j¡}|j|jko0|j|jk}WntyJd}Yn0|r\t |j¡t   |jt j ¡t  |j¡dS)NF) rr%r$ÚlstatrÚst_devÚst_inorÚunlinkr3r4ZLOCK_UNr+)r-Zfd_stZpath_stZ same_inoder r r Úreleaseos    ÿ   zLockfile.release)N)rrrr r0r,r=r r r r r s 9r cCsxz tdƒ}Wn4ty@tj dt ¡d¡t d¡Yn40tdƒtdƒddl}|  d ¡|  ¡td ƒdS) z test codez ./test.pidz%s r éÿÿÿÿzlock acquired z...sleeping for 10 secondsrNé zlock released ) r rrÚstderrr7rÚexitÚprintÚtimeÚsleepr=)ÚLrCr r r Úmain„s   rFÚ__main__)rrr&r3rrrZrhn.i18nrÚ Exceptionrr rFrrAr r r r Ús h