citadel
About: Citadel is an advanced messaging and collaboration system for groupware and BBS applications (preferred OS: Linux).
![]() ![]() |
Go to the source code of this file.
Data Structures | |
struct | _citxmpp |
struct | xmpp_event |
Macros | |
#define | XMPP ((citxmpp *)CC->session_specific_data) |
Typedefs | |
typedef struct _citxmpp | citxmpp |
Enumerations | |
enum | { XMPP_EVT_LOGIN , XMPP_EVT_LOGOUT } |
Functions | |
void | xmpp_cleanup_function (void) |
void | xmpp_greeting (void) |
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_wholist_presence_dump (void) |
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 *) |
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) |
char * | xmlesc (char *buf, char *str, int bufsiz) |
Variables | |
struct xmpp_event * | xmpp_queue |
int | queue_event_seq |
Definition at line 43 of file serv_xmpp.h.
anonymous enum |
Enumerator | |
---|---|
XMPP_EVT_LOGIN | |
XMPP_EVT_LOGOUT |
Definition at line 57 of file serv_xmpp.h.
char * xmlesc | ( | char * | buf, |
char * | str, | ||
int | bufsiz | ||
) |
Definition at line 100 of file serv_xmpp.c.
References Ctdl_GetUtf8SequenceLength().
Referenced by xmpp_destroy_buddy(), xmpp_indicate_presence(), xmpp_non_sasl_authenticate(), xmpp_output_incoming_messages(), xmpp_query_namespace(), xmpp_roster_item(), xmpp_stream_start(), and xmpp_xml_end().
void xmpp_async_loop | ( | void | ) |
Definition at line 631 of file serv_xmpp.c.
References xmpp_output_incoming_messages(), and xmpp_process_events().
Referenced by ctdl_module_init_xmpp(), and xmpp_queue_event().
void xmpp_cleanup_function | ( | void | ) |
Definition at line 551 of file serv_xmpp.c.
References CC, free(), XMPP, and xmpp_command_loop().
Referenced by ctdl_module_init_xmpp().
void xmpp_command_loop | ( | void | ) |
Definition at line 611 of file serv_xmpp.c.
References CC, client_read_random_blob(), KILLME_CLIENT_DISCONNECTED, and XMPP.
Referenced by ctdl_module_init_xmpp(), and xmpp_cleanup_function().
void xmpp_delete_old_buddies_who_no_longer_exist_from_the_client_roster | ( | void | ) |
Definition at line 343 of file xmpp_presence.c.
References CC, CitContext::cs_principal_id, CtdlGetContextArray(), free(), xmpp_destroy_buddy(), xmpp_fetch_mortuary(), and xmpp_is_visible().
Referenced by xmpp_query_namespace().
void xmpp_greeting | ( | void | ) |
Definition at line 573 of file serv_xmpp.c.
References CC, client_set_inbound_buf(), KILLME_XML_PARSER, malloc(), queue_event_seq, XMPP, xmpp_xml_chardata(), xmpp_xml_end(), and xmpp_xml_start().
Referenced by ctdl_module_init_xmpp().
int xmpp_is_visible | ( | struct CitContext * | from, |
struct CitContext * | to_whom | ||
) |
Definition at line 66 of file xmpp_presence.c.
References ctdluser::axlevel, CitContext::can_receive_im, CitContext::cs_flags, CS_STEALTH, CitContext::logged_in, CitContext::user, and ctdluser::usernum.
Referenced by xmpp_delete_old_buddies_who_no_longer_exist_from_the_client_roster(), xmpp_iq_roster_query(), xmpp_massacre_roster(), xmpp_presence_notify(), and xmpp_wholist_presence_dump().
void xmpp_massacre_roster | ( | void | ) |
Definition at line 308 of file xmpp_presence.c.
References CC, CitContext::cs_principal_id, CtdlGetContextArray(), free(), xmpp_fetch_mortuary(), xmpp_is_visible(), and xmpp_store_mortuary().
Referenced by xmpp_xml_end().
void xmpp_non_sasl_authenticate | ( | char * | iq_id, |
char * | username, | ||
char * | password | ||
) |
Definition at line 131 of file xmpp_sasl_service.c.
References CC, cprintf(), CtdlLoginExistingUser(), CtdlTryPassword(), CtdlUserLogout(), login_ok, pass_ok, and xmlesc().
Referenced by xmpp_xml_end().
void xmpp_output_auth_mechs | ( | void | ) |
Definition at line 87 of file xmpp_sasl_service.c.
References cprintf().
Referenced by xmpp_stream_start().
void xmpp_output_incoming_messages | ( | void | ) |
Definition at line 46 of file xmpp_messages.c.
References begin_critical_section(), CC, cprintf(), end_critical_section(), free(), S_SESSION_TABLE, ExpressMessage::sender_email, ExpressMessage::text, xmlesc(), and XMPP.
Referenced by xmpp_async_loop().
void xmpp_presence_notify | ( | char * | presence_jid, |
int | event_type | ||
) |
Definition at line 157 of file xmpp_presence.c.
References CC, cprintf(), CitContext::cs_principal_id, CtdlGetContextArray(), free(), xmpp_destroy_buddy(), XMPP_EVT_LOGIN, xmpp_indicate_presence(), xmpp_is_visible(), and xmpp_roster_item().
Referenced by xmpp_process_events().
void xmpp_process_events | ( | void | ) |
Definition at line 105 of file xmpp_queue.c.
References CC, xmpp_event::event_jid, xmpp_event::event_seq, xmpp_event::event_type, xmpp_event::next, xmpp_event::session_which_generated_this_event, XMPP, XMPP_EVT_LOGIN, XMPP_EVT_LOGOUT, xmpp_presence_notify(), and xmpp_queue.
Referenced by xmpp_async_loop().
void xmpp_query_namespace | ( | char * | iq_id, |
char * | iq_from, | ||
char * | iq_to, | ||
char * | query_xmlns | ||
) |
Definition at line 88 of file xmpp_query_namespace.c.
References cprintf(), xmlesc(), XMPP, xmpp_delete_old_buddies_who_no_longer_exist_from_the_client_roster(), and xmpp_iq_roster_query().
Referenced by xmpp_xml_end().
void xmpp_queue_event | ( | int | event_type, |
char * | email_addr | ||
) |
Definition at line 42 of file xmpp_queue.c.
References begin_critical_section(), CC, ContextList, end_critical_section(), xmpp_event::event_jid, xmpp_event::event_seq, xmpp_event::event_time, xmpp_event::event_type, free(), CitContext::h_async_function, CitContext::logged_in, malloc(), CitContext::next, xmpp_event::next, queue_event_seq, S_SESSION_TABLE, S_XMPP_QUEUE, xmpp_event::session_which_generated_this_event, set_async_waiting(), xmpp_async_loop(), and xmpp_queue.
Referenced by xmpp_login_hook(), and xmpp_logout_hook().
void xmpp_roster_item | ( | struct CitContext * | cptr | ) |
Definition at line 44 of file xmpp_query_namespace.c.
References cprintf(), CitContext::cs_principal_id, CtdlGetConfigStr(), ctdluser::fullname, CitContext::user, and xmlesc().
Referenced by xmpp_iq_roster_query(), and xmpp_presence_notify().
void xmpp_sasl_auth | ( | char * | sasl_auth_mech, |
char * | authstring | ||
) |
Definition at line 97 of file xmpp_sasl_service.c.
References CC, cprintf(), CtdlUserLogout(), and xmpp_auth_plain().
Referenced by xmpp_xml_end().
void xmpp_send_message | ( | char * | message_to, |
char * | message_body | ||
) |
Definition at line 77 of file xmpp_messages.c.
References CitContext::can_receive_im, CC, ContextList, CitContext::cs_principal_id, free(), ctdluser::fullname, CitContext::logged_in, CitContext::next, PerformXmsgHooks(), CitContext::user, and XMPP.
Referenced by xmpp_xml_end().
void xmpp_wholist_presence_dump | ( | void | ) |
Definition at line 85 of file xmpp_presence.c.
References CC, CitContext::cs_principal_id, CtdlGetContextArray(), free(), xmpp_indicate_presence(), and xmpp_is_visible().
Referenced by xmpp_xml_end().
|
extern |
Definition at line 40 of file xmpp_queue.c.
Referenced by xmpp_greeting(), and xmpp_queue_event().
|
extern |
Definition at line 56 of file serv_xmpp.c.
Referenced by xmpp_process_events(), and xmpp_queue_event().