jingle-s5b/socks5.h
changeset 161 fa1d993d05b6
parent 158 a068e5714120
child 164 6866328b34bd
equal deleted inserted replaced
160:e149e868d501 161:fa1d993d05b6
     1 #ifndef __JINGLESOCKS5_H__
     1 #ifndef __JINGLESOCKS5_H__
     2 #define __JINGLESOCKS5_H__ 1
     2 #define __JINGLESOCKS5_H__ 1
     3 
     3 
       
     4 #include <glib.h>
       
     5 #include <gio/gio.h>
       
     6 
     4 #define NS_JINGLE_TRANSPORT_SOCKS5 "urn:xmpp:jingle:transports:s5b:1"
     7 #define NS_JINGLE_TRANSPORT_SOCKS5 "urn:xmpp:jingle:transports:s5b:1"
     5 
     8 
       
     9 
     6 typedef enum {
    10 typedef enum {
       
    11   JINGLE_S5B_DIRECT,
     7   JINGLE_S5B_ASSISTED,
    12   JINGLE_S5B_ASSISTED,
     8   JINGLE_S5B_DIRECT,
    13   JINGLE_S5B_TUNNEL,
     9   JINGLE_S5B_PROXY,
    14   JINGLE_S5B_PROXY
    10   JINGLE_S5B_TUNNEL
       
    11 } JingleS5BType;
    15 } JingleS5BType;
    12 
    16 
    13 typedef enum {
    17 typedef enum {
    14   JINGLE_S5B_TCP,
    18   JINGLE_S5B_TCP,
    15   JINGLE_S5B_UDP
    19   JINGLE_S5B_UDP
    18 typedef struct {
    22 typedef struct {
    19   JingleS5BModes mode;
    23   JingleS5BModes mode;
    20 
    24 
    21   const gchar *sid;
    25   const gchar *sid;
    22 
    26 
    23   GSocket *sock;
    27   GSocketConnection *sock;
       
    28 
       
    29   GSocketListener *listener;
    24 
    30 
    25   /**
    31   /**
    26    * This is the list of the other client's candidates.
    32    * This is the list of the other client's candidates.
    27    */
    33    */
    28   GSList *candidates;
    34   GSList *candidates;
    35 } JingleS5B;
    41 } JingleS5B;
    36  
    42  
    37 typedef struct {
    43 typedef struct {
    38   const gchar *cid;
    44   const gchar *cid;
    39 
    45 
    40   const gchar *host;
    46   GInetAddress *host;
    41 
    47 
    42   const gchar *jid;
    48   const gchar *jid;
    43 
    49 
    44   guint16 port;
    50   guint16 port;
    45 
    51 
    46   guint64 priority;
    52   guint64 priority;
    47 
    53 
    48   JingleS5BType type;
    54   JingleS5BType type;
       
    55 
       
    56   GSocket *sock;
    49 } S5BCandidate;
    57 } S5BCandidate;
    50 
    58 
    51 #endif
    59 #endif