//line msg_parse.rl:1 // -*-go-*- package sip import ( "errors" "fmt" "github.com/jart/gosip/sdp" ) //line msg_parse.rl:12 //line msg_parse.rl:13 //line msg_parse.go:19 const msg_start int = 1 const msg_first_final int = 739 const msg_error int = 0 const msg_en_via_param int = 34 const msg_en_via int = 69 const msg_en_addr_param int = 119 const msg_en_addr_angled int = 154 const msg_en_addr_uri int = 195 const msg_en_addr int = 222 const msg_en_value int = 229 const msg_en_xheader int = 239 const msg_en_header int = 246 const msg_en_main int = 1 //line msg_parse.rl:14 // ParseMsg turns a SIP message into a data structure. func ParseMsg(s string) (msg *Msg, err error) { if s == "" { return nil, errors.New("Empty SIP message") } return ParseMsgBytes([]byte(s)) } // ParseMsg turns a SIP message byte slice into a data structure. func ParseMsgBytes(data []byte) (msg *Msg, err error) { if data == nil { return nil, nil } msg = new(Msg) viap := &msg.Via cs := 0 p := 0 pe := len(data) eof := len(data) buf := make([]byte, len(data)) amt := 0 mark := 0 clen := 0 ctype := "" var name string var hex byte var value *string var via *Via var addrp **Addr var addr *Addr //line msg_parse.rl:47 //line msg_parse.go:72 { cs = msg_start } //line msg_parse.rl:48 //line msg_parse.go:79 { var _widec int16 switch cs { case 1: goto st_case_1 case 0: goto st_case_0 case 2: goto st_case_2 case 3: goto st_case_3 case 4: goto st_case_4 case 5: goto st_case_5 case 6: goto st_case_6 case 7: goto st_case_7 case 8: goto st_case_8 case 9: goto st_case_9 case 10: goto st_case_10 case 11: goto st_case_11 case 12: goto st_case_12 case 13: goto st_case_13 case 739: goto st_case_739 case 14: goto st_case_14 case 15: goto st_case_15 case 16: goto st_case_16 case 17: goto st_case_17 case 18: goto st_case_18 case 19: goto st_case_19 case 20: goto st_case_20 case 21: goto st_case_21 case 22: goto st_case_22 case 23: goto st_case_23 case 24: goto st_case_24 case 25: goto st_case_25 case 26: goto st_case_26 case 27: goto st_case_27 case 28: goto st_case_28 case 29: goto st_case_29 case 30: goto st_case_30 case 31: goto st_case_31 case 32: goto st_case_32 case 33: goto st_case_33 case 34: goto st_case_34 case 35: goto st_case_35 case 36: goto st_case_36 case 37: goto st_case_37 case 740: goto st_case_740 case 38: goto st_case_38 case 39: goto st_case_39 case 40: goto st_case_40 case 41: goto st_case_41 case 42: goto st_case_42 case 43: goto st_case_43 case 44: goto st_case_44 case 45: goto st_case_45 case 46: goto st_case_46 case 47: goto st_case_47 case 48: goto st_case_48 case 49: goto st_case_49 case 50: goto st_case_50 case 51: goto st_case_51 case 52: goto st_case_52 case 53: goto st_case_53 case 54: goto st_case_54 case 55: goto st_case_55 case 56: goto st_case_56 case 57: goto st_case_57 case 58: goto st_case_58 case 59: goto st_case_59 case 60: goto st_case_60 case 61: goto st_case_61 case 62: goto st_case_62 case 63: goto st_case_63 case 64: goto st_case_64 case 65: goto st_case_65 case 66: goto st_case_66 case 67: goto st_case_67 case 68: goto st_case_68 case 69: goto st_case_69 case 70: goto st_case_70 case 71: goto st_case_71 case 72: goto st_case_72 case 73: goto st_case_73 case 74: goto st_case_74 case 75: goto st_case_75 case 76: goto st_case_76 case 77: goto st_case_77 case 78: goto st_case_78 case 79: goto st_case_79 case 80: goto st_case_80 case 741: goto st_case_741 case 81: goto st_case_81 case 82: goto st_case_82 case 83: goto st_case_83 case 84: goto st_case_84 case 85: goto st_case_85 case 86: goto st_case_86 case 87: goto st_case_87 case 88: goto st_case_88 case 89: goto st_case_89 case 90: goto st_case_90 case 91: goto st_case_91 case 92: goto st_case_92 case 93: goto st_case_93 case 94: goto st_case_94 case 95: goto st_case_95 case 96: goto st_case_96 case 97: goto st_case_97 case 98: goto st_case_98 case 99: goto st_case_99 case 100: goto st_case_100 case 101: goto st_case_101 case 102: goto st_case_102 case 103: goto st_case_103 case 104: goto st_case_104 case 105: goto st_case_105 case 106: goto st_case_106 case 107: goto st_case_107 case 108: goto st_case_108 case 109: goto st_case_109 case 110: goto st_case_110 case 111: goto st_case_111 case 112: goto st_case_112 case 113: goto st_case_113 case 114: goto st_case_114 case 115: goto st_case_115 case 116: goto st_case_116 case 117: goto st_case_117 case 118: goto st_case_118 case 119: goto st_case_119 case 120: goto st_case_120 case 121: goto st_case_121 case 122: goto st_case_122 case 742: goto st_case_742 case 123: goto st_case_123 case 124: goto st_case_124 case 125: goto st_case_125 case 126: goto st_case_126 case 127: goto st_case_127 case 128: goto st_case_128 case 129: goto st_case_129 case 130: goto st_case_130 case 131: goto st_case_131 case 132: goto st_case_132 case 133: goto st_case_133 case 134: goto st_case_134 case 135: goto st_case_135 case 136: goto st_case_136 case 137: goto st_case_137 case 138: goto st_case_138 case 139: goto st_case_139 case 140: goto st_case_140 case 141: goto st_case_141 case 142: goto st_case_142 case 143: goto st_case_143 case 144: goto st_case_144 case 145: goto st_case_145 case 146: goto st_case_146 case 147: goto st_case_147 case 148: goto st_case_148 case 149: goto st_case_149 case 150: goto st_case_150 case 151: goto st_case_151 case 152: goto st_case_152 case 153: goto st_case_153 case 154: goto st_case_154 case 155: goto st_case_155 case 156: goto st_case_156 case 157: goto st_case_157 case 158: goto st_case_158 case 159: goto st_case_159 case 160: goto st_case_160 case 161: goto st_case_161 case 743: goto st_case_743 case 162: goto st_case_162 case 163: goto st_case_163 case 164: goto st_case_164 case 165: goto st_case_165 case 166: goto st_case_166 case 167: goto st_case_167 case 168: goto st_case_168 case 169: goto st_case_169 case 170: goto st_case_170 case 171: goto st_case_171 case 172: goto st_case_172 case 173: goto st_case_173 case 174: goto st_case_174 case 175: goto st_case_175 case 176: goto st_case_176 case 177: goto st_case_177 case 178: goto st_case_178 case 179: goto st_case_179 case 180: goto st_case_180 case 181: goto st_case_181 case 182: goto st_case_182 case 183: goto st_case_183 case 184: goto st_case_184 case 185: goto st_case_185 case 186: goto st_case_186 case 187: goto st_case_187 case 188: goto st_case_188 case 189: goto st_case_189 case 190: goto st_case_190 case 191: goto st_case_191 case 192: goto st_case_192 case 193: goto st_case_193 case 194: goto st_case_194 case 195: goto st_case_195 case 196: goto st_case_196 case 197: goto st_case_197 case 198: goto st_case_198 case 199: goto st_case_199 case 200: goto st_case_200 case 744: goto st_case_744 case 201: goto st_case_201 case 202: goto st_case_202 case 203: goto st_case_203 case 204: goto st_case_204 case 205: goto st_case_205 case 206: goto st_case_206 case 207: goto st_case_207 case 208: goto st_case_208 case 209: goto st_case_209 case 210: goto st_case_210 case 211: goto st_case_211 case 212: goto st_case_212 case 745: goto st_case_745 case 213: goto st_case_213 case 214: goto st_case_214 case 215: goto st_case_215 case 746: goto st_case_746 case 216: goto st_case_216 case 217: goto st_case_217 case 747: goto st_case_747 case 218: goto st_case_218 case 219: goto st_case_219 case 220: goto st_case_220 case 748: goto st_case_748 case 749: goto st_case_749 case 750: goto st_case_750 case 751: goto st_case_751 case 221: goto st_case_221 case 222: goto st_case_222 case 223: goto st_case_223 case 224: goto st_case_224 case 752: goto st_case_752 case 225: goto st_case_225 case 226: goto st_case_226 case 227: goto st_case_227 case 228: goto st_case_228 case 229: goto st_case_229 case 230: goto st_case_230 case 231: goto st_case_231 case 232: goto st_case_232 case 233: goto st_case_233 case 234: goto st_case_234 case 235: goto st_case_235 case 236: goto st_case_236 case 753: goto st_case_753 case 237: goto st_case_237 case 238: goto st_case_238 case 239: goto st_case_239 case 240: goto st_case_240 case 241: goto st_case_241 case 242: goto st_case_242 case 754: goto st_case_754 case 243: goto st_case_243 case 244: goto st_case_244 case 245: goto st_case_245 case 246: goto st_case_246 case 247: goto st_case_247 case 248: goto st_case_248 case 249: goto st_case_249 case 250: goto st_case_250 case 755: goto st_case_755 case 251: goto st_case_251 case 252: goto st_case_252 case 253: goto st_case_253 case 254: goto st_case_254 case 255: goto st_case_255 case 256: goto st_case_256 case 257: goto st_case_257 case 258: goto st_case_258 case 259: goto st_case_259 case 260: goto st_case_260 case 261: goto st_case_261 case 262: goto st_case_262 case 263: goto st_case_263 case 264: goto st_case_264 case 265: goto st_case_265 case 266: goto st_case_266 case 267: goto st_case_267 case 268: goto st_case_268 case 269: goto st_case_269 case 270: goto st_case_270 case 271: goto st_case_271 case 272: goto st_case_272 case 273: goto st_case_273 case 274: goto st_case_274 case 275: goto st_case_275 case 276: goto st_case_276 case 277: goto st_case_277 case 278: goto st_case_278 case 279: goto st_case_279 case 280: goto st_case_280 case 281: goto st_case_281 case 282: goto st_case_282 case 283: goto st_case_283 case 284: goto st_case_284 case 285: goto st_case_285 case 286: goto st_case_286 case 287: goto st_case_287 case 288: goto st_case_288 case 289: goto st_case_289 case 290: goto st_case_290 case 291: goto st_case_291 case 292: goto st_case_292 case 293: goto st_case_293 case 294: goto st_case_294 case 295: goto st_case_295 case 296: goto st_case_296 case 297: goto st_case_297 case 298: goto st_case_298 case 299: goto st_case_299 case 300: goto st_case_300 case 301: goto st_case_301 case 302: goto st_case_302 case 303: goto st_case_303 case 304: goto st_case_304 case 305: goto st_case_305 case 306: goto st_case_306 case 307: goto st_case_307 case 308: goto st_case_308 case 309: goto st_case_309 case 310: goto st_case_310 case 311: goto st_case_311 case 312: goto st_case_312 case 313: goto st_case_313 case 314: goto st_case_314 case 315: goto st_case_315 case 316: goto st_case_316 case 317: goto st_case_317 case 318: goto st_case_318 case 319: goto st_case_319 case 320: goto st_case_320 case 321: goto st_case_321 case 322: goto st_case_322 case 323: goto st_case_323 case 324: goto st_case_324 case 325: goto st_case_325 case 326: goto st_case_326 case 327: goto st_case_327 case 328: goto st_case_328 case 329: goto st_case_329 case 330: goto st_case_330 case 331: goto st_case_331 case 332: goto st_case_332 case 333: goto st_case_333 case 334: goto st_case_334 case 335: goto st_case_335 case 336: goto st_case_336 case 337: goto st_case_337 case 338: goto st_case_338 case 339: goto st_case_339 case 340: goto st_case_340 case 341: goto st_case_341 case 342: goto st_case_342 case 343: goto st_case_343 case 344: goto st_case_344 case 345: goto st_case_345 case 346: goto st_case_346 case 347: goto st_case_347 case 348: goto st_case_348 case 349: goto st_case_349 case 350: goto st_case_350 case 351: goto st_case_351 case 352: goto st_case_352 case 353: goto st_case_353 case 354: goto st_case_354 case 355: goto st_case_355 case 356: goto st_case_356 case 357: goto st_case_357 case 358: goto st_case_358 case 359: goto st_case_359 case 360: goto st_case_360 case 361: goto st_case_361 case 362: goto st_case_362 case 363: goto st_case_363 case 364: goto st_case_364 case 365: goto st_case_365 case 366: goto st_case_366 case 367: goto st_case_367 case 368: goto st_case_368 case 369: goto st_case_369 case 370: goto st_case_370 case 371: goto st_case_371 case 372: goto st_case_372 case 373: goto st_case_373 case 374: goto st_case_374 case 375: goto st_case_375 case 376: goto st_case_376 case 377: goto st_case_377 case 378: goto st_case_378 case 379: goto st_case_379 case 380: goto st_case_380 case 381: goto st_case_381 case 382: goto st_case_382 case 383: goto st_case_383 case 384: goto st_case_384 case 385: goto st_case_385 case 386: goto st_case_386 case 387: goto st_case_387 case 388: goto st_case_388 case 389: goto st_case_389 case 390: goto st_case_390 case 391: goto st_case_391 case 392: goto st_case_392 case 393: goto st_case_393 case 394: goto st_case_394 case 395: goto st_case_395 case 396: goto st_case_396 case 397: goto st_case_397 case 398: goto st_case_398 case 399: goto st_case_399 case 400: goto st_case_400 case 401: goto st_case_401 case 402: goto st_case_402 case 403: goto st_case_403 case 404: goto st_case_404 case 405: goto st_case_405 case 406: goto st_case_406 case 407: goto st_case_407 case 408: goto st_case_408 case 409: goto st_case_409 case 410: goto st_case_410 case 411: goto st_case_411 case 412: goto st_case_412 case 413: goto st_case_413 case 414: goto st_case_414 case 415: goto st_case_415 case 416: goto st_case_416 case 417: goto st_case_417 case 418: goto st_case_418 case 419: goto st_case_419 case 420: goto st_case_420 case 421: goto st_case_421 case 422: goto st_case_422 case 423: goto st_case_423 case 424: goto st_case_424 case 425: goto st_case_425 case 426: goto st_case_426 case 427: goto st_case_427 case 428: goto st_case_428 case 429: goto st_case_429 case 430: goto st_case_430 case 431: goto st_case_431 case 432: goto st_case_432 case 433: goto st_case_433 case 434: goto st_case_434 case 435: goto st_case_435 case 436: goto st_case_436 case 437: goto st_case_437 case 438: goto st_case_438 case 439: goto st_case_439 case 440: goto st_case_440 case 441: goto st_case_441 case 442: goto st_case_442 case 443: goto st_case_443 case 444: goto st_case_444 case 445: goto st_case_445 case 446: goto st_case_446 case 447: goto st_case_447 case 448: goto st_case_448 case 449: goto st_case_449 case 450: goto st_case_450 case 451: goto st_case_451 case 452: goto st_case_452 case 453: goto st_case_453 case 454: goto st_case_454 case 455: goto st_case_455 case 456: goto st_case_456 case 457: goto st_case_457 case 458: goto st_case_458 case 459: goto st_case_459 case 460: goto st_case_460 case 461: goto st_case_461 case 462: goto st_case_462 case 463: goto st_case_463 case 464: goto st_case_464 case 465: goto st_case_465 case 466: goto st_case_466 case 467: goto st_case_467 case 468: goto st_case_468 case 469: goto st_case_469 case 470: goto st_case_470 case 471: goto st_case_471 case 472: goto st_case_472 case 473: goto st_case_473 case 474: goto st_case_474 case 475: goto st_case_475 case 476: goto st_case_476 case 477: goto st_case_477 case 478: goto st_case_478 case 479: goto st_case_479 case 480: goto st_case_480 case 481: goto st_case_481 case 482: goto st_case_482 case 483: goto st_case_483 case 484: goto st_case_484 case 485: goto st_case_485 case 486: goto st_case_486 case 487: goto st_case_487 case 488: goto st_case_488 case 489: goto st_case_489 case 490: goto st_case_490 case 491: goto st_case_491 case 492: goto st_case_492 case 493: goto st_case_493 case 494: goto st_case_494 case 495: goto st_case_495 case 496: goto st_case_496 case 497: goto st_case_497 case 498: goto st_case_498 case 499: goto st_case_499 case 500: goto st_case_500 case 501: goto st_case_501 case 502: goto st_case_502 case 503: goto st_case_503 case 504: goto st_case_504 case 505: goto st_case_505 case 506: goto st_case_506 case 507: goto st_case_507 case 508: goto st_case_508 case 509: goto st_case_509 case 510: goto st_case_510 case 511: goto st_case_511 case 512: goto st_case_512 case 513: goto st_case_513 case 514: goto st_case_514 case 515: goto st_case_515 case 516: goto st_case_516 case 517: goto st_case_517 case 518: goto st_case_518 case 519: goto st_case_519 case 520: goto st_case_520 case 521: goto st_case_521 case 522: goto st_case_522 case 523: goto st_case_523 case 524: goto st_case_524 case 525: goto st_case_525 case 526: goto st_case_526 case 527: goto st_case_527 case 528: goto st_case_528 case 529: goto st_case_529 case 530: goto st_case_530 case 531: goto st_case_531 case 532: goto st_case_532 case 533: goto st_case_533 case 534: goto st_case_534 case 535: goto st_case_535 case 536: goto st_case_536 case 537: goto st_case_537 case 538: goto st_case_538 case 539: goto st_case_539 case 540: goto st_case_540 case 541: goto st_case_541 case 542: goto st_case_542 case 543: goto st_case_543 case 544: goto st_case_544 case 545: goto st_case_545 case 546: goto st_case_546 case 547: goto st_case_547 case 548: goto st_case_548 case 549: goto st_case_549 case 550: goto st_case_550 case 551: goto st_case_551 case 552: goto st_case_552 case 553: goto st_case_553 case 554: goto st_case_554 case 555: goto st_case_555 case 556: goto st_case_556 case 557: goto st_case_557 case 558: goto st_case_558 case 559: goto st_case_559 case 560: goto st_case_560 case 561: goto st_case_561 case 562: goto st_case_562 case 563: goto st_case_563 case 564: goto st_case_564 case 565: goto st_case_565 case 566: goto st_case_566 case 567: goto st_case_567 case 568: goto st_case_568 case 569: goto st_case_569 case 570: goto st_case_570 case 571: goto st_case_571 case 572: goto st_case_572 case 573: goto st_case_573 case 574: goto st_case_574 case 575: goto st_case_575 case 576: goto st_case_576 case 577: goto st_case_577 case 578: goto st_case_578 case 579: goto st_case_579 case 580: goto st_case_580 case 581: goto st_case_581 case 582: goto st_case_582 case 583: goto st_case_583 case 584: goto st_case_584 case 585: goto st_case_585 case 586: goto st_case_586 case 587: goto st_case_587 case 588: goto st_case_588 case 589: goto st_case_589 case 590: goto st_case_590 case 591: goto st_case_591 case 592: goto st_case_592 case 593: goto st_case_593 case 594: goto st_case_594 case 595: goto st_case_595 case 596: goto st_case_596 case 597: goto st_case_597 case 598: goto st_case_598 case 599: goto st_case_599 case 600: goto st_case_600 case 601: goto st_case_601 case 602: goto st_case_602 case 603: goto st_case_603 case 604: goto st_case_604 case 605: goto st_case_605 case 606: goto st_case_606 case 607: goto st_case_607 case 608: goto st_case_608 case 609: goto st_case_609 case 610: goto st_case_610 case 611: goto st_case_611 case 612: goto st_case_612 case 613: goto st_case_613 case 614: goto st_case_614 case 615: goto st_case_615 case 616: goto st_case_616 case 617: goto st_case_617 case 618: goto st_case_618 case 619: goto st_case_619 case 620: goto st_case_620 case 621: goto st_case_621 case 622: goto st_case_622 case 623: goto st_case_623 case 624: goto st_case_624 case 625: goto st_case_625 case 626: goto st_case_626 case 627: goto st_case_627 case 628: goto st_case_628 case 629: goto st_case_629 case 630: goto st_case_630 case 631: goto st_case_631 case 632: goto st_case_632 case 633: goto st_case_633 case 634: goto st_case_634 case 635: goto st_case_635 case 636: goto st_case_636 case 637: goto st_case_637 case 638: goto st_case_638 case 639: goto st_case_639 case 640: goto st_case_640 case 641: goto st_case_641 case 642: goto st_case_642 case 643: goto st_case_643 case 644: goto st_case_644 case 645: goto st_case_645 case 646: goto st_case_646 case 647: goto st_case_647 case 648: goto st_case_648 case 649: goto st_case_649 case 650: goto st_case_650 case 651: goto st_case_651 case 652: goto st_case_652 case 653: goto st_case_653 case 654: goto st_case_654 case 655: goto st_case_655 case 656: goto st_case_656 case 657: goto st_case_657 case 658: goto st_case_658 case 659: goto st_case_659 case 660: goto st_case_660 case 661: goto st_case_661 case 662: goto st_case_662 case 663: goto st_case_663 case 664: goto st_case_664 case 665: goto st_case_665 case 666: goto st_case_666 case 667: goto st_case_667 case 668: goto st_case_668 case 669: goto st_case_669 case 670: goto st_case_670 case 671: goto st_case_671 case 672: goto st_case_672 case 673: goto st_case_673 case 674: goto st_case_674 case 675: goto st_case_675 case 676: goto st_case_676 case 677: goto st_case_677 case 678: goto st_case_678 case 679: goto st_case_679 case 680: goto st_case_680 case 681: goto st_case_681 case 682: goto st_case_682 case 683: goto st_case_683 case 684: goto st_case_684 case 685: goto st_case_685 case 686: goto st_case_686 case 687: goto st_case_687 case 688: goto st_case_688 case 689: goto st_case_689 case 690: goto st_case_690 case 691: goto st_case_691 case 692: goto st_case_692 case 693: goto st_case_693 case 694: goto st_case_694 case 695: goto st_case_695 case 696: goto st_case_696 case 697: goto st_case_697 case 698: goto st_case_698 case 699: goto st_case_699 case 700: goto st_case_700 case 701: goto st_case_701 case 702: goto st_case_702 case 703: goto st_case_703 case 704: goto st_case_704 case 705: goto st_case_705 case 706: goto st_case_706 case 707: goto st_case_707 case 708: goto st_case_708 case 709: goto st_case_709 case 710: goto st_case_710 case 711: goto st_case_711 case 712: goto st_case_712 case 713: goto st_case_713 case 714: goto st_case_714 case 715: goto st_case_715 case 716: goto st_case_716 case 717: goto st_case_717 case 718: goto st_case_718 case 719: goto st_case_719 case 720: goto st_case_720 case 721: goto st_case_721 case 722: goto st_case_722 case 723: goto st_case_723 case 724: goto st_case_724 case 725: goto st_case_725 case 726: goto st_case_726 case 727: goto st_case_727 case 728: goto st_case_728 case 729: goto st_case_729 case 730: goto st_case_730 case 731: goto st_case_731 case 732: goto st_case_732 case 733: goto st_case_733 case 734: goto st_case_734 case 735: goto st_case_735 case 736: goto st_case_736 case 737: goto st_case_737 case 738: goto st_case_738 } goto st_out st_case_1: switch data[p] { case 33: goto tr0 case 37: goto tr0 case 39: goto tr0 case 83: goto tr2 case 126: goto tr0 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr0 } case data[p] >= 42: goto tr0 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr0 } case data[p] >= 65: goto tr0 } default: goto tr0 } goto st0 tr368: //line sip.rl:177 p-- {goto st239 } goto st0 //line msg_parse.go:1641 st_case_0: st0: cs = 0 goto _out tr0: //line sip.rl:61 mark = p goto st2 st2: p++ st_case_2: //line msg_parse.go:1655 switch data[p] { case 32: goto tr3 case 33: goto st2 case 37: goto st2 case 39: goto st2 case 126: goto st2 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st2 } case data[p] >= 42: goto st2 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st2 } case data[p] >= 65: goto st2 } default: goto st2 } goto st0 tr3: //line sip.rl:101 msg.Method = string(data[mark:p]) goto st3 st3: p++ st_case_3: //line msg_parse.go:1700 if data[p] == 32 { goto st0 } goto tr5 tr5: //line sip.rl:61 mark = p goto st4 st4: p++ st_case_4: //line msg_parse.go:1714 if data[p] == 32 { goto tr7 } goto st4 tr7: //line sip.rl:113 msg.Request, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st5 st5: p++ st_case_5: //line msg_parse.go:1729 if data[p] == 83 { goto st6 } goto st0 st6: p++ st_case_6: if data[p] == 73 { goto st7 } goto st0 st7: p++ st_case_7: if data[p] == 80 { goto st8 } goto st0 st8: p++ st_case_8: if data[p] == 47 { goto st9 } goto st0 st9: p++ st_case_9: if 48 <= data[p] && data[p] <= 57 { goto tr12 } goto st0 tr12: //line sip.rl:105 msg.VersionMajor = msg.VersionMajor * 10 + (data[p] - 0x30) goto st10 st10: p++ st_case_10: //line msg_parse.go:1771 if data[p] == 46 { goto st11 } if 48 <= data[p] && data[p] <= 57 { goto tr12 } goto st0 st11: p++ st_case_11: if 48 <= data[p] && data[p] <= 57 { goto tr14 } goto st0 tr14: //line sip.rl:109 msg.VersionMinor = msg.VersionMinor * 10 + (data[p] - 0x30) goto st12 st12: p++ st_case_12: //line msg_parse.go:1795 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st13 } if 48 <= _widec && _widec <= 57 { goto tr14 } goto st0 tr42: //line sip.rl:122 msg.Phrase = string(buf[0:amt]) goto st13 st13: p++ st_case_13: //line msg_parse.go:1819 if data[p] == 10 { goto tr16 } goto st0 tr16: //line sip.rl:159 {goto st246 } goto st739 st739: p++ st_case_739: //line msg_parse.go:1833 goto st0 tr2: //line sip.rl:61 mark = p goto st14 st14: p++ st_case_14: //line msg_parse.go:1844 switch data[p] { case 32: goto tr3 case 33: goto st2 case 37: goto st2 case 39: goto st2 case 73: goto st15 case 126: goto st2 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st2 } case data[p] >= 42: goto st2 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st2 } case data[p] >= 65: goto st2 } default: goto st2 } goto st0 st15: p++ st_case_15: switch data[p] { case 32: goto tr3 case 33: goto st2 case 37: goto st2 case 39: goto st2 case 80: goto st16 case 126: goto st2 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st2 } case data[p] >= 42: goto st2 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st2 } case data[p] >= 65: goto st2 } default: goto st2 } goto st0 st16: p++ st_case_16: switch data[p] { case 32: goto tr3 case 33: goto st2 case 37: goto st2 case 39: goto st2 case 47: goto st17 case 126: goto st2 } switch { case data[p] < 45: if 42 <= data[p] && data[p] <= 43 { goto st2 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st2 } case data[p] >= 65: goto st2 } default: goto st2 } goto st0 st17: p++ st_case_17: if 48 <= data[p] && data[p] <= 57 { goto tr20 } goto st0 tr20: //line sip.rl:105 msg.VersionMajor = msg.VersionMajor * 10 + (data[p] - 0x30) goto st18 st18: p++ st_case_18: //line msg_parse.go:1973 if data[p] == 46 { goto st19 } if 48 <= data[p] && data[p] <= 57 { goto tr20 } goto st0 st19: p++ st_case_19: if 48 <= data[p] && data[p] <= 57 { goto tr22 } goto st0 tr22: //line sip.rl:109 msg.VersionMinor = msg.VersionMinor * 10 + (data[p] - 0x30) goto st20 st20: p++ st_case_20: //line msg_parse.go:1997 if data[p] == 32 { goto st21 } if 48 <= data[p] && data[p] <= 57 { goto tr22 } goto st0 st21: p++ st_case_21: if 48 <= data[p] && data[p] <= 57 { goto tr24 } goto st0 tr24: //line sip.rl:118 msg.Status = msg.Status * 10 + (int(data[p]) - 0x30) goto st22 st22: p++ st_case_22: //line msg_parse.go:2021 if 48 <= data[p] && data[p] <= 57 { goto tr25 } goto st0 tr25: //line sip.rl:118 msg.Status = msg.Status * 10 + (int(data[p]) - 0x30) goto st23 st23: p++ st_case_23: //line msg_parse.go:2035 if 48 <= data[p] && data[p] <= 57 { goto tr26 } goto st0 tr26: //line sip.rl:118 msg.Status = msg.Status * 10 + (int(data[p]) - 0x30) goto st24 st24: p++ st_case_24: //line msg_parse.go:2049 if data[p] == 32 { goto st25 } goto st0 st25: p++ st_case_25: switch data[p] { case 9: goto tr28 case 37: goto tr29 case 61: goto tr28 case 95: goto tr28 case 126: goto tr28 } switch { case data[p] < 192: switch { case data[p] < 36: if 32 <= data[p] && data[p] <= 33 { goto tr28 } case data[p] > 59: switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto tr28 } case data[p] >= 63: goto tr28 } default: goto tr28 } case data[p] > 223: switch { case data[p] < 240: if 224 <= data[p] && data[p] <= 239 { goto tr31 } case data[p] > 247: switch { case data[p] > 251: if 252 <= data[p] && data[p] <= 253 { goto tr34 } case data[p] >= 248: goto tr33 } default: goto tr32 } default: goto tr30 } goto st0 tr28: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st26 tr35: //line sip.rl:73 buf[amt] = data[p] amt++ goto st26 tr44: //line sip.rl:91 hex += unhex(data[p]) buf[amt] = hex amt++ goto st26 st26: p++ st_case_26: //line msg_parse.go:2139 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr35 case 37: goto st27 case 61: goto tr35 case 95: goto tr35 case 126: goto tr35 case 269: goto tr42 } switch { case _widec < 192: switch { case _widec < 36: if 32 <= _widec && _widec <= 33 { goto tr35 } case _widec > 59: switch { case _widec > 90: if 97 <= _widec && _widec <= 122 { goto tr35 } case _widec >= 63: goto tr35 } default: goto tr35 } case _widec > 223: switch { case _widec < 240: if 224 <= _widec && _widec <= 239 { goto tr38 } case _widec > 247: switch { case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr41 } case _widec >= 248: goto tr40 } default: goto tr39 } default: goto tr37 } goto st0 tr29: //line sip.rl:69 amt = 0 goto st27 st27: p++ st_case_27: //line msg_parse.go:2211 switch { case data[p] < 65: if 48 <= data[p] && data[p] <= 57 { goto tr43 } case data[p] > 70: if 97 <= data[p] && data[p] <= 102 { goto tr43 } default: goto tr43 } goto st0 tr43: //line sip.rl:87 hex = unhex(data[p]) * 16 goto st28 st28: p++ st_case_28: //line msg_parse.go:2234 switch { case data[p] < 65: if 48 <= data[p] && data[p] <= 57 { goto tr44 } case data[p] > 70: if 97 <= data[p] && data[p] <= 102 { goto tr44 } default: goto tr44 } goto st0 tr30: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st29 tr37: //line sip.rl:73 buf[amt] = data[p] amt++ goto st29 st29: p++ st_case_29: //line msg_parse.go:2269 if 128 <= data[p] && data[p] <= 191 { goto tr35 } goto st0 tr31: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st30 tr38: //line sip.rl:73 buf[amt] = data[p] amt++ goto st30 st30: p++ st_case_30: //line msg_parse.go:2295 if 128 <= data[p] && data[p] <= 191 { goto tr37 } goto st0 tr32: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st31 tr39: //line sip.rl:73 buf[amt] = data[p] amt++ goto st31 st31: p++ st_case_31: //line msg_parse.go:2321 if 128 <= data[p] && data[p] <= 191 { goto tr38 } goto st0 tr33: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st32 tr40: //line sip.rl:73 buf[amt] = data[p] amt++ goto st32 st32: p++ st_case_32: //line msg_parse.go:2347 if 128 <= data[p] && data[p] <= 191 { goto tr39 } goto st0 tr34: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st33 tr41: //line sip.rl:73 buf[amt] = data[p] amt++ goto st33 st33: p++ st_case_33: //line msg_parse.go:2373 if 128 <= data[p] && data[p] <= 191 { goto tr40 } goto st0 st34: p++ st_case_34: switch data[p] { case 33: goto tr45 case 37: goto tr45 case 39: goto tr45 case 126: goto tr45 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr45 } case data[p] >= 42: goto tr45 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr45 } case data[p] >= 65: goto tr45 } default: goto tr45 } goto st0 tr45: //line sip.rl:69 amt = 0 //line sip.rl:61 mark = p goto st35 st35: p++ st_case_35: //line msg_parse.go:2427 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr46 case 32: goto tr46 case 33: goto st35 case 37: goto st35 case 39: goto st35 case 44: goto tr48 case 59: goto tr49 case 61: goto tr50 case 126: goto st35 case 269: goto tr51 case 525: goto tr52 } switch { case _widec < 48: if 42 <= _widec && _widec <= 46 { goto st35 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st35 } case _widec >= 65: goto st35 } default: goto st35 } goto st0 tr46: //line sip.rl:182 name = string(data[mark:p]) goto st36 st36: p++ st_case_36: //line msg_parse.go:2486 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st36 case 32: goto st36 case 44: goto st37 case 59: goto st41 case 61: goto st45 case 525: goto st66 } goto st0 tr48: //line sip.rl:182 name = string(data[mark:p]) goto st37 st37: p++ st_case_37: //line msg_parse.go:2518 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st37 case 32: goto st37 case 269: goto tr58 case 525: goto st38 } switch { case _widec > 12: if 14 <= _widec { goto tr58 } default: goto tr58 } goto st0 tr58: //line sip.rl:53 p-- //line sip.rl:152 if via.Params == nil { via.Params = Params{} } via.Params[name] = string(buf[0:amt]) //line sip.rl:126 *viap = via viap = &via.Next via = nil //line sip.rl:167 via = new(Via) {goto st69 } goto st740 tr62: //line sip.rl:53 p-- //line sip.rl:152 if via.Params == nil { via.Params = Params{} } via.Params[name] = string(buf[0:amt]) //line sip.rl:172 amt = 0 // Needed so ViaParam action works when there's no value. {goto st34 } goto st740 tr74: //line sip.rl:152 if via.Params == nil { via.Params = Params{} } via.Params[name] = string(buf[0:amt]) //line sip.rl:126 *viap = via viap = &via.Next via = nil //line sip.rl:159 {goto st246 } goto st740 st740: p++ st_case_740: //line msg_parse.go:2611 goto st0 st38: p++ st_case_38: if data[p] == 10 { goto st39 } goto st0 st39: p++ st_case_39: switch data[p] { case 9: goto st40 case 32: goto st40 } goto st0 st40: p++ st_case_40: switch data[p] { case 9: goto st40 case 32: goto st40 } goto tr58 tr49: //line sip.rl:182 name = string(data[mark:p]) goto st41 st41: p++ st_case_41: //line msg_parse.go:2649 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st41 case 32: goto st41 case 269: goto tr62 case 525: goto st42 } switch { case _widec > 12: if 14 <= _widec { goto tr62 } default: goto tr62 } goto st0 st42: p++ st_case_42: if data[p] == 10 { goto st43 } goto st0 st43: p++ st_case_43: switch data[p] { case 9: goto st44 case 32: goto st44 } goto st0 st44: p++ st_case_44: switch data[p] { case 9: goto st44 case 32: goto st44 } goto tr62 tr50: //line sip.rl:182 name = string(data[mark:p]) goto st45 st45: p++ st_case_45: //line msg_parse.go:2712 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st45 case 32: goto st45 case 33: goto tr66 case 34: goto st52 case 37: goto tr66 case 39: goto tr66 case 93: goto tr66 case 126: goto tr66 case 525: goto st63 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr66 } case _widec >= 42: goto tr66 } case _widec > 58: switch { case _widec > 91: if 95 <= _widec && _widec <= 122 { goto tr66 } case _widec >= 65: goto tr66 } default: goto tr66 } goto st0 tr66: //line sip.rl:73 buf[amt] = data[p] amt++ goto st46 st46: p++ st_case_46: //line msg_parse.go:2773 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st47 case 32: goto st47 case 33: goto tr66 case 37: goto tr66 case 39: goto tr66 case 44: goto st37 case 59: goto st41 case 93: goto tr66 case 126: goto tr66 case 269: goto st51 case 525: goto st48 } switch { case _widec < 48: if 42 <= _widec && _widec <= 46 { goto tr66 } case _widec > 58: switch { case _widec > 91: if 95 <= _widec && _widec <= 122 { goto tr66 } case _widec >= 65: goto tr66 } default: goto tr66 } goto st0 st47: p++ st_case_47: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st47 case 32: goto st47 case 44: goto st37 case 59: goto st41 case 525: goto st48 } goto st0 st48: p++ st_case_48: if data[p] == 10 { goto st49 } goto st0 st49: p++ st_case_49: switch data[p] { case 9: goto st50 case 32: goto st50 } goto st0 st50: p++ st_case_50: switch data[p] { case 9: goto st50 case 32: goto st50 case 44: goto st37 case 59: goto st41 } goto st0 tr51: //line sip.rl:182 name = string(data[mark:p]) goto st51 st51: p++ st_case_51: //line msg_parse.go:2886 if data[p] == 10 { goto tr74 } goto st0 st52: p++ st_case_52: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr75 case 34: goto tr76 case 92: goto tr77 case 525: goto tr83 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr78 } case _widec >= 32: goto tr75 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr80 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr82 } default: goto tr81 } default: goto tr79 } goto st0 tr75: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st53 tr84: //line sip.rl:73 buf[amt] = data[p] amt++ goto st53 st53: p++ st_case_53: //line msg_parse.go:2959 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr84 case 34: goto st54 case 92: goto st55 case 525: goto tr92 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr87 } case _widec >= 32: goto tr84 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr89 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr91 } default: goto tr90 } default: goto tr88 } goto st0 tr76: //line sip.rl:69 amt = 0 goto st54 st54: p++ st_case_54: //line msg_parse.go:3013 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st47 case 32: goto st47 case 44: goto st37 case 59: goto st41 case 269: goto st51 case 525: goto st48 } goto st0 tr77: //line sip.rl:69 amt = 0 goto st55 st55: p++ st_case_55: //line msg_parse.go:3045 switch { case data[p] < 11: if data[p] <= 9 { goto tr84 } case data[p] > 12: if 14 <= data[p] && data[p] <= 127 { goto tr84 } default: goto tr84 } goto st0 tr78: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st56 tr87: //line sip.rl:73 buf[amt] = data[p] amt++ goto st56 st56: p++ st_case_56: //line msg_parse.go:3080 if 128 <= data[p] && data[p] <= 191 { goto tr84 } goto st0 tr79: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st57 tr88: //line sip.rl:73 buf[amt] = data[p] amt++ goto st57 st57: p++ st_case_57: //line msg_parse.go:3106 if 128 <= data[p] && data[p] <= 191 { goto tr87 } goto st0 tr80: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st58 tr89: //line sip.rl:73 buf[amt] = data[p] amt++ goto st58 st58: p++ st_case_58: //line msg_parse.go:3132 if 128 <= data[p] && data[p] <= 191 { goto tr88 } goto st0 tr81: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st59 tr90: //line sip.rl:73 buf[amt] = data[p] amt++ goto st59 st59: p++ st_case_59: //line msg_parse.go:3158 if 128 <= data[p] && data[p] <= 191 { goto tr89 } goto st0 tr82: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st60 tr91: //line sip.rl:73 buf[amt] = data[p] amt++ goto st60 st60: p++ st_case_60: //line msg_parse.go:3184 if 128 <= data[p] && data[p] <= 191 { goto tr90 } goto st0 tr83: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st61 tr92: //line sip.rl:73 buf[amt] = data[p] amt++ goto st61 st61: p++ st_case_61: //line msg_parse.go:3210 if data[p] == 10 { goto tr93 } goto st0 tr93: //line sip.rl:73 buf[amt] = data[p] amt++ goto st62 st62: p++ st_case_62: //line msg_parse.go:3225 switch data[p] { case 9: goto tr84 case 32: goto tr84 } goto st0 st63: p++ st_case_63: if data[p] == 10 { goto st64 } goto st0 st64: p++ st_case_64: switch data[p] { case 9: goto st65 case 32: goto st65 } goto st0 st65: p++ st_case_65: switch data[p] { case 9: goto st65 case 32: goto st65 case 33: goto tr66 case 34: goto st52 case 37: goto tr66 case 39: goto tr66 case 93: goto tr66 case 126: goto tr66 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr66 } case data[p] >= 42: goto tr66 } case data[p] > 58: switch { case data[p] > 91: if 95 <= data[p] && data[p] <= 122 { goto tr66 } case data[p] >= 65: goto tr66 } default: goto tr66 } goto st0 tr52: //line sip.rl:182 name = string(data[mark:p]) goto st66 st66: p++ st_case_66: //line msg_parse.go:3303 if data[p] == 10 { goto st67 } goto st0 st67: p++ st_case_67: switch data[p] { case 9: goto st68 case 32: goto st68 } goto st0 st68: p++ st_case_68: switch data[p] { case 9: goto st68 case 32: goto st68 case 44: goto st37 case 59: goto st41 case 61: goto st45 } goto st0 st69: p++ st_case_69: switch data[p] { case 33: goto tr98 case 37: goto tr98 case 39: goto tr98 case 126: goto tr98 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr98 } case data[p] >= 42: goto tr98 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr98 } case data[p] >= 65: goto tr98 } default: goto tr98 } goto st0 tr98: //line sip.rl:61 mark = p goto st70 st70: p++ st_case_70: //line msg_parse.go:3379 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr99 case 32: goto tr99 case 33: goto st70 case 37: goto st70 case 39: goto st70 case 47: goto tr101 case 126: goto st70 case 525: goto tr102 } switch { case _widec < 45: if 42 <= _widec && _widec <= 43 { goto st70 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st70 } case _widec >= 65: goto st70 } default: goto st70 } goto st0 tr99: //line sip.rl:132 via.Protocol = string(data[mark:p]) goto st71 st71: p++ st_case_71: //line msg_parse.go:3432 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st71 case 32: goto st71 case 47: goto st72 case 525: goto st116 } goto st0 tr101: //line sip.rl:132 via.Protocol = string(data[mark:p]) goto st72 st72: p++ st_case_72: //line msg_parse.go:3460 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st72 case 32: goto st72 case 33: goto tr106 case 37: goto tr106 case 39: goto tr106 case 126: goto tr106 case 525: goto st113 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr106 } case _widec >= 42: goto tr106 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto tr106 } case _widec >= 65: goto tr106 } default: goto tr106 } goto st0 tr106: //line sip.rl:61 mark = p goto st73 st73: p++ st_case_73: //line msg_parse.go:3516 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr108 case 32: goto tr108 case 33: goto st73 case 37: goto st73 case 39: goto st73 case 47: goto tr110 case 126: goto st73 case 525: goto tr111 } switch { case _widec < 45: if 42 <= _widec && _widec <= 43 { goto st73 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st73 } case _widec >= 65: goto st73 } default: goto st73 } goto st0 tr108: //line sip.rl:136 via.Version = string(data[mark:p]) goto st74 st74: p++ st_case_74: //line msg_parse.go:3569 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st74 case 32: goto st74 case 47: goto st75 case 525: goto st110 } goto st0 tr110: //line sip.rl:136 via.Version = string(data[mark:p]) goto st75 st75: p++ st_case_75: //line msg_parse.go:3597 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st75 case 32: goto st75 case 33: goto tr115 case 37: goto tr115 case 39: goto tr115 case 126: goto tr115 case 525: goto st107 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr115 } case _widec >= 42: goto tr115 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto tr115 } case _widec >= 65: goto tr115 } default: goto tr115 } goto st0 tr115: //line sip.rl:61 mark = p goto st76 st76: p++ st_case_76: //line msg_parse.go:3653 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr117 case 32: goto tr117 case 33: goto st76 case 37: goto st76 case 39: goto st76 case 126: goto st76 case 525: goto tr119 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st76 } case _widec >= 42: goto st76 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st76 } case _widec >= 65: goto st76 } default: goto st76 } goto st0 tr117: //line sip.rl:140 via.Transport = string(data[mark:p]) goto st77 st77: p++ st_case_77: //line msg_parse.go:3709 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st77 case 32: goto st77 case 91: goto st101 case 525: goto st104 } switch { case _widec < 48: if 45 <= _widec && _widec <= 46 { goto tr121 } case _widec > 57: switch { case _widec > 90: if 97 <= _widec && _widec <= 122 { goto tr121 } case _widec >= 65: goto tr121 } default: goto tr121 } goto st0 tr121: //line sip.rl:61 mark = p goto st78 st78: p++ st_case_78: //line msg_parse.go:3754 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr124 case 32: goto tr124 case 44: goto tr125 case 58: goto tr127 case 59: goto tr128 case 269: goto tr129 case 525: goto tr130 } switch { case _widec < 48: if 45 <= _widec && _widec <= 46 { goto st78 } case _widec > 57: switch { case _widec > 90: if 97 <= _widec && _widec <= 122 { goto st78 } case _widec >= 65: goto st78 } default: goto st78 } goto st0 tr124: //line sip.rl:144 via.Host = string(data[mark:p]) goto st79 st79: p++ st_case_79: //line msg_parse.go:3805 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st79 case 32: goto st79 case 44: goto st80 case 58: goto st84 case 59: goto st87 case 525: goto st98 } goto st0 tr125: //line sip.rl:144 via.Host = string(data[mark:p]) goto st80 st80: p++ st_case_80: //line msg_parse.go:3837 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st80 case 32: goto st80 case 269: goto tr136 case 525: goto st81 } switch { case _widec > 12: if 14 <= _widec { goto tr136 } default: goto tr136 } goto st0 tr136: //line sip.rl:53 p-- //line sip.rl:126 *viap = via viap = &via.Next via = nil //line sip.rl:167 via = new(Via) {goto st69 } goto st741 tr145: //line sip.rl:53 p-- //line sip.rl:172 amt = 0 // Needed so ViaParam action works when there's no value. {goto st34 } goto st741 tr151: //line sip.rl:126 *viap = via viap = &via.Next via = nil //line sip.rl:159 {goto st246 } goto st741 st741: p++ st_case_741: //line msg_parse.go:3909 goto st0 st81: p++ st_case_81: if data[p] == 10 { goto st82 } goto st0 st82: p++ st_case_82: switch data[p] { case 9: goto st83 case 32: goto st83 } goto st0 st83: p++ st_case_83: switch data[p] { case 9: goto st83 case 32: goto st83 } goto tr136 tr127: //line sip.rl:144 via.Host = string(data[mark:p]) goto st84 st84: p++ st_case_84: //line msg_parse.go:3947 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st84 case 32: goto st84 case 525: goto st95 } if 48 <= _widec && _widec <= 57 { goto tr140 } goto st0 tr140: //line sip.rl:148 via.Port = via.Port * 10 + (uint16(data[p]) - 0x30) goto st85 st85: p++ st_case_85: //line msg_parse.go:3976 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st86 case 32: goto st86 case 44: goto st80 case 59: goto st87 case 269: goto st94 case 525: goto st91 } if 48 <= _widec && _widec <= 57 { goto tr140 } goto st0 st86: p++ st_case_86: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st86 case 32: goto st86 case 44: goto st80 case 59: goto st87 case 525: goto st91 } goto st0 tr128: //line sip.rl:144 via.Host = string(data[mark:p]) goto st87 st87: p++ st_case_87: //line msg_parse.go:4034 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st87 case 32: goto st87 case 269: goto tr145 case 525: goto st88 } switch { case _widec > 12: if 14 <= _widec { goto tr145 } default: goto tr145 } goto st0 st88: p++ st_case_88: if data[p] == 10 { goto st89 } goto st0 st89: p++ st_case_89: switch data[p] { case 9: goto st90 case 32: goto st90 } goto st0 st90: p++ st_case_90: switch data[p] { case 9: goto st90 case 32: goto st90 } goto tr145 st91: p++ st_case_91: if data[p] == 10 { goto st92 } goto st0 st92: p++ st_case_92: switch data[p] { case 9: goto st93 case 32: goto st93 } goto st0 st93: p++ st_case_93: switch data[p] { case 9: goto st93 case 32: goto st93 case 44: goto st80 case 59: goto st87 } goto st0 tr129: //line sip.rl:144 via.Host = string(data[mark:p]) goto st94 st94: p++ st_case_94: //line msg_parse.go:4128 if data[p] == 10 { goto tr151 } goto st0 st95: p++ st_case_95: if data[p] == 10 { goto st96 } goto st0 st96: p++ st_case_96: switch data[p] { case 9: goto st97 case 32: goto st97 } goto st0 st97: p++ st_case_97: switch data[p] { case 9: goto st97 case 32: goto st97 } if 48 <= data[p] && data[p] <= 57 { goto tr140 } goto st0 tr130: //line sip.rl:144 via.Host = string(data[mark:p]) goto st98 st98: p++ st_case_98: //line msg_parse.go:4172 if data[p] == 10 { goto st99 } goto st0 st99: p++ st_case_99: switch data[p] { case 9: goto st100 case 32: goto st100 } goto st0 st100: p++ st_case_100: switch data[p] { case 9: goto st100 case 32: goto st100 case 44: goto st80 case 58: goto st84 case 59: goto st87 } goto st0 st101: p++ st_case_101: if data[p] == 46 { goto tr156 } switch { case data[p] < 65: if 48 <= data[p] && data[p] <= 58 { goto tr156 } case data[p] > 70: if 97 <= data[p] && data[p] <= 102 { goto tr156 } default: goto tr156 } goto st0 tr156: //line sip.rl:61 mark = p goto st102 st102: p++ st_case_102: //line msg_parse.go:4231 switch data[p] { case 46: goto st102 case 93: goto tr158 } switch { case data[p] < 65: if 48 <= data[p] && data[p] <= 58 { goto st102 } case data[p] > 70: if 97 <= data[p] && data[p] <= 102 { goto st102 } default: goto st102 } goto st0 tr158: //line sip.rl:144 via.Host = string(data[mark:p]) goto st103 st103: p++ st_case_103: //line msg_parse.go:4260 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st79 case 32: goto st79 case 44: goto st80 case 58: goto st84 case 59: goto st87 case 269: goto st94 case 525: goto st98 } goto st0 tr119: //line sip.rl:140 via.Transport = string(data[mark:p]) goto st104 st104: p++ st_case_104: //line msg_parse.go:4294 if data[p] == 10 { goto st105 } goto st0 st105: p++ st_case_105: switch data[p] { case 9: goto st106 case 32: goto st106 } goto st0 st106: p++ st_case_106: switch data[p] { case 9: goto st106 case 32: goto st106 case 91: goto st101 } switch { case data[p] < 48: if 45 <= data[p] && data[p] <= 46 { goto tr121 } case data[p] > 57: switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto tr121 } case data[p] >= 65: goto tr121 } default: goto tr121 } goto st0 st107: p++ st_case_107: if data[p] == 10 { goto st108 } goto st0 st108: p++ st_case_108: switch data[p] { case 9: goto st109 case 32: goto st109 } goto st0 st109: p++ st_case_109: switch data[p] { case 9: goto st109 case 32: goto st109 case 33: goto tr115 case 37: goto tr115 case 39: goto tr115 case 126: goto tr115 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr115 } case data[p] >= 42: goto tr115 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr115 } case data[p] >= 65: goto tr115 } default: goto tr115 } goto st0 tr111: //line sip.rl:136 via.Version = string(data[mark:p]) goto st110 st110: p++ st_case_110: //line msg_parse.go:4404 if data[p] == 10 { goto st111 } goto st0 st111: p++ st_case_111: switch data[p] { case 9: goto st112 case 32: goto st112 } goto st0 st112: p++ st_case_112: switch data[p] { case 9: goto st112 case 32: goto st112 case 47: goto st75 } goto st0 st113: p++ st_case_113: if data[p] == 10 { goto st114 } goto st0 st114: p++ st_case_114: switch data[p] { case 9: goto st115 case 32: goto st115 } goto st0 st115: p++ st_case_115: switch data[p] { case 9: goto st115 case 32: goto st115 case 33: goto tr106 case 37: goto tr106 case 39: goto tr106 case 126: goto tr106 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr106 } case data[p] >= 42: goto tr106 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr106 } case data[p] >= 65: goto tr106 } default: goto tr106 } goto st0 tr102: //line sip.rl:132 via.Protocol = string(data[mark:p]) goto st116 st116: p++ st_case_116: //line msg_parse.go:4497 if data[p] == 10 { goto st117 } goto st0 st117: p++ st_case_117: switch data[p] { case 9: goto st118 case 32: goto st118 } goto st0 st118: p++ st_case_118: switch data[p] { case 9: goto st118 case 32: goto st118 case 47: goto st72 } goto st0 st119: p++ st_case_119: switch data[p] { case 33: goto tr169 case 37: goto tr169 case 39: goto tr169 case 126: goto tr169 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr169 } case data[p] >= 42: goto tr169 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr169 } case data[p] >= 65: goto tr169 } default: goto tr169 } goto st0 tr169: //line sip.rl:69 amt = 0 //line sip.rl:61 mark = p goto st120 st120: p++ st_case_120: //line msg_parse.go:4573 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr170 case 32: goto tr170 case 33: goto st120 case 37: goto st120 case 39: goto st120 case 44: goto tr172 case 59: goto tr173 case 61: goto tr174 case 126: goto st120 case 269: goto tr175 case 525: goto tr176 } switch { case _widec < 48: if 42 <= _widec && _widec <= 46 { goto st120 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st120 } case _widec >= 65: goto st120 } default: goto st120 } goto st0 tr170: //line sip.rl:182 name = string(data[mark:p]) goto st121 st121: p++ st_case_121: //line msg_parse.go:4632 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st121 case 32: goto st121 case 44: goto st122 case 59: goto st126 case 61: goto st130 case 525: goto st151 } goto st0 tr172: //line sip.rl:182 name = string(data[mark:p]) goto st122 st122: p++ st_case_122: //line msg_parse.go:4664 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st122 case 32: goto st122 case 269: goto tr182 case 525: goto st123 } switch { case _widec > 12: if 14 <= _widec { goto tr182 } default: goto tr182 } goto st0 tr182: //line sip.rl:235 if addr.Params == nil { addr.Params = Params{} } addr.Params[name] = string(buf[0:amt]) //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st742 tr186: //line sip.rl:235 if addr.Params == nil { addr.Params = Params{} } addr.Params[name] = string(buf[0:amt]) //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st742 tr198: //line sip.rl:235 if addr.Params == nil { addr.Params = Params{} } addr.Params[name] = string(buf[0:amt]) //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:159 {goto st246 } goto st742 st742: p++ st_case_742: //line msg_parse.go:4755 goto st0 st123: p++ st_case_123: if data[p] == 10 { goto st124 } goto st0 st124: p++ st_case_124: switch data[p] { case 9: goto st125 case 32: goto st125 } goto st0 st125: p++ st_case_125: switch data[p] { case 9: goto st125 case 32: goto st125 } goto tr182 tr173: //line sip.rl:182 name = string(data[mark:p]) goto st126 st126: p++ st_case_126: //line msg_parse.go:4793 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st126 case 32: goto st126 case 269: goto tr186 case 525: goto st127 } switch { case _widec > 12: if 14 <= _widec { goto tr186 } default: goto tr186 } goto st0 st127: p++ st_case_127: if data[p] == 10 { goto st128 } goto st0 st128: p++ st_case_128: switch data[p] { case 9: goto st129 case 32: goto st129 } goto st0 st129: p++ st_case_129: switch data[p] { case 9: goto st129 case 32: goto st129 } goto tr186 tr174: //line sip.rl:182 name = string(data[mark:p]) goto st130 st130: p++ st_case_130: //line msg_parse.go:4856 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st130 case 32: goto st130 case 33: goto tr190 case 34: goto st137 case 37: goto tr190 case 39: goto tr190 case 93: goto tr190 case 126: goto tr190 case 525: goto st148 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr190 } case _widec >= 42: goto tr190 } case _widec > 58: switch { case _widec > 91: if 95 <= _widec && _widec <= 122 { goto tr190 } case _widec >= 65: goto tr190 } default: goto tr190 } goto st0 tr190: //line sip.rl:73 buf[amt] = data[p] amt++ goto st131 st131: p++ st_case_131: //line msg_parse.go:4917 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st132 case 32: goto st132 case 33: goto tr190 case 37: goto tr190 case 39: goto tr190 case 44: goto st122 case 59: goto st126 case 93: goto tr190 case 126: goto tr190 case 269: goto st136 case 525: goto st133 } switch { case _widec < 48: if 42 <= _widec && _widec <= 46 { goto tr190 } case _widec > 58: switch { case _widec > 91: if 95 <= _widec && _widec <= 122 { goto tr190 } case _widec >= 65: goto tr190 } default: goto tr190 } goto st0 st132: p++ st_case_132: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st132 case 32: goto st132 case 44: goto st122 case 59: goto st126 case 525: goto st133 } goto st0 st133: p++ st_case_133: if data[p] == 10 { goto st134 } goto st0 st134: p++ st_case_134: switch data[p] { case 9: goto st135 case 32: goto st135 } goto st0 st135: p++ st_case_135: switch data[p] { case 9: goto st135 case 32: goto st135 case 44: goto st122 case 59: goto st126 } goto st0 tr175: //line sip.rl:182 name = string(data[mark:p]) goto st136 st136: p++ st_case_136: //line msg_parse.go:5030 if data[p] == 10 { goto tr198 } goto st0 st137: p++ st_case_137: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr199 case 34: goto tr200 case 92: goto tr201 case 525: goto tr207 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr202 } case _widec >= 32: goto tr199 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr204 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr206 } default: goto tr205 } default: goto tr203 } goto st0 tr199: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st138 tr208: //line sip.rl:73 buf[amt] = data[p] amt++ goto st138 st138: p++ st_case_138: //line msg_parse.go:5103 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr208 case 34: goto st139 case 92: goto st140 case 525: goto tr216 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr211 } case _widec >= 32: goto tr208 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr213 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr215 } default: goto tr214 } default: goto tr212 } goto st0 tr200: //line sip.rl:69 amt = 0 goto st139 st139: p++ st_case_139: //line msg_parse.go:5157 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st132 case 32: goto st132 case 44: goto st122 case 59: goto st126 case 269: goto st136 case 525: goto st133 } goto st0 tr201: //line sip.rl:69 amt = 0 goto st140 st140: p++ st_case_140: //line msg_parse.go:5189 switch { case data[p] < 11: if data[p] <= 9 { goto tr208 } case data[p] > 12: if 14 <= data[p] && data[p] <= 127 { goto tr208 } default: goto tr208 } goto st0 tr202: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st141 tr211: //line sip.rl:73 buf[amt] = data[p] amt++ goto st141 st141: p++ st_case_141: //line msg_parse.go:5224 if 128 <= data[p] && data[p] <= 191 { goto tr208 } goto st0 tr203: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st142 tr212: //line sip.rl:73 buf[amt] = data[p] amt++ goto st142 st142: p++ st_case_142: //line msg_parse.go:5250 if 128 <= data[p] && data[p] <= 191 { goto tr211 } goto st0 tr204: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st143 tr213: //line sip.rl:73 buf[amt] = data[p] amt++ goto st143 st143: p++ st_case_143: //line msg_parse.go:5276 if 128 <= data[p] && data[p] <= 191 { goto tr212 } goto st0 tr205: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st144 tr214: //line sip.rl:73 buf[amt] = data[p] amt++ goto st144 st144: p++ st_case_144: //line msg_parse.go:5302 if 128 <= data[p] && data[p] <= 191 { goto tr213 } goto st0 tr206: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st145 tr215: //line sip.rl:73 buf[amt] = data[p] amt++ goto st145 st145: p++ st_case_145: //line msg_parse.go:5328 if 128 <= data[p] && data[p] <= 191 { goto tr214 } goto st0 tr207: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st146 tr216: //line sip.rl:73 buf[amt] = data[p] amt++ goto st146 st146: p++ st_case_146: //line msg_parse.go:5354 if data[p] == 10 { goto tr217 } goto st0 tr217: //line sip.rl:73 buf[amt] = data[p] amt++ goto st147 st147: p++ st_case_147: //line msg_parse.go:5369 switch data[p] { case 9: goto tr208 case 32: goto tr208 } goto st0 st148: p++ st_case_148: if data[p] == 10 { goto st149 } goto st0 st149: p++ st_case_149: switch data[p] { case 9: goto st150 case 32: goto st150 } goto st0 st150: p++ st_case_150: switch data[p] { case 9: goto st150 case 32: goto st150 case 33: goto tr190 case 34: goto st137 case 37: goto tr190 case 39: goto tr190 case 93: goto tr190 case 126: goto tr190 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr190 } case data[p] >= 42: goto tr190 } case data[p] > 58: switch { case data[p] > 91: if 95 <= data[p] && data[p] <= 122 { goto tr190 } case data[p] >= 65: goto tr190 } default: goto tr190 } goto st0 tr176: //line sip.rl:182 name = string(data[mark:p]) goto st151 st151: p++ st_case_151: //line msg_parse.go:5447 if data[p] == 10 { goto st152 } goto st0 st152: p++ st_case_152: switch data[p] { case 9: goto st153 case 32: goto st153 } goto st0 st153: p++ st_case_153: switch data[p] { case 9: goto st153 case 32: goto st153 case 44: goto st122 case 59: goto st126 case 61: goto st130 } goto st0 st154: p++ st_case_154: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st155 case 32: goto st155 case 33: goto tr223 case 34: goto tr224 case 37: goto tr223 case 39: goto tr223 case 60: goto st156 case 126: goto tr223 case 525: goto st176 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr223 } case _widec >= 42: goto tr223 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto tr223 } case _widec >= 65: goto tr223 } default: goto tr223 } goto st0 tr281: //line sip.rl:218 addr.Display = string(buf[0:amt]) goto st155 st155: p++ st_case_155: //line msg_parse.go:5540 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st155 case 32: goto st155 case 60: goto st156 case 525: goto st176 } goto st0 tr257: //line sip.rl:222 { end := p for end > mark && whitespacec(data[end - 1]) { end-- } addr.Display = string(data[mark:end]) } goto st156 tr282: //line sip.rl:218 addr.Display = string(buf[0:amt]) goto st156 st156: p++ st_case_156: //line msg_parse.go:5578 switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto tr227 } case data[p] >= 65: goto tr227 } goto st0 tr227: //line sip.rl:61 mark = p goto st157 st157: p++ st_case_157: //line msg_parse.go:5597 switch data[p] { case 43: goto st157 case 58: goto st158 } switch { case data[p] < 48: if 45 <= data[p] && data[p] <= 46 { goto st157 } case data[p] > 57: switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto st157 } case data[p] >= 65: goto st157 } default: goto st157 } goto st0 st158: p++ st_case_158: switch data[p] { case 33: goto st159 case 61: goto st159 case 93: goto st159 case 95: goto st159 case 126: goto st159 } switch { case data[p] < 63: if 36 <= data[p] && data[p] <= 59 { goto st159 } case data[p] > 91: if 97 <= data[p] && data[p] <= 122 { goto st159 } default: goto st159 } goto st0 st159: p++ st_case_159: switch data[p] { case 33: goto st159 case 62: goto tr231 case 93: goto st159 case 95: goto st159 case 126: goto st159 } switch { case data[p] < 61: if 36 <= data[p] && data[p] <= 59 { goto st159 } case data[p] > 91: if 97 <= data[p] && data[p] <= 122 { goto st159 } default: goto st159 } goto st0 tr231: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st160 st160: p++ st_case_160: //line msg_parse.go:5688 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st160 case 32: goto st160 case 44: goto st161 case 59: goto st165 case 269: goto st169 case 525: goto st170 } goto st0 st161: p++ st_case_161: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st161 case 32: goto st161 case 269: goto tr237 case 525: goto st162 } switch { case _widec > 12: if 14 <= _widec { goto tr237 } default: goto tr237 } goto st0 tr237: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st743 tr241: //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st743 tr245: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:159 {goto st246 } goto st743 st743: p++ st_case_743: //line msg_parse.go:5783 goto st0 st162: p++ st_case_162: if data[p] == 10 { goto st163 } goto st0 st163: p++ st_case_163: switch data[p] { case 9: goto st164 case 32: goto st164 } goto st0 st164: p++ st_case_164: switch data[p] { case 9: goto st164 case 32: goto st164 } goto tr237 st165: p++ st_case_165: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st165 case 32: goto st165 case 269: goto tr241 case 525: goto st166 } switch { case _widec > 12: if 14 <= _widec { goto tr241 } default: goto tr241 } goto st0 st166: p++ st_case_166: if data[p] == 10 { goto st167 } goto st0 st167: p++ st_case_167: switch data[p] { case 9: goto st168 case 32: goto st168 } goto st0 st168: p++ st_case_168: switch data[p] { case 9: goto st168 case 32: goto st168 } goto tr241 st169: p++ st_case_169: if data[p] == 10 { goto tr245 } goto st0 st170: p++ st_case_170: if data[p] == 10 { goto st171 } goto st0 st171: p++ st_case_171: switch data[p] { case 9: goto st172 case 32: goto st172 } goto st0 st172: p++ st_case_172: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st172 case 32: goto st172 case 44: goto st161 case 59: goto st165 case 269: goto st169 case 525: goto st173 } goto st0 st173: p++ st_case_173: if data[p] == 10 { goto st174 } goto st0 st174: p++ st_case_174: switch data[p] { case 9: goto st175 case 32: goto st175 } goto st0 st175: p++ st_case_175: switch data[p] { case 9: goto st175 case 32: goto st175 case 44: goto st161 case 59: goto st165 } goto st0 tr262: //line sip.rl:222 { end := p for end > mark && whitespacec(data[end - 1]) { end-- } addr.Display = string(data[mark:end]) } goto st176 tr283: //line sip.rl:218 addr.Display = string(buf[0:amt]) goto st176 st176: p++ st_case_176: //line msg_parse.go:5967 if data[p] == 10 { goto st177 } goto st0 st177: p++ st_case_177: switch data[p] { case 9: goto st178 case 32: goto st178 } goto st0 st178: p++ st_case_178: switch data[p] { case 9: goto st178 case 32: goto st178 case 60: goto st156 } goto st0 tr223: //line sip.rl:61 mark = p goto st179 st179: p++ st_case_179: //line msg_parse.go:6003 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st180 case 32: goto st180 case 33: goto st179 case 37: goto st179 case 39: goto st179 case 126: goto st179 case 525: goto st181 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st179 } case _widec >= 42: goto st179 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st179 } case _widec >= 65: goto st179 } default: goto st179 } goto st0 tr256: //line sip.rl:222 { end := p for end > mark && whitespacec(data[end - 1]) { end-- } addr.Display = string(data[mark:end]) } goto st180 st180: p++ st_case_180: //line msg_parse.go:6063 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr256 case 32: goto tr256 case 33: goto st179 case 37: goto st179 case 39: goto st179 case 60: goto tr257 case 126: goto st179 case 525: goto tr258 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st179 } case _widec >= 42: goto st179 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st179 } case _widec >= 65: goto st179 } default: goto st179 } goto st0 tr258: //line sip.rl:222 { end := p for end > mark && whitespacec(data[end - 1]) { end-- } addr.Display = string(data[mark:end]) } goto st181 st181: p++ st_case_181: //line msg_parse.go:6125 if data[p] == 10 { goto st182 } goto st0 st182: p++ st_case_182: switch data[p] { case 9: goto st183 case 32: goto st183 } goto st0 tr261: //line sip.rl:222 { end := p for end > mark && whitespacec(data[end - 1]) { end-- } addr.Display = string(data[mark:end]) } goto st183 st183: p++ st_case_183: //line msg_parse.go:6153 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr261 case 32: goto tr261 case 33: goto st179 case 37: goto st179 case 39: goto st179 case 60: goto tr257 case 126: goto st179 case 525: goto tr262 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st179 } case _widec >= 42: goto st179 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st179 } case _widec >= 65: goto st179 } default: goto st179 } goto st0 tr224: //line sip.rl:69 amt = 0 goto st184 st184: p++ st_case_184: //line msg_parse.go:6211 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr263 case 34: goto tr264 case 92: goto tr265 case 525: goto tr271 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr266 } case _widec >= 32: goto tr263 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr268 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr270 } default: goto tr269 } default: goto tr267 } goto st0 tr263: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st185 tr272: //line sip.rl:73 buf[amt] = data[p] amt++ goto st185 st185: p++ st_case_185: //line msg_parse.go:6277 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr272 case 34: goto st186 case 92: goto st187 case 525: goto tr280 } switch { case _widec < 224: switch { case _widec > 126: if 192 <= _widec && _widec <= 223 { goto tr275 } case _widec >= 32: goto tr272 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr277 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr279 } default: goto tr278 } default: goto tr276 } goto st0 tr264: //line sip.rl:69 amt = 0 goto st186 st186: p++ st_case_186: //line msg_parse.go:6331 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr281 case 32: goto tr281 case 60: goto tr282 case 525: goto tr283 } goto st0 tr265: //line sip.rl:69 amt = 0 goto st187 st187: p++ st_case_187: //line msg_parse.go:6359 switch { case data[p] < 11: if data[p] <= 9 { goto tr272 } case data[p] > 12: if 14 <= data[p] && data[p] <= 127 { goto tr272 } default: goto tr272 } goto st0 tr266: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st188 tr275: //line sip.rl:73 buf[amt] = data[p] amt++ goto st188 st188: p++ st_case_188: //line msg_parse.go:6394 if 128 <= data[p] && data[p] <= 191 { goto tr272 } goto st0 tr267: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st189 tr276: //line sip.rl:73 buf[amt] = data[p] amt++ goto st189 st189: p++ st_case_189: //line msg_parse.go:6420 if 128 <= data[p] && data[p] <= 191 { goto tr275 } goto st0 tr268: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st190 tr277: //line sip.rl:73 buf[amt] = data[p] amt++ goto st190 st190: p++ st_case_190: //line msg_parse.go:6446 if 128 <= data[p] && data[p] <= 191 { goto tr276 } goto st0 tr269: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st191 tr278: //line sip.rl:73 buf[amt] = data[p] amt++ goto st191 st191: p++ st_case_191: //line msg_parse.go:6472 if 128 <= data[p] && data[p] <= 191 { goto tr277 } goto st0 tr270: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st192 tr279: //line sip.rl:73 buf[amt] = data[p] amt++ goto st192 st192: p++ st_case_192: //line msg_parse.go:6498 if 128 <= data[p] && data[p] <= 191 { goto tr278 } goto st0 tr271: //line sip.rl:69 amt = 0 //line sip.rl:73 buf[amt] = data[p] amt++ goto st193 tr280: //line sip.rl:73 buf[amt] = data[p] amt++ goto st193 st193: p++ st_case_193: //line msg_parse.go:6524 if data[p] == 10 { goto tr284 } goto st0 tr284: //line sip.rl:73 buf[amt] = data[p] amt++ goto st194 st194: p++ st_case_194: //line msg_parse.go:6539 switch data[p] { case 9: goto tr272 case 32: goto tr272 } goto st0 st195: p++ st_case_195: switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto st196 } case data[p] >= 65: goto st196 } goto st0 st196: p++ st_case_196: switch data[p] { case 43: goto st196 case 58: goto st197 } switch { case data[p] < 48: if 45 <= data[p] && data[p] <= 46 { goto st196 } case data[p] > 57: switch { case data[p] > 90: if 97 <= data[p] && data[p] <= 122 { goto st196 } case data[p] >= 65: goto st196 } default: goto st196 } goto st0 st197: p++ st_case_197: switch data[p] { case 33: goto st198 case 61: goto st198 case 93: goto st198 case 95: goto st198 case 126: goto st198 } switch { case data[p] < 63: if 36 <= data[p] && data[p] <= 59 { goto st198 } case data[p] > 91: if 97 <= data[p] && data[p] <= 122 { goto st198 } default: goto st198 } goto st0 st198: p++ st_case_198: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr288 case 32: goto tr288 case 33: goto st198 case 44: goto tr289 case 59: goto tr290 case 61: goto st198 case 93: goto st198 case 95: goto st198 case 126: goto st198 case 269: goto tr291 case 525: goto tr292 } switch { case _widec < 63: if 36 <= _widec && _widec <= 58 { goto st198 } case _widec > 91: if 97 <= _widec && _widec <= 122 { goto st198 } default: goto st198 } goto st0 tr288: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st199 st199: p++ st_case_199: //line msg_parse.go:6671 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st199 case 32: goto st199 case 44: goto st200 case 59: goto st204 case 525: goto st208 } goto st0 st200: p++ st_case_200: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st200 case 32: goto st200 case 269: goto tr297 case 525: goto st201 } switch { case _widec > 12: if 14 <= _widec { goto tr297 } default: goto tr297 } goto st0 tr297: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st744 tr301: //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st744 st744: p++ st_case_744: //line msg_parse.go:6752 goto st0 st201: p++ st_case_201: if data[p] == 10 { goto st202 } goto st0 st202: p++ st_case_202: switch data[p] { case 9: goto st203 case 32: goto st203 } goto st0 st203: p++ st_case_203: switch data[p] { case 9: goto st203 case 32: goto st203 } goto tr297 st204: p++ st_case_204: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st204 case 32: goto st204 case 269: goto tr301 case 525: goto st205 } switch { case _widec > 12: if 14 <= _widec { goto tr301 } default: goto tr301 } goto st0 st205: p++ st_case_205: if data[p] == 10 { goto st206 } goto st0 st206: p++ st_case_206: switch data[p] { case 9: goto st207 case 32: goto st207 } goto st0 st207: p++ st_case_207: switch data[p] { case 9: goto st207 case 32: goto st207 } goto tr301 tr292: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st208 st208: p++ st_case_208: //line msg_parse.go:6847 if data[p] == 10 { goto st209 } goto st0 st209: p++ st_case_209: switch data[p] { case 9: goto st210 case 32: goto st210 } goto st0 st210: p++ st_case_210: switch data[p] { case 9: goto st210 case 32: goto st210 case 44: goto st200 case 59: goto st204 } goto st0 tr289: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st211 st211: p++ st_case_211: //line msg_parse.go:6886 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr307 case 32: goto tr307 case 33: goto tr308 case 44: goto tr289 case 59: goto tr309 case 60: goto tr297 case 62: goto tr297 case 92: goto tr297 case 94: goto tr297 case 96: goto tr297 case 126: goto tr308 case 269: goto tr310 case 525: goto tr311 } switch { case _widec < 14: if _widec <= 12 { goto tr297 } case _widec > 35: switch { case _widec > 122: if 123 <= _widec { goto tr297 } case _widec >= 36: goto tr308 } default: goto tr297 } goto st0 tr307: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st212 st212: p++ st_case_212: //line msg_parse.go:6950 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st212 case 32: goto st212 case 44: goto st200 case 59: goto tr313 case 269: goto tr297 case 525: goto st213 } switch { case _widec > 12: if 14 <= _widec { goto tr297 } default: goto tr297 } goto st0 tr313: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st745 st745: p++ st_case_745: //line msg_parse.go:7001 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st204 case 32: goto st204 case 269: goto tr301 case 525: goto st205 } switch { case _widec > 12: if 14 <= _widec { goto tr301 } default: goto tr301 } goto st0 tr311: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st213 st213: p++ st_case_213: //line msg_parse.go:7038 if data[p] == 10 { goto st214 } goto st0 st214: p++ st_case_214: switch data[p] { case 9: goto st215 case 32: goto st215 } goto st0 st215: p++ st_case_215: switch data[p] { case 9: goto st215 case 32: goto st215 case 44: goto st200 case 59: goto tr313 } goto tr297 tr308: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st746 tr318: //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st746 st746: p++ st_case_746: //line msg_parse.go:7098 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr288 case 32: goto tr288 case 33: goto st198 case 44: goto tr289 case 59: goto tr290 case 61: goto st198 case 93: goto st198 case 95: goto st198 case 126: goto st198 case 269: goto tr291 case 525: goto tr292 } switch { case _widec < 63: if 36 <= _widec && _widec <= 58 { goto st198 } case _widec > 91: if 97 <= _widec && _widec <= 122 { goto st198 } default: goto st198 } goto st0 tr290: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st216 st216: p++ st_case_216: //line msg_parse.go:7153 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr317 case 32: goto tr317 case 33: goto tr318 case 44: goto tr319 case 59: goto tr290 case 60: goto tr301 case 62: goto tr301 case 92: goto tr301 case 94: goto tr301 case 96: goto tr301 case 126: goto tr318 case 269: goto tr320 case 525: goto tr321 } switch { case _widec < 14: if _widec <= 12 { goto tr301 } case _widec > 35: switch { case _widec > 122: if 123 <= _widec { goto tr301 } case _widec >= 36: goto tr318 } default: goto tr301 } goto st0 tr317: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st217 st217: p++ st_case_217: //line msg_parse.go:7217 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st217 case 32: goto st217 case 44: goto tr323 case 59: goto st204 case 269: goto tr301 case 525: goto st218 } switch { case _widec > 12: if 14 <= _widec { goto tr301 } default: goto tr301 } goto st0 tr323: //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st747 st747: p++ st_case_747: //line msg_parse.go:7262 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st200 case 32: goto st200 case 269: goto tr297 case 525: goto st201 } switch { case _widec > 12: if 14 <= _widec { goto tr297 } default: goto tr297 } goto st0 tr321: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st218 st218: p++ st_case_218: //line msg_parse.go:7299 if data[p] == 10 { goto st219 } goto st0 st219: p++ st_case_219: switch data[p] { case 9: goto st220 case 32: goto st220 } goto st0 st220: p++ st_case_220: switch data[p] { case 9: goto st220 case 32: goto st220 case 44: goto tr323 case 59: goto st204 } goto tr301 tr319: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st748 st748: p++ st_case_748: //line msg_parse.go:7347 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr307 case 32: goto tr307 case 33: goto tr308 case 44: goto tr289 case 59: goto tr309 case 60: goto tr297 case 62: goto tr297 case 92: goto tr297 case 94: goto tr297 case 96: goto tr297 case 126: goto tr308 case 269: goto tr310 case 525: goto tr311 } switch { case _widec < 14: if _widec <= 12 { goto tr297 } case _widec > 35: switch { case _widec > 122: if 123 <= _widec { goto tr297 } case _widec >= 36: goto tr308 } default: goto tr297 } goto st0 tr309: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st749 st749: p++ st_case_749: //line msg_parse.go:7426 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr317 case 32: goto tr317 case 33: goto tr318 case 44: goto tr319 case 59: goto tr290 case 60: goto tr301 case 62: goto tr301 case 92: goto tr301 case 94: goto tr301 case 96: goto tr301 case 126: goto tr318 case 269: goto tr320 case 525: goto tr321 } switch { case _widec < 14: if _widec <= 12 { goto tr301 } case _widec > 35: switch { case _widec > 122: if 123 <= _widec { goto tr301 } case _widec >= 36: goto tr318 } default: goto tr301 } goto st0 tr310: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st750 tr320: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } //line sip.rl:53 p-- //line sip.rl:210 {goto st119 } goto st750 st750: p++ st_case_750: //line msg_parse.go:7521 if data[p] == 10 { goto tr327 } goto st0 tr327: //line sip.rl:159 {goto st246 } goto st751 st751: p++ st_case_751: //line msg_parse.go:7535 goto st0 tr291: //line sip.rl:230 addr.Uri, err = ParseURIBytes(data[mark:p]) if err != nil { return nil, err } goto st221 st221: p++ st_case_221: //line msg_parse.go:7547 if data[p] == 10 { goto tr327 } goto st0 st222: p++ st_case_222: switch data[p] { case 33: goto tr328 case 34: goto tr329 case 37: goto tr328 case 39: goto tr328 case 60: goto tr329 case 126: goto tr328 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr328 } case data[p] >= 42: goto tr328 } case data[p] > 57: switch { case data[p] < 95: if 65 <= data[p] && data[p] <= 90 { goto tr330 } case data[p] > 96: if 97 <= data[p] && data[p] <= 122 { goto tr330 } default: goto tr328 } default: goto tr328 } goto st0 tr328: //line sip.rl:61 mark = p goto st223 st223: p++ st_case_223: //line msg_parse.go:7605 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st224 case 32: goto st224 case 33: goto st223 case 37: goto st223 case 39: goto st223 case 126: goto st223 case 525: goto st225 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st223 } case _widec >= 42: goto st223 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st223 } case _widec >= 65: goto st223 } default: goto st223 } goto st0 st224: p++ st_case_224: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st224 case 32: goto st224 case 33: goto st223 case 37: goto st223 case 39: goto st223 case 60: goto tr334 case 126: goto st223 case 525: goto st225 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st223 } case _widec >= 42: goto st223 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st223 } case _widec >= 65: goto st223 } default: goto st223 } goto st0 tr329: //line sip.rl:214 addr = new(Addr) //line sip.rl:53 p-- //line sip.rl:206 {goto st154 } goto st752 tr334: //line sip.rl:214 addr = new(Addr) //line sip.rl:65 p = ( mark) - 1 //line sip.rl:206 {goto st154 } goto st752 tr338: //line sip.rl:214 addr = new(Addr) //line sip.rl:65 p = ( mark) - 1 //line sip.rl:202 {goto st195 } goto st752 st752: p++ st_case_752: //line msg_parse.go:7751 goto st0 st225: p++ st_case_225: if data[p] == 10 { goto st226 } goto st0 st226: p++ st_case_226: switch data[p] { case 9: goto st227 case 32: goto st227 } goto st0 st227: p++ st_case_227: switch data[p] { case 9: goto st227 case 32: goto st227 case 33: goto st223 case 37: goto st223 case 39: goto st223 case 60: goto tr334 case 126: goto st223 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st223 } case data[p] >= 42: goto st223 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st223 } case data[p] >= 65: goto st223 } default: goto st223 } goto st0 tr330: //line sip.rl:61 mark = p goto st228 st228: p++ st_case_228: //line msg_parse.go:7821 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st224 case 32: goto st224 case 33: goto st223 case 37: goto st223 case 39: goto st223 case 42: goto st223 case 43: goto st228 case 58: goto tr338 case 126: goto st223 case 525: goto st225 } switch { case _widec < 65: switch { case _widec > 46: if 48 <= _widec && _widec <= 57 { goto st228 } case _widec >= 45: goto st228 } case _widec > 90: switch { case _widec > 96: if 97 <= _widec && _widec <= 122 { goto st228 } case _widec >= 95: goto st223 } default: goto st228 } goto st0 st229: p++ st_case_229: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto tr339 case 269: goto tr345 case 525: goto tr346 } switch { case _widec < 224: switch { case _widec > 127: if 192 <= _widec && _widec <= 223 { goto tr340 } case _widec >= 32: goto tr339 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr342 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr344 } default: goto tr343 } default: goto tr341 } goto st0 tr339: //line sip.rl:61 mark = p goto st230 st230: p++ st_case_230: //line msg_parse.go:7928 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st230 case 269: goto st236 case 525: goto st237 } switch { case _widec < 224: switch { case _widec > 127: if 192 <= _widec && _widec <= 223 { goto st231 } case _widec >= 32: goto st230 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto st233 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto st235 } default: goto st234 } default: goto st232 } goto st0 tr340: //line sip.rl:61 mark = p goto st231 st231: p++ st_case_231: //line msg_parse.go:7980 if 128 <= data[p] && data[p] <= 191 { goto st230 } goto st0 tr341: //line sip.rl:61 mark = p goto st232 st232: p++ st_case_232: //line msg_parse.go:7994 if 128 <= data[p] && data[p] <= 191 { goto st231 } goto st0 tr342: //line sip.rl:61 mark = p goto st233 st233: p++ st_case_233: //line msg_parse.go:8008 if 128 <= data[p] && data[p] <= 191 { goto st232 } goto st0 tr343: //line sip.rl:61 mark = p goto st234 st234: p++ st_case_234: //line msg_parse.go:8022 if 128 <= data[p] && data[p] <= 191 { goto st233 } goto st0 tr344: //line sip.rl:61 mark = p goto st235 st235: p++ st_case_235: //line msg_parse.go:8036 if 128 <= data[p] && data[p] <= 191 { goto st234 } goto st0 tr345: //line sip.rl:61 mark = p goto st236 st236: p++ st_case_236: //line msg_parse.go:8050 if data[p] == 10 { goto tr355 } goto st0 tr355: //line sip.rl:186 { b := data[mark:p - 1] if value != nil { *value = string(b) } else { if msg.Headers == nil { msg.Headers = Headers{} } msg.Headers[name] = string(b) } } //line sip.rl:159 {goto st246 } goto st753 st753: p++ st_case_753: //line msg_parse.go:8076 goto st0 tr346: //line sip.rl:61 mark = p goto st237 st237: p++ st_case_237: //line msg_parse.go:8087 if data[p] == 10 { goto st238 } goto st0 st238: p++ st_case_238: switch data[p] { case 9: goto st230 case 32: goto st230 } goto st0 st239: p++ st_case_239: switch data[p] { case 33: goto st240 case 37: goto st240 case 39: goto st240 case 126: goto st240 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st240 } case data[p] >= 42: goto st240 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st240 } case data[p] >= 65: goto st240 } default: goto st240 } goto st0 st240: p++ st_case_240: switch data[p] { case 9: goto tr358 case 32: goto tr358 case 33: goto st240 case 37: goto st240 case 39: goto st240 case 58: goto tr359 case 126: goto st240 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto st240 } case data[p] >= 42: goto st240 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto st240 } case data[p] >= 65: goto st240 } default: goto st240 } goto st0 tr358: //line sip.rl:182 name = string(data[mark:p]) goto st241 st241: p++ st_case_241: //line msg_parse.go:8189 switch data[p] { case 9: goto st241 case 32: goto st241 case 58: goto st242 } goto st0 tr359: //line sip.rl:182 name = string(data[mark:p]) goto st242 st242: p++ st_case_242: //line msg_parse.go:8208 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st242 case 32: goto st242 case 269: goto tr362 case 525: goto st243 } switch { case _widec > 12: if 14 <= _widec { goto tr362 } default: goto tr362 } goto st0 tr362: //line sip.rl:545 value=nil //line sip.rl:53 p-- //line sip.rl:163 {goto st229 } goto st754 st754: p++ st_case_754: //line msg_parse.go:8251 goto st0 st243: p++ st_case_243: if data[p] == 10 { goto st244 } goto st0 st244: p++ st_case_244: switch data[p] { case 9: goto st245 case 32: goto st245 } goto st0 st245: p++ st_case_245: switch data[p] { case 9: goto st245 case 32: goto st245 } goto tr362 st246: p++ st_case_246: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 33: goto tr366 case 37: goto tr366 case 39: goto tr366 case 126: goto tr366 case 269: goto st738 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr366 } case _widec >= 42: goto tr366 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto tr366 } case _widec >= 65: goto tr366 } default: goto tr366 } goto st0 tr366: //line sip.rl:61 mark = p //line sip.rl:53 p-- goto st247 st247: p++ st_case_247: //line msg_parse.go:8339 switch data[p] { case 65: goto st248 case 66: goto st329 case 67: goto st330 case 68: goto st433 case 69: goto st437 case 70: goto st463 case 73: goto st467 case 75: goto st478 case 76: goto st479 case 77: goto st486 case 79: goto st530 case 80: goto st542 case 82: goto st600 case 83: goto st660 case 84: goto st678 case 85: goto st688 case 86: goto st708 case 87: goto st716 case 97: goto st248 case 98: goto st329 case 99: goto st330 case 100: goto st433 case 101: goto st437 case 102: goto st463 case 105: goto st467 case 107: goto st478 case 108: goto st479 case 109: goto st486 case 111: goto st530 case 112: goto st542 case 114: goto st600 case 115: goto st660 case 116: goto st678 case 117: goto st688 case 118: goto st708 case 119: goto st716 } goto tr368 st248: p++ st_case_248: switch data[p] { case 9: goto tr387 case 32: goto tr387 case 58: goto tr388 case 67: goto st254 case 76: goto st283 case 85: goto st302 case 99: goto st254 case 108: goto st283 case 117: goto st302 } goto tr368 tr387: //line sip.rl:463 value=&msg.AcceptContact goto st249 tr402: //line sip.rl:462 value=&msg.Accept goto st249 tr421: //line sip.rl:464 value=&msg.AcceptEncoding goto st249 tr430: //line sip.rl:465 value=&msg.AcceptLanguage goto st249 tr441: //line sip.rl:468 value=&msg.AlertInfo goto st249 tr445: //line sip.rl:466 value=&msg.Allow goto st249 tr454: //line sip.rl:467 value=&msg.AllowEvents goto st249 tr474: //line sip.rl:469 value=&msg.AuthenticationInfo goto st249 tr484: //line sip.rl:470 value=&msg.Authorization goto st249 tr486: //line sip.rl:487 value=&msg.ReferredBy goto st249 tr532: //line sip.rl:474 value=&msg.CallInfo goto st249 tr565: //line sip.rl:471 value=&msg.ContentDisposition goto st249 tr574: //line sip.rl:473 value=&msg.ContentEncoding goto st249 tr584: //line sip.rl:472 value=&msg.ContentLanguage goto st249 tr619: //line sip.rl:475 value=&msg.Date goto st249 tr632: //line sip.rl:476 value=&msg.ErrorInfo goto st249 tr637: //line sip.rl:477 value=&msg.Event goto st249 tr666: //line sip.rl:478 value=&msg.InReplyTo goto st249 tr668: //line sip.rl:492 value=&msg.Supported goto st249 tr707: //line sip.rl:480 value=&msg.MIMEVersion goto st249 tr735: //line sip.rl:481 value=&msg.Organization goto st249 tr765: //line sip.rl:482 value=&msg.Priority goto st249 tr784: //line sip.rl:483 value=&msg.ProxyAuthenticate goto st249 tr794: //line sip.rl:484 value=&msg.ProxyAuthorization goto st249 tr802: //line sip.rl:485 value=&msg.ProxyRequire goto st249 tr804: //line sip.rl:486 value=&msg.ReferTo goto st249 tr854: //line sip.rl:479 value=&msg.ReplyTo goto st249 tr860: //line sip.rl:488 value=&msg.Require goto st249 tr870: //line sip.rl:489 value=&msg.RetryAfter goto st249 tr877: //line sip.rl:491 value=&msg.Subject goto st249 tr885: //line sip.rl:490 value=&msg.Server goto st249 tr909: //line sip.rl:493 value=&msg.Timestamp goto st249 tr911: //line sip.rl:466 value=&msg.Allow //line sip.rl:467 value=&msg.AllowEvents goto st249 tr924: //line sip.rl:494 value=&msg.Unsupported goto st249 tr934: //line sip.rl:495 value=&msg.UserAgent goto st249 tr951: //line sip.rl:496 value=&msg.Warning goto st249 tr967: //line sip.rl:497 value=&msg.WWWAuthenticate goto st249 st249: p++ st_case_249: //line msg_parse.go:8592 switch data[p] { case 9: goto st249 case 32: goto st249 case 58: goto st250 } goto st0 tr388: //line sip.rl:463 value=&msg.AcceptContact goto st250 tr404: //line sip.rl:462 value=&msg.Accept goto st250 tr422: //line sip.rl:464 value=&msg.AcceptEncoding goto st250 tr431: //line sip.rl:465 value=&msg.AcceptLanguage goto st250 tr442: //line sip.rl:468 value=&msg.AlertInfo goto st250 tr447: //line sip.rl:466 value=&msg.Allow goto st250 tr455: //line sip.rl:467 value=&msg.AllowEvents goto st250 tr475: //line sip.rl:469 value=&msg.AuthenticationInfo goto st250 tr485: //line sip.rl:470 value=&msg.Authorization goto st250 tr487: //line sip.rl:487 value=&msg.ReferredBy goto st250 tr533: //line sip.rl:474 value=&msg.CallInfo goto st250 tr566: //line sip.rl:471 value=&msg.ContentDisposition goto st250 tr575: //line sip.rl:473 value=&msg.ContentEncoding goto st250 tr585: //line sip.rl:472 value=&msg.ContentLanguage goto st250 tr620: //line sip.rl:475 value=&msg.Date goto st250 tr633: //line sip.rl:476 value=&msg.ErrorInfo goto st250 tr638: //line sip.rl:477 value=&msg.Event goto st250 tr667: //line sip.rl:478 value=&msg.InReplyTo goto st250 tr669: //line sip.rl:492 value=&msg.Supported goto st250 tr708: //line sip.rl:480 value=&msg.MIMEVersion goto st250 tr736: //line sip.rl:481 value=&msg.Organization goto st250 tr766: //line sip.rl:482 value=&msg.Priority goto st250 tr785: //line sip.rl:483 value=&msg.ProxyAuthenticate goto st250 tr795: //line sip.rl:484 value=&msg.ProxyAuthorization goto st250 tr803: //line sip.rl:485 value=&msg.ProxyRequire goto st250 tr805: //line sip.rl:486 value=&msg.ReferTo goto st250 tr855: //line sip.rl:479 value=&msg.ReplyTo goto st250 tr861: //line sip.rl:488 value=&msg.Require goto st250 tr871: //line sip.rl:489 value=&msg.RetryAfter goto st250 tr878: //line sip.rl:491 value=&msg.Subject goto st250 tr886: //line sip.rl:490 value=&msg.Server goto st250 tr910: //line sip.rl:493 value=&msg.Timestamp goto st250 tr912: //line sip.rl:466 value=&msg.Allow //line sip.rl:467 value=&msg.AllowEvents goto st250 tr925: //line sip.rl:494 value=&msg.Unsupported goto st250 tr935: //line sip.rl:495 value=&msg.UserAgent goto st250 tr952: //line sip.rl:496 value=&msg.Warning goto st250 tr968: //line sip.rl:497 value=&msg.WWWAuthenticate goto st250 st250: p++ st_case_250: //line msg_parse.go:8755 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st250 case 32: goto st250 case 269: goto tr394 case 525: goto st251 } switch { case _widec > 12: if 14 <= _widec { goto tr394 } default: goto tr394 } goto st0 tr509: //line sip.rl:159 {goto st246 } goto st755 tr394: //line sip.rl:53 p-- //line sip.rl:163 {goto st229 } goto st755 tr544: //line sip.rl:547 value=nil //line sip.rl:53 p-- //line sip.rl:198 {goto st222 } goto st755 tr939: //line sip.rl:53 p-- //line sip.rl:167 via = new(Via) {goto st69 } goto st755 tr969: //line sip.rl:57 {p++; cs = 755; goto _out } goto st755 st755: p++ st_case_755: //line msg_parse.go:8833 goto st0 st251: p++ st_case_251: if data[p] == 10 { goto st252 } goto st0 st252: p++ st_case_252: switch data[p] { case 9: goto st253 case 32: goto st253 } goto st0 st253: p++ st_case_253: switch data[p] { case 9: goto st253 case 32: goto st253 } goto tr394 st254: p++ st_case_254: switch data[p] { case 67: goto st255 case 99: goto st255 } goto tr368 st255: p++ st_case_255: switch data[p] { case 69: goto st256 case 101: goto st256 } goto tr368 st256: p++ st_case_256: switch data[p] { case 80: goto st257 case 112: goto st257 } goto tr368 st257: p++ st_case_257: switch data[p] { case 84: goto st258 case 116: goto st258 } goto tr368 st258: p++ st_case_258: switch data[p] { case 9: goto tr402 case 32: goto tr402 case 45: goto st259 case 58: goto tr404 } goto tr368 st259: p++ st_case_259: switch data[p] { case 67: goto st260 case 69: goto st267 case 76: goto st275 case 99: goto st260 case 101: goto st267 case 108: goto st275 } goto tr368 st260: p++ st_case_260: switch data[p] { case 79: goto st261 case 111: goto st261 } goto tr368 st261: p++ st_case_261: switch data[p] { case 78: goto st262 case 110: goto st262 } goto tr368 st262: p++ st_case_262: switch data[p] { case 84: goto st263 case 116: goto st263 } goto tr368 st263: p++ st_case_263: switch data[p] { case 65: goto st264 case 97: goto st264 } goto tr368 st264: p++ st_case_264: switch data[p] { case 67: goto st265 case 99: goto st265 } goto tr368 st265: p++ st_case_265: switch data[p] { case 84: goto st266 case 116: goto st266 } goto tr368 st266: p++ st_case_266: switch data[p] { case 9: goto tr387 case 32: goto tr387 case 58: goto tr388 } goto tr368 st267: p++ st_case_267: switch data[p] { case 78: goto st268 case 110: goto st268 } goto tr368 st268: p++ st_case_268: switch data[p] { case 67: goto st269 case 99: goto st269 } goto tr368 st269: p++ st_case_269: switch data[p] { case 79: goto st270 case 111: goto st270 } goto tr368 st270: p++ st_case_270: switch data[p] { case 68: goto st271 case 100: goto st271 } goto tr368 st271: p++ st_case_271: switch data[p] { case 73: goto st272 case 105: goto st272 } goto tr368 st272: p++ st_case_272: switch data[p] { case 78: goto st273 case 110: goto st273 } goto tr368 st273: p++ st_case_273: switch data[p] { case 71: goto st274 case 103: goto st274 } goto tr368 st274: p++ st_case_274: switch data[p] { case 9: goto tr421 case 32: goto tr421 case 58: goto tr422 } goto tr368 st275: p++ st_case_275: switch data[p] { case 65: goto st276 case 97: goto st276 } goto tr368 st276: p++ st_case_276: switch data[p] { case 78: goto st277 case 110: goto st277 } goto tr368 st277: p++ st_case_277: switch data[p] { case 71: goto st278 case 103: goto st278 } goto tr368 st278: p++ st_case_278: switch data[p] { case 85: goto st279 case 117: goto st279 } goto tr368 st279: p++ st_case_279: switch data[p] { case 65: goto st280 case 97: goto st280 } goto tr368 st280: p++ st_case_280: switch data[p] { case 71: goto st281 case 103: goto st281 } goto tr368 st281: p++ st_case_281: switch data[p] { case 69: goto st282 case 101: goto st282 } goto tr368 st282: p++ st_case_282: switch data[p] { case 9: goto tr430 case 32: goto tr430 case 58: goto tr431 } goto tr368 st283: p++ st_case_283: switch data[p] { case 69: goto st284 case 76: goto st292 case 101: goto st284 case 108: goto st292 } goto tr368 st284: p++ st_case_284: switch data[p] { case 82: goto st285 case 114: goto st285 } goto tr368 st285: p++ st_case_285: switch data[p] { case 84: goto st286 case 116: goto st286 } goto tr368 st286: p++ st_case_286: if data[p] == 45 { goto st287 } goto tr368 st287: p++ st_case_287: switch data[p] { case 73: goto st288 case 105: goto st288 } goto tr368 st288: p++ st_case_288: switch data[p] { case 78: goto st289 case 110: goto st289 } goto tr368 st289: p++ st_case_289: switch data[p] { case 70: goto st290 case 102: goto st290 } goto tr368 st290: p++ st_case_290: switch data[p] { case 79: goto st291 case 111: goto st291 } goto tr368 st291: p++ st_case_291: switch data[p] { case 9: goto tr441 case 32: goto tr441 case 58: goto tr442 } goto tr368 st292: p++ st_case_292: switch data[p] { case 79: goto st293 case 111: goto st293 } goto tr368 st293: p++ st_case_293: switch data[p] { case 87: goto st294 case 119: goto st294 } goto tr368 st294: p++ st_case_294: switch data[p] { case 9: goto tr445 case 32: goto tr445 case 45: goto st295 case 58: goto tr447 } goto tr368 st295: p++ st_case_295: switch data[p] { case 69: goto st296 case 101: goto st296 } goto tr368 st296: p++ st_case_296: switch data[p] { case 86: goto st297 case 118: goto st297 } goto tr368 st297: p++ st_case_297: switch data[p] { case 69: goto st298 case 101: goto st298 } goto tr368 st298: p++ st_case_298: switch data[p] { case 78: goto st299 case 110: goto st299 } goto tr368 st299: p++ st_case_299: switch data[p] { case 84: goto st300 case 116: goto st300 } goto tr368 st300: p++ st_case_300: switch data[p] { case 83: goto st301 case 115: goto st301 } goto tr368 st301: p++ st_case_301: switch data[p] { case 9: goto tr454 case 32: goto tr454 case 58: goto tr455 } goto tr368 st302: p++ st_case_302: switch data[p] { case 84: goto st303 case 116: goto st303 } goto tr368 st303: p++ st_case_303: switch data[p] { case 72: goto st304 case 104: goto st304 } goto tr368 st304: p++ st_case_304: switch data[p] { case 69: goto st305 case 79: goto st320 case 101: goto st305 case 111: goto st320 } goto tr368 st305: p++ st_case_305: switch data[p] { case 78: goto st306 case 110: goto st306 } goto tr368 st306: p++ st_case_306: switch data[p] { case 84: goto st307 case 116: goto st307 } goto tr368 st307: p++ st_case_307: switch data[p] { case 73: goto st308 case 105: goto st308 } goto tr368 st308: p++ st_case_308: switch data[p] { case 67: goto st309 case 99: goto st309 } goto tr368 st309: p++ st_case_309: switch data[p] { case 65: goto st310 case 97: goto st310 } goto tr368 st310: p++ st_case_310: switch data[p] { case 84: goto st311 case 116: goto st311 } goto tr368 st311: p++ st_case_311: switch data[p] { case 73: goto st312 case 105: goto st312 } goto tr368 st312: p++ st_case_312: switch data[p] { case 79: goto st313 case 111: goto st313 } goto tr368 st313: p++ st_case_313: switch data[p] { case 78: goto st314 case 110: goto st314 } goto tr368 st314: p++ st_case_314: if data[p] == 45 { goto st315 } goto tr368 st315: p++ st_case_315: switch data[p] { case 73: goto st316 case 105: goto st316 } goto tr368 st316: p++ st_case_316: switch data[p] { case 78: goto st317 case 110: goto st317 } goto tr368 st317: p++ st_case_317: switch data[p] { case 70: goto st318 case 102: goto st318 } goto tr368 st318: p++ st_case_318: switch data[p] { case 79: goto st319 case 111: goto st319 } goto tr368 st319: p++ st_case_319: switch data[p] { case 9: goto tr474 case 32: goto tr474 case 58: goto tr475 } goto tr368 st320: p++ st_case_320: switch data[p] { case 82: goto st321 case 114: goto st321 } goto tr368 st321: p++ st_case_321: switch data[p] { case 73: goto st322 case 105: goto st322 } goto tr368 st322: p++ st_case_322: switch data[p] { case 90: goto st323 case 122: goto st323 } goto tr368 st323: p++ st_case_323: switch data[p] { case 65: goto st324 case 97: goto st324 } goto tr368 st324: p++ st_case_324: switch data[p] { case 84: goto st325 case 116: goto st325 } goto tr368 st325: p++ st_case_325: switch data[p] { case 73: goto st326 case 105: goto st326 } goto tr368 st326: p++ st_case_326: switch data[p] { case 79: goto st327 case 111: goto st327 } goto tr368 st327: p++ st_case_327: switch data[p] { case 78: goto st328 case 110: goto st328 } goto tr368 st328: p++ st_case_328: switch data[p] { case 9: goto tr484 case 32: goto tr484 case 58: goto tr485 } goto tr368 st329: p++ st_case_329: switch data[p] { case 9: goto tr486 case 32: goto tr486 case 58: goto tr487 } goto tr368 st330: p++ st_case_330: switch data[p] { case 9: goto st331 case 32: goto st331 case 58: goto st332 case 65: goto st345 case 79: goto st362 case 83: goto st419 case 97: goto st345 case 111: goto st362 case 115: goto st419 } goto tr368 st331: p++ st_case_331: switch data[p] { case 9: goto st331 case 32: goto st331 case 58: goto st332 } goto st0 st332: p++ st_case_332: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st332 case 32: goto st332 case 269: goto tr499 case 525: goto st342 } switch { case _widec < 224: switch { case _widec > 127: if 192 <= _widec && _widec <= 223 { goto tr494 } case _widec >= 33: goto tr493 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr496 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr498 } default: goto tr497 } default: goto tr495 } goto st0 tr493: //line sip.rl:61 mark = p goto st333 st333: p++ st_case_333: //line msg_parse.go:9748 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st333 case 269: goto tr507 case 525: goto st340 } switch { case _widec < 224: switch { case _widec > 127: if 192 <= _widec && _widec <= 223 { goto st334 } case _widec >= 32: goto st333 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto st336 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto st338 } default: goto st337 } default: goto st335 } goto st0 tr494: //line sip.rl:61 mark = p goto st334 st334: p++ st_case_334: //line msg_parse.go:9800 if 128 <= data[p] && data[p] <= 191 { goto st333 } goto st0 tr495: //line sip.rl:61 mark = p goto st335 st335: p++ st_case_335: //line msg_parse.go:9814 if 128 <= data[p] && data[p] <= 191 { goto st334 } goto st0 tr496: //line sip.rl:61 mark = p goto st336 st336: p++ st_case_336: //line msg_parse.go:9828 if 128 <= data[p] && data[p] <= 191 { goto st335 } goto st0 tr497: //line sip.rl:61 mark = p goto st337 st337: p++ st_case_337: //line msg_parse.go:9842 if 128 <= data[p] && data[p] <= 191 { goto st336 } goto st0 tr498: //line sip.rl:61 mark = p goto st338 st338: p++ st_case_338: //line msg_parse.go:9856 if 128 <= data[p] && data[p] <= 191 { goto st337 } goto st0 tr499: //line sip.rl:61 mark = p //line sip.rl:256 ctype = string(data[mark:p]) goto st339 tr507: //line sip.rl:256 ctype = string(data[mark:p]) goto st339 tr526: //line sip.rl:248 msg.CallID = string(data[mark:p]) goto st339 tr611: //line sip.rl:264 msg.CSeqMethod = string(data[mark:p]) goto st339 st339: p++ st_case_339: //line msg_parse.go:9892 if data[p] == 10 { goto tr509 } goto st0 tr513: //line sip.rl:61 mark = p goto st340 st340: p++ st_case_340: //line msg_parse.go:9906 if data[p] == 10 { goto st341 } goto st0 st341: p++ st_case_341: switch data[p] { case 9: goto st333 case 32: goto st333 } goto st0 st342: p++ st_case_342: if data[p] == 10 { goto st343 } goto st0 st343: p++ st_case_343: switch data[p] { case 9: goto st344 case 32: goto st344 } goto st0 st344: p++ st_case_344: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st344 case 32: goto st344 case 269: goto tr499 case 525: goto tr513 } switch { case _widec < 224: switch { case _widec > 127: if 192 <= _widec && _widec <= 223 { goto tr494 } case _widec >= 33: goto tr493 } case _widec > 239: switch { case _widec < 248: if 240 <= _widec && _widec <= 247 { goto tr496 } case _widec > 251: if 252 <= _widec && _widec <= 253 { goto tr498 } default: goto tr497 } default: goto tr495 } goto st0 st345: p++ st_case_345: switch data[p] { case 76: goto st346 case 108: goto st346 } goto tr368 st346: p++ st_case_346: switch data[p] { case 76: goto st347 case 108: goto st347 } goto tr368 st347: p++ st_case_347: if data[p] == 45 { goto st348 } goto tr368 st348: p++ st_case_348: switch data[p] { case 73: goto st349 case 105: goto st349 } goto tr368 st349: p++ st_case_349: switch data[p] { case 68: goto st350 case 78: goto st359 case 100: goto st350 case 110: goto st359 } goto tr368 st350: p++ st_case_350: switch data[p] { case 9: goto st351 case 32: goto st351 case 58: goto st352 } goto tr368 st351: p++ st_case_351: switch data[p] { case 9: goto st351 case 32: goto st351 case 58: goto st352 } goto st0 st352: p++ st_case_352: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st352 case 32: goto st352 case 37: goto tr522 case 60: goto tr522 case 525: goto st356 } switch { case _widec < 62: switch { case _widec < 39: if 33 <= _widec && _widec <= 34 { goto tr522 } case _widec > 43: if 45 <= _widec && _widec <= 58 { goto tr522 } default: goto tr522 } case _widec > 63: switch { case _widec < 95: if 65 <= _widec && _widec <= 93 { goto tr522 } case _widec > 123: if 125 <= _widec && _widec <= 126 { goto tr522 } default: goto tr522 } default: goto tr522 } goto st0 tr522: //line sip.rl:61 mark = p goto st353 st353: p++ st_case_353: //line msg_parse.go:10122 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 37: goto st353 case 60: goto st353 case 64: goto st354 case 269: goto tr526 } switch { case _widec < 45: switch { case _widec > 34: if 39 <= _widec && _widec <= 43 { goto st353 } case _widec >= 33: goto st353 } case _widec > 58: switch { case _widec < 95: if 62 <= _widec && _widec <= 93 { goto st353 } case _widec > 123: if 125 <= _widec && _widec <= 126 { goto st353 } default: goto st353 } default: goto st353 } goto st0 st354: p++ st_case_354: switch data[p] { case 37: goto st355 case 60: goto st355 } switch { case data[p] < 62: switch { case data[p] < 39: if 33 <= data[p] && data[p] <= 34 { goto st355 } case data[p] > 43: if 45 <= data[p] && data[p] <= 58 { goto st355 } default: goto st355 } case data[p] > 63: switch { case data[p] < 95: if 65 <= data[p] && data[p] <= 93 { goto st355 } case data[p] > 123: if 125 <= data[p] && data[p] <= 126 { goto st355 } default: goto st355 } default: goto st355 } goto st0 st355: p++ st_case_355: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 37: goto st355 case 60: goto st355 case 269: goto tr526 } switch { case _widec < 62: switch { case _widec < 39: if 33 <= _widec && _widec <= 34 { goto st355 } case _widec > 43: if 45 <= _widec && _widec <= 58 { goto st355 } default: goto st355 } case _widec > 63: switch { case _widec < 95: if 65 <= _widec && _widec <= 93 { goto st355 } case _widec > 123: if 125 <= _widec && _widec <= 126 { goto st355 } default: goto st355 } default: goto st355 } goto st0 st356: p++ st_case_356: if data[p] == 10 { goto st357 } goto st0 st357: p++ st_case_357: switch data[p] { case 9: goto st358 case 32: goto st358 } goto st0 st358: p++ st_case_358: switch data[p] { case 9: goto st358 case 32: goto st358 case 37: goto tr522 case 60: goto tr522 } switch { case data[p] < 62: switch { case data[p] < 39: if 33 <= data[p] && data[p] <= 34 { goto tr522 } case data[p] > 43: if 45 <= data[p] && data[p] <= 58 { goto tr522 } default: goto tr522 } case data[p] > 63: switch { case data[p] < 95: if 65 <= data[p] && data[p] <= 93 { goto tr522 } case data[p] > 123: if 125 <= data[p] && data[p] <= 126 { goto tr522 } default: goto tr522 } default: goto tr522 } goto st0 st359: p++ st_case_359: switch data[p] { case 70: goto st360 case 102: goto st360 } goto tr368 st360: p++ st_case_360: switch data[p] { case 79: goto st361 case 111: goto st361 } goto tr368 st361: p++ st_case_361: switch data[p] { case 9: goto tr532 case 32: goto tr532 case 58: goto tr533 } goto tr368 st362: p++ st_case_362: switch data[p] { case 78: goto st363 case 110: goto st363 } goto tr368 st363: p++ st_case_363: switch data[p] { case 84: goto st364 case 116: goto st364 } goto tr368 st364: p++ st_case_364: switch data[p] { case 65: goto st365 case 69: goto st373 case 97: goto st365 case 101: goto st373 } goto tr368 st365: p++ st_case_365: switch data[p] { case 67: goto st366 case 99: goto st366 } goto tr368 st366: p++ st_case_366: switch data[p] { case 84: goto st367 case 116: goto st367 } goto tr368 st367: p++ st_case_367: switch data[p] { case 9: goto tr540 case 32: goto tr540 case 58: goto tr541 } goto tr368 tr540: //line sip.rl:449 addrp=lastAddr(&msg.Contact) goto st368 tr651: //line sip.rl:450 addrp=lastAddr(&msg.From) goto st368 tr756: //line sip.rl:451 addrp=lastAddr(&msg.PAssertedIdentity) goto st368 tr823: //line sip.rl:452 addrp=lastAddr(&msg.RecordRoute) goto st368 tr847: //line sip.rl:453 addrp=lastAddr(&msg.RemotePartyID) goto st368 tr875: //line sip.rl:454 addrp=lastAddr(&msg.Route) goto st368 tr898: //line sip.rl:455 addrp=lastAddr(&msg.To) goto st368 st368: p++ st_case_368: //line msg_parse.go:10446 switch data[p] { case 9: goto st368 case 32: goto st368 case 58: goto st369 } goto st0 tr541: //line sip.rl:449 addrp=lastAddr(&msg.Contact) goto st369 tr652: //line sip.rl:450 addrp=lastAddr(&msg.From) goto st369 tr757: //line sip.rl:451 addrp=lastAddr(&msg.PAssertedIdentity) goto st369 tr824: //line sip.rl:452 addrp=lastAddr(&msg.RecordRoute) goto st369 tr848: //line sip.rl:453 addrp=lastAddr(&msg.RemotePartyID) goto st369 tr876: //line sip.rl:454 addrp=lastAddr(&msg.Route) goto st369 tr899: //line sip.rl:455 addrp=lastAddr(&msg.To) goto st369 st369: p++ st_case_369: //line msg_parse.go:10487 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st369 case 32: goto st369 case 269: goto tr544 case 525: goto st370 } switch { case _widec > 12: if 14 <= _widec { goto tr544 } default: goto tr544 } goto st0 st370: p++ st_case_370: if data[p] == 10 { goto st371 } goto st0 st371: p++ st_case_371: switch data[p] { case 9: goto st372 case 32: goto st372 } goto st0 st372: p++ st_case_372: switch data[p] { case 9: goto st372 case 32: goto st372 } goto tr544 st373: p++ st_case_373: switch data[p] { case 78: goto st374 case 110: goto st374 } goto tr368 st374: p++ st_case_374: switch data[p] { case 84: goto st375 case 116: goto st375 } goto tr368 st375: p++ st_case_375: if data[p] == 45 { goto st376 } goto tr368 st376: p++ st_case_376: switch data[p] { case 68: goto st377 case 69: goto st388 case 76: goto st396 case 84: goto st415 case 100: goto st377 case 101: goto st388 case 108: goto st396 case 116: goto st415 } goto tr368 st377: p++ st_case_377: switch data[p] { case 73: goto st378 case 105: goto st378 } goto tr368 st378: p++ st_case_378: switch data[p] { case 83: goto st379 case 115: goto st379 } goto tr368 st379: p++ st_case_379: switch data[p] { case 80: goto st380 case 112: goto st380 } goto tr368 st380: p++ st_case_380: switch data[p] { case 79: goto st381 case 111: goto st381 } goto tr368 st381: p++ st_case_381: switch data[p] { case 83: goto st382 case 115: goto st382 } goto tr368 st382: p++ st_case_382: switch data[p] { case 73: goto st383 case 105: goto st383 } goto tr368 st383: p++ st_case_383: switch data[p] { case 84: goto st384 case 116: goto st384 } goto tr368 st384: p++ st_case_384: switch data[p] { case 73: goto st385 case 105: goto st385 } goto tr368 st385: p++ st_case_385: switch data[p] { case 79: goto st386 case 111: goto st386 } goto tr368 st386: p++ st_case_386: switch data[p] { case 78: goto st387 case 110: goto st387 } goto tr368 st387: p++ st_case_387: switch data[p] { case 9: goto tr565 case 32: goto tr565 case 58: goto tr566 } goto tr368 st388: p++ st_case_388: switch data[p] { case 78: goto st389 case 110: goto st389 } goto tr368 st389: p++ st_case_389: switch data[p] { case 67: goto st390 case 99: goto st390 } goto tr368 st390: p++ st_case_390: switch data[p] { case 79: goto st391 case 111: goto st391 } goto tr368 st391: p++ st_case_391: switch data[p] { case 68: goto st392 case 100: goto st392 } goto tr368 st392: p++ st_case_392: switch data[p] { case 73: goto st393 case 105: goto st393 } goto tr368 st393: p++ st_case_393: switch data[p] { case 78: goto st394 case 110: goto st394 } goto tr368 st394: p++ st_case_394: switch data[p] { case 71: goto st395 case 103: goto st395 } goto tr368 st395: p++ st_case_395: switch data[p] { case 9: goto tr574 case 32: goto tr574 case 58: goto tr575 } goto tr368 st396: p++ st_case_396: switch data[p] { case 65: goto st397 case 69: goto st404 case 97: goto st397 case 101: goto st404 } goto tr368 st397: p++ st_case_397: switch data[p] { case 78: goto st398 case 110: goto st398 } goto tr368 st398: p++ st_case_398: switch data[p] { case 71: goto st399 case 103: goto st399 } goto tr368 st399: p++ st_case_399: switch data[p] { case 85: goto st400 case 117: goto st400 } goto tr368 st400: p++ st_case_400: switch data[p] { case 65: goto st401 case 97: goto st401 } goto tr368 st401: p++ st_case_401: switch data[p] { case 71: goto st402 case 103: goto st402 } goto tr368 st402: p++ st_case_402: switch data[p] { case 69: goto st403 case 101: goto st403 } goto tr368 st403: p++ st_case_403: switch data[p] { case 9: goto tr584 case 32: goto tr584 case 58: goto tr585 } goto tr368 st404: p++ st_case_404: switch data[p] { case 78: goto st405 case 110: goto st405 } goto tr368 st405: p++ st_case_405: switch data[p] { case 71: goto st406 case 103: goto st406 } goto tr368 st406: p++ st_case_406: switch data[p] { case 84: goto st407 case 116: goto st407 } goto tr368 st407: p++ st_case_407: switch data[p] { case 72: goto st408 case 104: goto st408 } goto tr368 st408: p++ st_case_408: switch data[p] { case 9: goto st409 case 32: goto st409 case 58: goto st410 } goto tr368 st409: p++ st_case_409: switch data[p] { case 9: goto st409 case 32: goto st409 case 58: goto st410 } goto st0 st410: p++ st_case_410: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st410 case 32: goto st410 case 525: goto st412 } if 48 <= _widec && _widec <= 57 { goto tr592 } goto st0 tr592: //line sip.rl:505 clen=0 //line sip.rl:252 clen = clen * 10 + (int(data[p]) - 0x30) goto st411 tr594: //line sip.rl:252 clen = clen * 10 + (int(data[p]) - 0x30) goto st411 st411: p++ st_case_411: //line msg_parse.go:10973 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st339 } if 48 <= _widec && _widec <= 57 { goto tr594 } goto st0 st412: p++ st_case_412: if data[p] == 10 { goto st413 } goto st0 st413: p++ st_case_413: switch data[p] { case 9: goto st414 case 32: goto st414 } goto st0 st414: p++ st_case_414: switch data[p] { case 9: goto st414 case 32: goto st414 } if 48 <= data[p] && data[p] <= 57 { goto tr592 } goto st0 st415: p++ st_case_415: switch data[p] { case 89: goto st416 case 121: goto st416 } goto tr368 st416: p++ st_case_416: switch data[p] { case 80: goto st417 case 112: goto st417 } goto tr368 st417: p++ st_case_417: switch data[p] { case 69: goto st418 case 101: goto st418 } goto tr368 st418: p++ st_case_418: switch data[p] { case 9: goto st331 case 32: goto st331 case 58: goto st332 } goto tr368 st419: p++ st_case_419: switch data[p] { case 69: goto st420 case 101: goto st420 } goto tr368 st420: p++ st_case_420: switch data[p] { case 81: goto st421 case 113: goto st421 } goto tr368 st421: p++ st_case_421: switch data[p] { case 9: goto st422 case 32: goto st422 case 58: goto st423 } goto tr368 st422: p++ st_case_422: switch data[p] { case 9: goto st422 case 32: goto st422 case 58: goto st423 } goto st0 st423: p++ st_case_423: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st423 case 32: goto st423 case 525: goto st430 } if 48 <= _widec && _widec <= 57 { goto tr605 } goto st0 tr605: //line sip.rl:260 msg.CSeq = msg.CSeq * 10 + (int(data[p]) - 0x30) goto st424 st424: p++ st_case_424: //line msg_parse.go:11135 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st425 case 32: goto st425 case 525: goto st427 } if 48 <= _widec && _widec <= 57 { goto tr605 } goto st0 st425: p++ st_case_425: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st425 case 32: goto st425 case 33: goto tr609 case 37: goto tr609 case 39: goto tr609 case 126: goto tr609 case 525: goto st427 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto tr609 } case _widec >= 42: goto tr609 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto tr609 } case _widec >= 65: goto tr609 } default: goto tr609 } goto st0 tr609: //line sip.rl:61 mark = p goto st426 st426: p++ st_case_426: //line msg_parse.go:11213 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 33: goto st426 case 37: goto st426 case 39: goto st426 case 126: goto st426 case 269: goto tr611 } switch { case _widec < 48: switch { case _widec > 43: if 45 <= _widec && _widec <= 46 { goto st426 } case _widec >= 42: goto st426 } case _widec > 57: switch { case _widec > 90: if 95 <= _widec && _widec <= 122 { goto st426 } case _widec >= 65: goto st426 } default: goto st426 } goto st0 st427: p++ st_case_427: if data[p] == 10 { goto st428 } goto st0 st428: p++ st_case_428: switch data[p] { case 9: goto st429 case 32: goto st429 } goto st0 st429: p++ st_case_429: switch data[p] { case 9: goto st429 case 32: goto st429 case 33: goto tr609 case 37: goto tr609 case 39: goto tr609 case 126: goto tr609 } switch { case data[p] < 48: switch { case data[p] > 43: if 45 <= data[p] && data[p] <= 46 { goto tr609 } case data[p] >= 42: goto tr609 } case data[p] > 57: switch { case data[p] > 90: if 95 <= data[p] && data[p] <= 122 { goto tr609 } case data[p] >= 65: goto tr609 } default: goto tr609 } goto st0 st430: p++ st_case_430: if data[p] == 10 { goto st431 } goto st0 st431: p++ st_case_431: switch data[p] { case 9: goto st432 case 32: goto st432 } goto st0 st432: p++ st_case_432: switch data[p] { case 9: goto st432 case 32: goto st432 } if 48 <= data[p] && data[p] <= 57 { goto tr605 } goto st0 st433: p++ st_case_433: switch data[p] { case 65: goto st434 case 97: goto st434 } goto tr368 st434: p++ st_case_434: switch data[p] { case 84: goto st435 case 116: goto st435 } goto tr368 st435: p++ st_case_435: switch data[p] { case 69: goto st436 case 101: goto st436 } goto tr368 st436: p++ st_case_436: switch data[p] { case 9: goto tr619 case 32: goto tr619 case 58: goto tr620 } goto tr368 st437: p++ st_case_437: switch data[p] { case 9: goto tr574 case 32: goto tr574 case 58: goto tr575 case 82: goto st438 case 86: goto st447 case 88: goto st451 case 114: goto st438 case 118: goto st447 case 120: goto st451 } goto tr368 st438: p++ st_case_438: switch data[p] { case 82: goto st439 case 114: goto st439 } goto tr368 st439: p++ st_case_439: switch data[p] { case 79: goto st440 case 111: goto st440 } goto tr368 st440: p++ st_case_440: switch data[p] { case 82: goto st441 case 114: goto st441 } goto tr368 st441: p++ st_case_441: if data[p] == 45 { goto st442 } goto tr368 st442: p++ st_case_442: switch data[p] { case 73: goto st443 case 105: goto st443 } goto tr368 st443: p++ st_case_443: switch data[p] { case 78: goto st444 case 110: goto st444 } goto tr368 st444: p++ st_case_444: switch data[p] { case 70: goto st445 case 102: goto st445 } goto tr368 st445: p++ st_case_445: switch data[p] { case 79: goto st446 case 111: goto st446 } goto tr368 st446: p++ st_case_446: switch data[p] { case 9: goto tr632 case 32: goto tr632 case 58: goto tr633 } goto tr368 st447: p++ st_case_447: switch data[p] { case 69: goto st448 case 101: goto st448 } goto tr368 st448: p++ st_case_448: switch data[p] { case 78: goto st449 case 110: goto st449 } goto tr368 st449: p++ st_case_449: switch data[p] { case 84: goto st450 case 116: goto st450 } goto tr368 st450: p++ st_case_450: switch data[p] { case 9: goto tr637 case 32: goto tr637 case 58: goto tr638 } goto tr368 st451: p++ st_case_451: switch data[p] { case 80: goto st452 case 112: goto st452 } goto tr368 st452: p++ st_case_452: switch data[p] { case 73: goto st453 case 105: goto st453 } goto tr368 st453: p++ st_case_453: switch data[p] { case 82: goto st454 case 114: goto st454 } goto tr368 st454: p++ st_case_454: switch data[p] { case 69: goto st455 case 101: goto st455 } goto tr368 st455: p++ st_case_455: switch data[p] { case 83: goto st456 case 115: goto st456 } goto tr368 st456: p++ st_case_456: switch data[p] { case 9: goto st457 case 32: goto st457 case 58: goto st458 } goto tr368 st457: p++ st_case_457: switch data[p] { case 9: goto st457 case 32: goto st457 case 58: goto st458 } goto st0 st458: p++ st_case_458: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st458 case 32: goto st458 case 525: goto st460 } if 48 <= _widec && _widec <= 57 { goto tr646 } goto st0 tr646: //line sip.rl:508 msg.Expires=0 //line sip.rl:268 msg.Expires = msg.Expires * 10 + (int(data[p]) - 0x30) goto st459 tr648: //line sip.rl:268 msg.Expires = msg.Expires * 10 + (int(data[p]) - 0x30) goto st459 st459: p++ st_case_459: //line msg_parse.go:11653 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st339 } if 48 <= _widec && _widec <= 57 { goto tr648 } goto st0 st460: p++ st_case_460: if data[p] == 10 { goto st461 } goto st0 st461: p++ st_case_461: switch data[p] { case 9: goto st462 case 32: goto st462 } goto st0 st462: p++ st_case_462: switch data[p] { case 9: goto st462 case 32: goto st462 } if 48 <= data[p] && data[p] <= 57 { goto tr646 } goto st0 st463: p++ st_case_463: switch data[p] { case 9: goto tr651 case 32: goto tr651 case 58: goto tr652 case 82: goto st464 case 114: goto st464 } goto tr368 st464: p++ st_case_464: switch data[p] { case 79: goto st465 case 111: goto st465 } goto tr368 st465: p++ st_case_465: switch data[p] { case 77: goto st466 case 109: goto st466 } goto tr368 st466: p++ st_case_466: switch data[p] { case 9: goto tr651 case 32: goto tr651 case 58: goto tr652 } goto tr368 st467: p++ st_case_467: switch data[p] { case 9: goto st351 case 32: goto st351 case 58: goto st352 case 78: goto st468 case 110: goto st468 } goto tr368 st468: p++ st_case_468: if data[p] == 45 { goto st469 } goto tr368 st469: p++ st_case_469: switch data[p] { case 82: goto st470 case 114: goto st470 } goto tr368 st470: p++ st_case_470: switch data[p] { case 69: goto st471 case 101: goto st471 } goto tr368 st471: p++ st_case_471: switch data[p] { case 80: goto st472 case 112: goto st472 } goto tr368 st472: p++ st_case_472: switch data[p] { case 76: goto st473 case 108: goto st473 } goto tr368 st473: p++ st_case_473: switch data[p] { case 89: goto st474 case 121: goto st474 } goto tr368 st474: p++ st_case_474: if data[p] == 45 { goto st475 } goto tr368 st475: p++ st_case_475: switch data[p] { case 84: goto st476 case 116: goto st476 } goto tr368 st476: p++ st_case_476: switch data[p] { case 79: goto st477 case 111: goto st477 } goto tr368 st477: p++ st_case_477: switch data[p] { case 9: goto tr666 case 32: goto tr666 case 58: goto tr667 } goto tr368 st478: p++ st_case_478: switch data[p] { case 9: goto tr668 case 32: goto tr668 case 58: goto tr669 } goto tr368 st479: p++ st_case_479: switch data[p] { case 9: goto st480 case 32: goto st480 case 58: goto st481 } goto tr368 st480: p++ st_case_480: switch data[p] { case 9: goto st480 case 32: goto st480 case 58: goto st481 } goto st0 st481: p++ st_case_481: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st481 case 32: goto st481 case 525: goto st483 } if 48 <= _widec && _widec <= 57 { goto tr672 } goto st0 tr672: //line sip.rl:505 clen=0 //line sip.rl:252 clen = clen * 10 + (int(data[p]) - 0x30) //line sip.rl:508 msg.Expires=0 //line sip.rl:268 msg.Expires = msg.Expires * 10 + (int(data[p]) - 0x30) //line sip.rl:509 msg.MaxForwards=0 //line sip.rl:272 msg.MaxForwards = msg.MaxForwards * 10 + (int(data[p]) - 0x30) //line sip.rl:510 msg.MinExpires=0 //line sip.rl:276 msg.MinExpires = msg.MinExpires * 10 + (int(data[p]) - 0x30) goto st482 tr674: //line sip.rl:252 clen = clen * 10 + (int(data[p]) - 0x30) //line sip.rl:268 msg.Expires = msg.Expires * 10 + (int(data[p]) - 0x30) //line sip.rl:272 msg.MaxForwards = msg.MaxForwards * 10 + (int(data[p]) - 0x30) //line sip.rl:276 msg.MinExpires = msg.MinExpires * 10 + (int(data[p]) - 0x30) goto st482 st482: p++ st_case_482: //line msg_parse.go:11963 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st339 } if 48 <= _widec && _widec <= 57 { goto tr674 } goto st0 st483: p++ st_case_483: if data[p] == 10 { goto st484 } goto st0 st484: p++ st_case_484: switch data[p] { case 9: goto st485 case 32: goto st485 } goto st0 st485: p++ st_case_485: switch data[p] { case 9: goto st485 case 32: goto st485 } if 48 <= data[p] && data[p] <= 57 { goto tr672 } goto st0 st486: p++ st_case_486: switch data[p] { case 9: goto tr540 case 32: goto tr540 case 58: goto tr541 case 65: goto st487 case 73: goto st504 case 97: goto st487 case 105: goto st504 } goto tr368 st487: p++ st_case_487: switch data[p] { case 88: goto st488 case 120: goto st488 } goto tr368 st488: p++ st_case_488: if data[p] == 45 { goto st489 } goto tr368 st489: p++ st_case_489: switch data[p] { case 70: goto st490 case 102: goto st490 } goto tr368 st490: p++ st_case_490: switch data[p] { case 79: goto st491 case 111: goto st491 } goto tr368 st491: p++ st_case_491: switch data[p] { case 82: goto st492 case 114: goto st492 } goto tr368 st492: p++ st_case_492: switch data[p] { case 87: goto st493 case 119: goto st493 } goto tr368 st493: p++ st_case_493: switch data[p] { case 65: goto st494 case 97: goto st494 } goto tr368 st494: p++ st_case_494: switch data[p] { case 82: goto st495 case 114: goto st495 } goto tr368 st495: p++ st_case_495: switch data[p] { case 68: goto st496 case 100: goto st496 } goto tr368 st496: p++ st_case_496: switch data[p] { case 83: goto st497 case 115: goto st497 } goto tr368 st497: p++ st_case_497: switch data[p] { case 9: goto st498 case 32: goto st498 case 58: goto st499 } goto tr368 st498: p++ st_case_498: switch data[p] { case 9: goto st498 case 32: goto st498 case 58: goto st499 } goto st0 st499: p++ st_case_499: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st499 case 32: goto st499 case 525: goto st501 } if 48 <= _widec && _widec <= 57 { goto tr691 } goto st0 tr691: //line sip.rl:509 msg.MaxForwards=0 //line sip.rl:272 msg.MaxForwards = msg.MaxForwards * 10 + (int(data[p]) - 0x30) goto st500 tr693: //line sip.rl:272 msg.MaxForwards = msg.MaxForwards * 10 + (int(data[p]) - 0x30) goto st500 st500: p++ st_case_500: //line msg_parse.go:12188 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st339 } if 48 <= _widec && _widec <= 57 { goto tr693 } goto st0 st501: p++ st_case_501: if data[p] == 10 { goto st502 } goto st0 st502: p++ st_case_502: switch data[p] { case 9: goto st503 case 32: goto st503 } goto st0 st503: p++ st_case_503: switch data[p] { case 9: goto st503 case 32: goto st503 } if 48 <= data[p] && data[p] <= 57 { goto tr691 } goto st0 st504: p++ st_case_504: switch data[p] { case 77: goto st505 case 78: goto st515 case 109: goto st505 case 110: goto st515 } goto tr368 st505: p++ st_case_505: switch data[p] { case 69: goto st506 case 101: goto st506 } goto tr368 st506: p++ st_case_506: if data[p] == 45 { goto st507 } goto tr368 st507: p++ st_case_507: switch data[p] { case 86: goto st508 case 118: goto st508 } goto tr368 st508: p++ st_case_508: switch data[p] { case 69: goto st509 case 101: goto st509 } goto tr368 st509: p++ st_case_509: switch data[p] { case 82: goto st510 case 114: goto st510 } goto tr368 st510: p++ st_case_510: switch data[p] { case 83: goto st511 case 115: goto st511 } goto tr368 st511: p++ st_case_511: switch data[p] { case 73: goto st512 case 105: goto st512 } goto tr368 st512: p++ st_case_512: switch data[p] { case 79: goto st513 case 111: goto st513 } goto tr368 st513: p++ st_case_513: switch data[p] { case 78: goto st514 case 110: goto st514 } goto tr368 st514: p++ st_case_514: switch data[p] { case 9: goto tr707 case 32: goto tr707 case 58: goto tr708 } goto tr368 st515: p++ st_case_515: if data[p] == 45 { goto st516 } goto tr368 st516: p++ st_case_516: switch data[p] { case 69: goto st517 case 101: goto st517 } goto tr368 st517: p++ st_case_517: switch data[p] { case 88: goto st518 case 120: goto st518 } goto tr368 st518: p++ st_case_518: switch data[p] { case 80: goto st519 case 112: goto st519 } goto tr368 st519: p++ st_case_519: switch data[p] { case 73: goto st520 case 105: goto st520 } goto tr368 st520: p++ st_case_520: switch data[p] { case 82: goto st521 case 114: goto st521 } goto tr368 st521: p++ st_case_521: switch data[p] { case 69: goto st522 case 101: goto st522 } goto tr368 st522: p++ st_case_522: switch data[p] { case 83: goto st523 case 115: goto st523 } goto tr368 st523: p++ st_case_523: switch data[p] { case 9: goto st524 case 32: goto st524 case 58: goto st525 } goto tr368 st524: p++ st_case_524: switch data[p] { case 9: goto st524 case 32: goto st524 case 58: goto st525 } goto st0 st525: p++ st_case_525: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st525 case 32: goto st525 case 525: goto st527 } if 48 <= _widec && _widec <= 57 { goto tr719 } goto st0 tr719: //line sip.rl:510 msg.MinExpires=0 //line sip.rl:276 msg.MinExpires = msg.MinExpires * 10 + (int(data[p]) - 0x30) goto st526 tr721: //line sip.rl:276 msg.MinExpires = msg.MinExpires * 10 + (int(data[p]) - 0x30) goto st526 st526: p++ st_case_526: //line msg_parse.go:12486 _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } if _widec == 269 { goto st339 } if 48 <= _widec && _widec <= 57 { goto tr721 } goto st0 st527: p++ st_case_527: if data[p] == 10 { goto st528 } goto st0 st528: p++ st_case_528: switch data[p] { case 9: goto st529 case 32: goto st529 } goto st0 st529: p++ st_case_529: switch data[p] { case 9: goto st529 case 32: goto st529 } if 48 <= data[p] && data[p] <= 57 { goto tr719 } goto st0 st530: p++ st_case_530: switch data[p] { case 9: goto tr637 case 32: goto tr637 case 58: goto tr638 case 82: goto st531 case 114: goto st531 } goto tr368 st531: p++ st_case_531: switch data[p] { case 71: goto st532 case 103: goto st532 } goto tr368 st532: p++ st_case_532: switch data[p] { case 65: goto st533 case 97: goto st533 } goto tr368 st533: p++ st_case_533: switch data[p] { case 78: goto st534 case 110: goto st534 } goto tr368 st534: p++ st_case_534: switch data[p] { case 73: goto st535 case 105: goto st535 } goto tr368 st535: p++ st_case_535: switch data[p] { case 90: goto st536 case 122: goto st536 } goto tr368 st536: p++ st_case_536: switch data[p] { case 65: goto st537 case 97: goto st537 } goto tr368 st537: p++ st_case_537: switch data[p] { case 84: goto st538 case 116: goto st538 } goto tr368 st538: p++ st_case_538: switch data[p] { case 73: goto st539 case 105: goto st539 } goto tr368 st539: p++ st_case_539: switch data[p] { case 79: goto st540 case 111: goto st540 } goto tr368 st540: p++ st_case_540: switch data[p] { case 78: goto st541 case 110: goto st541 } goto tr368 st541: p++ st_case_541: switch data[p] { case 9: goto tr735 case 32: goto tr735 case 58: goto tr736 } goto tr368 st542: p++ st_case_542: switch data[p] { case 45: goto st543 case 82: goto st561 case 114: goto st561 } goto tr368 st543: p++ st_case_543: switch data[p] { case 65: goto st544 case 97: goto st544 } goto tr368 st544: p++ st_case_544: switch data[p] { case 83: goto st545 case 115: goto st545 } goto tr368 st545: p++ st_case_545: switch data[p] { case 83: goto st546 case 115: goto st546 } goto tr368 st546: p++ st_case_546: switch data[p] { case 69: goto st547 case 101: goto st547 } goto tr368 st547: p++ st_case_547: switch data[p] { case 82: goto st548 case 114: goto st548 } goto tr368 st548: p++ st_case_548: switch data[p] { case 84: goto st549 case 116: goto st549 } goto tr368 st549: p++ st_case_549: switch data[p] { case 69: goto st550 case 101: goto st550 } goto tr368 st550: p++ st_case_550: switch data[p] { case 68: goto st551 case 100: goto st551 } goto tr368 st551: p++ st_case_551: if data[p] == 45 { goto st552 } goto tr368 st552: p++ st_case_552: switch data[p] { case 73: goto st553 case 105: goto st553 } goto tr368 st553: p++ st_case_553: switch data[p] { case 68: goto st554 case 100: goto st554 } goto tr368 st554: p++ st_case_554: switch data[p] { case 69: goto st555 case 101: goto st555 } goto tr368 st555: p++ st_case_555: switch data[p] { case 78: goto st556 case 110: goto st556 } goto tr368 st556: p++ st_case_556: switch data[p] { case 84: goto st557 case 116: goto st557 } goto tr368 st557: p++ st_case_557: switch data[p] { case 73: goto st558 case 105: goto st558 } goto tr368 st558: p++ st_case_558: switch data[p] { case 84: goto st559 case 116: goto st559 } goto tr368 st559: p++ st_case_559: switch data[p] { case 89: goto st560 case 121: goto st560 } goto tr368 st560: p++ st_case_560: switch data[p] { case 9: goto tr756 case 32: goto tr756 case 58: goto tr757 } goto tr368 st561: p++ st_case_561: switch data[p] { case 73: goto st562 case 79: goto st568 case 105: goto st562 case 111: goto st568 } goto tr368 st562: p++ st_case_562: switch data[p] { case 79: goto st563 case 111: goto st563 } goto tr368 st563: p++ st_case_563: switch data[p] { case 82: goto st564 case 114: goto st564 } goto tr368 st564: p++ st_case_564: switch data[p] { case 73: goto st565 case 105: goto st565 } goto tr368 st565: p++ st_case_565: switch data[p] { case 84: goto st566 case 116: goto st566 } goto tr368 st566: p++ st_case_566: switch data[p] { case 89: goto st567 case 121: goto st567 } goto tr368 st567: p++ st_case_567: switch data[p] { case 9: goto tr765 case 32: goto tr765 case 58: goto tr766 } goto tr368 st568: p++ st_case_568: switch data[p] { case 88: goto st569 case 120: goto st569 } goto tr368 st569: p++ st_case_569: switch data[p] { case 89: goto st570 case 121: goto st570 } goto tr368 st570: p++ st_case_570: if data[p] == 45 { goto st571 } goto tr368 st571: p++ st_case_571: switch data[p] { case 65: goto st572 case 82: goto st593 case 97: goto st572 case 114: goto st593 } goto tr368 st572: p++ st_case_572: switch data[p] { case 85: goto st573 case 117: goto st573 } goto tr368 st573: p++ st_case_573: switch data[p] { case 84: goto st574 case 116: goto st574 } goto tr368 st574: p++ st_case_574: switch data[p] { case 72: goto st575 case 104: goto st575 } goto tr368 st575: p++ st_case_575: switch data[p] { case 69: goto st576 case 79: goto st584 case 101: goto st576 case 111: goto st584 } goto tr368 st576: p++ st_case_576: switch data[p] { case 78: goto st577 case 110: goto st577 } goto tr368 st577: p++ st_case_577: switch data[p] { case 84: goto st578 case 116: goto st578 } goto tr368 st578: p++ st_case_578: switch data[p] { case 73: goto st579 case 105: goto st579 } goto tr368 st579: p++ st_case_579: switch data[p] { case 67: goto st580 case 99: goto st580 } goto tr368 st580: p++ st_case_580: switch data[p] { case 65: goto st581 case 97: goto st581 } goto tr368 st581: p++ st_case_581: switch data[p] { case 84: goto st582 case 116: goto st582 } goto tr368 st582: p++ st_case_582: switch data[p] { case 69: goto st583 case 101: goto st583 } goto tr368 st583: p++ st_case_583: switch data[p] { case 9: goto tr784 case 32: goto tr784 case 58: goto tr785 } goto tr368 st584: p++ st_case_584: switch data[p] { case 82: goto st585 case 114: goto st585 } goto tr368 st585: p++ st_case_585: switch data[p] { case 73: goto st586 case 105: goto st586 } goto tr368 st586: p++ st_case_586: switch data[p] { case 90: goto st587 case 122: goto st587 } goto tr368 st587: p++ st_case_587: switch data[p] { case 65: goto st588 case 97: goto st588 } goto tr368 st588: p++ st_case_588: switch data[p] { case 84: goto st589 case 116: goto st589 } goto tr368 st589: p++ st_case_589: switch data[p] { case 73: goto st590 case 105: goto st590 } goto tr368 st590: p++ st_case_590: switch data[p] { case 79: goto st591 case 111: goto st591 } goto tr368 st591: p++ st_case_591: switch data[p] { case 78: goto st592 case 110: goto st592 } goto tr368 st592: p++ st_case_592: switch data[p] { case 9: goto tr794 case 32: goto tr794 case 58: goto tr795 } goto tr368 st593: p++ st_case_593: switch data[p] { case 69: goto st594 case 101: goto st594 } goto tr368 st594: p++ st_case_594: switch data[p] { case 81: goto st595 case 113: goto st595 } goto tr368 st595: p++ st_case_595: switch data[p] { case 85: goto st596 case 117: goto st596 } goto tr368 st596: p++ st_case_596: switch data[p] { case 73: goto st597 case 105: goto st597 } goto tr368 st597: p++ st_case_597: switch data[p] { case 82: goto st598 case 114: goto st598 } goto tr368 st598: p++ st_case_598: switch data[p] { case 69: goto st599 case 101: goto st599 } goto tr368 st599: p++ st_case_599: switch data[p] { case 9: goto tr802 case 32: goto tr802 case 58: goto tr803 } goto tr368 st600: p++ st_case_600: switch data[p] { case 9: goto tr804 case 32: goto tr804 case 58: goto tr805 case 69: goto st601 case 79: goto st656 case 101: goto st601 case 111: goto st656 } goto tr368 st601: p++ st_case_601: switch data[p] { case 67: goto st602 case 70: goto st612 case 77: goto st623 case 80: goto st636 case 81: goto st642 case 84: goto st647 case 99: goto st602 case 102: goto st612 case 109: goto st623 case 112: goto st636 case 113: goto st642 case 116: goto st647 } goto tr368 st602: p++ st_case_602: switch data[p] { case 79: goto st603 case 111: goto st603 } goto tr368 st603: p++ st_case_603: switch data[p] { case 82: goto st604 case 114: goto st604 } goto tr368 st604: p++ st_case_604: switch data[p] { case 68: goto st605 case 100: goto st605 } goto tr368 st605: p++ st_case_605: if data[p] == 45 { goto st606 } goto tr368 st606: p++ st_case_606: switch data[p] { case 82: goto st607 case 114: goto st607 } goto tr368 st607: p++ st_case_607: switch data[p] { case 79: goto st608 case 111: goto st608 } goto tr368 st608: p++ st_case_608: switch data[p] { case 85: goto st609 case 117: goto st609 } goto tr368 st609: p++ st_case_609: switch data[p] { case 84: goto st610 case 116: goto st610 } goto tr368 st610: p++ st_case_610: switch data[p] { case 69: goto st611 case 101: goto st611 } goto tr368 st611: p++ st_case_611: switch data[p] { case 9: goto tr823 case 32: goto tr823 case 58: goto tr824 } goto tr368 st612: p++ st_case_612: switch data[p] { case 69: goto st613 case 101: goto st613 } goto tr368 st613: p++ st_case_613: switch data[p] { case 82: goto st614 case 114: goto st614 } goto tr368 st614: p++ st_case_614: switch data[p] { case 45: goto st615 case 82: goto st618 case 114: goto st618 } goto tr368 st615: p++ st_case_615: switch data[p] { case 84: goto st616 case 116: goto st616 } goto tr368 st616: p++ st_case_616: switch data[p] { case 79: goto st617 case 111: goto st617 } goto tr368 st617: p++ st_case_617: switch data[p] { case 9: goto tr804 case 32: goto tr804 case 58: goto tr805 } goto tr368 st618: p++ st_case_618: switch data[p] { case 69: goto st619 case 101: goto st619 } goto tr368 st619: p++ st_case_619: switch data[p] { case 68: goto st620 case 100: goto st620 } goto tr368 st620: p++ st_case_620: if data[p] == 45 { goto st621 } goto tr368 st621: p++ st_case_621: switch data[p] { case 66: goto st622 case 98: goto st622 } goto tr368 st622: p++ st_case_622: switch data[p] { case 89: goto st329 case 121: goto st329 } goto tr368 st623: p++ st_case_623: switch data[p] { case 79: goto st624 case 111: goto st624 } goto tr368 st624: p++ st_case_624: switch data[p] { case 84: goto st625 case 116: goto st625 } goto tr368 st625: p++ st_case_625: switch data[p] { case 69: goto st626 case 101: goto st626 } goto tr368 st626: p++ st_case_626: if data[p] == 45 { goto st627 } goto tr368 st627: p++ st_case_627: switch data[p] { case 80: goto st628 case 112: goto st628 } goto tr368 st628: p++ st_case_628: switch data[p] { case 65: goto st629 case 97: goto st629 } goto tr368 st629: p++ st_case_629: switch data[p] { case 82: goto st630 case 114: goto st630 } goto tr368 st630: p++ st_case_630: switch data[p] { case 84: goto st631 case 116: goto st631 } goto tr368 st631: p++ st_case_631: switch data[p] { case 89: goto st632 case 121: goto st632 } goto tr368 st632: p++ st_case_632: if data[p] == 45 { goto st633 } goto tr368 st633: p++ st_case_633: switch data[p] { case 73: goto st634 case 105: goto st634 } goto tr368 st634: p++ st_case_634: switch data[p] { case 68: goto st635 case 100: goto st635 } goto tr368 st635: p++ st_case_635: switch data[p] { case 9: goto tr847 case 32: goto tr847 case 58: goto tr848 } goto tr368 st636: p++ st_case_636: switch data[p] { case 76: goto st637 case 108: goto st637 } goto tr368 st637: p++ st_case_637: switch data[p] { case 89: goto st638 case 121: goto st638 } goto tr368 st638: p++ st_case_638: if data[p] == 45 { goto st639 } goto tr368 st639: p++ st_case_639: switch data[p] { case 84: goto st640 case 116: goto st640 } goto tr368 st640: p++ st_case_640: switch data[p] { case 79: goto st641 case 111: goto st641 } goto tr368 st641: p++ st_case_641: switch data[p] { case 9: goto tr854 case 32: goto tr854 case 58: goto tr855 } goto tr368 st642: p++ st_case_642: switch data[p] { case 85: goto st643 case 117: goto st643 } goto tr368 st643: p++ st_case_643: switch data[p] { case 73: goto st644 case 105: goto st644 } goto tr368 st644: p++ st_case_644: switch data[p] { case 82: goto st645 case 114: goto st645 } goto tr368 st645: p++ st_case_645: switch data[p] { case 69: goto st646 case 101: goto st646 } goto tr368 st646: p++ st_case_646: switch data[p] { case 9: goto tr860 case 32: goto tr860 case 58: goto tr861 } goto tr368 st647: p++ st_case_647: switch data[p] { case 82: goto st648 case 114: goto st648 } goto tr368 st648: p++ st_case_648: switch data[p] { case 89: goto st649 case 121: goto st649 } goto tr368 st649: p++ st_case_649: if data[p] == 45 { goto st650 } goto tr368 st650: p++ st_case_650: switch data[p] { case 65: goto st651 case 97: goto st651 } goto tr368 st651: p++ st_case_651: switch data[p] { case 70: goto st652 case 102: goto st652 } goto tr368 st652: p++ st_case_652: switch data[p] { case 84: goto st653 case 116: goto st653 } goto tr368 st653: p++ st_case_653: switch data[p] { case 69: goto st654 case 101: goto st654 } goto tr368 st654: p++ st_case_654: switch data[p] { case 82: goto st655 case 114: goto st655 } goto tr368 st655: p++ st_case_655: switch data[p] { case 9: goto tr870 case 32: goto tr870 case 58: goto tr871 } goto tr368 st656: p++ st_case_656: switch data[p] { case 85: goto st657 case 117: goto st657 } goto tr368 st657: p++ st_case_657: switch data[p] { case 84: goto st658 case 116: goto st658 } goto tr368 st658: p++ st_case_658: switch data[p] { case 69: goto st659 case 101: goto st659 } goto tr368 st659: p++ st_case_659: switch data[p] { case 9: goto tr875 case 32: goto tr875 case 58: goto tr876 } goto tr368 st660: p++ st_case_660: switch data[p] { case 9: goto tr877 case 32: goto tr877 case 58: goto tr878 case 69: goto st661 case 85: goto st666 case 101: goto st661 case 117: goto st666 } goto tr368 st661: p++ st_case_661: switch data[p] { case 82: goto st662 case 114: goto st662 } goto tr368 st662: p++ st_case_662: switch data[p] { case 86: goto st663 case 118: goto st663 } goto tr368 st663: p++ st_case_663: switch data[p] { case 69: goto st664 case 101: goto st664 } goto tr368 st664: p++ st_case_664: switch data[p] { case 82: goto st665 case 114: goto st665 } goto tr368 st665: p++ st_case_665: switch data[p] { case 9: goto tr885 case 32: goto tr885 case 58: goto tr886 } goto tr368 st666: p++ st_case_666: switch data[p] { case 66: goto st667 case 80: goto st672 case 98: goto st667 case 112: goto st672 } goto tr368 st667: p++ st_case_667: switch data[p] { case 74: goto st668 case 106: goto st668 } goto tr368 st668: p++ st_case_668: switch data[p] { case 69: goto st669 case 101: goto st669 } goto tr368 st669: p++ st_case_669: switch data[p] { case 67: goto st670 case 99: goto st670 } goto tr368 st670: p++ st_case_670: switch data[p] { case 84: goto st671 case 116: goto st671 } goto tr368 st671: p++ st_case_671: switch data[p] { case 9: goto tr877 case 32: goto tr877 case 58: goto tr878 } goto tr368 st672: p++ st_case_672: switch data[p] { case 80: goto st673 case 112: goto st673 } goto tr368 st673: p++ st_case_673: switch data[p] { case 79: goto st674 case 111: goto st674 } goto tr368 st674: p++ st_case_674: switch data[p] { case 82: goto st675 case 114: goto st675 } goto tr368 st675: p++ st_case_675: switch data[p] { case 84: goto st676 case 116: goto st676 } goto tr368 st676: p++ st_case_676: switch data[p] { case 69: goto st677 case 101: goto st677 } goto tr368 st677: p++ st_case_677: switch data[p] { case 68: goto st478 case 100: goto st478 } goto tr368 st678: p++ st_case_678: switch data[p] { case 9: goto tr898 case 32: goto tr898 case 58: goto tr899 case 73: goto st679 case 79: goto st687 case 105: goto st679 case 111: goto st687 } goto tr368 st679: p++ st_case_679: switch data[p] { case 77: goto st680 case 109: goto st680 } goto tr368 st680: p++ st_case_680: switch data[p] { case 69: goto st681 case 101: goto st681 } goto tr368 st681: p++ st_case_681: switch data[p] { case 83: goto st682 case 115: goto st682 } goto tr368 st682: p++ st_case_682: switch data[p] { case 84: goto st683 case 116: goto st683 } goto tr368 st683: p++ st_case_683: switch data[p] { case 65: goto st684 case 97: goto st684 } goto tr368 st684: p++ st_case_684: switch data[p] { case 77: goto st685 case 109: goto st685 } goto tr368 st685: p++ st_case_685: switch data[p] { case 80: goto st686 case 112: goto st686 } goto tr368 st686: p++ st_case_686: switch data[p] { case 9: goto tr909 case 32: goto tr909 case 58: goto tr910 } goto tr368 st687: p++ st_case_687: switch data[p] { case 9: goto tr898 case 32: goto tr898 case 58: goto tr899 } goto tr368 st688: p++ st_case_688: switch data[p] { case 9: goto tr911 case 32: goto tr911 case 58: goto tr912 case 78: goto st689 case 83: goto st699 case 110: goto st689 case 115: goto st699 } goto tr368 st689: p++ st_case_689: switch data[p] { case 83: goto st690 case 115: goto st690 } goto tr368 st690: p++ st_case_690: switch data[p] { case 85: goto st691 case 117: goto st691 } goto tr368 st691: p++ st_case_691: switch data[p] { case 80: goto st692 case 112: goto st692 } goto tr368 st692: p++ st_case_692: switch data[p] { case 80: goto st693 case 112: goto st693 } goto tr368 st693: p++ st_case_693: switch data[p] { case 79: goto st694 case 111: goto st694 } goto tr368 st694: p++ st_case_694: switch data[p] { case 82: goto st695 case 114: goto st695 } goto tr368 st695: p++ st_case_695: switch data[p] { case 84: goto st696 case 116: goto st696 } goto tr368 st696: p++ st_case_696: switch data[p] { case 69: goto st697 case 101: goto st697 } goto tr368 st697: p++ st_case_697: switch data[p] { case 68: goto st698 case 100: goto st698 } goto tr368 st698: p++ st_case_698: switch data[p] { case 9: goto tr924 case 32: goto tr924 case 58: goto tr925 } goto tr368 st699: p++ st_case_699: switch data[p] { case 69: goto st700 case 101: goto st700 } goto tr368 st700: p++ st_case_700: switch data[p] { case 82: goto st701 case 114: goto st701 } goto tr368 st701: p++ st_case_701: if data[p] == 45 { goto st702 } goto tr368 st702: p++ st_case_702: switch data[p] { case 65: goto st703 case 97: goto st703 } goto tr368 st703: p++ st_case_703: switch data[p] { case 71: goto st704 case 103: goto st704 } goto tr368 st704: p++ st_case_704: switch data[p] { case 69: goto st705 case 101: goto st705 } goto tr368 st705: p++ st_case_705: switch data[p] { case 78: goto st706 case 110: goto st706 } goto tr368 st706: p++ st_case_706: switch data[p] { case 84: goto st707 case 116: goto st707 } goto tr368 st707: p++ st_case_707: switch data[p] { case 9: goto tr934 case 32: goto tr934 case 58: goto tr935 } goto tr368 st708: p++ st_case_708: switch data[p] { case 9: goto st709 case 32: goto st709 case 58: goto st710 case 73: goto st714 case 105: goto st714 } goto tr368 st709: p++ st_case_709: switch data[p] { case 9: goto st709 case 32: goto st709 case 58: goto st710 } goto st0 st710: p++ st_case_710: _widec = int16(data[p]) if 13 <= data[p] && data[p] <= 13 { _widec = 256 + (int16(data[p]) - 0) if lookAheadWSP(data, p, pe) { _widec += 256 } } switch _widec { case 9: goto st710 case 32: goto st710 case 269: goto tr939 case 525: goto st711 } switch { case _widec > 12: if 14 <= _widec { goto tr939 } default: goto tr939 } goto st0 st711: p++ st_case_711: if data[p] == 10 { goto st712 } goto st0 st712: p++ st_case_712: switch data[p] { case 9: goto st713 case 32: goto st713 } goto st0 st713: p++ st_case_713: switch data[p] { case 9: goto st713 case 32: goto st713 } goto tr939 st714: p++ st_case_714: switch data[p] { case 65: goto st715 case 97: goto st715 } goto tr368 st715: p++ st_case_715: switch data[p] { case 9: goto st709 case 32: goto st709 case 58: goto st710 } goto tr368 st716: p++ st_case_716: switch data[p] { case 65: goto st717 case 87: goto st723 case 97: goto st717 case 119: goto st723 } goto tr368 st717: p++ st_case_717: switch data[p] { case 82: goto st718 case 114: goto st718 } goto tr368 st718: p++ st_case_718: switch data[p] { case 78: goto st719 case 110: goto st719 } goto tr368 st719: p++ st_case_719: switch data[p] { case 73: goto st720 case 105: goto st720 } goto tr368 st720: p++ st_case_720: switch data[p] { case 78: goto st721 case 110: goto st721 } goto tr368 st721: p++ st_case_721: switch data[p] { case 71: goto st722 case 103: goto st722 } goto tr368 st722: p++ st_case_722: switch data[p] { case 9: goto tr951 case 32: goto tr951 case 58: goto tr952 } goto tr368 st723: p++ st_case_723: switch data[p] { case 87: goto st724 case 119: goto st724 } goto tr368 st724: p++ st_case_724: if data[p] == 45 { goto st725 } goto tr368 st725: p++ st_case_725: switch data[p] { case 65: goto st726 case 97: goto st726 } goto tr368 st726: p++ st_case_726: switch data[p] { case 85: goto st727 case 117: goto st727 } goto tr368 st727: p++ st_case_727: switch data[p] { case 84: goto st728 case 116: goto st728 } goto tr368 st728: p++ st_case_728: switch data[p] { case 72: goto st729 case 104: goto st729 } goto tr368 st729: p++ st_case_729: switch data[p] { case 69: goto st730 case 101: goto st730 } goto tr368 st730: p++ st_case_730: switch data[p] { case 78: goto st731 case 110: goto st731 } goto tr368 st731: p++ st_case_731: switch data[p] { case 84: goto st732 case 116: goto st732 } goto tr368 st732: p++ st_case_732: switch data[p] { case 73: goto st733 case 105: goto st733 } goto tr368 st733: p++ st_case_733: switch data[p] { case 67: goto st734 case 99: goto st734 } goto tr368 st734: p++ st_case_734: switch data[p] { case 65: goto st735 case 97: goto st735 } goto tr368 st735: p++ st_case_735: switch data[p] { case 84: goto st736 case 116: goto st736 } goto tr368 st736: p++ st_case_736: switch data[p] { case 69: goto st737 case 101: goto st737 } goto tr368 st737: p++ st_case_737: switch data[p] { case 9: goto tr967 case 32: goto tr967 case 58: goto tr968 } goto tr368 st738: p++ st_case_738: if data[p] == 10 { goto tr969 } goto st0 st_out: if p == eof { switch cs { case 247, 248, 254, 255, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285, 286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, 328, 329, 330, 345, 346, 347, 348, 349, 350, 359, 360, 361, 362, 363, 364, 365, 366, 367, 373, 374, 375, 376, 377, 378, 379, 380, 381, 382, 383, 384, 385, 386, 387, 388, 389, 390, 391, 392, 393, 394, 395, 396, 397, 398, 399, 400, 401, 402, 403, 404, 405, 406, 407, 408, 415, 416, 417, 418, 419, 420, 421, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 453, 454, 455, 456, 463, 464, 465, 466, 467, 468, 469, 470, 471, 472, 473, 474, 475, 476, 477, 478, 479, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615, 616, 617, 618, 619, 620, 621, 622, 623, 624, 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, 650, 651, 652, 653, 654, 655, 656, 657, 658, 659, 660, 661, 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, 692, 693, 694, 695, 696, 697, 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, 708, 714, 715, 716, 717, 718, 719, 720, 721, 722, 723, 724, 725, 726, 727, 728, 729, 730, 731, 732, 733, 734, 735, 736, 737: //line sip.rl:177 p-- {goto st239 } case 751: //line sip.rl:242 *addrp = addr addrp = &addr.Next addr = nil //line msg_parse.go:14764 } } _out: {} } //line msg_parse.rl:49 if cs < msg_first_final { if p == pe { return nil, MsgIncompleteError{data} } else { return nil, MsgParseError{Msg: data, Offset: p} } } if clen > 0 { if clen != len(data) - p { return nil, errors.New(fmt.Sprintf("Content-Length incorrect: %d != %d", clen, len(data) - p)) } if ctype == sdp.ContentType { ms, err := sdp.Parse(string(data[p:len(data)])) if err != nil { return nil, err } msg.Payload = ms } else { msg.Payload = &MiscPayload{T: ctype, D: data[p:len(data)]} } } return msg, nil } func lookAheadWSP(data []byte, p, pe int) bool { return p + 2 < pe && (data[p+2] == ' ' || data[p+2] == '\t') } func lastAddr(addrp **Addr) **Addr { if *addrp == nil { return addrp } else { return lastAddr(&(*addrp).Next) } }