Commit c7d939da authored by Lev Walkin's avatar Lev Walkin

string value compatibility

parent a7247f9a
......@@ -3,6 +3,7 @@
* Added extra const qualifiers into the support code.
* More RFC variations supported in crfc2asn1.pl.
* Refined string values compatibility. (Test cases 77, 78).
0.9.12: 2005-Mar-10
......
......@@ -261,12 +261,12 @@ static const short yyprhs[] = { 0,
204, 208, 210, 214, 216, 218, 219, 221, 223, 227,
231, 235, 237, 239, 243, 246, 248, 254, 255, 257,
259, 263, 266, 271, 276, 277, 279, 280, 287, 289,
292, 294, 296, 298, 302, 306, 310, 312, 314, 319,
324, 329, 336, 343, 345, 350, 355, 357, 361, 363,
367, 371, 375, 377, 381, 383, 387, 389, 391, 393,
395, 400, 404, 405, 409, 411, 413, 415, 417, 419,
421, 423, 425, 427, 431, 433, 436, 438, 440, 442,
444, 447, 450, 452, 454, 457, 460, 462, 464, 466,
292, 294, 296, 298, 302, 306, 310, 312, 317, 322,
327, 334, 341, 343, 348, 353, 355, 359, 361, 365,
369, 373, 375, 379, 381, 385, 387, 389, 391, 393,
398, 402, 403, 407, 409, 411, 413, 415, 417, 419,
421, 423, 425, 429, 431, 434, 436, 438, 440, 442,
445, 448, 450, 452, 455, 458, 460, 462, 464, 466,
468, 471, 473, 476, 478, 480, 482, 484, 486, 488,
490, 492, 494, 496, 498, 500, 502, 504, 506, 508,
510, 512, 514, 515, 517, 519, 524, 528, 533, 535,
......@@ -312,22 +312,22 @@ static const short yyrhs[] = { 117,
82, 103, 159, 160, 104, 0, 161, 0, 160, 161,
0, 4, 0, 168, 0, 102, 0, 102, 110, 173,
0, 102, 110, 207, 0, 208, 164, 182, 0, 177,
0, 178, 0, 27, 103, 151, 104, 0, 78, 103,
148, 104, 0, 79, 103, 148, 104, 0, 78, 182,
68, 215, 208, 164, 0, 79, 182, 68, 215, 208,
164, 0, 18, 0, 18, 35, 25, 216, 0, 213,
103, 146, 104, 0, 165, 0, 56, 68, 165, 0,
11, 0, 11, 111, 213, 0, 214, 111, 213, 0,
11, 111, 216, 0, 214, 0, 214, 111, 166, 0,
167, 0, 166, 111, 167, 0, 169, 0, 169, 0,
13, 0, 14, 0, 216, 139, 3, 171, 0, 216,
109, 171, 0, 0, 103, 172, 174, 0, 63, 0,
45, 0, 86, 0, 5, 0, 7, 0, 6, 0,
207, 0, 173, 0, 216, 0, 213, 111, 216, 0,
4, 0, 174, 4, 0, 24, 0, 63, 0, 76,
0, 176, 0, 67, 81, 0, 65, 51, 0, 77,
0, 44, 0, 36, 71, 0, 26, 81, 0, 91,
0, 47, 0, 58, 0, 40, 0, 22, 81, 0,
0, 27, 103, 151, 104, 0, 78, 103, 148, 104,
0, 79, 103, 148, 104, 0, 78, 182, 68, 215,
208, 164, 0, 79, 182, 68, 215, 208, 164, 0,
18, 0, 18, 35, 25, 216, 0, 213, 103, 146,
104, 0, 165, 0, 56, 68, 165, 0, 11, 0,
11, 111, 213, 0, 214, 111, 213, 0, 11, 111,
216, 0, 214, 0, 214, 111, 166, 0, 167, 0,
166, 111, 167, 0, 169, 0, 169, 0, 13, 0,
14, 0, 216, 139, 3, 171, 0, 216, 109, 171,
0, 0, 103, 172, 174, 0, 63, 0, 45, 0,
86, 0, 5, 0, 7, 0, 6, 0, 207, 0,
173, 0, 216, 0, 213, 111, 216, 0, 4, 0,
174, 4, 0, 24, 0, 63, 0, 76, 0, 176,
0, 67, 81, 0, 65, 51, 0, 77, 0, 44,
0, 36, 71, 0, 26, 81, 0, 91, 0, 47,
0, 178, 0, 58, 0, 40, 0, 22, 81, 0,
175, 0, 176, 204, 0, 23, 0, 48, 0, 49,
0, 50, 0, 59, 0, 64, 0, 74, 0, 83,
0, 85, 0, 90, 0, 92, 0, 93, 0, 94,
......@@ -374,22 +374,22 @@ static const short yyrline[] = { 0,
898, 905, 910, 916, 922, 928, 933, 943, 945, 948,
956, 962, 971, 977, 994, 996, 1001, 1005, 1010, 1015,
1021, 1025, 1036, 1045, 1054, 1065, 1087, 1091, 1097, 1103,
1109, 1115, 1125, 1135, 1141, 1155, 1179, 1186, 1200, 1209,
1219, 1229, 1239, 1247, 1268, 1277, 1286, 1287, 1289, 1296,
1308, 1318, 1326, 1326, 1331, 1336, 1341, 1346, 1350, 1354,
1358, 1361, 1366, 1378, 1394, 1405, 1419, 1421, 1422, 1423,
1424, 1425, 1426, 1427, 1428, 1429, 1430, 1431, 1437, 1439,
1440, 1443, 1450, 1462, 1464, 1468, 1472, 1473, 1474, 1475,
1476, 1480, 1481, 1482, 1483, 1487, 1488, 1495, 1495, 1496,
1496, 1497, 1499, 1501, 1506, 1510, 1519, 1523, 1528, 1532,
1538, 1548, 1552, 1555, 1558, 1563, 1572, 1580, 1586, 1593,
1601, 1609, 1618, 1621, 1626, 1628, 1629, 1630, 1633, 1637,
1642, 1648, 1653, 1656, 1660, 1671, 1684, 1690, 1694, 1699,
1705, 1717, 1719, 1722, 1726, 1729, 1734, 1738, 1746, 1761,
1767, 1774, 1787, 1799, 1814, 1818, 1835, 1840, 1843, 1848,
1870, 1875, 1880, 1886, 1892, 1900, 1908, 1916, 1923, 1933,
1938, 1968, 1970, 1973, 1980, 1986, 1988, 1989, 1990, 1993,
1995, 1996, 1999, 2004, 2011, 2018, 2020, 2024
1109, 1119, 1129, 1135, 1149, 1173, 1180, 1194, 1203, 1213,
1223, 1233, 1241, 1262, 1271, 1280, 1281, 1283, 1290, 1302,
1312, 1320, 1320, 1325, 1330, 1335, 1340, 1344, 1348, 1352,
1355, 1360, 1372, 1388, 1399, 1413, 1415, 1416, 1417, 1418,
1419, 1420, 1421, 1422, 1423, 1424, 1425, 1426, 1432, 1434,
1435, 1438, 1445, 1457, 1459, 1463, 1467, 1468, 1469, 1470,
1471, 1475, 1476, 1477, 1478, 1482, 1483, 1490, 1490, 1491,
1491, 1492, 1494, 1496, 1501, 1505, 1514, 1518, 1523, 1527,
1533, 1543, 1547, 1550, 1553, 1558, 1567, 1575, 1581, 1588,
1596, 1604, 1613, 1616, 1621, 1623, 1624, 1625, 1628, 1632,
1637, 1643, 1648, 1651, 1655, 1666, 1679, 1685, 1689, 1694,
1700, 1712, 1714, 1717, 1721, 1724, 1729, 1733, 1741, 1756,
1762, 1769, 1782, 1794, 1809, 1813, 1830, 1835, 1838, 1843,
1865, 1870, 1875, 1881, 1887, 1895, 1903, 1911, 1918, 1928,
1933, 1963, 1965, 1968, 1975, 1981, 1983, 1984, 1985, 1988,
1990, 1991, 1994, 1999, 2006, 2013, 2015, 2019
};
#endif
......@@ -453,10 +453,10 @@ static const short yyr1[] = { 0,
150, 150, 151, 151, 152, 152, 153, 154, 154, 155,
155, 156, 156, 156, 157, 157, 159, 158, 160, 160,
161, 161, 162, 162, 162, 163, 164, 164, 164, 164,
164, 164, 164, 164, 164, 164, 164, 164, 165, 165,
165, 165, 165, 165, 166, 166, 167, 168, 169, 169,
170, 171, 172, 171, 171, 171, 171, 171, 171, 171,
171, 171, 173, 173, 174, 174, 175, 175, 175, 175,
164, 164, 164, 164, 164, 164, 164, 165, 165, 165,
165, 165, 165, 166, 166, 167, 168, 169, 169, 170,
171, 172, 171, 171, 171, 171, 171, 171, 171, 171,
171, 173, 173, 174, 174, 175, 175, 175, 175, 175,
175, 175, 175, 175, 175, 175, 175, 175, 176, 176,
176, 177, 177, 178, 178, 178, 178, 178, 178, 178,
178, 178, 178, 178, 178, 178, 178, 179, 179, 180,
......@@ -482,12 +482,12 @@ static const short yyr2[] = { 0,
3, 1, 3, 1, 1, 0, 1, 1, 3, 3,
3, 1, 1, 3, 2, 1, 5, 0, 1, 1,
3, 2, 4, 4, 0, 1, 0, 6, 1, 2,
1, 1, 1, 3, 3, 3, 1, 1, 4, 4,
4, 6, 6, 1, 4, 4, 1, 3, 1, 3,
3, 3, 1, 3, 1, 3, 1, 1, 1, 1,
4, 3, 0, 3, 1, 1, 1, 1, 1, 1,
1, 1, 1, 3, 1, 2, 1, 1, 1, 1,
2, 2, 1, 1, 2, 2, 1, 1, 1, 1,
1, 1, 1, 3, 3, 3, 1, 4, 4, 4,
6, 6, 1, 4, 4, 1, 3, 1, 3, 3,
3, 1, 3, 1, 3, 1, 1, 1, 1, 4,
3, 0, 3, 1, 1, 1, 1, 1, 1, 1,
1, 1, 3, 1, 2, 1, 1, 1, 1, 2,
2, 1, 1, 2, 2, 1, 1, 1, 1, 1,
2, 1, 2, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 0, 1, 1, 4, 3, 4, 1, 3,
......@@ -510,235 +510,251 @@ static const short yydefact[] = { 0,
173, 174, 175, 176, 0, 24, 25, 27, 28, 31,
29, 30, 34, 0, 0, 32, 0, 47, 0, 48,
50, 52, 36, 0, 37, 0, 40, 42, 44, 4,
26, 252, 119, 265, 0, 147, 0, 0, 160, 154,
158, 159, 148, 0, 0, 149, 153, 157, 0, 0,
54, 55, 150, 123, 0, 33, 46, 45, 0, 0,
35, 38, 0, 0, 0, 0, 256, 64, 63, 0,
253, 260, 0, 161, 156, 155, 152, 151, 0, 66,
0, 68, 0, 0, 0, 49, 51, 5, 41, 43,
0, 258, 259, 257, 0, 119, 265, 114, 0, 0,
183, 183, 62, 183, 117, 162, 150, 107, 108, 0,
262, 261, 254, 120, 122, 0, 0, 0, 0, 56,
129, 130, 124, 125, 127, 121, 138, 140, 139, 250,
251, 136, 135, 137, 133, 131, 142, 141, 0, 143,
39, 0, 90, 252, 128, 0, 0, 0, 0, 0,
26, 252, 118, 265, 0, 146, 0, 0, 160, 153,
157, 159, 147, 0, 0, 148, 152, 156, 0, 0,
54, 55, 149, 158, 122, 0, 33, 46, 45, 0,
0, 35, 38, 0, 0, 0, 0, 256, 64, 63,
0, 253, 260, 0, 161, 155, 154, 151, 150, 0,
66, 0, 68, 0, 0, 0, 49, 51, 5, 41,
43, 0, 258, 259, 257, 0, 118, 265, 113, 0,
0, 183, 183, 62, 183, 116, 162, 149, 107, 0,
262, 261, 254, 119, 121, 0, 0, 0, 0, 56,
128, 129, 123, 124, 126, 120, 137, 139, 138, 250,
251, 135, 134, 136, 132, 130, 141, 140, 0, 142,
39, 0, 90, 252, 127, 0, 0, 0, 0, 0,
76, 0, 0, 184, 185, 76, 0, 106, 0, 163,
252, 252, 67, 71, 70, 69, 214, 211, 210, 0,
209, 212, 0, 60, 0, 0, 0, 57, 58, 61,
192, 0, 198, 204, 203, 227, 228, 213, 216, 215,
0, 0, 0, 0, 95, 0, 0, 239, 88, 88,
92, 238, 0, 255, 0, 103, 0, 83, 86, 252,
118, 0, 0, 0, 77, 78, 82, 252, 0, 189,
117, 0, 0, 0, 77, 78, 82, 252, 0, 189,
266, 0, 0, 266, 249, 241, 0, 243, 248, 245,
0, 72, 74, 75, 65, 205, 0, 0, 0, 0,
0, 53, 0, 180, 181, 178, 179, 0, 0, 182,
0, 0, 0, 0, 126, 145, 134, 144, 132, 0,
87, 96, 91, 240, 89, 237, 237, 115, 0, 109,
0, 85, 0, 252, 110, 0, 237, 187, 0, 252,
267, 0, 111, 252, 242, 0, 0, 116, 252, 206,
0, 0, 0, 0, 125, 144, 133, 143, 131, 0,
87, 96, 91, 240, 89, 237, 237, 114, 0, 108,
0, 85, 0, 252, 109, 0, 237, 187, 0, 252,
267, 0, 110, 252, 242, 0, 0, 115, 252, 206,
207, 202, 200, 0, 229, 197, 59, 193, 194, 195,
0, 201, 199, 0, 0, 231, 146, 0, 93, 94,
104, 105, 143, 84, 186, 81, 79, 80, 190, 0,
0, 201, 199, 0, 0, 231, 145, 0, 93, 94,
104, 105, 142, 84, 186, 81, 79, 80, 190, 0,
188, 0, 244, 0, 0, 73, 208, 220, 0, 218,
183, 196, 0, 233, 235, 230, 0, 97, 0, 112,
113, 247, 246, 217, 0, 222, 234, 0, 232, 0,
183, 196, 0, 233, 235, 230, 0, 97, 0, 111,
112, 247, 246, 217, 0, 222, 234, 0, 232, 0,
191, 219, 225, 226, 224, 221, 223, 236, 101, 0,
99, 102, 98, 100, 0, 0, 0
};
static const short yydefgoto[] = { 415,
3, 4, 8, 9, 13, 14, 25, 26, 27, 55,
56, 57, 106, 58, 74, 75, 76, 77, 59, 69,
70, 60, 100, 227, 228, 229, 61, 129, 130, 281,
282, 264, 265, 266, 257, 258, 118, 316, 192, 193,
311, 312, 400, 410, 411, 267, 283, 154, 155, 173,
174, 194, 195, 62, 186, 242, 187, 307, 156, 103,
158, 159, 298, 299, 301, 203, 204, 205, 269, 270,
56, 57, 107, 58, 74, 75, 76, 77, 59, 69,
70, 60, 100, 227, 228, 229, 61, 130, 131, 281,
282, 264, 265, 266, 257, 258, 119, 316, 192, 193,
311, 312, 400, 410, 411, 267, 283, 155, 156, 173,
174, 194, 195, 62, 186, 242, 187, 307, 157, 103,
159, 104, 298, 299, 301, 203, 204, 205, 269, 270,
231, 288, 232, 233, 234, 379, 380, 406, 407, 235,
236, 237, 355, 356, 384, 251, 252, 210, 277, 278,
238, 253, 121, 122, 145, 163, 239, 104, 330, 240
238, 253, 122, 123, 146, 163, 239, 105, 330, 240
};
static const short yypact[] = { 148,
-32768,-32768, 148,-32768, -58,-32768, 45, 43,-32768,-32768,
-32768,-32768, 53,-32768, -13, 144,-32768,-32768, 97, 68,
59, 83, 84, 95, 189, 144,-32768, 89,-32768,-32768,
-32768,-32768,-32768, 180,-32768,-32768, 367,-32768, 191, 35,
-32768,-32768,-32768, 201,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768, 167, 367,-32768,-32768,-32768,-32768,
-32768,-32768,-32768, 257, 581,-32768, 108,-32768, 69,-32768,
114,-32768,-32768, 16,-32768, -23,-32768, 122,-32768,-32768,
-32768, -10, 133,-32768, 160,-32768, 165, 181,-32768,-32768,
-32768,-32768,-32768, 214, 190,-32768,-32768,-32768, 598, 271,
-32768,-32768,-32768, 171, 277,-32768,-32768,-32768, 231, 183,
-32768,-32768, 148, 231, 194, 182, 1,-32768,-32768, 444,
-32768, 28, 231,-32768,-32768,-32768,-32768,-32768, 82,-32768,
185, 186, 196, 350, 163,-32768,-32768, -58,-32768,-32768,
170,-32768,-32768,-32768, 291, -8, 199, 275, 208, 245,
-17, 75,-32768, -55,-32768,-32768, 213,-32768,-32768, 215,
-32768,-32768,-32768,-32768,-32768, 314, 598, 313, 231, 297,
-32768,-32768, 212,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 216, 217,
-32768, 127,-32768, 27,-32768, 220, 303, 7, 221, 226,
51, 102, 268,-32768, 233, 51, 273,-32768, 48,-32768,
6, 225,-32768,-32768,-32768,-32768,-32768,-32768,-32768, -12,
-32768,-32768, 315,-32768, 148, 102, 240, 238,-32768, 272,
253, 251, -12,-32768,-32768, 254,-32768,-32768,-32768,-32768,
170, 355, 313, 163, 270, 170, 163,-32768, 279, 279,
-32768,-32768, 521,-32768, 313, 263, 153,-32768,-32768, 225,
-32768, 102, 306, 276, 274,-32768,-32768, 225, 278, 130,
313, 102, 281, 313,-32768,-32768, 154,-32768,-32768, 282,
155,-32768,-32768,-32768,-32768, 269, 285, 210, 286, 289,
288,-32768, 297,-32768,-32768,-32768,-32768, 102, 102,-32768,
102, 102, 280, 283,-32768,-32768, 391,-32768,-32768, 316,
-32768,-32768,-32768,-32768,-32768, 9, 9,-32768, 343,-32768,
7,-32768, 298, 225,-32768, 51, 9,-32768, 295, 225,
-32768, 300,-32768, 225,-32768, 56, 343,-32768, 6,-32768,
296,-32768,-32768, 30,-32768,-32768,-32768,-32768,-32768,-32768,
301,-32768,-32768, 11, 168,-32768,-32768, 307,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 304, 521,
-32768, 521,-32768, 305, 308,-32768,-32768,-32768, 169,-32768,
-55,-32768, 313, 302,-32768,-32768, 283,-32768, 102,-32768,
-32768,-32768,-32768,-32768, 30, 24, 302, 313,-32768, 125,
272,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 22,
-32768,-32768,-32768,-32768, 418, 419,-32768
static const short yypact[] = { 152,
-32768,-32768, 152,-32768, -74,-32768, 12, 5,-32768,-32768,
-32768,-32768, 38,-32768, -16, 54,-32768,-32768, 44, 56,
47, 72, 85, 81, 141, 54,-32768, 64,-32768,-32768,
-32768,-32768,-32768, 132,-32768,-32768, 407,-32768, 161, 33,
-32768,-32768,-32768, 53,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768, 156, 407,-32768,-32768,-32768,-32768,
-32768,-32768,-32768, 331, 636,-32768, 118,-32768, 105,-32768,
124,-32768,-32768, 16,-32768, -23,-32768, 147,-32768,-32768,
-32768, -3, 140,-32768, 176,-32768, 182, 203,-32768,-32768,
-32768,-32768,-32768, 225, 198,-32768,-32768,-32768, 711, 278,
-32768,-32768,-32768,-32768, 171, 283,-32768,-32768,-32768, 65,
189,-32768,-32768, 152, 65, 194, 200, 3,-32768,-32768,
484,-32768, 84, 65,-32768,-32768,-32768,-32768,-32768, 67,
-32768, 192, 195, 204, 248, 210,-32768,-32768, -74,-32768,
-32768, 163,-32768,-32768,-32768, 306, -10, 213, 282, 215,
253, -1, 69,-32768, -42,-32768,-32768, 219,-32768, 223,
-32768,-32768,-32768,-32768,-32768, 320, 711, 319, 65, 197,
-32768,-32768, 217,-32768,-32768,-32768,-32768,-32768,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 222, 226,
-32768, 82,-32768, 29,-32768, 216, 311, 7, 235, 233,
10, 279, 271,-32768, 236, 10, 276,-32768, 46,-32768,
1, 231,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 27,
-32768,-32768, 318,-32768, 152, 279, 245, 243,-32768, 211,
256, 251, 27,-32768,-32768, 255,-32768,-32768,-32768,-32768,
163, 356, 319, 210, 266, 163, 210,-32768, 274, 274,
-32768,-32768, 561,-32768, 319, 254, 88,-32768,-32768, 231,
-32768, 279, 295, 262, 261,-32768,-32768, 231, 264, 60,
319, 279, 268, 319,-32768,-32768, 93,-32768,-32768, 272,
130,-32768,-32768,-32768,-32768, 273, 285, 220, 270, 288,
277,-32768, 197,-32768,-32768,-32768,-32768, 279, 279,-32768,
279, 279, 260, 280,-32768,-32768, 383,-32768,-32768, 317,
-32768,-32768,-32768,-32768,-32768, 19, 19,-32768, 173,-32768,
7,-32768, 294, 231,-32768, 10, 19,-32768, 300, 231,
-32768, 298,-32768, 231,-32768, 49, 173,-32768, 1,-32768,
297,-32768,-32768, 52,-32768,-32768,-32768,-32768,-32768,-32768,
304,-32768,-32768, 11, 131,-32768,-32768, 303,-32768,-32768,
-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 305, 561,
-32768, 561,-32768, 314, 321,-32768,-32768,-32768, 137,-32768,
-42,-32768, 319, 301,-32768,-32768, 280,-32768, 279,-32768,
-32768,-32768,-32768,-32768, 52, 17, 301, 319,-32768, 165,
211,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 22,
-32768,-32768,-32768,-32768, 411, 417,-32768
};
static const short yypgoto[] = {-32768,
-32768, 417, 284,-32768,-32768, 410,-32768,-32768, 398,-32768,
-32768, 369,-32768,-32768,-32768, 353,-32768, 318,-32768,-32768,
319,-32768, 364,-32768,-32768, 137,-32768,-32768, 267,-32768,
96, 230,-32768, 111,-32768, 117,-32768, 192,-32768, 193,
-32768,-32768,-32768,-32768, 33, -185, -79, -300, -53,-32768,
203, -186, -124,-32768, -165,-32768, -246,-32768, -48, -119,
-32768, 18,-32768,-32768,-32768, -147,-32768,-32768, -178, -166,
-200, 207,-32768, -259,-32768,-32768, 50,-32768,-32768,-32768,
-32768,-32768,-32768, 60, 63, -295,-32768,-32768,-32768, 112,
-126, -80,-32768,-32768,-32768,-32768, 31,-32768, 175, -7
-32768, 423, 289,-32768,-32768, 416,-32768,-32768, 405,-32768,
-32768, 376,-32768,-32768,-32768, 359,-32768, 322,-32768,-32768,
325,-32768, 371,-32768,-32768, 145,-32768,-32768, 275,-32768,
100, 234,-32768, 115,-32768, 122,-32768, 196,-32768, 201,
-32768,-32768,-32768,-32768, 34, -187, -80, -183, -52,-32768,
207, -186, -121,-32768, -137,-32768, -237,-32768, -48, -118,
-32768, 35,-32768,-32768,-32768, -148,-32768,-32768, -178, -166,
-4, 218,-32768, -207,-32768,-32768, 55,-32768,-32768,-32768,
-32768,-32768,-32768, 66, 71, -247,-32768,-32768,-32768, 116,
-126, -81,-32768,-32768,-32768,-32768, 31,-32768, 184, -7
};
#define YYLAST 689
#define YYLAST 805
static const short yytable[] = { 15,
157, 120, 119, 230, 207, 15, 208, 250, 188, 175,
101, 101, 259, 10, 10, 102, 102, 116, 10, 142,
359, 360, 113, 10, 200, 409, 1, 2, 343, 65,
5, 368, 72, 5, 171, 172, 79, 10, 403, 171,
172, 247, 10, 353, 7, 1, 2, 291, 65, 202,
131, 67, 10, 11, 63, 10, 180, 181, 10, 247,
10, 11, 200, 10, 180, 181, 79, 64, 161, 390,
71, 391, 361, 63, 78, 143, 16, 248, 309, 162,
263, 314, 279, 323, 114, 201, 64, 202, 286, 144,
374, 19, 404, 332, -263, 248, 405, 348, 349, 287,
350, 72, 123, 117, 78, 28, 79, 217, 256, 10,
180, 181, 1, 2, 249, 165, 175, 188, 131, 117,
188, 383, 111, 351, 29, 413, 230, 190, 409, 132,
-237, 378, 285, 157, -237, 259, 32, 171, 172, 71,
117, 68, 30, 138, 78, 261, 218, 219, 12, 275,
160, 276, 256, 164, 200, 20, 17, 275, 1, 2,
214, 216, 220, 21, 176, 189, 31, 177, 178, 179,
10, 180, 181, 1, 2, 108, 109, 206, 33, 202,
322, 221, 171, 172, 22, 166, 23, 222, 327, 167,
260, 34, 362, 268, 36, 24, 223, 132, 268, 215,
37, 280, 66, 284, 225, 80, 226, 182, 10, 279,
375, 1, 2, 412, 107, 217, 110, 10, 180, 181,
1, 2, 401, 412, 115, 183, 294, 295, 296, 297,
245, 83, 84, 396, 246, 308, 190, 329, 10, 190,
124, 1, 2, 123, 366, 125, 73, 318, 184, 370,
157, 126, 157, 372, 218, 290, 320, 335, 338, 82,
321, 336, 339, 331, 127, 185, 331, 83, 84, 342,
128, 386, 394, 133, 189, 387, 395, 189, 85, 135,
86, 134, 87, 160, 141, 217, 137, 10, 180, 181,
1, 2, 88, 168, 169, 222, 89, 140, 170, 196,
90, -264, 217, 91, 10, 180, 181, 1, 2, 197,
198, 363, 199, 260, 92, 209, 212, 211, 268, 93,
10, 94, 241, 95, 218, 244, 243, 255, 280, 363,
262, 284, 96, 97, 254, 271, 381, 272, 117, 352,
274, 218, 219, 292, 289, 293, 385, 98, 300, 189,
10, 180, 181, 1, 2, 302, 304, 220, 306, 99,
1, 2, 171, 172, 310, 222, 315, 189, 294, 295,
296, 297, 319, 324, 10, 385, 221, 1, 2, 325,
340, 326, 222, 328, 333, 341, 337, 381, 344, 38,
408, 223, 345, 346, 357, 354, 369, 358, 224, 225,
160, 226, 160, 365, 39, 371, 382, 377, 40, 388,
392, 389, 398, 393, 41, 42, 43, 416, 417, 6,
44, 191, 18, 35, 81, 45, 112, 136, 105, 347,
46, 139, 47, 213, 376, 273, 367, 364, 313, 303,
48, 317, 414, 305, 402, 397, 399, 373, 334, 49,
0, 50, 0, 0, 146, 147, 51, 0, 52, 53,
54, 148, 0, 0, 0, 85, 38, 86, 0, 87,
149, 0, 0, 0, 0, 0, 0, 0, 0, 88,
121, 120, 158, 230, 207, 15, 208, 250, 10, 188,
259, 101, 101, 175, 10, 102, 102, 10, 10, 10,
11, 143, 114, 10, 117, 409, 1, 2, 7, 65,
5, 403, 72, 5, 171, 172, 79, 200, 16, 263,
10, 171, 172, 1, 2, 10, 11, 291, 65, 67,
132, 247, 28, 10, 180, 181, 10, 180, 181, 10,
10, 247, 202, 1, 2, 20, 79, 64, 359, 360,
71, 63, 10, 21, 78, 1, 2, 144, 200, 368,
343, 361, 279, 323, 115, 404, 64, 248, 19, 405,
63, 145, -263, 332, 22, 353, 23, 248, 73, 374,
124, 201, 72, 202, 78, 24, 309, 79, 256, 314,
118, 256, 29, 249, 118, 12, 165, 188, 132, 175,
188, 383, 112, 351, 161, 413, 230, 286, 190, 133,
30, 285, -237, 259, 158, 162, -237, 32, 287, 68,
71, 17, 118, 34, 139, 78, 261, 275, 200, 276,
275, 160, 37, 378, 164, 31, 294, 295, 296, 297,
214, 216, 1, 2, 33, 176, 189, 329, 409, 36,
166, 206, 66, 202, 167, 171, 172, 171, 172, 322,
10, 180, 181, 1, 2, 245, 390, 327, 391, 246,
260, 320, 362, 268, 80, 321, 335, 133, 268, 215,
336, 280, 217, 284, 10, 180, 181, 1, 2, 279,
375, 109, 110, 412, 177, 178, 179, 10, 180, 181,
1, 2, 401, 412, 108, 217, 111, 10, 180, 181,
1, 2, 396, 338, 386, 308, 190, 339, 387, 190,
394, 218, 219, 366, 395, 83, 84, 318, 370, 116,
124, 158, 372, 158, 182, 290, 125, 220, 1, 2,
171, 172, 126, 331, 218, 217, 331, 10, 180, 181,
1, 2, 183, 127, 189, 128, 221, 189, 129, 342,
134, 135, 222, 160, 217, 136, 10, 180, 181, 1,
2, 223, 138, 348, 349, 184, 350, 141, 224, 225,
168, 226, 142, 169, 218, 222, 170, 294, 295, 296,
297, 363, 185, 260, 196, -264, 197, 198, 268, 352,
199, 209, 212, 218, 219, 211, 10, 241, 280, 363,
254, 284, 243, 82, 244, 255, 381, 262, 271, 220,
272, 83, 84, 274, 118, 222, 385, 289, 292, 189,
293, 300, 85, 38, 86, 302, 87, 304, 221, 306,
310, 315, 324, 319, 222, 325, 88, 189, 326, 328,
89, 333, 344, 223, 90, 385, 337, 91, 41, 42,
43, 225, 346, 226, 340, 341, 357, 381, 92, 45,
408, 345, 354, 93, 46, 94, 47, 95, 358, 365,
160, 369, 160, 371, 48, 388, 96, 97, 377, 382,
416, 398, 389, 49, 10, 50, 417, 1, 2, 392,
51, 98, 52, 53, 54, 6, 393, 191, 18, 38,
35, 81, 113, 99, 137, 106, 140, 347, 376, 273,
367, 213, 364, 414, 39, 317, 313, 305, 40, 402,
303, 373, 399, 397, 41, 42, 43, 334, 0, 0,
44, 0, 0, 0, 0, 45, 0, 0, 0, 0,
46, 0, 47, 0, 0, 0, 0, 0, 0, 0,
48, 0, 0, 0, 0, 0, 0, 0, 0, 49,
0, 50, 0, 0, 147, 148, 51, 0, 52, 53,
54, 149, 0, 0, 0, 85, 38, 86, 0, 87,
150, 0, 0, 0, 0, 0, 0, 0, 0, 88,
0, 0, 0, 89, 0, 0, 0, 90, 0, 0,
91, 41, 42, 43, 0, 0, 0, 0, 0, 150,
91, 41, 42, 43, 0, 0, 0, 0, 0, 151,
0, 92, 45, 0, 0, 0, 93, 46, 94, 47,
95, 0, 0, 0, 0, 0, 0, 48, 0, 96,
97, 151, 152, 0, 0, 0, 49, 0, 50, 0,
153, 146, 147, 51, 98, 52, 53, 54, 148, 0,
0, 0, 85, 38, 86, 0, 87, 149, 0, 0,
97, 152, 153, 0, 0, 0, 49, 0, 50, 0,
154, 147, 148, 51, 98, 52, 53, 54, 149, 0,
0, 0, 85, 38, 86, 0, 87, 150, 0, 0,
0, 0, 0, 0, 0, 0, 88, 0, 0, 0,
89, 0, 0, 0, 90, 0, 0, 91, 41, 42,
43, 0, 0, 0, 0, 0, 150, 0, 92, 45,
43, 0, 0, 0, 0, 0, 151, 0, 92, 45,
0, 0, 0, 93, 46, 94, 47, 95, 0, 0,
0, 83, 84, 0, 48, 0, 96, 97, 151, 152,
0, 0, 85, 49, 86, 50, 87, 0, 1, 2,
51, 98, 52, 53, 54, 0, 88, 0, 0, 85,
89, 86, 0, 87, 90, 0, 0, 91, 0, 0,
0, 0, 0, 88, 0, 0, 0, 89, 92, 0,
0, 90, 0, 93, 91, 94, 0, 95, 0, 0,
0, 0, 0, 0, 0, 92, 96, 97, 0, 0,
93, 0, 94, 0, 95, 0, 0, 0, 0, 0,
0, 98, 0, 96, 97, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 98
0, 0, 0, 0, 48, 0, 96, 97, 152, 153,
0, 0, 0, 49, 0, 50, 83, 84, 0, 0,
51, 98, 52, 53, 54, 0, 0, 85, 38, 86,
0, 87, 0, 0, 0, 0, 0, 0, 0, 0,
0, 88, 0, 0, 0, 89, 0, 0, 0, 90,
0, 0, 91, 41, 42, 43, 0, 0, 0, 0,
0, 0, 0, 92, 45, 0, 0, 0, 93, 46,
94, 47, 95, 0, 0, 0, 0, 0, 0, 48,
0, 96, 97, 0, 0, 0, 0, 0, 49, 0,
50, 1, 2, 0, 0, 51, 98, 52, 53, 54,
0, 0, 85, 38, 86, 0, 87, 0, 0, 0,
0, 0, 0, 0, 0, 0, 88, 0, 0, 0,
89, 0, 0, 0, 90, 0, 0, 91, 41, 42,
43, 0, 0, 0, 0, 0, 0, 0, 92, 45,
0, 0, 0, 93, 46, 94, 47, 95, 0, 0,
0, 0, 0, 0, 48, 0, 96, 97, 0, 0,
0, 0, 0, 49, 0, 50, 0, 0, 0, 0,
51, 98, 52, 53, 54
};
static const short yycheck[] = { 7,
120, 82, 82, 170, 152, 13, 154, 194, 135, 134,
64, 65, 198, 8, 8, 64, 65, 28, 8, 19,
316, 317, 46, 8, 80, 4, 11, 12, 288, 37,
0, 327, 40, 3, 13, 14, 44, 8, 15, 13,
14, 33, 8, 303, 103, 11, 12, 226, 56, 105,
99, 17, 8, 9, 37, 8, 9, 10, 8, 33,
8, 9, 80, 8, 9, 10, 74, 37, 41, 370,
40, 372, 319, 56, 44, 75, 34, 69, 244, 52,
30, 247, 209, 262, 108, 103, 56, 105, 101, 89,
337, 105, 69, 272, 103, 69, 73, 298, 299, 112,
301, 109, 111, 114, 74, 9, 114, 6, 102, 8,
9, 10, 11, 12, 194, 123, 241, 244, 167, 114,
247, 111, 107, 302, 57, 104, 293, 135, 4, 99,
104, 102, 212, 253, 108, 321, 53, 13, 14, 109,
114, 107, 84, 113, 114, 199, 45, 46, 104, 102,
120, 104, 102, 123, 80, 12, 104, 102, 11, 12,
168, 169, 61, 20, 134, 135, 84, 5, 6, 7,
8, 9, 10, 11, 12, 107, 108, 103, 84, 105,
260, 80, 13, 14, 41, 104, 43, 86, 268, 108,
198, 3, 319, 201, 106, 52, 95, 167, 206, 169,
21, 209, 12, 211, 103, 39, 105, 45, 8, 336,
337, 11, 12, 400, 107, 6, 103, 8, 9, 10,
11, 12, 389, 410, 103, 63, 97, 98, 99, 100,
104, 11, 12, 381, 108, 243, 244, 108, 8, 247,
81, 11, 12, 111, 324, 81, 46, 255, 86, 330,
370, 71, 372, 334, 45, 225, 104, 104, 104, 3,
108, 108, 108, 271, 51, 103, 274, 11, 12, 60,
81, 104, 104, 3, 244, 108, 108, 247, 22, 3,
24, 111, 26, 253, 103, 6, 104, 8, 9, 10,
11, 12, 36, 109, 109, 86, 40, 104, 103, 9,
44, 103, 6, 47, 8, 9, 10, 11, 12, 35,
103, 319, 68, 321, 58, 103, 3, 103, 326, 63,
8, 65, 111, 67, 45, 109, 111, 25, 336, 337,
105, 339, 76, 77, 115, 68, 344, 105, 114, 60,
68, 45, 46, 104, 30, 108, 354, 91, 96, 319,
8, 9, 10, 11, 12, 105, 103, 61, 4, 103,
11, 12, 13, 14, 95, 86, 88, 337, 97, 98,
99, 100, 110, 68, 8, 383, 80, 11, 12, 104,
112, 108, 86, 106, 104, 101, 105, 395, 103, 23,
398, 95, 104, 106, 4, 113, 102, 82, 102, 103,
370, 105, 372, 106, 38, 106, 106, 112, 42, 103,
106, 108, 111, 106, 48, 49, 50, 0, 0, 3,
54, 138, 13, 26, 56, 59, 74, 109, 65, 293,
64, 114, 66, 167, 339, 206, 326, 321, 246, 233,
74, 250, 410, 241, 395, 383, 387, 336, 274, 83,
82, 82, 121, 170, 153, 13, 155, 194, 8, 136,
198, 64, 65, 135, 8, 64, 65, 8, 8, 8,
9, 19, 46, 8, 28, 4, 11, 12, 103, 37,
0, 15, 40, 3, 13, 14, 44, 80, 34, 30,
8, 13, 14, 11, 12, 8, 9, 226, 56, 17,
99, 33, 9, 8, 9, 10, 8, 9, 10, 8,
8, 33, 105, 11, 12, 12, 74, 37, 316, 317,
40, 37, 8, 20, 44, 11, 12, 75, 80, 327,
288, 319, 209, 262, 108, 69, 56, 69, 105, 73,
56, 89, 103, 272, 41, 303, 43, 69, 46, 337,
111, 103, 110, 105, 74, 52, 244, 115, 102, 247,
114, 102, 57, 194, 114, 104, 124, 244, 167, 241,
247, 111, 107, 302, 41, 104, 293, 101, 136, 99,
84, 212, 104, 321, 253, 52, 108, 53, 112, 107,
110, 104, 114, 3, 114, 115, 199, 102, 80, 104,
102, 121, 21, 102, 124, 84, 97, 98, 99, 100,
168, 169, 11, 12, 84, 135, 136, 108, 4, 106,
104, 103, 12, 105, 108, 13, 14, 13, 14, 260,
8, 9, 10, 11, 12, 104, 370, 268, 372, 108,
198, 104, 319, 201, 39, 108, 104, 167, 206, 169,
108, 209, 6, 211, 8, 9, 10, 11, 12, 336,
337, 107, 108, 400, 5, 6, 7, 8, 9, 10,
11, 12, 389, 410, 107, 6, 103, 8, 9, 10,
11, 12, 381, 104, 104, 243, 244, 108, 108, 247,
104, 45, 46, 324, 108, 11, 12, 255, 330, 103,
111, 370, 334, 372, 45, 225, 81, 61, 11, 12,
13, 14, 81, 271, 45, 6, 274, 8, 9, 10,
11, 12, 63, 71, 244, 51, 80, 247, 81, 60,
3, 111, 86, 253, 6, 3, 8, 9, 10, 11,
12, 95, 104, 298, 299, 86, 301, 104, 102, 103,
109, 105, 103, 109, 45, 86, 103, 97, 98, 99,
100, 319, 103, 321, 9, 103, 35, 103, 326, 60,
68, 103, 3, 45, 46, 103, 8, 111, 336, 337,
115, 339, 111, 3, 109, 25, 344, 105, 68, 61,
105, 11, 12, 68, 114, 86, 354, 30, 104, 319,
108, 96, 22, 23, 24, 105, 26, 103, 80, 4,
95, 88, 68, 110, 86, 104, 36, 337, 108, 106,
40, 104, 103, 95, 44, 383, 105, 47, 48, 49,
50, 103, 106, 105, 112, 101, 4, 395, 58, 59,
398, 104, 113, 63, 64, 65, 66, 67, 82, 106,
370, 102, 372, 106, 74, 103, 76, 77, 112, 106,
0, 111, 108, 83, 8, 85, 0, 11, 12, 106,
90, 91, 92, 93, 94, 3, 106, 139, 13, 23,
26, 56, 74, 103, 110, 65, 115, 293, 339, 206,
326, 167, 321, 410, 38, 250, 246, 241, 42, 395,
233, 336, 387, 383, 48, 49, 50, 274, -1, -1,
54, -1, -1, -1, -1, 59, -1, -1, -1, -1,
64, -1, 66, -1, -1, -1, -1, -1, -1, -1,
74, -1, -1, -1, -1, -1, -1, -1, -1, 83,
-1, 85, -1, -1, 11, 12, 90, -1, 92, 93,
94, 18, -1, -1, -1, 22, 23, 24, -1, 26,
27, -1, -1, -1, -1, -1, -1, -1, -1, 36,
......@@ -753,16 +769,24 @@ static const short yycheck[] = { 7,
40, -1, -1, -1, 44, -1, -1, 47, 48, 49,
50, -1, -1, -1, -1, -1, 56, -1, 58, 59,
-1, -1, -1, 63, 64, 65, 66, 67, -1, -1,
-1, 11, 12, -1, 74, -1, 76, 77, 78, 79,
-1, -1, 22, 83, 24, 85, 26, -1, 11, 12,
90, 91, 92, 93, 94, -1, 36, -1, -1, 22,
40, 24, -1, 26, 44, -1, -1, 47, -1, -1,
-1, -1, -1, 36, -1, -1, -1, 40, 58, -1,
-1, 44, -1, 63, 47, 65, -1, 67, -1, -1,
-1, -1, -1, -1, -1, 58, 76, 77, -1, -1,
63, -1, 65, -1, 67, -1, -1, -1, -1, -1,
-1, 91, -1, 76, 77, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 91
-1, -1, -1, -1, 74, -1, 76, 77, 78, 79,
-1, -1, -1, 83, -1, 85, 11, 12, -1, -1,
90, 91, 92, 93, 94, -1, -1, 22, 23, 24,
-1, 26, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 36, -1, -1, -1, 40, -1, -1, -1, 44,
-1, -1, 47, 48, 49, 50, -1, -1, -1, -1,
-1, -1, -1, 58, 59, -1, -1, -1, 63, 64,
65, 66, 67, -1, -1, -1, -1, -1, -1, 74,
-1, 76, 77, -1, -1, -1, -1, -1, 83, -1,
85, 11, 12, -1, -1, 90, 91, 92, 93, 94,
-1, -1, 22, 23, 24, -1, 26, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 36, -1, -1, -1,
40, -1, -1, -1, 44, -1, -1, 47, 48, 49,
50, -1, -1, -1, -1, -1, -1, -1, 58, 59,
-1, -1, -1, 63, 64, 65, 66, 67, -1, -1,
-1, -1, -1, -1, 74, -1, 76, 77, -1, -1,
-1, -1, -1, 83, -1, 85, -1, -1, -1, -1,
90, 91, 92, 93, 94
};
/* -*-C-*- Note some compilers choke on comments on `#line' lines. */
#line 3 "/usr/share/bison.simple"
......@@ -2183,9 +2207,9 @@ case 107:
case 108:
#line 1091 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
yyval.a_expr->expr_type = yyvsp[0].a_type;
yyval.a_expr = yyvsp[-1].a_expr;
assert(yyval.a_expr->expr_type == A1TC_INVALID);
yyval.a_expr->expr_type = ASN_CONSTR_CHOICE;
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
......@@ -2194,7 +2218,7 @@ case 109:
{
yyval.a_expr = yyvsp[-1].a_expr;
assert(yyval.a_expr->expr_type == A1TC_INVALID);
yyval.a_expr->expr_type = ASN_CONSTR_CHOICE;
yyval.a_expr->expr_type = ASN_CONSTR_SEQUENCE;
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
......@@ -2203,21 +2227,12 @@ case 110:
{
yyval.a_expr = yyvsp[-1].a_expr;
assert(yyval.a_expr->expr_type == A1TC_INVALID);
yyval.a_expr->expr_type = ASN_CONSTR_SEQUENCE;
yyval.a_expr->expr_type = ASN_CONSTR_SET;
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 111:
#line 1109 "asn1p_y.y"
{
yyval.a_expr = yyvsp[-1].a_expr;
assert(yyval.a_expr->expr_type == A1TC_INVALID);
yyval.a_expr->expr_type = ASN_CONSTR_SET;
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 112:
#line 1115 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2229,8 +2244,8 @@ case 112:
asn1p_expr_add(yyval.a_expr, yyvsp[0].a_expr);
;
break;}
case 113:
#line 1125 "asn1p_y.y"
case 112:
#line 1119 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2242,8 +2257,8 @@ case 113:
asn1p_expr_add(yyval.a_expr, yyvsp[0].a_expr);
;
break;}
case 114:
#line 1135 "asn1p_y.y"
case 113:
#line 1129 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2251,8 +2266,8 @@ case 114:
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 115:
#line 1141 "asn1p_y.y"
case 114:
#line 1135 "asn1p_y.y"
{
int ret;
yyval.a_expr = asn1p_expr_new(yylineno);
......@@ -2265,8 +2280,8 @@ case 115:
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 116:
#line 1155 "asn1p_y.y"
case 115:
#line 1149 "asn1p_y.y"
{
int ret;
yyval.a_expr = yyvsp[-1].a_expr;
......@@ -2282,8 +2297,8 @@ case 116:
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 117:
#line 1179 "asn1p_y.y"
case 116:
#line 1173 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2292,8 +2307,8 @@ case 117:
yyval.a_expr->meta_type = AMT_TYPEREF;
;
break;}
case 118:
#line 1186 "asn1p_y.y"
case 117:
#line 1180 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2302,8 +2317,8 @@ case 118:
yyval.a_expr->meta_type = AMT_TYPE;
;
break;}
case 119:
#line 1201 "asn1p_y.y"
case 118:
#line 1195 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2313,8 +2328,8 @@ case 119:
free(yyvsp[0].tv_str);
;
break;}
case 120:
#line 1209 "asn1p_y.y"
case 119:
#line 1203 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2326,8 +2341,8 @@ case 120:
free(yyvsp[-2].tv_str);
;
break;}
case 121:
#line 1219 "asn1p_y.y"
case 120:
#line 1213 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2339,8 +2354,8 @@ case 121:
free(yyvsp[-2].tv_str);
;
break;}
case 122:
#line 1229 "asn1p_y.y"
case 121:
#line 1223 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2352,8 +2367,8 @@ case 122:
free(yyvsp[-2].tv_str);
;
break;}
case 123:
#line 1239 "asn1p_y.y"
case 122:
#line 1233 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2363,8 +2378,8 @@ case 123:
checkmem(ret == 0);
;
break;}
case 124:
#line 1247 "asn1p_y.y"
case 123:
#line 1241 "asn1p_y.y"
{
int ret;
yyval.a_ref = yyvsp[0].a_ref;
......@@ -2385,8 +2400,8 @@ case 124:
}
;
break;}
case 125:
#line 1269 "asn1p_y.y"
case 124:
#line 1263 "asn1p_y.y"
{
int ret;
yyval.a_ref = asn1p_ref_new(yylineno);
......@@ -2396,8 +2411,8 @@ case 125:
checkmem(ret == 0);
;
break;}
case 126:
#line 1277 "asn1p_y.y"
case 125:
#line 1271 "asn1p_y.y"
{
int ret;
yyval.a_ref = yyvsp[-2].a_ref;
......@@ -2406,22 +2421,22 @@ case 126:
checkmem(ret == 0);
;
break;}
case 129:
#line 1291 "asn1p_y.y"
case 128:
#line 1285 "asn1p_y.y"
{
yyval.a_refcomp.lex_type = RLT_AmpUppercase;
yyval.a_refcomp.name = yyvsp[0].tv_str;
;
break;}
case 130:
#line 1296 "asn1p_y.y"
case 129:
#line 1290 "asn1p_y.y"
{
yyval.a_refcomp.lex_type = RLT_Amplowercase;
yyval.a_refcomp.name = yyvsp[0].tv_str;
;
break;}
case 131:
#line 1309 "asn1p_y.y"
case 130:
#line 1303 "asn1p_y.y"
{
yyval.a_expr = yyvsp[-2].a_expr;
assert(yyval.a_expr->Identifier == NULL);
......@@ -2430,8 +2445,8 @@ case 131:
yyval.a_expr->value = yyvsp[0].a_value;
;
break;}
case 132:
#line 1319 "asn1p_y.y"
case 131:
#line 1313 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(0);
checkmem(yyval.a_value);
......@@ -2440,77 +2455,77 @@ case 132:
yyval.a_value->value.choice_identifier.value = yyvsp[0].a_value;
;
break;}
case 133:
#line 1326 "asn1p_y.y"
case 132:
#line 1320 "asn1p_y.y"
{ asn1p_lexer_hack_push_opaque_state(); ;
break;}
case 134:
#line 1326 "asn1p_y.y"
case 133:
#line 1320 "asn1p_y.y"
{
yyval.a_value = asn1p_value_frombuf(yyvsp[0].tv_opaque.buf, yyvsp[0].tv_opaque.len, 0);
checkmem(yyval.a_value);
yyval.a_value->type = ATV_UNPARSED;
;
break;}
case 135:
#line 1331 "asn1p_y.y"
case 134:
#line 1325 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(0);
checkmem(yyval.a_value);
yyval.a_value->type = ATV_NULL;
;
break;}
case 136:
#line 1336 "asn1p_y.y"
case 135:
#line 1330 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(0);
checkmem(yyval.a_value);
yyval.a_value->type = ATV_FALSE;
;
break;}
case 137:
#line 1341 "asn1p_y.y"
case 136:
#line 1335 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(0);
checkmem(yyval.a_value);
yyval.a_value->type = ATV_TRUE;
;
break;}
case 138:
#line 1346 "asn1p_y.y"
case 137:
#line 1340 "asn1p_y.y"
{
yyval.a_value = _convert_bitstring2binary(yyvsp[0].tv_str, 'B');
checkmem(yyval.a_value);
;
break;}
case 139:
#line 1350 "asn1p_y.y"
case 138:
#line 1344 "asn1p_y.y"
{
yyval.a_value = _convert_bitstring2binary(yyvsp[0].tv_str, 'H');
checkmem(yyval.a_value);
;
break;}
case 140:
#line 1354 "asn1p_y.y"
case 139:
#line 1348 "asn1p_y.y"
{
yyval.a_value = asn1p_value_frombuf(yyvsp[0].tv_opaque.buf, yyvsp[0].tv_opaque.len, 0);
checkmem(yyval.a_value);
;
break;}
case 141:
#line 1358 "asn1p_y.y"
case 140:
#line 1352 "asn1p_y.y"
{
yyval.a_value = yyvsp[0].a_value;
;
break;}
case 142:
#line 1361 "asn1p_y.y"
case 141:
#line 1355 "asn1p_y.y"
{
yyval.a_value = yyvsp[0].a_value;
;
break;}
case 143:
#line 1367 "asn1p_y.y"
case 142:
#line 1361 "asn1p_y.y"
{
asn1p_ref_t *ref;
int ret;
......@@ -2523,8 +2538,8 @@ case 143:
free(yyvsp[0].tv_str);
;
break;}
case 144:
#line 1378 "asn1p_y.y"
case 143:
#line 1372 "asn1p_y.y"
{
asn1p_ref_t *ref;
int ret;
......@@ -2540,8 +2555,8 @@ case 144:
free(yyvsp[0].tv_str);
;
break;}
case 145:
#line 1395 "asn1p_y.y"
case 144:
#line 1389 "asn1p_y.y"
{
yyval.tv_opaque.len = yyvsp[0].tv_opaque.len + 2;
yyval.tv_opaque.buf = malloc(yyval.tv_opaque.len + 1);
......@@ -2553,8 +2568,8 @@ case 145:
free(yyvsp[0].tv_opaque.buf);
;
break;}
case 146:
#line 1405 "asn1p_y.y"
case 145:
#line 1399 "asn1p_y.y"
{
int newsize = yyvsp[-1].tv_opaque.len + yyvsp[0].tv_opaque.len;
char *p = malloc(newsize + 1);
......@@ -2568,68 +2583,72 @@ case 146:
yyval.tv_opaque.len = newsize;
;
break;}
case 147:
#line 1420 "asn1p_y.y"
case 146:
#line 1414 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_BOOLEAN; ;
break;}
case 148:
#line 1421 "asn1p_y.y"
case 147:
#line 1415 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_NULL; ;
break;}
case 149:
#line 1422 "asn1p_y.y"
case 148:
#line 1416 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_REAL; ;
break;}
case 150:
#line 1423 "asn1p_y.y"
case 149:
#line 1417 "asn1p_y.y"
{ yyval.a_type = yyvsp[0].a_type; ;
break;}
case 151:
#line 1424 "asn1p_y.y"
case 150:
#line 1418 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_OCTET_STRING; ;
break;}
case 152:
#line 1425 "asn1p_y.y"
case 151:
#line 1419 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_OBJECT_IDENTIFIER; ;
break;}
case 153:
#line 1426 "asn1p_y.y"
case 152:
#line 1420 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_RELATIVE_OID; ;
break;}
case 154:
#line 1427 "asn1p_y.y"
case 153:
#line 1421 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_EXTERNAL; ;
break;}
case 155:
#line 1428 "asn1p_y.y"
case 154:
#line 1422 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_EMBEDDED_PDV; ;
break;}
case 156:
#line 1429 "asn1p_y.y"
case 155:
#line 1423 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_CHARACTER_STRING; ;
break;}
case 157:
#line 1430 "asn1p_y.y"
case 156:
#line 1424 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_UTCTime; ;
break;}
case 158:
#line 1431 "asn1p_y.y"
case 157:
#line 1425 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_GeneralizedTime; ;
break;}
case 158:
#line 1426 "asn1p_y.y"
{ yyval.a_type = yyvsp[0].a_type; ;
break;}
case 159:
#line 1438 "asn1p_y.y"
#line 1433 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_INTEGER; ;
break;}
case 160:
#line 1439 "asn1p_y.y"
#line 1434 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_ENUMERATED; ;
break;}
case 161:
#line 1440 "asn1p_y.y"
#line 1435 "asn1p_y.y"
{ yyval.a_type = ASN_BASIC_BIT_STRING; ;
break;}
case 162:
#line 1444 "asn1p_y.y"
#line 1439 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -2638,7 +2657,7 @@ case 162:
;
break;}
case 163:
#line 1450 "asn1p_y.y"
#line 1445 "asn1p_y.y"
{
if(yyvsp[0].a_expr) {
yyval.a_expr = yyvsp[0].a_expr;
......@@ -2651,91 +2670,91 @@ case 163:
;
break;}
case 164:
#line 1463 "asn1p_y.y"
#line 1458 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_BMPString; ;
break;}
case 165:
#line 1464 "asn1p_y.y"
#line 1459 "asn1p_y.y"
{
yyval.a_type = ASN_STRING_GeneralString;
fprintf(stderr, "WARNING: GeneralString is not fully supported\n");
;
break;}
case 166:
#line 1468 "asn1p_y.y"
#line 1463 "asn1p_y.y"
{
yyval.a_type = ASN_STRING_GraphicString;
fprintf(stderr, "WARNING: GraphicString is not fully supported\n");
;
break;}
case 167:
#line 1472 "asn1p_y.y"
#line 1467 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_IA5String; ;
break;}
case 168:
#line 1473 "asn1p_y.y"
#line 1468 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_ISO646String; ;
break;}
case 169:
#line 1474 "asn1p_y.y"
#line 1469 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_NumericString; ;
break;}
case 170:
#line 1475 "asn1p_y.y"
#line 1470 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_PrintableString; ;
break;}
case 171:
#line 1476 "asn1p_y.y"
#line 1471 "asn1p_y.y"
{
yyval.a_type = ASN_STRING_T61String;
fprintf(stderr, "WARNING: T61String is not fully supported\n");
;
break;}
case 172:
#line 1480 "asn1p_y.y"
#line 1475 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_TeletexString; ;
break;}
case 173:
#line 1481 "asn1p_y.y"
#line 1476 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_UniversalString; ;
break;}
case 174:
#line 1482 "asn1p_y.y"
#line 1477 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_UTF8String; ;
break;}
case 175:
#line 1483 "asn1p_y.y"
#line 1478 "asn1p_y.y"
{
yyval.a_type = ASN_STRING_VideotexString;
fprintf(stderr, "WARNING: VideotexString is not fully supported\n");
;
break;}
case 176:
#line 1487 "asn1p_y.y"
#line 1482 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_VisibleString; ;
break;}
case 177:
#line 1488 "asn1p_y.y"
#line 1483 "asn1p_y.y"
{ yyval.a_type = ASN_STRING_ObjectDescriptor; ;
break;}
case 183:
#line 1500 "asn1p_y.y"
#line 1495 "asn1p_y.y"
{ yyval.a_constr = 0; ;
break;}
case 184:
#line 1501 "asn1p_y.y"
#line 1496 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 185:
#line 1507 "asn1p_y.y"
#line 1502 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_SET, yyvsp[0].a_constr, 0);
;
break;}
case 186:
#line 1510 "asn1p_y.y"
#line 1505 "asn1p_y.y"
{
/*
* This is a special case, for compatibility purposes.
......@@ -2745,25 +2764,25 @@ case 186:
;
break;}
case 187:
#line 1520 "asn1p_y.y"
#line 1515 "asn1p_y.y"
{
yyval.a_constr = yyvsp[-1].a_constr;
;
break;}
case 188:
#line 1523 "asn1p_y.y"
#line 1518 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_SET, yyvsp[-3].a_constr, yyvsp[-1].a_constr);
;
break;}
case 189:
#line 1529 "asn1p_y.y"
#line 1524 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 190:
#line 1532 "asn1p_y.y"
#line 1527 "asn1p_y.y"
{
asn1p_constraint_t *ct;
ct = asn1p_constraint_new(yylineno);
......@@ -2772,7 +2791,7 @@ case 190:
;
break;}
case 191:
#line 1538 "asn1p_y.y"
#line 1533 "asn1p_y.y"
{
asn1p_constraint_t *ct;
ct = asn1p_constraint_new(yylineno);
......@@ -2783,31 +2802,31 @@ case 191:
;
break;}
case 192:
#line 1549 "asn1p_y.y"
#line 1544 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 193:
#line 1552 "asn1p_y.y"
#line 1547 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_UNI, yyvsp[-2].a_constr, yyvsp[0].a_constr);
;
break;}
case 194:
#line 1555 "asn1p_y.y"
#line 1550 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_INT, yyvsp[-2].a_constr, yyvsp[0].a_constr);
;
break;}
case 195:
#line 1558 "asn1p_y.y"
#line 1553 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_EXC, yyvsp[-2].a_constr, yyvsp[0].a_constr);
;
break;}
case 196:
#line 1564 "asn1p_y.y"
#line 1559 "asn1p_y.y"
{
int ret;
yyval.a_constr = asn1p_constraint_new(yylineno);
......@@ -2818,7 +2837,7 @@ case 196:
;
break;}
case 197:
#line 1572 "asn1p_y.y"
#line 1567 "asn1p_y.y"
{
int ret;
yyval.a_constr = asn1p_constraint_new(yylineno);
......@@ -2829,7 +2848,7 @@ case 197:
;
break;}
case 198:
#line 1580 "asn1p_y.y"
#line 1575 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -2838,7 +2857,7 @@ case 198:
;
break;}
case 199:
#line 1586 "asn1p_y.y"
#line 1581 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -2848,7 +2867,7 @@ case 199:
;
break;}
case 200:
#line 1593 "asn1p_y.y"
#line 1588 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -2859,7 +2878,7 @@ case 200:
;
break;}
case 201:
#line 1601 "asn1p_y.y"
#line 1596 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -2870,7 +2889,7 @@ case 201:
;
break;}
case 202:
#line 1609 "asn1p_y.y"
#line 1604 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -2882,47 +2901,47 @@ case 202:
;
break;}
case 203:
#line 1618 "asn1p_y.y"
#line 1613 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 204:
#line 1621 "asn1p_y.y"
#line 1616 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 205:
#line 1627 "asn1p_y.y"
#line 1622 "asn1p_y.y"
{ yyval.a_ctype = ACT_EL_RANGE; ;
break;}
case 206:
#line 1628 "asn1p_y.y"
#line 1623 "asn1p_y.y"
{ yyval.a_ctype = ACT_EL_RLRANGE; ;
break;}
case 207:
#line 1629 "asn1p_y.y"
#line 1624 "asn1p_y.y"
{ yyval.a_ctype = ACT_EL_LLRANGE; ;
break;}
case 208:
#line 1630 "asn1p_y.y"
#line 1625 "asn1p_y.y"
{ yyval.a_ctype = ACT_EL_ULRANGE; ;
break;}
case 209:
#line 1634 "asn1p_y.y"
#line 1629 "asn1p_y.y"
{
yyval.a_ctype = ACT_CT_SIZE;
;
break;}
case 210:
#line 1637 "asn1p_y.y"
#line 1632 "asn1p_y.y"
{
yyval.a_ctype = ACT_CT_FROM;
;
break;}
case 211:
#line 1643 "asn1p_y.y"
#line 1638 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(0);
checkmem(yyval.a_value);
......@@ -2930,7 +2949,7 @@ case 211:
;
break;}
case 212:
#line 1648 "asn1p_y.y"
#line 1643 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(1);
checkmem(yyval.a_value);
......@@ -2938,20 +2957,20 @@ case 212:
;
break;}
case 213:
#line 1653 "asn1p_y.y"
#line 1648 "asn1p_y.y"
{
yyval.a_value = yyvsp[0].a_value;
;
break;}
case 214:
#line 1656 "asn1p_y.y"
#line 1651 "asn1p_y.y"
{
yyval.a_value = asn1p_value_frombuf(yyvsp[0].tv_opaque.buf, yyvsp[0].tv_opaque.len, 0);
checkmem(yyval.a_value);
;
break;}
case 215:
#line 1660 "asn1p_y.y"
#line 1655 "asn1p_y.y"
{
asn1p_ref_t *ref;
int ret;
......@@ -2965,7 +2984,7 @@ case 215:
;
break;}
case 216:
#line 1671 "asn1p_y.y"
#line 1666 "asn1p_y.y"
{
asn1p_ref_t *ref;
int ret;
......@@ -2979,25 +2998,25 @@ case 216:
;
break;}
case 217:
#line 1685 "asn1p_y.y"
#line 1680 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CT_WCOMPS, yyvsp[-1].a_constr, 0);
;
break;}
case 218:
#line 1691 "asn1p_y.y"
#line 1686 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 219:
#line 1694 "asn1p_y.y"
#line 1689 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CT_WCOMPS, yyvsp[-2].a_constr, yyvsp[0].a_constr);
;
break;}
case 220:
#line 1700 "asn1p_y.y"
#line 1695 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -3005,7 +3024,7 @@ case 220:
;
break;}
case 221:
#line 1705 "asn1p_y.y"
#line 1700 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -3015,45 +3034,45 @@ case 221:
;
break;}
case 222:
#line 1718 "asn1p_y.y"
#line 1713 "asn1p_y.y"
{ yyval.a_pres = ACPRES_DEFAULT; ;
break;}
case 223:
#line 1719 "asn1p_y.y"
#line 1714 "asn1p_y.y"
{ yyval.a_pres = yyvsp[0].a_pres; ;
break;}
case 224:
#line 1723 "asn1p_y.y"
#line 1718 "asn1p_y.y"
{
yyval.a_pres = ACPRES_PRESENT;
;
break;}
case 225:
#line 1726 "asn1p_y.y"
#line 1721 "asn1p_y.y"
{
yyval.a_pres = ACPRES_ABSENT;
;
break;}
case 226:
#line 1729 "asn1p_y.y"
#line 1724 "asn1p_y.y"
{
yyval.a_pres = ACPRES_OPTIONAL;
;
break;}
case 227:
#line 1735 "asn1p_y.y"
#line 1730 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 228:
#line 1738 "asn1p_y.y"
#line 1733 "asn1p_y.y"
{
yyval.a_constr = yyvsp[0].a_constr;
;
break;}
case 229:
#line 1747 "asn1p_y.y"
#line 1742 "asn1p_y.y"
{
asn1p_ref_t *ref = asn1p_ref_new(yylineno);
asn1p_constraint_t *ct;
......@@ -3068,13 +3087,13 @@ case 229:
;
break;}
case 230:
#line 1762 "asn1p_y.y"
#line 1757 "asn1p_y.y"
{
CONSTRAINT_INSERT(yyval.a_constr, ACT_CA_CRC, yyvsp[-3].a_constr, yyvsp[-1].a_constr);
;
break;}
case 231:
#line 1768 "asn1p_y.y"
#line 1763 "asn1p_y.y"
{
yyval.a_constr = asn1p_constraint_new(yylineno);
checkmem(yyval.a_constr);
......@@ -3083,7 +3102,7 @@ case 231:
;
break;}
case 232:
#line 1774 "asn1p_y.y"
#line 1769 "asn1p_y.y"
{
asn1p_constraint_t *ct;
ct = asn1p_constraint_new(yylineno);
......@@ -3094,7 +3113,7 @@ case 232:
;
break;}
case 233:
#line 1788 "asn1p_y.y"
#line 1783 "asn1p_y.y"
{
char *p = malloc(strlen(yyvsp[0].tv_str) + 2);
int ret;
......@@ -3108,7 +3127,7 @@ case 233:
;
break;}
case 234:
#line 1799 "asn1p_y.y"
#line 1794 "asn1p_y.y"
{
char *p = malloc(strlen(yyvsp[0].tv_str) + 3);
int ret;
......@@ -3123,13 +3142,13 @@ case 234:
;
break;}
case 235:
#line 1815 "asn1p_y.y"
#line 1810 "asn1p_y.y"
{
yyval.tv_str = yyvsp[0].tv_str;
;
break;}
case 236:
#line 1818 "asn1p_y.y"
#line 1813 "asn1p_y.y"
{
int l1 = strlen(yyvsp[-2].tv_str);
int l3 = strlen(yyvsp[0].tv_str);
......@@ -3141,45 +3160,45 @@ case 236:
;
break;}
case 237:
#line 1836 "asn1p_y.y"
#line 1831 "asn1p_y.y"
{
yyval.a_marker.flags = EM_NOMARK;
yyval.a_marker.default_value = 0;
;
break;}
case 238:
#line 1840 "asn1p_y.y"
#line 1835 "asn1p_y.y"
{ yyval.a_marker = yyvsp[0].a_marker; ;
break;}
case 239:
#line 1844 "asn1p_y.y"
#line 1839 "asn1p_y.y"
{
yyval.a_marker.flags = EM_OPTIONAL;
yyval.a_marker.default_value = 0;
;
break;}
case 240:
#line 1848 "asn1p_y.y"
#line 1843 "asn1p_y.y"
{
yyval.a_marker.flags = EM_DEFAULT;
yyval.a_marker.default_value = yyvsp[0].a_value;
;
break;}
case 241:
#line 1871 "asn1p_y.y"
#line 1866 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
;
break;}
case 242:
#line 1875 "asn1p_y.y"
#line 1870 "asn1p_y.y"
{
yyval.a_expr = yyvsp[-1].a_expr;
;
break;}
case 243:
#line 1881 "asn1p_y.y"
#line 1876 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3187,14 +3206,14 @@ case 243:
;
break;}
case 244:
#line 1886 "asn1p_y.y"
#line 1881 "asn1p_y.y"
{
yyval.a_expr = yyvsp[-2].a_expr;
asn1p_expr_add(yyval.a_expr, yyvsp[0].a_expr);
;
break;}
case 245:
#line 1893 "asn1p_y.y"
#line 1888 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3204,7 +3223,7 @@ case 245:
;
break;}
case 246:
#line 1900 "asn1p_y.y"
#line 1895 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3215,7 +3234,7 @@ case 246:
;
break;}
case 247:
#line 1908 "asn1p_y.y"
#line 1903 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3226,7 +3245,7 @@ case 247:
;
break;}
case 248:
#line 1916 "asn1p_y.y"
#line 1911 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3236,7 +3255,7 @@ case 248:
;
break;}
case 249:
#line 1923 "asn1p_y.y"
#line 1918 "asn1p_y.y"
{
yyval.a_expr = asn1p_expr_new(yylineno);
checkmem(yyval.a_expr);
......@@ -3247,102 +3266,102 @@ case 249:
;
break;}
case 250:
#line 1934 "asn1p_y.y"
#line 1929 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(yyvsp[0].a_int);
checkmem(yyval.a_value);
;
break;}
case 251:
#line 1938 "asn1p_y.y"
#line 1933 "asn1p_y.y"
{
yyval.a_value = asn1p_value_fromint(yyvsp[0].a_int);
checkmem(yyval.a_value);
;
break;}
case 252:
#line 1969 "asn1p_y.y"
#line 1964 "asn1p_y.y"
{ memset(&yyval.a_tag, 0, sizeof(yyval.a_tag)); ;
break;}
case 253:
#line 1970 "asn1p_y.y"
#line 1965 "asn1p_y.y"
{ yyval.a_tag = yyvsp[0].a_tag; ;
break;}
case 254:
#line 1974 "asn1p_y.y"
#line 1969 "asn1p_y.y"
{
yyval.a_tag = yyvsp[-1].a_tag;
yyval.a_tag.tag_mode = yyvsp[0].a_tag.tag_mode;
;
break;}
case 255:
#line 1981 "asn1p_y.y"
#line 1976 "asn1p_y.y"
{
yyval.a_tag = yyvsp[-2].a_tag;
yyval.a_tag.tag_value = yyvsp[-1].a_int;
;
break;}
case 256:
#line 1987 "asn1p_y.y"
#line 1982 "asn1p_y.y"
{ yyval.a_tag.tag_class = TC_CONTEXT_SPECIFIC; ;
break;}
case 257:
#line 1988 "asn1p_y.y"
#line 1983 "asn1p_y.y"
{ yyval.a_tag.tag_class = TC_UNIVERSAL; ;
break;}
case 258:
#line 1989 "asn1p_y.y"
#line 1984 "asn1p_y.y"
{ yyval.a_tag.tag_class = TC_APPLICATION; ;
break;}
case 259:
#line 1990 "asn1p_y.y"
#line 1985 "asn1p_y.y"
{ yyval.a_tag.tag_class = TC_PRIVATE; ;
break;}
case 260:
#line 1994 "asn1p_y.y"
#line 1989 "asn1p_y.y"
{ yyval.a_tag.tag_mode = TM_DEFAULT; ;
break;}
case 261:
#line 1995 "asn1p_y.y"
#line 1990 "asn1p_y.y"
{ yyval.a_tag.tag_mode = TM_IMPLICIT; ;
break;}
case 262:
#line 1996 "asn1p_y.y"
#line 1991 "asn1p_y.y"
{ yyval.a_tag.tag_mode = TM_EXPLICIT; ;
break;}
case 263:
#line 2000 "asn1p_y.y"
#line 1995 "asn1p_y.y"
{
checkmem(yyvsp[0].tv_str);
yyval.tv_str = yyvsp[0].tv_str;
;
break;}
case 264:
#line 2004 "asn1p_y.y"
#line 1999 "asn1p_y.y"
{
checkmem(yyvsp[0].tv_str);
yyval.tv_str = yyvsp[0].tv_str;
;
break;}
case 265:
#line 2012 "asn1p_y.y"
#line 2007 "asn1p_y.y"
{
checkmem(yyvsp[0].tv_str);
yyval.tv_str = yyvsp[0].tv_str;
;
break;}
case 266:
#line 2019 "asn1p_y.y"
#line 2014 "asn1p_y.y"
{ yyval.tv_str = 0; ;
break;}
case 267:
#line 2020 "asn1p_y.y"
#line 2015 "asn1p_y.y"
{
yyval.tv_str = yyvsp[0].tv_str;
;
break;}
case 268:
#line 2025 "asn1p_y.y"
#line 2020 "asn1p_y.y"
{
checkmem(yyvsp[0].tv_str);
yyval.tv_str = yyvsp[0].tv_str;
......@@ -3570,7 +3589,7 @@ yyerrhandle:
}
return 1;
}
#line 2031 "asn1p_y.y"
#line 2026 "asn1p_y.y"
......
......@@ -1088,12 +1088,6 @@ TypeDeclaration:
BasicType {
$$ = $1;
}
| BasicString {
$$ = asn1p_expr_new(yylineno);
checkmem($$);
$$->expr_type = $1;
$$->meta_type = AMT_TYPE;
}
| TOK_CHOICE '{' AlternativeTypeLists '}' {
$$ = $3;
assert($$->expr_type == A1TC_INVALID);
......@@ -1429,6 +1423,7 @@ BasicTypeId:
| TOK_CHARACTER TOK_STRING { $$ = ASN_BASIC_CHARACTER_STRING; }
| TOK_UTCTime { $$ = ASN_BASIC_UTCTime; }
| TOK_GeneralizedTime { $$ = ASN_BASIC_GeneralizedTime; }
| BasicString { $$ = $1; }
;
/*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment