[asterisk-commits] murf: trunk r79595 - in /trunk: ./ include/asterisk/ main/ pbx/ pbx/ael/ pbx/...
SVN commits to the Asterisk project
asterisk-commits at lists.digium.com
Wed Aug 15 14:21:27 CDT 2007
Author: murf
Date: Wed Aug 15 14:21:27 2007
New Revision: 79595
URL: http://svn.digium.com/view/asterisk?view=rev&rev=79595
Log:
This commit closes bug 7605, and half-closes 7638. The AEL code has been redistributed/repartitioned to allow code re-use both inside and outside of Asterisk. This commit introduces the utils/conf2ael program, and an external config-file reader, for both normal config files, and for extensions.conf (context, exten, prio); It provides an API for programs outside of asterisk to use to play with the dialplan and config files.
Added:
trunk/res/ael/
- copied from r79590, team/murf/bug_7638/res/ael/
trunk/res/res_ael_share.c
- copied unchanged from r79590, team/murf/bug_7638/res/res_ael_share.c
Removed:
trunk/pbx/ael/ael.flex
trunk/pbx/ael/ael.tab.c
trunk/pbx/ael/ael.tab.h
trunk/pbx/ael/ael.y
trunk/pbx/ael/ael_lex.c
Modified:
trunk/ (props changed)
trunk/CHANGES
trunk/UPGRADE.txt
trunk/include/asterisk/ael_structs.h
trunk/include/asterisk/ast_expr.h
trunk/include/asterisk/pbx.h
trunk/main/pbx.c
trunk/pbx/Makefile
trunk/pbx/ael/ael-test/ref.ael-ntest10
trunk/pbx/ael/ael-test/ref.ael-test1
trunk/pbx/ael/ael-test/ref.ael-test11
trunk/pbx/ael/ael-test/ref.ael-test14
trunk/pbx/ael/ael-test/ref.ael-test15
trunk/pbx/ael/ael-test/ref.ael-test16
trunk/pbx/ael/ael-test/ref.ael-test19
trunk/pbx/ael/ael-test/ref.ael-test2
trunk/pbx/ael/ael-test/ref.ael-test3
trunk/pbx/ael/ael-test/ref.ael-test4
trunk/pbx/ael/ael-test/ref.ael-test5
trunk/pbx/ael/ael-test/ref.ael-test6
trunk/pbx/ael/ael-test/ref.ael-test7
trunk/pbx/pbx_ael.c
trunk/res/Makefile
trunk/utils/Makefile
trunk/utils/ael_main.c
trunk/utils/check_expr.c
Propchange: trunk/
------------------------------------------------------------------------------
automerge = yes-sir
Propchange: trunk/
------------------------------------------------------------------------------
automerge-email = murf at digium.com
Propchange: trunk/
------------------------------------------------------------------------------
svnmerge-integrated = /trunk:1-79569
Modified: trunk/CHANGES
URL: http://svn.digium.com/view/asterisk/trunk/CHANGES?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/CHANGES (original)
+++ trunk/CHANGES Wed Aug 15 14:21:27 2007
@@ -186,6 +186,12 @@
by saying "local myvar=someval;" or using Set() in this
fashion: Set(LOCAL(myvar)=someval); ("local" is now
an AEL keyword).
+ * utils/conf2ael introduced. Will convert an extensions.conf
+ file into extensions.ael. Very crude and unfinished, but
+ will be improved as time goes by. Should be useful for a
+ first pass at conversion.
+ * aelparse will now read extensions.conf to see if a referenced
+ macro or context is there before issueing a warning.
Zaptel channel driver (chan_zap) Changes
----------------------------------------
Modified: trunk/UPGRADE.txt
URL: http://svn.digium.com/view/asterisk/trunk/UPGRADE.txt?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/UPGRADE.txt (original)
+++ trunk/UPGRADE.txt Wed Aug 15 14:21:27 2007
@@ -16,6 +16,10 @@
best to insert a Return() app call at the end of your macro if you did
not include it, but really, you should make sure that all execution
paths within your macros end in "return;".
+
+* The conf2ael program is 'introduced' in this release; it is in a rather
+ crude state, but deemed useful for making a first pass at converting
+ extensions.conf code into AEL. More intelligence will come with time.
Core:
Modified: trunk/include/asterisk/ael_structs.h
URL: http://svn.digium.com/view/asterisk/trunk/include/asterisk/ael_structs.h?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/include/asterisk/ael_structs.h (original)
+++ trunk/include/asterisk/ael_structs.h Wed Aug 15 14:21:27 2007
@@ -25,6 +25,8 @@
#ifndef _ASTERISK_AEL_STRUCTS_H
#define _ASTERISK_AEL_STRUCTS_H
+#include "pval.h"
+
#if !defined(SOLARIS) && !defined(__CYGWIN__)
/* #include <err.h> */
#else
@@ -46,118 +48,15 @@
# endif
-typedef enum {
- PV_WORD, /* an ident, string, name, label, etc. A user-supplied string. */ /* 0 */
- PV_MACRO, /* 1 */
- PV_CONTEXT, /* 2 */
- PV_MACRO_CALL, /* 3 */
- PV_APPLICATION_CALL, /* 4 */
- PV_CASE, /* 5 */
- PV_PATTERN, /* 6 */
- PV_DEFAULT, /* 7 */
- PV_CATCH, /* 8 */
- PV_SWITCHES, /* 9 */
- PV_ESWITCHES, /* 10 */
- PV_INCLUDES, /* 11 */
- PV_STATEMENTBLOCK, /* 12 */
- PV_VARDEC, /* you know, var=val; */ /* 13 */
- PV_GOTO, /* 14 */
- PV_LABEL, /* 15 */
- PV_FOR, /* 16 */
- PV_WHILE, /* 17 */
- PV_BREAK, /* 18 */
- PV_RETURN, /* 19 */
- PV_CONTINUE, /* 20 */
- PV_IF, /* 21 */
- PV_IFTIME, /* 22 */
- PV_RANDOM, /* 23 */
- PV_SWITCH, /* 24 */
- PV_EXTENSION, /* 25 */
- PV_IGNOREPAT, /* 26 */
- PV_GLOBALS, /* 27 */
- PV_LOCALVARDEC, /* you know, local var=val; */ /* 28 */
-
-} pvaltype;
-
-/* why this horrible mess? It's always been a tradeoff-- tons of structs,
- each storing it's specific lists of goodies, or a 'simple' single struct,
- with lots of fields, that catches all uses at once. Either you have a long
- list of struct names and subnames, or you have a long list of field names,
- and where/how they are used. I'm going with a single struct, using unions
- to reduce storage. Some simple generalizations, and a long list of types,
- and a book about what is used with what types.... Sorry!
-*/
-
-struct pval
-{
- pvaltype type;
- int startline;
- int endline;
- int startcol;
- int endcol;
- char *filename;
-
- union
- {
- char *str; /* wow, used almost everywhere! */
- struct pval *list; /* used in SWITCHES, ESWITCHES, INCLUDES, STATEMENTBLOCK, GOTO */
- struct pval *statements;/* used in EXTENSION */
- char *for_init; /* used in FOR */
- } u1;
- struct pval *u1_last; /* to build in-order lists -- looks like we only need one */
-
- union
- {
- struct pval *arglist; /* used in macro_call, application_call, MACRO def, also attached to PWORD, the 4 timevals for includes */
- struct pval *statements; /* used in case, default, catch, while's statement, CONTEXT elements, GLOBALS */
- char *val; /* used in VARDEC */
- char *for_test; /* used in FOR */
- int label_in_case; /* a boolean for LABELs */
- struct pval *goto_target; /* used in GOTO */
- } u2;
-
- union
- {
- char *for_inc; /* used in FOR */
- struct pval *else_statements; /* used in IF */
- struct pval *macro_statements; /* used in MACRO */
- int abstract; /* used for context */
- char *hints; /* used in EXTENSION */
- int goto_target_in_case; /* used in GOTO */
- struct ael_extension *compiled_label;
- } u3;
-
- union
- {
- struct pval *for_statements; /* used in PV_FOR */
- int regexten; /* used in EXTENSION */
- } u4;
-
- struct pval *next; /* the pval at the end of this ptr will ALWAYS be of the same type as this one!
- EXCEPT for objects of the different types, that are in the same list, like contexts & macros, etc */
-
- struct pval *dad; /* the 'container' of this struct instance */
- struct pval *prev; /* the opposite of the 'next' pointer */
-} ;
-
-
-typedef struct pval pval;
-
#if 0
+#endif
+void ael2_semantic_check(pval *item, int *errs, int *warns, int *notes);
pval *npval(pvaltype type, int first_line, int last_line, int first_column, int last_column);
-void linku1(pval *head, pval *tail);
-void print_pval_list(FILE *f, pval *item, int depth);
-void print_pval(FILE *f, pval *item, int depth);
-void ael2_semantic_check(pval *item, int *errs, int *warns, int *notes);
-struct pval *find_label_in_current_context(char *exten, char *label);
-struct pval *find_label_in_current_extension(char *label);
-int count_labels_in_current_context(char *label);
-struct pval *find_label_in_current_db(char *context, char *exten, char *label);
+pval *linku1(pval *head, pval *tail);
void ael2_print(char *fname, pval *tree);
-#endif
struct pval *ael2_parse(char *fname, int *errs); /* in ael.flex */
void destroy_pval(pval *item);
-
+
extern char *prev_word; /* in ael.flex */
#ifndef YY_TYPEDEF_YY_SCANNER_T
Modified: trunk/include/asterisk/ast_expr.h
URL: http://svn.digium.com/view/asterisk/trunk/include/asterisk/ast_expr.h?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/include/asterisk/ast_expr.h (original)
+++ trunk/include/asterisk/ast_expr.h Wed Aug 15 14:21:27 2007
@@ -19,7 +19,6 @@
#ifndef _ASTERISK_EXPR_H
#define _ASTERISK_EXPR_H
#ifndef STANDALONE
-#include "asterisk/channel.h"
#endif
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
Modified: trunk/include/asterisk/pbx.h
URL: http://svn.digium.com/view/asterisk/trunk/include/asterisk/pbx.h?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/include/asterisk/pbx.h (original)
+++ trunk/include/asterisk/pbx.h Wed Aug 15 14:21:27 2007
@@ -904,6 +904,52 @@
*/
int ast_func_write(struct ast_channel *chan, const char *function, const char *value);
+/*!
+ * 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.
+ */
+
+enum ext_match_t {
+ E_MATCHMORE = 0x00, /* extension can match but only with more 'digits' */
+ E_CANMATCH = 0x01, /* extension can match with or without more 'digits' */
+ E_MATCH = 0x02, /* extension is an exact match */
+ E_MATCH_MASK = 0x03, /* mask for the argument to extension_match_core() */
+ E_SPAWN = 0x12, /* want to spawn an extension. Requires exact match */
+ E_FINDLABEL = 0x22 /* returns the priority for a given label. Requires exact match */
+};
+
+#define STATUS_NO_CONTEXT 1
+#define STATUS_NO_EXTENSION 2
+#define STATUS_NO_PRIORITY 3
+#define STATUS_NO_LABEL 4
+#define STATUS_SUCCESS 5
+#define AST_PBX_MAX_STACK 128
+
+/* request and result for pbx_find_extension */
+struct pbx_find_info {
+#if 0
+ const char *context;
+ const char *exten;
+ int priority;
+#endif
+
+ char *incstack[AST_PBX_MAX_STACK]; /* filled during the search */
+ int stacklen; /* modified during the search */
+ int status; /* set on return */
+ struct ast_switch *swo; /* set on return */
+ const char *data; /* set on return */
+ const char *foundcontext; /* set on return */
+};
+
+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);
+
+
+
#if defined(__cplusplus) || defined(c_plusplus)
}
#endif
Modified: trunk/main/pbx.c
URL: http://svn.digium.com/view/asterisk/trunk/main/pbx.c?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/main/pbx.c (original)
+++ trunk/main/pbx.c Wed Aug 15 14:21:27 2007
@@ -767,21 +767,6 @@
else
return (ret > 0) ? 1 : -1;
}
-
-/*!
- * 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.
- */
-enum ext_match_t {
- E_MATCHMORE = 0x00, /*!< extension can match but only with more 'digits' */
- E_CANMATCH = 0x01, /*!< extension can match with or without more 'digits' */
- E_MATCH = 0x02, /*!< extension is an exact match */
- E_MATCH_MASK = 0x03, /*!< mask for the argument to extension_match_core() */
- E_SPAWN = 0x12, /*!< want to spawn an extension. Requires exact match */
- E_FINDLABEL = 0x22 /*!< returns the priority for a given label. Requires exact match */
-};
/*!
* \internal
@@ -947,23 +932,7 @@
return ast_extension_match(cidpattern, callerid);
}
-/*! request and result for pbx_find_extension */
-struct pbx_find_info {
-#if 0
- const char *context;
- const char *exten;
- int priority;
-#endif
-
- char *incstack[AST_PBX_MAX_STACK]; /* filled during the search */
- int stacklen; /* modified during the search */
- int status; /* set on return */
- struct ast_switch *swo; /* set on return */
- const char *data; /* set on return */
- const char *foundcontext; /* set on return */
-};
-
-static struct ast_exten *pbx_find_extension(struct ast_channel *chan,
+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)
Modified: trunk/pbx/Makefile
URL: http://svn.digium.com/view/asterisk/trunk/pbx/Makefile?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/Makefile (original)
+++ trunk/pbx/Makefile Wed Aug 15 14:21:27 2007
@@ -28,20 +28,6 @@
clean::
rm -f ael/*.o
-ael/ael_lex.o: ael/ael_lex.c ../include/asterisk/ael_structs.h ael/ael.tab.h
-ael/ael_lex.o: ASTCFLAGS+=-I.
-
-ael/ael.tab.o: ael/ael.tab.c ael/ael.tab.h ../include/asterisk/ael_structs.h
-ael/ael.tab.o: ASTCFLAGS+=-I. -DYYENABLE_NLS=0
-
-$(if $(filter pbx_ael,$(EMBEDDED_MODS)),modules.link,pbx_ael.so): ael/ael.tab.o ael/ael_lex.o
-
-ael/ael_lex.c:
- (cd ael; flex ael.flex; sed -i -e "/begin standard C headers/i#include \"asterisk.h\"" ael_lex.c)
-
-ael/ael.tab.c ael/ael.tab.h:
- (cd ael; bison -v -d ael.y)
-
dundi-parser.o: dundi-parser.h
dundi-parser.o: ASTCFLAGS+=-I.
Modified: trunk/pbx/ael/ael-test/ref.ael-ntest10
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-ntest10?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-ntest10 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-ntest10 Wed Aug 15 14:21:27 2007
@@ -5,27 +5,36 @@
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:4092 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:4099 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4107 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 1-4: The macro endsess does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 6-9: The macro nullchk does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 11-26: The macro endcall does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 28-44: The macro endcall2 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 36-36: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 46-68: The macro endcall3 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 48-48: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 60-60: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 70-96: The macro endcall4 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 72-72: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 84-84: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 87-87: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 98-131: The macro endcall5 does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 106-106: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 119-119: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 122-122: A default case was automatically added to the switch.
-LOG: lev:2 file:pbx_ael.c line:4110 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1680 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:1687 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1695 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 1-4: The macro endsess does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 6-9: The macro nullchk does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 11-26: The macro endcall does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
+LOG: lev:3 file:extconf.c line:3959 func: add_pri Unable to register extension '_', priority 1 in 'test6', already in use
+LOG: lev:3 file:extconf.c line:3959 func: add_pri Unable to register extension '_X.', priority 1 in 'test6', already in use
+=== Loading extensions.conf ===
+Context: test6
+Context: test5
+Context: macro-funcA
+Context: macro-funcB
+Context: macro-funcC
+=========
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 28-44: The macro endcall2 does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 36-36: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 46-68: The macro endcall3 does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 48-48: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 60-60: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 70-96: The macro endcall4 does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 72-72: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 84-84: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 87-87: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 98-131: The macro endcall5 does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 106-106: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 119-119: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 122-122: A default case was automatically added to the switch.
+LOG: lev:2 file:pbx_ael.c line:1698 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
Executed ast_context_create(conts, name=endsess, registrar=pbx_ael);
Executed ast_context_create(conts, name=nullchk, registrar=pbx_ael);
Executed ast_context_create(conts, name=endcall, registrar=pbx_ael);
@@ -154,9 +163,9 @@
Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=13, label=(null), callerid=(null), appl=Goto, data=sw-21-in,ptr1, FREE, registrar=pbx_ael);
Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=14, label=(null), callerid=(null), appl=NoOp, data=Finish if-sw-endcall5-out-16-17, FREE, registrar=pbx_ael);
Executed ast_add_extension2(context=endcall5, rep=0, exten=sw-16-out, priority=15, label=(null), callerid=(null), appl=Goto, data=sw-16-in,10, FREE, registrar=pbx_ael);
-LOG: lev:2 file:pbx_ael.c line:4112 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1700 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
Executed ast_merge_contexts_and_delete();
-LOG: lev:2 file:pbx_ael.c line:4115 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1703 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
Executed ast_walk_contexts();
-LOG: lev:2 file:pbx_ael.c line:4118 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse line:522 func: main 7 contexts, 27 extensions, 121 priorities
+LOG: lev:2 file:pbx_ael.c line:1706 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse line:521 func: main 7 contexts, 27 extensions, 121 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test1
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test1?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test1 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test1 Wed Aug 15 14:21:27 2007
@@ -2,18 +2,18 @@
(If you find progress and other non-error messages irritating, you can use -q to suppress them)
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:4092 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:4099 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4107 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 2-16: The macro testdial does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:739 func: check_macro_returns Warning: file ./extensions.ael, line 18-25: The macro exten-gen does not end with a return; I will insert one.
-LOG: lev:3 file:pbx_ael.c line:1408 func: check_goto Warning: file ./extensions.ael, line 21-21: It's bad form to have a goto in a macro to a target outside the macro!
-LOG: lev:3 file:pbx_ael.c line:1408 func: check_goto Warning: file ./extensions.ael, line 23-23: It's bad form to have a goto in a macro to a target outside the macro!
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 58-58: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:989 func: check_dow Warning: file ./extensions.ael, line 67-67: The day (m0n) must be one of 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', or 'sat'!
-LOG: lev:3 file:pbx_ael.c line:947 func: check_timerange Warning: file ./extensions.ael, line 78-78: The end time (25:00) is out of range!
-LOG: lev:2 file:pbx_ael.c line:4110 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4112 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4115 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4118 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse line:522 func: main 5 contexts, 14 extensions, 155 priorities
+LOG: lev:2 file:pbx_ael.c line:1680 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:1687 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1695 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 2-16: The macro testdial does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:668 func: check_macro_returns Warning: file ./extensions.ael, line 18-25: The macro exten-gen does not end with a return; I will insert one.
+LOG: lev:3 file:pval.c line:1358 func: check_goto Warning: file ./extensions.ael, line 21-21: It's bad form to have a goto in a macro to a target outside the macro!
+LOG: lev:3 file:pval.c line:1358 func: check_goto Warning: file ./extensions.ael, line 23-23: It's bad form to have a goto in a macro to a target outside the macro!
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 58-58: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:918 func: check_dow Warning: file ./extensions.ael, line 67-67: The day (m0n) must be one of 'sun', 'mon', 'tue', 'wed', 'thu', 'fri', or 'sat'!
+LOG: lev:3 file:pval.c line:876 func: check_timerange Warning: file ./extensions.ael, line 78-78: The end time (25:00) is out of range!
+LOG: lev:2 file:pbx_ael.c line:1698 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1700 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1703 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1706 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse line:521 func: main 5 contexts, 14 extensions, 155 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test11
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test11?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test11 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test11 Wed Aug 15 14:21:27 2007
@@ -2,13 +2,13 @@
(If you find progress and other non-error messages irritating, you can use -q to suppress them)
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:4092 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:4099 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4107 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:4 file:pbx_ael.c line:1214 func: check_label Error: file ./extensions.ael, line 13-13: Duplicate label lab1! Previously defined at file ./extensions.ael, line 8.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 32-32: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 44-44: A default case was automatically added to the switch.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 47-47: A default case was automatically added to the switch.
-LOG: lev:4 file:pbx_ael.c line:1214 func: check_label Error: file ./extensions.ael, line 49-49: Duplicate label ptr1! Previously defined at file ./extensions.ael, line 33.
-LOG: lev:4 file:pbx_ael.c line:4120 func: pbx_load_module Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse line:522 func: main 0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c line:1680 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:1687 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1695 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:4 file:pval.c line:1143 func: check_label Error: file ./extensions.ael, line 13-13: Duplicate label lab1! Previously defined at file ./extensions.ael, line 8.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 32-32: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 44-44: A default case was automatically added to the switch.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 47-47: A default case was automatically added to the switch.
+LOG: lev:4 file:pval.c line:1143 func: check_label Error: file ./extensions.ael, line 49-49: Duplicate label ptr1! Previously defined at file ./extensions.ael, line 33.
+LOG: lev:4 file:pbx_ael.c line:1708 func: pbx_load_module Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse line:521 func: main 0 contexts, 0 extensions, 0 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test14
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test14?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test14 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test14 Wed Aug 15 14:21:27 2007
@@ -2,11 +2,11 @@
(If you find progress and other non-error messages irritating, you can use -q to suppress them)
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:4092 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:4099 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:4107 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c line:2356 func: check_switch_expr Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
-LOG: lev:4 file:pbx_ael.c line:1138 func: check_continue Error: file ./extensions.ael, line 15-15: 'continue' not in 'for' or 'while' statement!
-LOG: lev:4 file:pbx_ael.c line:1119 func: check_break Error: file ./extensions.ael, line 17-17: 'break' not in switch, for, or while statement!
-LOG: lev:4 file:pbx_ael.c line:4120 func: pbx_load_module Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
-LOG: lev:4 file:ael2_parse line:522 func: main 0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c line:1680 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:1687 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:1695 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:3 file:pval.c line:2280 func: check_switch_expr Warning: file ./extensions.ael, line 13-13: A default case was automatically added to the switch.
+LOG: lev:4 file:pval.c line:1067 func: check_continue Error: file ./extensions.ael, line 15-15: 'continue' not in 'for' or 'while' statement!
+LOG: lev:4 file:pval.c line:1048 func: check_break Error: file ./extensions.ael, line 17-17: 'break' not in switch, for, or while statement!
+LOG: lev:4 file:pbx_ael.c line:1708 func: pbx_load_module Sorry, but 0 syntax errors and 2 semantic errors were detected. It doesn't make sense to compile.
+LOG: lev:4 file:ael2_parse line:521 func: main 0 contexts, 0 extensions, 0 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test15
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test15?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test15 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test15 Wed Aug 15 14:21:27 2007
@@ -2,12 +2,12 @@
(If you find progress and other non-error messages irritating, you can use -q to suppress them)
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:3910 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:3917 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3925 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3928 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c line:3813 func: ast_compile_ael2 Warning: file ./extensions.ael, line 8-13: Empty Extension!
-LOG: lev:2 file:pbx_ael.c line:3930 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3933 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3936 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse line:479 func: main 1 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c line:113 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:120 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:128 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:131 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
+LOG: lev:3 file:pval.c line:3905 func: ast_compile_ael2 Warning: file ./extensions.ael, line 8-13: Empty Extension!
+LOG: lev:2 file:pbx_ael.c line:133 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:136 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:139 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse line:499 func: main 1 contexts, 0 extensions, 0 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test16
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test16?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test16 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test16 Wed Aug 15 14:21:27 2007
@@ -2,13 +2,13 @@
(If you find progress and other non-error messages irritating, you can use -q to suppress them)
(You can use the -w option to dump extensions.conf format to extensions.conf.aeldump)
-LOG: lev:2 file:pbx_ael.c line:3914 func: pbx_load_module Starting AEL load process.
-LOG: lev:2 file:pbx_ael.c line:3921 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:113 func: pbx_load_module Starting AEL load process.
+LOG: lev:2 file:pbx_ael.c line:120 func: pbx_load_module AEL load process: calculated config file name './extensions.ael'.
LOG: lev:3 file:ael.y line:205 func: ael_yyparse ==== File: ./extensions.ael, Line 1, Cols: 19-19: Warning! The empty context real-small will be IGNORED!
-LOG: lev:2 file:pbx_ael.c line:3929 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3932 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
-LOG: lev:3 file:pbx_ael.c line:3545 func: add_extensions This file is Empty!
-LOG: lev:2 file:pbx_ael.c line:3934 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3937 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
-LOG: lev:2 file:pbx_ael.c line:3940 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
-LOG: lev:4 file:ael2_parse line:479 func: main 0 contexts, 0 extensions, 0 priorities
+LOG: lev:2 file:pbx_ael.c line:128 func: pbx_load_module AEL load process: parsed config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:131 func: pbx_load_module AEL load process: checked config file name './extensions.ael'.
+LOG: lev:3 file:pval.c line:3633 func: add_extensions This file is Empty!
+LOG: lev:2 file:pbx_ael.c line:133 func: pbx_load_module AEL load process: compiled config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:136 func: pbx_load_module AEL load process: merged config file name './extensions.ael'.
+LOG: lev:2 file:pbx_ael.c line:139 func: pbx_load_module AEL load process: verified config file name './extensions.ael'.
+LOG: lev:4 file:ael2_parse line:499 func: main 0 contexts, 0 extensions, 0 priorities
Modified: trunk/pbx/ael/ael-test/ref.ael-test19
URL: http://svn.digium.com/view/asterisk/trunk/pbx/ael/ael-test/ref.ael-test19?view=diff&rev=79595&r1=79594&r2=79595
==============================================================================
--- trunk/pbx/ael/ael-test/ref.ael-test19 (original)
+++ trunk/pbx/ael/ael-test/ref.ael-test19 Wed Aug 15 14:21:27 2007
@@ -2,15 +2,18 @@
[... 3696 lines stripped ...]
More information about the asterisk-commits
mailing list