Channel Variables. More...
#include "asterisk/linkedlists.h"
Go to the source code of this file.
Data Structures | |
struct | ast_var_t |
Functions | |
AST_LIST_HEAD_NOLOCK (varshead, ast_var_t) | |
struct ast_var_t * | ast_var_assign (const char *name, const char *value) |
void | ast_var_delete (struct ast_var_t *var) |
const char * | ast_var_full_name (const struct ast_var_t *var) |
const char * | ast_var_name (const struct ast_var_t *var) |
const char * | ast_var_value (const struct ast_var_t *var) |
Channel Variables.
Definition in file chanvars.h.
AST_LIST_HEAD_NOLOCK | ( | varshead | , | |
ast_var_t | ||||
) |
struct ast_var_t* ast_var_assign | ( | const char * | name, | |
const char * | value | |||
) | [read] |
Definition at line 39 of file chanvars.c.
References ast_calloc, ast_copy_string(), ast_var_t::name, ast_var_t::value, and var.
Referenced by ast_cdr_copy_vars(), ast_cdr_setvar(), ast_channel_inherit_variables(), clone_variables(), do_say(), dundi_lookup_local(), loopback_subst(), pbx_builtin_pushvar_helper(), and pbx_builtin_setvar_helper().
00040 { 00041 struct ast_var_t *var; 00042 int name_len = strlen(name) + 1; 00043 int value_len = strlen(value) + 1; 00044 00045 if (!(var = ast_calloc(sizeof(*var) + name_len + value_len, sizeof(char)))) { 00046 return NULL; 00047 } 00048 00049 ast_copy_string(var->name, name, name_len); 00050 var->value = var->name + name_len; 00051 ast_copy_string(var->value, value, value_len); 00052 00053 return var; 00054 }
void ast_var_delete | ( | struct ast_var_t * | var | ) |
Definition at line 56 of file chanvars.c.
References free.
Referenced by ast_cdr_free_vars(), ast_cdr_setvar(), ast_channel_free(), do_say(), dundi_lookup_local(), loopback_subst(), pbx_builtin_clear_globals(), and pbx_builtin_setvar_helper().
00057 { 00058 if (var) 00059 free(var); 00060 }
const char* ast_var_full_name | ( | const struct ast_var_t * | var | ) |
Definition at line 77 of file chanvars.c.
References ast_var_t::name.
Referenced by ast_channel_inherit_variables().
00078 { 00079 return (var ? var->name : NULL); 00080 }
const char* ast_var_name | ( | const struct ast_var_t * | var | ) |
Definition at line 62 of file chanvars.c.
References ast_var_t::name, and name.
Referenced by ast_cdr_copy_vars(), ast_cdr_getvar_internal(), ast_cdr_serialize_variables(), ast_cdr_setvar(), ast_channel_inherit_variables(), cdr_merge_vars(), handle_show_globals(), mgcp_call(), ospauth_exec(), ospfinished_exec(), osplookup_exec(), ospnext_exec(), pbx_builtin_getvar_helper(), pbx_builtin_serialize_variables(), pbx_builtin_setvar_helper(), pbx_retrieve_variable(), sip_call(), and transmit_invite().
const char* ast_var_value | ( | const struct ast_var_t * | var | ) |
Definition at line 82 of file chanvars.c.
References ast_var_t::value.
Referenced by ast_cdr_copy_vars(), ast_cdr_getvar_internal(), ast_cdr_serialize_variables(), ast_channel_inherit_variables(), cdr_merge_vars(), handle_show_globals(), mgcp_call(), ospauth_exec(), ospfinished_exec(), osplookup_exec(), ospnext_exec(), pbx_builtin_getvar_helper(), pbx_builtin_serialize_variables(), pbx_retrieve_variable(), sip_call(), and transmit_invite().
00083 { 00084 return (var ? var->value : NULL); 00085 }