/
staskobzar
/
amiws
Обзор
Документация
Войти
/
staskobzar
/
amiws
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/lib/amipack_parser_command.c
1 917 строк
25 KB
Stas Kobzar
Reworked parsing machine.
06 сен 2017, 05:14
06 сен 2017, 05:14
7ecf80f
Код
Авторство
О чём код?
/* Generated by re2c 1.0.2 */ #line 1 "src/lib/amipack_parser_command.re" /** * amiws -- Library with functions for read/create AMI packets * Copyright (C) 2016, Stas Kobzar <staskobzar@modulis.ca> * * This file is part of amiws. * * amiws is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * amiws is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with amiws. If not, see <http://www.gnu.org/licenses/>. */ /** * @file amipack_parser_detect.c * @brief AMI (Asterisk Management Interface) Command response output parser. * * @author Stas Kobzar <stas.kobzar@modulis.ca> */ #include "amipack.h" AMIPacket *amipack_parser_command (const char *packet) { AMIPacket *pack = amipack_init (); const char *cursor = packet; const char *f1, *f2, *v1, *v2; const char *c1, *c2; const char *yyt1;const char *yyt2;const char *yyt3; loop: #line 44 "src/lib/amipack_parser_command.c" { char yych; unsigned int yyaccept = 0; yych = *cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy2; case '\n': yyt1 = cursor; goto yy4; case '-': yyt1 = cursor; goto yy8; case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': yyt1 = cursor; goto yy9; case 'O': case 'o': yyt1 = cursor; goto yy10; default: yyt1 = cursor; goto yy7; } yy2: ++cursor; yy3: #line 61 "src/lib/amipack_parser_command.re" { amipack_destroy (pack); pack = NULL; goto done; } #line 168 "src/lib/amipack_parser_command.c" yy4: yyaccept = 0; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy6; case '\n': goto yy4; default: goto yy11; } yy6: c1 = yyt1; c2 = cursor; #line 79 "src/lib/amipack_parser_command.re" { int len = (int)(c2 - c1); amipack_append (pack, strdup("Output"), 6, strndup(c1, len), len); goto done; } #line 216 "src/lib/amipack_parser_command.c" yy7: yyaccept = 1; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy3; case '\n': goto yy4; default: goto yy11; } yy8: yyaccept = 1; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy3; case '-': goto yy18; default: goto yy20; } yy9: yyaccept = 1; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy3; default: goto yy20; } yy10: yyaccept = 1; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy3; case 'U': case 'u': goto yy23; default: goto yy20; } yy11: yych = *++cursor; yy12: switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\n': goto yy4; default: goto yy11; } yy13: cursor = packet; switch (yyaccept) { case 0: goto yy6; case 1: goto yy3; case 2: goto yy35; default: goto yy61; } yy14: yych = *++cursor; yy15: switch (yych) { case '\t': case ' ': goto yy14; case ':': goto yy24; default: goto yy13; } yy16: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': goto yy14; case '\n': goto yy4; case ' ': goto yy16; case ':': goto yy21; default: goto yy11; } yy18: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'E': goto yy26; default: goto yy12; } yy19: yych = *++cursor; yy20: switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': yyt2 = cursor; goto yy14; case '\n': goto yy4; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; default: goto yy11; } yy21: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': goto yy24; case '\n': goto yy4; case '\r': yyt3 = cursor; goto yy27; case ' ': goto yy21; default: yyt3 = cursor; goto yy28; } yy23: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'T': case 't': goto yy30; default: goto yy12; } yy24: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': case ' ': goto yy24; case '\r': yyt3 = cursor; goto yy27; default: yyt3 = cursor; goto yy31; } yy26: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'N': goto yy33; default: goto yy12; } yy27: yych = *++cursor; switch (yych) { case '\n': goto yy34; default: goto yy13; } yy28: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\n': goto yy4; case '\r': goto yy27; default: goto yy28; } yy30: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'P': case 'p': goto yy36; default: goto yy12; } yy31: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\r': goto yy27; default: goto yy31; } yy33: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'D': goto yy37; default: goto yy12; } yy34: ++cursor; yy35: f1 = yyt1; f2 = yyt2; v1 = yyt3; v2 = cursor - 2; #line 67 "src/lib/amipack_parser_command.re" { int field_len = (int)(f2 - f1); int value_len = (int)(v2 - v1); amipack_append(pack, strndup(f1, field_len), field_len, strndup(v1, value_len), value_len); goto loop; } #line 1145 "src/lib/amipack_parser_command.c" yy36: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'U': case 'u': goto yy38; default: goto yy12; } yy37: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy39; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; default: goto yy12; } yy38: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy14; case ' ': yyt2 = cursor; goto yy16; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy21; case 'T': case 't': goto yy40; default: goto yy12; } yy39: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy15; case '\n': goto yy4; case ' ': goto yy16; case ':': goto yy21; case 'C': goto yy41; default: goto yy11; } yy40: yych = *++cursor; switch (yych) { case '\t': yyt2 = cursor; goto yy42; case ' ': yyt2 = cursor; goto yy44; case '-': case '.': case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': case 'm': case 'n': case 'o': case 'p': case 'q': case 'r': case 's': case 't': case 'u': case 'v': case 'w': case 'x': case 'y': case 'z': goto yy19; case ':': yyt2 = cursor; goto yy46; default: goto yy12; } yy41: yych = *++cursor; switch (yych) { case 'O': goto yy48; default: goto yy12; } yy42: yych = *++cursor; switch (yych) { case '\t': case ' ': goto yy42; case ':': goto yy49; default: goto yy13; } yy44: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': goto yy42; case '\n': goto yy4; case ' ': goto yy44; case ':': goto yy46; default: goto yy11; } yy46: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': goto yy49; case '\n': goto yy4; case '\r': yyt3 = cursor; goto yy51; case ' ': goto yy46; default: yyt3 = cursor; goto yy52; } yy48: yych = *++cursor; switch (yych) { case 'M': goto yy54; default: goto yy12; } yy49: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\t': case ' ': goto yy49; case '\r': yyt3 = cursor; goto yy51; default: yyt3 = cursor; goto yy55; } yy51: yych = *++cursor; switch (yych) { case '\n': goto yy57; default: goto yy13; } yy52: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\n': goto yy4; case '\r': goto yy51; default: goto yy52; } yy54: yych = *++cursor; switch (yych) { case 'M': goto yy58; default: goto yy12; } yy55: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\n': case '\v': case '\f': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\r': goto yy51; default: goto yy55; } yy57: yyaccept = 2; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy35; case '\n': goto yy59; default: goto yy62; } yy58: yych = *++cursor; switch (yych) { case 'A': goto yy64; default: goto yy12; } yy59: yyaccept = 3; yych = *(packet = ++cursor); switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy61; case '\n': goto yy59; default: goto yy62; } yy61: c1 = yyt3; c2 = cursor; #line 74 "src/lib/amipack_parser_command.re" { int len = (int)(c2 - c1); amipack_append (pack, strdup("Output"), 6, strndup(c1, len), len); goto done; } #line 1822 "src/lib/amipack_parser_command.c" yy62: yych = *++cursor; switch (yych) { case 0x00: case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case '\t': case '\v': case '\f': case '\r': case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x7F: goto yy13; case '\n': goto yy59; default: goto yy62; } yy64: yych = *++cursor; switch (yych) { case 'N': goto yy65; default: goto yy12; } yy65: yych = *++cursor; switch (yych) { case 'D': goto yy66; default: goto yy12; } yy66: yych = *++cursor; switch (yych) { case '-': goto yy67; default: goto yy12; } yy67: yych = *++cursor; switch (yych) { case '-': goto yy68; default: goto yy12; } yy68: yych = *++cursor; switch (yych) { case '\r': goto yy69; default: goto yy12; } yy69: yych = *++cursor; switch (yych) { case '\n': goto yy70; default: goto yy13; } yy70: yych = *++cursor; switch (yych) { case '\r': goto yy71; default: goto yy13; } yy71: yych = *++cursor; switch (yych) { case '\n': goto yy72; default: goto yy13; } yy72: ++cursor; #line 66 "src/lib/amipack_parser_command.re" { goto done; } #line 1912 "src/lib/amipack_parser_command.c" } #line 85 "src/lib/amipack_parser_command.re" done: return pack; }