View Source vedf_channel (erldist_filter v1.28.5)
Summary
Types
-type dpi() :: #dpi{channel :: t(), entry :: vdist_entry:t(), control :: udist:dop_t(), payload :: vterm:t() | undefined, compact_fragment :: binary(), otp_name_blocklist :: boolean()}.
-type dpi_result() :: #dpi_result{channel :: t(), actions :: [erldist_filter_nif:action()]}.
-type t() :: #vedf_channel{packet_size :: 0 | 1 | 2 | 4 | 8, dflags :: vterm:u64(), rx_sequences :: #{vdist:sequence_id() => vdist_external:t()}, rx_atom_cache :: undefined | vdist_atom_cache:t(), rx_logger_time :: non_neg_integer(), rx_router_name :: atom(), rx_sort :: non_neg_integer(), compact_fragments :: boolean(), deep_packet_inspection :: boolean(), logging :: boolean(), otp_name_blocklist :: boolean(), redirect_dist_operations :: boolean(), sysname :: undefined | erldist_filter_nif:sysname(), untrusted :: boolean()}.
Functions
-spec recv(OldChannel, Packets) -> {ok, Actions, NewChannel} when OldChannel :: t(), Packets :: [binary()], Actions :: [Action], Action :: erldist_filter_nif:action(), NewChannel :: t().
-spec send_encode(Channel, ControlMessage, Options) -> {ok, Packets, Channel} when Channel :: t(), ControlMessage :: vdist:dop_without_payload_t(), Options :: vdist_entry_encode:options(), Packets :: [binary()].
-spec send_encode(Channel, ControlMessage, Payload, Options) -> {ok, Packets, Channel} when Channel :: t(), ControlMessage :: vdist:dop_with_payload_t(), Payload :: vterm:t(), Options :: vdist_entry_encode:options(), Packets :: [binary()].