[asterisk-commits] branch murf/bug_6072 - r8268 in
/team/murf/bug_6072: ./ utils/
asterisk-commits at lists.digium.com
asterisk-commits at lists.digium.com
Thu Jan 19 11:35:44 MST 2006
Author: murf
Date: Thu Jan 19 12:35:39 2006
New Revision: 8268
URL: http://svn.digium.com/view/asterisk?rev=8268&view=rev
Log:
fixed some bugs in the expression parser, and plugged all the
memory leaks. The expression parser now will not leak, as long
as there are no syntax errors. Sorry, but freeing tokens on error
is a pretty complex affair. Maybe some future rev. Usually the
amount leaked on syntax errors is fairly small.
Added checking, fixed the makefile to make the check_expr.c
program. Added an extra entry to make "testexpr2s", a new
exec that tests all the expressions in a file, where the filename
is the only argument.
The expr2.testinput is a set of expressions to provide some regression
testing for the expr2 stuff.
Also noted that ast_expr2.fl was not returning the =~ operator,
or the ~ operator, and had an entry in the TOKEN pattern that would
glom a % to the nearest token. I considered all these as bugs!
Added:
team/murf/bug_6072/utils/expr2.testinput
Modified:
team/murf/bug_6072/ast_expr2.c
team/murf/bug_6072/ast_expr2.fl
team/murf/bug_6072/ast_expr2.h
team/murf/bug_6072/ast_expr2.y
team/murf/bug_6072/ast_expr2f.c
team/murf/bug_6072/utils/Makefile
team/murf/bug_6072/utils/check_expr.c
Modified: team/murf/bug_6072/ast_expr2.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug_6072/ast_expr2.c?rev=8268&r1=8267&r2=8268&view=diff
==============================================================================
--- team/murf/bug_6072/ast_expr2.c (original)
+++ team/murf/bug_6072/ast_expr2.c Thu Jan 19 12:35:39 2006
@@ -130,6 +130,7 @@
#include <stdlib.h>
#include <string.h>
#include <locale.h>
+#include <unistd.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
@@ -259,12 +260,12 @@
#endif
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 142 "ast_expr2.y"
+#line 143 "ast_expr2.y"
typedef union YYSTYPE {
struct val *val;
} YYSTYPE;
/* Line 190 of yacc.c. */
-#line 268 "ast_expr2.c"
+#line 269 "ast_expr2.c"
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
# define YYSTYPE_IS_TRIVIAL 1
@@ -285,13 +286,13 @@
/* Copy the second part of user declarations. */
-#line 146 "ast_expr2.y"
+#line 147 "ast_expr2.y"
extern int ast_yylex __P((YYSTYPE *, YYLTYPE *, yyscan_t));
/* Line 213 of yacc.c. */
-#line 295 "ast_expr2.c"
+#line 296 "ast_expr2.c"
#if ! defined (yyoverflow) || YYERROR_VERBOSE
@@ -473,9 +474,9 @@
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const unsigned char yyrline[] =
{
- 0, 165, 165, 175, 176, 180, 184, 188, 192, 196,
- 200, 204, 208, 212, 216, 220, 224, 228, 232, 236,
- 240, 244, 248
+ 0, 166, 166, 176, 177, 181, 185, 189, 193, 197,
+ 201, 205, 209, 213, 217, 221, 225, 229, 233, 237,
+ 241, 245, 249
};
#endif
@@ -1268,7 +1269,7 @@
switch (yyn)
{
case 2:
-#line 165 "ast_expr2.y"
+#line 166 "ast_expr2.y"
{ ((struct parse_io *)parseio)->val = (struct val *)calloc(sizeof(struct val),1);
((struct parse_io *)parseio)->val->type = (yyvsp[0].val)->type;
if( (yyvsp[0].val)->type == AST_EXPR_integer )
@@ -1280,12 +1281,12 @@
break;
case 3:
-#line 175 "ast_expr2.y"
+#line 176 "ast_expr2.y"
{ (yyval.val)= (yyvsp[0].val);;}
break;
case 4:
-#line 176 "ast_expr2.y"
+#line 177 "ast_expr2.y"
{ (yyval.val) = (yyvsp[-1].val);
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
(yyloc).first_line=0; (yyloc).last_line=0;
@@ -1293,7 +1294,7 @@
break;
case 5:
-#line 180 "ast_expr2.y"
+#line 181 "ast_expr2.y"
{ (yyval.val) = op_or ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1301,7 +1302,7 @@
break;
case 6:
-#line 184 "ast_expr2.y"
+#line 185 "ast_expr2.y"
{ (yyval.val) = op_and ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1309,7 +1310,7 @@
break;
case 7:
-#line 188 "ast_expr2.y"
+#line 189 "ast_expr2.y"
{ (yyval.val) = op_eq ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1317,7 +1318,7 @@
break;
case 8:
-#line 192 "ast_expr2.y"
+#line 193 "ast_expr2.y"
{ (yyval.val) = op_gt ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1325,7 +1326,7 @@
break;
case 9:
-#line 196 "ast_expr2.y"
+#line 197 "ast_expr2.y"
{ (yyval.val) = op_lt ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1333,7 +1334,7 @@
break;
case 10:
-#line 200 "ast_expr2.y"
+#line 201 "ast_expr2.y"
{ (yyval.val) = op_ge ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1341,7 +1342,7 @@
break;
case 11:
-#line 204 "ast_expr2.y"
+#line 205 "ast_expr2.y"
{ (yyval.val) = op_le ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1349,7 +1350,7 @@
break;
case 12:
-#line 208 "ast_expr2.y"
+#line 209 "ast_expr2.y"
{ (yyval.val) = op_ne ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1357,7 +1358,7 @@
break;
case 13:
-#line 212 "ast_expr2.y"
+#line 213 "ast_expr2.y"
{ (yyval.val) = op_plus ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1365,7 +1366,7 @@
break;
case 14:
-#line 216 "ast_expr2.y"
+#line 217 "ast_expr2.y"
{ (yyval.val) = op_minus ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1373,7 +1374,7 @@
break;
case 15:
-#line 220 "ast_expr2.y"
+#line 221 "ast_expr2.y"
{ (yyval.val) = op_negate ((yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-1]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1381,7 +1382,7 @@
break;
case 16:
-#line 224 "ast_expr2.y"
+#line 225 "ast_expr2.y"
{ (yyval.val) = op_compl ((yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-1]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1389,7 +1390,7 @@
break;
case 17:
-#line 228 "ast_expr2.y"
+#line 229 "ast_expr2.y"
{ (yyval.val) = op_times ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1397,7 +1398,7 @@
break;
case 18:
-#line 232 "ast_expr2.y"
+#line 233 "ast_expr2.y"
{ (yyval.val) = op_div ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1405,7 +1406,7 @@
break;
case 19:
-#line 236 "ast_expr2.y"
+#line 237 "ast_expr2.y"
{ (yyval.val) = op_rem ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1413,7 +1414,7 @@
break;
case 20:
-#line 240 "ast_expr2.y"
+#line 241 "ast_expr2.y"
{ (yyval.val) = op_colon ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1421,7 +1422,7 @@
break;
case 21:
-#line 244 "ast_expr2.y"
+#line 245 "ast_expr2.y"
{ (yyval.val) = op_eqtilde ((yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-1].val));
(yyloc).first_column = (yylsp[-2]).first_column; (yyloc).last_column = (yylsp[0]).last_column;
@@ -1429,7 +1430,7 @@
break;
case 22:
-#line 248 "ast_expr2.y"
+#line 249 "ast_expr2.y"
{ (yyval.val) = op_cond ((yyvsp[-4].val), (yyvsp[-2].val), (yyvsp[0].val));
DESTROY((yyvsp[-3].val));
DESTROY((yyvsp[-1].val));
@@ -1441,7 +1442,7 @@
}
/* Line 1037 of yacc.c. */
-#line 1445 "ast_expr2.c"
+#line 1446 "ast_expr2.c"
yyvsp -= yylen;
yyssp -= yylen;
@@ -1676,7 +1677,7 @@
}
-#line 255 "ast_expr2.y"
+#line 256 "ast_expr2.y"
static struct val *
@@ -1847,11 +1848,41 @@
int main(int argc,char **argv) {
char s[4096];
+ char out[4096];
+ FILE *infile;
- if (ast_expr(argv[1], s, sizeof(s)))
- printf("=====%s======\n",s);
+ if( !argv[1] )
+ exit(20);
+
+ if( access(argv[1],F_OK)== 0 )
+ {
+ int ret;
+
+ infile = fopen(argv[1],"r");
+ if( !infile )
+ {
+ printf("Sorry, couldn't open %s for reading!\n", argv[1]);
+ exit(10);
+ }
+ while( fgets(s,sizeof(s),infile) )
+ {
+ if( s[strlen(s)-1] == '\n' )
+ s[strlen(s)-1] = 0;
+
+ ret = ast_expr(s, out, sizeof(out));
+ printf("Expression: %s Result: [%d] '%s'\n",
+ s, ret, out);
+ }
+ fclose(infile);
+ }
else
- printf("No result\n");
+ {
+ if (ast_expr(argv[1], s, sizeof(s)))
+ printf("=====%s======\n",s);
+ else
+ printf("No result\n");
+ }
+
}
#endif
Modified: team/murf/bug_6072/ast_expr2.fl
URL: http://svn.digium.com/view/asterisk/team/murf/bug_6072/ast_expr2.fl?rev=8268&r1=8267&r2=8268&view=diff
==============================================================================
--- team/murf/bug_6072/ast_expr2.fl (original)
+++ team/murf/bug_6072/ast_expr2.fl Thu Jan 19 12:35:39 2006
@@ -1,4 +1,22 @@
%{
+/*
+ * Asterisk -- An open source telephony toolkit.
+ *
+ * Copyright (C) 1999 - 2006, Digium, Inc.
+ *
+ * Mark Spencer <markster at digium.com>
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE file
+ * at the top of the source tree.
+ */
+
/*! \file
*
* \brief Dialplan Expression Parser
@@ -10,6 +28,7 @@
#include <string.h>
#include <locale.h>
#include <ctype.h>
+#include <unistd.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
#else
@@ -65,6 +84,7 @@
\| { SET_COLUMNS; SET_STRING; return TOK_OR;}
\& { SET_COLUMNS; SET_STRING; return TOK_AND;}
+\=\~ { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;}
\= { SET_COLUMNS; SET_STRING; return TOK_EQ;}
\> { SET_COLUMNS; SET_STRING; return TOK_GT;}
\< { SET_COLUMNS; SET_STRING; return TOK_LT;}
@@ -78,6 +98,7 @@
\% { SET_COLUMNS; SET_STRING; return TOK_MOD;}
\? { SET_COLUMNS; SET_STRING; return TOK_COND;}
\: { SET_COLUMNS; SET_STRING; return TOK_COLON;}
+\~ { SET_COLUMNS; SET_STRING; return TOK_COMPL;}
\:\: { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;}
\( { SET_COLUMNS; SET_STRING; return TOK_LP;}
\) { SET_COLUMNS; SET_STRING; return TOK_RP;}
@@ -91,7 +112,7 @@
[0-9]+ { SET_COLUMNS; /* the original behavior of the expression parser was to bring in numbers as a numeric string */
SET_NUMERIC_STRING;
return TOKEN;}
-[a-zA-Z0-9,.';\\_^%$#@!]+ {SET_COLUMNS; SET_STRING; return TOKEN;}
+[a-zA-Z0-9,.';\\_^$#@]+ {SET_COLUMNS; SET_STRING; return TOKEN;}
<var>[^{}]*\} {curlycount--; if(curlycount < 0){ BEGIN(trail); yymore();} else { yymore();}}
<var>[^{}]*\{ {curlycount++; yymore(); }
Modified: team/murf/bug_6072/ast_expr2.h
URL: http://svn.digium.com/view/asterisk/team/murf/bug_6072/ast_expr2.h?rev=8268&r1=8267&r2=8268&view=diff
==============================================================================
--- team/murf/bug_6072/ast_expr2.h (original)
+++ team/murf/bug_6072/ast_expr2.h Thu Jan 19 12:35:39 2006
@@ -78,7 +78,7 @@
#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED)
-#line 142 "ast_expr2.y"
+#line 143 "ast_expr2.y"
typedef union YYSTYPE {
struct val *val;
} YYSTYPE;
Modified: team/murf/bug_6072/ast_expr2.y
URL: http://svn.digium.com/view/asterisk/team/murf/bug_6072/ast_expr2.y?rev=8268&r1=8267&r2=8268&view=diff
==============================================================================
--- team/murf/bug_6072/ast_expr2.y (original)
+++ team/murf/bug_6072/ast_expr2.y Thu Jan 19 12:35:39 2006
@@ -17,6 +17,7 @@
#include <stdlib.h>
#include <string.h>
#include <locale.h>
+#include <unistd.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
@@ -422,11 +423,41 @@
int main(int argc,char **argv) {
char s[4096];
+ char out[4096];
+ FILE *infile;
- if (ast_expr(argv[1], s, sizeof(s)))
- printf("=====%s======\n",s);
+ if( !argv[1] )
+ exit(20);
+
+ if( access(argv[1],F_OK)== 0 )
+ {
+ int ret;
+
+ infile = fopen(argv[1],"r");
+ if( !infile )
+ {
+ printf("Sorry, couldn't open %s for reading!\n", argv[1]);
+ exit(10);
+ }
+ while( fgets(s,sizeof(s),infile) )
+ {
+ if( s[strlen(s)-1] == '\n' )
+ s[strlen(s)-1] = 0;
+
+ ret = ast_expr(s, out, sizeof(out));
+ printf("Expression: %s Result: [%d] '%s'\n",
+ s, ret, out);
+ }
+ fclose(infile);
+ }
else
- printf("No result\n");
+ {
+ if (ast_expr(argv[1], s, sizeof(s)))
+ printf("=====%s======\n",s);
+ else
+ printf("No result\n");
+ }
+
}
#endif
Modified: team/murf/bug_6072/ast_expr2f.c
URL: http://svn.digium.com/view/asterisk/team/murf/bug_6072/ast_expr2f.c?rev=8268&r1=8267&r2=8268&view=diff
==============================================================================
--- team/murf/bug_6072/ast_expr2f.c (original)
+++ team/murf/bug_6072/ast_expr2f.c Thu Jan 19 12:35:39 2006
@@ -360,7 +360,7 @@
13, 8, 13, 8, 13, 13, 8, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 8, 29, 8, 8, 8
+ 13, 13, 13, 8, 29, 8, 30, 8
},
{
@@ -377,77 +377,77 @@
13, 8, 13, 8, 13, 13, 8, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
13, 13, 13, 13, 13, 13, 13, 13, 13, 13,
- 13, 13, 13, 8, 29, 8, 8, 8
- },
-
- {
- 7, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 31, 30, 32, 30, 30
- },
-
- {
- 7, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
-
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 30, 30, 30, 30, 30, 30, 30,
- 30, 30, 30, 31, 30, 32, 30, 30
- },
-
- {
- 7, 33, 33, 33, 33, 33, 33, 33, 33, 34,
- 34, 33, 33, 34, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 34, 34, 33, 33, 35, 34, 34, 33,
- 34, 34, 34, 34, 33, 34, 33, 34, 33, 33,
-
- 33, 33, 33, 33, 33, 33, 33, 33, 34, 33,
- 34, 34, 34, 34, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 34, 33, 33, 33
- },
-
- {
- 7, 33, 33, 33, 33, 33, 33, 33, 33, 34,
- 34, 33, 33, 34, 33, 33, 33, 33, 33, 33,
-
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 34, 34, 33, 33, 35, 34, 34, 33,
- 34, 34, 34, 34, 33, 34, 33, 34, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 34, 33,
- 34, 34, 34, 34, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
- 33, 33, 33, 33, 33, 33, 33, 33, 33, 33,
-
- 33, 33, 33, 33, 34, 33, 33, 33
+ 13, 13, 13, 8, 29, 8, 30, 8
+ },
+
+ {
+ 7, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 32, 31, 33, 31, 31
+ },
+
+ {
+ 7, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 31, 31, 31, 31, 31, 31, 31,
+ 31, 31, 31, 32, 31, 33, 31, 31
+ },
+
+ {
+ 7, 34, 34, 34, 34, 34, 34, 34, 34, 35,
+ 35, 34, 34, 35, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 35, 35, 34, 34, 36, 35, 35, 34,
+ 35, 35, 35, 35, 34, 35, 34, 35, 34, 34,
+
+ 34, 34, 34, 34, 34, 34, 34, 34, 35, 34,
+ 35, 35, 35, 35, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 35, 34, 34, 34
+ },
+
+ {
+ 7, 34, 34, 34, 34, 34, 34, 34, 34, 35,
+ 35, 34, 34, 35, 34, 34, 34, 34, 34, 34,
+
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 35, 35, 34, 34, 36, 35, 35, 34,
+ 35, 35, 35, 35, 34, 35, 34, 35, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 35, 34,
+ 35, 35, 35, 35, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+ 34, 34, 34, 34, 34, 34, 34, 34, 34, 34,
+
+ 34, 34, 34, 34, 35, 34, 34, 34
},
{
@@ -523,17 +523,17 @@
7, -11, -11, -11, -11, -11, -11, -11, -11, -11,
-11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
-11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
- -11, -11, -11, 36, -11, 36, 36, 36, -11, 36,
- -11, -11, -11, -11, 36, -11, 36, -11, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, -11, 36,
- -11, 37, -11, -11, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -11, 36, -11, 36, 36, -11, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, -11, -11, -11, -11, -11
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, 37, -11, -11, -11, -11, -11, -11, -11, -11,
+
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11, -11, -11,
+ -11, -11, -11, -11, -11, -11, -11, -11
},
{
@@ -558,51 +558,51 @@
-13, -13, -13, -13, -13, -13, -13, -13, -13, -13,
-13, -13, -13, -13, -13, -13, -13, -13, -13, -13,
- -13, -13, -13, 36, -13, 36, 36, 36, -13, 36,
- -13, -13, -13, -13, 36, -13, 36, -13, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, -13, 36,
- -13, -13, -13, -13, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -13, 36, -13, 36, 36, -13, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, -13, -13, -13, -13, -13
+ -13, -13, -13, -13, -13, 40, 40, -13, -13, 40,
+ -13, -13, -13, -13, 40, -13, 40, -13, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, -13, 40,
+ -13, -13, -13, -13, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, -13, 40, -13, 40, 40, -13, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, -13, -13, -13, -13, -13
},
{
7, -14, -14, -14, -14, -14, -14, -14, -14, -14,
-14, -14, -14, -14, -14, -14, -14, -14, -14, -14,
-14, -14, -14, -14, -14, -14, -14, -14, -14, -14,
- -14, -14, -14, 36, -14, 36, 36, 36, -14, 36,
- -14, -14, -14, -14, 36, -14, 36, -14, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, -14, 36,
- -14, -14, -14, -14, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -14, 36, -14, 36, 36, -14, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 40, -14, -14, -14, -14
+ -14, -14, -14, -14, -14, 40, 40, -14, -14, 40,
+ -14, -14, -14, -14, 40, -14, 40, -14, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, -14, 40,
+ -14, -14, -14, -14, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, -14, 40, -14, 40, 40, -14, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 41, -14, -14, -14, -14
},
{
7, -15, -15, -15, -15, -15, -15, -15, -15, -15,
-15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
-15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
- -15, -15, -15, 36, -15, 36, 36, 36, -15, 36,
- -15, -15, -15, -15, 36, -15, 36, -15, 36, 36,
-
- 36, 36, 36, 36, 36, 36, 36, 36, -15, 36,
- -15, -15, -15, -15, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -15, 36, -15, 36, 36, -15, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, -15, -15, -15, -15, -15
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15, -15, -15,
+ -15, -15, -15, -15, -15, -15, -15, -15
},
{
@@ -731,17 +731,17 @@
-23, -23, -23, -23, -23, -23, -23, -23, -23, -23,
-23, -23, -23, -23, -23, -23, -23, -23, -23, -23,
- -23, -23, -23, 36, -23, 36, 36, 36, -23, 36,
- -23, -23, -23, -23, 36, -23, 36, -23, 41, 41,
- 41, 41, 41, 41, 41, 41, 41, 41, -23, 36,
- -23, -23, -23, -23, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -23, 36, -23, 36, 36, -23, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, -23, -23, -23, -23, -23
+ -23, -23, -23, -23, -23, 40, 40, -23, -23, 40,
+ -23, -23, -23, -23, 40, -23, 40, -23, 42, 42,
+ 42, 42, 42, 42, 42, 42, 42, 42, -23, 40,
+ -23, -23, -23, -23, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, -23, 40, -23, 40, 40, -23, 40, 40, 40,
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+
+ 40, 40, 40, 40, 40, 40, 40, 40, 40, 40,
+ 40, 40, 40, -23, -23, -23, -23, -23
},
{
@@ -750,7 +750,7 @@
-24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
-24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
-24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
- -24, -24, -24, -24, -24, -24, -24, -24, 42, -24,
+ -24, -24, -24, -24, -24, -24, -24, -24, 43, -24,
-24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
-24, -24, -24, -24, -24, -24, -24, -24, -24, -24,
@@ -769,7 +769,7 @@
-25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
-25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
- -25, 43, -25, -25, -25, -25, -25, -25, -25, -25,
+ -25, 44, -25, -25, -25, -25, -25, -25, -25, -25,
-25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
-25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
-25, -25, -25, -25, -25, -25, -25, -25, -25, -25,
@@ -793,7 +793,7 @@
-26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
-26, -26, -26, -26, -26, -26, -26, -26, -26, -26,
- -26, -26, -26, -26, -26, -26, -26, -26
+ -26, -26, -26, -26, -26, -26, 45, -26
},
{
@@ -803,7 +803,7 @@
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
- -27, 44, -27, -27, -27, -27, -27, -27, -27, -27,
+ -27, 46, -27, -27, -27, -27, -27, -27, -27, -27,
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
-27, -27, -27, -27, -27, -27, -27, -27, -27, -27,
@@ -849,37 +849,37 @@
},
{
- 7, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
-
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 45, 45, 45, 45, 45, 45, 45,
- 45, 45, 45, 46, 45, 47, 45, 45
- },
-
- {
- 7, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
-
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31, -31, -31,
- -31, -31, -31, -31, -31, -31, -31, -31
+ 7, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30, -30, -30,
+ -30, -30, -30, -30, -30, -30, -30, -30
+ },
+
+ {
+ 7, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 47, 47, 47, 47, 47, 47, 47,
+ 47, 47, 47, 48, 47, 49, 47, 47
},
{
@@ -900,38 +900,38 @@
},
{
- 7, 48, 48, 48, 48, 48, 48, 48, 48, -33,
-
- -33, 48, 48, -33, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, -33, -33, 48, 48, -33, -33, -33, 48,
- -33, -33, -33, -33, 48, -33, 48, -33, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, -33, 48,
- -33, -33, -33, -33, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
-
- 48, 48, 48, 48, 48, 48, 48, 48, 48, 48,
- 48, 48, 48, 48, -33, 48, 48, 48
- },
-
- {
- 7, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
-
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34, -34, -34,
- -34, -34, -34, -34, -34, -34, -34, -34
+ 7, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+
+ -33, -33, -33, -33, -33, -33, -33, -33, -33, -33,
+ -33, -33, -33, -33, -33, -33, -33, -33
+ },
+
+ {
+ 7, 50, 50, 50, 50, 50, 50, 50, 50, -34,
+ -34, 50, 50, -34, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+ 50, 50, -34, -34, 50, 50, -34, -34, -34, 50,
+ -34, -34, -34, -34, 50, -34, 50, -34, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, -34, 50,
+ -34, -34, -34, -34, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, 50, 50, 50, 50, 50, 50,
+ 50, 50, 50, 50, -34, 50, 50, 50
},
{
@@ -948,7 +948,7 @@
-35, -35, -35, -35, -35, -35, -35, -35, -35, -35,
-35, -35, -35, -35, -35, -35, -35, -35, -35, -35,
-35, -35, -35, -35, -35, -35, -35, -35, -35, -35,
- -35, -35, -35, 49, -35, -35, -35, -35
+ -35, -35, -35, -35, -35, -35, -35, -35
},
{
@@ -956,17 +956,17 @@
-36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
-36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
- -36, -36, -36, 36, -36, 36, 36, 36, -36, 36,
- -36, -36, -36, -36, 36, -36, 36, -36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, -36, 36,
- -36, -36, -36, -36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, -36, 36, -36, 36, 36, -36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
- 36, 36, 36, 36, 36, 36, 36, 36, 36, 36,
-
- 36, 36, 36, -36, -36, -36, -36, -36
+ -36, -36, -36, -36, -36, -36, -36, -36, -36, -36,
[... 744 lines stripped ...]
More information about the asterisk-commits
mailing list