mirror of
https://github.com/Tautulli/Tautulli.git
synced 2025-07-10 07:22:37 -07:00
* Bump cherrypy from 18.8.0 to 18.9.0 Bumps [cherrypy](https://github.com/cherrypy/cherrypy) from 18.8.0 to 18.9.0. - [Changelog](https://github.com/cherrypy/cherrypy/blob/main/CHANGES.rst) - [Commits](https://github.com/cherrypy/cherrypy/compare/v18.8.0...v18.9.0) --- updated-dependencies: - dependency-name: cherrypy dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> * Update cherrypy==18.9.0 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> [skip ci]
24 lines
982 B
Python
24 lines
982 B
Python
""" Finds any disconnected terminal service sessions and logs them off"""
|
|
import pywintypes
|
|
import win32ts
|
|
import winerror
|
|
|
|
sessions = win32ts.WTSEnumerateSessions(win32ts.WTS_CURRENT_SERVER_HANDLE)
|
|
for session in sessions:
|
|
"""
|
|
WTS_CONNECTSTATE_CLASS: WTSActive,WTSConnected,WTSConnectQuery,WTSShadow,WTSDisconnected,
|
|
WTSIdle,WTSListen,WTSReset,WTSDown,WTSInit
|
|
"""
|
|
if session["State"] == win32ts.WTSDisconnected:
|
|
sessionid = session["SessionId"]
|
|
username = win32ts.WTSQuerySessionInformation(
|
|
win32ts.WTS_CURRENT_SERVER_HANDLE, sessionid, win32ts.WTSUserName
|
|
)
|
|
print("Logging off disconnected user:", username)
|
|
try:
|
|
win32ts.WTSLogoffSession(win32ts.WTS_CURRENT_SERVER_HANDLE, sessionid, True)
|
|
except pywintypes.error as e:
|
|
if e.winerror == winerror.ERROR_ACCESS_DENIED:
|
|
print("Can't kill that session:", e.strerror)
|
|
else:
|
|
raise
|