Asterisk - The Open Source Telephony Project  GIT-master-932eae6
Data Structures | Macros | Enumerations | Functions
extconf.h File Reference

External configuration handlers (realtime and static configuration) More...

Go to the source code of this file.

Data Structures

struct  pbx_find_info
 

Macros

#define AST_PBX_MAX_STACK   512
 
#define STATUS_NO_CONTEXT   1
 
#define STATUS_NO_EXTENSION   2
 
#define STATUS_NO_LABEL   4
 
#define STATUS_NO_PRIORITY   3
 
#define STATUS_SUCCESS   5
 

Enumerations

enum  ext_match_t {
  E_MATCHMORE = 0x00, E_CANMATCH = 0x01, E_MATCH = 0x02, E_MATCH_MASK = 0x03,
  E_SPAWN = 0x12, E_FINDLABEL = 0x22, E_MATCHMORE = 0x00, E_CANMATCH = 0x01,
  E_MATCH = 0x02, E_MATCH_MASK = 0x03, E_SPAWN = 0x12, E_FINDLABEL = 0x22
}
 

Functions

int localized_add_extension2 (struct ast_context *con, int replace, const char *extension, int priority, const char *label, const char *callerid, const char *application, void *data, void(*datad)(void *), const char *registrar)
 
struct ast_categorylocalized_category_get (const struct ast_config *config, const char *category_name)
 
struct ast_configlocalized_config_load (const char *filename)
 
struct ast_configlocalized_config_load_with_comments (const char *filename)
 
int localized_config_text_file_save (const char *configfile, const struct ast_config *cfg, const char *generator)
 
int localized_context_add_ignorepat2 (struct ast_context *con, const char *value, const char *registrar)
 
int localized_context_add_include2 (struct ast_context *con, const char *value, const char *registrar)
 
int localized_context_add_switch2 (struct ast_context *con, const char *value, const char *data, int eval, const char *registrar)
 
void localized_context_destroy (struct ast_context *con, const char *registrar)
 
struct ast_contextlocalized_context_find_or_create (struct ast_context **extcontexts, void *tab, const char *name, const char *registrar)
 
int localized_context_verify_includes (struct ast_context *con)
 
struct ast_extenlocalized_find_extension (struct ast_context *bypass, struct pbx_find_info *q, const char *context, const char *exten, int priority, const char *label, const char *callerid, enum ext_match_t action)
 
void localized_merge_contexts_and_delete (struct ast_context **extcontexts, void *tab, const char *registrar)
 
int localized_pbx_builtin_setvar (struct ast_channel *chan, const void *data)
 
int localized_pbx_load_module (void)
 
void localized_use_conf_dir (void)
 
void localized_use_local_dir (void)
 
struct ast_extenlocalized_walk_context_extensions (struct ast_context *con, struct ast_exten *exten)
 
struct ast_includelocalized_walk_context_includes (struct ast_context *con, struct ast_include *inc)
 
struct ast_swlocalized_walk_context_switches (struct ast_context *con, struct ast_sw *sw)
 
struct ast_contextlocalized_walk_contexts (struct ast_context *con)
 
struct ast_extenlocalized_walk_extension_priorities (struct ast_exten *exten, struct ast_exten *priority)
 

Detailed Description

External configuration handlers (realtime and static configuration)

Author
Steve Murphy murf@.nosp@m.digi.nosp@m.um.co.nosp@m.m

Definition in file extconf.h.

Macro Definition Documentation

◆ AST_PBX_MAX_STACK

#define AST_PBX_MAX_STACK   512

◆ STATUS_NO_CONTEXT

#define STATUS_NO_CONTEXT   1

Definition at line 245 of file extconf.h.

◆ STATUS_NO_EXTENSION

#define STATUS_NO_EXTENSION   2

Definition at line 246 of file extconf.h.

◆ STATUS_NO_LABEL

#define STATUS_NO_LABEL   4

Definition at line 248 of file extconf.h.

◆ STATUS_NO_PRIORITY

#define STATUS_NO_PRIORITY   3

Definition at line 247 of file extconf.h.

◆ STATUS_SUCCESS

