on_receive_pdu takes more args