Asterisk - The Open Source Telephony Project
18.5.0
|
#include "asterisk.h"
#include <pjsip.h>
#include <pjsip_ua.h>
#include "asterisk/res_pjsip.h"
#include "asterisk/res_pjsip_session.h"
#include "asterisk/module.h"
#include "asterisk/strings.h"
Go to the source code of this file.
Functions | |
static void | __reg_module (void) |
static void | __unreg_module (void) |
static int | add_supported (pjsip_tx_data *tdata) |
struct ast_module * | AST_MODULE_SELF_SYM (void) |
static struct ast_sip_aor * | find_aor (struct ast_sip_endpoint *endpoint, pjsip_uri *uri) |
static int | load_module (void) |
static int | path_get_string (pj_pool_t *pool, struct ast_sip_contact *contact, pj_str_t *path_str) |
Get the path string associated with this contact and tdata. More... | |
static void | path_outgoing_request (struct ast_sip_endpoint *endpoint, struct ast_sip_contact *contact, pjsip_tx_data *tdata) |
static void | path_outgoing_response (struct ast_sip_endpoint *endpoint, struct ast_sip_contact *contact, pjsip_tx_data *tdata) |
static void | path_session_outgoing_request (struct ast_sip_session *session, pjsip_tx_data *tdata) |
static void | path_session_outgoing_response (struct ast_sip_session *session, pjsip_tx_data *tdata) |
static int | unload_module (void) |
Variables | |
static struct ast_module_info | __mod_info = { .name = AST_MODULE, .flags = AST_MODFLAG_LOAD_ORDER , .description = "PJSIP Path Header Support" , .key = "This paragraph is copyright (c) 2006 by Digium, Inc. \In order for your module to load, it must return this \key via a function called \"key\". Any code which \includes this paragraph must be licensed under the GNU \General Public License version 2 or later (at your \option). In addition to Digium's general reservations \of rights, Digium expressly reserves the right to \allow other parties to license this paragraph under \different terms. Any use of Digium, Inc. trademarks or \logos (including \"Asterisk\" or \"Digium\") without \express written permission of Digium, Inc. is prohibited.\n" , .buildopt_sum = "30ef0c93b36035ec78c9cfd712d36d9b" , .support_level = AST_MODULE_SUPPORT_CORE, .load = load_module, .unload = unload_module, .load_pri = AST_MODPRI_APP_DEPEND, .requires = "res_pjsip,res_pjsip_session", } |
static const struct ast_module_info * | ast_module_info = &__mod_info |
static const pj_str_t | PATH_NAME = { "Path", 4 } |
static struct ast_sip_session_supplement | path_session_supplement |
static struct ast_sip_supplement | path_supplement |
static pj_str_t | PATH_SUPPORTED_NAME = { "path", 4 } |
|
static |
Definition at line 273 of file res_pjsip_path.c.
|
static |
Definition at line 273 of file res_pjsip_path.c.
|
static |
Definition at line 123 of file res_pjsip_path.c.
References NULL, and PATH_SUPPORTED_NAME.
Referenced by path_outgoing_request(), and path_outgoing_response().
struct ast_module* AST_MODULE_SELF_SYM | ( | void | ) |
Definition at line 273 of file res_pjsip_path.c.
|
static |
Definition at line 39 of file res_pjsip_path.c.
References ao2_cleanup, ast_sip_endpoint::aors, ast_alloca, ast_copy_pj_str(), ast_free, ast_sip_get_sorcery(), ast_sip_location_retrieve_aor(), AST_SIP_USER_OPTIONS_TRUNCATE_CHECK, ast_sorcery_retrieve_by_id(), ast_str_append(), ast_str_buffer(), ast_str_create, ast_str_set(), ast_strdupa, ast_strip(), ast_strlen_zero, ast_sip_domain_alias::domain, NULL, and strsep().
Referenced by path_outgoing_request(), and path_outgoing_response().
|
static |
Definition at line 252 of file res_pjsip_path.c.
References AST_MODULE_LOAD_SUCCESS, ast_sip_register_supplement(), and ast_sip_session_register_supplement.
Referenced by unload_module().
|
static |
Get the path string associated with this contact and tdata.
endpoint | The endpoint from which to pull associated path data |
contact_uri | The URI identifying the associated contact |
path_str | The place to store the retrieved path information |
zero | on success |
non-zero | on failure or no available path information |
Definition at line 113 of file res_pjsip_path.c.
References ast_strlen_zero, and ast_sip_contact::path.
Referenced by path_outgoing_response().
|
static |
Definition at line 165 of file res_pjsip_path.c.
References add_supported(), ao2_cleanup, ast_sip_set_outbound_proxy(), ast_strlen_zero, find_aor(), NULL, ast_sip_contact::path, and RAII_VAR.
Referenced by path_session_outgoing_request().
|
static |
Definition at line 200 of file res_pjsip_path.c.
References add_supported(), ao2_cleanup, find_aor(), NULL, path_get_string(), PATH_NAME, and RAII_VAR.
Referenced by path_session_outgoing_response().
|
static |
Definition at line 187 of file res_pjsip_path.c.
References ast_sip_session::contact, ast_sip_session::endpoint, and path_outgoing_request().
|
static |
Definition at line 235 of file res_pjsip_path.c.
References ast_sip_session::contact, ast_sip_session::endpoint, and path_outgoing_response().
|
static |
Definition at line 260 of file res_pjsip_path.c.
References AST_MODFLAG_LOAD_ORDER, AST_MODPRI_APP_DEPEND, AST_MODULE_INFO(), AST_MODULE_SUPPORT_CORE, ast_sip_session_unregister_supplement(), ast_sip_unregister_supplement(), ASTERISK_GPL_KEY, and load_module().
|
static |
Definition at line 273 of file res_pjsip_path.c.
|
static |
Definition at line 273 of file res_pjsip_path.c.
|
static |
Definition at line 36 of file res_pjsip_path.c.
Referenced by path_outgoing_response().
|
static |
Definition at line 246 of file res_pjsip_path.c.
|
static |
Definition at line 240 of file res_pjsip_path.c.
|
static |
Definition at line 37 of file res_pjsip_path.c.
Referenced by add_supported().