#define STATUS_SUCCESS   5

Definition at line 249 of file extconf.h.

Referenced by check_goto(), and check_pval_item().

Enumeration Type Documentation

◆ ext_match_t

When looking up extensions, we can have different requests identified by the 'action' argument, as follows. Note that the coding is such that the low 4 bits are the third argument to extension_match_core.

Enumerator
E_MATCHMORE 
E_CANMATCH 
E_MATCH 
E_MATCH_MASK 
E_SPAWN 
E_FINDLABEL 
E_MATCHMORE 
E_CANMATCH 
E_MATCH 
E_MATCH_MASK 
E_SPAWN 
E_FINDLABEL 

Definition at line 215 of file extconf.h.

215  {
216  E_MATCHMORE = 0x00, /* extension can match but only with more 'digits' */
217  E_CANMATCH = 0x01, /* extension can match with or without more 'digits' */
218  E_MATCH = 0x02, /* extension is an exact match */
219  E_MATCH_MASK = 0x03, /* mask for the argument to extension_match_core() */
220  E_SPAWN = 0x12, /* want to spawn an extension. Requires exact match */
221  E_FINDLABEL = 0x22 /* returns the priority for a given label. Requires exact match */
222 };

Function Documentation

◆ localized_add_extension2()

int localized_add_extension2 ( struct ast_context con,
int  replace,
const char *  extension,
int  priority,
const char *  label,
const char *  callerid,
const char *  application,
void *  data,
void(*)(void *)  datad,
const char *  registrar 
)

Definition at line 4898 of file extconf.c.

References ast_add_extension2(), and ast_exten::datad.

Referenced by ast_add_extension2().

4902 {
4903  return ast_add_extension2(con, replace, extension, priority, label, callerid, application, data, datad, registrar);
4904 }
static int priority
structure to hold extensions
static char * registrar
Definition: pbx_ael.c:78
static int replace(struct ast_channel *chan, const char *cmd, char *data, struct ast_str **buf, ssize_t len)
Definition: func_strings.c:790
static int ast_add_extension2(struct ast_context *con, int replace, const char *extension, int priority, const char *label, const char *callerid, const char *application, void *data, void(*datad)(void *), const char *registrar)
Main interface to add extensions to the list for out context.
Definition: extconf.c:4776

◆ localized_category_get()

struct ast_category * localized_category_get ( const struct ast_config config,
const char *  category_name 
)

Definition at line 2803 of file extconf.c.

References category_get().

Referenced by ast_category_new().

2804 {
2805  return category_get(config, category_name, 0);
2806 }
static struct ast_category * category_get(const struct ast_config *config, const char *category_name, int ignored)
Definition: extconf.c:1193

◆ localized_config_load()

struct ast_config * localized_config_load ( const char *  filename)

Definition at line 3287 of file extconf.c.

References ast_config_destroy(), ast_config_internal_load(), ast_config_new(), localized_config_load_with_comments(), NULL, and result.

Referenced by ast_config_new(), and pbx_load_config().

3288 {
3289  struct ast_config *cfg;
3290  struct ast_config *result;
3291 
3292  cfg = ast_config_new();
3293  if (!cfg)
3294  return NULL;
3295 
3296  result = ast_config_internal_load(filename, cfg, 0, "");
3297  if (!result)
3298  ast_config_destroy(cfg);
3299 
3300  return result;
3301 }
static void ast_config_destroy(struct ast_config *cfg)
Definition: extconf.c:1290
#define NULL
Definition: resample.c:96
static struct ast_config * ast_config_new(void)
Definition: extconf.c:3276
static struct ast_config * ast_config_internal_load(const char *filename, struct ast_config *cfg, int withcomments, const char *suggested_incl_file)
Definition: extconf.c:2864
static PGresult * result
Definition: cel_pgsql.c:88

◆ localized_config_load_with_comments()

struct ast_config * localized_config_load_with_comments ( const char *  filename)

Definition at line 3305 of file extconf.c.

References ast_config_destroy(), ast_config_internal_load(), ast_config_new(), NULL, and result.

Referenced by localized_config_load().

