#line 1 "network/ragel_transport.rl"
/* -*- c -*- */
#include <stdbool.h>
#include "network/rtsp.h"
#include "network/rtp.h"
#include "network/ragel_parsers.h"
#line 10 "network/ragel_transport.rl"
gboolean ragel_parse_transport_header(RTSP_Client *rtsp,
RTP_transport *rtp_t,
const char *header) {
struct ParsedTransport transport;
int cs;
const char *p = header, *pe = p + strlen(p) +1;
uint32_t portval = 0; uint16_t chanval = 0;
#line 22 "network/ragel_transport.c"
static const char _ragel_transport_header_actions[] = {
0, 1, 1, 1, 4, 1, 6, 1,
7, 1, 14, 1, 15, 1, 16, 1,
17, 1, 18, 2, 0, 1, 2, 2,
8, 2, 2, 9, 2, 3, 4, 2,
5, 10, 2, 5, 11, 2, 5, 12,
2, 5, 13, 2, 18, 14, 3, 0,
2, 8, 3, 0, 2, 9, 3, 2,
9, 17, 3, 3, 5, 10, 3, 3,
5, 11, 3, 3, 5, 12, 3, 3,
5, 13, 3, 5, 11, 17, 3, 5,
13, 17, 3, 17, 2, 9, 3, 17,
5, 11, 3, 17, 5, 13, 4, 0,
2, 9, 17, 4, 3, 5, 11, 17,
4, 3, 5, 13, 17, 4, 17, 0,
2, 9, 4, 17, 3, 5, 11, 4,
17, 3, 5, 13
};
static const short _ragel_transport_header_key_offsets[] = {
0, 0, 1, 2, 3, 4, 5, 6,
7, 9, 12, 13, 14, 15, 16, 24,
35, 36, 37, 38, 39, 40, 41, 42,
44, 47, 48, 49, 50, 51, 59, 70,
75, 82, 90, 98, 106, 114, 122, 130,
138, 146, 156, 164, 172, 180, 187, 195,
203, 210, 219, 230, 235, 242, 250, 258,
266, 274, 282, 290, 298, 306, 316, 324,
332, 340, 347, 355, 363, 370, 378, 386,
393, 404, 416, 428, 440, 452, 464, 476,
488, 500, 512, 524, 535, 544, 555, 566,
577, 584, 596, 608, 616, 628, 640, 652,
664, 676, 688, 700, 712, 723, 735, 747,
759, 771, 783, 795, 806, 815, 826, 837,
848, 855, 867, 879, 887, 899, 911, 923,
935, 947, 959, 970, 980, 991, 996, 1003,
1011, 1019, 1027, 1035, 1043, 1051, 1059, 1067,
1077, 1085, 1093, 1101, 1108, 1116, 1124, 1131,
1139, 1147, 1154, 1166, 1178, 1190, 1202, 1214,
1226, 1237, 1249, 1261, 1273, 1285, 1296, 1305,
1316, 1327, 1338, 1349, 1360, 1367, 1379, 1391,
1403, 1415, 1423, 1435, 1447, 1459, 1471, 1483,
1495, 1507, 1519, 1531, 1543, 1554, 1563, 1574,
1585, 1596, 1603, 1615, 1627, 1635, 1647, 1659,
1671, 1683, 1695, 1707, 1719, 1731, 1742, 1754,
1766, 1778, 1790, 1802, 1814, 1825, 1834, 1845,
1856, 1867, 1874, 1886, 1898, 1906, 1918, 1930,
1942, 1954, 1966, 1978, 1989, 1997, 2005, 2012,
2022, 2034, 2046, 2058, 2070, 2082, 2094, 2106,
2118, 2129, 2141, 2153, 2165, 2177, 2189, 2201,
2212, 2221, 2232, 2243, 2254, 2261, 2273, 2285,
2293, 2305, 2317, 2329, 2341, 2353, 2365, 2376,
2385, 2396, 2401, 2408, 2416, 2424, 2432, 2440,
2448, 2456, 2464, 2472, 2482, 2490, 2498, 2506,
2513, 2521, 2529, 2536, 2544, 2552, 2559, 2570,
2582, 2594, 2606, 2618, 2630, 2641, 2653, 2665,
2677, 2689, 2700, 2709, 2720, 2731, 2742, 2753,
2764, 2771, 2783, 2795, 2807, 2819, 2827, 2839,
2851, 2863, 2875, 2887, 2899, 2911, 2923, 2934,
2946, 2958, 2970, 2982, 2994, 3006, 3017, 3026,
3037, 3048, 3059, 3066, 3078, 3090, 3098, 3110,
3122, 3134, 3146, 3158, 3170, 3181, 3182, 3183,
3184, 3192, 3203, 3208, 3215, 3223, 3231, 3239,
3247, 3255, 3263, 3271, 3279, 3289, 3297, 3305,
3313, 3320, 3328, 3336, 3343, 3351, 3359, 3366,
3376, 3388, 3400, 3412, 3424, 3436, 3448, 3460,
3472, 3484, 3496, 3507, 3516, 3527, 3538, 3549,
3556, 3568, 3580, 3588, 3600, 3612, 3624, 3636,
3648, 3660, 3672, 3684, 3695, 3707, 3719, 3731,
3743, 3755, 3767, 3778, 3787, 3798, 3803, 3810,
3818, 3826, 3834, 3842, 3850, 3858, 3866, 3874,
3884, 3892, 3900, 3908, 3915, 3923, 3931, 3938,
3946, 3954, 3961, 3972, 3984, 3996, 4008, 4020,
4032, 4043, 4055, 4067, 4079, 4091, 4102, 4111,
4122, 4133, 4144, 4155, 4166, 4173, 4185, 4197,
4209, 4221, 4229, 4241, 4253, 4265, 4277, 4289,
4301, 4313, 4325, 4337, 4349, 4360, 4369, 4380,
4391, 4402, 4409, 4421, 4433, 4441, 4453, 4465,
4477, 4489, 4501, 4513, 4525, 4537, 4548, 4560,
4572, 4584, 4596, 4608, 4620, 4631, 4632, 4633,
4634, 4636, 4637, 4638, 4639, 4640, 4641, 4642,
4643, 4644, 4645, 4652, 4663, 4668, 4675, 4683,
4691, 4699, 4707, 4715, 4723, 4731, 4739, 4749,
4757, 4765, 4773, 4780, 4788, 4796, 4803, 4811,
4819, 4826, 4835, 4847, 4859, 4871, 4883, 4895,
4907, 4919, 4931, 4942, 4954, 4966, 4978, 4990,
5002, 5014, 5025, 5033, 5044, 5049, 5056, 5064,
5072, 5080, 5088, 5096, 5104, 5112, 5120, 5130,
5138, 5146, 5154, 5161, 5169, 5177, 5184, 5192,
5200, 5207, 5217, 5229, 5241, 5253, 5265, 5277,
5288, 5300, 5312, 5324, 5336, 5347, 5356, 5367,
5378, 5389, 5400, 5411, 5418, 5430, 5442, 5454,
5466, 5474, 5486, 5498, 5510, 5522, 5534, 5546,
5558, 5570, 5581, 5593, 5605, 5617, 5629, 5641,
5653, 5664, 5665, 5666, 5667, 5668, 5669, 5670,
5671, 5676, 5683, 5691, 5699, 5707, 5715, 5723,
5731, 5739, 5747, 5757, 5765, 5773, 5781, 5788,
5796, 5804, 5811, 5820, 5831, 5836, 5843, 5851,
5859, 5867, 5875, 5883, 5891, 5899, 5907, 5917,
5925, 5933, 5941, 5948, 5956, 5964, 5971, 5979,
5987, 5994, 6005, 6017, 6029, 6041, 6053, 6065,
6077, 6089, 6101, 6113, 6125, 6136, 6145, 6156,
6167, 6178, 6185, 6197, 6209, 6217, 6229, 6241,
6253, 6265, 6277, 6289, 6301, 6313, 6324, 6336,
6348, 6360, 6372, 6384, 6396, 6407, 6416, 6427,
6438, 6449, 6456, 6468, 6480, 6488, 6500, 6512,
6524, 6536, 6548, 6560, 6571, 6581, 6592, 6597,
6604, 6612, 6620, 6628, 6636, 6644, 6652, 6660,
6668, 6678, 6686, 6694, 6702, 6709, 6717, 6725,
6732, 6740, 6748, 6755, 6767, 6779, 6791, 6803,
6815, 6827, 6838, 6850, 6862, 6874, 6886, 6897,
6906, 6917, 6928, 6939, 6950, 6961, 6968, 6980,
6992, 7004, 7016, 7024, 7036, 7048, 7060, 7072,
7084, 7096, 7108, 7120, 7132, 7144, 7155, 7164,
7175, 7186, 7197, 7204, 7216, 7228, 7236, 7248,
7260, 7272, 7284, 7296, 7308, 7320, 7332, 7343,
7355, 7367, 7379, 7391, 7403, 7415, 7426, 7435,
7446, 7457, 7468, 7475, 7487, 7499, 7507, 7519,
7531, 7543, 7555, 7567, 7579, 7590, 7598, 7606,
7613, 7623, 7635, 7647, 7659, 7671, 7683, 7695,
7707, 7719, 7730, 7742, 7754, 7766, 7778, 7790,
7802, 7813, 7822, 7833, 7844, 7855, 7862, 7874,
7886, 7894, 7906, 7918, 7930, 7942, 7954, 7966,
7977, 7986, 7997, 8002, 8009, 8017, 8025, 8033,
8041, 8049, 8057, 8065, 8073, 8083, 8091, 8099,
8107, 8114, 8122, 8130, 8137, 8145, 8153, 8160,
8171, 8183, 8195, 8207, 8219, 8231, 8242, 8254,
8266, 8278, 8290, 8301, 8310, 8321, 8332, 8343,
8354, 8365, 8372, 8384, 8396, 8408, 8420, 8428,
8440, 8452, 8464, 8476, 8488, 8500, 8512, 8524,
8535, 8547, 8559, 8571, 8583, 8595, 8607, 8618,
8627, 8638, 8649, 8660, 8667, 8679, 8691, 8699,
8711, 8723, 8735, 8747, 8759, 8771, 8782, 8783,
8784, 8785, 8793, 8804, 8809, 8816, 8824, 8832,
8840, 8848, 8856, 8864, 8872, 8880, 8890, 8898,
8906, 8914, 8921, 8930, 8941, 8946, 8953, 8961,
8969, 8977, 8985, 8993, 9001, 9009, 9017, 9027,
9035, 9043, 9051, 9058, 9066, 9074, 9081, 9089,
9097, 9104, 9115, 9127, 9139, 9151, 9163, 9175,
9187, 9199, 9211, 9223, 9235, 9246, 9255, 9266,
9277, 9288, 9295, 9307, 9319, 9327, 9339, 9351,
9363, 9375, 9387, 9399, 9411, 9423, 9434, 9446,
9458, 9470, 9482, 9494, 9506, 9517, 9526, 9537,
9548, 9559, 9566, 9578, 9590, 9598, 9610, 9622,
9634, 9646, 9658, 9670, 9681, 9691, 9702, 9707,
9714, 9722, 9730, 9738, 9746, 9754, 9762, 9770,
9778, 9788, 9796, 9804, 9812, 9819, 9827, 9835,
9842, 9850, 9858, 9865, 9877, 9889, 9901, 9913,
9925, 9937, 9948, 9960, 9972, 9984, 9996, 10007,
10016, 10027, 10038, 10049, 10060, 10071, 10078, 10090,
10102, 10114, 10126, 10134, 10146, 10158, 10170, 10182,
10194, 10206, 10218, 10230, 10242, 10254, 10265, 10274,
10285, 10296, 10307, 10314, 10326, 10338, 10346, 10358,
10370, 10382, 10394, 10406, 10418, 10430, 10442, 10453,
10465, 10477, 10489, 10501, 10513, 10525, 10536, 10545,
10556, 10567, 10578, 10585, 10597, 10609, 10617, 10629,
10641, 10653, 10665, 10677, 10689, 10700, 10708, 10716,
10723, 10731, 10739, 10746, 10756, 10768, 10780, 10792,
10804, 10816, 10828, 10840, 10852, 10864, 10876, 10887,
10896, 10907