chef-winrm 2.3.10

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.
Files changed (58) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +202 -0
  3. data/README.md +277 -0
  4. data/bin/rwinrm +90 -0
  5. data/lib/winrm/connection.rb +84 -0
  6. data/lib/winrm/connection_opts.rb +92 -0
  7. data/lib/winrm/exceptions.rb +88 -0
  8. data/lib/winrm/http/response_handler.rb +127 -0
  9. data/lib/winrm/http/transport.rb +466 -0
  10. data/lib/winrm/http/transport_factory.rb +64 -0
  11. data/lib/winrm/output.rb +58 -0
  12. data/lib/winrm/psrp/create_pipeline.xml.erb +167 -0
  13. data/lib/winrm/psrp/fragment.rb +68 -0
  14. data/lib/winrm/psrp/init_runspace_pool.xml.erb +224 -0
  15. data/lib/winrm/psrp/message.rb +128 -0
  16. data/lib/winrm/psrp/message_data/base.rb +47 -0
  17. data/lib/winrm/psrp/message_data/error_record.rb +68 -0
  18. data/lib/winrm/psrp/message_data/pipeline_host_call.rb +30 -0
  19. data/lib/winrm/psrp/message_data/pipeline_output.rb +48 -0
  20. data/lib/winrm/psrp/message_data/pipeline_state.rb +38 -0
  21. data/lib/winrm/psrp/message_data/runspacepool_host_call.rb +30 -0
  22. data/lib/winrm/psrp/message_data/runspacepool_state.rb +37 -0
  23. data/lib/winrm/psrp/message_data/session_capability.rb +34 -0
  24. data/lib/winrm/psrp/message_data.rb +40 -0
  25. data/lib/winrm/psrp/message_defragmenter.rb +62 -0
  26. data/lib/winrm/psrp/message_factory.rb +86 -0
  27. data/lib/winrm/psrp/message_fragmenter.rb +58 -0
  28. data/lib/winrm/psrp/powershell_output_decoder.rb +142 -0
  29. data/lib/winrm/psrp/receive_response_reader.rb +95 -0
  30. data/lib/winrm/psrp/session_capability.xml.erb +7 -0
  31. data/lib/winrm/psrp/uuid.rb +39 -0
  32. data/lib/winrm/shells/base.rb +192 -0
  33. data/lib/winrm/shells/cmd.rb +59 -0
  34. data/lib/winrm/shells/power_shell.rb +202 -0
  35. data/lib/winrm/shells/retryable.rb +44 -0
  36. data/lib/winrm/shells/shell_factory.rb +56 -0
  37. data/lib/winrm/version.rb +5 -0
  38. data/lib/winrm/wsmv/base.rb +57 -0
  39. data/lib/winrm/wsmv/cleanup_command.rb +60 -0
  40. data/lib/winrm/wsmv/close_shell.rb +49 -0
  41. data/lib/winrm/wsmv/command.rb +100 -0
  42. data/lib/winrm/wsmv/command_output.rb +75 -0
  43. data/lib/winrm/wsmv/command_output_decoder.rb +54 -0
  44. data/lib/winrm/wsmv/configuration.rb +44 -0
  45. data/lib/winrm/wsmv/create_pipeline.rb +64 -0
  46. data/lib/winrm/wsmv/create_shell.rb +115 -0
  47. data/lib/winrm/wsmv/header.rb +213 -0
  48. data/lib/winrm/wsmv/init_runspace_pool.rb +96 -0
  49. data/lib/winrm/wsmv/iso8601_duration.rb +58 -0
  50. data/lib/winrm/wsmv/keep_alive.rb +66 -0
  51. data/lib/winrm/wsmv/receive_response_reader.rb +128 -0
  52. data/lib/winrm/wsmv/send_data.rb +66 -0
  53. data/lib/winrm/wsmv/soap.rb +49 -0
  54. data/lib/winrm/wsmv/wql_pull.rb +54 -0
  55. data/lib/winrm/wsmv/wql_query.rb +98 -0
  56. data/lib/winrm/wsmv/write_stdin.rb +86 -0
  57. data/lib/winrm.rb +37 -0
  58. metadata +333 -0
