Class: PSRP::Message
- Inherits:
-
Object
- Object
- PSRP::Message
- Defined in:
- lib/wsmv/psrp_message.rb
Direct Known Subclasses
Constant Summary collapse
- BLOB_HEADER_LEN =
Length of all the blob header fields: BOM, pipeline_id, runspace_pool_id, message_type, blob_destination
43
- BLOB_MAX_LEN =
Maximum allowed length of the blob
32768 - BLOB_HEADER_LEN
- MESSAGE_TYPES =
All known PSRP message types
{ SESSION_CAPABILITY: 0x00010002, INIT_RUNSPACEPOOL: 0x00010004, PUBLIC_KEY: 0x00010005, ENCRYPTED_SESSION_KEY: 0x00010006, PUBLIC_KEY_REQUEST: 0x00010007, CONNECT_RUNSPACEPOOL: 0x00010008, RUNSPACEPOOL_INIT_DATA: 0x0002100B, RESET_RUNSPACE_STATE: 0x0002100C, SET_MAX_RUNSPACES: 0x00021002, SET_MIN_RUNSPACES: 0x00021003, RUNSPACE_AVAILABILITY: 0x00021004, RUNSPACEPOOL_STATE: 0x00021005, CREATE_PIPELINE: 0x00021006, GET_AVAILABLE_RUNSPACES: 0x00021007, USER_EVENT: 0x00021008, APPLICATION_PRIVATE_DATA: 0x00021009, GET_COMMAND_METADATA: 0x0002100A, RUNSPACEPOOL_HOST_CALL: 0x00021100, RUNSPACEPOOL_HOST_RESPONSE: 0x00021101, PIPELINE_INPUT:0x00041002, END_OF_PIPELINE_INPUT: 0x00041003, PIPELINE_OUTPUT: 0x00041004, ERROR_RECORD: 0x00041005, PIPELINE_STATE: 0x00041006, DEBUG_RECORD: 0x00041007, VERBOSE_RECORD: 0x00041008, WARNING_RECORD: 0x00041009, PROGRESS_RECORD: 0x00041010, INFORMATION_RECORD: 0x00041011, PIPELINE_HOST_CALL: 0x00041100, PIPELINE_HOST_RESPONSE: 0x00041101 }
Instance Method Summary collapse
-
#uuid_to_windows_guid_bytes(uuid) ⇒ Array<byte>
Format a UUID into a GUID compatible byte array for Windows.
Instance Method Details
#uuid_to_windows_guid_bytes(uuid) ⇒ Array<byte>
Format a UUID into a GUID compatible byte array for Windows
msdn.microsoft.com/en-us/library/windows/desktop/aa373931(v=vs.85).aspx typedef struct _GUID
DWORD Data1;
WORD Data2;
WORD Data3;
BYTE Data4[8];
GUID;
82 83 84 85 86 |
# File 'lib/wsmv/psrp_message.rb', line 82 def uuid_to_windows_guid_bytes(uuid) return [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] unless uuid b = uuid.scan(/[0-9a-fA-F]{2}/).map { |x| x.to_i(16) } b[0..3].reverse + b[4..5].reverse + b[6..7].reverse + b[8..15] end |