diff options
author | Youness Alaoui <youness.alaoui@collabora.co.uk> | 2014-04-08 23:58:01 -0400 |
---|---|---|
committer | Olivier CrĂȘte <olivier.crete@ocrete.ca> | 2014-05-15 09:44:00 -0400 |
commit | 6263028ed29d87a44970f928914cb89dfa659604 (patch) | |
tree | 405a9e7f744ba387ae16ef576e5e3275b44c7a1c /socket/udp-turn.h | |
parent | b59c4bb54c135db56729d4187179f16f49b0a4c0 (diff) | |
download | libnice-6263028ed29d87a44970f928914cb89dfa659604.tar.gz |
Rename turn files and API to be UDP specific
The TURN-TCP RFC is very different from TURN-UDP, the current turn and tcp-turn
files were only for UDP TURN RFC and UDP TURN using TCP transport.
When we implement TCP-TURN, we'll need a different algorithm, so I
renamed the files and API to avoid any confusion.
Diffstat (limited to 'socket/udp-turn.h')
-rw-r--r-- | socket/udp-turn.h | 82 |
1 files changed, 82 insertions, 0 deletions
diff --git a/socket/udp-turn.h b/socket/udp-turn.h new file mode 100644 index 0000000..ba31636 --- /dev/null +++ b/socket/udp-turn.h @@ -0,0 +1,82 @@ +/* + * This file is part of the Nice GLib ICE library. + * + * (C) 2008 Collabora Ltd. + * Contact: Youness Alaoui + * (C) 2008 Nokia Corporation + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is the Nice GLib ICE library. + * + * The Initial Developers of the Original Code are Collabora Ltd and Nokia + * Corporation. All Rights Reserved. + * + * Contributors: + * Youness Alaoui, Collabora Ltd. + * + * Alternatively, the contents of this file may be used under the terms of the + * the GNU Lesser General Public License Version 2.1 (the "LGPL"), in which + * case the provisions of LGPL are applicable instead of those above. If you + * wish to allow use of your version of this file only under the terms of the + * LGPL and not to allow others to use your version of this file under the + * MPL, indicate your decision by deleting the provisions above and replace + * them with the notice and other provisions required by the LGPL. If you do + * not delete the provisions above, a recipient may use your version of this + * file under either the MPL or the LGPL. + */ + +#ifndef _UDP_TURN_H +#define _UDP_TURN_H + + +typedef enum { + NICE_TURN_SOCKET_COMPATIBILITY_DRAFT9, + NICE_TURN_SOCKET_COMPATIBILITY_GOOGLE, + NICE_TURN_SOCKET_COMPATIBILITY_MSN, + NICE_TURN_SOCKET_COMPATIBILITY_OC2007, + NICE_TURN_SOCKET_COMPATIBILITY_RFC5766, +} NiceTurnSocketCompatibility; + +#include "socket.h" +#include "stun/stunmessage.h" + + +G_BEGIN_DECLS + +guint +nice_udp_turn_socket_parse_recv_message (NiceSocket *sock, NiceSocket **from_sock, + NiceInputMessage *message); + +gsize +nice_udp_turn_socket_parse_recv (NiceSocket *sock, NiceSocket **from_sock, + NiceAddress *from, gsize len, guint8 *buf, + NiceAddress *recv_from, guint8 *recv_buf, gsize recv_len); + +gboolean +nice_udp_turn_socket_set_peer (NiceSocket *sock, NiceAddress *peer); + +NiceSocket * +nice_udp_turn_socket_new (GMainContext *ctx, NiceAddress *addr, + NiceSocket *base_socket, NiceAddress *server_addr, + gchar *username, gchar *password, NiceTurnSocketCompatibility compatibility); + +void +nice_udp_turn_socket_set_ms_realm(NiceSocket *sock, StunMessage *msg); + +void +nice_udp_turn_socket_set_ms_connection_id (NiceSocket *sock, StunMessage *msg); + + +G_END_DECLS + +#endif /* _UDP_TURN_H */ + |