1# Unit and integration tests for traffic_packet.py 2# 3# Copyright (C) Catalyst IT Ltd. 2017 4# 5# This program is free software; you can redistribute it and/or modify 6# it under the terms of the GNU General Public License as published by 7# the Free Software Foundation; either version 3 of the License, or 8# (at your option) any later version. 9# 10# This program is distributed in the hope that it will be useful, 11# but WITHOUT ANY WARRANTY; without even the implied warranty of 12# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13# GNU General Public License for more details. 14# 15# You should have received a copy of the GNU General Public License 16# along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18import os 19import shutil 20import tempfile 21 22 23from samba.auth import system_session 24 25from samba.credentials import MUST_USE_KERBEROS, DONT_USE_KERBEROS 26from samba.emulate import traffic_packets as p 27from samba.emulate import traffic 28from samba.emulate.traffic import Packet 29 30from samba.samdb import SamDB 31import samba.tests 32from samba import sd_utils 33 34 35class TrafficEmulatorPacketTests(samba.tests.TestCase): 36 def setUp(self): 37 super(TrafficEmulatorPacketTests, self).setUp() 38 self.server = os.environ["SERVER"] 39 self.domain = os.environ["DOMAIN"] 40 self.host = os.environ["SERVER_IP"] 41 self.lp = self.get_loadparm() 42 self.session = system_session() 43 self.credentials = self.get_credentials() 44 45 self.ldb = SamDB(url="ldap://%s" % self.host, 46 session_info=self.session, 47 credentials=self.credentials, 48 lp=self.lp) 49 self.domain_sid = self.ldb.get_domain_sid() 50 51 traffic.clean_up_accounts(self.ldb, 1) 52 self.tempdir = tempfile.mkdtemp(prefix="traffic_packet_test_") 53 self.context = traffic.ReplayContext(server=self.server, 54 lp=self.lp, 55 creds=self.credentials, 56 tempdir=self.tempdir, 57 ou=traffic.ou_name(self.ldb, 1), 58 domain_sid=self.domain_sid, 59 total_conversations=3, 60 instance_id=1) 61 62 self.conversation = traffic.Conversation() 63 self.conversation.conversation_id = 1 64 self.machinename = "STGM-1-1" 65 self.machinepass = samba.generate_random_password(32, 32) 66 self.username = "STGU-1-1" 67 self.userpass = samba.generate_random_password(32, 32) 68 account = traffic.ConversationAccounts( 69 self.machinename, 70 self.machinepass, 71 self.username, 72 self.userpass) 73 74 traffic.create_ou(self.ldb, 1) 75 traffic.create_machine_account(self.ldb, 76 1, 77 self.machinename, 78 self.machinepass) 79 traffic.create_user_account(self.ldb, 80 1, 81 self.username, 82 self.userpass) 83 84 self.context.generate_process_local_config(account, self.conversation) 85 86 # grant user write permission to do things like write account SPN 87 sdutils = sd_utils.SDUtils(self.ldb) 88 mod = "(A;;WP;;;PS)" 89 sdutils.dacl_add_ace(self.context.user_dn, mod) 90 91 def tearDown(self): 92 super(TrafficEmulatorPacketTests, self).tearDown() 93 traffic.clean_up_accounts(self.ldb, 1) 94 del self.ldb 95 shutil.rmtree(self.tempdir) 96 97 def test_packet_cldap_03(self): 98 packet = Packet.from_line( 99 "0.0\t11\t1\t2\t1\tcldap\t3\tsearchRequest\t") 100 self.assertTrue(p.packet_cldap_3(packet, 101 self.conversation, 102 self. context)) 103 104 def test_packet_cldap_05(self): 105 packet = Packet.from_line( 106 "0.0\t11\t1\t1\t2\tcldap\t5\tsearchResDone\t") 107 self.assertFalse(p.packet_cldap_5(packet, 108 self.conversation, 109 self. context)) 110 111 def test_packet_dcerpc_00(self): 112 packet = Packet.from_line("0.0\t11\t1\t2\t1\tdcerpc\t0\tRequest\t") 113 self.assertFalse(p.packet_dcerpc_0(packet, 114 self.conversation, 115 self. context)) 116 117 def test_packet_dcerpc_02(self): 118 packet = Packet.from_line("0.0\t11\t1\t1\t2\tdcerpc\t2\tResponse\t") 119 self.assertFalse(p.packet_dcerpc_2(packet, 120 self.conversation, 121 self. context)) 122 123 def test_packet_dcerpc_03(self): 124 packet = Packet.from_line("0.0\t11\t1\t1\t2\tdcerpc\t3\t\t") 125 self.assertFalse(p.packet_dcerpc_3(packet, 126 self.conversation, 127 self. context)) 128 129 def test_packet_dcerpc_11(self): 130 packet = Packet.from_line("0.0\t11\t1\t2\t1\tdcerpc\t11\tBind\t") 131 self.assertFalse(p.packet_dcerpc_11(packet, 132 self.conversation, 133 self. context)) 134 135 def test_packet_dcerpc_13(self): 136 packet = Packet.from_line("0.0\t11\t1\t2\t1\tdcerpc\t13\t\t") 137 self.assertFalse(p.packet_dcerpc_13(packet, 138 self.conversation, 139 self. context)) 140 141 def test_packet_dcerpc_14(self): 142 packet = Packet.from_line( 143 "0.0\t11\t1\t2\t1\tdcerpc\t14\tAlter_context\t") 144 self.assertFalse(p.packet_dcerpc_14(packet, 145 self.conversation, 146 self. context)) 147 148 def test_packet_dcerpc_15(self): 149 packet = Packet.from_line( 150 "0.0\t11\t1\t1\t2\tdcerpc\t15\tAlter_context_resp\t") 151 # Set user_creds MUST_USE_KERBEROS to suppress the warning message. 152 self.context.user_creds.set_kerberos_state(MUST_USE_KERBEROS) 153 self.assertFalse(p.packet_dcerpc_15(packet, 154 self.conversation, 155 self. context)) 156 157 def test_packet_dcerpc_16(self): 158 packet = Packet.from_line( 159 "0.0\t11\t1\t1\t2\tdcerpc\t16\tAUTH3\t") 160 self.assertFalse(p.packet_dcerpc_16(packet, 161 self.conversation, 162 self. context)) 163 164 def test_packet_dns_01(self): 165 packet = Packet.from_line( 166 "0.0\t11\t1\t1\t2\tdns\t1\tresponse\t") 167 self.assertFalse(p.packet_dns_1(packet, 168 self.conversation, 169 self. context)) 170 171 def test_packet_drsuapi_00(self): 172 packet = Packet.from_line( 173 "0.0\t06\t1\t1\t2\tdrsuapi\t0\tDsBind\t") 174 self.assertTrue(p.packet_drsuapi_0(packet, 175 self.conversation, 176 self. context)) 177 178 def test_packet_drsuapi_01(self): 179 packet = Packet.from_line( 180 "0.0\t06\t1\t1\t2\tdrsuapi\t1\tDsUnBind\t") 181 self.assertTrue(p.packet_drsuapi_1(packet, 182 self.conversation, 183 self. context)) 184 185 def test_packet_drsuapi_02(self): 186 packet = Packet.from_line( 187 "0.0\t06\t1\t1\t2\tdrsuapi\t2\tDsReplicaSync\t") 188 self.assertFalse(p.packet_drsuapi_2(packet, 189 self.conversation, 190 self. context)) 191 192 def test_packet_drsuapi_03(self): 193 packet = Packet.from_line( 194 "0.0\t06\t1\t1\t2\tdrsuapi\t3\tDsGetNCChanges\t") 195 self.assertFalse(p.packet_drsuapi_3(packet, 196 self.conversation, 197 self. context)) 198 199 def test_packet_drsuapi_04(self): 200 packet = Packet.from_line( 201 "0.0\t06\t1\t1\t2\tdrsuapi\t4\tDsReplicaUpdateRefs\t") 202 self.assertFalse(p.packet_drsuapi_4(packet, 203 self.conversation, 204 self. context)) 205 206 def test_packet_drsuapi_12(self): 207 packet = Packet.from_line( 208 "0.0\t06\t1\t1\t2\tdrsuapi\t12\tDsCrackNames\t") 209 self.assertTrue(p.packet_drsuapi_12(packet, 210 self.conversation, 211 self. context)) 212 213 def test_packet_drsuapi_13(self): 214 packet = Packet.from_line( 215 "0.0\t06\t1\t1\t2\tdrsuapi\t13\tDsWriteAccountSpn\t") 216 self.assertTrue(p.packet_drsuapi_13(packet, 217 self.conversation, 218 self. context)) 219 220 def test_packet_epm_03(self): 221 packet = Packet.from_line( 222 "0.0\t06\t1\t1\t2\tepm\t3\tMap\t") 223 self.assertFalse(p.packet_epm_3(packet, 224 self.conversation, 225 self. context)) 226 227 def test_packet_kerberos(self): 228 """Kerberos packets are not generated, but are used as a hint to 229 favour kerberos. 230 """ 231 packet = Packet.from_line( 232 "0.0\t11\t1\t1\t2\tkerberos\t\t\t") 233 self.assertFalse(p.packet_kerberos_(packet, 234 self.conversation, 235 self. context)) 236 self.assertEqual(MUST_USE_KERBEROS, 237 self.context.user_creds.get_kerberos_state()) 238 self.assertEqual(MUST_USE_KERBEROS, 239 self.context.user_creds_bad.get_kerberos_state()) 240 self.assertEqual(MUST_USE_KERBEROS, 241 self.context.machine_creds.get_kerberos_state()) 242 self.assertEqual(MUST_USE_KERBEROS, 243 self.context.machine_creds_bad.get_kerberos_state()) 244 self.assertEqual(MUST_USE_KERBEROS, 245 self.context.creds.get_kerberos_state()) 246 247 # Need to restore kerberos creds on the admin creds otherwise 248 # subsequent tests fail 249 self.credentials.set_kerberos_state(DONT_USE_KERBEROS) 250 251 def test_packet_ldap(self): 252 packet = Packet.from_line( 253 "0.0\t06\t1\t1\t2\tldap\t\t*** Unknown ***\t") 254 self.assertFalse(p.packet_ldap_(packet, 255 self.conversation, 256 self. context)) 257 258 def test_packet_ldap_00_sasl(self): 259 packet = Packet.from_line( 260 "0.0\t06\t1\t2\t1\tldap\t0\tbindRequest" 261 "\t\t\t\t\t3\tsasl\t1.3.6.1.5.5.2") 262 self.assertTrue(p.packet_ldap_0(packet, 263 self.conversation, 264 self. context)) 265 266 def test_packet_ldap_00_simple(self): 267 packet = Packet.from_line( 268 "0.0\t06\t1\t2\t1\tldap\t0\tbindRequest" 269 "\t\t\t\t\t0\tsimple\t") 270 self.assertTrue(p.packet_ldap_0(packet, 271 self.conversation, 272 self. context)) 273 274 def test_packet_ldap_01(self): 275 packet = Packet.from_line( 276 "0.0\t06\t1\t1\t2\tldap\t1\tbindResponse\t") 277 self.assertFalse(p.packet_ldap_1(packet, 278 self.conversation, 279 self. context)) 280 281 def test_packet_ldap_02(self): 282 packet = Packet.from_line( 283 "0.0\t06\t1\t2\t1\tldap\t2\tunbindRequest\t") 284 self.assertFalse(p.packet_ldap_2(packet, 285 self.conversation, 286 self. context)) 287 288 def test_packet_ldap_03(self): 289 packet = Packet.from_line( 290 "0.0\t06\t1\t2\t1\tldap\t3\tsearchRequest" 291 "\t2\tDC,DC\t\tcn\t\t\t") 292 self.assertTrue(p.packet_ldap_3(packet, 293 self.conversation, 294 self. context)) 295 296 def test_packet_ldap_04(self): 297 packet = Packet.from_line( 298 "0.0\t06\t1\t1\t2\tldap\t4\tsearchResEntry\t") 299 self.assertFalse(p.packet_ldap_4(packet, 300 self.conversation, 301 self. context)) 302 303 def test_packet_ldap_05(self): 304 packet = Packet.from_line( 305 "0.0\t06\t1\t1\t2\tldap\t5\tsearchResDone\t") 306 self.assertFalse(p.packet_ldap_5(packet, 307 self.conversation, 308 self. context)) 309 310 def test_packet_ldap_06(self): 311 packet = Packet.from_line( 312 "0.0\t06\t1\t2\t1\tldap\t6\tmodifyRequest\t" 313 "\t\t\t\t0\tadd") 314 self.assertFalse(p.packet_ldap_6(packet, 315 self.conversation, 316 self. context)) 317 318 def test_packet_ldap_07(self): 319 packet = Packet.from_line( 320 "0.0\t06\t1\t1\t2\tldap\t7\tmodifyResponse\t") 321 self.assertFalse(p.packet_ldap_7(packet, 322 self.conversation, 323 self. context)) 324 325 def test_packet_ldap_08(self): 326 packet = Packet.from_line( 327 "0.0\t06\t1\t2\t1\tldap\t8\taddRequest\t") 328 self.assertFalse(p.packet_ldap_8(packet, 329 self.conversation, 330 self. context)) 331 332 def test_packet_ldap_09(self): 333 packet = Packet.from_line( 334 "0.0\t06\t1\t1\t2\tldap\t9\taddResponse\t") 335 self.assertFalse(p.packet_ldap_9(packet, 336 self.conversation, 337 self. context)) 338 339 def test_packet_ldap_16(self): 340 packet = Packet.from_line( 341 "0.0\t06\t1\t2\t1\tldap\t16\tabandonRequest\t") 342 self.assertFalse(p.packet_ldap_16(packet, 343 self.conversation, 344 self. context)) 345 346 def test_packet_lsarpc_00(self): 347 packet = Packet.from_line( 348 "0.0\t06\t1\t2\t1\tlsarpc\t0\tlsa_Close\t") 349 self.assertFalse(p.packet_lsarpc_1(packet, 350 self.conversation, 351 self. context)) 352 353 def test_packet_lsarpc_01(self): 354 packet = Packet.from_line( 355 "0.0\t06\t1\t2\t1\tlsarpc\t1\tlsa_Delete\t") 356 self.assertFalse(p.packet_lsarpc_1(packet, 357 self.conversation, 358 self. context)) 359 360 def test_packet_lsarpc_02(self): 361 packet = Packet.from_line( 362 "0.0\t06\t1\t2\t1\tlsarpc\t2\tlsa_EnumeratePrivileges\t") 363 self.assertFalse(p.packet_lsarpc_2(packet, 364 self.conversation, 365 self. context)) 366 367 def test_packet_lsarpc_03(self): 368 packet = Packet.from_line( 369 "0.0\t06\t1\t2\t1\tlsarpc\t3\tlsa_QuerySecurityObject\t") 370 self.assertFalse(p.packet_lsarpc_3(packet, 371 self.conversation, 372 self. context)) 373 374 def test_packet_lsarpc_04(self): 375 packet = Packet.from_line( 376 "0.0\t06\t1\t2\t1\tlsarpc\t4\tlsa_SetSecurityObject\t") 377 self.assertFalse(p.packet_lsarpc_4(packet, 378 self.conversation, 379 self. context)) 380 381 def test_packet_lsarpc_05(self): 382 packet = Packet.from_line( 383 "0.0\t06\t1\t2\t1\tlsarpc\t5\tlsa_ChangePassword\t") 384 self.assertFalse(p.packet_lsarpc_5(packet, 385 self.conversation, 386 self. context)) 387 388 def test_packet_lsarpc_06(self): 389 packet = Packet.from_line( 390 "0.0\t06\t1\t2\t1\tlsarpc\t6\tlsa_OpenPolicy\t") 391 self.assertFalse(p.packet_lsarpc_6(packet, 392 self.conversation, 393 self. context)) 394 395 def test_packet_lsarpc_14(self): 396 packet = Packet.from_line( 397 "0.0\t06\t1\t2\t1\tlsarpc\t14\tlsa_LookupNames\t") 398 self.assertTrue(p.packet_lsarpc_14(packet, 399 self.conversation, 400 self. context)) 401 402 def test_packet_lsarpc_15(self): 403 packet = Packet.from_line( 404 "0.0\t06\t1\t2\t1\tlsarpc\t15\tlsa_LookupSids\t") 405 self.assertTrue(p.packet_lsarpc_15(packet, 406 self.conversation, 407 self. context)) 408 409 def test_packet_lsarpc_39(self): 410 packet = Packet.from_line( 411 "0.0\t06\t1\t2\t1\tlsarpc\t39\tlsa_QueryTrustedDomainInfoBySid\t") 412 self.assertTrue(p.packet_lsarpc_39(packet, 413 self.conversation, 414 self. context)) 415 416 def test_packet_lsarpc_40(self): 417 packet = Packet.from_line( 418 "0.0\t06\t1\t2\t1\tlsarpc\t40\tlsa_SetTrustedDomainInfo\t") 419 self.assertFalse(p.packet_lsarpc_40(packet, 420 self.conversation, 421 self. context)) 422 423 def test_packet_lsarpc_43(self): 424 packet = Packet.from_line( 425 "0.0\t06\t1\t2\t1\tlsarpc\t43\tlsa_StorePrivateData\t") 426 self.assertFalse(p.packet_lsarpc_43(packet, 427 self.conversation, 428 self. context)) 429 430 def test_packet_lsarpc_44(self): 431 packet = Packet.from_line( 432 "0.0\t06\t1\t2\t1\tlsarpc\t44\tlsa_RetrievePrivateData\t") 433 self.assertFalse(p.packet_lsarpc_44(packet, 434 self.conversation, 435 self. context)) 436 437 def test_packet_lsarpc_68(self): 438 packet = Packet.from_line( 439 "0.0\t06\t1\t2\t1\tlsarpc\t68\tlsa_LookupNames3\t") 440 self.assertFalse(p.packet_lsarpc_68(packet, 441 self.conversation, 442 self. context)) 443 444 def test_packet_lsarpc_76(self): 445 packet = Packet.from_line( 446 "0.0\t06\t1\t2\t1\tlsarpc\t76\tlsa_LookupSids3\t") 447 self.assertTrue(p.packet_lsarpc_76(packet, 448 self.conversation, 449 self. context)) 450 451 def test_packet_lsarpc_77(self): 452 packet = Packet.from_line( 453 "0.0\t06\t1\t2\t1\tlsarpc\t77\tlsa_LookupNames4\t") 454 self.assertTrue(p.packet_lsarpc_77(packet, 455 self.conversation, 456 self. context)) 457 458 def test_packet_nbns_00(self): 459 packet = Packet.from_line( 460 "0.0\t06\t1\t2\t1\tnbns\t0\tquery\t") 461 self.assertTrue(p.packet_nbns_0(packet, 462 self.conversation, 463 self. context)) 464 465 def test_packet_nbns_01(self): 466 packet = Packet.from_line( 467 "0.0\t06\t1\t1\t2\tnbns\t1\tresponse\t") 468 self.assertTrue(p.packet_nbns_0(packet, 469 self.conversation, 470 self. context)) 471 472 def test_packet_rpc_netlogon_00(self): 473 packet = Packet.from_line( 474 "0.0\t06\t1\t2\t1\trpc_netlogon\t0\tNetrLogonUasLogon\t") 475 self.assertFalse(p.packet_rpc_netlogon_0(packet, 476 self.conversation, 477 self. context)) 478 479 def test_packet_rpc_netlogon_01(self): 480 packet = Packet.from_line( 481 "0.0\t06\t1\t2\t1\trpc_netlogon\t1\tNetrLogonUasLogoff\t") 482 self.assertFalse(p.packet_rpc_netlogon_1(packet, 483 self.conversation, 484 self. context)) 485 486 def test_packet_rpc_netlogon_04(self): 487 packet = Packet.from_line( 488 "0.0\t06\t1\t2\t1\trpc_netlogon\t4\tNetrServerReqChallenge\t") 489 self.assertFalse(p.packet_rpc_netlogon_4(packet, 490 self.conversation, 491 self. context)) 492 493 def test_packet_rpc_netlogon_14(self): 494 packet = Packet.from_line( 495 "0.0\t06\t1\t2\t1\trpc_netlogon\t14\tNetrLogonControl2\t") 496 self.assertFalse(p.packet_rpc_netlogon_14(packet, 497 self.conversation, 498 self. context)) 499 500 def test_packet_rpc_netlogon_15(self): 501 packet = Packet.from_line( 502 "0.0\t06\t1\t2\t1\trpc_netlogon\t15\tNetrServerAuthenticate2\t") 503 self.assertFalse(p.packet_rpc_netlogon_15(packet, 504 self.conversation, 505 self. context)) 506 507 def test_packet_rpc_netlogon_21(self): 508 packet = Packet.from_line( 509 "0.0\t06\t1\t2\t1\trpc_netlogon\t21\tNetrLogonDummyRoutine1\t") 510 self.assertFalse(p.packet_rpc_netlogon_21(packet, 511 self.conversation, 512 self. context)) 513 514 def test_packet_rpc_netlogon_26(self): 515 packet = Packet.from_line( 516 "0.0\t06\t1\t2\t1\trpc_netlogon\t26\tNetrServerAuthenticate3\t") 517 self.assertFalse(p.packet_rpc_netlogon_26(packet, 518 self.conversation, 519 self. context)) 520 521 def test_packet_rpc_netlogon_29(self): 522 packet = Packet.from_line( 523 "0.0\t06\t1\t2\t1\trpc_netlogon\t29\tNetrLogonGetDomainInfo\t") 524 self.assertTrue(p.packet_rpc_netlogon_29(packet, 525 self.conversation, 526 self. context)) 527 528 def test_packet_rpc_netlogon_30(self): 529 packet = Packet.from_line( 530 "0.0\t06\t1\t2\t1\trpc_netlogon\t30\tNetrServerPasswordSet2\t") 531 self.assertTrue(p.packet_rpc_netlogon_30(packet, 532 self.conversation, 533 self. context)) 534 535 def test_packet_rpc_netlogon_34(self): 536 packet = Packet.from_line( 537 "0.0\t06\t1\t2\t1\trpc_netlogon\t34\tDsrGetDcNameEx2\t") 538 self.assertFalse(p.packet_rpc_netlogon_34(packet, 539 self.conversation, 540 self. context)) 541 542 def test_packet_rpc_netlogon_39(self): 543 packet = Packet.from_line( 544 "0.0\t06\t1\t2\t1\trpc_netlogon\t39\tNetrLogonSamLogonEx\t") 545 self.assertTrue(p.packet_rpc_netlogon_39(packet, 546 self.conversation, 547 self. context)) 548 549 def test_packet_rpc_netlogon_40(self): 550 packet = Packet.from_line( 551 "0.0\t06\t1\t2\t1\trpc_netlogon\t40\tDsrEnumerateDomainTrusts\t") 552 self.assertTrue(p.packet_rpc_netlogon_40(packet, 553 self.conversation, 554 self. context)) 555 556 def test_packet_rpc_netlogon_45(self): 557 packet = Packet.from_line( 558 "0.0\t06\t1\t2\t1\trpc_netlogon\t45\tNetrLogonSamLogonWithFlags\t") 559 self.assertTrue(p.packet_rpc_netlogon_45(packet, 560 self.conversation, 561 self. context)) 562 563 def test_packet_samr_00(self): 564 packet = Packet.from_line( 565 "0.0\t06\t1\t2\t1\tsamr\t0\tConnect\t") 566 self.assertTrue(p.packet_samr_0(packet, 567 self.conversation, 568 self. context)) 569 570 def test_packet_samr_01(self): 571 packet = Packet.from_line( 572 "0.0\t06\t1\t2\t1\tsamr\t1\tClose\t") 573 self.assertTrue(p.packet_samr_1(packet, 574 self.conversation, 575 self. context)) 576 577 def test_packet_samr_03(self): 578 packet = Packet.from_line( 579 "0.0\t06\t1\t2\t1\tsamr\t3\tQuerySecurity\t") 580 self.assertTrue(p.packet_samr_3(packet, 581 self.conversation, 582 self. context)) 583 584 def test_packet_samr_05(self): 585 packet = Packet.from_line( 586 "0.0\t06\t1\t2\t1\tsamr\t5\tLookupDomain\t") 587 self.assertTrue(p.packet_samr_5(packet, 588 self.conversation, 589 self. context)) 590 591 def test_packet_samr_06(self): 592 packet = Packet.from_line( 593 "0.0\t06\t1\t2\t1\tsamr\t6\tEnumDomains\t") 594 self.assertTrue(p.packet_samr_6(packet, 595 self.conversation, 596 self. context)) 597 598 def test_packet_samr_07(self): 599 packet = Packet.from_line( 600 "0.0\t06\t1\t2\t1\tsamr\t7\tOpenDomain\t") 601 self.assertTrue(p.packet_samr_7(packet, 602 self.conversation, 603 self. context)) 604 605 def test_packet_samr_08(self): 606 packet = Packet.from_line( 607 "0.0\t06\t1\t2\t1\tsamr\t8\tQueryDomainInfo'\t") 608 self.assertTrue(p.packet_samr_8(packet, 609 self.conversation, 610 self. context)) 611 612 def test_packet_samr_14(self): 613 packet = Packet.from_line( 614 "0.0\t06\t1\t2\t1\tsamr\t14\tCreateDomAlias\t") 615 self.assertFalse(p.packet_samr_14(packet, 616 self.conversation, 617 self. context)) 618 619 def test_packet_samr_15(self): 620 packet = Packet.from_line( 621 "0.0\t06\t1\t2\t1\tsamr\t15\tEnumDomainAliases\t") 622 self.assertTrue(p.packet_samr_15(packet, 623 self.conversation, 624 self. context)) 625 626 def test_packet_samr_16(self): 627 packet = Packet.from_line( 628 "0.0\t06\t1\t2\t1\tsamr\t16\tGetAliasMembership\t") 629 self.assertTrue(p.packet_samr_16(packet, 630 self.conversation, 631 self. context)) 632 633 def test_packet_samr_17(self): 634 packet = Packet.from_line( 635 "0.0\t06\t1\t2\t1\tsamr\t17\tLookupNames\t") 636 self.assertTrue(p.packet_samr_17(packet, 637 self.conversation, 638 self. context)) 639 640 def test_packet_samr_18(self): 641 packet = Packet.from_line( 642 "0.0\t06\t1\t2\t1\tsamr\t18\tLookupRids\t") 643 self.assertTrue(p.packet_samr_18(packet, 644 self.conversation, 645 self. context)) 646 647 def test_packet_samr_19(self): 648 packet = Packet.from_line( 649 "0.0\t06\t1\t2\t1\tsamr\t19\tOpenGroup\t") 650 self.assertTrue(p.packet_samr_19(packet, 651 self.conversation, 652 self. context)) 653 654 def test_packet_samr_25(self): 655 packet = Packet.from_line( 656 "0.0\t06\t1\t2\t1\tsamr\t25\tQueryGroupMember\t") 657 self.assertTrue(p.packet_samr_25(packet, 658 self.conversation, 659 self. context)) 660 661 def test_packet_samr_34(self): 662 packet = Packet.from_line( 663 "0.0\t06\t1\t2\t1\tsamr\t34\tOpenUser\t") 664 self.assertTrue(p.packet_samr_34(packet, 665 self.conversation, 666 self. context)) 667 668 def test_packet_samr_36(self): 669 packet = Packet.from_line( 670 "0.0\t06\t1\t2\t1\tsamr\t36\tQueryUserInfo\t") 671 self.assertTrue(p.packet_samr_36(packet, 672 self.conversation, 673 self. context)) 674 675 def test_packet_samr_37(self): 676 packet = Packet.from_line( 677 "0.0\t06\t1\t2\t1\tsamr\t37\tSetUserInfo\t") 678 self.assertFalse(p.packet_samr_37(packet, 679 self.conversation, 680 self. context)) 681 682 def test_packet_samr_39(self): 683 packet = Packet.from_line( 684 "0.0\t06\t1\t2\t1\tsamr\t39\tGetGroupsForUser\t") 685 self.assertTrue(p.packet_samr_39(packet, 686 self.conversation, 687 self. context)) 688 689 def test_packet_samr_40(self): 690 packet = Packet.from_line( 691 "0.0\t06\t1\t2\t1\tsamr\t40\tQueryDisplayInfo\t") 692 self.assertFalse(p.packet_samr_40(packet, 693 self.conversation, 694 self. context)) 695 696 def test_packet_samr_44(self): 697 packet = Packet.from_line( 698 "0.0\t06\t1\t2\t1\tsamr\t44\tGetUserPwInfo\t") 699 self.assertFalse(p.packet_samr_44(packet, 700 self.conversation, 701 self. context)) 702 703 def test_packet_samr_57(self): 704 packet = Packet.from_line( 705 "0.0\t06\t1\t2\t1\tsamr\t57\tConnect2\t") 706 self.assertTrue(p.packet_samr_57(packet, 707 self.conversation, 708 self. context)) 709 710 def test_packet_samr_64(self): 711 packet = Packet.from_line( 712 "0.0\t06\t1\t2\t1\tsamr\t64\tConnect5\t") 713 self.assertTrue(p.packet_samr_64(packet, 714 self.conversation, 715 self. context)) 716 717 def test_packet_samr_68(self): 718 packet = Packet.from_line( 719 "0.0\t06\t1\t2\t1\tsamr\t68\t\t") 720 self.assertFalse(p.packet_samr_68(packet, 721 self.conversation, 722 self. context)) 723 724 def test_packet_srvsvc_16(self): 725 packet = Packet.from_line( 726 "0.0\t06\t1\t2\t1\tsrvsvc\t16\tNetShareGetInfo\t") 727 self.assertTrue(p.packet_srvsvc_16(packet, 728 self.conversation, 729 self. context)) 730 731 def test_packet_srvsvc_21(self): 732 packet = Packet.from_line( 733 "0.0\t06\t1\t2\t1\tsrvsvc\t21\tNetSrvGetInfo\t") 734 self.assertTrue(p.packet_srvsvc_21(packet, 735 self.conversation, 736 self. context)) 737