diff --git a/core/allnet.py b/core/allnet.py index b062541..0912f56 100644 --- a/core/allnet.py +++ b/core/allnet.py @@ -712,15 +712,12 @@ class BillingServlet: if req.traceleft > 0: self.logger.warning(f"{req.traceleft} unsent tracelogs") - kc_playlimit = req.playlimit - kc_nearfull = req.nearfull - while req.playcnt > req.playlimit: - kc_playlimit += 1024 - kc_nearfull += 1024 + playlimit = req.playlimit + while req.playcnt > playlimit: + playlimit += 1024 - playlimit = kc_playlimit - nearfull = kc_nearfull + (req.billingtype.value * 0x00010000) + nearfull = req.nearfull + (req.billingtype.value * 0x00010000) digest.update(playlimit.to_bytes(4, "little") + kc_serial_bytes) playlimit_sig = signer.sign(digest).hex() @@ -734,7 +731,7 @@ class BillingServlet: resp_str = urllib.parse.unquote(urllib.parse.urlencode(vars(resp))) + "\r\n" self.logger.debug(f"response {vars(resp)}") - if req.traceleft > 0: + if req.traceleft > 0: # TODO: should probably move this up so we don't do a ton of work that doesn't get used self.logger.info(f"Requesting 20 more of {req.traceleft} unsent tracelogs") return PlainTextResponse("result=6&waittime=0&linelimit=20\r\n")