From 7503c642379cec7a2e14fe6a516d69a1f4d6d94a Mon Sep 17 00:00:00 2001 From: oy Date: Thu, 12 Aug 2010 15:22:07 +0200 Subject: made unpacking of net strings more strict - prevents possible malformed output --- datasrc/datatypes.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'datasrc/datatypes.py') diff --git a/datasrc/datatypes.py b/datasrc/datatypes.py index e4459e48..4e293ab1 100644 --- a/datasrc/datatypes.py +++ b/datasrc/datatypes.py @@ -294,6 +294,14 @@ class NetString(NetVariable): def emit_pack(self): return ["pPacker->AddString(%s, -1);" % self.name] +class NetStringStrict(NetVariable): + def emit_declaration(self): + return ["const char *%s;"%self.name] + def emit_unpack(self): + return ["pMsg->%s = pUnpacker->GetString(CUnpacker::SANITIZE_CC|CUnpacker::SKIP_START_WHITESPACES);" % self.name] + def emit_pack(self): + return ["pPacker->AddString(%s, -1);" % self.name] + class NetIntAny(NetVariable): def emit_declaration(self): return ["int %s;"%self.name] -- cgit 1.4.1