+ else:
+ for imei, when, peeraddr, packet in received:
+ proto = proto_of_message(packet)
+ zpub.send(
+ Bcast(
+ proto=proto,
+ imei=imei,
+ when=when,
+ peeraddr=peeraddr,
+ packet=packet,
+ ).packed
+ )
+ if proto == HIBERNATION.PROTO:
+ log.debug(
+ "HIBERNATION from fd %d (IMEI %s)",
+ sk,
+ imei,
+ )
+ tostop.append(sk)
+ respmsg = inline_response(packet)
+ if respmsg is not None:
+ clients.response(
+ Resp(imei=imei, packet=respmsg)
+ )
+ else:
+ log.debug("Stray event: %s on socket %s", fl, sk)