MCPcopy
hub / github.com/fortra/impacket / test_8

Method test_8

tests/SMB_RPC/test_rpch.py:261–293  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

259 # TODO: Check ClientAddress. Why is it in the padding?!
260
261 def test_8(self):
262 # CONN/A2
263 resp = b'\x05\x00\x14\x03\x10\x00\x00\x00\x54\x00\x00\x00\x00\x00' + \
264 b'\x00\x00\x10\x00\x05\x00\x06\x00\x00\x00\x01\x00\x00\x00' + \
265 b'\x03\x00\x00\x00\x61\xec\x8b\xb3\x40\x28\xa8\x46\xba\xfd' + \
266 b'\x90\xcf\x6d\x31\xdc\x29\x03\x00\x00\x00\xbc\x38\x10\x35' + \
267 b'\xa7\xf0\x3d\x43\x9c\x3f\x44\x85\x6e\xf1\xc3\xb0\x04\x00' + \
268 b'\x00\x00\x00\x00\x00\x40\x00\x00\x00\x00\x00\x00\x01\x00'
269
270 packet = rpch.RTSHeader(resp)
271 packet.dump()
272
273 pduData = packet['pduData']
274 numberOfCommands = packet['NumberOfCommands']
275
276 self.assertEqual(packet['Flags'], rpch.RTS_FLAG_OUT_CHANNEL)
277
278 server_cmds = []
279 while numberOfCommands > 0:
280 numberOfCommands -= 1
281
282 cmd_type = unpack('<L', pduData[:4])[0]
283 cmd = rpch.COMMANDS[cmd_type](pduData)
284 server_cmds.append(cmd)
285 pduData = pduData[len(cmd):]
286
287 for cmd in server_cmds:
288 cmd.dump()
289
290 channelLifetime = rpch.ChannelLifetime()
291 channelLifetime['ChannelLifetime'] = 1073741824
292
293 self.assertEqual(server_cmds[-2].getData(), channelLifetime.getData())
294
295
296# Process command-line arguments.

Callers

nothing calls this directly

Calls 3

appendMethod · 0.80
dumpMethod · 0.45
getDataMethod · 0.45

Tested by

no test coverage detected