Merge pull request #305 from klarose/more-secure-worker-id

use secrets to generate worker id
pull/296/merge
Shengdun Hua 2022-11-21 11:26:38 +08:00 committed by GitHub
commit 7b18eac7a6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 1 deletions

View File

@ -1,4 +1,5 @@
import logging
import secrets
import tornado.websocket
from tornado.ioloop import IOLoop
@ -36,7 +37,7 @@ class Worker(object):
self.chan = chan
self.dst_addr = dst_addr
self.fd = chan.fileno()
self.id = str(id(self))
self.id = self.gen_id()
self.data_to_dst = []
self.handler = None
self.mode = IOLoop.READ
@ -50,6 +51,10 @@ class Worker(object):
if events & IOLoop.ERROR:
self.close(reason='error event occurred')
@classmethod
def gen_id(cls):
return secrets.token_urlsafe(nbytes=32)
def set_handler(self, handler):
if not self.handler:
self.handler = handler