|
jabberd2
2.2.16
|
Go to the source code of this file.
Data Structures | |
| struct | acl_s |
| struct | router_st |
| struct | component_st |
| a single component More... | |
| struct | routes_st |
| struct | alias_st |
| union | xhashv |
| session packet handling More... | |
Typedefs | |
| typedef struct router_st * | router_t |
| typedef struct component_st * | component_t |
| typedef struct routes_st * | routes_t |
| typedef struct alias_st * | alias_t |
| typedef struct acl_s * | acl_t |
Enumerations | |
| enum | route_type_t { route_SINGLE = 0x00, route_MULTI_TO = 0x10, route_MULTI_FROM = 0x11, route_NONE = 0x00, route_UNICAST = 0x10, route_BROADCAST = 0x11, route_ADV = 0x20, route_ADV_UN = 0x21, route_ERROR = 0x40 } |
| route types More... | |
Functions | |
| int | router_mio_callback (mio_t m, mio_action_t a, mio_fd_t fd, void *data, void *arg) |
| void | router_sx_handshake (sx_t s, sx_buf_t buf, void *arg) |
| xht | aci_load (router_t r) |
| void | aci_unload (xht aci) |
| unload aci table | |
| int | aci_check (xht acls, const char *type, const char *name) |
| see if a username is in an acl | |
| int | user_table_load (router_t r) |
| user table manager | |
| void | user_table_unload (router_t r) |
| int | filter_load (router_t r) |
| void | filter_unload (router_t r) |
| filter manager | |
| int | filter_packet (router_t r, nad_t nad) |
| int | message_log (nad_t nad, router_t r, const unsigned char *msg_from, const unsigned char *msg_to) |
| void | routes_free (routes_t routes) |
| typedef struct component_st* component_t |
| enum route_type_t |
route types
| int router_mio_callback | ( | mio_t | m, |
| mio_action_t | a, | ||
| mio_fd_t | fd, | ||
| void * | data, | ||
| void * | arg | ||
| ) |
Definition at line 1028 of file router.c.
References action_READ, log_debug, ZONE, mio_fd_st::fd, component_st::last_activity, sx_kill(), component_st::s, sx_can_read(), action_WRITE, sx_can_write(), action_CLOSE, component_st::r, log_write(), router_st::log, component_st::ip, component_st::port, xhash_walk(), component_st::routes, _router_route_unbind_walker(), xhash_zap(), router_st::components, xhash_free(), jqueue_free(), rate_free(), jqueue_push(), action_ACCEPT, j_inet_getport(), _router_accept_check(), router_st::fd, INET6_ADDRSTRLEN, sx_new(), router_st::sx_env, _router_sx_callback(), mio_app, router_mio_callback(), router_st::byte_rate_total, rate_new(), router_st::byte_rate_seconds, router_st::byte_rate_wait, xhash_new(), xhash_put(), sx_server_init(), SX_SSL_STARTTLS_OFFER, and SX_SASL_OFFER.
Referenced by JABBER_MAIN(), and router_mio_callback().
Definition at line 31 of file aci.c.
References log_debug, ZONE, xhash_new(), nad_find_elem(), router_st::config, config_st::nad, nad_find_attr(), NAD_AVAL_L, NAD_AVAL, NAD_CDATA_L, aci_user_st::name, NAD_CDATA, aci_user_st::next, xhash_put(), pstrdup(), and xhash_pool().
Referenced by JABBER_MAIN().
| int aci_check | ( | xht | acls, |
| const char * | type, | ||
| const char * | name | ||
| ) |
see if a username is in an acl
Definition at line 93 of file aci.c.
References log_debug, ZONE, xhash_get(), aci_user_st::next, and aci_user_st::name.
Referenced by _router_process_bind(), _announce_pkt_sm(), and _disco_pkt_sm().
| int user_table_load | ( | router_t | r | ) |
user table manager
Definition at line 25 of file user.c.
References log_debug, ZONE, router_st::users, xhash_free(), xhash_new(), config_get_one(), router_st::config, log_write(), router_st::log, nad_parse(), nad_find_elem(), NAD_CDATA_L, NAD_CDATA, xhash_put(), pstrdupx(), xhash_pool(), nad_free(), and router_st::users_load.
Referenced by JABBER_MAIN().
| void user_table_unload | ( | router_t | r | ) |
Definition at line 103 of file user.c.
References router_st::users, and xhash_free().
Referenced by JABBER_MAIN().
| int filter_load | ( | router_t | r | ) |
Definition at line 42 of file filter.c.
References log_debug, ZONE, router_st::filter, filter_unload(), config_get_one(), router_st::config, log_write(), router_st::log, router_st::filter_load, nad_parse(), nad_find_elem(), nad_find_attr(), NAD_AVAL_L, acl_s::from, NAD_AVAL, acl_s::to, acl_s::what, acl_s::redirect, acl_s::redirect_len, acl_s::error, stanza_err_REDIRECT, stanza_err_NOT_ALLOWED, _stanza_errors, _stanza_error_st::code, stanza_err_BAD_REQUEST, acl_s::log, and acl_s::next.
Referenced by JABBER_MAIN().
| void filter_unload | ( | router_t | r | ) |
filter manager
Definition at line 25 of file filter.c.
References router_st::filter, acl_s::next, acl_s::from, acl_s::to, acl_s::what, and acl_s::redirect.
Referenced by JABBER_MAIN(), and filter_load().
Definition at line 182 of file filter.c.
References nad_find_attr(), NAD_AVAL_L, NAD_AVAL, router_st::filter, acl_s::next, acl_s::from, acl_s::to, acl_s::what, nad_find_elem_path(), log_debug, ZONE, acl_s::log, acl_s::redirect, log_write(), router_st::log, acl_s::error, nad_set_attr(), and acl_s::redirect_len.
Referenced by _router_process_route().
| int message_log | ( | nad_t | nad, |
| router_t | r, | ||
| const unsigned char * | msg_from, | ||
| const unsigned char * | msg_to | ||
| ) |
Definition at line 1131 of file router.c.
References MAX_MESSAGE, NAD_ENAME_L, NAD_ENAME, NAD_CDATA_L, NAD_CDATA, log_write(), router_st::log, and router_st::message_logging_file.
Referenced by _router_process_route().
| void routes_free | ( | routes_t | routes | ) |
Definition at line 153 of file router.c.
References routes_st::name, and routes_st::comp.
Referenced by JABBER_MAIN().
1.7.5