3306 {
3307  struct ast_config *cfg;
3308  struct ast_config *result;
3309 
3310  cfg = ast_config_new();
3311  if (!cfg)
3312  return NULL;
3313 
3314  result = ast_config_internal_load(filename, cfg, 1, "");
3315  if (!result)
3316  ast_config_destroy(cfg);
3317 
3318  return result;
3319 }
static void ast_config_destroy(struct ast_config *cfg)
Definition: extconf.c:1290
#define NULL
Definition: resample.c:96
static struct ast_config * ast_config_new(void)
Definition: extconf.c:3276
static struct ast_config * ast_config_internal_load(const char *filename, struct ast_config *cfg, int withcomments, const char *suggested_incl_file)
Definition: extconf.c:2864
static PGresult * result
Definition: cel_pgsql.c:88

◆ localized_config_text_file_save()

int localized_config_text_file_save ( const char *  configfile,
const struct ast_config cfg,
const char *  generator 
)

Definition at line 3423 of file extconf.c.

References ast_log(), ast_verbose(), ast_variable::blanklines, ast_comment::cmt, errno, ast_config_include::exec, ast_config_include::exec_file, ast_variable::file, ast_category::file, gen_header(), ast_config_include::include_location_file, ast_config_include::include_location_lineno, ast_config_include::included_file, ast_config::includes, ast_variable::lineno, ast_category::lineno, LOG_DEBUG, ast_variable::name, ast_category::name, ast_comment::next, ast_variable::next, ast_category::next, ast_config_include::next, ast_variable::object, ast_config_include::output, ast_variable::precomments, ast_category::precomments, ast_category::root, ast_config::root, ast_variable::sameline, ast_category::sameline, set_fn(), ast_variable::value, var, and VERBOSE_PREFIX_2.

Referenced by set_fn().

