X-Git-Url: https://code.citadel.org/?p=citadel.git;a=blobdiff_plain;f=citadel%2Fmodules%2Fxmpp%2Fserv_xmpp.h;fp=citadel%2Fmodules%2Fxmpp%2Fserv_xmpp.h;h=2137ea33088967f5be102c9967b7f29fbc5ba53c;hp=715abd41dc0524d05fc301c1e9a84773d5c7583c;hb=85a4d8d0b5af0edda2a0fa27c66457b775eb1209;hpb=0635359a1b34a42926f5ab9566cb91d5071c438c diff --git a/citadel/modules/xmpp/serv_xmpp.h b/citadel/modules/xmpp/serv_xmpp.h index 715abd41d..2137ea330 100644 --- a/citadel/modules/xmpp/serv_xmpp.h +++ b/citadel/modules/xmpp/serv_xmpp.h @@ -16,6 +16,10 @@ * */ +#include "xmpp_xmacros.h" +#include "xmpp_util.h" + + typedef struct _citxmpp { /* Information about the current session */ StrBuf *OutBuf; XML_Parser xp; /* XML parser instance for incoming client stream */ @@ -26,10 +30,8 @@ typedef struct _citxmpp { /* Information about the current session */ char client_jid[256]; /* "full JID" of the client */ int last_event_processed; - char iq_type[256]; /* for stanzas */ - char iq_id[256]; - char iq_from[256]; - char iq_to[256]; + TheToken_iq IQ; + char iq_client_username[256]; /* username requested by the client (NON SASL ONLY) */ char iq_client_password[256]; /* password requested by the client (NON SASL ONLY) */ char iq_client_resource[256]; /* resource name requested by the client */ @@ -80,14 +82,14 @@ void xmpp_command_loop(void); void xmpp_async_loop(void); void xmpp_sasl_auth(char *, char *); void xmpp_output_auth_mechs(void); -void xmpp_query_namespace(char *, char *, char *, char *); +void xmpp_query_namespace(TheToken_iq *iq, char *); void xmpp_output_incoming_messages(void); void xmpp_queue_event(int, char *); void xmpp_process_events(void); void xmpp_presence_notify(char *, int); void xmpp_roster_item(struct CitContext *); void xmpp_send_message(char *, char *); -void xmpp_non_sasl_authenticate(char *, char *, char *, char *); +void xmpp_non_sasl_authenticate(StrBuf *IQ_id, char *, char *, char *); void xmpp_massacre_roster(void); void xmpp_delete_old_buddies_who_no_longer_exist_from_the_client_roster(void); int xmpp_is_visible(struct CitContext *from, struct CitContext *to_whom); @@ -106,15 +108,6 @@ extern int XMPPSrvDebugEnable; "XMPP: " FORMAT); -void XUnbuffer(void); -void XPutBody(const char *Str, long Len); -void XPutProp(const char *Str, long Len); -void XPut(const char *Str, long Len); -#define XPUT(CONSTSTR) XPut(CONSTSTR, sizeof(CONSTSTR) -1) - -void XPrintf(const char *Format, ...); - - void AddXMPPStartHandler(const char *key, long len, xmpp_handler_func Handler, @@ -126,19 +119,5 @@ void AddXMPPEndHandler(const char *key, int Flags); -#define XCLOSED (1<<0) -void XPrint(const char *Token, long tlen, - int Flags, - ...); - -#define TYPE_STR 1 -#define TYPE_OPTSTR 2 -#define TYPE_INT 3 -#define TYPE_BODYSTR 4 -#define TYPE_ARGEND 5 -#define XPROPERTY(NAME, VALUE, VLEN) TYPE_STR, NAME, sizeof(NAME)-1, VALUE, VLEN -#define XOPROPERTY(NAME, VALUE, VLEN) TYPE_OPTSTR, NAME, sizeof(NAME)-1, VALUE, VLEN -#define XCPROPERTY(NAME, VALUE) TYPE_STR, NAME, sizeof(NAME)-1, VALUE, sizeof(VALUE) - 1 -#define XIPROPERTY(NAME, LVALUE) TYPE_INT, NAME, SIZEOF(NAME)-1 -#define XBODY(VALUE, VLEN) TYPE_BODYSTR, VALUE, VLEN -#define XCFGBODY(WHICH) TYPE_BODYSTR, config.WHICH, configlen.WHICH + +