Asterisk - The Open Source Telephony Project GIT-master-f36a736
|
#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/causes.h"
#include "asterisk/threadpool.h"
Go to the source code of this file.
Data Structures | |
struct | rfc3329_store_data |
Private data structure used with the modules's datastore. More... | |
Functions | |
static void | __reg_module (void) |
static void | __unreg_module (void) |
static void | add_outgoing_request_headers (struct ast_sip_endpoint *endpoint, struct ast_sip_contact *contact, struct pjsip_tx_data *tdata, struct ast_datastore *datastore) |
struct ast_module * | AST_MODULE_SELF_SYM (void) |
static void | datastore_destroy_cb (void *data) |
static int | load_module (void) |
static void | rfc3329_incoming_response (struct ast_sip_session *session, struct pjsip_rx_data *rdata) |
static void | rfc3329_options_request (struct ast_sip_endpoint *endpoint, struct ast_sip_contact *contact, struct pjsip_tx_data *tdata) |
static void | rfc3329_outgoing_request (struct ast_sip_session *session, struct 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 RFC3329 Support (partial)" , .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 = AST_BUILDOPT_SUM, .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 struct ast_sip_supplement | rfc3329_options_supplement |
static const struct ast_datastore_info | rfc3329_store_datastore |
The channel datastore the module uses to store state. More... | |
static struct ast_sip_session_supplement | rfc3329_supplement |
|
static |
Definition at line 189 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 189 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 109 of file res_pjsip_rfc3329.c.
References ao2_cleanup, ao2_lock, ao2_unlock, ast_sip_add_security_headers(), ast_sip_get_contact_status(), AST_SIP_SECURITY_NEG_MEDIASEC, AST_VECTOR_SIZE, ast_datastore::data, rfc3329_store_data::last_rx_status_code, NULL, ast_sip_contact_status::security_mechanisms, ast_sip_endpoint::security_mechanisms, and ast_sip_endpoint::security_negotiation.
Referenced by rfc3329_options_request(), and rfc3329_outgoing_request().
struct ast_module * AST_MODULE_SELF_SYM | ( | void | ) |
Definition at line 189 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 42 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 169 of file res_pjsip_rfc3329.c.
References AST_MODULE_LOAD_SUCCESS, ast_sip_register_supplement(), ast_sip_session_register_supplement, rfc3329_options_supplement, and rfc3329_supplement.
|
static |
Definition at line 56 of file res_pjsip_rfc3329.c.
References ao2_cleanup, ao2_lock, ao2_unlock, ast_calloc, ast_copy_pj_str(), ast_log, AST_LOG_WARNING, ast_sip_get_contact_status(), ast_sip_session_add_datastore(), ast_sip_session_alloc_datastore(), ast_sip_session_get_datastore(), ast_sip_str_to_security_mechanism(), ast_skip_blanks(), ast_strsep(), AST_STRSEP_ALL, AST_VECTOR_APPEND, AST_VECTOR_SIZE, buf, rfc3329_store_data::last_rx_status_code, header::next, NULL, out, RAII_VAR, rfc3329_store_datastore, ast_sip_contact_status::security_mechanisms, and session.
|
static |
Definition at line 159 of file res_pjsip_rfc3329.c.
References add_outgoing_request_headers(), and NULL.
|
static |
Definition at line 145 of file res_pjsip_rfc3329.c.
References add_outgoing_request_headers(), ao2_cleanup, ast_sip_session_get_datastore(), NULL, RAII_VAR, and session.
|
static |
Definition at line 176 of file res_pjsip_rfc3329.c.
References ast_sip_session_unregister_supplement(), ast_sip_unregister_supplement(), rfc3329_options_supplement, and rfc3329_supplement.
|
static |
Definition at line 189 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 189 of file res_pjsip_rfc3329.c.
|
static |
Definition at line 164 of file res_pjsip_rfc3329.c.
Referenced by load_module(), and unload_module().
|
static |
The channel datastore the module uses to store state.
Definition at line 51 of file res_pjsip_rfc3329.c.
Referenced by rfc3329_incoming_response().
|
static |
Definition at line 154 of file res_pjsip_rfc3329.c.
Referenced by load_module(), and unload_module().