3424 {
3425  FILE *f;
3426  char fn[256];
3427  struct ast_variable *var;
3428  struct ast_category *cat;
3429  struct ast_comment *cmt;
3430  struct ast_config_include *incl;
3431  int blanklines = 0;
3432 
3433  /* reset all the output flags, in case this isn't our first time saving this data */
3434 
3435  for (incl=cfg->includes; incl; incl = incl->next)
3436  incl->output = 0;
3437 
3438  /* go thru all the inclusions and make sure all the files involved (configfile plus all its inclusions)
3439  are all truncated to zero bytes and have that nice header*/
3440 
3441  for (incl=cfg->includes; incl; incl = incl->next)
3442  {
3443  if (!incl->exec) { /* leave the execs alone -- we'll write out the #exec directives, but won't zero out the include files or exec files*/
3444  FILE *f1;
3445 
3446  set_fn(fn, sizeof(fn), incl->included_file, configfile); /* normally, fn is just set to incl->included_file, prepended with config dir if relative */
3447  f1 = fopen(fn,"w");
3448  if (f1) {
3449  gen_header(f1, configfile, fn, generator);
3450  fclose(f1); /* this should zero out the file */
3451  } else {
3452  ast_verbose(VERBOSE_PREFIX_2 "Unable to write %s (%s)", fn, strerror(errno));
3453  }
3454  }
3455  }
3456 
3457  set_fn(fn, sizeof(fn), 0, configfile); /* just set fn to absolute ver of configfile */
3458 #ifdef __CYGWIN__
3459  if ((f = fopen(fn, "w+"))) {
3460 #else
3461  if ((f = fopen(fn, "w"))) {
3462 #endif
3463  if (option_verbose > 1)
3464  ast_verbose(VERBOSE_PREFIX_2 "Saving '%s': ", fn);
3465 
3466  gen_header(f, configfile, fn, generator);
3467  cat = cfg->root;
3468  fclose(f);
3469 
3470  /* from here out, we open each involved file and concat the stuff we need to add to the end and immediately close... */
3471  /* since each var, cat, and associated comments can come from any file, we have to be
3472  mobile, and open each file, print, and close it on an entry-by-entry basis */
3473 
3474  while(cat) {
3475  set_fn(fn, sizeof(fn), cat->file, configfile);
3476  f = fopen(fn, "a");
3477  if (!f)
3478  {
3479  ast_verbose(VERBOSE_PREFIX_2 "Unable to write %s (%s)", fn, strerror(errno));
3480  return -1;
3481  }
3482 
3483  /* dump any includes that happen before this category header */
3484  for (incl=cfg->includes; incl; incl = incl->next) {
3485  if (strcmp(incl->include_location_file, cat->file) == 0){
3486  if (cat->lineno > incl->include_location_lineno && !incl->output) {
3487  if (incl->exec)
3488  fprintf(f,"#exec \"%s\"\n", incl->exec_file);
3489  else
3490  fprintf(f,"#include \"%s\"\n", incl->included_file);
3491  incl->output = 1;
3492  }
3493  }
3494  }
3495 
3496  /* Dump section with any appropriate comment */
3497  for (cmt = cat->precomments; cmt; cmt=cmt->next) {
3498  if (cmt->cmt[0] != ';' || cmt->cmt[1] != '!')
3499  fprintf(f,"%s", cmt->cmt);
3500  }
3501  if (!cat->precomments)
3502  fprintf(f,"\n");
3503  fprintf(f, "[%s]", cat->name);
3504  for(cmt = cat->sameline; cmt; cmt=cmt->next) {
3505  fprintf(f,"%s", cmt->cmt);
3506  }
3507  if (!cat->sameline)
3508  fprintf(f,"\n");
3509  fclose(f);
3510 
3511  var = cat->root;
3512  while(var) {
3513  set_fn(fn, sizeof(fn), var->file, configfile);
3514  f = fopen(fn, "a");
3515  if (!f)
3516  {
3517  ast_verbose(VERBOSE_PREFIX_2 "Unable to write %s (%s)", fn, strerror(errno));
3518  return -1;
3519  }
3520 
3521  /* dump any includes that happen before this category header */
3522  for (incl=cfg->includes; incl; incl = incl->next) {
3523  if (strcmp(incl->include_location_file, var->file) == 0){
3524  if (var->lineno > incl->include_location_lineno && !incl->output) {
3525  if (incl->exec)
3526  fprintf(f,"#exec \"%s\"\n", incl->exec_file);
3527  else
3528  fprintf(f,"#include \"%s\"\n", incl->included_file);
3529  incl->output = 1;
3530  }
3531  }
3532  }
3533 
3534  for (cmt = var->precomments; cmt; cmt=cmt->next) {
3535  if (cmt->cmt[0] != ';' || cmt->cmt[1] != '!')
3536  fprintf(f,"%s", cmt->cmt);
3537  }
3538  if (var->sameline)
3539  fprintf(f, "%s %s %s %s", var->name, (var->object ? "=>" : "="), var->value, var->sameline->cmt);
3540  else
3541  fprintf(f, "%s %s %s\n", var->name, (var->object ? "=>" : "="), var->value);
3542  if (var->blanklines) {
3543  blanklines = var->blanklines;
3544  while (blanklines--)
3545  fprintf(f, "\n");
3546  }
3547 
3548  fclose(f);
3549 
3550 
3551  var = var->next;
3552  }
3553  cat = cat->next;
3554  }
3555  if ((option_verbose > 1) && !option_debug)
3556  ast_verbose("Saved\n");
3557  } else {
3558  if (option_debug)
3559  ast_log(LOG_DEBUG, "Unable to open for writing: %s\n", fn);
3560  if (option_verbose > 1)
3561  ast_verbose(VERBOSE_PREFIX_2 "Unable to write (%s)", strerror(errno));
3562  return -1;
3563  }
3564 
3565  /* Now, for files with trailing #include/#exec statements,
3566  we have to make sure every entry is output */
3567 
3568  for (incl=cfg->includes; incl; incl = incl->next) {
3569  if (!incl->output) {
3570  /* open the respective file */
3571  set_fn(fn, sizeof(fn), incl->include_location_file, configfile);
3572  f = fopen(fn, "a");
3573  if (!f)
3574  {
3575  ast_verbose(VERBOSE_PREFIX_2 "Unable to write %s (%s)", fn, strerror(errno));
3576  return -1;
3577  }
3578 
3579  /* output the respective include */
3580  if (incl->exec)
3581  fprintf(f,"#exec \"%s\"\n", incl->exec_file);
3582  else
3583  fprintf(f,"#include \"%s\"\n", incl->included_file);
3584  fclose(f);
3585  incl->output = 1;
3586  }
3587  }
3588 
3589  return 0;
3590 }
static void gen_header(FILE *f1, const char *configfile, const char *fn, const char *generator)
Definition: extconf.c:3390
struct ast_variable * next
struct ast_category * next
Definition: main/config.c:246
struct ast_comment * sameline
Definition: main/config.c:237
Structure to keep comments for rewriting configuration files.
Definition: main/config.c:84
char * file
The file name from whence this declaration was read.
Definition: main/config.c:233
struct ast_comment * next
Definition: main/config.c:85
int option_debug
Definition: options.c:69
char * include_location_file
file name in which the include occurs
Definition: main/config.c:266
static void set_fn(char *fn, int fn_size, const char *file, const char *configfile)
Definition: extconf.c:3408
struct ast_config_include * includes
Definition: main/config.c:258
char cmt[0]
Definition: main/config.c:87
Structure for variables, used for configurations and for channel variables.
struct ast_comment * sameline
#define var
Definition: ast_expr2f.c:614
int option_verbose
Definition: options.c:67
void ast_verbose(const char *fmt,...)
Definition: extconf.c:2207
char * exec_file
if it's an exec, you'll have both the /var/tmp to read, and the original script
Definition: main/config.c:273
char * included_file
file name included
Definition: main/config.c:278
static void ast_log(int level, const char *file, int line, const char *function, const char *fmt,...)
Definition: extconf.c:2195
struct ast_variable * root
Definition: main/config.c:240
struct ast_comment * precomments
Definition: main/config.c:236
#define VERBOSE_PREFIX_2
Definition: extconf.c:101
static struct ast_generator generator
Definition: app_fax.c:359
int errno
struct ast_comment * precomments
char name[80]
Definition: main/config.c:226
#define LOG_DEBUG
Definition: extconf.c:121
struct ast_config_include * next
Definition: main/config.c:282
struct ast_category * root
Definition: main/config.c:251

◆ localized_context_add_ignorepat2()

int localized_context_add_ignorepat2 ( struct ast_context con,
const char *  value,
const char *  registrar 
)

Definition at line 4601 of file extconf.c.

References ast_context_add_ignorepat2().

Referenced by ast_context_add_ignorepat2().

4602 {
4604 }
static int ast_context_add_ignorepat2(struct ast_context *con, const char *value, const char *registrar)
Definition: extconf.c:4569
int value
Definition: syslog.c:37
static char * registrar
Definition: pbx_ael.c:78

◆ localized_context_add_include2()

int localized_context_add_include2 ( struct ast_context con,
const char *  value,
const char *  registrar 
)

Definition at line 4559 of file extconf.c.

References ast_context_add_ignorepat2(), and ast_context_add_include2().

Referenced by ast_context_add_include2().

4561 {
4563 }
int value
Definition: syslog.c:37
static char * registrar
Definition: pbx_ael.c:78
static int ast_context_add_include2(struct ast_context *con, const char *value, const char *registrar)
Definition: extconf.c:4503

◆ localized_context_add_switch2()

int localized_context_add_switch2 ( struct ast_context con,
const char *  value,
const char *  data,
int  eval,
const char *  registrar 
)

Definition at line 4702 of file extconf.c.

References ast_context_add_switch2().

Referenced by ast_context_add_switch2().

4704 {
4705  return ast_context_add_switch2(con, value, data, eval, registrar);
4706 }
int value
Definition: syslog.c:37
static char * registrar
Definition: pbx_ael.c:78
static int ast_context_add_switch2(struct ast_context *con, const char *value, const char *data, int eval, const char *registrar)
Definition: extconf.c:4641

◆ localized_context_destroy()

void localized_context_destroy ( struct ast_context con,
const char *  registrar 
)

Definition at line 5565 of file extconf.c.

References __ast_context_destroy(), ast_unlock_contexts(), and ast_wrlock_contexts().

Referenced by __ast_context_destroy(), and ast_context_destroy().

5566 {
5570 }
static int ast_unlock_contexts(void)
Definition: extconf.c:4616
static char * registrar
Definition: pbx_ael.c:78
static void __ast_context_destroy(struct ast_context *con, const char *registrar)
Definition: extconf.c:5504
static int ast_wrlock_contexts(void)
Definition: extconf.c:4611

◆ localized_context_find_or_create()

struct ast_context * localized_context_find_or_create ( struct ast_context **  extcontexts,
void *  tab,
const char *  name,
const char *  registrar 
)
Version
1.6.1 added tab parameter
1.6.1 renamed function from localized_context_create to localized_context_find_or_create

Definition at line 4989 of file extconf.c.

References __ast_context_create().

Referenced by ast_context_find_or_create().

4990 {
4991  return __ast_context_create(extcontexts, name, registrar, 1);
4992 }
static struct ast_context * __ast_context_create(struct ast_context **extcontexts, const char *name, const char *registrar, int existsokay)
Definition: extconf.c:4708
static char * registrar
Definition: pbx_ael.c:78
static const char name[]
Definition: cdr_mysql.c:74

◆ localized_context_verify_includes()

int localized_context_verify_includes ( struct ast_context con)

Definition at line 5640 of file extconf.c.

References ast_context_verify_includes(), and localized_pbx_load_module().

Referenced by ast_context_verify_includes().

5641 {
5642  return ast_context_verify_includes(con);
5643 }
static int ast_context_verify_includes(struct ast_context *con)
Definition: extconf.c:5623

◆ localized_find_extension()

struct ast_exten * localized_find_extension ( struct ast_context bypass,
struct pbx_find_info q,
const char *  context,
const char *  exten,
int  priority,
const char *  label,
const char *  callerid,
enum ext_match_t  action 
)

Definition at line 4470 of file extconf.c.

References NULL, and pbx_find_extension().

Referenced by pbx_find_extension().

4478 {
4479  return pbx_find_extension(NULL, bypass, q, context, exten, priority, label, callerid, action);
4480 }
static char exten[AST_MAX_EXTENSION]
Definition: chan_alsa.c:118
#define NULL
Definition: resample.c:96
static int priority
static struct ast_exten * pbx_find_extension(struct ast_channel *chan, struct ast_context *bypass, struct pbx_find_info *q, const char *context, const char *exten, int priority, const char *label, const char *callerid, enum ext_match_t action)
Definition: extconf.c:4334
static char context[AST_MAX_CONTEXT]
Definition: chan_alsa.c:116

◆ localized_merge_contexts_and_delete()

void localized_merge_contexts_and_delete ( struct ast_context **  extcontexts,
void *  tab,
const char *  registrar 
)
Version
1.6.1 added tab parameter

Definition at line 5618 of file extconf.c.

References ast_merge_contexts_and_delete().

Referenced by ast_merge_contexts_and_delete().

5619 {
5621 }
static char * registrar
Definition: pbx_ael.c:78
static void ast_merge_contexts_and_delete(struct ast_context **extcontexts, const char *registrar)
Definition: extconf.c:5573

◆ localized_pbx_builtin_setvar()

int localized_pbx_builtin_setvar ( struct ast_channel chan,
const void *  data 
)

Definition at line 2607 of file extconf.c.

References pbx_builtin_setvar().

Referenced by pbx_builtin_setvar().

2608 {
2609  return pbx_builtin_setvar(chan, data);
2610 }
static int pbx_builtin_setvar(struct ast_channel *chan, const void *data)
Definition: extconf.c:2570

◆ localized_pbx_load_module()

int localized_pbx_load_module ( void  )

Definition at line 5647 of file extconf.c.

Referenced by main().

5648 {
5649  struct ast_context *con;
5650 
5652  return -1 /* AST_MODULE_LOAD_DECLINE*/;
5653 
5654  /* pbx_load_users(); */ /* does this affect the dialplan? */
5655 
5657 
5658  for (con = NULL; (con = ast_walk_contexts(con));)
5660 
5661  printf("=== Loading extensions.conf ===\n");
5662  con = 0;
5663  while ((con = ast_walk_contexts(con)) ) {
5664  printf("Context: %s\n", con->name);
5665  }
5666  printf("=========\n");
5667 
5668  return 0;
5669 }
static char * global_registrar
Definition: extconf.c:2122
#define NULL
Definition: resample.c:96
static struct ast_context * ast_walk_contexts(struct ast_context *con)
Definition: extconf.c:4026
static char * config_filename
Definition: extconf.c:2121
static struct ast_context * local_contexts
Definition: extconf.c:3598
char name[0]
Definition: pbx.c:297
static int ast_context_verify_includes(struct ast_context *con)
Definition: extconf.c:5623
static void ast_merge_contexts_and_delete(struct ast_context **extcontexts, const char *registrar)
Definition: extconf.c:5573
ast_context: An extension context - must remain in sync with fake_context
Definition: pbx.c:284
static int pbx_load_config(const char *config_file)
Definition: extconf.c:5339

◆ localized_use_conf_dir()

void localized_use_conf_dir ( void  )

Definition at line 3115 of file extconf.c.

Referenced by main().

3116 {
3117  use_local_dir = 0;
3118 }
static int use_local_dir
Definition: extconf.c:3105

◆ localized_use_local_dir()

void localized_use_local_dir ( void  )

Definition at line 3110 of file extconf.c.

Referenced by main().

3111 {
3112  use_local_dir = 1;
3113 }
static int use_local_dir
Definition: extconf.c:3105

◆ localized_walk_context_extensions()

struct ast_exten * localized_walk_context_extensions ( struct ast_context con,
struct ast_exten exten 
)

Definition at line 4053 of file extconf.c.

References ast_walk_context_extensions(), and ast_walk_extension_priorities().

Referenced by ast_walk_context_extensions(), and main().

4055 {
4056  return ast_walk_context_extensions(con,exten);
4057 }
static struct ast_exten * ast_walk_context_extensions(struct ast_context *con, struct ast_exten *exten)
Definition: extconf.c:4042

◆ localized_walk_context_includes()

struct ast_include * localized_walk_context_includes ( struct ast_context con,
struct ast_include inc 
)

Definition at line 4106 of file extconf.c.

References ast_walk_context_ignorepats(), and ast_walk_context_includes().

Referenced by ast_context_includes_count().

4108 {
4109  return ast_walk_context_includes(con, inc);
4110 }
static struct ast_include * ast_walk_context_includes(struct ast_context *con, struct ast_include *inc)
Definition: extconf.c:4082

◆ localized_walk_context_switches()

struct ast_sw * localized_walk_context_switches ( struct ast_context con,
struct ast_sw sw 
)

Definition at line 4152 of file extconf.c.

References ast_context_switches_count(), and ast_walk_context_switches().

Referenced by ast_walk_context_switches(), and main().

4154 {
4155  return ast_walk_context_switches(con, sw);
4156 }
static struct ast_sw * ast_walk_context_switches(struct ast_context *con, struct ast_sw *sw)
Definition: extconf.c:4141

◆ localized_walk_contexts()

struct ast_context * localized_walk_contexts ( struct ast_context con)

Definition at line 4032 of file extconf.c.

References ast_walk_context_extensions(), and ast_walk_contexts().

Referenced by ast_walk_contexts(), and main().

4033 {
4034  return ast_walk_contexts(con);
4035 }
static struct ast_context * ast_walk_contexts(struct ast_context *con)
Definition: extconf.c:4026

◆ localized_walk_extension_priorities()

struct ast_exten * localized_walk_extension_priorities ( struct ast_exten exten,
struct ast_exten priority 
)

Definition at line 4071 of file extconf.c.

References ast_walk_context_includes(), and ast_walk_extension_priorities().

Referenced by ast_walk_extension_priorities(), and main().

4073 {
4074  return ast_walk_extension_priorities(exten, priority);
4075 }
static struct ast_exten * ast_walk_extension_priorities(struct ast_exten *exten, struct ast_exten *priority)
Definition: extconf.c:4063