async def process_unknown_action(ctx: wire.Context, w: Writer, action: EosTxActionAck) -> None: checksum = HashWriter(sha256()) writers.write_variant32(checksum, action.unknown.data_size) checksum.extend(action.unknown.data_chunk) writers.write_bytes_unchecked(w, action.unknown.data_chunk) bytes_left = action.unknown.data_size - len(action.unknown.data_chunk) while bytes_left != 0: action = await ctx.call(EosTxActionRequest(data_size=bytes_left), EosTxActionAck) if action.unknown is None: raise ValueError("Bad response. Unknown struct expected.") checksum.extend(action.unknown.data_chunk) writers.write_bytes_unchecked(w, action.unknown.data_chunk) bytes_left -= len(action.unknown.data_chunk) if bytes_left < 0: raise ValueError("Bad response. Buffer overflow.") await layout.confirm_action_unknown(ctx, action.common, checksum.get_digest())
async def _actions(ctx: wire.Context, sha: HashWriter, num_actions: int) -> None: for i in range(num_actions): action = await ctx.call(EosTxActionRequest(), EosTxActionAck) await process_action(ctx, sha, action)
async def _actions(ctx, sha, num_actions: int): for i in range(num_actions): action = await ctx.call(EosTxActionRequest(), EosTxActionAck) await process_action(ctx, sha, action)