1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 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 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 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 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 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 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257
|
/* SPDX-FileCopyrightText: 2009-2023 Greenbone AG
*
* SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "networking.c"
#include <cgreen/cgreen.h>
#include <cgreen/mocks.h>
Describe (networking);
BeforeEach (networking)
{
cgreen_mocks_are (loose_mocks);
}
AfterEach (networking)
{
}
Ensure (networking, validate_port_range)
{
gchar *ports_all_privileged_tcp;
gchar *ports_all_privileged_tcp_and_udp;
gchar *ports_all_tcp;
gchar *ports_openvas_default;
gchar *ports_all_iana_assigned_tcp_and_udp_2020_02_12;
gchar *ports_all_tcp_and_nmap_5_51_top_100_udp;
gchar *ports_all_tcp_and_nmap_5_51_top_1000_udp;
gchar *ports_nmap_5_51_top_2000_tcp_and_top_100_udp;
gchar *ports_all_iana_assigned_tcp_2020_02_12;
gchar *ports_web_services;
gchar *(*ports) (const gchar *, ...) G_GNUC_NULL_TERMINATED;
ports = g_strconcat;
/* No port range provided. */
assert_that (validate_port_range (NULL), is_equal_to (1));
assert_that (validate_port_range (""), is_equal_to (1));
/* '\0' on end. */
assert_that (validate_port_range ("\0"), is_equal_to (1));
assert_that (validate_port_range ("T:1-5,7,9,U:1-3,5,7,9,\\0"),
is_equal_to (1));
/* Newline in between range description.*/
assert_that (validate_port_range ("\nT:1-\n5,7,9,\nU:1-3,5\n,7,9\n"),
is_equal_to (1));
/* Port <= 0 or Port > 65535. */
assert_that (validate_port_range ("0"), is_equal_to (1));
assert_that (validate_port_range ("-9"), is_equal_to (1));
assert_that (validate_port_range ("1,0,6,7"), is_equal_to (1));
assert_that (validate_port_range ("2,-9,4"), is_equal_to (1));
assert_that (validate_port_range ("90000"), is_equal_to (1));
/* Illegal Ranges. */
assert_that (validate_port_range ("T:-"), is_equal_to (1));
assert_that (validate_port_range ("T:-9"), is_equal_to (1));
assert_that (validate_port_range ("T:0-"), is_equal_to (1));
assert_that (validate_port_range ("T:0-9"), is_equal_to (1));
assert_that (validate_port_range ("T:90000-"), is_equal_to (1));
assert_that (validate_port_range ("T:90000-90010"), is_equal_to (1));
assert_that (validate_port_range ("T:9-\\0"), is_equal_to (1));
assert_that (validate_port_range ("T:9-0"), is_equal_to (1));
assert_that (validate_port_range ("T:9-90000"), is_equal_to (1));
assert_that (validate_port_range ("T:100-9"), is_equal_to (1));
assert_that (validate_port_range ("0-"), is_equal_to (1));
assert_that (validate_port_range ("0-9"), is_equal_to (1));
assert_that (validate_port_range ("9-"), is_equal_to (1));
assert_that (validate_port_range ("9-\\0"), is_equal_to (1));
assert_that (validate_port_range ("9-8"), is_equal_to (1));
assert_that (validate_port_range ("90000-90010"), is_equal_to (1));
assert_that (validate_port_range ("100-9"), is_equal_to (1));
assert_that (validate_port_range ("T,U"), is_equal_to (1));
assert_that (validate_port_range ("T :\n: 1-2,U"), is_equal_to (1));
assert_that (validate_port_range ("T :: 1-2,U"), is_equal_to (1));
assert_that (validate_port_range ("T:2=2"), is_equal_to (1));
assert_that (validate_port_range ("T:1.2-5,4.5"), is_equal_to (1));
/* Legal single ports.*/
assert_that (validate_port_range ("6,6,6,6,10,20"), is_equal_to (0));
assert_that (validate_port_range ("T:7, U:7"), is_equal_to (0));
assert_that (validate_port_range ("T:7, U:9"), is_equal_to (0));
assert_that (validate_port_range ("9"), is_equal_to (0));
assert_that (validate_port_range ("U:,T:"), is_equal_to (0)); /* is ignored */
assert_that (validate_port_range ("1,2,,,,,,,\n\n\n\n\n\n,,,5"),
is_equal_to (0));
/* Example in Documentation. */
assert_that (validate_port_range ("T:1-5,7,9,U:1-3,5,7,9"), is_equal_to (0));
/* Treat newlines like commas. */
assert_that (validate_port_range ("1,2,\n,\n4,6"), is_equal_to (0));
assert_that (validate_port_range ("T:1-5,7,9,\nU:1-3,5\n,7,9"),
is_equal_to (0));
/* Ranges without type specifier. */
assert_that (validate_port_range ("6-9,7,7,10-20,20"), is_equal_to (0));
/* Allow whitespace after T/U and anywhere else. */
assert_that (
validate_port_range (" T: 1 -5, 7 ,9, \nU :1- 3,5 \n,7,9"),
is_equal_to (0));
assert_that (validate_port_range (
" T: 1 -5, 7 ,9, \nU :1- 3,5 \n,7,9, T : 5 -7"),
is_equal_to (0));
assert_that (validate_port_range (" T : 1"), is_equal_to (0));
/* Some standard port lists.*/
ports_all_iana_assigned_tcp_2020_02_12 = ports (
"T:1-50,52-80,82-99,101-113,115-224,242-248,256-257,259-271,280-284,286-",
"287,308-324,333,344-584,586-658,660-702,704-707,709-715,729-731,741-742,",
"744,747-754,758-765,767,769-777,780,800-802,810,828-833,847-848,853-854,",
"860-862,873,886-888,900-903,910-913,953,989-1001,1010,1021-1027,1029,"
"1033-",
"1108,1110-1490,1492-1782,1784-2193,2197-2258,2260-2368,2370-2377,2379-",
"2681,2683-2793,2795-2824,2826-2872,2874-2924,2926-3091,3093-3125,3127-",
"3300,3302-3321,3326-3366,3372-3402,3405-3545,3547-3693,3695-3993,3995-",
"4047,4049-4143,4145-4193,4197,4199,4300-4314,4316,4320-4323,4325-4336,",
"4340-4362,4366,4368-4379,4389-4396,4400-4423,4425-4433,4441-4458,4484-",
"4488,4500,4534-4538,4545-4559,4563,4566-4570,4573,4590-4605,4621,4646,",
"4658-4692,4700-4704,4711,4725-4733,4737-4747,4749-4756,4774,4784-4791,",
"4800-4804,4827,4837-4851,4867-4871,4876-4885,4888-4889,4894,4899-4902,",
"4912-4915,4936-4937,4940-4942,4949-4953,4969-4971,4980,4984-4991,4999-",
"5015,5020-5034,5042-5075,5078-5087,5092-5094,5099-5107,5111-5112,5114-",
"5117,5120,5133-5137,5145-5146,5150-5157,5161-5168,5172,5190-5197,5200-",
"5203,5209,5215,5221-5237,5245-5254,5264-5265,5269-5272,5280-5282,5298-",
"5310,5312-5318,5320-5321,5343-5344,5349-5364,5397-5437,5443,5445,5450,",
"5453-5456,5461-5465,5470-5475,5500-5507,5550,5553-5557,5565-5569,5573-",
"5575,5579-5586,5597-5605,5618,5627-5639,5646,5666,5670-5684,5687-5689,",
"5693,5696,5700,5705,5713-5730,5741-5748,5750,5755,5757,5766-5771,5777,",
"5780-5787,5793-5794,5813-5814,5841-5842,5859,5863,5868,5883,5900,5910-",
"5913,5963,5968-5969,5984-5993,5999,6064-6066,6068-6077,6080-6088,6099-",
"6118,6121-6124,6130,6133,6140-6149,6159-6163,6200-6201,6209,6222,6241-",
"6244,6251-6253,6267-6269,6300-6301,6306,6315-6317,6320-6322,6324-6326,",
"6343-6344,6346-6347,6350,6355,6360,6363,6370,6379,6382,6389-6390,6417-",
"6421,6432,6442-6446,6455-6456,6464,6471,6480-6489,6500-6503,6505-6511,",
"6513-6515,6543-6544,6547-6551,6558,6566,6568,6579-6583,6600-6602,6619-",
"6629,6632-6636,6640,6653,6655-6657,6670-6673,6678-6679,6687-6690,6696-",
"6697,6701-6706,6714-6716,6767-6771,6777-6778,6784-6791,6801,6817,6831,",
"6841-6842,6850,6868,6888,6900-6901,6924,6935-6936,6946,6951,6961-6966,",
"6969-6970,6997-7026,7030-7031,7040,7070-7073,7080,7088,7095,7099-7101,",
"7107,7117,7121,7128-7129,7161-7174,7181,7200-7202,7215-7216,7227-7229,",
"7235-7237,7244,7262,7272-7283,7365,7391-7395,7397,7400-7402,7410-7411,",
"7420-7421,7426-7431,7437,7443,7471,7473-7474,7478,7491,7500-7501,7508-",
"7511,7542-7551,7560,7563,7566,7569-7570,7574,7588,7606,7624,7626-7631,",
"7633,7648,7663,7672-7677,7680,7683,7687,7689,7697,7700-7701,7707-7708,",
"7720,7724-7728,7734,7738,7741-7744,7747,7775,7777-7779,7781,7784,7786-",
"7787,7789,7794,7797-7802,7810,7845-7847,7869-7872,7878,7880,7887,7900-",
"7903,7913,7932-7933,7962,7967,7979-7982,7997-8009,8015-8016,8019-8023,",
"8025-8026,8032-8034,8040-8044,8051-8060,8066-8067,8070,8074,8077,8080-",
"8084,8086-8088,8090-8091,8097,8100-8102,8111,8115-8118,8121-8122,8128-",
"8132,8140,8148-8149,8153,8160-8162,8181-8184,8190-8192,8194-8195,8199-",
"8202,8204-8208,8211,8230-8232,8243,8266,8270,8276,8280,8282,8292-8294,",
"8300-8301,8313,8320-8322,8351,8376-8380,8383-8384,8400-8405,8415-8417,",
"8423,8442-8445,8450,8457,8470-8474,8500-8503,8554-8555,8567,8600,8609-",
"8615,8665-8666,8675,8686,8688,8699,8710-8711,8732-8733,8750,8763-8770,",
"8778,8786-8787,8793,8800,8804-8805,8807-8809,8873,8880-8881,8883,8888-",
"8894,8899-8901,8910-8913,8937,8953-8954,8980-8981,8989-8991,8997-9002,",
"9005,9007-9011,9020-9026,9050-9051,9060,9080-9081,9083-9093,9100-9107,",
"9111,9119,9122-9123,9131,9160-9164,9191,9200-9217,9222,9255,9277-9287,",
"9292-9295,9300,9306,9312,9318,9321,9339,9343-9346,9374,9380,9387-9390,",
"9396-9397,9400-9402,9418,9443-9445,9450,9500,9522,9535-9536,9555,9592-",
"9600,9612,9614,9616-9618,9628-9632,9640,9666-9668,9694-9695,9700,9747,",
"9750,9753,9762,9800-9802,9875-9878,9888-9889,9898-9900,9903,9909,9911,",
"9925,9950-9956,9966,9978-9979,9981,9987-9988,9990-10010,10020,10023,"
"10050-",
"10051,10055,10080-10081,10100-10104,10107,10110-10111,10113-10117,10125,",
"10128-10129,10160-10162,10200-10201,10252-10253,10260-10261,10288,10321,",
"10439,10443,10500,10540-10544,10548,10631,10800,10805,10809-10810,10860,",
"10880,10933,10990,11000-11001,11095,11103-11106,11108-11112,11161-11165,",
"11171-11175,11201-11202,11208,11211,11319-11321,11367,11371,11430,11489,",
"11600,11623,11720,11723,11751,11796,11876-11877,11967,11971,12000-12010,",
"12012-12013,12109,12121,12168,12172,12300,12302,12321-12322,12345,12753,",
"12865,13160,13216-13218,13223-13224,13400,13720-13722,13724,13782-13783,",
"13785-13786,13818-13823,13894,13929-13930,14000-14002,14033-14034,14141-",
"14143,14145,14149-14150,14154,14250,14414,14500,14936-14937,15000,15002,",
"15118,15345,15363,15555,15660,15740,15998-16003,16020-16021,16161-16162,",
"16309-16311,16360-16361,16367-16368,16384-16385,16619,16665-16666,16789,",
"16900,16950,16991-16995,17007,17184-17185,17219-17225,17234-17235,17500,",
"17555,17729,17754-17756,17777,18000,18104,18136,18181-18187,18241-18243,",
"18262,18463,18634-18635,18668,18769,18881,18888,19000,19007,19020,19191,",
"19194,19220,19283,19315,19398,19410-19412,19539-19541,19788,19998-20003,",
"20005,20012-20014,20034,20046,20048-20049,20057,20167,20202,20222,20480,",
"20670,20999-21000,21010,21212-21213,21221,21553-21554,21590,21800,21845-",
"21849,22000-22005,22125,22128,22222,22273,22305,22335,22343,22347,22350-",
"22351,22537,22555,22763,22800,22951,23000-23005,23053,23272,23294,23333,",
"23400-23402,23456-23457,23546,24000-24006,24242,24249,24321-24323,24386,",
"24465,24554,24577,24666,24676-24678,24680,24754,24850,24922,25000-25009,",
"25576,25604,25793,25900-25903,25954-25955,26000,26133,26208,26257,26260-",
"26263,26486-26487,26489,27010,27017,27345,27442,27504,27782,27876,27999-",
"28001,28010,28119,28200,28240,28589,29118,29167-29168,29999-30004,30100,",
"30260,30400,30832,30999,31016,31020,31029,31400,31416,31457,31620,31685,",
"31765,31948-31949,32034,32249,32400,32483,32635-32636,32767-32777,32801,",
"32811,32896,33000,33060,33123,33331,33333-33334,33434-33435,33656,34249,",
"34378-34379,34567,34962-34964,34980,35000-35006,35100,35354-35357,36001,",
"36411-36412,36422,36462,36524,36602,36700,36865,37475,37483,37601,37654,",
"38000-38002,38201-38203,38412,38422,38462,38472,38800,38865,39681,40000,",
"40023,40404,40841-40843,40853,41111,41121,41230,41794-41797,42508-42510,",
"43000,43188-43191,43210,43438-43441,44123,44321-44323,44444-44445,44544,",
"44553,44600,44818,44900,45000-45002,45045,45054,45514,45678,45824-45825,",
"45966,46336,46998-47001,47100,47557,47624,47806,47808-47809,48000-48005,",
"48048-48050,48128-48129,48556,48619,48653,49000-49001,49150,6000-6063,",
"6665-6669", NULL);
ports_all_privileged_tcp = ports ("T:1-1023", NULL);
ports_all_privileged_tcp_and_udp = ports ("T:1-1023, U:1-1023", NULL);
ports_all_tcp = ports ("T:1-65535", NULL);
ports_openvas_default = ports (
"T:1-5,7-7,9-9,11-11,13-13,15-15,17-25,27-27,29-29,31-31,33-33,35-35,37-"
"39,",
"41-59,61-224,242-248,256-268,280-287,308-322,333-333,344-700,702-702,704-",
"707,709-711,721-721,723-723,729-731,740-742,744-744,747-754,758-765,767-",
"767,769-777,780-783,786-787,799-801,808-808,810-810,828-829,847-848,860-",
"860,871-871,873-873,886-888,898-898,900-904,911-913,927-927,950-950,953-",
"953,975-975,989-1002,1005-1005,1008-1008,1010-1010,1023-1027,1029-1036,",
"1040-1040,1042-1042,1045-1045,1047-1112,1114-1117,1119-1120,1122-1127,",
"1139-1139,1154-1155,1161-1162,1168-1170,1178-1178,1180-1181,1183-1188,",
"1194-1194,1199-1231,1233-1286,1288-1774,1776-2028,2030-2030,2032-2035,",
"2037-2038,2040-2065,2067-2083,2086-2087,2089-2152,2155-2155,2159-2167,",
"2170-2177,2180-2181,2190-2191,2199-2202,2213-2213,2220-2223,2232-2246,",
"2248-2255,2260-2260,2273-2273,2279-2289,2294-2311,2313-2371,2381-2425,",
"2427-2681,2683-2824,2826-2854,2856-2924,2926-3096,3098-3299,3302-3321,",
"3326-3366,3372-3403,3405-3545,3547-3707,3709-3765,3767-3770,3772-3800,",
"3802-3802,3845-3871,3875-3876,3885-3885,3900-3900,3928-3929,3939-3939,",
"3959-3959,3970-3971,3984-3987,3999-4036,4040-4042,4045-4045,4080-4080,",
"4096-4100,4111-4111,4114-4114,4132-4134,4138-4138,4141-4145,4154-4154,",
"4160-4160,4199-4200,4242-4242,4300-4300,4321-4321,4333-4333,4343-4351,",
"4353-4358,4369-4369,4400-4400,4442-4457,4480-4480,4500-4500,4545-4547,",
"4555-4555,4557-4557,4559-4559,4567-4568,4600-4601,4658-4662,4672-4672,",
"4752-4752,4800-4802,4827-4827,4837-4839,4848-4849,4868-4869,4885-4885,",
"4894-4894,4899-4899,4950-4950,4983-4983,4987-4989,4998-4998,5000-5011,",
"5020-5025,5031-5031,5042-5042,5050-5057,5060-5061,5064-5066,5069-5069,",
"5071-5071,5081-5081,5093-5093,5099-5102,5137-5137,5145-5145,5150-5152,",
"5154-5154,5165-5165,5190-5193,5200-5203,5222-5222,5225-5226,5232-5232,",
"5236-5236,5250-5251,5264-5265,5269-5269,5272-5272,5282-5282,5300-5311,",
"5314-5315,5351-5355,5400-5432,5435-5435,5454-5456,5461-5463,5465-5465,",
"5500-5504,5510-5510,5520-5521,5530-5530,5540-5540,5550-5550,5553-5556,",
"5566-5566,5569-5569,5595-5605,5631-5632,5666-5666,5673-5680,5688-5688,",
"5690-5690,5713-5717,5720-5720,5729-5730,5741-5742,5745-5746,5755-5755,",
"5757-5757,5766-5768,5771-5771,5800-5803,5813-5813,5858-5859,5882-5882,",
"5888-5889,5900-5903,5968-5969,5977-5979,5987-5991,5997-6010,6050-6051,",
"6064-6073,6085-6085,6100-6112,6123-6123,6141-6150,6175-6177,6200-6200,",
"6253-6253,6255-6255,6270-6270,6300-6300,6321-6322,6343-6343,6346-6347,",
"6373-6373,6382-6382,6389-6389,6400-6400,6455-6456,6471-6471,6500-6503,",
"6505-6510,6543-6543,6547-6550,6558-6558,6566-6566,6580-6582,6588-6588,",
"6620-6621,6623-6623,6628-6628,6631-6631,6665-6670,6672-6673,6699-6701,",
"6714-6714,6767-6768,6776-6776,6788-6790,6831-6831,6841-6842,6850-6850,",
"6881-6889,6891-6891,6901-6901,6939-6939,6961-6966,6969-6970,6998-7015,",
"7020-7021,7030-7030,7070-7070,7099-7100,7121-7121,7161-7161,7170-7170,",
"7174-7174,7200-7201,7210-7210,7269-7269,7273-7273,7280-7281,7283-7283,",
"7300-7300,7320-7320,7326-7326,7391-7392,7395-7395,7426-7431,7437-7437,",
"7464-7464,7491-7491,7501-7501,7510-7511,7544-7545,7560-7560,7566-7566,",
"7570-7570,7575-7575,7588-7588,7597-7597,7624-7624,7626-7627,7633-7634,",
"7648-7649,7666-7666,7674-7676,7743-7743,7775-7779,7781-7781,7786-7786,",
"7797-7798,7800-7801,7845-7846,7875-7875,7902-7902,7913-7913,7932-7933,",
"7967-7967,7979-7980,7999-8005,8007-8010,8022-8022,8032-8033,8044-8044,",
"8074-8074,8080-8082,8088-8089,8098-8098,8100-8100,8115-8116,8118-8118,",
"8121-8122,8130-8132,8160-8161,8181-8194,8199-8201,8204-8208,8224-8225,",
"8245-8245,8311-8311,8351-8351,8376-8380,8400-8403,8416-8417,8431-8431,",
"8443-8444,8450-8450,8473-8473,8554-8555,8649-8649,8733-8733,8763-8765,",
"8786-8787,8804-8804,8863-8864,8875-8875,8880-8880,8888-8894,8900-8901,",
"8910-8911,8954-8954,8989-8989,8999-9002,9006-9006,9009-9009,9020-9026,",
"9080-9080,9090-9091,9100-9103,9110-9111,9131-9131,9152-9152,9160-9164,",
"9200-9207,9210-9211,9217-9217,9281-9285,9287-9287,9292-9292,9321-9321,",
"9343-9344,9346-9346,9374-9374,9390-9390,9396-9397,9400-9400,9418-9418,",
"9495-9495,9500-9500,9535-9537,9593-9595,9600-9600,9612-9612,9704-9704,",
"9747-9747,9753-9753,9797-9797,9800-9802,9872-9872,9875-9876,9888-9889,",
"9898-9901,9909-9909,9911-9911,9950-9952,9990-10005,10007-10008,10012-",
"10012,10080-10083,10101-10103,10113-10116,10128-10128,10252-10252,10260-",
"10260,10288-10288,10607-10607,10666-10666,10752-10752,10990-10990,11000-",
"11001,11111-11111,11201-11201,11223-11223,11319-11321,11367-11367,11371-",
"11371,11600-11600,11720-11720,11751-11751,11965-11965,11967-11967,11999-",
"12006,12076-12076,12109-12109,12168-12168,12172-12172,12223-12223,12321-",
"12321,12345-12346,12361-12362,12468-12468,12701-12701,12753-12753,13160-",
"13160,13223-13224,13701-13702,13705-13706,13708-13718,13720-13722,13724-",
"13724,13782-13783,13818-13822,14001-14001,14033-14034,14141-14141,14145-",
"14145,14149-14149,14194-14194,14237-14237,14936-14937,15000-15000,15126-",
"15126,15345-15345,15363-15363,16360-16361,16367-16368,16384-16384,16660-",
"16661,16959-16959,16969-16969,16991-16991,17007-17007,17185-17185,17219-",
"17219,17300-17300,17770-17772,18000-18000,18181-18187,18190-18190,18241-",
"18241,18463-18463,18769-18769,18888-18888,19191-19191,19194-19194,19283-",
"19283,19315-19315,19398-19398,19410-19412,19540-19541,19638-19638,19726-",
"19726,20000-20001,20005-20005,20011-20012,20034-20034,20200-20200,20202-",
"20203,20222-20222,20670-20670,20999-21000,21490-21490,21544-21544,21590-",
"21590,21800-21800,21845-21849,22000-22001,22222-22222,22273-22273,22289-",
"22289,22305-22305,22321-22321,22370-22370,22555-22555,22800-22800,22951-",
"22951,23456-23456,24000-24006,24242-24242,24249-24249,24345-24347,24386-",
"24386,24554-24554,24677-24678,24922-24922,25000-25009,25378-25378,25544-",
"25544,25793-25793,25867-25867,25901-25901,25903-25903,26000-26000,26208-",
"26208,26260-26264,27000-27010,27345-27345,27374-27374,27504-27504,27665-",
"27665,27999-27999,28001-28001,29559-29559,29891-29891,30001-30002,30100-",
"30102,30303-30303,30999-30999,31337-31337,31339-31339,31416-31416,31457-",
"31457,31554-31554,31556-31556,31620-31620,31765-31765,31785-31787,32261-",
"32261,32666-32666,32768-32780,32786-32787,32896-32896,33270-33270,33331-",
"33331,33434-33434,33911-33911,34249-34249,34324-34324,34952-34952,36865-",
"36865,37475-37475,37651-37651,38037-38037,38201-38201,38292-38293,39681-",
"39681,40412-40412,40841-40843,41111-41111,41508-41508,41794-41795,42508-",
"42510,43118-43118,43188-43190,44321-44322,44333-44334,44442-44443,44818-",
"44818,45000-45000,45054-45054,45678-45678,45966-45966,47000-47000,47557-",
"47557,47624-47624,47806-47806,47808-47808,47891-47891,48000-48003,48556-",
"48556,49400-49400,50000-50004,50505-50505,50776-50776,51210-51210,53001-",
"53001,54320-54321,57341-57341,59595-59595,60177-60177,60179-60179,61439-",
"61441,61446-61446,65000-65000,65301-65301", NULL);
ports_all_iana_assigned_tcp_and_udp_2020_02_12 = ports (
"T:1-50,52-80,82-99,101-113,115-224,242-248,256-257,259-271,280-284,286-",
"287,308-324,333,344-584,586-658,660-702,704-707,709-715,729-731,741-742,",
"744,747-754,758-765,767,769-777,780,800-802,810,828-833,847-848,853-854,",
"860-862,873,886-888,900-903,910-913,953,989-1001,1010,1021-1027,1029,"
"1033-",
"1108,1110-1490,1492-1782,1784-2193,2197-2258,2260-2368,2370-2377,2379-",
"2681,2683-2793,2795-2824,2826-2872,2874-2924,2926-3091,3093-3125,3127-",
"3300,3302-3321,3326-3366,3372-3402,3405-3545,3547-3693,3695-3993,3995-",
"4047,4049-4143,4145-4193,4197,4199,4300-4314,4316,4320-4323,4325-4336,",
"4340-4362,4366,4368-4379,4389-4396,4400-4423,4425-4433,4441-4458,4484-",
"4488,4500,4534-4538,4545-4559,4563,4566-4570,4573,4590-4605,4621,4646,",
"4658-4692,4700-4704,4711,4725-4733,4737-4747,4749-4756,4774,4784-4791,",
"4800-4804,4827,4837-4851,4867-4871,4876-4885,4888-4889,4894,4899-4902,",
"4912-4915,4936-4937,4940-4942,4949-4953,4969-4971,4980,4984-4991,4999-",
"5015,5020-5034,5042-5075,5078-5087,5092-5094,5099-5107,5111-5112,5114-",
"5117,5120,5133-5137,5145-5146,5150-5157,5161-5168,5172,5190-5197,5200-",
"5203,5209,5215,5221-5237,5245-5254,5264-5265,5269-5272,5280-5282,5298-",
"5310,5312-5318,5320-5321,5343-5344,5349-5364,5397-5437,5443,5445,5450,",
"5453-5456,5461-5465,5470-5475,5500-5507,5550,5553-5557,5565-5569,5573-",
"5575,5579-5586,5597-5605,5618,5627-5639,5646,5666,5670-5684,5687-5689,",
"5693,5696,5700,5705,5713-5730,5741-5748,5750,5755,5757,5766-5771,5777,",
"5780-5787,5793-5794,5813-5814,5841-5842,5859,5863,5868,5883,5900,5910-",
"5913,5963,5968-5969,5984-5993,5999,6064-6066,6068-6077,6080-6088,6099-",
"6118,6121-6124,6130,6133,6140-6149,6159-6163,6200-6201,6209,6222,6241-",
"6244,6251-6253,6267-6269,6300-6301,6306,6315-6317,6320-6322,6324-6326,",
"6343-6344,6346-6347,6350,6355,6360,6363,6370,6379,6382,6389-6390,6417-",
"6421,6432,6442-6446,6455-6456,6464,6471,6480-6489,6500-6503,6505-6511,",
"6513-6515,6543-6544,6547-6551,6558,6566,6568,6579-6583,6600-6602,6619-",
"6629,6632-6636,6640,6653,6655-6657,6670-6673,6678-6679,6687-6690,6696-",
"6697,6701-6706,6714-6716,6767-6771,6777-6778,6784-6791,6801,6817,6831,",
"6841-6842,6850,6868,6888,6900-6901,6924,6935-6936,6946,6951,6961-6966,",
"6969-6970,6997-7026,7030-7031,7040,7070-7073,7080,7088,7095,7099-7101,",
"7107,7117,7121,7128-7129,7161-7174,7181,7200-7202,7215-7216,7227-7229,",
"7235-7237,7244,7262,7272-7283,7365,7391-7395,7397,7400-7402,7410-7411,",
"7420-7421,7426-7431,7437,7443,7471,7473-7474,7478,7491,7500-7501,7508-",
"7511,7542-7551,7560,7563,7566,7569-7570,7574,7588,7606,7624,7626-7631,",
"7633,7648,7663,7672-7677,7680,7683,7687,7689,7697,7700-7701,7707-7708,",
"7720,7724-7728,7734,7738,7741-7744,7747,7775,7777-7779,7781,7784,7786-",
"7787,7789,7794,7797-7802,7810,7845-7847,7869-7872,7878,7880,7887,7900-",
"7903,7913,7932-7933,7962,7967,7979-7982,7997-8009,8015-8016,8019-8023,",
"8025-8026,8032-8034,8040-8044,8051-8060,8066-8067,8070,8074,8077,8080-",
"8084,8086-8088,8090-8091,8097,8100-8102,8111,8115-8118,8121-8122,8128-",
"8132,8140,8148-8149,8153,8160-8162,8181-8184,8190-8192,8194-8195,8199-",
"8202,8204-8208,8211,8230-8232,8243,8266,8270,8276,8280,8282,8292-8294,",
"8300-8301,8313,8320-8322,8351,8376-8380,8383-8384,8400-8405,8415-8417,",
"8423,8442-8445,8450,8457,8470-8474,8500-8503,8554-8555,8567,8600,8609-",
"8615,8665-8666,8675,8686,8688,8699,8710-8711,8732-8733,8750,8763-8770,",
"8778,8786-8787,8793,8800,8804-8805,8807-8809,8873,8880-8881,8883,8888-",
"8894,8899-8901,8910-8913,8937,8953-8954,8980-8981,8989-8991,8997-9002,",
"9005,9007-9011,9020-9026,9050-9051,9060,9080-9081,9083-9093,9100-9107,",
"9111,9119,9122-9123,9131,9160-9164,9191,9200-9217,9222,9255,9277-9287,",
"9292-9295,9300,9306,9312,9318,9321,9339,9343-9346,9374,9380,9387-9390,",
"9396-9397,9400-9402,9418,9443-9445,9450,9500,9522,9535-9536,9555,9592-",
"9600,9612,9614,9616-9618,9628-9632,9640,9666-9668,9694-9695,9700,9747,",
"9750,9753,9762,9800-9802,9875-9878,9888-9889,9898-9900,9903,9909,9911,",
"9925,9950-9956,9966,9978-9979,9981,9987-9988,9990-10010,10020,10023,"
"10050-",
"10051,10055,10080-10081,10100-10104,10107,10110-10111,10113-10117,10125,",
"10128-10129,10160-10162,10200-10201,10252-10253,10260-10261,10288,10321,",
"10439,10443,10500,10540-10544,10548,10631,10800,10805,10809-10810,10860,",
"10880,10933,10990,11000-11001,11095,11103-11106,11108-11112,11161-11165,",
"11171-11175,11201-11202,11208,11211,11319-11321,11367,11371,11430,11489,",
"11600,11623,11720,11723,11751,11796,11876-11877,11967,11971,12000-12010,",
"12012-12013,12109,12121,12168,12172,12300,12302,12321-12322,12345,12753,",
"12865,13160,13216-13218,13223-13224,13400,13720-13722,13724,13782-13783,",
"13785-13786,13818-13823,13894,13929-13930,14000-14002,14033-14034,14141-",
"14143,14145,14149-14150,14154,14250,14414,14500,14936-14937,15000,15002,",
"15118,15345,15363,15555,15660,15740,15998-16003,16020-16021,16161-16162,",
"16309-16311,16360-16361,16367-16368,16384-16385,16619,16665-16666,16789,",
"16900,16950,16991-16995,17007,17184-17185,17219-17225,17234-17235,17500,",
"17555,17729,17754-17756,17777,18000,18104,18136,18181-18187,18241-18243,",
"18262,18463,18634-18635,18668,18769,18881,18888,19000,19007,19020,19191,",
"19194,19220,19283,19315,19398,19410-19412,19539-19541,19788,19998-20003,",
"20005,20012-20014,20034,20046,20048-20049,20057,20167,20202,20222,20480,",
"20670,20999-21000,21010,21212-21213,21221,21553-21554,21590,21800,21845-",
"21849,22000-22005,22125,22128,22222,22273,22305,22335,22343,22347,22350-",
"22351,22537,22555,22763,22800,22951,23000-23005,23053,23272,23294,23333,",
"23400-23402,23456-23457,23546,24000-24006,24242,24249,24321-24323,24386,",
"24465,24554,24577,24666,24676-24678,24680,24754,24850,24922,25000-25009,",
"25576,25604,25793,25900-25903,25954-25955,26000,26133,26208,26257,26260-",
"26263,26486-26487,26489,27010,27017,27345,27442,27504,27782,27876,27999-",
"28001,28010,28119,28200,28240,28589,29118,29167-29168,29999-30004,30100,",
"30260,30400,30832,30999,31016,31020,31029,31400,31416,31457,31620,31685,",
"31765,31948-31949,32034,32249,32400,32483,32635-32636,32767-32777,32801,",
"32811,32896,33000,33060,33123,33331,33333-33334,33434-33435,33656,34249,",
"34378-34379,34567,34962-34964,34980,35000-35006,35100,35354-35357,36001,",
"36411-36412,36422,36462,36524,36602,36700,36865,37475,37483,37601,37654,",
"38000-38002,38201-38203,38412,38422,38462,38472,38800,38865,39681,40000,",
"40023,40404,40841-40843,40853,41111,41121,41230,41794-41797,42508-42510,",
"43000,43188-43191,43210,43438-43441,44123,44321-44323,44444-44445,44544,",
"44553,44600,44818,44900,45000-45002,45045,45054,45514,45678,45824-45825,",
"45966,46336,46998-47001,47100,47557,47624,47806,47808-47809,48000-48005,",
"48048-48050,48128-48129,48556,48619,48653,49000-49001,49150,6000-6063,",
"6665-6669, ",
"U:1-50,52-80,82-99,101-113,115-224,242-248,256-257,259-271,280-284,286-",
"287,308-324,333,344-584,586-658,660-702,704-707,709-716,729-731,741-742,",
"744,747-754,758-765,767,769-777,780,800-802,810,828-833,847-848,853-854,",
"860-862,873,886-888,900-903,910-913,953,989-1001,1008,1010,1021-1027,"
"1029,",
"1033-1108,1110-1490,1492-1782,1784-2193,2197-2258,2260-2368,2370-2375,",
"2377,2379-2681,2683-2793,2795-2824,2826-2872,2874-2924,2926-3091,3093-",
"3125,3127-3300,3302-3321,3326-3366,3372-3402,3405-3545,3547-3693,3695-",
"3993,3995-4047,4049-4143,4145-4193,4197,4199,4300-4314,4316,4320-4323,",
"4325-4336,4340-4362,4366,4368-4379,4389-4396,4400-4423,4425-4433,4441-",
"4458,4484-4488,4500,4534-4538,4545-4559,4563,4566-4570,4573,4590-4605,",
"4621,4646,4658-4692,4700-4704,4711,4725-4733,4737-4747,4749-4756,4774,",
"4784-4791,4800-4804,4827,4837-4851,4867-4871,4876-4885,4888-4889,4894,",
"4899-4902,4912,4914-4915,4936-4937,4940-4942,4949-4953,4969-4971,4980,",
"4984-4991,4999-5015,5020-5034,5042-5075,5078-5087,5092-5094,5099-5107,",
"5111-5112,5114-5117,5120,5133-5137,5145-5146,5150-5157,5161-5168,5172,",
"5190-5197,5200-5203,5209,5215,5221-5237,5245-5254,5264-5265,5269-5272,",
"5280-5282,5298-5310,5312-5318,5320-5321,5343-5344,5349-5364,5397-5437,",
"5443,5445,5450,5453-5456,5461-5465,5470-5475,5500-5507,5550,5553-5557,",
"5565-5569,5573-5575,5579-5586,5597-5605,5618,5627-5639,5646,5666,5670-",
"5684,5687-5689,5693,5696,5700,5705,5713-5730,5741-5748,5750,5755,5757,",
"5766-5771,5777,5780-5787,5793-5794,5813-5814,5841-5842,5859,5863,5868,",
"5900,5910-5913,5963,5968-5969,5984-5993,5999,6064-6066,6068-6077,6080-",
"6088,6099-6118,6121-6124,6130,6133,6140-6149,6159-6163,6200-6201,6209,",
"6222,6241-6244,6251-6253,6267-6269,6300-6301,6306,6315-6317,6320-6322,",
"6324-6326,6343-6344,6346-6347,6350,6355,6360,6363,6370,6379,6382,6389-",
"6390,6417-6421,6432,6442-6446,6455-6456,6464,6471,6480-6489,6500-6503,",
"6505-6511,6513-6515,6543-6544,6547-6551,6558,6566,6568,6579-6583,6600-",
"6602,6619-6629,6632-6636,6640,6653,6655-6657,6670-6673,6678-6679,6687-",
"6690,6696-6697,6701-6706,6714-6716,6767-6771,6777-6778,6784-6791,6801,",
"6817,6831,6841-6842,6850,6868,6888,6900-6901,6924,6935-6936,6946,6951,",
"6961-6966,6969-6970,6997-7026,7030-7031,7040,7070-7073,7080,7088,7095,",
"7099-7101,7107,7117,7121,7128-7129,7161-7174,7181,7200-7201,7215-7216,",
"7227-7229,7235-7237,7244,7262,7272-7283,7365,7391-7395,7397,7400-7402,",
"7410-7411,7420-7421,7426-7431,7437,7443,7471,7473-7474,7478,7491,7500-",
"7501,7508-7511,7542-7551,7560,7563,7566,7569-7570,7574,7588,7606,7624,",
"7626-7631,7633,7648,7663,7672-7677,7680,7683,7687,7689,7697,7700-7702,",
"7707-7708,7720,7724-7728,7734,7738,7741-7744,7747,7775,7777-7779,7781,",
"7784,7786-7787,7789,7794,7797-7802,7810,7845-7847,7869-7872,7878,7880,",
"7887,7900-7903,7913,7932-7933,7962,7967,7979-7982,7997-8009,8015-8016,",
"8019-8023,8025-8026,8032-8034,8040-8044,8051-8060,8066-8067,8070,8074,",
"8077,8080-8084,8086-8088,8090-8091,8097,8100-8102,8111,8115-8118,8121-",
"8122,8128-8132,8140,8148-8149,8153,8160-8162,8181-8184,8190-8192,8194-",
"8195,8199-8202,8204-8208,8211,8230-8232,8243,8266,8270,8276,8280,8282,",
"8292-8294,8300-8301,8313,8320-8322,8351,8376-8380,8383-8384,8400-8405,",
"8415-8417,8423,8442-8445,8450,8457,8470-8474,8500-8503,8554-8555,8567,",
"8600,8609-8615,8665-8666,8675,8686,8688,8699,8710-8711,8732-8733,8750,",
"8763-8770,8778,8786-8787,8793,8800,8804-8805,8807-8809,8873,8880-8881,",
"8883,8888-8894,8899-8901,8910-8913,8937,8953-8954,8980-8981,8989-8991,",
"8997-9002,9005,9007-9011,9020-9026,9050-9051,9060,9080-9081,9083-9093,",
"9100-9107,9111,9119,9122-9123,9131,9160-9164,9191,9200-9217,9222,9255,",
"9277-9287,9292-9295,9300,9306,9312,9318,9321,9339,9343-9346,9374,9380,",
"9387-9390,9396-9397,9400-9402,9418,9443-9445,9450,9500,9522,9535-9536,",
"9555,9592-9600,9612,9614,9616-9618,9628-9632,9640,9666-9668,9694-9695,",
"9700,9747,9750,9753,9762,9800-9802,9875,9877-9878,9888-9889,9898-9901,",
"9903,9909,9911,9925,9950-9956,9966,9978-9979,9981,9987-9988,9990-10010,",
"10020,10023,10050-10051,10055,10080-10081,10100-10104,10107,10110-10111,",
"10113-10117,10125,10128-10129,10160-10162,10200-10201,10252-10253,10260-",
"10261,10288,10321,10439,10443,10500,10540-10544,10548,10631,10800,10805,",
"10809-10810,10860,10880,10933,10990,11000-11001,11095,11103-11106,11108-",
"11112,11161-11165,11171-11175,11201-11202,11208,11211,11319-11321,11367,",
"11371,11430,11489,11600,11623,11720,11723,11751,11796,11876-11877,11967,",
"11971,12000-12010,12012-12013,12109,12121,12168,12172,12300,12302,12321-",
"12322,12345,12753,12865,13160,13216-13218,13223-13224,13400,13720-13722,",
"13724,13782-13783,13785-13786,13818-13823,13894,13929-13930,14000-14002,",
"14033-14034,14141-14143,14145,14149-14150,14154,14250,14414,14500,14936-",
"14937,15000,15002,15118,15345,15363,15555,15660,15740,15998-16003,16020-",
"16021,16161-16162,16309-16311,16360-16361,16367-16368,16384-16385,16619,",
"16665-16666,16789,16900,16950,16991-16995,17007,17184-17185,17219-17225,",
"17234-17235,17500,17555,17729,17754-17756,17777,18000,18104,18136,18181-",
"18187,18241-18243,18262,18463,18634-18635,18668,18769,18881,18888,19000,",
"19007,19020,19191,19194,19220,19283,19315,19398,19410-19412,19539-19541,",
"19788,19998-20003,20005,20012-20014,20034,20046,20048-20049,20057,20167,",
"20202,20222,20480,20670,20999-21000,21010,21212-21213,21221,21553-21554,",
"21590,21800,21845-21849,22000-22005,22125,22128,22222,22273,22305,22335,",
"22343,22347,22350-22351,22537,22555,22763,22800,22951,23000-23005,23053,",
"23272,23294,23333,23400-23402,23456-23457,23546,24000-24006,24242,24249,",
"24321-24323,24386,24465,24554,24577,24666,24676-24678,24680,24754,24850,",
"24922,25000-25009,25576,25604,25793,25900-25903,25954-25955,26000,26133,",
"26208,26257,26260-26263,26486-26487,26489,27010,27017,27345,27442,27504,",
"27782,27876,27999-28001,28010,28119,28200,28240,28589,29118,29167-29168,",
"29999-30004,30100,30260,30400,30832,30999,31016,31020,31029,31400,31416,",
"31457,31620,31685,31765,31948-31949,32034,32249,32400,32483,32635-32636,",
"32767-32777,32801,32811,32896,33000,33060,33123,33331,33333-33334,33434-",
"33435,33656,34249,34378-34379,34567,34962-34964,34980,35000-35006,35100,",
"35354-35357,36001,36411-36412,36422,36462,36524,36602,36700,36865,37475,",
"37483,37601,37654,38000-38002,38201-38203,38412,38422,38462,38472,38800,",
"38865,39681,40000,40023,40404,40841-40843,40853,41111,41121,41230,41794-",
"41797,42508-42510,43000,43188-43191,43210,43438-43441,44123,44321-44323,",
"44444-44445,44544,44553,44600,44818,44900,45000-45002,45045,45054,45514,",
"45678,45824-45825,45966,46336,46998-47001,47100,47557,47624,47806,47808-",
"47809,48000-48005,48048-48050,48128-48129,48556,48619,48653,49000-49001,",
"49150,6000-6063,6665-6669", NULL);
ports_all_tcp_and_nmap_5_51_top_100_udp = ports (
"T:1-65535, ",
"U:7-7,9-9,17-17,19-19,49-49,53-53,67-69,80-80,88-88,111-111,120-120,123-",
"123,135-139,158-158,161-162,177-177,427-427,443-443,445-445,497-497,500-",
"500,514-515,518-518,520-520,593-593,623-623,626-626,631-631,996-999,1022-",
"1023,1025-1030,1433-1434,1645-1646,1701-1701,1718-1719,1812-1813,1900-",
"1900,2000-2000,2048-2049,2222-2223,3283-3283,3456-3456,3703-3703,4444-",
"4444,4500-4500,5000-5000,5060-5060,5353-5353,5632-5632,9200-9200,10000-",
"10000,17185-17185,20031-20031,30718-30718,31337-31337,32768-32769,32771-",
"32771,32815-32815,33281-33281,49152-49154,49156-49156,49181-49182,49185-",
"49186,49188-49188,49190-49194,49200-49201", NULL);
ports_all_tcp_and_nmap_5_51_top_1000_udp = ports (
"T:1-65535, "
"U:2-3,7-7,9-9,13-13,17-17,19-23,37-38,42-42,49-49,53-53,67-69,80-80,88-"
"88,",
"111-113,120-120,123-123,135-139,158-158,161-162,177-177,192-192,199-199,",
"207-207,217-217,363-363,389-389,402-402,407-407,427-427,434-434,443-443,",
"445-445,464-464,497-497,500-500,502-502,512-515,517-518,520-520,539-539,",
"559-559,593-593,623-623,626-626,631-631,639-639,643-643,657-657,664-664,",
"682-689,764-764,767-767,772-776,780-782,786-786,789-789,800-800,814-814,",
"826-826,829-829,838-838,902-903,944-944,959-959,965-965,983-983,989-990,",
"996-1001,1007-1008,1012-1014,1019-1051,1053-1060,1064-1070,1072-1072,"
"1080-",
"1081,1087-1088,1090-1090,1100-1101,1105-1105,1124-1124,1200-1200,1214-",
"1214,1234-1234,1346-1346,1419-1419,1433-1434,1455-1455,1457-1457,1484-",
"1485,1524-1524,1645-1646,1701-1701,1718-1719,1761-1761,1782-1782,1804-",
"1804,1812-1813,1885-1886,1900-1901,1993-1993,2000-2000,2002-2002,2048-",
"2049,2051-2051,2148-2148,2160-2161,2222-2223,2343-2343,2345-2345,2362-",
"2362,2967-2967,3052-3052,3130-3130,3283-3283,3296-3296,3343-3343,3389-",
"3389,3401-3401,3456-3457,3659-3659,3664-3664,3702-3703,4000-4000,4008-",
"4008,4045-4045,4444-4444,4500-4500,4666-4666,4672-4672,5000-5003,5010-",
"5010,5050-5050,5060-5060,5093-5093,5351-5351,5353-5353,5355-5355,5500-",
"5500,5555-5555,5632-5632,6000-6002,6004-6004,6050-6050,6346-6347,6970-",
"6971,7000-7000,7938-7938,8000-8001,8010-8010,8181-8181,8193-8193,8900-",
"8900,9000-9001,9020-9020,9103-9103,9199-9200,9370-9370,9876-9877,9950-",
"9950,10000-10000,10080-10080,11487-11487,16086-16086,16402-16402,16420-",
"16420,16430-16430,16433-16433,16449-16449,16498-16498,16503-16503,16545-",
"16545,16548-16548,16573-16573,16674-16674,16680-16680,16697-16697,16700-",
"16700,16708-16708,16711-16711,16739-16739,16766-16766,16779-16779,16786-",
"16786,16816-16816,16829-16829,16832-16832,16838-16839,16862-16862,16896-",
"16896,16912-16912,16918-16919,16938-16939,16947-16948,16970-16970,16972-",
"16972,16974-16974,17006-17006,17018-17018,17077-17077,17091-17091,17101-",
"17101,17146-17146,17184-17185,17205-17205,17207-17207,17219-17219,17236-",
"17237,17282-17282,17302-17302,17321-17321,17331-17332,17338-17338,17359-",
"17359,17417-17417,17423-17424,17455-17455,17459-17459,17468-17468,17487-",
"17487,17490-17490,17494-17494,17505-17505,17533-17533,17549-17549,17573-",
"17573,17580-17580,17585-17585,17592-17592,17605-17605,17615-17616,17629-",
"17629,17638-17638,17663-17663,17673-17674,17683-17683,17726-17726,17754-",
"17754,17762-17762,17787-17787,17814-17814,17823-17824,17836-17836,17845-",
"17845,17888-17888,17939-17939,17946-17946,17989-17989,18004-18004,18081-",
"18081,18113-18113,18134-18134,18156-18156,18228-18228,18234-18234,18250-",
"18250,18255-18255,18258-18258,18319-18319,18331-18331,18360-18360,18373-",
"18373,18449-18449,18485-18485,18543-18543,18582-18582,18605-18605,18617-",
"18617,18666-18666,18669-18669,18676-18676,18683-18683,18807-18807,18818-",
"18818,18821-18821,18830-18830,18832-18832,18835-18835,18869-18869,18883-",
"18883,18888-18888,18958-18958,18980-18980,18985-18985,18987-18987,18991-",
"18991,18994-18994,18996-18996,19017-19017,19022-19022,19039-19039,19047-",
"19047,19075-19075,19096-19096,19120-19120,19130-19130,19140-19141,19154-",
"19154,19161-19161,19165-19165,19181-19181,19193-19193,19197-19197,19222-",
"19222,19227-19227,19273-19273,19283-19283,19294-19294,19315-19315,19322-",
"19322,19332-19332,19374-19374,19415-19415,19482-19482,19489-19489,19500-",
"19500,19503-19504,19541-19541,19600-19600,19605-19605,19616-19616,19624-",
"19625,19632-19632,19639-19639,19647-19647,19650-19650,19660-19660,19662-",
"19663,19682-19683,19687-19687,19695-19695,19707-19707,19717-19719,19722-",
"19722,19728-19728,19789-19789,19792-19792,19933-19933,19935-19936,19956-",
"19956,19995-19995,19998-19998,20003-20004,20019-20019,20031-20031,20082-",
"20082,20117-20117,20120-20120,20126-20126,20129-20129,20146-20146,20154-",
"20154,20164-20164,20206-20206,20217-20217,20249-20249,20262-20262,20279-",
"20279,20288-20288,20309-20309,20313-20313,20326-20326,20359-20360,20366-",
"20366,20380-20380,20389-20389,20409-20409,20411-20411,20423-20425,20445-",
"20445,20449-20449,20464-20465,20518-20518,20522-20522,20525-20525,20540-",
"20540,20560-20560,20665-20665,20678-20679,20710-20710,20717-20717,20742-",
"20742,20752-20752,20762-20762,20791-20791,20817-20817,20842-20842,20848-",
"20848,20851-20851,20865-20865,20872-20872,20876-20876,20884-20884,20919-",
"20919,21000-21000,21016-21016,21060-21060,21083-21083,21104-21104,21111-",
"21111,21131-21131,21167-21167,21186-21186,21206-21207,21212-21212,21247-",
"21247,21261-21261,21282-21282,21298-21298,21303-21303,21318-21318,21320-",
"21320,21333-21333,21344-21344,21354-21354,21358-21358,21360-21360,21364-",
"21364,21366-21366,21383-21383,21405-21405,21454-21454,21468-21468,21476-",
"21476,21514-21514,21524-21525,21556-21556,21566-21566,21568-21568,21576-",
"21576,21609-21609,21621-21621,21625-21625,21644-21644,21649-21649,21655-",
"21655,21663-21663,21674-21674,21698-21698,21702-21702,21710-21710,21742-",
"21742,21780-21780,21784-21784,21800-21800,21803-21803,21834-21834,21842-",
"21842,21847-21847,21868-21868,21898-21898,21902-21902,21923-21923,21948-",
"21948,21967-21967,22029-22029,22043-22043,22045-22045,22053-22053,22055-",
"22055,22105-22105,22109-22109,22123-22124,22341-22341,22692-22692,22695-",
"22695,22739-22739,22799-22799,22846-22846,22914-22914,22986-22986,22996-",
"22996,23040-23040,23176-23176,23354-23354,23531-23531,23557-23557,23608-",
"23608,23679-23679,23781-23781,23965-23965,23980-23980,24007-24007,24279-",
"24279,24511-24511,24594-24594,24606-24606,24644-24644,24854-24854,24910-",
"24910,25003-25003,25157-25157,25240-25240,25280-25280,25337-25337,25375-",
"25375,25462-25462,25541-25541,25546-25546,25709-25709,25931-25931,26407-",
"26407,26415-26415,26720-26720,26872-26872,26966-26966,27015-27015,27195-",
"27195,27444-27444,27473-27473,27482-27482,27707-27707,27892-27892,27899-",
"27899,28122-28122,28369-28369,28465-28465,28493-28493,28543-28543,28547-",
"28547,28641-28641,28840-28840,28973-28973,29078-29078,29243-29243,29256-",
"29256,29810-29810,29823-29823,29977-29977,30263-30263,30303-30303,30365-",
"30365,30544-30544,30656-30656,30697-30697,30704-30704,30718-30718,30975-",
"30975,31059-31059,31073-31073,31109-31109,31189-31189,31195-31195,31335-",
"31335,31337-31337,31365-31365,31625-31625,31681-31681,31731-31731,31891-",
"31891,32345-32345,32385-32385,32528-32528,32768-32780,32798-32798,32815-",
"32815,32818-32818,32931-32931,33030-33030,33249-33249,33281-33281,33354-",
"33355,33459-33459,33717-33717,33744-33744,33866-33866,33872-33872,34038-",
"34038,34079-34079,34125-34125,34358-34358,34422-34422,34433-34433,34555-",
"34555,34570-34570,34577-34580,34758-34758,34796-34796,34855-34855,34861-",
"34862,34892-34892,35438-35438,35702-35702,35777-35777,35794-35794,36108-",
"36108,36206-36206,36384-36384,36458-36458,36489-36489,36669-36669,36778-",
"36778,36893-36893,36945-36945,37144-37144,37212-37212,37393-37393,37444-",
"37444,37602-37602,37761-37761,37783-37783,37813-37813,37843-37843,38037-",
"38037,38063-38063,38293-38293,38412-38412,38498-38498,38615-38615,39213-",
"39213,39217-39217,39632-39632,39683-39683,39714-39714,39723-39723,39888-",
"39888,40019-40019,40116-40116,40441-40441,40539-40539,40622-40622,40708-",
"40708,40711-40711,40724-40724,40732-40732,40805-40805,40847-40847,40866-",
"40866,40915-40915,41058-41058,41081-41081,41308-41308,41370-41370,41446-",
"41446,41524-41524,41638-41638,41702-41702,41774-41774,41896-41896,41967-",
"41967,41971-41971,42056-42056,42172-42172,42313-42313,42431-42431,42434-",
"42434,42508-42508,42557-42557,42577-42577,42627-42627,42639-42639,43094-",
"43094,43195-43195,43370-43370,43514-43514,43686-43686,43824-43824,43967-",
"43967,44101-44101,44160-44160,44179-44179,44185-44185,44190-44190,44253-",
"44253,44334-44334,44508-44508,44923-44923,44946-44946,44968-44968,45247-",
"45247,45380-45380,45441-45441,45685-45685,45722-45722,45818-45818,45928-",
"45928,46093-46093,46532-46532,46836-46836,47624-47624,47765-47765,47772-",
"47772,47808-47808,47915-47915,47981-47981,48078-48078,48189-48189,48255-",
"48255,48455-48455,48489-48489,48761-48761,49152-49163,49165-49182,49184-",
"49202,49204-49205,49207-49216,49220-49220,49222-49222,49226-49226,49259-",
"49259,49262-49262,49306-49306,49350-49350,49360-49360,49393-49393,49396-",
"49396,49503-49503,49640-49640,49968-49968,50099-50099,50164-50164,50497-",
"50497,50612-50612,50708-50708,50919-50919,51255-51255,51456-51456,51554-",
"51554,51586-51586,51690-51690,51717-51717,51905-51905,51972-51972,52144-",
"52144,52225-52225,52503-52503,53006-53006,53037-53037,53571-53571,53589-",
"53589,53838-53838,54094-54094,54114-54114,54281-54281,54321-54321,54711-",
"54711,54807-54807,54925-54925,55043-55043,55544-55544,55587-55587,56141-",
"56141,57172-57172,57409-57410,57813-57813,57843-57843,57958-57958,57977-",
"57977,58002-58002,58075-58075,58178-58178,58419-58419,58631-58631,58640-",
"58640,58797-58797,59193-59193,59207-59207,59765-59765,59846-59846,60172-",
"60172,60381-60381,60423-60423,61024-61024,61142-61142,61319-61319,61322-",
"61322,61370-61370,61412-61412,61481-61481,61550-61550,61685-61685,61961-",
"61961,62154-62154,62287-62287,62575-62575,62677-62677,62699-62699,62958-",
"62958,63420-63420,63555-63555,64080-64080,64481-64481,64513-64513,64590-",
"64590,64727-64727", NULL);
ports_nmap_5_51_top_2000_tcp_and_top_100_udp = ports (
"T:1-1,3-4,6-7,9-9,13-13,17-17,19-27,30-30,32-33,37-37,42-43,49-49,53-53,",
"55-55,57-57,59-59,70-70,77-77,79-90,98-100,102-102,106-106,109-111,113-",
"113,119-119,123-123,125-125,127-127,135-135,139-139,143-144,146-146,157-",
"157,161-161,163-163,179-179,199-199,210-212,220-220,222-223,225-225,250-",
"252,254-257,259-259,264-264,280-280,301-301,306-306,311-311,333-333,340-",
"340,366-366,388-389,406-407,411-411,416-417,419-419,425-425,427-427,441-",
"445,447-447,458-458,464-465,475-475,481-481,497-497,500-500,502-502,512-",
"515,523-524,540-541,543-545,548-548,554-557,563-563,587-587,593-593,600-",
"600,602-602,606-606,610-610,616-617,621-621,623-623,625-625,631-631,636-",
"636,639-639,641-641,646-646,648-648,655-655,657-657,659-660,666-669,674-",
"674,683-684,687-687,690-691,700-701,705-705,709-711,713-715,720-720,722-",
"722,725-726,728-732,740-740,748-749,754-754,757-758,765-765,777-778,780-",
"780,782-783,786-787,790-790,792-792,795-795,800-803,805-806,808-808,822-",
"823,825-825,829-829,839-840,843-843,846-846,856-856,859-859,862-862,864-",
"864,873-874,878-878,880-880,888-888,898-898,900-905,911-913,918-918,921-",
"922,924-924,928-928,930-931,943-943,953-953,969-969,971-971,980-981,987-",
"987,990-990,992-993,995-996,998-1002,1004-1015,1020-1114,1116-1119,1121-",
"1128,1130-1132,1134-1138,1141-1141,1143-1145,1147-1154,1156-1159,1162-",
"1169,1173-1176,1179-1180,1182-1188,1190-1192,1194-1196,1198-1201,1204-",
"1204,1207-1213,1215-1218,1220-1223,1228-1229,1233-1234,1236-1236,1239-",
"1241,1243-1244,1247-1251,1259-1259,1261-1262,1264-1264,1268-1268,1270-",
"1272,1276-1277,1279-1279,1282-1282,1287-1287,1290-1291,1296-1297,1299-",
"1303,1305-1311,1314-1319,1321-1322,1324-1324,1327-1328,1330-1331,1334-",
"1334,1336-1337,1339-1340,1347-1347,1350-1353,1357-1357,1413-1414,1417-",
"1417,1433-1434,1443-1443,1455-1455,1461-1461,1494-1494,1500-1501,1503-",
"1503,1516-1516,1521-1522,1524-1526,1533-1533,1547-1547,1550-1550,1556-",
"1556,1558-1560,1565-1566,1569-1569,1580-1580,1583-1584,1592-1592,1594-",
"1594,1598-1598,1600-1600,1605-1605,1607-1607,1615-1615,1620-1620,1622-",
"1622,1632-1632,1635-1635,1638-1638,1641-1641,1645-1645,1658-1658,1666-",
"1666,1677-1677,1683-1683,1687-1688,1691-1691,1694-1694,1699-1701,1703-",
"1703,1707-1709,1711-1713,1715-1715,1717-1723,1730-1730,1735-1736,1745-",
"1745,1750-1750,1752-1753,1755-1755,1761-1761,1782-1783,1791-1792,1799-",
"1801,1805-1808,1811-1812,1823-1823,1825-1825,1835-1835,1839-1840,1858-",
"1858,1861-1864,1871-1871,1875-1875,1900-1901,1911-1912,1914-1914,1918-",
"1918,1924-1924,1927-1927,1935-1935,1947-1947,1954-1954,1958-1958,1971-",
"1976,1981-1981,1984-1984,1998-2013,2020-2022,2025-2025,2030-2031,2033-",
"2035,2038-2038,2040-2049,2062-2062,2065-2065,2067-2070,2080-2083,2086-",
"2087,2095-2096,2099-2101,2103-2107,2111-2112,2115-2115,2119-2119,2121-",
"2121,2124-2124,2126-2126,2134-2135,2142-2142,2144-2144,2148-2148,2150-",
"2150,2160-2161,2170-2170,2179-2179,2187-2187,2190-2191,2196-2197,2200-",
"2201,2203-2203,2222-2222,2224-2224,2232-2232,2241-2241,2250-2251,2253-",
"2253,2260-2262,2265-2265,2269-2271,2280-2280,2288-2288,2291-2292,2300-",
"2302,2304-2304,2312-2313,2323-2323,2325-2326,2330-2330,2335-2335,2340-",
"2340,2366-2366,2371-2372,2381-2383,2391-2391,2393-2394,2399-2399,2401-",
"2401,2418-2418,2425-2425,2433-2433,2435-2436,2438-2439,2449-2449,2456-",
"2456,2463-2463,2472-2472,2492-2492,2500-2501,2505-2505,2522-2522,2525-",
"2525,2531-2532,2550-2551,2557-2558,2567-2567,2580-2580,2583-2584,2598-",
"2598,2600-2602,2604-2608,2622-2623,2628-2628,2631-2631,2638-2638,2644-",
"2644,2691-2691,2700-2702,2706-2706,2710-2712,2717-2718,2723-2723,2725-",
"2725,2728-2728,2734-2734,2800-2800,2804-2804,2806-2806,2809-2809,2811-",
"2812,2847-2847,2850-2850,2869-2869,2875-2875,2882-2882,2888-2889,2898-",
"2898,2901-2903,2908-2910,2920-2920,2930-2930,2957-2958,2967-2968,2973-",
"2973,2984-2984,2987-2988,2991-2991,2997-2998,3000-3003,3005-3007,3011-",
"3011,3013-3014,3017-3017,3023-3023,3025-3025,3030-3031,3050-3050,3052-",
"3052,3057-3057,3062-3063,3071-3071,3077-3077,3080-3080,3089-3089,3102-",
"3103,3118-3119,3121-3121,3128-3128,3146-3146,3162-3162,3167-3168,3190-",
"3190,3200-3200,3210-3211,3220-3221,3240-3240,3260-3261,3263-3263,3268-",
"3269,3280-3281,3283-3283,3291-3291,3299-3301,3304-3304,3306-3307,3310-",
"3311,3319-3319,3322-3325,3333-3334,3351-3351,3362-3363,3365-3365,3367-",
"3372,3374-3374,3376-3376,3388-3390,3396-3396,3399-3400,3404-3404,3410-",
"3410,3414-3415,3419-3419,3425-3425,3430-3430,3439-3439,3443-3443,3456-",
"3456,3476-3476,3479-3479,3483-3483,3485-3486,3493-3493,3497-3497,3503-",
"3503,3505-3506,3511-3511,3513-3515,3517-3517,3519-3520,3526-3527,3530-",
"3530,3532-3532,3546-3546,3551-3551,3577-3577,3580-3580,3586-3586,3599-",
"3600,3602-3603,3621-3622,3632-3632,3636-3637,3652-3653,3656-3656,3658-",
"3659,3663-3663,3669-3670,3672-3672,3680-3681,3683-3684,3689-3690,3697-",
"3697,3700-3700,3703-3703,3712-3712,3728-3728,3731-3731,3737-3737,3742-",
"3742,3749-3749,3765-3766,3784-3784,3787-3788,3790-3790,3792-3793,3795-",
"3796,3798-3801,3803-3803,3806-3806,3808-3814,3817-3817,3820-3820,3823-",
"3828,3830-3831,3837-3837,3839-3839,3842-3842,3846-3853,3856-3856,3859-",
"3860,3863-3863,3868-3872,3876-3876,3878-3880,3882-3882,3888-3890,3897-",
"3897,3899-3899,3901-3902,3904-3909,3911-3911,3913-3916,3918-3920,3922-",
"3923,3928-3931,3935-3937,3940-3941,3943-3946,3948-3949,3952-3952,3956-",
"3957,3961-3964,3967-3969,3971-3972,3975-3975,3979-3983,3986-3986,3989-",
"4007,4009-4010,4016-4016,4020-4020,4022-4022,4024-4025,4029-4029,4035-",
"4036,4039-4040,4045-4045,4056-4056,4058-4058,4065-4065,4080-4080,4087-",
"4087,4090-4090,4096-4096,4100-4101,4111-4113,4118-4121,4125-4126,4129-",
"4129,4135-4135,4141-4141,4143-4143,4147-4147,4158-4158,4161-4161,4164-",
"4164,4174-4174,4190-4190,4192-4192,4200-4200,4206-4206,4220-4220,4224-",
"4224,4234-4234,4242-4242,4252-4252,4262-4262,4279-4279,4294-4294,4297-",
"4298,4300-4300,4302-4302,4321-4321,4325-4325,4328-4328,4333-4333,4342-",
"4343,4355-4358,4369-4369,4374-4376,4384-4384,4388-4388,4401-4401,4407-",
"4407,4414-4415,4418-4418,4430-4430,4433-4433,4442-4447,4449-4449,4454-",
"4454,4464-4464,4471-4471,4476-4476,4516-4517,4530-4530,4534-4534,4545-",
"4545,4550-4550,4555-4555,4558-4559,4567-4567,4570-4570,4599-4602,4606-",
"4606,4609-4609,4644-4644,4649-4649,4658-4658,4662-4662,4665-4665,4687-",
"4687,4689-4689,4700-4700,4712-4712,4745-4745,4760-4760,4767-4767,4770-",
"4771,4778-4778,4793-4793,4800-4800,4819-4819,4848-4848,4859-4860,4875-",
"4877,4881-4881,4899-4900,4903-4903,4912-4912,4931-4931,4949-4949,4998-",
"5005,5009-5017,5020-5021,5023-5023,5030-5030,5033-5033,5040-5040,5050-",
"5055,5060-5061,5063-5063,5066-5066,5070-5070,5074-5074,5080-5081,5087-",
"5088,5090-5090,5095-5096,5098-5098,5100-5102,5111-5111,5114-5114,5120-",
"5122,5125-5125,5133-5133,5137-5137,5147-5147,5151-5152,5190-5190,5200-",
"5202,5212-5212,5214-5214,5219-5219,5221-5223,5225-5226,5233-5235,5242-",
"5242,5250-5250,5252-5252,5259-5259,5261-5261,5269-5269,5279-5280,5291-",
"5291,5298-5298,5339-5339,5347-5347,5353-5353,5357-5357,5370-5370,5377-",
"5377,5405-5405,5414-5414,5423-5423,5431-5433,5440-5442,5444-5444,5457-",
"5458,5473-5473,5475-5475,5500-5502,5510-5510,5520-5520,5544-5544,5550-",
"5550,5552-5555,5557-5557,5560-5560,5566-5566,5631-5631,5633-5633,5666-",
"5666,5678-5680,5718-5718,5730-5730,5800-5803,5807-5807,5810-5812,5815-",
"5815,5818-5818,5822-5823,5825-5825,5850-5850,5859-5859,5862-5862,5868-",
"5869,5877-5877,5899-5907,5909-5911,5914-5915,5918-5918,5922-5922,5925-",
"5925,5938-5938,5940-5940,5950-5950,5952-5952,5959-5963,5968-5968,5981-",
"5981,5987-5989,5998-6009,6017-6017,6025-6025,6050-6051,6059-6060,6068-",
"6068,6100-6101,6103-6103,6106-6106,6112-6112,6123-6123,6129-6129,6156-",
"6156,6203-6203,6222-6222,6247-6247,6346-6346,6389-6389,6481-6481,6500-",
"6500,6502-6502,6504-6504,6510-6510,6520-6520,6543-6543,6547-6547,6550-",
"6550,6565-6567,6580-6580,6600-6600,6646-6646,6662-6662,6666-6670,6689-",
"6689,6692-6692,6699-6699,6711-6711,6732-6732,6779-6779,6788-6789,6792-",
"6792,6839-6839,6881-6881,6896-6896,6901-6901,6969-6969,7000-7004,7007-",
"7007,7010-7010,7019-7019,7024-7025,7050-7051,7070-7070,7080-7080,7100-",
"7100,7103-7103,7106-7106,7123-7123,7200-7201,7241-7241,7272-7272,7278-",
"7278,7281-7281,7402-7402,7435-7435,7438-7438,7443-7443,7496-7496,7512-",
"7512,7625-7625,7627-7627,7676-7676,7725-7725,7741-7741,7744-7744,7749-",
"7749,7770-7770,7777-7778,7800-7800,7878-7878,7900-7900,7911-7911,7913-",
"7913,7920-7921,7929-7929,7937-7938,7999-8002,8007-8011,8015-8016,8019-",
"8019,8021-8022,8031-8031,8042-8042,8045-8045,8050-8050,8080-8090,8093-",
"8093,8095-8095,8097-8100,8118-8118,8180-8181,8189-8189,8192-8194,8200-",
"8200,8222-8222,8254-8254,8290-8294,8300-8300,8333-8333,8383-8383,8385-",
"8385,8400-8400,8402-8402,8443-8443,8481-8481,8500-8500,8540-8540,8600-",
"8600,8648-8649,8651-8652,8654-8654,8675-8676,8686-8686,8701-8701,8765-",
"8766,8800-8800,8873-8873,8877-8877,8888-8889,8899-8899,8987-8987,8994-",
"8994,8996-8996,9000-9003,9009-9011,9040-9040,9050-9050,9071-9071,9080-",
"9081,9090-9091,9098-9103,9110-9111,9152-9152,9191-9191,9197-9198,9200-",
"9200,9207-9207,9220-9220,9290-9290,9409-9409,9415-9415,9418-9418,9443-",
"9444,9485-9485,9500-9503,9535-9535,9575-9575,9593-9595,9600-9600,9618-",
"9618,9621-9621,9643-9643,9666-9666,9673-9673,9815-9815,9876-9878,9898-",
"9898,9900-9900,9914-9914,9917-9917,9929-9929,9941-9941,9943-9944,9968-",
"9968,9988-9988,9992-9992,9998-10005,10008-10012,10022-10025,10034-10034,",
"10058-10058,10082-10083,10160-10160,10180-10180,10215-10215,10243-10243,",
"10566-10566,10616-10617,10621-10621,10626-10626,10628-10629,10778-10778,",
"10873-10873,11110-11111,11967-11967,12000-12000,12006-12006,12021-12021,",
"12059-12059,12174-12174,12215-12215,12262-12262,12265-12265,12345-12346,",
"12380-12380,12452-12452,13456-13456,13722-13722,13724-13724,13782-13783,",
"14000-14000,14238-14238,14441-14442,15000-15004,15402-15402,15660-15660,",
"15742-15742,16000-16001,16012-16012,16016-16016,16018-16018,16080-16080,",
"16113-16113,16705-16705,16800-16800,16851-16851,16992-16993,17595-17595,",
"17877-17877,17988-17988,18000-18000,18018-18018,18040-18040,18101-18101,",
"18264-18264,18988-18988,19101-19101,19283-19283,19315-19315,19350-19350,",
"19780-19780,19801-19801,19842-19842,19900-19900,20000-20000,20002-20002,",
"20005-20005,20031-20031,20221-20222,20828-20828,21571-21571,21792-21792,",
"22222-22222,22939-22939,23052-23052,23502-23502,23796-23796,24444-24444,",
"24800-24800,25734-25735,26000-26000,26214-26214,26470-26470,27000-27000,",
"27352-27353,27355-27357,27715-27715,28201-28201,28211-28211,29672-29672,",
"29831-29831,30000-30000,30005-30005,30704-30704,30718-30718,30951-30951,",
"31038-31038,31337-31337,31727-31727,32768-32785,32791-32792,32803-32803,",
"32816-32816,32822-32822,32835-32835,33354-33354,33453-33453,33554-33554,",
"33899-33899,34571-34573,35500-35500,35513-35513,37839-37839,38037-38037,",
"38185-38185,38188-38188,38292-38292,39136-39136,39376-39376,39659-39659,",
"40000-40000,40193-40193,40811-40811,40911-40911,41064-41064,41511-41511,",
"41523-41523,42510-42510,44176-44176,44334-44334,44442-44443,44501-44501,",
"44709-44709,45100-45100,46200-46200,46996-46996,47544-47544,48080-48080,",
"49152-49161,49163-49165,49167-49168,49171-49171,49175-49176,49186-49186,",
"49195-49195,49236-49236,49400-49401,49999-50003,50006-50006,50050-50050,",
"50300-50300,50389-50389,50500-50500,50636-50636,50800-50800,51103-51103,",
"51191-51191,51413-51413,51493-51493,52660-52660,52673-52673,52710-52710,",
"52735-52735,52822-52822,52847-52851,52853-52853,52869-52869,53211-53211,",
"53313-53314,53535-53535,54045-54045,54328-54328,55020-55020,55055-55056,",
"55555-55555,55576-55576,55600-55600,56737-56738,57294-57294,57665-57665,",
"57797-57797,58001-58002,58080-58080,58630-58630,58632-58632,58838-58838,",
"59110-59110,59200-59202,60020-60020,60123-60123,60146-60146,60443-60443,",
"60642-60642,61532-61532,61613-61613,61900-61900,62078-62078,63331-63331,",
"64623-64623,64680-64680,65000-65000,65129-65129,65310-65310, ",
"U:7-7,9-9,17-17,19-19,49-49,53-53,67-69,80-80,88-88,111-111,120-120,123-",
"123,135-139,158-158,161-162,177-177,427-427,443-443,445-445,497-497,500-",
"500,514-515,518-518,520-520,593-593,623-623,626-626,631-631,996-999,1022-",
"1023,1025-1030,1433-1434,1645-1646,1701-1701,1718-1719,1812-1813,1900-",
"1900,2000-2000,2048-2049,2222-2223,3283-3283,3456-3456,3703-3703,4444-",
"4444,4500-4500,5000-5000,5060-5060,5353-5353,5632-5632,9200-9200,10000-",
"10000,17185-17185,20031-20031,30718-30718,31337-31337,32768-32769,32771-",
"32771,32815-32815,33281-33281,49152-49154,49156-49156,49181-49182,49185-",
"49186,49188-49188,49190-49194,49200-49201", NULL);
ports_web_services = ports ("T:80-80,443-443", NULL);
assert_that (validate_port_range (ports_all_iana_assigned_tcp_2020_02_12),
is_equal_to (0));
assert_that (validate_port_range (ports_all_privileged_tcp), is_equal_to (0));
assert_that (validate_port_range (ports_all_privileged_tcp_and_udp),
is_equal_to (0));
assert_that (validate_port_range (ports_all_tcp), is_equal_to (0));
assert_that (validate_port_range (ports_openvas_default), is_equal_to (0));
assert_that (
validate_port_range (ports_all_iana_assigned_tcp_and_udp_2020_02_12),
is_equal_to (0));
assert_that (validate_port_range (ports_all_tcp_and_nmap_5_51_top_100_udp),
is_equal_to (0));
assert_that (validate_port_range (ports_all_tcp_and_nmap_5_51_top_1000_udp),
is_equal_to (0));
assert_that (
validate_port_range (ports_nmap_5_51_top_2000_tcp_and_top_100_udp),
is_equal_to (0));
assert_that (validate_port_range (ports_web_services), is_equal_to (0));
g_free (ports_all_privileged_tcp);
g_free (ports_all_privileged_tcp_and_udp);
g_free (ports_all_tcp);
g_free (ports_openvas_default);
g_free (ports_all_iana_assigned_tcp_and_udp_2020_02_12);
g_free (ports_all_tcp_and_nmap_5_51_top_100_udp);
g_free (ports_all_tcp_and_nmap_5_51_top_1000_udp);
g_free (ports_nmap_5_51_top_2000_tcp_and_top_100_udp);
g_free (ports_all_iana_assigned_tcp_2020_02_12);
g_free (ports_web_services);
}
Ensure (networking, port_range_ranges)
{
const gchar *valid_portrange1;
array_t *valid_portrange1_ranges;
range_t *valid_portrange1_range1;
range_t *valid_portrange1_range2;
range_t *valid_portrange1_range3;
range_t *valid_portrange1_range4;
range_t *valid_portrange1_range5;
/* Valid port ranges. U:,T: are empty ranges which are ignored. */
valid_portrange1 = "1,10-13,10-10,T :1-2,U : 10-12,U:,T:";
assert_that (validate_port_range (valid_portrange1), is_equal_to (0));
assert_that (port_range_ranges (NULL), is_null);
valid_portrange1_ranges = port_range_ranges (valid_portrange1);
assert_that (valid_portrange1_ranges, is_not_null);
array_free (valid_portrange1_ranges);
valid_portrange1_ranges = port_range_ranges (valid_portrange1);
assert_that (valid_portrange1_ranges, is_not_null);
assert_that (valid_portrange1_ranges->len, is_equal_to (5));
assert_that (valid_portrange1_ranges->len, is_equal_to (5));
valid_portrange1_range1 =
(range_t *) g_ptr_array_index (valid_portrange1_ranges, 0);
assert_that (valid_portrange1_range1->start, is_equal_to (1));
assert_that (valid_portrange1_range1->end, is_equal_to (1));
assert_that (valid_portrange1_range1->exclude, is_equal_to (0));
assert_that (valid_portrange1_range1->type, is_equal_to (PORT_PROTOCOL_TCP));
valid_portrange1_range2 =
(range_t *) g_ptr_array_index (valid_portrange1_ranges, 1);
assert_that (valid_portrange1_range2->start, is_equal_to (10));
assert_that (valid_portrange1_range2->end, is_equal_to (13));
assert_that (valid_portrange1_range2->exclude, is_equal_to (0));
assert_that (valid_portrange1_range2->type, is_equal_to (PORT_PROTOCOL_TCP));
valid_portrange1_range3 =
(range_t *) g_ptr_array_index (valid_portrange1_ranges, 2);
assert_that (valid_portrange1_range3->start, is_equal_to (10));
assert_that (valid_portrange1_range3->end, is_equal_to (10));
assert_that (valid_portrange1_range3->exclude, is_equal_to (0));
assert_that (valid_portrange1_range3->type, is_equal_to (PORT_PROTOCOL_TCP));
valid_portrange1_range4 =
(range_t *) g_ptr_array_index (valid_portrange1_ranges, 3);
assert_that (valid_portrange1_range4->start, is_equal_to (1));
assert_that (valid_portrange1_range4->end, is_equal_to (2));
assert_that (valid_portrange1_range4->exclude, is_equal_to (0));
assert_that (valid_portrange1_range4->type, is_equal_to (PORT_PROTOCOL_TCP));
valid_portrange1_range5 =
(range_t *) g_ptr_array_index (valid_portrange1_ranges, 4);
assert_that (valid_portrange1_range5->start, is_equal_to (10));
assert_that (valid_portrange1_range5->end, is_equal_to (12));
assert_that (valid_portrange1_range5->exclude, is_equal_to (0));
assert_that (valid_portrange1_range5->type, is_equal_to (PORT_PROTOCOL_UDP));
array_free (valid_portrange1_ranges);
}
Ensure (networking, port_in_port_ranges)
{
const gchar *portrange;
array_t *portrange_ranges;
/* Valid port ranges. U:,T: are empty ranges which are ignored. */
portrange = "1,10-12,10-10,T:1-2,U:10-14,U:,T:";
assert_that (validate_port_range (portrange), is_equal_to (0));
portrange_ranges = port_range_ranges (portrange);
assert_that (portrange_ranges, is_not_null);
assert_that (portrange_ranges->len, is_equal_to (5));
assert_that (port_in_port_ranges (1, PORT_PROTOCOL_TCP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (10, PORT_PROTOCOL_TCP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (11, PORT_PROTOCOL_TCP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (12, PORT_PROTOCOL_TCP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (10, PORT_PROTOCOL_UDP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (11, PORT_PROTOCOL_UDP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (12, PORT_PROTOCOL_UDP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (13, PORT_PROTOCOL_UDP, portrange_ranges),
is_true);
assert_that (port_in_port_ranges (-1, PORT_PROTOCOL_TCP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (0, PORT_PROTOCOL_TCP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (90000, PORT_PROTOCOL_TCP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (1, PORT_PROTOCOL_UDP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (13, PORT_PROTOCOL_TCP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (13, PORT_PROTOCOL_TCP, portrange_ranges),
is_false);
assert_that (port_in_port_ranges (12, PORT_PROTOCOL_OTHER, portrange_ranges),
is_false);
array_free (portrange_ranges);
}
/* Test suite. */
Ensure (networking, ip_islocalhost)
{
/* IPv4 */
struct in_addr addr;
struct sockaddr_storage storage;
struct sockaddr_in sin;
memset (&sin, 0, sizeof (struct sockaddr_in));
sin.sin_family = AF_INET;
inet_pton (AF_INET, "127.0.0.1", &(addr.s_addr));
sin.sin_addr.s_addr = addr.s_addr;
memcpy (&storage, &sin, sizeof (sin));
assert_that (ip_islocalhost (&storage), is_true);
inet_pton (AF_INET, "0.0.0.0", &(addr.s_addr));
sin.sin_addr.s_addr = addr.s_addr;
memcpy (&storage, &sin, sizeof (sin));
assert_that (ip_islocalhost (&storage), is_true);
inet_pton (AF_INET, "127.100.5.99", &(addr.s_addr));
sin.sin_addr.s_addr = addr.s_addr;
memcpy (&storage, &sin, sizeof (sin));
assert_that (ip_islocalhost (&storage), is_true);
/* dependent on local environment */
// inet_pton (AF_INET, <some local interface address>, &(addr.s_addr));
// sin.sin_addr.s_addr = addr.s_addr;
// memcpy (&storage, &sin, sizeof (sin));
// assert_that (ip_islocalhost (&storage), is_true);
/* example.com */
inet_pton (AF_INET, "93.184.216.34", &(addr.s_addr));
sin.sin_addr.s_addr = addr.s_addr;
memcpy (&storage, &sin, sizeof (sin));
assert_that (ip_islocalhost (&storage), is_false);
/* IPv6 */
struct in6_addr addr_6;
struct sockaddr_in6 sin6;
memset (&sin6, 0, sizeof (struct sockaddr_in6));
sin6.sin6_family = AF_INET6;
inet_pton (AF_INET6, "::FFFF:127.0.0.1", &(addr_6));
sin6.sin6_addr = addr_6;
memcpy (&storage, &sin6, sizeof (sin6));
assert_that (ip_islocalhost (&storage), is_true);
inet_pton (AF_INET6, "::FFFF:0.0.0.0", &(addr_6));
sin6.sin6_addr = addr_6;
memcpy (&storage, &sin6, sizeof (sin6));
assert_that (ip_islocalhost (&storage), is_true);
inet_pton (AF_INET6, "::FFFF:127.100.5.99", &(addr_6));
sin6.sin6_addr = addr_6;
memcpy (&storage, &sin6, sizeof (sin6));
assert_that (ip_islocalhost (&storage), is_true);
/* loopback address */
inet_pton (AF_INET6, "0:0:0:0:0:0:0:1", &(addr_6));
sin6.sin6_addr = addr_6;
memcpy (&storage, &sin6, sizeof (sin6));
assert_that (ip_islocalhost (&storage), is_true);
/* dependent on local environment */
// inet_pton (AF_INET6, <some local interface address>, &(addr_6));
// sin6.sin6_addr = addr_6;
// memcpy (&storage, &sin6, sizeof (sin6));
// assert_that (ip_islocalhost (&storage), is_true);
/* example.com */
inet_pton (AF_INET6, "2606:2800:220:1:248:1893:25c8:1946", &(addr_6));
sin6.sin6_addr = addr_6;
memcpy (&storage, &sin6, sizeof (sin6));
assert_that (ip_islocalhost (&storage), is_false);
}
__attribute__ ((weak)) GIOChannel *
__real_g_io_channel_new_file (const char *filename, const char *mode,
GError **error);
gboolean g_g_io_channel_new_file_use_real = TRUE;
GIOChannel *
__wrap_g_io_channel_new_file (const char *filename, const char *mode,
GError **error);
GIOChannel *
__wrap_g_io_channel_new_file (const char *filename, const char *mode,
GError **error)
{
if (g_g_io_channel_new_file_use_real)
return __real_g_io_channel_new_file (filename, mode, error);
return (GIOChannel *) mock (filename, mode, error);
}
__attribute__ ((weak)) GIOStatus
__real_g_io_channel_shutdown (GIOChannel *channel, gboolean flush,
GError **err);
gboolean g_g_io_channel_shutdown_use_real = TRUE;
GIOStatus
__wrap_g_io_channel_shutdown (GIOChannel *channel, gboolean flush,
GError **err);
GIOStatus
__wrap_g_io_channel_shutdown (GIOChannel *channel, gboolean flush, GError **err)
{
if (g_g_io_channel_shutdown_use_real)
return __real_g_io_channel_shutdown (channel, flush, err);
return (GIOStatus) mock (channel, flush, err);
}
__attribute__ ((weak)) void
__real_g_io_channel_unref (GIOChannel *channel);
void
__wrap_g_io_channel_unref (GIOChannel *channel);
void
__wrap_g_io_channel_unref (GIOChannel *channel)
{
if (g_g_io_channel_shutdown_use_real)
{
__real_g_io_channel_unref (channel);
return;
}
}
Ensure (networking, get_routes)
{
int status;
int ret;
GError *err = NULL;
GIOChannel *file_channel;
GSList *list = NULL;
int list_len;
/* Content for mocked file. */
gchar *procnetroute_testfile =
"\nIface\tDestination\tGateway "
"\tFlags\tRefCnt\tUse\tMetric\tMask\t\tMTU\tWindow\tIRTT "
" "
"\nenp0s9\t00000000\t01B2A8C0\t0003\t0\t0\t100\t00000000\t0\t0\t0 "
" "
"\nenp0s8\t0038A8C0\t00000000\t0001\t0\t0\t0\t00FFFFFF\t0\t0\t0 "
" "
"\nenp0s9\t00B2A8C0\t00000000\t0001\t0\t0\t100\t00FFFFFF\t0\t0\t0 "
" \n";
/* Create mock file. */
file_channel = g_io_channel_new_file ("./myfile", "w+", NULL);
if (!file_channel)
g_warning ("Not my channel");
g_io_channel_write_chars (file_channel, procnetroute_testfile, -1, NULL,
NULL);
g_io_channel_seek_position (file_channel, 0, G_SEEK_SET, NULL);
/* Test get_routes with mocked "/proc/net/route". */
g_g_io_channel_new_file_use_real = false;
g_g_io_channel_shutdown_use_real = false;
expect (__wrap_g_io_channel_new_file,
when (filename, is_equal_to_string ("/proc/net/route")),
will_return (file_channel));
expect (__wrap_g_io_channel_shutdown, will_return (G_IO_STATUS_NORMAL));
list = get_routes ();
list_len = g_slist_length (list);
assert_that (list, is_not_null);
assert_that (list_len, is_equal_to (3));
free_routes (list);
g_g_io_channel_new_file_use_real = true;
g_g_io_channel_shutdown_use_real = true;
/* Close channel and delete mock file. */
status = g_io_channel_shutdown (file_channel, TRUE, &err);
if ((G_IO_STATUS_NORMAL != status) || err)
g_warning ("%s: Could not shutdown channel.", __func__);
if (err)
g_error_free (err);
g_io_channel_unref (file_channel);
ret = unlink ("./myfile");
if (0 != ret)
g_warning ("%s: Could not delete file \"./myfile\");", __func__);
}
Ensure (networking, gvm_routethrough_v4)
{
struct in_addr dst;
struct sockaddr_storage storage_src;
struct sockaddr_storage storage_dst;
struct sockaddr_in sin_src;
struct sockaddr_in sin_dst;
struct sockaddr_in sin_always_empty;
memset (&sin_src, 0, sizeof (struct sockaddr_in));
memset (&sin_dst, 0, sizeof (struct sockaddr_in));
memset (&sin_always_empty, 0, sizeof (struct sockaddr_in));
sin_src.sin_family = AF_INET;
sin_dst.sin_family = AF_INET;
gchar *interface = NULL;
/* No destination address. */
interface = gvm_routethrough (NULL, &storage_src);
assert_that (interface, is_null);
g_free (interface);
/* Destination address localhost and no source address. */
inet_pton (AF_INET, "127.0.0.1", &(dst.s_addr));
sin_dst.sin_addr.s_addr = dst.s_addr;
memcpy (&storage_dst, &sin_dst, sizeof (sin_dst));
interface = gvm_routethrough (&storage_dst, NULL);
assert_that (interface, is_not_null);
/* Dependent on local environment. */
// assert_that (interface, is_equal_to_string ("lo"));
g_free (interface);
/* Destination address not localhost and no source address. */
inet_pton (AF_INET, "93.184.216.34", &(dst.s_addr)); // example.com
sin_dst.sin_addr.s_addr = dst.s_addr;
memcpy (&storage_dst, &sin_dst, sizeof (sin_dst));
interface = gvm_routethrough (&storage_dst, NULL);
assert_that (interface, is_not_null);
/* Dependent on local environment. */
// assert_that (interface, is_equal_to_string ("enp0s9"));
g_free (interface);
/* Destination address localhost and source address */
inet_pton (AF_INET, "127.0.0.1", &(dst.s_addr));
sin_dst.sin_addr.s_addr = dst.s_addr;
memcpy (&storage_dst, &sin_dst, sizeof (sin_dst));
interface = gvm_routethrough (&storage_dst, &storage_src);
assert_that (interface, is_not_null);
assert_that (((struct sockaddr_in *) (&storage_src))->sin_addr.s_addr
== htonl (0x7F000001));
/* Dependent on local environment. */
// assert_that (interface, is_equal_to_string ("lo"));
g_free (interface);
/* Dst address not localhost and src address */
inet_pton (AF_INET, "93.184.216.34", &(dst.s_addr));
sin_dst.sin_addr.s_addr = dst.s_addr;
memcpy (&storage_dst, &sin_dst, sizeof (sin_dst));
memcpy (&storage_src, &sin_always_empty, sizeof (struct sockaddr_in));
interface = gvm_routethrough (&storage_dst, &storage_src);
assert_that (interface, is_not_null);
assert_that (((struct sockaddr_in *) (&storage_src))->sin_addr.s_addr
!= htonl (0x7F000001));
/* Dependent on local environment. */
// assert_that (((struct sockaddr_in *) (&storage_src))->sin_addr.s_addr !=
// 0); assert_that (interface, is_equal_to_string ("enp0s9"));
g_free (interface);
}
Ensure (networking, gvm_source_addr)
{
struct in_addr src;
/* global source address not set */
gvm_source_iface_init (NULL);
gvm_source_addr (&src);
assert_that ((src.s_addr == INADDR_ANY));
/* global source address */
gvm_source_iface_init ("lo");
gvm_source_addr (&src);
assert_that ((src.s_addr != INADDR_ANY));
}
static TestSuite *
gvm_routethough ()
{
TestSuite *suite = create_test_suite ();
add_test_with_context (suite, networking, ip_islocalhost);
add_test_with_context (suite, networking, get_routes);
add_test_with_context (suite, networking, gvm_routethrough_v4);
return suite;
}
int
main (int argc, char **argv)
{
int ret;
TestSuite *suite;
suite = create_test_suite ();
add_suite (suite, gvm_routethough ());
add_test_with_context (suite, networking, gvm_source_addr);
add_test_with_context (suite, networking, validate_port_range);
add_test_with_context (suite, networking, port_range_ranges);
add_test_with_context (suite, networking, port_in_port_ranges);
if (argc > 1)
ret = run_single_test (suite, argv[1], create_text_reporter ());
else
ret = run_test_suite (suite, create_text_reporter ());
destroy_test_suite (suite);
return ret;
}
|