jabberd2
2.3.3
|
roster publishing More...
#include "sm.h"
Go to the source code of this file.
Data Structures | |
struct | _roster_publish_active_cache_st |
struct | _roster_publish_group_cache_st |
struct | _roster_publish_st |
Typedefs | |
typedef struct _roster_publish_active_cache_st * | _roster_publish_active_cache_t |
typedef struct _roster_publish_group_cache_st * | _roster_publish_group_cache_t |
typedef struct _roster_publish_st * | roster_publish_t |
Functions | |
static void | _roster_publish_free_active_cache_walker (const char *key, int keylen, void *val, void *arg) |
static void | _roster_publish_free_group_cache_walker (const char *key, int keylen, void *val, void *arg) |
static const char * | _roster_publish_get_group_name (sm_t sm, roster_publish_t rp, const char *groupid) |
static void | _roster_publish_free_walker (xht roster, const char *key, void *val, void *arg) |
static void | _roster_publish_save_item (user_t user, item_t item) |
static int | _roster_publish_user_load (mod_instance_t mi, user_t user) |
publish the roster from the database More... | |
static void | _roster_publish_free (module_t mod) |
DLLEXPORT int | module_init (mod_instance_t mi, const char *arg) |
roster publishing
Definition in file mod_roster_publish.c.
typedef struct _roster_publish_active_cache_st* _roster_publish_active_cache_t |
Definition at line 29 of file mod_roster_publish.c.
typedef struct _roster_publish_group_cache_st* _roster_publish_group_cache_t |
Definition at line 35 of file mod_roster_publish.c.
typedef struct _roster_publish_st * roster_publish_t |
|
static |
Definition at line 60 of file mod_roster_publish.c.
References _roster_publish_active_cache_st::jid_user.
Referenced by _roster_publish_free().
|
static |
Definition at line 66 of file mod_roster_publish.c.
References _roster_publish_group_cache_st::groupid, and _roster_publish_group_cache_st::groupname.
Referenced by _roster_publish_free().
|
static |
Definition at line 78 of file mod_roster_publish.c.
References _roster_publish_st::group_cache, _roster_publish_st::group_cache_ttl, _roster_publish_group_cache_st::groupid, _roster_publish_group_cache_st::groupname, log_debug, sm_st::st, _roster_publish_group_cache_st::time, xhash_get(), xhash_new(), xhash_put(), xhash_zap(), and ZONE.
Referenced by _roster_publish_user_load().
|
static |
Definition at line 139 of file mod_roster_publish.c.
References item_st::groups, item_st::jid, jid_free(), item_st::name, and item_st::ngroups.
Referenced by _roster_publish_user_load().
Definition at line 156 of file mod_roster_publish.c.
References item_st::ask, item_st::from, item_st::groups, item_st::jid, user_st::jid, jid_full(), jid_user(), log_debug, item_st::name, item_st::ngroups, user_st::sm, sm_st::st, item_st::to, and ZONE.
Referenced by _roster_publish_user_load().
|
static |
publish the roster from the database
Definition at line 204 of file mod_roster_publish.c.
References _roster_publish_free_walker(), _roster_publish_get_group_name(), _roster_publish_save_item(), _roster_publish_active_cache_st::active, _roster_publish_st::active_cache, _roster_publish_st::active_cache_ttl, _roster_publish_st::dbtable, jid_st::domain, _roster_publish_st::fetchdomain, _roster_publish_st::fetchfixed, _roster_publish_st::fetchuser, _roster_publish_st::fixexist, _roster_publish_st::fixsubs, _roster_publish_st::forcegroups, _roster_publish_st::groupprefix, _roster_publish_st::groupprefixlen, _roster_publish_st::groupsuffix, _roster_publish_st::groupsuffixlen, user_st::jid, jid_free(), jid_full(), jid_new(), _roster_publish_active_cache_st::jid_user, jid_user(), sm_st::log, log_debug, log_write(), _roster_publish_st::mappedgroups, mod_instance_st::mod, _roster_publish_st::overridenames, module_st::private, _roster_publish_st::publish, _roster_publish_st::removedomain, user_st::roster, user_st::sm, mod_instance_st::sm, sm_st::st, _roster_publish_active_cache_st::time, xhash_get(), xhash_new(), xhash_put(), xhash_zap(), and ZONE.
Referenced by module_init().
|
static |
Definition at line 508 of file mod_roster_publish.c.
References _roster_publish_free_active_cache_walker(), _roster_publish_free_group_cache_walker(), _roster_publish_st::active_cache, _roster_publish_st::group_cache, module_st::private, xhash_free(), and xhash_walk().
Referenced by module_init().
DLLEXPORT int module_init | ( | mod_instance_t | mi, |
const char * | arg | ||
) |
Definition at line 524 of file mod_roster_publish.c.
References _roster_publish_free(), _roster_publish_user_load(), _roster_publish_st::active_cache_ttl, sm_st::config, config_get_one(), _roster_publish_st::dbtable, _roster_publish_st::fetchdomain, _roster_publish_st::fetchfixed, _roster_publish_st::fetchuser, _roster_publish_st::fixexist, _roster_publish_st::fixsubs, _roster_publish_st::forcegroups, module_st::free, _roster_publish_st::group_cache_ttl, _roster_publish_st::groupprefix, _roster_publish_st::groupprefixlen, _roster_publish_st::groupsuffix, _roster_publish_st::groupsuffixlen, module_st::init, j_atoi(), _roster_publish_st::mappedgroups, module_st::mm, mod_instance_st::mod, _roster_publish_st::overridenames, module_st::private, _roster_publish_st::publish, _roster_publish_st::removedomain, mm_st::sm, and module_st::user_load.