Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • protocols/jabber/jabber.h

    r1c3008a rc6ca3ee  
    2727#include <glib.h>
    2828
     29#include "xmltree.h"
    2930#include "bitlbee.h"
    3031#include "md5.h"
    31 #include "xmltree.h"
    3232
    3333extern GSList *jabber_connections;
     
    6060} jabber_buddy_flags_t;
    6161
    62 /* Stores a streamhost's (a.k.a. proxy) data */
    63 typedef struct
    64 {
    65         char *jid;
    66         char *host;
    67         char port[6];
    68 } jabber_streamhost_t;
    69 
    7062typedef enum
    7163{
     
    9890        GHashTable *node_cache;
    9991        GHashTable *buddies;
    100 
    101         GSList *filetransfers;
    102         GSList *streamhosts;
    103         int have_streamhosts;
    10492};
    10593
     
    131119        struct jabber_away_state *away_state;
    132120        char *away_message;
    133         GSList *features;
    134121       
    135122        time_t last_act;
     
    145132        char *my_full_jid; /* Separate copy because of case sensitivity. */
    146133        struct jabber_buddy *me;
    147 };
    148 
    149 struct jabber_transfer
    150 {
    151         /* bitlbee's handle for this transfer */
    152         file_transfer_t *ft;
    153 
    154         /* the stream's private handle */
    155         gpointer streamhandle;
    156 
    157         /* timeout for discover queries */
    158         gint disco_timeout;
    159         gint disco_timeout_fired;
    160 
    161         struct im_connection *ic;
    162 
    163         struct jabber_buddy *bud;
    164 
    165         int watch_in;
    166         int watch_out;
    167 
    168         char *ini_jid;
    169         char *tgt_jid;
    170         char *iq_id;
    171         char *sid;
    172         int accepted;
    173 
    174         size_t bytesread, byteswritten;
    175         int fd;
    176         struct sockaddr_storage saddr;
    177134};
    178135
     
    202159
    203160/* Some supported extensions/legacy stuff */
    204 #define XMLNS_AUTH         "jabber:iq:auth"                                      /* XEP-0078 */
    205 #define XMLNS_VERSION      "jabber:iq:version"                                   /* XEP-0092 */
    206 #define XMLNS_TIME         "jabber:iq:time"                                      /* XEP-0090 */
    207 #define XMLNS_PING         "urn:xmpp:ping"                                       /* XEP-0199 */
    208 #define XMLNS_VCARD        "vcard-temp"                                          /* XEP-0054 */
    209 #define XMLNS_DELAY        "jabber:x:delay"                                      /* XEP-0091 */
    210 #define XMLNS_XDATA        "jabber:x:data"                                       /* XEP-0004 */
    211 #define XMLNS_CHATSTATES   "http://jabber.org/protocol/chatstates"               /* XEP-0085 */
    212 #define XMLNS_DISCO_INFO   "http://jabber.org/protocol/disco#info"               /* XEP-0030 */
    213 #define XMLNS_DISCO_ITEMS  "http://jabber.org/protocol/disco#items"              /* XEP-0030 */
    214 #define XMLNS_MUC          "http://jabber.org/protocol/muc"                      /* XEP-0045 */
    215 #define XMLNS_MUC_USER     "http://jabber.org/protocol/muc#user"                 /* XEP-0045 */
    216 #define XMLNS_CAPS         "http://jabber.org/protocol/caps"                     /* XEP-0115 */
    217 #define XMLNS_FEATURE      "http://jabber.org/protocol/feature-neg"              /* XEP-0020 */
    218 #define XMLNS_SI           "http://jabber.org/protocol/si"                       /* XEP-0095 */
    219 #define XMLNS_FILETRANSFER "http://jabber.org/protocol/si/profile/file-transfer" /* XEP-0096 */
    220 #define XMLNS_BYTESTREAMS  "http://jabber.org/protocol/bytestreams"              /* XEP-0065 */
    221 #define XMLNS_IBB          "http://jabber.org/protocol/ibb"                      /* XEP-0047 */
     161#define XMLNS_AUTH         "jabber:iq:auth"                     /* XEP-0078 */
     162#define XMLNS_VERSION      "jabber:iq:version"                  /* XEP-0092 */
     163#define XMLNS_TIME         "jabber:iq:time"                     /* XEP-0090 */
     164#define XMLNS_PING         "urn:xmpp:ping"                      /* XEP-0199 */
     165#define XMLNS_VCARD        "vcard-temp"                         /* XEP-0054 */
     166#define XMLNS_DELAY        "jabber:x:delay"                     /* XEP-0091 */
     167#define XMLNS_CHATSTATES   "http://jabber.org/protocol/chatstates"  /* 0085 */
     168#define XMLNS_DISCOVER     "http://jabber.org/protocol/disco#info"  /* 0030 */
     169#define XMLNS_MUC          "http://jabber.org/protocol/muc"     /* XEP-0045 */
     170#define XMLNS_MUC_USER     "http://jabber.org/protocol/muc#user"/* XEP-0045 */
     171#define XMLNS_CAPS         "http://jabber.org/protocol/caps"    /* XEP-0115 */
    222172
    223173/* iq.c */
     
    229179int jabber_add_to_roster( struct im_connection *ic, char *handle, char *name );
    230180int jabber_remove_from_roster( struct im_connection *ic, char *handle );
    231 xt_status jabber_iq_query_features( struct im_connection *ic, char *bare_jid );
    232 xt_status jabber_iq_query_server( struct im_connection *ic, char *jid, char *xmlns );
    233 
    234 /* si.c */
    235 int jabber_si_handle_request( struct im_connection *ic, struct xt_node *node, struct xt_node *sinode );
    236 void jabber_si_transfer_request( struct im_connection *ic, file_transfer_t *ft, char *who );
    237 void jabber_si_free_transfer( file_transfer_t *ft);
    238 
    239 /* s5bytestream.c */
    240 int jabber_bs_recv_request( struct im_connection *ic, struct xt_node *node, struct xt_node *qnode);
    241 gboolean jabber_bs_send_start( struct jabber_transfer *tf );
    242 gboolean jabber_bs_send_write( file_transfer_t *ft, char *buffer, unsigned int len );
    243181
    244182/* message.c */
     
    254192char *set_eval_tls( set_t *set, char *value );
    255193struct xt_node *jabber_make_packet( char *name, char *type, char *to, struct xt_node *children );
    256 struct xt_node *jabber_make_error_packet( struct xt_node *orig, char *err_cond, char *err_type, char *err_code );
     194struct xt_node *jabber_make_error_packet( struct xt_node *orig, char *err_cond, char *err_type );
    257195void jabber_cache_add( struct im_connection *ic, struct xt_node *node, jabber_cache_event func );
    258196struct xt_node *jabber_cache_get( struct im_connection *ic, char *id );
     
    303241
    304242/* conference.c */
    305 struct groupchat *jabber_chat_join( struct im_connection *ic, const char *room, const char *nick, const char *password );
     243struct groupchat *jabber_chat_join( struct im_connection *ic, char *room, char *nick, char *password );
    306244struct groupchat *jabber_chat_by_jid( struct im_connection *ic, const char *name );
    307245void jabber_chat_free( struct groupchat *c );
Note: See TracChangeset for help on using the changeset viewer.