xturn v0.1.0 Xirsys.XTurn.Pipeline View Source

provides handers for TURN over STUN

Link to this section Summary

Functions

TODO: check to make sure all attributes are handled

TODO: client TCP connection establishment [RFC6062] section 4.2

attributes include: binding: Handles STUN requests [RFC5389] allocate: Handles TURN allocation requests [RFC5766] section 2.2 and section 5 refresh: Handles TURN refresh requests [RFC5766] section 7 channelbind: Handles TURN channelbind requests [RFC5766] section 11 createperm: Handles TURN createpermission requests [RFC5766] section 9 send: Handles TURN send indication requests [RFC5766] section 9

Handles errored TURN message extraction

Link to this section Functions

Link to this function

do_request(conn)

View Source
do_request(%Xirsys.Sockets.Conn{
  client_ip: term(),
  client_port: term(),
  client_socket: term(),
  decoded_message: term(),
  force_auth: term(),
  halt: term(),
  is_control: term(),
  listener: term(),
  message: term(),
  response: term(),
  server_ip: term(),
  server_port: term()
}) ::
  %Xirsys.Sockets.Conn{
    client_ip: term(),
    client_port: term(),
    client_socket: term(),
    decoded_message: term(),
    force_auth: term(),
    halt: term(),
    is_control: term(),
    listener: term(),
    message: term(),
    response: term(),
    server_ip: term(),
    server_port: term()
  }
  | false

TODO: check to make sure all attributes are handled

TODO: client TCP connection establishment [RFC6062] section 4.2

attributes include: binding: Handles STUN requests [RFC5389] allocate: Handles TURN allocation requests [RFC5766] section 2.2 and section 5 refresh: Handles TURN refresh requests [RFC5766] section 7 channelbind: Handles TURN channelbind requests [RFC5766] section 11 createperm: Handles TURN createpermission requests [RFC5766] section 9 send: Handles TURN send indication requests [RFC5766] section 9

Link to this function

process_message(conn)

View Source
process_message(%Xirsys.Sockets.Conn{
  client_ip: term(),
  client_port: term(),
  client_socket: term(),
  decoded_message: term(),
  force_auth: term(),
  halt: term(),
  is_control: term(),
  listener: term(),
  message: term(),
  response: term(),
  server_ip: term(),
  server_port: term()
}) ::
  %Xirsys.Sockets.Conn{
    client_ip: term(),
    client_port: term(),
    client_socket: term(),
    decoded_message: term(),
    force_auth: term(),
    halt: term(),
    is_control: term(),
    listener: term(),
    message: term(),
    response: term(),
    server_ip: term(),
    server_port: term()
  }
  | false

Handles errored TURN message extraction