@@ -0,0 +1,54 @@
1
+ require 'nori'
2
+ require_relative 'base'
3
+
4
+ module WinRM
5
+ module WSMV
6
+ # WSMV message to 'pull' rest of enumeration results from Windows via WQL
7
+ class WqlPull < Base
8
+ def initialize(session_opts, namespace, enumeration_context)
9
+ @session_opts = session_opts
10
+ @namespace = namespace
11
+ @enumeration_context = enumeration_context
12
+ end
13
+
14
+ def process_response(response)
15
+ parser = Nori.new(
16
+ parser: :rexml,
17
+ advanced_typecasting: false,
18
+ convert_tags_to: ->(tag) { Nori::StringUtils.snakecase(tag).to_sym },
19
+ strip_namespaces: true
20
+ )
21
+ parser.parse(response.to_s)[:envelope][:body]
22
+ end
23
+
24
+ protected
25
+
26
+ def create_header(header)
27
+ header << Gyoku.xml(wql_header)
28
+ end
29
+
30
+ def create_body(body)
31
+ body.tag!("#{NS_ENUM}:Pull") { |en| en << Gyoku.xml(wql_body) }
32
+ end
33
+
34
+ private
35
+
36
+ def wql_header
37
+ merge_headers(
38
+ shared_headers(@session_opts),
39
+ resource_uri_wmi(@namespace),
40
+ action_enumerate_pull
41
+ )
42
+ end
43
+
44
+ def wql_body
45
+ {
46
+ "#{NS_ENUM}:EnumerationContext" => @enumeration_context,
47
+ "#{NS_WSMAN_DMTF}:OptimizeEnumeration" => nil,
48
+ "#{NS_ENUM}:MaxElements" => '32000',
49
+ "#{NS_WSMAN_MSFT}:SessionId" => "uuid:#{@session_opts[:session_id]}"
50
+ }
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,98 @@
1
+ # Copyright 2016 Shawn Neal <sneal@sneal.net>
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'nori'
16
+ require_relative 'base'
17
+
18
+ module WinRM
19
+ module WSMV
20
+ # WSMV message to query Windows via WQL
21
+ class WqlQuery < Base
22
+ def initialize(transport, session_opts, wql, namespace = nil)
23
+ @session_opts = session_opts
24
+ @wql = wql
25
+ @namespace = namespace
26
+ @transport = transport
27
+ end
28
+
29
+ def process_response(response, &block)
30
+ parser = Nori.new(
31
+ parser: :rexml,
32
+ advanced_typecasting: false,
33
+ convert_tags_to: ->(tag) { Nori::StringUtils.snakecase(tag).to_sym },
34
+ strip_namespaces: true
35
+ )
36
+ @items = Hash.new { |h, k| h[k] = [] }
37
+
38
+ hresp = parser.parse(response.to_s)[:envelope][:body][:enumerate_response]
39
+ process_items hresp[:items], &block
40
+
41
+ # Perform WS-Enum PULL's until we have all the elements
42
+ enumeration_context = hresp[:enumeration_context]
43
+ until enumeration_context.nil?
44
+ query = WqlPull.new(@session_opts, @namespace, enumeration_context)
45
+ hresp = query.process_response(@transport.send_request(query.build))[:pull_response]
46
+ process_items hresp[:items], &block
47
+ enumeration_context = hresp[:enumeration_context]
48
+ end
49
+
50
+ @items
51
+ end
52
+
53
+ protected
54
+
55
+ def create_header(header)
56
+ header << Gyoku.xml(wql_header)
57
+ end
58
+
59
+ def create_body(body)
60
+ body.tag!("#{NS_ENUM}:Enumerate") { |en| en << Gyoku.xml(wql_body) }
61
+ end
62
+
63
+ private
64
+
65
+ def process_items(items, &block)
66
+ return if items.nil?
67
+
68
+ items.each_pair do |k, v|
69
+ # Normalize items so the type always has an array even if it's just a single item.
70
+ v_ary = v.is_a?(Array) ? v : [v]
71
+ if block
72
+ v_ary.each { |val| yield k, val }
73
+ else
74
+ @items[k] += v_ary
75
+ end
76
+ end
77
+ end
78
+
79
+ def wql_header
80
+ merge_headers(shared_headers(@session_opts), resource_uri_wmi(@namespace), action_enumerate)
81
+ end
82
+
83
+ def wql_body
84
+ {
85
+ "#{NS_WSMAN_DMTF}:OptimizeEnumeration" => nil,
86
+ "#{NS_WSMAN_DMTF}:MaxElements" => '32000',
87
+ "#{NS_WSMAN_DMTF}:Filter" => @wql,
88
+ "#{NS_WSMAN_MSFT}:SessionId" => "uuid:#{@session_opts[:session_id]}",
89
+ :attributes! => {
90
+ "#{NS_WSMAN_DMTF}:Filter" => {
91
+ 'Dialect' => 'http://schemas.microsoft.com/wbem/wsman/1/WQL'
92
+ }
93
+ }
94
+ }
95
+ end
96
+ end
97
+ end
98
+ end
@@ -0,0 +1,86 @@
1
+ # Copyright 2016 Shawn Neal <sneal@sneal.net>
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'base64'
16
+ require_relative 'base'
17
+
18
+ module WinRM
19
+ module WSMV
20
+ # WSMV message to send stdin to a remote shell
21
+ class WriteStdin < Base
22
+ def initialize(session_opts, stdin_opts)
23
+ validate_opts(session_opts, stdin_opts)
24
+ init_ops(session_opts, stdin_opts)
25
+ end
26
+
27
+ protected
28
+
29
+ def create_header(header)
30
+ header << Gyoku.xml(stdin_headers)
31
+ end
32
+
33
+ def create_body(body)
34
+ body << Gyoku.xml(stdin_body)
35
+ end
36
+
37
+ private
38
+
39
+ def init_ops(session_opts, stdin_opts)
40
+ @session_opts = session_opts
41
+ @shell_id = stdin_opts[:shell_id]
42
+ @command_id = stdin_opts[:command_id]
43
+ @stdin = stdin_opts[:stdin]
44
+ @shell_uri = stdin_opts[:shell_uri] || RESOURCE_URI_CMD
45
+ end
46
+
47
+ def validate_opts(session_opts, stdin_opts)
48
+ raise 'session_opts is required' unless session_opts
49
+ raise 'stdin_opts[:shell_id] is required' unless stdin_opts[:shell_id]
50
+ raise 'stdin_opts[:command_id] is required' unless stdin_opts[:command_id]
51
+ raise 'stdin_opts[:stdin] is required' unless stdin_opts[:stdin]
52
+ end
53
+
54
+ def stdin_headers
55
+ merge_headers(shared_headers(@session_opts),
56
+ resource_uri_shell(@shell_uri),
57
+ action_send,
58
+ selector_shell_id(@shell_id))
59
+ end
60
+
61
+ def action_send
62
+ {
63
+ "#{NS_ADDRESSING}:Action" =>
64
+ 'http://schemas.microsoft.com/wbem/wsman/1/windows/shell/Send',
65
+ :attributes! => {
66
+ "#{NS_ADDRESSING}:Action" => {
67
+ 'mustUnderstand' => true
68
+ }
69
+ }
70
+ }
71
+ end
72
+
73
+ def stdin_body
74
+ {
75
+ "#{NS_WIN_SHELL}:Send" => {
76
+ "#{NS_WIN_SHELL}:Stream" => {
77
+ '@Name' => 'stdin',
78
+ '@CommandId' => @command_id,
79
+ :content! => Base64.encode64(@stdin)
80
+ }
81
+ }
82
+ }
83
+ end
84
+ end
85
+ end
86
+ end
data/lib/winrm.rb ADDED
@@ -0,0 +1,37 @@
1
+ # Copyright 2010 Dan Wanek <dan.wanek@gmail.com>
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'logging'
16
+ require_relative 'winrm/version'
17
+ require_relative 'winrm/connection'
18
+ require_relative 'winrm/exceptions'
19
+
20
+ # Main WinRM module entry point
21
+ module WinRM
22
+ # Enable logging if it is requested. We do this before
23
+ # anything else so that we can setup the output before
24
+ # any logging occurs.
25
+ if ENV['WINRM_LOG'] && ENV['WINRM_LOG'] != ''
26
+ begin
27
+ Logging.logger.root.level = ENV['WINRM_LOG']
28
+ Logging.logger.root.appenders = Logging.appenders.stderr
29
+ rescue ArgumentError
30
+ # This means that the logging level wasn't valid
31
+ warn "Invalid WINRM_LOG level is set: #{ENV['WINRM_LOG']}"
32
+ warn ''
33
+ warn 'Please use one of the standard log levels: ' \
34
+ 'debug, info, warn, or error'
35
+ end
36
+ end
37
+ end
metadata ADDED
@@ -0,0 +1,333 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: chef-winrm
3
+ version: !ruby/object:Gem::Version
4
+ version: 2.3.10
5
+ platform: ruby
6
+ authors:
7
+ - Dan Wanek
8
+ - Paul Morton
9
+ - Matt Wrock
10
+ - Shawn Neal
11
+ autorequire:
12
+ bindir: bin
13
+ cert_chain: []
14
+ date: 2025-01-07 00:00:00.000000000 Z
15
+ dependencies:
16
+ - !ruby/object:Gem::Dependency
17
+ name: builder
18
+ requirement: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.1.2
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 2.1.2
30
+ - !ruby/object:Gem::Dependency
31
+ name: chef-gyoku
32
+ requirement: !ruby/object:Gem::Requirement
33
+ requirements:
34
+ - - ">="
35
+ - !ruby/object:Gem::Version
36
+ version: 1.4.1
37
+ type: :runtime
38
+ prerelease: false
39
+ version_requirements: !ruby/object:Gem::Requirement
40
+ requirements:
41
+ - - ">="
42
+ - !ruby/object:Gem::Version
43
+ version: 1.4.1
44
+ - !ruby/object:Gem::Dependency
45
+ name: erubi
46
+ requirement: !ruby/object:Gem::Requirement
47
+ requirements:
48
+ - - "~>"
49
+ - !ruby/object:Gem::Version
50
+ version: '1.8'
51
+ type: :runtime
52
+ prerelease: false
53
+ version_requirements: !ruby/object:Gem::Requirement
54
+ requirements:
55
+ - - "~>"
56
+ - !ruby/object:Gem::Version
57
+ version: '1.8'
58
+ - !ruby/object:Gem::Dependency
59
+ name: gssapi
60
+ requirement: !ruby/object:Gem::Requirement
61
+ requirements:
62
+ - - "~>"
63
+ - !ruby/object:Gem::Version
64
+ version: '1.2'
65
+ type: :runtime
66
+ prerelease: false
67
+ version_requirements: !ruby/object:Gem::Requirement
68
+ requirements:
69
+ - - "~>"
70
+ - !ruby/object:Gem::Version
71
+ version: '1.2'
72
+ - !ruby/object:Gem::Dependency
73
+ name: httpclient
74
+ requirement: !ruby/object:Gem::Requirement
75
+ requirements:
76
+ - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: '2.2'
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: 2.2.0.2
82
+ type: :runtime
83
+ prerelease: false
84
+ version_requirements: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '2.2'
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ version: 2.2.0.2
92
+ - !ruby/object:Gem::Dependency
93
+ name: logging
94
+ requirement: !ruby/object:Gem::Requirement
95
+ requirements:
96
+ - - ">="
97
+ - !ruby/object:Gem::Version
98
+ version: 1.6.1
99
+ - - "<"
100
+ - !ruby/object:Gem::Version
101
+ version: '3.0'
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - ">="
107
+ - !ruby/object:Gem::Version
108
+ version: 1.6.1
109
+ - - "<"
110
+ - !ruby/object:Gem::Version
111
+ version: '3.0'
112
+ - !ruby/object:Gem::Dependency
113
+ name: nori
114
+ requirement: !ruby/object:Gem::Requirement
115
+ requirements:
116
+ - - '='
117
+ - !ruby/object:Gem::Version
118
+ version: 2.7.0
119
+ type: :runtime
120
+ prerelease: false
121
+ version_requirements: !ruby/object:Gem::Requirement
122
+ requirements:
123
+ - - '='
124
+ - !ruby/object:Gem::Version
125
+ version: 2.7.0
126
+ - !ruby/object:Gem::Dependency
127
+ name: rexml
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - "~>"
131
+ - !ruby/object:Gem::Version
132
+ version: '3.3'
133
+ type: :runtime
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - "~>"
138
+ - !ruby/object:Gem::Version
139
+ version: '3.3'
140
+ - !ruby/object:Gem::Dependency
141
+ name: pry
142
+ requirement: !ruby/object:Gem::Requirement
143
+ requirements:
144
+ - - ">="
145
+ - !ruby/object:Gem::Version
146
+ version: '0'
147
+ type: :development
148
+ prerelease: false
149
+ version_requirements: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ - !ruby/object:Gem::Dependency
155
+ name: rake
156
+ requirement: !ruby/object:Gem::Requirement
157
+ requirements:
158
+ - - ">="
159
+ - !ruby/object:Gem::Version
160
+ version: '10.3'
161
+ - - "<"
162
+ - !ruby/object:Gem::Version
163
+ version: '13'
164
+ type: :development
165
+ prerelease: false
166
+ version_requirements: !ruby/object:Gem::Requirement
167
+ requirements:
168
+ - - ">="
169
+ - !ruby/object:Gem::Version
170
+ version: '10.3'
171
+ - - "<"
172
+ - !ruby/object:Gem::Version
173
+ version: '13'
174
+ - !ruby/object:Gem::Dependency
175
+ name: rb-readline
176
+ requirement: !ruby/object:Gem::Requirement
177
+ requirements:
178
+ - - ">="
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ type: :development
182
+ prerelease: false
183
+ version_requirements: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">="
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
188
+ - !ruby/object:Gem::Dependency
189
+ name: rspec
190
+ requirement: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: '3.2'
195
+ type: :development
196
+ prerelease: false
197
+ version_requirements: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - "~>"
200
+ - !ruby/object:Gem::Version
201
+ version: '3.2'
202
+ - !ruby/object:Gem::Dependency
203
+ name: rubocop
204
+ requirement: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: 1.26.0
209
+ type: :development
210
+ prerelease: false
211
+ version_requirements: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - "~>"
214
+ - !ruby/object:Gem::Version
215
+ version: 1.26.0
216
+ - !ruby/object:Gem::Dependency
217
+ name: rubyntlm
218
+ requirement: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - "~>"
221
+ - !ruby/object:Gem::Version
222
+ version: 0.6.0
223
+ - - ">="
224
+ - !ruby/object:Gem::Version
225
+ version: 0.6.3
226
+ type: :runtime
227
+ prerelease: false
228
+ version_requirements: !ruby/object:Gem::Requirement
229
+ requirements:
230
+ - - "~>"
231
+ - !ruby/object:Gem::Version
232
+ version: 0.6.0
233
+ - - ">="
234
+ - !ruby/object:Gem::Version
235
+ version: 0.6.3
236
+ description: " Ruby library for Windows Remote Management\n"
237
+ email:
238
+ - dan.wanek@gmail.com
239
+ - paul@themortonsonline.com
240
+ - matt@mattwrock.com
241
+ - sneal@sneal.net
242
+ executables:
243
+ - rwinrm
244
+ extensions: []
245
+ extra_rdoc_files:
246
+ - README.md
247
+ - LICENSE
248
+ files:
249
+ - LICENSE
250
+ - README.md
251
+ - bin/rwinrm
252
+ - lib/winrm.rb
253
+ - lib/winrm/connection.rb
254
+ - lib/winrm/connection_opts.rb
255
+ - lib/winrm/exceptions.rb
256
+ - lib/winrm/http/response_handler.rb
257
+ - lib/winrm/http/transport.rb
258
+ - lib/winrm/http/transport_factory.rb
259
+ - lib/winrm/output.rb
260
+ - lib/winrm/psrp/create_pipeline.xml.erb
261
+ - lib/winrm/psrp/fragment.rb
262
+ - lib/winrm/psrp/init_runspace_pool.xml.erb
263
+ - lib/winrm/psrp/message.rb
264
+ - lib/winrm/psrp/message_data.rb
265
+ - lib/winrm/psrp/message_data/base.rb
266
+ - lib/winrm/psrp/message_data/error_record.rb
267
+ - lib/winrm/psrp/message_data/pipeline_host_call.rb
268
+ - lib/winrm/psrp/message_data/pipeline_output.rb
269
+ - lib/winrm/psrp/message_data/pipeline_state.rb
270
+ - lib/winrm/psrp/message_data/runspacepool_host_call.rb
271
+ - lib/winrm/psrp/message_data/runspacepool_state.rb
272
+ - lib/winrm/psrp/message_data/session_capability.rb
273
+ - lib/winrm/psrp/message_defragmenter.rb
274
+ - lib/winrm/psrp/message_factory.rb
275
+ - lib/winrm/psrp/message_fragmenter.rb
276
+ - lib/winrm/psrp/powershell_output_decoder.rb
277
+ - lib/winrm/psrp/receive_response_reader.rb
278
+ - lib/winrm/psrp/session_capability.xml.erb
279
+ - lib/winrm/psrp/uuid.rb
280
+ - lib/winrm/shells/base.rb
281
+ - lib/winrm/shells/cmd.rb
282
+ - lib/winrm/shells/power_shell.rb
283
+ - lib/winrm/shells/retryable.rb
284
+ - lib/winrm/shells/shell_factory.rb
285
+ - lib/winrm/version.rb
286
+ - lib/winrm/wsmv/base.rb
287
+ - lib/winrm/wsmv/cleanup_command.rb
288
+ - lib/winrm/wsmv/close_shell.rb
289
+ - lib/winrm/wsmv/command.rb
290
+ - lib/winrm/wsmv/command_output.rb
291
+ - lib/winrm/wsmv/command_output_decoder.rb
292
+ - lib/winrm/wsmv/configuration.rb
293
+ - lib/winrm/wsmv/create_pipeline.rb
294
+ - lib/winrm/wsmv/create_shell.rb
295
+ - lib/winrm/wsmv/header.rb
296
+ - lib/winrm/wsmv/init_runspace_pool.rb
297
+ - lib/winrm/wsmv/iso8601_duration.rb
298
+ - lib/winrm/wsmv/keep_alive.rb
299
+ - lib/winrm/wsmv/receive_response_reader.rb
300
+ - lib/winrm/wsmv/send_data.rb
301
+ - lib/winrm/wsmv/soap.rb
302
+ - lib/winrm/wsmv/wql_pull.rb
303
+ - lib/winrm/wsmv/wql_query.rb
304
+ - lib/winrm/wsmv/write_stdin.rb
305
+ homepage: https://github.com/WinRb/WinRM
306
+ licenses:
307
+ - Apache-2.0
308
+ metadata:
309
+ rubygems_mfa_required: 'true'
310
+ post_install_message:
311
+ rdoc_options:
312
+ - "-x"
313
+ - test/
314
+ - "-x"
315
+ - examples/
316
+ require_paths:
317
+ - lib
318
+ required_ruby_version: !ruby/object:Gem::Requirement
319
+ requirements:
320
+ - - ">="
321
+ - !ruby/object:Gem::Version
322
+ version: '3.0'
323
+ required_rubygems_version: !ruby/object:Gem::Requirement
324
+ requirements:
325
+ - - ">="
326
+ - !ruby/object:Gem::Version
327
+ version: '0'
328
+ requirements: []
329
+ rubygems_version: 3.3.27
330
+ signing_key:
331
+ specification_version: 4
332
+ summary: Ruby library for Windows Remote Management
333
+ test_files: []