/* nice.vapi generated by vapigen, do not modify. */ [CCode (cprefix = "Nice", gir_namespace = "Nice", gir_version = "0.1", lower_case_cprefix = "nice_")] namespace Nice { [CCode (cheader_filename = "nice.h", type_id = "nice_agent_get_type ()")] public class Agent : GLib.Object { [CCode (has_construct_function = false)] public Agent (GLib.MainContext ctx, Nice.Compatibility compat); public bool add_local_address (Nice.Address addr); public uint add_stream (uint n_components); public bool attach_recv (uint stream_id, uint component_id, GLib.MainContext ctx, Nice.AgentRecvFunc func); [Version (since = "0.1.16")] public async void close_async (); [CCode (cname = "nice_agent_new_reliable", has_construct_function = false)] [Version (since = "0.0.11")] public Agent.create_reliable (GLib.MainContext ctx, Nice.Compatibility compat); [Version (since = "0.1.6")] public bool forget_relays (uint stream_id, uint component_id); [CCode (has_construct_function = false)] [Version (since = "0.1.15")] public Agent.full (GLib.MainContext ctx, Nice.Compatibility compat, Nice.AgentOption flags); public bool gather_candidates (uint stream_id); [Version (since = "0.1.4")] public string generate_local_candidate_sdp (Nice.Candidate candidate); [Version (since = "0.1.4")] public string generate_local_sdp (); [Version (since = "0.1.4")] public string generate_local_stream_sdp (uint stream_id, bool include_non_ice); [Version (since = "0.1.8")] public Nice.ComponentState get_component_state (uint stream_id, uint component_id); public Nice.Candidate get_default_local_candidate (uint stream_id, uint component_id); [Version (since = "0.1.5")] public GLib.IOStream get_io_stream (uint stream_id, uint component_id); public GLib.SList get_local_candidates (uint stream_id, uint component_id); public bool get_local_credentials (uint stream_id, out string ufrag, out string pwd); public GLib.SList get_remote_candidates (uint stream_id, uint component_id); public bool get_selected_pair (uint stream_id, uint component_id, Nice.Candidate local, Nice.Candidate remote); [Version (since = "0.1.5")] public GLib.Socket? get_selected_socket (uint stream_id, uint component_id); [Version (since = "0.1.4")] public unowned string get_stream_name (uint stream_id); [Version (since = "0.1.4")] public Nice.Candidate parse_remote_candidate_sdp (uint stream_id, string sdp); [Version (since = "0.1.4")] public int parse_remote_sdp (string sdp); [Version (since = "0.1.4")] public GLib.SList parse_remote_stream_sdp (uint stream_id, string sdp, string ufrag, string pwd); [Version (since = "0.1.16")] public bool peer_candidate_gathering_done (uint stream_id); [Version (since = "0.1.5")] public ssize_t recv (uint stream_id, uint component_id, [CCode (array_length_cname = "buf_len", array_length_pos = 3.5, array_length_type = "gsize")] out unowned uint8[] buf, GLib.Cancellable? cancellable = null) throws GLib.Error; [Version (since = "0.1.5")] public int recv_messages (uint stream_id, uint component_id, [CCode (array_length_cname = "n_messages", array_length_pos = 3.5, array_length_type = "guint")] out unowned Nice.InputMessage[] messages, GLib.Cancellable? cancellable = null) throws GLib.Error; [Version (since = "0.1.5")] public int recv_messages_nonblocking (uint stream_id, uint component_id, [CCode (array_length_cname = "n_messages", array_length_pos = 3.5, array_length_type = "guint")] out unowned Nice.InputMessage[] messages, GLib.Cancellable? cancellable = null) throws GLib.Error; [Version (since = "0.1.5")] public ssize_t recv_nonblocking (uint stream_id, uint component_id, [CCode (array_length_cname = "buf_len", array_length_pos = 3.5, array_length_type = "gsize")] out unowned uint8[] buf, GLib.Cancellable? cancellable = null) throws GLib.Error; public void remove_stream (uint stream_id); public bool restart (); [Version (since = "0.1.6")] public bool restart_stream (uint stream_id); public int send (uint stream_id, uint component_id, [CCode (array_length_cname = "len", array_length_pos = 2.5, array_length_type = "guint", type = "const gchar*")] uint8[] buf); [Version (since = "0.1.5")] public int send_messages_nonblocking (uint stream_id, uint component_id, [CCode (array_length_cname = "n_messages", array_length_pos = 3.5, array_length_type = "guint")] Nice.OutputMessage[] messages, GLib.Cancellable? cancellable = null) throws GLib.Error; public bool set_local_credentials (uint stream_id, string ufrag, string pwd); public void set_port_range (uint stream_id, uint component_id, uint min_port, uint max_port); public bool set_relay_info (uint stream_id, uint component_id, string server_ip, uint server_port, string username, string password, Nice.RelayType type); public int set_remote_candidates (uint stream_id, uint component_id, GLib.SList candidates); public bool set_remote_credentials (uint stream_id, string ufrag, string pwd); public bool set_selected_pair (uint stream_id, uint component_id, string lfoundation, string rfoundation); public bool set_selected_remote_candidate (uint stream_id, uint component_id, Nice.Candidate candidate); [Version (since = "0.0.10")] public void set_software (string software); [Version (since = "0.1.4")] public bool set_stream_name (uint stream_id, string name); [Version (since = "0.0.9")] public void set_stream_tos (uint stream_id, int tos); [NoAccessorMethod] [Version (since = "0.1.8")] public bool bytestream_tcp { get; } [NoAccessorMethod] public uint compatibility { get; construct; } [NoAccessorMethod] public bool controlling_mode { get; set; } [NoAccessorMethod] [Version (since = "0.1.14")] public bool force_relay { get; set; } [NoAccessorMethod] public bool full_mode { get; construct; } [NoAccessorMethod] [Version (since = "0.1.8")] public bool ice_tcp { get; set; } [NoAccessorMethod] [Version (since = "0.1.16")] public bool ice_trickle { get; set; } [NoAccessorMethod] [Version (since = "0.1.8")] public bool ice_udp { get; set; } [NoAccessorMethod] [Version (since = "0.1.8")] public bool keepalive_conncheck { get; set; } [NoAccessorMethod] public void* main_context { get; construct; } [NoAccessorMethod] public uint max_connectivity_checks { get; set; } [NoAccessorMethod] [Version (since = "0.0.4")] public string proxy_ip { owned get; set; } [NoAccessorMethod] [Version (since = "0.0.4")] public string proxy_password { owned get; set; } [NoAccessorMethod] [Version (since = "0.0.4")] public uint proxy_port { get; set; } [NoAccessorMethod] [Version (since = "0.0.4")] public uint proxy_type { get; set; } [NoAccessorMethod] [Version (since = "0.0.4")] public string proxy_username { owned get; set; } [NoAccessorMethod] [Version (since = "0.0.11")] public bool reliable { get; construct; } [NoAccessorMethod] [Version (since = "0.1.15")] public uint stun_initial_timeout { get; set construct; } [NoAccessorMethod] [Version (since = "0.1.15")] public uint stun_max_retransmissions { get; set construct; } [NoAccessorMethod] public uint stun_pacing_timer { get; set construct; } [NoAccessorMethod] [Version (since = "0.1.15")] public uint stun_reliable_timeout { get; set construct; } [NoAccessorMethod] public string stun_server { owned get; set; } [NoAccessorMethod] public uint stun_server_port { get; set; } [NoAccessorMethod] public bool support_renomination { get; set; } [NoAccessorMethod] [Version (since = "0.0.7")] public bool upnp { get; set construct; } [NoAccessorMethod] [Version (since = "0.0.7")] public uint upnp_timeout { get; set construct; } public signal void candidate_gathering_done (uint stream_id); public signal void component_state_changed (uint stream_id, uint component_id, uint state); public signal void initial_binding_request_received (uint stream_id); [Version (deprecated = true, deprecated_since = "0.1.8")] public signal void new_candidate (uint stream_id, uint component_id, string foundation); [Version (since = "0.1.8")] public signal void new_candidate_full (Nice.Candidate candidate); [Version (deprecated = true, deprecated_since = "0.1.8")] public signal void new_remote_candidate (uint stream_id, uint component_id, string foundation); [Version (since = "0.1.8")] public signal void new_remote_candidate_full (Nice.Candidate candidate); [Version (deprecated = true, deprecated_since = "0.1.8")] public signal void new_selected_pair (uint stream_id, uint component_id, string lfoundation, string rfoundation); [Version (since = "0.1.8")] public signal void new_selected_pair_full (uint stream_id, uint component_id, Nice.Candidate lcandidate, Nice.Candidate rcandidate); [Version (since = "0.0.11")] public signal void reliable_transport_writable (uint stream_id, uint component_id); [Version (since = "0.1.5")] public signal void streams_removed ([CCode (array_length = false, array_null_terminated = true)] uint[] stream_ids); } [CCode (cheader_filename = "nice.h", copy_function = "nice_candidate_copy", free_function = "nice_candidate_free")] [Compact] public class Candidate { public Nice.Address addr; public Nice.Address base_addr; public uint component_id; [CCode (array_length = false)] public weak char foundation[33]; public weak string password; public uint32 priority; public void* sockptr; public uint stream_id; public Nice.CandidateTransport transport; public Nice.TurnServer turn; public Nice.CandidateType type; public weak string username; [CCode (has_construct_function = false)] public Candidate (Nice.CandidateType type); public Nice.Candidate copy (); [Version (since = "0.1.15")] public bool equal_target (Nice.Candidate candidate2); public void free (); } [CCode (cheader_filename = "nice.h", has_type_id = false)] public struct Address { [CCode (cname = "s.addr")] public void* s_addr; [CCode (cname = "s.ip4")] public void* s_ip4; [CCode (cname = "s.ip6")] public void* s_ip6; public void copy_to_sockaddr (void* sin); public bool equal (Nice.Address b); [Version (since = "0.1.8")] public bool equal_no_port (Nice.Address b); public void free (); public uint get_port (); public void init (); public int ip_version (); public bool is_private (); public bool is_valid (); public void set_from_sockaddr (void* sin); public bool set_from_string (string str); public void set_ipv4 (uint32 addr_ipv4); public void set_ipv6 (uint8 addr_ipv6); public void set_port (uint port); public void to_string ([CCode (array_length = false, type = "gchar*")] char[] dst); } [CCode (cheader_filename = "nice.h", has_type_id = false)] [Version (since = "0.1.5")] public struct InputMessage { [CCode (array_length_cname = "n_buffers")] public weak GLib.InputVector[] buffers; public int n_buffers; public Nice.Address from; public size_t length; } [CCode (cheader_filename = "nice.h", has_type_id = false)] [Version (since = "0.1.5")] public struct OutputMessage { [CCode (array_length_cname = "n_buffers")] public weak GLib.OutputVector[] buffers; public int n_buffers; } [CCode (cheader_filename = "nice.h", cname = "TurnServer", has_type_id = false)] public struct TurnServer { public int ref_count; public Nice.Address server; public weak string username; public weak string password; public Nice.RelayType type; } [CCode (cheader_filename = "nice.h", cprefix = "NICE_AGENT_OPTION_", has_type_id = false)] [Flags] [Version (since = "0.1.15")] public enum AgentOption { REGULAR_NOMINATION, RELIABLE, LITE_MODE, ICE_TRICKLE, SUPPORT_RENOMINATION } [CCode (cheader_filename = "nice.h", cprefix = "NICE_CANDIDATE_TRANSPORT_", has_type_id = false)] public enum CandidateTransport { UDP, TCP_ACTIVE, TCP_PASSIVE, TCP_SO } [CCode (cheader_filename = "nice.h", cprefix = "NICE_CANDIDATE_TYPE_", has_type_id = false)] public enum CandidateType { HOST, SERVER_REFLEXIVE, PEER_REFLEXIVE, RELAYED } [CCode (cheader_filename = "nice.h", cprefix = "NICE_COMPATIBILITY_", has_type_id = false)] public enum Compatibility { RFC5245, DRAFT19, GOOGLE, MSN, WLM2009, OC2007, OC2007R2, LAST } [CCode (cheader_filename = "nice.h", cprefix = "NICE_COMPONENT_STATE_", has_type_id = false)] public enum ComponentState { DISCONNECTED, GATHERING, CONNECTING, CONNECTED, READY, FAILED, LAST; [Version (since = "0.1.6")] public unowned string to_string (); } [CCode (cheader_filename = "nice.h", cprefix = "NICE_COMPONENT_TYPE_", has_type_id = false)] public enum ComponentType { RTP, RTCP } [CCode (cheader_filename = "nice.h", cprefix = "NICE_NOMINATION_MODE_", has_type_id = false)] [Version (since = "0.1.15")] public enum NominationMode { REGULAR, AGGRESSIVE } [CCode (cheader_filename = "nice.h", cprefix = "NICE_PROXY_TYPE_", has_type_id = false)] [Version (since = "0.0.4")] public enum ProxyType { NONE, SOCKS5, HTTP, LAST } [CCode (cheader_filename = "nice.h", cname = "PseudoTcpDebugLevel", cprefix = "PSEUDO_TCP_DEBUG_", has_type_id = false)] [Version (since = "0.0.11")] public enum PseudoTcpDebugLevel { NONE, NORMAL, VERBOSE } [CCode (cheader_filename = "nice.h", cname = "PseudoTcpShutdown", cprefix = "PSEUDO_TCP_SHUTDOWN_", has_type_id = false)] [Version (since = "0.1.8")] public enum PseudoTcpShutdown { RD, WR, RDWR } [CCode (cheader_filename = "nice.h", cname = "PseudoTcpState", cprefix = "PSEUDO_TCP_", has_type_id = false)] [Version (since = "0.0.11")] public enum PseudoTcpState { LISTEN, SYN_SENT, SYN_RECEIVED, ESTABLISHED, CLOSED, FIN_WAIT_1, FIN_WAIT_2, CLOSING, TIME_WAIT, CLOSE_WAIT, LAST_ACK } [CCode (cheader_filename = "nice.h", cname = "PseudoTcpWriteResult", cprefix = "WR_", has_type_id = false)] [Version (since = "0.0.11")] public enum PseudoTcpWriteResult { SUCCESS, TOO_LARGE, FAIL } [CCode (cheader_filename = "nice.h", cprefix = "NICE_RELAY_TYPE_TURN_", has_type_id = false)] public enum RelayType { UDP, TCP, TLS } [CCode (cheader_filename = "nice.h", instance_pos = 4.9)] public delegate void AgentRecvFunc (Nice.Agent agent, uint stream_id, uint component_id, [CCode (array_length_cname = "len", array_length_pos = 3.5, array_length_type = "guint", type = "gchar*")] uint8[] buf); [CCode (cheader_filename = "nice.h", cname = "NICE_AGENT_MAX_REMOTE_CANDIDATES")] public const int AGENT_MAX_REMOTE_CANDIDATES; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_DIRECTION_MS_PREF_ACTIVE")] public const int CANDIDATE_DIRECTION_MS_PREF_ACTIVE; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_DIRECTION_MS_PREF_PASSIVE")] public const int CANDIDATE_DIRECTION_MS_PREF_PASSIVE; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_MAX_FOUNDATION")] public const int CANDIDATE_MAX_FOUNDATION; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TRANSPORT_MS_PREF_TCP")] public const int CANDIDATE_TRANSPORT_MS_PREF_TCP; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TRANSPORT_MS_PREF_UDP")] public const int CANDIDATE_TRANSPORT_MS_PREF_UDP; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_HOST")] public const int CANDIDATE_TYPE_PREF_HOST; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_NAT_ASSISTED")] public const int CANDIDATE_TYPE_PREF_NAT_ASSISTED; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_PEER_REFLEXIVE")] public const int CANDIDATE_TYPE_PREF_PEER_REFLEXIVE; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_RELAYED")] public const int CANDIDATE_TYPE_PREF_RELAYED; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_RELAYED_UDP")] public const int CANDIDATE_TYPE_PREF_RELAYED_UDP; [CCode (cheader_filename = "nice.h", cname = "NICE_CANDIDATE_TYPE_PREF_SERVER_REFLEXIVE")] public const int CANDIDATE_TYPE_PREF_SERVER_REFLEXIVE; [CCode (cheader_filename = "nice.h")] public static void debug_disable (bool with_stun); [CCode (cheader_filename = "nice.h")] public static void debug_enable (bool with_stun); [CCode (cheader_filename = "nice.h")] public static string? interfaces_get_ip_for_interface (string interface_name); [CCode (cheader_filename = "nice.h")] public static GLib.List interfaces_get_local_interfaces (); [CCode (cheader_filename = "nice.h")] public static GLib.List interfaces_get_local_ips (bool include_loopback); [CCode (cheader_filename = "nice.h", cname = "pseudo_tcp_set_debug_level")] [Version (since = "0.0.11")] public static void pseudo_tcp_set_debug_level (Nice.PseudoTcpDebugLevel level); }