winrm 2.2.3 → 2.3.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/README.md +1 -1
- data/bin/rwinrm +90 -97
- data/lib/winrm/connection.rb +84 -86
- data/lib/winrm/connection_opts.rb +90 -91
- data/lib/winrm/exceptions.rb +14 -2
- data/lib/winrm/http/response_handler.rb +127 -96
- data/lib/winrm/http/transport.rb +462 -427
- data/lib/winrm/http/transport_factory.rb +1 -5
- data/lib/winrm/output.rb +1 -2
- data/lib/winrm/psrp/fragment.rb +0 -2
- data/lib/winrm/psrp/message.rb +128 -130
- data/lib/winrm/psrp/message_data/base.rb +0 -2
- data/lib/winrm/psrp/message_data/error_record.rb +2 -2
- data/lib/winrm/psrp/message_data/pipeline_host_call.rb +0 -2
- data/lib/winrm/psrp/message_data/pipeline_output.rb +48 -54
- data/lib/winrm/psrp/message_data/pipeline_state.rb +0 -2
- data/lib/winrm/psrp/message_data/runspacepool_host_call.rb +0 -2
- data/lib/winrm/psrp/message_data/runspacepool_state.rb +0 -2
- data/lib/winrm/psrp/message_data/session_capability.rb +0 -2
- data/lib/winrm/psrp/message_data.rb +0 -2
- data/lib/winrm/psrp/message_defragmenter.rb +2 -2
- data/lib/winrm/psrp/message_factory.rb +16 -5
- data/lib/winrm/psrp/message_fragmenter.rb +1 -3
- data/lib/winrm/psrp/powershell_output_decoder.rb +142 -144
- data/lib/winrm/psrp/receive_response_reader.rb +3 -5
- data/lib/winrm/psrp/uuid.rb +1 -2
- data/lib/winrm/shells/base.rb +7 -4
- data/lib/winrm/shells/cmd.rb +63 -65
- data/lib/winrm/shells/power_shell.rb +207 -202
- data/lib/winrm/shells/retryable.rb +44 -45
- data/lib/winrm/shells/shell_factory.rb +0 -2
- data/lib/winrm/version.rb +1 -3
- data/lib/winrm/wsmv/base.rb +0 -2
- data/lib/winrm/wsmv/cleanup_command.rb +1 -2
- data/lib/winrm/wsmv/close_shell.rb +1 -2
- data/lib/winrm/wsmv/command.rb +2 -3
- data/lib/winrm/wsmv/command_output.rb +2 -3
- data/lib/winrm/wsmv/command_output_decoder.rb +1 -2
- data/lib/winrm/wsmv/configuration.rb +0 -2
- data/lib/winrm/wsmv/create_pipeline.rb +0 -2
- data/lib/winrm/wsmv/create_shell.rb +2 -6
- data/lib/winrm/wsmv/header.rb +213 -215
- data/lib/winrm/wsmv/init_runspace_pool.rb +96 -95
- data/lib/winrm/wsmv/iso8601_duration.rb +0 -2
- data/lib/winrm/wsmv/keep_alive.rb +0 -2
- data/lib/winrm/wsmv/receive_response_reader.rb +128 -126
- data/lib/winrm/wsmv/send_data.rb +0 -2
- data/lib/winrm/wsmv/soap.rb +0 -2
- data/lib/winrm/wsmv/wql_pull.rb +54 -56
- data/lib/winrm/wsmv/wql_query.rb +98 -99
- data/lib/winrm/wsmv/write_stdin.rb +0 -2
- data/lib/winrm.rb +3 -5
- metadata +81 -135
- data/.gitignore +0 -10
- data/.rubocop.yml +0 -26
- data/.travis.yml +0 -11
- data/Gemfile +0 -3
- data/Rakefile +0 -34
- data/Vagrantfile +0 -6
- data/WinrmAppveyor.psm1 +0 -32
- data/appveyor.yml +0 -51
- data/changelog.md +0 -128
- data/preamble +0 -17
- data/tests/integration/auth_timeout_spec.rb +0 -18
- data/tests/integration/cmd_spec.rb +0 -131
- data/tests/integration/config-example.yml +0 -16
- data/tests/integration/issue_59_spec.rb +0 -26
- data/tests/integration/powershell_spec.rb +0 -165
- data/tests/integration/spec_helper.rb +0 -65
- data/tests/integration/transport_spec.rb +0 -99
- data/tests/integration/wql_spec.rb +0 -34
- data/tests/matchers.rb +0 -60
- data/tests/spec/configuration_spec.rb +0 -184
- data/tests/spec/connection_spec.rb +0 -39
- data/tests/spec/exception_spec.rb +0 -50
- data/tests/spec/http/transport_factory_spec.rb +0 -68
- data/tests/spec/http/transport_spec.rb +0 -44
- data/tests/spec/output_spec.rb +0 -127
- data/tests/spec/psrp/fragment_spec.rb +0 -62
- data/tests/spec/psrp/message_data/base_spec.rb +0 -13
- data/tests/spec/psrp/message_data/error_record_spec.rb +0 -41
- data/tests/spec/psrp/message_data/pipeline_host_call_spec.rb +0 -25
- data/tests/spec/psrp/message_data/pipeline_output_spec.rb +0 -32
- data/tests/spec/psrp/message_data/pipeline_state_spec.rb +0 -40
- data/tests/spec/psrp/message_data/runspace_pool_host_call_spec.rb +0 -25
- data/tests/spec/psrp/message_data/runspacepool_state_spec.rb +0 -16
- data/tests/spec/psrp/message_data/session_capability_spec.rb +0 -30
- data/tests/spec/psrp/message_data_spec.rb +0 -35
- data/tests/spec/psrp/message_defragmenter_spec.rb +0 -47
- data/tests/spec/psrp/message_fragmenter_spec.rb +0 -105
- data/tests/spec/psrp/powershell_output_decoder_spec.rb +0 -100
- data/tests/spec/psrp/psrp_message_spec.rb +0 -70
- data/tests/spec/psrp/recieve_response_reader_spec.rb +0 -172
- data/tests/spec/psrp/uuid_spec.rb +0 -28
- data/tests/spec/response_handler_spec.rb +0 -61
- data/tests/spec/shells/base_spec.rb +0 -225
- data/tests/spec/shells/cmd_spec.rb +0 -75
- data/tests/spec/shells/powershell_spec.rb +0 -175
- data/tests/spec/spec_helper.rb +0 -47
- data/tests/spec/stubs/clixml/error_record.xml.erb +0 -84
- data/tests/spec/stubs/clixml/pipeline_state.xml.erb +0 -88
- data/tests/spec/stubs/responses/get_command_output_response.xml.erb +0 -13
- data/tests/spec/stubs/responses/get_command_output_response_not_done.xml.erb +0 -10
- data/tests/spec/stubs/responses/get_powershell_keepalive_response.xml.erb +0 -10
- data/tests/spec/stubs/responses/get_powershell_output_response.xml.erb +0 -12
- data/tests/spec/stubs/responses/get_powershell_output_response_not_done.xml.erb +0 -9
- data/tests/spec/stubs/responses/open_shell_v1.xml +0 -19
- data/tests/spec/stubs/responses/open_shell_v2.xml +0 -20
- data/tests/spec/stubs/responses/soap_fault_v1.xml +0 -36
- data/tests/spec/stubs/responses/soap_fault_v2.xml +0 -42
- data/tests/spec/stubs/responses/wmi_error_v2.xml +0 -41
- data/tests/spec/wsmv/cleanup_command_spec.rb +0 -22
- data/tests/spec/wsmv/close_shell_spec.rb +0 -17
- data/tests/spec/wsmv/command_output_decoder_spec.rb +0 -37
- data/tests/spec/wsmv/command_output_spec.rb +0 -45
- data/tests/spec/wsmv/command_spec.rb +0 -19
- data/tests/spec/wsmv/configuration_spec.rb +0 -17
- data/tests/spec/wsmv/create_pipeline_spec.rb +0 -31
- data/tests/spec/wsmv/create_shell_spec.rb +0 -38
- data/tests/spec/wsmv/init_runspace_pool_spec.rb +0 -36
- data/tests/spec/wsmv/keep_alive_spec.rb +0 -21
- data/tests/spec/wsmv/receive_response_reader_spec.rb +0 -123
- data/tests/spec/wsmv/send_data_spec.rb +0 -30
- data/tests/spec/wsmv/wql_query_spec.rb +0 -13
- data/tests/spec/wsmv/write_stdin_spec.rb +0 -22
- data/winrm.gemspec +0 -47
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0"?>
|
|
2
|
-
<Obj RefId="0">
|
|
3
|
-
<MS>
|
|
4
|
-
<I32 N="PipelineState"><%= pipeline_state %></I32>
|
|
5
|
-
<Obj N="ExceptionAsErrorRecord" RefId="1">
|
|
6
|
-
<TN RefId="0">
|
|
7
|
-
<T>System.Management.Automation.ErrorRecord</T>
|
|
8
|
-
<T>System.Object</T>
|
|
9
|
-
</TN>
|
|
10
|
-
<ToString><%= error_message %></ToString>
|
|
11
|
-
<MS>
|
|
12
|
-
<Obj N="Exception" RefId="2">
|
|
13
|
-
<TN RefId="1">
|
|
14
|
-
<T>System.Management.Automation.RuntimeException</T>
|
|
15
|
-
<T>Microsoft.PowerShell.CoreClr.Stubs.SystemException</T>
|
|
16
|
-
<T>System.Exception</T>
|
|
17
|
-
<T>System.Object</T>
|
|
18
|
-
</TN>
|
|
19
|
-
<ToString>System.Management.Automation.RuntimeException: <%= error_message %></ToString>
|
|
20
|
-
<Props>
|
|
21
|
-
<S N="ErrorRecord"><%= error_message %></S>
|
|
22
|
-
<B N="WasThrownFromThrowStatement">true</B>
|
|
23
|
-
<S N="Message"><%= error_message %></S>
|
|
24
|
-
<Obj N="Data" RefId="3">
|
|
25
|
-
<TN RefId="2">
|
|
26
|
-
<T>System.Collections.ListDictionaryInternal</T>
|
|
27
|
-
<T>System.Object</T>
|
|
28
|
-
</TN>
|
|
29
|
-
<DCT />
|
|
30
|
-
</Obj>
|
|
31
|
-
<Nil N="InnerException" />
|
|
32
|
-
<Nil N="StackTrace" />
|
|
33
|
-
<Nil N="HelpLink" />
|
|
34
|
-
<Nil N="Source" />
|
|
35
|
-
<I32 N="HResult">-2146233088</I32>
|
|
36
|
-
</Props>
|
|
37
|
-
</Obj>
|
|
38
|
-
<S N="TargetObject"><%= error_message %></S>
|
|
39
|
-
<S N="FullyQualifiedErrorId"><%= error_id %></S>
|
|
40
|
-
<Obj N="InvocationInfo" RefId="4">
|
|
41
|
-
<TN RefId="3">
|
|
42
|
-
<T>System.Management.Automation.InvocationInfo</T>
|
|
43
|
-
<T>System.Object</T>
|
|
44
|
-
</TN>
|
|
45
|
-
<ToString>System.Management.Automation.InvocationInfo</ToString>
|
|
46
|
-
<Props>
|
|
47
|
-
<Nil N="MyCommand" />
|
|
48
|
-
<Obj N="BoundParameters" RefId="5">
|
|
49
|
-
<TN RefId="4">
|
|
50
|
-
<T>System.Collections.Generic.Dictionary`2[[System.String, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]</T>
|
|
51
|
-
<T>System.Object</T>
|
|
52
|
-
</TN>
|
|
53
|
-
<DCT />
|
|
54
|
-
</Obj>
|
|
55
|
-
<Obj N="UnboundArguments" RefId="6">
|
|
56
|
-
<TN RefId="5">
|
|
57
|
-
<T>System.Collections.Generic.List`1[[System.Object, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]</T>
|
|
58
|
-
<T>System.Object</T>
|
|
59
|
-
</TN>
|
|
60
|
-
<LST />
|
|
61
|
-
</Obj>
|
|
62
|
-
<I32 N="ScriptLineNumber">1</I32>
|
|
63
|
-
<I32 N="OffsetInLine">1</I32>
|
|
64
|
-
<I64 N="HistoryId">-1</I64>
|
|
65
|
-
<S N="ScriptName"></S>
|
|
66
|
-
<S N="Line">throw '<%= error_message %>'</S>
|
|
67
|
-
<S N="PositionMessage">At line:1 char:1_x000D__x000A_+ throw '<%= error_message %>'_x000D__x000A_+ ~~~~~~~~~~~~~~~~~~~~~~~~</S>
|
|
68
|
-
<S N="PSScriptRoot"></S>
|
|
69
|
-
<Nil N="PSCommandPath" />
|
|
70
|
-
<S N="InvocationName"></S>
|
|
71
|
-
<I32 N="PipelineLength">0</I32>
|
|
72
|
-
<I32 N="PipelinePosition">0</I32>
|
|
73
|
-
<B N="ExpectingInput">false</B>
|
|
74
|
-
<S N="CommandOrigin">Internal</S>
|
|
75
|
-
<Nil N="DisplayScriptPosition" />
|
|
76
|
-
</Props>
|
|
77
|
-
</Obj>
|
|
78
|
-
<I32 N="ErrorCategory_Category">14</I32>
|
|
79
|
-
<S N="ErrorCategory_Activity"></S>
|
|
80
|
-
<S N="ErrorCategory_Reason">RuntimeException</S>
|
|
81
|
-
<S N="ErrorCategory_TargetName"><%= error_message %></S><S N="ErrorCategory_TargetType">String</S>
|
|
82
|
-
<S N="ErrorCategory_Message"><%= category_message %></S>
|
|
83
|
-
<B N="SerializeExtendedInfo">false</B>
|
|
84
|
-
<S N="ErrorDetails_ScriptStackTrace">at <ScriptBlock>, <No file>: line 1</S>
|
|
85
|
-
</MS>
|
|
86
|
-
</Obj>
|
|
87
|
-
</MS>
|
|
88
|
-
</Obj>
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xml:lang='en-US' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
</s:Header>
|
|
4
|
-
<s:Body>
|
|
5
|
-
<rsp:ReceiveResponse>
|
|
6
|
-
<rsp:Stream CommandId='<%= command_id %>' Name='stdout'><%= test_data_stdout %></rsp:Stream>
|
|
7
|
-
<rsp:Stream CommandId='<%= command_id %>' End='true' Name='stderr'><%= test_data_stderr %></rsp:Stream>
|
|
8
|
-
<rsp:CommandState CommandId='<%= command_id %>' State='http://schemas.microsoft.com/wbem/wsman/1/windows/shell/CommandState/Done'>
|
|
9
|
-
<rsp:ExitCode>0</rsp:ExitCode>
|
|
10
|
-
</rsp:CommandState>
|
|
11
|
-
</rsp:ReceiveResponse>
|
|
12
|
-
</s:Body>
|
|
13
|
-
</s:Envelope>
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xml:lang='en-US' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
</s:Header>
|
|
4
|
-
<s:Body>
|
|
5
|
-
<rsp:ReceiveResponse>
|
|
6
|
-
<rsp:Stream CommandId='<%= command_id %>' Name='stdout'><%= test_data_stdout %></rsp:Stream>
|
|
7
|
-
<rsp:Stream CommandId='<%= command_id %>' End='true' Name='stderr'><%= test_data_stderr %></rsp:Stream>
|
|
8
|
-
</rsp:ReceiveResponse>
|
|
9
|
-
</s:Body>
|
|
10
|
-
</s:Envelope>
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xml:lang='en-US' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
</s:Header>
|
|
4
|
-
<s:Body>
|
|
5
|
-
<rsp:ReceiveResponse>
|
|
6
|
-
<rsp:Stream Name='stdout'><%= test_data_stdout1 %></rsp:Stream>
|
|
7
|
-
<rsp:Stream Name='stdout'><%= test_data_stdout2 %></rsp:Stream>
|
|
8
|
-
</rsp:ReceiveResponse>
|
|
9
|
-
</s:Body>
|
|
10
|
-
</s:Envelope>
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xml:lang='en-US' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
</s:Header>
|
|
4
|
-
<s:Body>
|
|
5
|
-
<rsp:ReceiveResponse>
|
|
6
|
-
<rsp:Stream CommandId='<%= command_id %>' Name='stdout'><%= test_data_stdout %></rsp:Stream>
|
|
7
|
-
<rsp:CommandState CommandId='<%= command_id %>' State='http://schemas.microsoft.com/wbem/wsman/1/windows/shell/CommandState/Done'>
|
|
8
|
-
<rsp:ExitCode>0</rsp:ExitCode>
|
|
9
|
-
</rsp:CommandState>
|
|
10
|
-
</rsp:ReceiveResponse>
|
|
11
|
-
</s:Body>
|
|
12
|
-
</s:Envelope>
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xml:lang='en-US' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
</s:Header>
|
|
4
|
-
<s:Body>
|
|
5
|
-
<rsp:ReceiveResponse>
|
|
6
|
-
<rsp:Stream CommandId='<%= command_id %>' Name='stdout'><%= test_data_stdout %></rsp:Stream>
|
|
7
|
-
</rsp:ReceiveResponse>
|
|
8
|
-
</s:Body>
|
|
9
|
-
</s:Envelope>
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<s:Envelope xml:lang='en-US' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
<a:Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/CreateResponse</a:Action>
|
|
4
|
-
<a:MessageID>uuid:94D35B73-3DD8-428D-9495-7AF3F0559428</a:MessageID>
|
|
5
|
-
<a:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:To>
|
|
6
|
-
<a:RelatesTo>uuid:EEF803CE-B9A6-48C1-BF00-90C6F077EC2A</a:RelatesTo>
|
|
7
|
-
</s:Header>
|
|
8
|
-
<s:Body>
|
|
9
|
-
<x:ResourceCreated xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd' xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xmlns:x='http://schemas.xmlsoap.org/ws/2004/09/transfer' xmlns:rsp='http://schemas.microsoft.com/wbem/wsman/1/windows/shell'>
|
|
10
|
-
<a:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:Address>
|
|
11
|
-
<a:ReferenceParameters>
|
|
12
|
-
<w:ResourceURI>http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd</w:ResourceURI>
|
|
13
|
-
<w:SelectorSet>
|
|
14
|
-
<w:Selector Name='ShellId'>uuid:739990FF-1492-4CDD-80BB-6E07ADB06D85</w:Selector>
|
|
15
|
-
</w:SelectorSet>
|
|
16
|
-
</a:ReferenceParameters>
|
|
17
|
-
</x:ResourceCreated>
|
|
18
|
-
</s:Body>
|
|
19
|
-
</s:Envelope>
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0"?>
|
|
2
|
-
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:x="http://schemas.xmlsoap.org/ws/2004/09/transfer" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns:rsp="http://schemas.microsoft.com/wbem/wsman/1/windows/shell" xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd" xml:lang="en-US">
|
|
3
|
-
<s:Header>
|
|
4
|
-
<a:Action>http://schemas.xmlsoap.org/ws/2004/09/transfer/CreateResponse</a:Action>
|
|
5
|
-
<a:MessageID>uuid:9FF5B7FE-CC97-4FA4-B51F-E4220C016AE7</a:MessageID>
|
|
6
|
-
<a:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:To>
|
|
7
|
-
<a:RelatesTo>uuid:EA2A7785-D8E6-4E28-8AD8-FC27156537B3</a:RelatesTo>
|
|
8
|
-
</s:Header>
|
|
9
|
-
<s:Body>
|
|
10
|
-
<x:ResourceCreated>
|
|
11
|
-
<a:Address>http://localhost:5985/wsman</a:Address>
|
|
12
|
-
<a:ReferenceParameters>
|
|
13
|
-
<w:ResourceURI>http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd</w:ResourceURI>
|
|
14
|
-
<w:SelectorSet>
|
|
15
|
-
<w:Selector Name="ShellId">62DE33F0-8674-43D9-B6A5-3298012CC4CD</w:Selector>
|
|
16
|
-
</w:SelectorSet>
|
|
17
|
-
</a:ReferenceParameters>
|
|
18
|
-
</x:ResourceCreated>
|
|
19
|
-
</s:Body>
|
|
20
|
-
</s:Envelope>
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
<s:Envelope xml:lang='en-US' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xmlns:x='http://schemas.xmlsoap.org/ws/2004/09/transfer' xmlns:e='http://schemas.xmlsoap.org/ws/2004/08/eventing' xmlns:n='http://schemas.xmlsoap.org/ws/2004/09/enumeration' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
<a:Action>http://schemas.xmlsoap.org/ws/2004/09/enumeration/fault</a:Action>
|
|
4
|
-
<a:MessageID>uuid:AF8907B2-F47E-4DE5-A4AA-E1EC36EA0E49</a:MessageID>
|
|
5
|
-
<a:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:To>
|
|
6
|
-
<a:RelatesTo>uuid:B90EC4BB-4484-4ADA-920B-019517747915</a:RelatesTo>
|
|
7
|
-
</s:Header>
|
|
8
|
-
<s:Body>
|
|
9
|
-
<s:Fault>
|
|
10
|
-
<s:Code>
|
|
11
|
-
<s:Value>s:Sender</s:Value>
|
|
12
|
-
<s:Subcode>
|
|
13
|
-
<s:Value>n:CannotProcessFilter</s:Value>
|
|
14
|
-
</s:Subcode>
|
|
15
|
-
</s:Code>
|
|
16
|
-
<s:Reason>
|
|
17
|
-
<s:Text xml:lang='en-US'>
|
|
18
|
-
The data source could not process the filter. The filter might be
|
|
19
|
-
missing or it might be invalid. Change the filter and try the request
|
|
20
|
-
again.
|
|
21
|
-
</s:Text>
|
|
22
|
-
</s:Reason>
|
|
23
|
-
<s:Detail>
|
|
24
|
-
<f:WSManFault xmlns:f='http://schemas.microsoft.com/wbem/wsman/1/wsmanfault' Code='2150858778' Machine=''>
|
|
25
|
-
<f:Message>
|
|
26
|
-
<f:ProviderFault provider='WMIv1 plugin for Windows Remote Management ' path='%systemroot%\system32\WsmWmiPl.dll'>
|
|
27
|
-
<f:WSManFault xmlns:f='http://schemas.microsoft.com/wbem/wsman/1/wsmanfault' Code='2150858778' Machine='' xml:lang='en-US'>
|
|
28
|
-
<f:Message>The specified class does not exist in the given namespace. </f:Message>
|
|
29
|
-
</f:WSManFault>
|
|
30
|
-
</f:ProviderFault>
|
|
31
|
-
</f:Message>
|
|
32
|
-
</f:WSManFault>
|
|
33
|
-
</s:Detail>
|
|
34
|
-
</s:Fault>
|
|
35
|
-
</s:Body>
|
|
36
|
-
</s:Envelope>
|
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0"?>
|
|
2
|
-
<s:Envelope xml:lang="en-US" xmlns:a="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:e="http://schemas.xmlsoap.org/ws/2004/08/eventing" xmlns:n="http://schemas.xmlsoap.org/ws/2004/09/enumeration" xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd" xmlns:s="http://www.w3.org/2003/05/soap-envelope" xmlns:w="http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd" xmlns:x="http://schemas.xmlsoap.org/ws/2004/09/transfer">
|
|
3
|
-
<s:Header>
|
|
4
|
-
<a:Action>http://schemas.xmlsoap.org/ws/2004/09/enumeration/fault</a:Action>
|
|
5
|
-
<a:MessageID>uuid:CC816664-896D-46C7-9227-AE6E1231CE49</a:MessageID>
|
|
6
|
-
<a:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:To>
|
|
7
|
-
<a:RelatesTo>uuid:0CB1C49A-5054-4C12-AF30-FC60BE995DD9</a:RelatesTo>
|
|
8
|
-
</s:Header>
|
|
9
|
-
<s:Body>
|
|
10
|
-
<s:Fault>
|
|
11
|
-
<s:Code>
|
|
12
|
-
<s:Value>s:Sender</s:Value>
|
|
13
|
-
<s:Subcode>
|
|
14
|
-
<s:Value>n:CannotProcessFilter</s:Value>
|
|
15
|
-
</s:Subcode>
|
|
16
|
-
</s:Code>
|
|
17
|
-
<s:Reason>
|
|
18
|
-
<s:Text xml:lang="en-US">The data source could not process the filter. The filter might be missing or it might be invalid. Change the filter and try the request again. </s:Text>
|
|
19
|
-
</s:Reason>
|
|
20
|
-
<s:Detail>
|
|
21
|
-
<f:WSManFault Code="2150858778" Machine="localhost" xmlns:f="http://schemas.microsoft.com/wbem/wsman/1/wsmanfault">
|
|
22
|
-
<f:Message>
|
|
23
|
-
<f:ProviderFault path="%systemroot%\system32\WsmWmiPl.dll" provider="WMI Provider">
|
|
24
|
-
<f:WSManFault Code="2150858778" Machine="vagrant-2008R2" xmlns:f="http://schemas.microsoft.com/wbem/wsman/1/wsmanfault">
|
|
25
|
-
<f:Message>The specified class does not exist in the given namespace. </f:Message>
|
|
26
|
-
</f:WSManFault>
|
|
27
|
-
<f:ExtendedError>
|
|
28
|
-
<p:__ExtendedStatus xmlns:cim="http://schemas.dmtf.org/wbem/wscim/1/common" xmlns:p="http://schemas.microsoft.com/wbem/wsman/1/wmi/root/cimv2/__ExtendedStatus" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="p:__ExtendedStatus_Type">
|
|
29
|
-
<p:Description xsi:nil="true"/>
|
|
30
|
-
<p:Operation>ExecQuery</p:Operation>
|
|
31
|
-
<p:ParameterInfo>Select * from Win32_Processa where name="sshd.exe"</p:ParameterInfo>
|
|
32
|
-
<p:ProviderName>WinMgmt</p:ProviderName>
|
|
33
|
-
<p:StatusCode xsi:nil="true"/>
|
|
34
|
-
</p:__ExtendedStatus>
|
|
35
|
-
</f:ExtendedError>
|
|
36
|
-
</f:ProviderFault>
|
|
37
|
-
</f:Message>
|
|
38
|
-
</f:WSManFault>
|
|
39
|
-
</s:Detail>
|
|
40
|
-
</s:Fault>
|
|
41
|
-
</s:Body>
|
|
42
|
-
</s:Envelope>
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
<s:Envelope xmlns:a='http://schemas.xmlsoap.org/ws/2004/08/addressing' xmlns:e='http://schemas.xmlsoap.org/ws/2004/08/eventing' xml:lang='en-US' xmlns:n='http://schemas.xmlsoap.org/ws/2004/09/enumeration' xmlns:p='http://schemas.microsoft.com/wbem/wsman/1/wsman.xsd' xmlns:s='http://www.w3.org/2003/05/soap-envelope' xmlns:w='http://schemas.dmtf.org/wbem/wsman/1/wsman.xsd' xmlns:x='http://schemas.xmlsoap.org/ws/2004/09/transfer'>
|
|
2
|
-
<s:Header>
|
|
3
|
-
<a:Action>http://schemas.dmtf.org/wbem/wsman/1/wsman/fault</a:Action>
|
|
4
|
-
<a:MessageID>uuid:B8829021-48C3-4F27-B94B-491DAC4F29B1</a:MessageID>
|
|
5
|
-
<a:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</a:To>
|
|
6
|
-
</s:Header>
|
|
7
|
-
<s:Body>
|
|
8
|
-
<s:Fault>
|
|
9
|
-
<s:Code>
|
|
10
|
-
<s:Value>s:Sender</s:Value>
|
|
11
|
-
<s:Subcode>
|
|
12
|
-
<s:Value>w:QuotaLimit</s:Value>
|
|
13
|
-
</s:Subcode>
|
|
14
|
-
</s:Code>
|
|
15
|
-
<s:Reason>
|
|
16
|
-
<s:Text xml:lang='en-US'>The WS-Management service cannot process the request. The maximum number of concurrent shells for this user has been exceeded. Close existing shells or raise the quota for this user. </s:Text>
|
|
17
|
-
</s:Reason>
|
|
18
|
-
<s:Detail>
|
|
19
|
-
<p:MSFT_WmiError b:IsCIM_Error='true' xmlns:b='http://schemas.dmtf.org/wbem/wsman/1/cimbinding.xsd' xmlns:cim='http://schemas.dmtf.org/wbem/wscim/1/common' xmlns:p='http://schemas.dmtf.org/wbem/wscim/1/cim-schema/2/MSFT_WmiError' xsi:type='p:MSFT_WmiError_Type' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'>
|
|
20
|
-
<p:CIMStatusCode xsi:type='cim:cimUnsignedInt'>27</p:CIMStatusCode>
|
|
21
|
-
<p:CIMStatusCodeDescription xsi:nil='true' xsi:type='cim:cimString'/>
|
|
22
|
-
<p:ErrorSource xsi:nil='true' xsi:type='cim:cimString'/>
|
|
23
|
-
<p:ErrorSourceFormat xsi:type='cim:cimUnsignedShort'>0</p:ErrorSourceFormat>
|
|
24
|
-
<p:ErrorType xsi:type='cim:cimUnsignedShort'>0</p:ErrorType>
|
|
25
|
-
<p:Message xsi:type='cim:cimString'>The WS-Management service cannot process the request. This user is allowed a maximum number of 30 concurrent shells, which has been exceeded. Close existing shells or raise the quota for this user. </p:Message>
|
|
26
|
-
<p:MessageID xsi:type='cim:cimString'>HRESULT 0x803381a5</p:MessageID>
|
|
27
|
-
<p:OtherErrorSourceFormat xsi:nil='true' xsi:type='cim:cimString'/>
|
|
28
|
-
<p:OtherErrorType xsi:nil='true' xsi:type='cim:cimString'/>
|
|
29
|
-
<p:OwningEntity xsi:nil='true' xsi:type='cim:cimString'/>
|
|
30
|
-
<p:PerceivedSeverity xsi:type='cim:cimUnsignedShort'>0</p:PerceivedSeverity>
|
|
31
|
-
<p:ProbableCause xsi:type='cim:cimUnsignedShort'>0</p:ProbableCause>
|
|
32
|
-
<p:ProbableCauseDescription xsi:nil='true' xsi:type='cim:cimString'/>
|
|
33
|
-
<p:error_Category xsi:type='cim:cimUnsignedInt'>30</p:error_Category>
|
|
34
|
-
<p:error_Code xsi:type='cim:cimUnsignedInt'>2150859173</p:error_Code>
|
|
35
|
-
<p:error_Type xsi:type='cim:cimString'>HRESULT</p:error_Type>
|
|
36
|
-
<p:error_WindowsErrorMessage xsi:type='cim:cimString'>The WS-Management service cannot process the request. This user is allowed a maximum number of 30 concurrent shells, which has been exceeded. Close existing shells or raise the quota for this user. </p:error_WindowsErrorMessage>
|
|
37
|
-
</p:MSFT_WmiError>
|
|
38
|
-
</s:Detail>
|
|
39
|
-
</s:Fault>
|
|
40
|
-
</s:Body>
|
|
41
|
-
</s:Envelope>
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/cleanup_command'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::CleanupCommand do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
let(:cmd_opts) do
|
|
8
|
-
{
|
|
9
|
-
shell_id: 'F4A2622B-B842-4EB8-8A78-0225C8A993DF',
|
|
10
|
-
command_id: 'A2A2622B-B842-4EB8-8A78-0225C8A993DF'
|
|
11
|
-
}
|
|
12
|
-
end
|
|
13
|
-
subject { described_class.new(default_connection_opts, cmd_opts) }
|
|
14
|
-
let(:xml) { subject.build }
|
|
15
|
-
it 'creates a well formed message' do
|
|
16
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
17
|
-
expect(xml).to include('<rsp:Signal CommandId="A2A2622B-B842-4EB8-8A78-0225C8A993DF">' \
|
|
18
|
-
'<rsp:Code>http://schemas.microsoft.com/wbem/wsman/1/windows/shell/signal/terminate' \
|
|
19
|
-
'</rsp:Code></rsp:Signal>')
|
|
20
|
-
end
|
|
21
|
-
end
|
|
22
|
-
end
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/close_shell'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::CloseShell do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
subject do
|
|
8
|
-
described_class.new(default_connection_opts, shell_id: 'F4A2622B-B842-4EB8-8A78-0225C8A993DF')
|
|
9
|
-
end
|
|
10
|
-
let(:xml) { subject.build }
|
|
11
|
-
it 'creates a well formed message' do
|
|
12
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
13
|
-
expect(xml).to include('<a:Action mustUnderstand="true">' \
|
|
14
|
-
'http://schemas.xmlsoap.org/ws/2004/09/transfer/Delete</a:Action>')
|
|
15
|
-
end
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/command_output_decoder'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::CommandOutputDecoder do
|
|
6
|
-
let(:raw_output_with_bom) do
|
|
7
|
-
'77u/' \
|
|
8
|
-
'ICAgQ29ubmVjdGlvbi1zcGVjaWZpYyBETlMgU3VmZml4ICAuIDogDQogICBMaW5rLWxvY2FsIElQdjYgQWRkcmVzcyA' \
|
|
9
|
-
'uIC4gLiAuIC4gOiBmZTgwOjo5MTFkOjE2OTQ6NTcwNDo1YjI5JTEyDQogICBJUHY0IEFkZHJlc3MuIC4gLiAuIC4gLi' \
|
|
10
|
-
'AuIC4gLiAuIC4gOiAxMC4wLjIuMTUNCiAgIFN1Ym5ldCBNYXNrIC4gLiAuIC4gLiAuIC4gLiAuIC4gLiA6IDI1NS4yN' \
|
|
11
|
-
'TUuMjU1LjANCiAgIERlZmF1bHQgR2F0ZXdheSAuIC4gLiAuIC4gLiAuIC4gLiA6IDEwLjAuMi4yDQoNClR1bm5lbCBh' \
|
|
12
|
-
'ZGFwdGVyIGlzYXRhcC57RjBENTY2RDgtNzlCMS00QUYwLUJENUQtMkM5RkVEOEI3MTE3fToNCg0KICAgTWVkaWEgU3R' \
|
|
13
|
-
'hdGUgLiAuIC4gLiAuIC4gLiAuIC4gLiAuIDogTWVkaWEgZGlzY29ubmVjdGVkDQogICBDb25uZWN0aW9uLXNwZWNpZm' \
|
|
14
|
-
'ljIEROUyBTdWZmaXggIC4gOiANCg0KVHVubmVsIGFkYXB0ZXIgVGVyZWRvIFR1bm5lbGluZyBQc2V1ZG8tSW50ZXJmY' \
|
|
15
|
-
'WNlOg0KDQogICBDb25uZWN0aW9uLXNwZWNpZmljIEROUyBTdWZmaXggIC4gOiANCiAgIElQdjYgQWRkcmVzcy4gLiAu' \
|
|
16
|
-
'IC4gLiAuIC4gLiAuIC4gLiA6IDIwMDE6MDo5ZDM4OjZhYmQ6NGJiOjI4YjU6ZjVmZjpmZGYwDQogICBMaW5rLWxvY2F' \
|
|
17
|
-
'sIElQdjYgQWRkcmVzcyAuIC4gLiAuIC4gOiBmZTgwOjo0YmI6MjhiNTpmNWZmOmZkZjAlMTQNCiAgIERlZmF1bHQgR2' \
|
|
18
|
-
'F0ZXdheSAuIC4gLiAuIC4gLiAuIC4gLiA6IDo6DQo='
|
|
19
|
-
end
|
|
20
|
-
let(:expected) do
|
|
21
|
-
" Connection-specific DNS Suffix . : \r\n Link-local IPv6 Address . . . . . : fe80::911" \
|
|
22
|
-
"d:1694:5704:5b29%12\r\n IPv4 Address. . . . . . . . . . . : 10.0.2.15\r\n Subnet Mask ." \
|
|
23
|
-
" . . . . . . . . . . : 255.255.255.0\r\n Default Gateway . . . . . . . . . : 10.0.2.2\r\n" \
|
|
24
|
-
"\r\nTunnel adapter isatap.{F0D566D8-79B1-4AF0-BD5D-2C9FED8B7117}:\r\n\r\n Media State . ." \
|
|
25
|
-
" . . . . . . . . . : Media disconnected\r\n Connection-specific DNS Suffix . : \r\n\r\nT" \
|
|
26
|
-
"unnel adapter Teredo Tunneling Pseudo-Interface:\r\n\r\n Connection-specific DNS Suffix " \
|
|
27
|
-
". : \r\n IPv6 Address. . . . . . . . . . . : 2001:0:9d38:6abd:4bb:28b5:f5ff:fdf0\r\n Li" \
|
|
28
|
-
"nk-local IPv6 Address . . . . . : fe80::4bb:28b5:f5ff:fdf0%14\r\n Default Gateway . . . ." \
|
|
29
|
-
" . . . . . : ::\r\n"
|
|
30
|
-
end
|
|
31
|
-
subject { described_class.new }
|
|
32
|
-
context 'valid UTF-8 raw output' do
|
|
33
|
-
it 'decodes' do
|
|
34
|
-
expect(subject.decode(raw_output_with_bom)).to eq(expected)
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
end
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/command_output'
|
|
4
|
-
require 'winrm/wsmv/header'
|
|
5
|
-
|
|
6
|
-
describe WinRM::WSMV::CommandOutput do
|
|
7
|
-
context 'default session options' do
|
|
8
|
-
let(:cmd_out_opts) do
|
|
9
|
-
{
|
|
10
|
-
shell_id: 'F4A2622B-B842-4EB8-8A78-0225C8A993DF',
|
|
11
|
-
command_id: 'A2A2622B-B842-4EB8-8A78-0225C8A993DF'
|
|
12
|
-
}
|
|
13
|
-
end
|
|
14
|
-
subject { described_class.new(default_connection_opts, cmd_out_opts) }
|
|
15
|
-
let(:xml) { subject.build }
|
|
16
|
-
it 'creates a well formed message' do
|
|
17
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
18
|
-
expect(xml).to include('<w:Option Name="WSMAN_CMDSHELL_OPTION_KEEPALIVE">TRUE</w:Option>')
|
|
19
|
-
expect(xml).to include('w:ResourceURI mustUnderstand="true">' \
|
|
20
|
-
'http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd</w:ResourceURI>')
|
|
21
|
-
expect(xml).to include('<rsp:DesiredStream ' \
|
|
22
|
-
'CommandId="A2A2622B-B842-4EB8-8A78-0225C8A993DF">stdout stderr</rsp:DesiredStream>')
|
|
23
|
-
end
|
|
24
|
-
end
|
|
25
|
-
context 'powershell' do
|
|
26
|
-
let(:cmd_out_opts) do
|
|
27
|
-
{
|
|
28
|
-
shell_id: 'F4A2622B-B842-4EB8-8A78-0225C8A993DF',
|
|
29
|
-
command_id: 'A2A2622B-B842-4EB8-8A78-0225C8A993DF',
|
|
30
|
-
shell_uri: WinRM::WSMV::Header::RESOURCE_URI_POWERSHELL,
|
|
31
|
-
out_streams: %w(stdout)
|
|
32
|
-
}
|
|
33
|
-
end
|
|
34
|
-
subject { described_class.new(default_connection_opts, cmd_out_opts) }
|
|
35
|
-
let(:xml) { subject.build }
|
|
36
|
-
it 'creates a well formed message' do
|
|
37
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
38
|
-
expect(xml).to include('<w:Option Name="WSMAN_CMDSHELL_OPTION_KEEPALIVE">TRUE</w:Option>')
|
|
39
|
-
expect(xml).to include('w:ResourceURI mustUnderstand="true">' \
|
|
40
|
-
'http://schemas.microsoft.com/powershell/Microsoft.PowerShell</w:ResourceURI>')
|
|
41
|
-
expect(xml).to include('<rsp:DesiredStream ' \
|
|
42
|
-
'CommandId="A2A2622B-B842-4EB8-8A78-0225C8A993DF">stdout</rsp:DesiredStream>')
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
end
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/command'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::Command do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
let(:cmd_opts) do
|
|
8
|
-
{
|
|
9
|
-
shell_id: 'D5A2622B-B842-4EB8-8A78-0225C8A993DF',
|
|
10
|
-
command: 'ipconfig'
|
|
11
|
-
}
|
|
12
|
-
end
|
|
13
|
-
subject { described_class.new(default_connection_opts, cmd_opts) }
|
|
14
|
-
let(:xml) { subject.build }
|
|
15
|
-
it 'creates a well formed message' do
|
|
16
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
17
|
-
end
|
|
18
|
-
end
|
|
19
|
-
end
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/configuration'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::Configuration do
|
|
6
|
-
subject do
|
|
7
|
-
described_class.new(default_connection_opts)
|
|
8
|
-
end
|
|
9
|
-
let(:xml) { subject.build }
|
|
10
|
-
it 'creates a well formed message' do
|
|
11
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
12
|
-
expect(xml).to include('<a:Action mustUnderstand="true">' \
|
|
13
|
-
'http://schemas.xmlsoap.org/ws/2004/09/transfer/Get</a:Action>')
|
|
14
|
-
expect(xml).to include('w:ResourceURI mustUnderstand="true">' \
|
|
15
|
-
'http://schemas.microsoft.com/wbem/wsman/1/config</w:ResourceURI>')
|
|
16
|
-
end
|
|
17
|
-
end
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/create_pipeline'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::CreatePipeline do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
let(:shell_id) { 'D5A2622B-B842-4EB8-8A78-0225C8A993DF' }
|
|
8
|
-
let(:command_id) { 'D5A2622B-B842-4EB8-8A78-0225C8A993DF' }
|
|
9
|
-
let(:fragment) { WinRM::PSRP::Fragment.new(0, [1, 2, 3]) }
|
|
10
|
-
let(:pipeline) { Base64.strict_encode64(fragment.bytes.pack('C*')) }
|
|
11
|
-
|
|
12
|
-
subject do
|
|
13
|
-
WinRM::WSMV::CreatePipeline.new(
|
|
14
|
-
default_connection_opts,
|
|
15
|
-
shell_id,
|
|
16
|
-
command_id,
|
|
17
|
-
fragment
|
|
18
|
-
)
|
|
19
|
-
end
|
|
20
|
-
let(:xml) { subject.build }
|
|
21
|
-
it 'creates a well formed message' do
|
|
22
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
23
|
-
expect(xml).to include(
|
|
24
|
-
'<w:SelectorSet><w:Selector Name="ShellId">' \
|
|
25
|
-
"#{shell_id}</w:Selector></w:SelectorSet>")
|
|
26
|
-
expect(xml).to include("<rsp:CommandLine CommandId=\"#{command_id}\">")
|
|
27
|
-
expect(xml).to include('<rsp:Command>Invoke-Expression</rsp:Command>')
|
|
28
|
-
expect(xml).to include("<rsp:Arguments>#{pipeline}</rsp:Arguments>")
|
|
29
|
-
end
|
|
30
|
-
end
|
|
31
|
-
end
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/create_shell'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::CreateShell do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
subject { described_class.new(default_connection_opts) }
|
|
8
|
-
let(:xml) { subject.build }
|
|
9
|
-
it 'creates a well formed message' do
|
|
10
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
11
|
-
expect(xml).to include('<w:Locale xml:lang="en-US" mustUnderstand="false"/>')
|
|
12
|
-
expect(xml).to include('<p:DataLocale xml:lang="en-US" mustUnderstand="false"/>')
|
|
13
|
-
expect(xml).to include(
|
|
14
|
-
'<p:SessionId mustUnderstand="false">' \
|
|
15
|
-
'uuid:05A2622B-B842-4EB8-8A78-0225C8A993DF</p:SessionId>')
|
|
16
|
-
expect(xml).to include('<w:MaxEnvelopeSize mustUnderstand="true">153600</w:MaxEnvelopeSize>')
|
|
17
|
-
expect(xml).to include('<a:To>http://localhost:5985/wsman</a:To>')
|
|
18
|
-
expect(xml).to include('<rsp:InputStreams>stdin</rsp:InputStreams>')
|
|
19
|
-
expect(xml).to include('<rsp:OutputStreams>stdout stderr</rsp:OutputStreams>')
|
|
20
|
-
expect(xml).to include(
|
|
21
|
-
'<w:ResourceURI mustUnderstand="true">' \
|
|
22
|
-
'http://schemas.microsoft.com/wbem/wsman/1/windows/shell/cmd</w:ResourceURI>')
|
|
23
|
-
end
|
|
24
|
-
context 'shell options w/env vars' do
|
|
25
|
-
let(:shell_opts) do
|
|
26
|
-
{
|
|
27
|
-
env_vars: { 'FOO' => 'BAR' }
|
|
28
|
-
}
|
|
29
|
-
end
|
|
30
|
-
subject { described_class.new(default_connection_opts, shell_opts) }
|
|
31
|
-
let(:xml) { subject.build }
|
|
32
|
-
it 'includes environemt vars' do
|
|
33
|
-
expect(xml).to include(
|
|
34
|
-
'<rsp:Environment><rsp:Variable Name="FOO">BAR</rsp:Variable></rsp:Environment>')
|
|
35
|
-
end
|
|
36
|
-
end
|
|
37
|
-
end
|
|
38
|
-
end
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/init_runspace_pool'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::InitRunspacePool do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
let(:shell_id) { SecureRandom.uuid.to_s.upcase }
|
|
8
|
-
let(:payload) { 'blah'.bytes }
|
|
9
|
-
|
|
10
|
-
subject { described_class.new(default_connection_opts, shell_id, payload) }
|
|
11
|
-
|
|
12
|
-
it 'creates a well formed message' do
|
|
13
|
-
xml = subject.build
|
|
14
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
15
|
-
expect(xml).to include('<w:Locale xml:lang="en-US" mustUnderstand="false"/>')
|
|
16
|
-
expect(xml).to include('<p:DataLocale xml:lang="en-US" mustUnderstand="false"/>')
|
|
17
|
-
expect(xml).to include(
|
|
18
|
-
'<p:SessionId mustUnderstand="false">' \
|
|
19
|
-
'uuid:05A2622B-B842-4EB8-8A78-0225C8A993DF</p:SessionId>')
|
|
20
|
-
expect(xml).to include('<w:MaxEnvelopeSize mustUnderstand="true">153600</w:MaxEnvelopeSize>')
|
|
21
|
-
expect(xml).to include('<a:To>http://localhost:5985/wsman</a:To>')
|
|
22
|
-
expect(xml).to include(
|
|
23
|
-
'<w:OptionSet env:mustUnderstand="true">' \
|
|
24
|
-
'<w:Option Name="protocolversion" MustComply="true">2.3</w:Option></w:OptionSet>')
|
|
25
|
-
expect(xml).to include('<rsp:InputStreams>stdin pr</rsp:InputStreams>')
|
|
26
|
-
expect(xml).to include('<rsp:OutputStreams>stdout</rsp:OutputStreams>')
|
|
27
|
-
expect(xml).to include("<rsp:Shell ShellId=\"#{subject.shell_id}\">")
|
|
28
|
-
expect(xml).to include(
|
|
29
|
-
'<w:ResourceURI mustUnderstand="true">' \
|
|
30
|
-
'http://schemas.microsoft.com/powershell/Microsoft.PowerShell')
|
|
31
|
-
expect(xml).to include(
|
|
32
|
-
'<creationXml xmlns="http://schemas.microsoft.com/powershell">' \
|
|
33
|
-
"#{Base64.strict_encode64(payload.pack('C*'))}</creationXml>")
|
|
34
|
-
end
|
|
35
|
-
end
|
|
36
|
-
end
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
|
-
|
|
3
|
-
require 'winrm/wsmv/keep_alive'
|
|
4
|
-
|
|
5
|
-
describe WinRM::WSMV::KeepAlive do
|
|
6
|
-
context 'default session options' do
|
|
7
|
-
let(:shell_id) { 'F4A2622B-B842-4EB8-8A78-0225C8A993DF' }
|
|
8
|
-
subject { described_class.new(default_connection_opts, shell_id) }
|
|
9
|
-
let(:xml) { subject.build }
|
|
10
|
-
it 'creates a well formed message' do
|
|
11
|
-
expect(xml).to include('<w:OperationTimeout>PT60S</w:OperationTimeout>')
|
|
12
|
-
expect(xml).to include(
|
|
13
|
-
'<w:OptionSet><w:Option Name="WSMAN_CMDSHELL_OPTION_KEEPALIVE">' \
|
|
14
|
-
'TRUE</w:Option></w:OptionSet>')
|
|
15
|
-
expect(xml).to include(
|
|
16
|
-
'<w:SelectorSet><w:Selector Name="ShellId">' \
|
|
17
|
-
"#{shell_id}</w:Selector></w:SelectorSet>")
|
|
18
|
-
expect(xml).to include('<rsp:DesiredStream>stdout</rsp:DesiredStream>')
|
|
19
|
-
end
|
|
20
|
-
end
|
|
21
|
-
end
|