forked from Hay1tsme/artemis
adb: update register
This commit is contained in:
parent
46dd8fe84f
commit
d7f9eed3f2
@ -29,7 +29,7 @@ class AimedbProtocol(Protocol):
|
||||
self.register_handler(0x09, 0x0A, self.handle_log, 'log')
|
||||
self.register_handler(0x0B, 0x0C, self.handle_campaign, 'campaign')
|
||||
self.register_handler(0x0D, 0x0E, self.handle_touch, 'touch')
|
||||
self.register_handler(0x0F, 0x10, self.handle_lookup2, 'lookup2')
|
||||
self.register_handler(0x0F, 0x10, self.handle_lookup, 'lookup2')
|
||||
self.register_handler(0x11, 0x12, self.handle_felica_lookup2, 'felica_lookup2')
|
||||
self.register_handler(0x13, 0x14, self.handle_log2, 'log2')
|
||||
self.register_handler(0x64, 0x65, self.handle_hello, 'hello')
|
||||
@ -131,9 +131,6 @@ class AimedbProtocol(Protocol):
|
||||
"""
|
||||
return ret
|
||||
|
||||
def handle_lookup2(self, data: bytes, resp_code: int) -> ADBBaseResponse:
|
||||
return self.handle_lookup(data, resp_code)
|
||||
|
||||
def handle_felica_lookup(self, data: bytes, resp_code: int) -> bytes:
|
||||
idm = data[0x20:0x28].hex()
|
||||
pmm = data[0x28:0x30].hex()
|
||||
@ -195,7 +192,7 @@ class AimedbProtocol(Protocol):
|
||||
return ADBTouchResponse(resp_code, 0x0050)
|
||||
|
||||
def handle_register(self, data: bytes, resp_code: int) -> bytes:
|
||||
luid = data[0x20:0x2A].hex()
|
||||
req = ADBLookupRequest(data)
|
||||
if self.config.server.allow_user_registration:
|
||||
user_id = self.data.user.create_user()
|
||||
|
||||
@ -204,22 +201,25 @@ class AimedbProtocol(Protocol):
|
||||
self.logger.error("Failed to register user!")
|
||||
|
||||
else:
|
||||
card_id = self.data.card.create_card(user_id, luid)
|
||||
card_id = self.data.card.create_card(user_id, req.access_code)
|
||||
|
||||
if card_id is None:
|
||||
user_id = -1
|
||||
self.logger.error("Failed to register card!")
|
||||
|
||||
self.logger.info(
|
||||
f"register from {self.transport.getPeer().host}: luid {luid} -> user_id {user_id}"
|
||||
f"Register access code {req.access_code} -> user_id {user_id}"
|
||||
)
|
||||
|
||||
else:
|
||||
self.logger.info(
|
||||
f"register from {self.transport.getPeer().host} blocked!: luid {luid}"
|
||||
f"Registration blocked!: access code {req.access_code}"
|
||||
)
|
||||
user_id = -1
|
||||
|
||||
resp = ADBLookupResponse(resp_code, 0x30, 1 if user_id > 0 else 0)
|
||||
resp.user_id = user_id
|
||||
"""
|
||||
ret = struct.pack(
|
||||
"<5H",
|
||||
0xA13E,
|
||||
@ -230,8 +230,8 @@ class AimedbProtocol(Protocol):
|
||||
)
|
||||
ret += bytes(0x20 - len(ret))
|
||||
ret += struct.pack("<l", user_id)
|
||||
|
||||
return self.append_padding(ret)
|
||||
"""
|
||||
return resp
|
||||
|
||||
def handle_log(self, data: bytes, resp_code: int) -> bytes:
|
||||
# TODO: Save aimedb logs
|
||||
|
Loading…
Reference in New Issue
Block a user