#include <time.h>
#include "../../ut.h"
#include "../../str.h"
#include "../../parser/parse_to.h"
#include "../../parser/parse_uri.h"
#include "../../parser/parse_expires.h"
#include "../../parser/parse_event.h"
#include "../../parser/parse_content.h"
#include "../../lock_ops.h"
#include "../../hash_func.h"
#include "../../cmpapi.h"
#include "../../db/db.h"
#include "presence.h"
#include "notify.h"
#include "utils_func.h"
#include "publish.h"
#include "presentity.h"

Go to the source code of this file.
Data Structures | |
| struct | p_modif |
Functions | |
| int | handle_publish (struct sip_msg *msg, char *sender_uri, char *str2) |
| void | msg_presentity_clean (unsigned int ticks, void *param) |
Variables | |
| static str | pu_400a_rpl = str_init("Bad request") |
| static str | pu_400b_rpl = str_init("Invalid request") |
| static str | pu_489_rpl = str_init("Bad Event") |
| static str | pu_500_rpl = str_init("Server Internal Error") |
| gen_lock_set_t * | set |
Definition in file publish.c.
| int handle_publish | ( | struct sip_msg * | msg, | |
| char * | sender_uri, | |||
| char * | str2 | |||
| ) |
PUBLISH request handling
Definition at line 284 of file publish.c.
References BAD_EVENT_CODE, hdr_field::body, buf, buf_len, cmp_hdrname_strzn(), sip_msg::content_length, counter, ERR_MEM, sip_msg::event, EVENT_OTHER, EVENT_PRESENCE, sip_msg::expires, extract_sphere(), generate_ETag(), get_body(), get_content_length, get_content_type, HDR_EOH_F, sip_msg::headers, sip_uri::host, _str::len, LM_DBG, LM_ERR, max_expires, hdr_field::name, new_presentity(), hdr_field::next, NULL, parse_event(), parse_expires(), parse_headers(), parse_sip_msg_uri(), parse_uri(), hdr_field::parsed, sip_msg::parsed_uri, pkg_free, pkg_malloc, PKG_MEM_STR, pv_printf(), _str::s, search_event(), send_error_reply(), sphere_enable, SUBTYPE_PIDFXML, update_presentity(), and sip_uri::user.
| void msg_presentity_clean | ( | unsigned int | ticks, | |
| void * | param | |||
| ) |
Definition at line 67 of file publish.c.
References contains_event(), DB_INT, db_func::delete, delete_phtable(), presentity::domain, domain, domain_col, ERR_MEM, presentity::etag, presentity::event, free_event_params(), db_func::free_result, pres_ev::get_rules_doc, db_val_t::int_val, _str::len, LM_DBG, LM_ERR, db_res::n, db_val_t::nul, NULL, OP_LT, p_modif::p, pa_db, pa_dbf, event::params, event::parsed, pkg_free, pkg_malloc, PKG_MEM_STR, PKG_MEM_TYPE, presentity_table, publ_notify(), db_func::query, ROW_VALUES, db_res::rows, _str::s, str_domain_col, str_etag_col, str_event_col, str_expires_col, str_init, str_username_col, db_val_t::string_val, db_val_t::type, uandd_to_uri(), p_modif::uri, db_func::use_table, presentity::user, user, user_col, and db_val_t::val.
Referenced by mi_cleanup(), and mod_init().
str pu_400a_rpl = str_init("Bad request") [static] |
str pu_400b_rpl = str_init("Invalid request") [static] |
str pu_489_rpl = str_init("Bad Event") [static] |
str pu_500_rpl = str_init("Server Internal Error") [static] |
| gen_lock_set_t* set |
1.5.6