fix: better string sanitizing
This commit is contained in:
+5
-3
@@ -25,6 +25,8 @@ if typing.TYPE_CHECKING:
|
||||
|
||||
|
||||
class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
|
||||
SANITIZE_REGEX = re.compile(r"[^\x20-\x7F]+")
|
||||
|
||||
@typing.override
|
||||
def __init__(
|
||||
self,
|
||||
@@ -77,7 +79,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
|
||||
|
||||
@typing.override
|
||||
def address_string(self) -> str: # pragma: no cover
|
||||
return re.sub(r"[^\x00-\x7F]+", "", super().address_string())
|
||||
return self.SANITIZE_REGEX.sub("?", super().address_string())
|
||||
|
||||
@typing.override
|
||||
def log_message(self, format: str, *args: typing.Any) -> None: # pragma: no cover
|
||||
@@ -108,7 +110,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
|
||||
code,
|
||||
self.address_string(),
|
||||
self.host,
|
||||
re.sub(r"[^\x00-\x7F]+", "?", self.requestline),
|
||||
self.SANITIZE_REGEX.sub("?", self.requestline),
|
||||
)
|
||||
fmt = "→ %s - %s - %s - %s"
|
||||
if size != "":
|
||||
@@ -238,7 +240,7 @@ class BaseHandler(abc.ABC, http.server.BaseHTTPRequestHandler):
|
||||
"...",
|
||||
self.address_string(),
|
||||
self.host,
|
||||
re.sub(r"[^\x00-\x7F]+", "?", self.requestline),
|
||||
self.SANITIZE_REGEX.sub("?", self.requestline),
|
||||
)
|
||||
fmt = "← %s - %s - %s - %s"
|
||||
if self.in_size > 0:
|
||||
|
||||
Reference in New Issue
Block a user