net-ssh 4.2.0 → 7.0.1

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 (126) hide show
  1. checksums.yaml +5 -5
  2. checksums.yaml.gz.sig +0 -0
  3. data/.dockerignore +6 -0
  4. data/.github/config/rubocop_linter_action.yml +4 -0
  5. data/.github/workflows/ci-with-docker.yml +44 -0
  6. data/.github/workflows/ci.yml +87 -0
  7. data/.github/workflows/rubocop.yml +13 -0
  8. data/.gitignore +7 -0
  9. data/.rubocop.yml +19 -2
  10. data/.rubocop_todo.yml +619 -667
  11. data/CHANGES.txt +110 -1
  12. data/Dockerfile +27 -0
  13. data/Dockerfile.openssl3 +17 -0
  14. data/Gemfile +3 -7
  15. data/{Gemfile.norbnacl → Gemfile.noed25519} +3 -1
  16. data/Manifest +4 -5
  17. data/README.md +293 -0
  18. data/Rakefile +45 -29
  19. data/appveyor.yml +8 -6
  20. data/docker-compose.yml +23 -0
  21. data/lib/net/ssh/authentication/agent.rb +248 -223
  22. data/lib/net/ssh/authentication/certificate.rb +178 -164
  23. data/lib/net/ssh/authentication/constants.rb +17 -15
  24. data/lib/net/ssh/authentication/ed25519.rb +141 -116
  25. data/lib/net/ssh/authentication/ed25519_loader.rb +28 -28
  26. data/lib/net/ssh/authentication/key_manager.rb +79 -36
  27. data/lib/net/ssh/authentication/methods/abstract.rb +62 -47
  28. data/lib/net/ssh/authentication/methods/hostbased.rb +34 -37
  29. data/lib/net/ssh/authentication/methods/keyboard_interactive.rb +3 -3
  30. data/lib/net/ssh/authentication/methods/none.rb +16 -19
  31. data/lib/net/ssh/authentication/methods/password.rb +15 -16
  32. data/lib/net/ssh/authentication/methods/publickey.rb +96 -55
  33. data/lib/net/ssh/authentication/pageant.rb +468 -465
  34. data/lib/net/ssh/authentication/pub_key_fingerprint.rb +43 -0
  35. data/lib/net/ssh/authentication/session.rb +131 -122
  36. data/lib/net/ssh/buffer.rb +385 -332
  37. data/lib/net/ssh/buffered_io.rb +150 -151
  38. data/lib/net/ssh/config.rb +316 -239
  39. data/lib/net/ssh/connection/channel.rb +635 -613
  40. data/lib/net/ssh/connection/constants.rb +29 -29
  41. data/lib/net/ssh/connection/event_loop.rb +104 -95
  42. data/lib/net/ssh/connection/keepalive.rb +55 -51
  43. data/lib/net/ssh/connection/session.rb +614 -611
  44. data/lib/net/ssh/connection/term.rb +125 -123
  45. data/lib/net/ssh/errors.rb +101 -99
  46. data/lib/net/ssh/key_factory.rb +194 -108
  47. data/lib/net/ssh/known_hosts.rb +212 -134
  48. data/lib/net/ssh/loggable.rb +50 -49
  49. data/lib/net/ssh/packet.rb +83 -79
  50. data/lib/net/ssh/prompt.rb +51 -51
  51. data/lib/net/ssh/proxy/command.rb +105 -91
  52. data/lib/net/ssh/proxy/errors.rb +12 -10
  53. data/lib/net/ssh/proxy/http.rb +81 -81
  54. data/lib/net/ssh/proxy/https.rb +37 -36
  55. data/lib/net/ssh/proxy/jump.rb +49 -48
  56. data/lib/net/ssh/proxy/socks4.rb +2 -6
  57. data/lib/net/ssh/proxy/socks5.rb +14 -17
  58. data/lib/net/ssh/service/forward.rb +365 -362
  59. data/lib/net/ssh/test/channel.rb +145 -143
  60. data/lib/net/ssh/test/extensions.rb +131 -127
  61. data/lib/net/ssh/test/kex.rb +34 -32
  62. data/lib/net/ssh/test/local_packet.rb +46 -44
  63. data/lib/net/ssh/test/packet.rb +87 -84
  64. data/lib/net/ssh/test/remote_packet.rb +32 -30
  65. data/lib/net/ssh/test/script.rb +155 -155
  66. data/lib/net/ssh/test/socket.rb +49 -48
  67. data/lib/net/ssh/test.rb +82 -80
  68. data/lib/net/ssh/transport/algorithms.rb +433 -364
  69. data/lib/net/ssh/transport/cipher_factory.rb +95 -91
  70. data/lib/net/ssh/transport/constants.rb +32 -24
  71. data/lib/net/ssh/transport/ctr.rb +37 -15
  72. data/lib/net/ssh/transport/hmac/abstract.rb +81 -63
  73. data/lib/net/ssh/transport/hmac/md5.rb +0 -2
  74. data/lib/net/ssh/transport/hmac/md5_96.rb +0 -2
  75. data/lib/net/ssh/transport/hmac/none.rb +0 -2
  76. data/lib/net/ssh/transport/hmac/ripemd160.rb +0 -2
  77. data/lib/net/ssh/transport/hmac/sha1.rb +0 -2
  78. data/lib/net/ssh/transport/hmac/sha1_96.rb +0 -2
  79. data/lib/net/ssh/transport/hmac/sha2_256.rb +7 -11
  80. data/lib/net/ssh/transport/hmac/sha2_256_96.rb +4 -8
  81. data/lib/net/ssh/transport/hmac/sha2_256_etm.rb +12 -0
  82. data/lib/net/ssh/transport/hmac/sha2_512.rb +6 -9
  83. data/lib/net/ssh/transport/hmac/sha2_512_96.rb +4 -8
  84. data/lib/net/ssh/transport/hmac/sha2_512_etm.rb +12 -0
  85. data/lib/net/ssh/transport/hmac.rb +14 -12
  86. data/lib/net/ssh/transport/identity_cipher.rb +54 -52
  87. data/lib/net/ssh/transport/kex/abstract.rb +130 -0
  88. data/lib/net/ssh/transport/kex/abstract5656.rb +72 -0
  89. data/lib/net/ssh/transport/kex/curve25519_sha256.rb +39 -0
  90. data/lib/net/ssh/transport/kex/curve25519_sha256_loader.rb +30 -0
  91. data/lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb +33 -40
  92. data/lib/net/ssh/transport/kex/diffie_hellman_group14_sha256.rb +11 -0
  93. data/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +112 -217
  94. data/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +53 -63
  95. data/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb +5 -9
  96. data/lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb +36 -90
  97. data/lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb +18 -10
  98. data/lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb +18 -10
  99. data/lib/net/ssh/transport/kex.rb +15 -12
  100. data/lib/net/ssh/transport/key_expander.rb +24 -21
  101. data/lib/net/ssh/transport/openssl.rb +158 -133
  102. data/lib/net/ssh/transport/packet_stream.rb +223 -191
  103. data/lib/net/ssh/transport/server_version.rb +55 -56
  104. data/lib/net/ssh/transport/session.rb +306 -259
  105. data/lib/net/ssh/transport/state.rb +178 -176
  106. data/lib/net/ssh/verifiers/accept_new.rb +33 -0
  107. data/lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb +33 -0
  108. data/lib/net/ssh/verifiers/always.rb +58 -0
  109. data/lib/net/ssh/verifiers/never.rb +19 -0
  110. data/lib/net/ssh/version.rb +55 -53
  111. data/lib/net/ssh.rb +47 -34
  112. data/net-ssh-public_cert.pem +18 -19
  113. data/net-ssh.gemspec +12 -11
  114. data/support/ssh_tunnel_bug.rb +5 -5
  115. data.tar.gz.sig +0 -0
  116. metadata +78 -73
  117. metadata.gz.sig +0 -0
  118. data/.travis.yml +0 -51
  119. data/Gemfile.norbnacl.lock +0 -41
  120. data/README.rdoc +0 -169
  121. data/lib/net/ssh/ruby_compat.rb +0 -24
  122. data/lib/net/ssh/verifiers/lenient.rb +0 -30
  123. data/lib/net/ssh/verifiers/null.rb +0 -12
  124. data/lib/net/ssh/verifiers/secure.rb +0 -52
  125. data/lib/net/ssh/verifiers/strict.rb +0 -24
  126. data/support/arcfour_check.rb +0 -20
data/.rubocop_todo.yml CHANGED
@@ -1,11 +1,71 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2016-12-11 13:27:14 +0100 using RuboCop version 0.46.0.
3
+ # on 2022-04-29 12:31:14 UTC using RuboCop version 1.28.2.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
+ # Offense count: 1
10
+ # This cop supports safe auto-correction (--auto-correct).
11
+ # Configuration parameters: Include.
12
+ # Include: **/*.gemspec
13
+ Gemspec/RequireMFA:
14
+ Exclude:
15
+ - 'net-ssh.gemspec'
16
+
17
+ # Offense count: 1
18
+ # This cop supports safe auto-correction (--auto-correct).
19
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
20
+ # SupportedStyles: aligned, indented
21
+ Layout/LineEndStringConcatenationIndentation:
22
+ Exclude:
23
+ - 'lib/net/ssh/transport/algorithms.rb'
24
+
25
+ # Offense count: 7
26
+ # This cop supports safe auto-correction (--auto-correct).
27
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
28
+ # SupportedStyles: aligned, indented
29
+ Layout/MultilineOperationIndentation:
30
+ Exclude:
31
+ - 'lib/net/ssh/authentication/pageant.rb'
32
+ - 'lib/net/ssh/proxy/https.rb'
33
+ - 'lib/net/ssh/transport/algorithms.rb'
34
+ - 'lib/net/ssh/transport/state.rb'
35
+
36
+ # Offense count: 5
37
+ # This cop supports safe auto-correction (--auto-correct).
38
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
39
+ # SupportedStyles: space, no_space
40
+ # SupportedStylesForEmptyBraces: space, no_space
41
+ Layout/SpaceInsideBlockBraces:
42
+ Exclude:
43
+ - 'lib/net/ssh/authentication/session.rb'
44
+ - 'lib/net/ssh/transport/ctr.rb'
45
+ - 'support/ssh_tunnel_bug.rb'
46
+
47
+ # Offense count: 6
48
+ # This cop supports safe auto-correction (--auto-correct).
49
+ # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBrackets.
50
+ # SupportedStyles: space, no_space
51
+ # SupportedStylesForEmptyBrackets: space, no_space
52
+ Layout/SpaceInsideReferenceBrackets:
53
+ Exclude:
54
+ - 'lib/net/ssh/transport/algorithms.rb'
55
+
56
+ # Offense count: 11
57
+ # This cop supports safe auto-correction (--auto-correct).
58
+ Lint/AmbiguousOperatorPrecedence:
59
+ Exclude:
60
+ - 'lib/net/ssh/authentication/certificate.rb'
61
+ - 'lib/net/ssh/config.rb'
62
+ - 'lib/net/ssh/loggable.rb'
63
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
64
+ - 'lib/net/ssh/transport/openssl.rb'
65
+ - 'lib/net/ssh/transport/state.rb'
66
+ - 'lib/net/ssh/version.rb'
67
+ - 'test/integration/test_proxy.rb'
68
+
9
69
  # Offense count: 4
10
70
  # Configuration parameters: AllowSafeAssignment.
11
71
  Lint/AssignmentInCondition:
@@ -15,110 +75,143 @@ Lint/AssignmentInCondition:
15
75
  - 'lib/net/ssh/proxy/command.rb'
16
76
 
17
77
  # Offense count: 1
18
- # Cop supports --auto-correct.
19
- # Configuration parameters: AlignWith, SupportedStyles.
20
- # SupportedStyles: either, start_of_block, start_of_line
21
- Lint/BlockAlignment:
78
+ # Configuration parameters: AllowedMethods.
79
+ # AllowedMethods: enums
80
+ Lint/ConstantDefinitionInBlock:
22
81
  Exclude:
23
- - 'test/integration/test_proxy.rb'
82
+ - 'test/transport/test_cipher_factory.rb'
24
83
 
25
84
  # Offense count: 1
26
- # Cop supports --auto-correct.
85
+ # This cop supports safe auto-correction (--auto-correct).
27
86
  Lint/DeprecatedClassMethods:
28
87
  Exclude:
29
- - 'Rakefile'
88
+ - 'lib/net/ssh/transport/packet_stream.rb'
30
89
 
31
- # Offense count: 1
32
- Lint/EmptyWhen:
90
+ # Offense count: 12
91
+ # This cop supports safe auto-correction (--auto-correct).
92
+ Lint/DeprecatedOpenSSLConstant:
33
93
  Exclude:
34
- - 'lib/net/ssh/config.rb'
35
-
36
- # Offense count: 223
37
- # Cop supports --auto-correct.
38
- # Configuration parameters: AlignWith, SupportedStyles, AutoCorrect.
39
- # SupportedStyles: keyword, variable, start_of_line
40
- Lint/EndAlignment:
41
- Enabled: false
94
+ - 'lib/net/ssh/transport/openssl.rb'
42
95
 
43
- # Offense count: 8
44
- Lint/HandleExceptions:
96
+ # Offense count: 2
97
+ # Configuration parameters: AllowComments, AllowEmptyLambdas.
98
+ Lint/EmptyBlock:
45
99
  Exclude:
46
- - 'lib/net/ssh/authentication/session.rb'
47
- - 'lib/net/ssh/known_hosts.rb'
48
- - 'lib/net/ssh/transport/openssl.rb'
49
- - 'test/integration/common.rb'
50
- - 'test/integration/test_forward.rb'
51
- - 'test/start/test_connection.rb'
100
+ - 'test/common.rb'
52
101
  - 'test/start/test_transport.rb'
53
102
 
103
+ # Offense count: 1
104
+ # Configuration parameters: AllowComments.
105
+ Lint/EmptyWhen:
106
+ Exclude:
107
+ - 'lib/net/ssh/config.rb'
108
+
54
109
  # Offense count: 72
55
110
  Lint/ImplicitStringConcatenation:
56
111
  Exclude:
57
112
  - 'lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb'
58
113
  - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
59
114
 
60
- # Offense count: 1
61
- Lint/LiteralInCondition:
115
+ # Offense count: 8
116
+ # This cop supports safe auto-correction (--auto-correct).
117
+ Lint/IncompatibleIoSelectWithFiberScheduler:
62
118
  Exclude:
63
- - 'lib/net/ssh/authentication/pageant.rb'
119
+ - 'lib/net/ssh/buffered_io.rb'
120
+ - 'lib/net/ssh/proxy/command.rb'
121
+ - 'lib/net/ssh/transport/packet_stream.rb'
122
+ - 'lib/net/ssh/transport/server_version.rb'
64
123
 
65
124
  # Offense count: 2
125
+ # This cop supports unsafe auto-correction (--auto-correct-all).
66
126
  Lint/Loop:
67
127
  Exclude:
68
128
  - 'lib/net/ssh/authentication/methods/password.rb'
69
129
  - 'lib/net/ssh/key_factory.rb'
70
130
 
71
- # Offense count: 1
72
- Lint/NextWithoutAccumulator:
131
+ # Offense count: 3
132
+ Lint/MissingSuper:
73
133
  Exclude:
74
- - 'lib/net/ssh/connection/session.rb'
134
+ - 'lib/net/ssh/proxy/jump.rb'
135
+ - 'test/common.rb'
136
+ - 'test/integration/mitm_server.rb'
75
137
 
76
138
  # Offense count: 1
77
139
  Lint/NonLocalExitFromIterator:
78
140
  Exclude:
79
141
  - 'lib/net/ssh/known_hosts.rb'
80
142
 
81
- # Offense count: 4
143
+ # Offense count: 2
144
+ # This cop supports unsafe auto-correction (--auto-correct-all).
145
+ Lint/OrAssignmentToConstant:
146
+ Exclude:
147
+ - 'lib/net/ssh/authentication/pageant.rb'
148
+
149
+ # Offense count: 6
150
+ # This cop supports unsafe auto-correction (--auto-correct-all).
151
+ # Configuration parameters: AllowedImplicitNamespaces.
152
+ # AllowedImplicitNamespaces: Gem
153
+ Lint/RaiseException:
154
+ Exclude:
155
+ - 'Rakefile'
156
+ - 'lib/net/ssh/buffer.rb'
157
+ - 'lib/net/ssh/key_factory.rb'
158
+
159
+ # Offense count: 1
160
+ # This cop supports safe auto-correction (--auto-correct).
161
+ Lint/RedundantCopDisableDirective:
162
+ Exclude:
163
+ - 'lib/net/ssh/key_factory.rb'
164
+
165
+ # Offense count: 3
82
166
  Lint/RescueException:
83
167
  Exclude:
84
168
  - 'lib/net/ssh/authentication/key_manager.rb'
85
169
  - 'lib/net/ssh/service/forward.rb'
86
- - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
170
+
171
+ # Offense count: 4
172
+ # This cop supports safe auto-correction (--auto-correct).
173
+ Lint/SendWithMixinArgument:
174
+ Exclude:
175
+ - 'lib/net/ssh/test/extensions.rb'
87
176
 
88
177
  # Offense count: 2
89
178
  Lint/ShadowedException:
90
179
  Exclude:
91
180
  - 'lib/net/ssh/authentication/key_manager.rb'
92
181
 
182
+ # Offense count: 5
183
+ # Configuration parameters: AllowComments, AllowNil.
184
+ Lint/SuppressedException:
185
+ Exclude:
186
+ - 'lib/net/ssh/authentication/session.rb'
187
+ - 'lib/net/ssh/transport/openssl.rb'
188
+ - 'test/integration/common.rb'
189
+ - 'test/integration/test_forward.rb'
190
+
93
191
  # Offense count: 1
192
+ # Configuration parameters: AllowKeywordBlockArguments.
94
193
  Lint/UnderscorePrefixedVariableName:
95
194
  Exclude:
96
195
  - 'lib/net/ssh/test/local_packet.rb'
97
196
 
98
- # Offense count: 52
99
- # Cop supports --auto-correct.
197
+ # Offense count: 15
198
+ # This cop supports safe auto-correction (--auto-correct).
100
199
  # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
101
200
  Lint/UnusedBlockArgument:
102
201
  Exclude:
103
202
  - 'lib/net/ssh/connection/keepalive.rb'
104
203
  - 'lib/net/ssh/connection/session.rb'
105
204
  - 'lib/net/ssh/service/forward.rb'
106
- - 'test/authentication/methods/test_password.rb'
107
- - 'test/authentication/test_agent.rb'
108
- - 'test/common.rb'
109
- - 'test/connection/test_channel.rb'
110
- - 'test/connection/test_session.rb'
111
- - 'test/transport/test_algorithms.rb'
112
- - 'test/transport/test_hmac.rb'
113
205
 
114
- # Offense count: 50
115
- # Cop supports --auto-correct.
116
- # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
206
+ # Offense count: 74
207
+ # This cop supports safe auto-correction (--auto-correct).
208
+ # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods.
117
209
  Lint/UnusedMethodArgument:
118
210
  Enabled: false
119
211
 
120
212
  # Offense count: 3
121
- # Configuration parameters: ContextCreatingMethods.
213
+ # This cop supports safe auto-correction (--auto-correct).
214
+ # Configuration parameters: ContextCreatingMethods, MethodCreatingMethods.
122
215
  Lint/UselessAccessModifier:
123
216
  Exclude:
124
217
  - 'lib/net/ssh/buffered_io.rb'
@@ -133,153 +226,208 @@ Lint/UselessAssignment:
133
226
  - 'test/integration/common.rb'
134
227
  - 'test/integration/test_forward.rb'
135
228
 
136
- # Offense count: 196
229
+ # Offense count: 1
230
+ # This cop supports unsafe auto-correction (--auto-correct-all).
231
+ Lint/UselessTimes:
232
+ Exclude:
233
+ - 'test/integration/test_forward.rb'
234
+
235
+ # Offense count: 205
236
+ # Configuration parameters: IgnoredMethods, CountRepeatedAttributes.
137
237
  Metrics/AbcSize:
138
- Max: 76
238
+ Max: 74
139
239
 
140
- # Offense count: 14
141
- # Configuration parameters: CountComments.
240
+ # Offense count: 16
241
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
242
+ # IgnoredMethods: refine
142
243
  Metrics/BlockLength:
143
- Max: 88
244
+ Max: 59
144
245
 
145
246
  # Offense count: 1
247
+ # Configuration parameters: CountBlocks.
146
248
  Metrics/BlockNesting:
147
249
  Max: 4
148
250
 
149
- # Offense count: 27
150
- # Configuration parameters: CountComments.
251
+ # Offense count: 33
252
+ # Configuration parameters: CountComments, CountAsOne.
151
253
  Metrics/ClassLength:
152
- Max: 548
254
+ Max: 488
153
255
 
154
- # Offense count: 34
256
+ # Offense count: 38
257
+ # Configuration parameters: IgnoredMethods.
155
258
  Metrics/CyclomaticComplexity:
156
- Max: 39
157
-
158
- # Offense count: 1341
159
- # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
160
- # URISchemes: http, https
161
- Metrics/LineLength:
162
- Max: 934
259
+ Max: 32
163
260
 
164
- # Offense count: 164
165
- # Configuration parameters: CountComments.
261
+ # Offense count: 232
262
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
166
263
  Metrics/MethodLength:
167
- Max: 93
264
+ Max: 72
168
265
 
169
- # Offense count: 1
170
- # Configuration parameters: CountComments.
266
+ # Offense count: 3
267
+ # Configuration parameters: CountComments, CountAsOne.
171
268
  Metrics/ModuleLength:
172
- Max: 142
269
+ Max: 160
173
270
 
174
- # Offense count: 1
175
- # Configuration parameters: CountKeywordArgs.
271
+ # Offense count: 2
272
+ # Configuration parameters: Max, CountKeywordArgs.
176
273
  Metrics/ParameterLists:
177
- Max: 6
274
+ MaxOptionalParameters: 4
178
275
 
179
- # Offense count: 27
276
+ # Offense count: 34
277
+ # Configuration parameters: IgnoredMethods.
180
278
  Metrics/PerceivedComplexity:
181
- Max: 23
279
+ Max: 32
182
280
 
183
- # Offense count: 3
184
- # Cop supports --auto-correct.
185
- Performance/RangeInclude:
186
- Exclude:
187
- - 'lib/net/ssh/transport/algorithms.rb'
188
-
189
- # Offense count: 3
190
- # Cop supports --auto-correct.
191
- Performance/RedundantBlockCall:
281
+ # Offense count: 10
282
+ Naming/AccessorMethodName:
192
283
  Exclude:
284
+ - 'lib/net/ssh/authentication/methods/password.rb'
285
+ - 'lib/net/ssh/authentication/pageant.rb'
286
+ - 'lib/net/ssh/connection/channel.rb'
193
287
  - 'lib/net/ssh/connection/session.rb'
194
- - 'test/connection/test_channel.rb'
288
+ - 'lib/net/ssh/transport/kex/abstract5656.rb'
289
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
290
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
195
291
 
196
- # Offense count: 6
197
- # Cop supports --auto-correct.
198
- Performance/RedundantMatch:
292
+ # Offense count: 2
293
+ # This cop supports safe auto-correction (--auto-correct).
294
+ Naming/BinaryOperatorParameterName:
199
295
  Exclude:
200
- - 'lib/net/ssh/key_factory.rb'
201
- - 'lib/net/ssh/transport/server_version.rb'
296
+ - 'lib/net/ssh/buffer.rb'
297
+ - 'lib/net/ssh/version.rb'
202
298
 
203
- # Offense count: 13
204
- Style/AccessorMethodName:
299
+ # Offense count: 16
300
+ # Configuration parameters: AllowedNames.
301
+ # AllowedNames: module_parent
302
+ Naming/ClassAndModuleCamelCase:
303
+ Enabled: false
304
+
305
+ # Offense count: 4
306
+ Naming/ConstantName:
205
307
  Exclude:
206
- - 'lib/net/ssh/authentication/methods/password.rb'
207
- - 'lib/net/ssh/authentication/pageant.rb'
208
- - 'lib/net/ssh/connection/session.rb'
209
308
  - 'lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb'
210
309
  - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
211
- - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
212
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb'
310
+ - 'lib/net/ssh/transport/openssl.rb'
213
311
 
214
- # Offense count: 2
215
- # Cop supports --auto-correct.
216
- # Configuration parameters: EnforcedStyle, SupportedStyles.
217
- # SupportedStyles: prefer_alias, prefer_alias_method
218
- Style/Alias:
312
+ # Offense count: 15
313
+ # Configuration parameters: ForbiddenDelimiters.
314
+ # ForbiddenDelimiters: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
315
+ Naming/HeredocDelimiterNaming:
219
316
  Exclude:
220
- - 'lib/net/ssh/connection/session.rb'
221
- - 'lib/net/ssh/service/forward.rb'
317
+ - 'test/authentication/test_agent.rb'
318
+ - 'test/authentication/test_certificate.rb'
319
+ - 'test/authentication/test_ed25519.rb'
320
+ - 'test/authentication/test_session.rb'
321
+ - 'test/integration/test_agent.rb'
322
+ - 'test/test_key_factory.rb'
222
323
 
223
- # Offense count: 1
224
- # Cop supports --auto-correct.
225
- Style/AlignArray:
324
+ # Offense count: 5
325
+ # Configuration parameters: EnforcedStyleForLeadingUnderscores.
326
+ # SupportedStylesForLeadingUnderscores: disallowed, required, optional
327
+ Naming/MemoizedInstanceVariableName:
226
328
  Exclude:
227
- - 'lib/net/ssh/proxy/socks5.rb'
329
+ - 'lib/net/ssh/transport/openssl.rb'
330
+ - 'test/authentication/test_key_manager.rb'
228
331
 
229
- # Offense count: 25
230
- # Cop supports --auto-correct.
231
- # Configuration parameters: EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle, SupportedLastArgumentHashStyles.
232
- # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
233
- Style/AlignHash:
332
+ # Offense count: 32
333
+ # Configuration parameters: EnforcedStyle, AllowedPatterns, IgnoredPatterns.
334
+ # SupportedStyles: snake_case, camelCase
335
+ Naming/MethodName:
234
336
  Exclude:
235
- - 'lib/net/ssh/transport/algorithms.rb'
337
+ - 'lib/net/ssh/authentication/ed25519_loader.rb'
338
+ - 'lib/net/ssh/transport/kex/curve25519_sha256_loader.rb'
339
+ - 'test/authentication/test_agent.rb'
340
+ - 'test/authentication/test_session.rb'
341
+ - 'test/common.rb'
236
342
  - 'test/connection/test_channel.rb'
237
- - 'test/integration/test_id_rsa_keys.rb'
238
- - 'test/transport/kex/test_diffie_hellman_group1_sha1.rb'
239
- - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
240
- - 'test/transport/test_algorithms.rb'
241
- - 'test/transport/test_cipher_factory.rb'
242
- - 'test/transport/test_state.rb'
243
-
244
- # Offense count: 72
245
- # Cop supports --auto-correct.
246
- # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
247
- # SupportedStyles: with_first_parameter, with_fixed_indentation
248
- Style/AlignParameters:
249
- Enabled: false
343
+ - 'test/test_config.rb'
344
+ - 'test/test_key_factory.rb'
250
345
 
251
- # Offense count: 33
252
- # Cop supports --auto-correct.
253
- # Configuration parameters: EnforcedStyle, SupportedStyles.
254
- # SupportedStyles: always, conditionals
255
- Style/AndOr:
346
+ # Offense count: 23
347
+ # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
348
+ # AllowedNames: at, by, db, id, in, io, ip, of, on, os, pp, to
349
+ Naming/MethodParameterName:
256
350
  Exclude:
351
+ - 'lib/net/ssh/authentication/certificate.rb'
352
+ - 'lib/net/ssh/authentication/ed25519.rb'
257
353
  - 'lib/net/ssh/authentication/key_manager.rb'
354
+ - 'lib/net/ssh/authentication/pageant.rb'
258
355
  - 'lib/net/ssh/buffer.rb'
259
356
  - 'lib/net/ssh/buffered_io.rb'
260
- - 'lib/net/ssh/config.rb'
261
- - 'lib/net/ssh/connection/channel.rb'
357
+ - 'lib/net/ssh/test/socket.rb'
358
+ - 'lib/net/ssh/transport/ctr.rb'
359
+ - 'lib/net/ssh/transport/hmac/abstract.rb'
360
+ - 'lib/net/ssh/transport/identity_cipher.rb'
361
+ - 'test/connection/test_session.rb'
362
+
363
+ # Offense count: 4
364
+ # This cop supports safe auto-correction (--auto-correct).
365
+ # Configuration parameters: PreferredName.
366
+ Naming/RescuedExceptionsVariableName:
367
+ Exclude:
262
368
  - 'lib/net/ssh/connection/session.rb'
263
- - 'lib/net/ssh/key_factory.rb'
264
369
  - 'lib/net/ssh/service/forward.rb'
265
- - 'lib/net/ssh/test/channel.rb'
266
- - 'lib/net/ssh/test/script.rb'
267
- - 'lib/net/ssh/transport/cipher_factory.rb'
268
- - 'lib/net/ssh/transport/hmac.rb'
269
- - 'lib/net/ssh/transport/key_expander.rb'
270
- - 'lib/net/ssh/transport/packet_stream.rb'
271
- - 'test/common.rb'
370
+ - 'lib/net/ssh/verifiers/accept_new.rb'
371
+
372
+ # Offense count: 5
373
+ # Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers.
374
+ # SupportedStyles: snake_case, normalcase, non_integer
375
+ # AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339
376
+ Naming/VariableNumber:
377
+ Exclude:
378
+ - 'test/test_buffer.rb'
379
+ - 'test/test_known_hosts.rb'
380
+ - 'test/transport/test_identity_cipher.rb'
381
+
382
+ # Offense count: 1
383
+ # This cop supports unsafe auto-correction (--auto-correct-all).
384
+ Security/IoMethods:
385
+ Exclude:
386
+ - 'lib/net/ssh/config.rb'
272
387
 
273
388
  # Offense count: 2
274
- Style/AsciiComments:
389
+ # Configuration parameters: EnforcedStyle, AllowModifiersOnSymbols.
390
+ # SupportedStyles: inline, group
391
+ Style/AccessModifierDeclarations:
275
392
  Exclude:
276
393
  - 'lib/net/ssh/authentication/pageant.rb'
277
- - 'lib/net/ssh/buffered_io.rb'
278
394
 
279
- # Offense count: 11
280
- # Cop supports --auto-correct.
281
- # Configuration parameters: EnforcedStyle, SupportedStyles, ProceduralMethods, FunctionalMethods, IgnoredMethods.
282
- # SupportedStyles: line_count_based, semantic, braces_for_chaining
395
+ # Offense count: 31
396
+ # This cop supports safe auto-correction (--auto-correct).
397
+ # Configuration parameters: EnforcedStyle.
398
+ # SupportedStyles: separated, grouped
399
+ Style/AccessorGrouping:
400
+ Exclude:
401
+ - 'lib/net/ssh/authentication/certificate.rb'
402
+ - 'lib/net/ssh/transport/kex/abstract.rb'
403
+ - 'test/common.rb'
404
+ - 'test/connection/test_channel.rb'
405
+ - 'test/integration/mitm_server.rb'
406
+ - 'test/start/test_transport.rb'
407
+
408
+ # Offense count: 2
409
+ # This cop supports safe auto-correction (--auto-correct).
410
+ # Configuration parameters: EnforcedStyle.
411
+ # SupportedStyles: prefer_alias, prefer_alias_method
412
+ Style/Alias:
413
+ Exclude:
414
+ - 'lib/net/ssh/connection/session.rb'
415
+ - 'lib/net/ssh/service/forward.rb'
416
+
417
+ # Offense count: 9
418
+ # This cop supports safe auto-correction (--auto-correct).
419
+ # Configuration parameters: EnforcedStyle.
420
+ # SupportedStyles: always, conditionals
421
+ Style/AndOr:
422
+ Exclude:
423
+ - 'lib/net/ssh/connection/channel.rb'
424
+ - 'lib/net/ssh/connection/session.rb'
425
+ - 'lib/net/ssh/service/forward.rb'
426
+
427
+ # Offense count: 9
428
+ # This cop supports safe auto-correction (--auto-correct).
429
+ # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
430
+ # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
283
431
  # ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
284
432
  # FunctionalMethods: let, let!, subject, watch
285
433
  # IgnoredMethods: lambda, proc, it
@@ -291,79 +439,43 @@ Style/BlockDelimiters:
291
439
  - 'lib/net/ssh/connection/keepalive.rb'
292
440
  - 'lib/net/ssh/proxy/command.rb'
293
441
  - 'lib/net/ssh/transport/ctr.rb'
294
- - 'test/test_buffer.rb'
295
- - 'test/verifiers/test_secure.rb'
296
-
297
- # Offense count: 8
298
- # Cop supports --auto-correct.
299
- # Configuration parameters: EnforcedStyle, SupportedStyles.
300
- # SupportedStyles: braces, no_braces, context_dependent
301
- Style/BracesAroundHashParameters:
302
- Exclude:
303
- - 'lib/net/ssh/config.rb'
304
- - 'test/integration/test_ed25519_pkeys.rb'
305
- - 'test/integration/test_id_rsa_keys.rb'
306
- - 'test/transport/test_hmac.rb'
307
- - 'test/transport/test_session.rb'
308
- - 'test_kerberos_client2.rb'
442
+ - 'test/verifiers/test_always.rb'
309
443
 
310
444
  # Offense count: 2
445
+ # This cop supports safe auto-correction (--auto-correct).
446
+ # Configuration parameters: AllowOnConstant.
311
447
  Style/CaseEquality:
312
448
  Exclude:
313
449
  - 'lib/net/ssh/buffer.rb'
314
450
  - 'lib/net/ssh/connection/session.rb'
315
451
 
316
- # Offense count: 42
317
- # Cop supports --auto-correct.
318
- # Configuration parameters: IndentWhenRelativeTo, SupportedStyles, IndentOneStep, IndentationWidth.
319
- # SupportedStyles: case, end
320
- Style/CaseIndentation:
452
+ # Offense count: 3
453
+ # This cop supports unsafe auto-correction (--auto-correct-all).
454
+ Style/CaseLikeIf:
321
455
  Exclude:
322
- - 'lib/net/ssh.rb'
323
- - 'lib/net/ssh/authentication/methods/hostbased.rb'
324
- - 'lib/net/ssh/authentication/methods/none.rb'
325
- - 'lib/net/ssh/authentication/methods/password.rb'
326
- - 'lib/net/ssh/authentication/methods/publickey.rb'
327
- - 'lib/net/ssh/buffer.rb'
328
- - 'lib/net/ssh/config.rb'
329
- - 'lib/net/ssh/test/local_packet.rb'
330
- - 'lib/net/ssh/test/packet.rb'
456
+ - 'lib/net/ssh/transport/openssl.rb'
457
+ - 'test/connection/test_session.rb'
331
458
 
332
459
  # Offense count: 1
333
- # Cop supports --auto-correct.
460
+ # This cop supports safe auto-correction (--auto-correct).
334
461
  Style/CharacterLiteral:
335
462
  Exclude:
336
463
  - 'test/test_buffer.rb'
337
464
 
338
- # Offense count: 12
339
- Style/ClassAndModuleCamelCase:
340
- Exclude:
341
- - 'lib/net/ssh/transport/hmac/md5_96.rb'
342
- - 'lib/net/ssh/transport/hmac/sha1_96.rb'
343
- - 'lib/net/ssh/transport/hmac/sha2_256.rb'
344
- - 'lib/net/ssh/transport/hmac/sha2_256_96.rb'
345
- - 'lib/net/ssh/transport/hmac/sha2_512.rb'
346
- - 'lib/net/ssh/transport/hmac/sha2_512_96.rb'
347
- - 'test/transport/hmac/test_md5_96.rb'
348
- - 'test/transport/hmac/test_sha1_96.rb'
349
- - 'test/transport/hmac/test_sha2_256.rb'
350
- - 'test/transport/hmac/test_sha2_256_96.rb'
351
- - 'test/transport/hmac/test_sha2_512.rb'
352
- - 'test/transport/hmac/test_sha2_512_96.rb'
353
-
354
- # Offense count: 16
355
- # Configuration parameters: EnforcedStyle, SupportedStyles.
465
+ # Offense count: 18
466
+ # This cop supports safe auto-correction (--auto-correct).
467
+ # Configuration parameters: EnforcedStyle.
356
468
  # SupportedStyles: nested, compact
357
469
  Style/ClassAndModuleChildren:
358
470
  Enabled: false
359
471
 
360
472
  # Offense count: 1
361
- # Cop supports --auto-correct.
362
- # Configuration parameters: EnforcedStyle, SupportedStyles.
363
- # SupportedStyles: is_a?, kind_of?
364
- Style/ClassCheck:
473
+ # This cop supports safe auto-correction (--auto-correct).
474
+ # Configuration parameters: IgnoredMethods.
475
+ # IgnoredMethods: ==, equal?, eql?
476
+ Style/ClassEqualityComparison:
365
477
  Exclude:
366
- - 'test/authentication/test_key_manager.rb'
478
+ - 'lib/net/ssh/service/forward.rb'
367
479
 
368
480
  # Offense count: 7
369
481
  Style/ClassVars:
@@ -374,15 +486,21 @@ Style/ClassVars:
374
486
  - 'test/authentication/methods/test_publickey.rb'
375
487
 
376
488
  # Offense count: 1
377
- # Cop supports --auto-correct.
489
+ # This cop supports safe auto-correction (--auto-correct).
378
490
  Style/ColonMethodCall:
379
491
  Exclude:
380
492
  - 'lib/net/ssh/authentication/ed25519.rb'
381
493
 
494
+ # Offense count: 2
495
+ Style/CombinableLoops:
496
+ Exclude:
497
+ - 'lib/net/ssh/connection/channel.rb'
498
+ - 'test/integration/test_hmac_etm.rb'
499
+
382
500
  # Offense count: 4
383
- # Cop supports --auto-correct.
384
- # Configuration parameters: Keywords.
385
- # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW
501
+ # This cop supports safe auto-correction (--auto-correct).
502
+ # Configuration parameters: Keywords, RequireColon.
503
+ # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW, NOTE
386
504
  Style/CommentAnnotation:
387
505
  Exclude:
388
506
  - 'lib/net/ssh/authentication/ed25519.rb'
@@ -390,42 +508,27 @@ Style/CommentAnnotation:
390
508
  - 'lib/net/ssh/buffer.rb'
391
509
  - 'lib/net/ssh/config.rb'
392
510
 
393
- # Offense count: 2
394
- # Cop supports --auto-correct.
395
- Style/CommentIndentation:
511
+ # Offense count: 3
512
+ # This cop supports safe auto-correction (--auto-correct).
513
+ Style/CommentedKeyword:
396
514
  Exclude:
515
+ - 'test/connection/test_session.rb'
397
516
  - 'test/integration/test_forward.rb'
398
- - 'test/transport/test_server_version.rb'
399
517
 
400
- # Offense count: 4
401
- # Cop supports --auto-correct.
402
- # Configuration parameters: EnforcedStyle, SupportedStyles, SingleLineConditionsOnly.
518
+ # Offense count: 7
519
+ # This cop supports safe auto-correction (--auto-correct).
520
+ # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
403
521
  # SupportedStyles: assign_to_condition, assign_inside_condition
404
522
  Style/ConditionalAssignment:
405
523
  Exclude:
406
- - 'lib/net/ssh/transport/ctr.rb'
407
- - 'lib/net/ssh/transport/state.rb'
408
- - 'test/test_key_factory.rb'
409
524
  - 'lib/net/ssh/config.rb'
410
- - 'lib/net/ssh/known_hosts.rb'
411
525
  - 'lib/net/ssh/proxy/socks5.rb'
412
526
  - 'lib/net/ssh/test/script.rb'
527
+ - 'lib/net/ssh/transport/state.rb'
528
+ - 'test/test_key_factory.rb'
413
529
 
414
- # Offense count: 5
415
- Style/ConstantName:
416
- Exclude:
417
- - 'lib/net/ssh/authentication/pageant.rb'
418
- - 'lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb'
419
- - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
420
- - 'lib/net/ssh/transport/openssl.rb'
421
-
422
- # Offense count: 1
423
- # Cop supports --auto-correct.
424
- Style/DefWithParentheses:
425
- Exclude:
426
- - 'test/integration/test_forward.rb'
427
-
428
- # Offense count: 16
530
+ # Offense count: 12
531
+ # Configuration parameters: AllowedConstants.
429
532
  Style/Documentation:
430
533
  Exclude:
431
534
  - 'spec/**/*'
@@ -433,143 +536,91 @@ Style/Documentation:
433
536
  - 'lib/net/ssh/authentication/ed25519.rb'
434
537
  - 'lib/net/ssh/connection/keepalive.rb'
435
538
  - 'lib/net/ssh/connection/session.rb'
436
- - 'lib/net/ssh/ruby_compat.rb'
437
539
  - 'lib/net/ssh/test/extensions.rb'
438
- - 'lib/net/ssh/transport/hmac/sha2_256_96.rb'
439
- - 'lib/net/ssh/transport/hmac/sha2_512.rb'
440
- - 'lib/net/ssh/transport/hmac/sha2_512_96.rb'
441
540
  - 'lib/net/ssh/transport/kex.rb'
442
- - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha256.rb'
443
541
  - 'lib/net/ssh/transport/key_expander.rb'
444
542
  - 'lib/net/ssh/transport/openssl.rb'
445
543
 
446
- # Offense count: 6
447
- # Cop supports --auto-correct.
448
- # Configuration parameters: EnforcedStyle, SupportedStyles.
449
- # SupportedStyles: leading, trailing
450
- Style/DotPosition:
451
- Exclude:
452
- - 'test/transport/test_algorithms.rb'
453
-
454
- # Offense count: 3
455
- # Cop supports --auto-correct.
456
- Style/EachWithObject:
457
- Exclude:
458
- - 'lib/net/ssh/config.rb'
459
- - 'lib/net/ssh/connection/session.rb'
460
- - 'lib/net/ssh/service/forward.rb'
461
-
462
544
  # Offense count: 1
463
- # Cop supports --auto-correct.
464
- Style/ElseAlignment:
545
+ # This cop supports safe auto-correction (--auto-correct).
546
+ Style/EvenOdd:
465
547
  Exclude:
466
- - 'lib/net/ssh/packet.rb'
548
+ - 'lib/net/ssh/buffer.rb'
467
549
 
468
- # Offense count: 12
469
- # Cop supports --auto-correct.
470
- # Configuration parameters: AllowAdjacentOneLineDefs.
471
- Style/EmptyLineBetweenDefs:
550
+ # Offense count: 9
551
+ # This cop supports safe auto-correction (--auto-correct).
552
+ Style/ExplicitBlockArgument:
472
553
  Exclude:
473
- - 'lib/net/ssh/buffered_io.rb'
474
- - 'lib/net/ssh/ruby_compat.rb'
475
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp384.rb'
476
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp521.rb'
477
- - 'test/test_buffer.rb'
478
- - 'test/test_key_factory.rb'
554
+ - 'lib/net/ssh/loggable.rb'
555
+ - 'lib/net/ssh/test.rb'
556
+ - 'test/integration/common.rb'
557
+ - 'test/integration/mitm_server.rb'
558
+ - 'test/integration/test_forward.rb'
479
559
 
480
- # Offense count: 16
481
- # Cop supports --auto-correct.
482
- Style/EmptyLines:
560
+ # Offense count: 12
561
+ # This cop supports safe auto-correction (--auto-correct).
562
+ # Configuration parameters: AllowedVars.
563
+ Style/FetchEnvVar:
483
564
  Exclude:
484
- - 'Rakefile'
485
- - 'lib/net/ssh/buffered_io.rb'
486
- - 'lib/net/ssh/connection/session.rb'
487
- - 'lib/net/ssh/known_hosts.rb'
488
- - 'lib/net/ssh/transport/cipher_factory.rb'
489
- - 'lib/net/ssh/transport/packet_stream.rb'
490
- - 'lib/net/ssh/transport/session.rb'
491
- - 'test/authentication/methods/test_keyboard_interactive.rb'
492
- - 'test/authentication/methods/test_password.rb'
493
- - 'test/integration/test_ed25519_pkeys.rb'
494
- - 'test/integration/test_id_rsa_keys.rb'
565
+ - 'lib/net/ssh.rb'
566
+ - 'lib/net/ssh/authentication/agent.rb'
567
+ - 'lib/net/ssh/authentication/methods/hostbased.rb'
568
+ - 'test/authentication/test_agent.rb'
569
+ - 'test/common.rb'
570
+ - 'test/start/test_options.rb'
571
+ - 'test/test_all.rb'
495
572
  - 'test/test_config.rb'
496
- - 'test/test_known_hosts.rb'
497
- - 'test/transport/test_cipher_factory.rb'
498
-
499
- # Offense count: 39
500
- # Cop supports --auto-correct.
501
- # Configuration parameters: EnforcedStyle, SupportedStyles.
502
- # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
503
- Style/EmptyLinesAroundClassBody:
504
- Enabled: false
505
-
506
- # Offense count: 4
507
- # Cop supports --auto-correct.
508
- Style/EmptyLinesAroundMethodBody:
509
- Exclude:
510
- - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
511
- - 'lib/net/ssh/transport/openssl.rb'
512
- - 'test/transport/hmac/test_sha2_256.rb'
513
- - 'test/transport/hmac/test_sha2_512.rb'
514
-
515
- # Offense count: 209
516
- # Cop supports --auto-correct.
517
- # Configuration parameters: EnforcedStyle, SupportedStyles.
518
- # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
519
- Style/EmptyLinesAroundModuleBody:
520
- Enabled: false
521
-
522
- # Offense count: 2
523
- # Cop supports --auto-correct.
524
- Style/EmptyLiteral:
525
- Exclude:
526
- - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
527
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb'
528
573
 
529
574
  # Offense count: 1
530
- # Cop supports --auto-correct.
531
- Style/EvenOdd:
575
+ # This cop supports safe auto-correction (--auto-correct).
576
+ Style/FileWrite:
532
577
  Exclude:
533
- - 'lib/net/ssh/buffer.rb'
534
-
535
- # Offense count: 17
536
- # Cop supports --auto-correct.
537
- # Configuration parameters: AllowForAlignment, ForceEqualSignAlignment.
538
- Style/ExtraSpacing:
539
- Exclude:
540
- - 'Rakefile'
541
- - 'lib/net/ssh/authentication/methods/password.rb'
542
- - 'lib/net/ssh/authentication/pageant.rb'
543
- - 'lib/net/ssh/proxy/socks5.rb'
544
- - 'lib/net/ssh/transport/hmac/sha2_256_96.rb'
545
- - 'lib/net/ssh/transport/hmac/sha2_512_96.rb'
546
- - 'test/authentication/test_key_manager.rb'
547
- - 'test/integration/test_forward.rb'
548
- - 'test/test_config.rb'
549
- - 'test/test_key_factory.rb'
550
- - 'test/transport/test_packet_stream.rb'
578
+ - 'test/integration/test_proxy.rb'
551
579
 
552
580
  # Offense count: 2
553
- # Configuration parameters: EnforcedStyle, SupportedStyles.
581
+ # This cop supports safe auto-correction (--auto-correct).
582
+ # Configuration parameters: EnforcedStyle.
554
583
  # SupportedStyles: format, sprintf, percent
555
584
  Style/FormatString:
556
585
  Exclude:
557
586
  - 'lib/net/ssh/authentication/pageant.rb'
558
587
  - 'lib/net/ssh/loggable.rb'
559
588
 
589
+ # Offense count: 174
590
+ # This cop supports safe auto-correction (--auto-correct).
591
+ # Configuration parameters: EnforcedStyle.
592
+ # SupportedStyles: always, always_true, never
593
+ Style/FrozenStringLiteralComment:
594
+ Enabled: false
595
+
596
+ # Offense count: 1
597
+ # This cop supports safe auto-correction (--auto-correct).
598
+ Style/GlobalStdStream:
599
+ Exclude:
600
+ - 'lib/net/ssh.rb'
601
+
560
602
  # Offense count: 35
561
- # Configuration parameters: MinBodyLength.
603
+ # Configuration parameters: MinBodyLength, AllowConsecutiveConditionals.
562
604
  Style/GuardClause:
563
605
  Enabled: false
564
606
 
607
+ # Offense count: 3
608
+ # This cop supports safe auto-correction (--auto-correct).
609
+ # Configuration parameters: AllowSplatArgument.
610
+ Style/HashConversion:
611
+ Exclude:
612
+ - 'lib/net/ssh/authentication/certificate.rb'
613
+ - 'test/test_config.rb'
614
+
565
615
  # Offense count: 1
616
+ # This cop supports safe auto-correction (--auto-correct).
617
+ # Configuration parameters: AllowIfModifier.
566
618
  Style/IfInsideElse:
567
619
  Exclude:
568
620
  - 'lib/net/ssh/connection/session.rb'
569
621
 
570
- # Offense count: 9
571
- # Cop supports --auto-correct.
572
- # Configuration parameters: MaxLineLength.
622
+ # Offense count: 13
623
+ # This cop supports safe auto-correction (--auto-correct).
573
624
  Style/IfUnlessModifier:
574
625
  Exclude:
575
626
  - 'lib/net/ssh.rb'
@@ -581,128 +632,67 @@ Style/IfUnlessModifier:
581
632
  - 'test/integration/test_proxy.rb'
582
633
  - 'test/test_key_factory.rb'
583
634
 
584
- # Offense count: 4
585
- # Cop supports --auto-correct.
586
- # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
587
- # SupportedStyles: special_inside_parentheses, consistent, align_brackets
588
- Style/IndentArray:
589
- Exclude:
590
- - 'lib/net/ssh/transport/openssl.rb'
591
-
592
- # Offense count: 4
593
- # Cop supports --auto-correct.
594
- # Configuration parameters: IndentationWidth.
595
- Style/IndentAssignment:
596
- Exclude:
597
- - 'test/transport/kex/test_diffie_hellman_group1_sha1.rb'
598
- - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
599
- - 'test/transport/kex/test_ecdh_sha2_nistp384.rb'
600
- - 'test/transport/kex/test_ecdh_sha2_nistp521.rb'
601
-
602
- # Offense count: 227
603
- # Cop supports --auto-correct.
604
- # Configuration parameters: EnforcedStyle, SupportedStyles.
605
- # SupportedStyles: normal, rails
606
- Style/IndentationConsistency:
607
- Enabled: false
608
-
609
- # Offense count: 96
610
- # Cop supports --auto-correct.
611
- # Configuration parameters: Width.
612
- Style/IndentationWidth:
613
- Enabled: false
614
-
615
635
  # Offense count: 1
616
- # Cop supports --auto-correct.
636
+ # This cop supports unsafe auto-correction (--auto-correct-all).
617
637
  Style/InfiniteLoop:
618
638
  Exclude:
619
639
  - 'lib/net/ssh/authentication/pageant.rb'
620
640
 
621
- # Offense count: 17
622
- # Cop supports --auto-correct.
623
- Style/LeadingCommentSpace:
624
- Exclude:
625
- - 'test/integration/test_ed25519_pkeys.rb'
626
- - 'test/integration/test_forward.rb'
627
- - 'test/integration/test_id_rsa_keys.rb'
628
- - 'test/integration/test_proxy.rb'
629
-
630
641
  # Offense count: 27
631
- # Cop supports --auto-correct.
642
+ # This cop supports safe auto-correction (--auto-correct).
632
643
  Style/LineEndConcatenation:
633
644
  Exclude:
634
645
  - 'lib/net/ssh/authentication/pageant.rb'
635
646
  - 'lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb'
636
647
  - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
637
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb'
638
- - 'lib/net/ssh/verifiers/secure.rb'
639
-
640
- # Offense count: 12
641
- # Cop supports --auto-correct.
642
- Style/MethodCallWithoutArgsParentheses:
643
- Exclude:
644
- - 'test/authentication/test_key_manager.rb'
645
- - 'test/connection/test_session.rb'
646
- - 'test/integration/test_forward.rb'
647
- - 'test/start/test_user_nil.rb'
648
-
649
- # Offense count: 2
650
- # Cop supports --auto-correct.
651
- # Configuration parameters: EnforcedStyle, SupportedStyles.
652
- # SupportedStyles: require_parentheses, require_no_parentheses, require_no_parentheses_except_multiline
653
- Style/MethodDefParentheses:
654
- Exclude:
655
- - 'test/common.rb'
656
- - 'test/integration/common.rb'
648
+ - 'lib/net/ssh/verifiers/always.rb'
657
649
 
658
650
  # Offense count: 1
659
- Style/MethodMissing:
660
- Exclude:
661
- - 'lib/net/ssh/connection/session.rb'
662
-
663
- # Offense count: 24
664
- # Configuration parameters: EnforcedStyle, SupportedStyles.
665
- # SupportedStyles: snake_case, camelCase
666
- Style/MethodName:
651
+ # This cop supports unsafe auto-correction (--auto-correct-all).
652
+ Style/MapToHash:
667
653
  Exclude:
668
- - 'lib/net/ssh/authentication/ed25519_loader.rb'
669
- - 'test/authentication/test_agent.rb'
670
- - 'test/authentication/test_session.rb'
671
- - 'test/common.rb'
672
- - 'test/connection/test_channel.rb'
673
- - 'test/test_config.rb'
674
- - 'test/test_key_factory.rb'
654
+ - 'lib/net/ssh/config.rb'
655
+
656
+ # Offense count: 1
657
+ Style/MissingRespondToMissing:
658
+ Exclude:
659
+ - 'lib/net/ssh/connection/session.rb'
675
660
 
676
661
  # Offense count: 3
677
- # Cop supports --auto-correct.
662
+ # This cop supports safe auto-correction (--auto-correct).
678
663
  Style/MultilineIfThen:
679
664
  Exclude:
680
665
  - 'lib/net/ssh/buffered_io.rb'
681
666
  - 'lib/net/ssh/service/forward.rb'
682
667
 
683
- # Offense count: 23
684
- # Cop supports --auto-correct.
685
- # Configuration parameters: EnforcedStyle, SupportedStyles, IndentationWidth.
686
- # SupportedStyles: aligned, indented
687
- Style/MultilineOperationIndentation:
668
+ # Offense count: 7
669
+ # This cop supports safe auto-correction (--auto-correct).
670
+ Style/MultilineWhenThen:
688
671
  Exclude:
672
+ - 'lib/net/ssh/transport/packet_stream.rb'
673
+ - 'lib/net/ssh/transport/session.rb'
674
+
675
+ # Offense count: 5
676
+ # This cop supports safe auto-correction (--auto-correct).
677
+ # Configuration parameters: AllowMethodComparison.
678
+ Style/MultipleComparison:
679
+ Exclude:
680
+ - 'lib/net/ssh/authentication/agent.rb'
689
681
  - 'lib/net/ssh/authentication/pageant.rb'
690
682
  - 'lib/net/ssh/known_hosts.rb'
691
- - 'lib/net/ssh/proxy/https.rb'
692
- - 'lib/net/ssh/transport/algorithms.rb'
693
- - 'lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb'
694
- - 'lib/net/ssh/transport/state.rb'
695
- - 'lib/net/ssh/verifiers/secure.rb'
696
- - 'test/authentication/methods/test_hostbased.rb'
697
- - 'test/authentication/methods/test_publickey.rb'
683
+ - 'lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb'
698
684
 
699
- # Offense count: 40
700
- # Cop supports --auto-correct.
685
+ # Offense count: 42
686
+ # This cop supports safe auto-correction (--auto-correct).
687
+ # Configuration parameters: EnforcedStyle.
688
+ # SupportedStyles: literals, strict
701
689
  Style/MutableConstant:
702
690
  Enabled: false
703
691
 
704
- # Offense count: 13
705
- # Cop supports --auto-correct.
692
+ # Offense count: 14
693
+ # This cop supports safe auto-correction (--auto-correct).
694
+ # Configuration parameters: EnforcedStyle.
695
+ # SupportedStyles: both, prefix, postfix
706
696
  Style/NegatedIf:
707
697
  Exclude:
708
698
  - 'lib/net/ssh.rb'
@@ -715,63 +705,82 @@ Style/NegatedIf:
715
705
  - 'test/test_key_factory.rb'
716
706
  - 'test/transport/test_state.rb'
717
707
 
708
+ # Offense count: 2
709
+ # This cop supports safe auto-correction (--auto-correct).
710
+ Style/NegatedIfElseCondition:
711
+ Exclude:
712
+ - 'lib/net/ssh/transport/algorithms.rb'
713
+ - 'lib/net/ssh/transport/cipher_factory.rb'
714
+
718
715
  # Offense count: 1
719
- # Cop supports --auto-correct.
716
+ # This cop supports safe auto-correction (--auto-correct).
720
717
  Style/NegatedWhile:
721
718
  Exclude:
722
719
  - 'lib/net/ssh/config.rb'
723
720
 
724
- # Offense count: 2
725
- # Cop supports --auto-correct.
726
- # Configuration parameters: EnforcedStyle, MinBodyLength, SupportedStyles.
721
+ # Offense count: 1
722
+ # This cop supports safe auto-correction (--auto-correct).
723
+ # Configuration parameters: EnforcedStyle, MinBodyLength.
727
724
  # SupportedStyles: skip_modifier_ifs, always
728
725
  Style/Next:
729
726
  Exclude:
730
727
  - 'lib/net/ssh/authentication/key_manager.rb'
731
- - 'lib/net/ssh/transport/algorithms.rb'
732
728
 
733
- # Offense count: 2
734
- # Cop supports --auto-correct.
729
+ # Offense count: 1
730
+ # This cop supports safe auto-correction (--auto-correct).
731
+ # Configuration parameters: EnforcedStyle.
732
+ # SupportedStyles: predicate, comparison
735
733
  Style/NilComparison:
736
734
  Exclude:
737
735
  - 'lib/net/ssh/proxy/command.rb'
738
- - 'lib/net/ssh/transport/openssl.rb'
739
736
 
740
737
  # Offense count: 3
741
- # Cop supports --auto-correct.
738
+ # This cop supports safe auto-correction (--auto-correct).
742
739
  Style/Not:
743
740
  Exclude:
744
741
  - 'lib/net/ssh/connection/channel.rb'
745
742
 
746
- # Offense count: 7
747
- # Cop supports --auto-correct.
743
+ # Offense count: 11
744
+ # This cop supports safe auto-correction (--auto-correct).
745
+ # Configuration parameters: Strict, AllowedNumbers.
748
746
  Style/NumericLiterals:
749
747
  MinDigits: 310
750
748
 
751
- # Offense count: 11
752
- # Cop supports --auto-correct.
753
- # Configuration parameters: AutoCorrect, EnforcedStyle, SupportedStyles.
749
+ # Offense count: 29
750
+ # This cop supports unsafe auto-correction (--auto-correct-all).
751
+ # Configuration parameters: EnforcedStyle, IgnoredMethods.
754
752
  # SupportedStyles: predicate, comparison
755
753
  Style/NumericPredicate:
754
+ Enabled: false
755
+
756
+ # Offense count: 13
757
+ Style/OpenStructUse:
756
758
  Exclude:
757
- - 'spec/**/*'
758
- - 'lib/net/ssh/authentication/methods/password.rb'
759
- - 'lib/net/ssh/authentication/pageant.rb'
760
- - 'lib/net/ssh/buffer.rb'
761
- - 'lib/net/ssh/service/forward.rb'
762
- - 'lib/net/ssh/test/extensions.rb'
763
- - 'lib/net/ssh/transport/key_expander.rb'
764
- - 'test/transport/test_packet_stream.rb'
765
- - 'test_connection_close_shall_close_cannels.rb'
759
+ - 'test/authentication/test_ed25519.rb'
760
+ - 'test/common.rb'
761
+ - 'test/transport/kex/test_curve25519_sha256.rb'
762
+ - 'test/transport/kex/test_diffie_hellman_group1_sha1.rb'
763
+ - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
764
+ - 'test/verifiers/test_always.rb'
766
765
 
767
- # Offense count: 2
768
- Style/OpMethod:
766
+ # Offense count: 16
767
+ # Configuration parameters: AllowedMethods.
768
+ # AllowedMethods: respond_to_missing?
769
+ Style/OptionalBooleanParameter:
769
770
  Exclude:
770
- - 'lib/net/ssh/buffer.rb'
771
- - 'lib/net/ssh/version.rb'
771
+ - 'lib/net/ssh/connection/session.rb'
772
+ - 'lib/net/ssh/key_factory.rb'
773
+ - 'lib/net/ssh/prompt.rb'
774
+ - 'lib/net/ssh/test/channel.rb'
775
+ - 'lib/net/ssh/test/script.rb'
776
+ - 'lib/net/ssh/transport/algorithms.rb'
777
+ - 'lib/net/ssh/transport/session.rb'
778
+ - 'lib/net/ssh/transport/state.rb'
779
+ - 'test/common.rb'
780
+ - 'test/transport/test_server_version.rb'
772
781
 
773
782
  # Offense count: 15
774
- # Cop supports --auto-correct.
783
+ # This cop supports safe auto-correction (--auto-correct).
775
784
  Style/ParallelAssignment:
776
785
  Exclude:
777
786
  - 'lib/net/ssh/config.rb'
@@ -784,28 +793,26 @@ Style/ParallelAssignment:
784
793
  - 'test/common.rb'
785
794
  - 'test/connection/test_channel.rb'
786
795
 
787
- # Offense count: 7
788
- # Cop supports --auto-correct.
789
- # Configuration parameters: AllowSafeAssignment.
796
+ # Offense count: 5
797
+ # This cop supports safe auto-correction (--auto-correct).
798
+ # Configuration parameters: AllowSafeAssignment, AllowInMultilineConditions.
790
799
  Style/ParenthesesAroundCondition:
791
800
  Exclude:
792
801
  - 'lib/net/ssh/authentication/ed25519.rb'
793
802
  - 'lib/net/ssh/service/forward.rb'
794
- - 'lib/net/ssh/transport/cipher_factory.rb'
795
803
  - 'lib/net/ssh/transport/ctr.rb'
796
804
  - 'test/integration/test_proxy.rb'
797
805
 
798
- # Offense count: 5
799
- # Cop supports --auto-correct.
806
+ # Offense count: 23
807
+ # This cop supports safe auto-correction (--auto-correct).
800
808
  # Configuration parameters: PreferredDelimiters.
801
809
  Style/PercentLiteralDelimiters:
802
810
  Exclude:
803
- - 'Rakefile'
804
811
  - 'net-ssh.gemspec'
805
812
  - 'test/test_config.rb'
806
813
 
807
- # Offense count: 16
808
- # Cop supports --auto-correct.
814
+ # Offense count: 17
815
+ # This cop supports safe auto-correction (--auto-correct).
809
816
  Style/PerlBackrefs:
810
817
  Exclude:
811
818
  - 'lib/net/ssh/buffer.rb'
@@ -813,86 +820,144 @@ Style/PerlBackrefs:
813
820
  - 'lib/net/ssh/key_factory.rb'
814
821
  - 'lib/net/ssh/proxy/command.rb'
815
822
  - 'lib/net/ssh/proxy/socks5.rb'
816
- - 'lib/net/ssh/transport/openssl.rb'
817
823
  - 'test/integration/common.rb'
818
824
 
819
- # Offense count: 14
820
- # Cop supports --auto-correct.
825
+ # Offense count: 15
826
+ # This cop supports safe auto-correction (--auto-correct).
821
827
  Style/Proc:
822
828
  Exclude:
823
829
  - 'lib/net/ssh/connection/session.rb'
824
830
  - 'lib/net/ssh/test/channel.rb'
825
831
  - 'lib/net/ssh/transport/algorithms.rb'
826
- - 'lib/net/ssh/verifiers/secure.rb'
832
+ - 'lib/net/ssh/verifiers/always.rb'
827
833
  - 'test/authentication/methods/test_hostbased.rb'
828
834
  - 'test/authentication/methods/test_publickey.rb'
829
835
  - 'test/connection/test_channel.rb'
830
836
  - 'test/connection/test_session.rb'
831
837
 
832
838
  # Offense count: 7
833
- # Cop supports --auto-correct.
834
- # Configuration parameters: EnforcedStyle, SupportedStyles.
839
+ # This cop supports safe auto-correction (--auto-correct).
840
+ # Configuration parameters: EnforcedStyle, AllowedCompactTypes.
835
841
  # SupportedStyles: compact, exploded
836
842
  Style/RaiseArgs:
837
843
  Exclude:
838
844
  - 'lib/net/ssh/authentication/ed25519.rb'
839
845
 
840
- # Offense count: 4
841
- # Cop supports --auto-correct.
846
+ # Offense count: 6
847
+ # This cop supports unsafe auto-correction (--auto-correct-all).
848
+ # Configuration parameters: Methods.
849
+ Style/RedundantArgument:
850
+ Exclude:
851
+ - 'lib/net/ssh/known_hosts.rb'
852
+ - 'test/authentication/test_ed25519.rb'
853
+
854
+ # Offense count: 5
855
+ # This cop supports safe auto-correction (--auto-correct).
842
856
  Style/RedundantBegin:
843
857
  Exclude:
844
858
  - 'lib/net/ssh/buffered_io.rb'
845
- - 'lib/net/ssh/verifiers/strict.rb'
859
+ - 'lib/net/ssh/service/forward.rb'
860
+ - 'lib/net/ssh/verifiers/accept_new.rb'
846
861
  - 'test/manual/test_pageant.rb'
847
862
 
848
863
  # Offense count: 1
849
- # Cop supports --auto-correct.
850
- Style/RedundantParentheses:
864
+ # This cop supports safe auto-correction (--auto-correct).
865
+ Style/RedundantCondition:
866
+ Exclude:
867
+ - 'lib/net/ssh/proxy/command.rb'
868
+
869
+ # Offense count: 1
870
+ # This cop supports safe auto-correction (--auto-correct).
871
+ Style/RedundantFileExtensionInRequire:
872
+ Exclude:
873
+ - 'lib/net/ssh/transport/cipher_factory.rb'
874
+
875
+ # Offense count: 2
876
+ # This cop supports safe auto-correction (--auto-correct).
877
+ Style/RedundantInterpolation:
878
+ Exclude:
879
+ - 'lib/net/ssh/proxy/socks5.rb'
880
+ - 'lib/net/ssh/transport/session.rb'
881
+
882
+ # Offense count: 2
883
+ # This cop supports safe auto-correction (--auto-correct).
884
+ Style/RedundantPercentQ:
885
+ Exclude:
886
+ - 'net-ssh.gemspec'
887
+
888
+ # Offense count: 11
889
+ # This cop supports safe auto-correction (--auto-correct).
890
+ Style/RedundantRegexpEscape:
851
891
  Exclude:
852
- - 'support/arcfour_check.rb'
892
+ - 'lib/net/ssh/authentication/agent.rb'
893
+ - 'lib/net/ssh/buffer.rb'
894
+ - 'lib/net/ssh/config.rb'
895
+ - 'lib/net/ssh/transport/cipher_factory.rb'
853
896
 
854
- # Offense count: 57
855
- # Cop supports --auto-correct.
897
+ # Offense count: 87
898
+ # This cop supports safe auto-correction (--auto-correct).
856
899
  # Configuration parameters: AllowMultipleReturnValues.
857
900
  Style/RedundantReturn:
858
901
  Enabled: false
859
902
 
860
- # Offense count: 11
861
- # Cop supports --auto-correct.
903
+ # Offense count: 18
904
+ # This cop supports safe auto-correction (--auto-correct).
862
905
  Style/RedundantSelf:
863
906
  Exclude:
864
- - 'lib/net/ssh/authentication/ed25519.rb'
865
907
  - 'lib/net/ssh/connection/channel.rb'
866
908
  - 'lib/net/ssh/test/extensions.rb'
867
- - 'lib/net/ssh/transport/openssl.rb'
868
909
  - 'test/authentication/test_ed25519.rb'
869
910
 
870
- # Offense count: 4
871
- # Cop supports --auto-correct.
911
+ # Offense count: 6
912
+ # This cop supports safe auto-correction (--auto-correct).
872
913
  Style/RescueModifier:
873
914
  Exclude:
874
915
  - 'lib/net/ssh/service/forward.rb'
875
916
  - 'lib/net/ssh/transport/algorithms.rb'
876
917
 
877
- # Offense count: 1
878
- # Cop supports --auto-correct.
918
+ # Offense count: 25
919
+ # This cop supports safe auto-correction (--auto-correct).
920
+ # Configuration parameters: ConvertCodeThatCanStartToReturnNil, AllowedMethods, MaxChainLength.
921
+ # AllowedMethods: present?, blank?, presence, try, try!
922
+ Style/SafeNavigation:
923
+ Exclude:
924
+ - 'lib/net/ssh/authentication/key_manager.rb'
925
+ - 'lib/net/ssh/authentication/methods/keyboard_interactive.rb'
926
+ - 'lib/net/ssh/authentication/methods/password.rb'
927
+ - 'lib/net/ssh/authentication/session.rb'
928
+ - 'lib/net/ssh/connection/channel.rb'
929
+ - 'lib/net/ssh/connection/event_loop.rb'
930
+ - 'lib/net/ssh/connection/session.rb'
931
+ - 'lib/net/ssh/key_factory.rb'
932
+ - 'lib/net/ssh/loggable.rb'
933
+ - 'lib/net/ssh/test/local_packet.rb'
934
+ - 'lib/net/ssh/transport/algorithms.rb'
935
+ - 'lib/net/ssh/transport/packet_stream.rb'
936
+
937
+ # Offense count: 3
938
+ # This cop supports safe auto-correction (--auto-correct).
939
+ Style/SelectByRegexp:
940
+ Exclude:
941
+ - 'test/test_all.rb'
942
+
943
+ # Offense count: 2
944
+ # This cop supports safe auto-correction (--auto-correct).
879
945
  Style/SelfAssignment:
880
946
  Exclude:
881
947
  - 'lib/net/ssh/config.rb'
882
948
 
883
- # Offense count: 8
884
- # Cop supports --auto-correct.
949
+ # Offense count: 7
950
+ # This cop supports safe auto-correction (--auto-correct).
885
951
  # Configuration parameters: AllowAsExpressionSeparator.
886
952
  Style/Semicolon:
887
953
  Exclude:
888
954
  - 'lib/net/ssh/buffer.rb'
889
955
  - 'test/connection/test_channel.rb'
890
956
  - 'test/connection/test_session.rb'
891
- - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
892
957
 
893
958
  # Offense count: 2
894
- # Cop supports --auto-correct.
895
- # Configuration parameters: EnforcedStyle, SupportedStyles.
959
+ # This cop supports safe auto-correction (--auto-correct).
960
+ # Configuration parameters: EnforcedStyle.
896
961
  # SupportedStyles: only_raise, only_fail, semantic
897
962
  Style/SignalException:
898
963
  Exclude:
@@ -900,113 +965,37 @@ Style/SignalException:
900
965
  - 'lib/net/ssh/connection/channel.rb'
901
966
 
902
967
  # Offense count: 2
903
- # Cop supports --auto-correct.
968
+ # This cop supports safe auto-correction (--auto-correct).
904
969
  # Configuration parameters: AllowIfMethodIsEmpty.
905
970
  Style/SingleLineMethods:
906
971
  Exclude:
907
972
  - 'lib/net/ssh/buffered_io.rb'
908
973
 
909
- # Offense count: 16
910
- # Cop supports --auto-correct.
911
- Style/SpaceAfterColon:
974
+ # Offense count: 11
975
+ # This cop supports unsafe auto-correction (--auto-correct-all).
976
+ Style/SlicingWithRange:
912
977
  Exclude:
913
978
  - 'lib/net/ssh/authentication/ed25519.rb'
914
- - 'test/integration/test_ed25519_pkeys.rb'
915
- - 'test/verifiers/test_secure.rb'
916
-
917
- # Offense count: 254
918
- # Cop supports --auto-correct.
919
- Style/SpaceAfterComma:
920
- Enabled: false
921
-
922
- # Offense count: 132
923
- # Cop supports --auto-correct.
924
- # Configuration parameters: EnforcedStyle, SupportedStyles.
925
- # SupportedStyles: space, no_space
926
- Style/SpaceAroundEqualsInParameterDefault:
927
- Enabled: false
928
-
929
- # Offense count: 55
930
- # Cop supports --auto-correct.
931
- # Configuration parameters: AllowForAlignment.
932
- Style/SpaceAroundOperators:
933
- Enabled: false
934
-
935
- # Offense count: 6
936
- # Cop supports --auto-correct.
937
- # Configuration parameters: EnforcedStyle, SupportedStyles.
938
- # SupportedStyles: space, no_space
939
- Style/SpaceBeforeBlockBraces:
940
- Exclude:
941
- - 'lib/net/ssh/authentication/session.rb'
942
- - 'support/ssh_tunnel_bug.rb'
943
- - 'test/authentication/test_agent.rb'
944
- - 'test/connection/test_session.rb'
945
-
946
- # Offense count: 4
947
- # Cop supports --auto-correct.
948
- Style/SpaceBeforeComma:
949
- Exclude:
950
- - 'test/integration/test_forward.rb'
951
- - 'test/integration/test_proxy.rb'
952
-
953
- # Offense count: 3
954
- # Cop supports --auto-correct.
955
- # Configuration parameters: AllowForAlignment.
956
- Style/SpaceBeforeFirstArg:
957
- Exclude:
958
- - 'lib/net/ssh/transport/hmac/sha2_256_96.rb'
959
- - 'lib/net/ssh/transport/hmac/sha2_512_96.rb'
960
- - 'test/authentication/test_key_manager.rb'
961
-
962
- # Offense count: 10
963
- # Cop supports --auto-correct.
964
- # Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
965
- # SupportedStyles: space, no_space
966
- Style/SpaceInsideBlockBraces:
967
- Exclude:
968
- - 'lib/net/ssh/authentication/session.rb'
969
- - 'lib/net/ssh/transport/ctr.rb'
970
- - 'support/ssh_tunnel_bug.rb'
971
- - 'test/authentication/test_agent.rb'
972
- - 'test/authentication/test_key_manager.rb'
973
- - 'test/start/test_user_nil.rb'
974
-
975
- # Offense count: 22
976
- # Cop supports --auto-correct.
977
- Style/SpaceInsideBrackets:
978
- Exclude:
979
- - 'Rakefile'
980
- - 'lib/net/ssh/transport/algorithms.rb'
981
- - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
982
- - 'test/integration/test_forward.rb'
983
- - 'test/start/test_options.rb'
984
-
985
- # Offense count: 69
986
- # Cop supports --auto-correct.
987
- # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
988
- # SupportedStyles: space, no_space, compact
989
- Style/SpaceInsideHashLiteralBraces:
990
- Enabled: false
991
-
992
- # Offense count: 13
993
- # Cop supports --auto-correct.
994
- Style/SpaceInsideParens:
995
- Exclude:
979
+ - 'lib/net/ssh/buffer.rb'
980
+ - 'lib/net/ssh/config.rb'
996
981
  - 'lib/net/ssh/transport/algorithms.rb'
997
- - 'lib/net/ssh/transport/openssl.rb'
982
+ - 'lib/net/ssh/transport/packet_stream.rb'
983
+ - 'lib/net/ssh/transport/state.rb'
984
+ - 'test/transport/test_packet_stream.rb'
998
985
 
999
986
  # Offense count: 3
1000
- # Cop supports --auto-correct.
1001
- Style/SpaceInsideRangeLiteral:
987
+ # This cop supports safe auto-correction (--auto-correct).
988
+ # Configuration parameters: AllowModifier.
989
+ Style/SoleNestedConditional:
1002
990
  Exclude:
1003
- - 'lib/net/ssh/authentication/ed25519.rb'
1004
- - 'lib/net/ssh/transport/algorithms.rb'
991
+ - 'lib/net/ssh/transport/packet_stream.rb'
992
+ - 'test/common.rb'
993
+ - 'test/integration/test_proxy.rb'
1005
994
 
1006
- # Offense count: 22
1007
- # Cop supports --auto-correct.
1008
- # Configuration parameters: EnforcedStyle, SupportedStyles.
1009
- # SupportedStyles: use_perl_names, use_english_names
995
+ # Offense count: 18
996
+ # This cop supports safe auto-correction (--auto-correct).
997
+ # Configuration parameters: RequireEnglish, EnforcedStyle.
998
+ # SupportedStyles: use_perl_names, use_english_names, use_builtin_english_names
1010
999
  Style/SpecialGlobalVars:
1011
1000
  Exclude:
1012
1001
  - 'lib/net/ssh/authentication/agent.rb'
@@ -1016,19 +1005,40 @@ Style/SpecialGlobalVars:
1016
1005
  - 'test/integration/test_forward.rb'
1017
1006
  - 'test/manual/test_pageant.rb'
1018
1007
  - 'test/test_all.rb'
1019
- - 'test_connection_close_shall_close_cannels.rb'
1020
- - 'test_kerberos_client2.rb'
1021
1008
 
1022
- # Offense count: 1846
1023
- # Cop supports --auto-correct.
1024
- # Configuration parameters: EnforcedStyle, SupportedStyles, ConsistentQuotesInMultiline.
1009
+ # Offense count: 1
1010
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1011
+ Style/StringChars:
1012
+ Exclude:
1013
+ - 'test/transport/test_server_version.rb'
1014
+
1015
+ # Offense count: 27
1016
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1017
+ # Configuration parameters: Mode.
1018
+ Style/StringConcatenation:
1019
+ Exclude:
1020
+ - 'lib/net/ssh/authentication/certificate.rb'
1021
+ - 'lib/net/ssh/authentication/key_manager.rb'
1022
+ - 'lib/net/ssh/authentication/pageant.rb'
1023
+ - 'lib/net/ssh/config.rb'
1024
+ - 'lib/net/ssh/transport/algorithms.rb'
1025
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
1026
+ - 'test/authentication/test_key_manager.rb'
1027
+ - 'test/integration/common.rb'
1028
+ - 'test/integration/test_proxy.rb'
1029
+ - 'test/test_buffer.rb'
1030
+ - 'test/test_key_factory.rb'
1031
+
1032
+ # Offense count: 1849
1033
+ # This cop supports safe auto-correction (--auto-correct).
1034
+ # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
1025
1035
  # SupportedStyles: single_quotes, double_quotes
1026
1036
  Style/StringLiterals:
1027
1037
  Enabled: false
1028
1038
 
1029
- # Offense count: 11
1030
- # Cop supports --auto-correct.
1031
- # Configuration parameters: IgnoredMethods.
1039
+ # Offense count: 6
1040
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1041
+ # Configuration parameters: AllowMethodsWithArguments, IgnoredMethods, AllowComments.
1032
1042
  # IgnoredMethods: respond_to, define_method
1033
1043
  Style/SymbolProc:
1034
1044
  Exclude:
@@ -1036,94 +1046,36 @@ Style/SymbolProc:
1036
1046
  - 'lib/net/ssh/buffer.rb'
1037
1047
  - 'lib/net/ssh/connection/session.rb'
1038
1048
  - 'lib/net/ssh/test/extensions.rb'
1039
- - 'lib/net/ssh/transport/algorithms.rb'
1040
- - 'test/integration/test_forward.rb'
1041
- - 'test/test/test_test.rb'
1042
-
1043
- # Offense count: 1
1044
- # Cop supports --auto-correct.
1045
- Style/Tab:
1046
- Exclude:
1047
- - 'lib/net/ssh/config.rb'
1048
-
1049
- # Offense count: 39
1050
- # Cop supports --auto-correct.
1051
- # Configuration parameters: EnforcedStyle, SupportedStyles.
1052
- # SupportedStyles: final_newline, final_blank_line
1053
- Style/TrailingBlankLines:
1054
- Enabled: false
1055
1049
 
1056
- # Offense count: 255
1057
- # Cop supports --auto-correct.
1058
- # Configuration parameters: EnforcedStyleForMultiline, SupportedStyles.
1059
- # SupportedStyles: comma, consistent_comma, no_comma
1060
- Style/TrailingCommaInLiteral:
1050
+ # Offense count: 14
1051
+ # This cop supports safe auto-correction (--auto-correct).
1052
+ Style/UnpackFirst:
1061
1053
  Exclude:
1054
+ - 'lib/net/ssh/authentication/pageant.rb'
1055
+ - 'lib/net/ssh/buffer.rb'
1062
1056
  - 'lib/net/ssh/key_factory.rb'
1063
- - 'lib/net/ssh/transport/cipher_factory.rb'
1064
- - 'lib/net/ssh/transport/kex.rb'
1057
+ - 'lib/net/ssh/known_hosts.rb'
1065
1058
  - 'lib/net/ssh/transport/openssl.rb'
1066
- - 'test/transport/test_packet_stream.rb'
1067
-
1068
- # Offense count: 66
1069
- # Cop supports --auto-correct.
1070
- Style/TrailingWhitespace:
1071
- Enabled: false
1072
-
1073
- # Offense count: 1
1074
- # Cop supports --auto-correct.
1075
- # Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, IgnoreClassMethods, Whitelist.
1076
- # Whitelist: to_ary, to_a, to_c, to_enum, to_h, to_hash, to_i, to_int, to_io, to_open, to_path, to_proc, to_r, to_regexp, to_str, to_s, to_sym
1077
- Style/TrivialAccessors:
1078
- Exclude:
1079
- - 'test/transport/kex/test_diffie_hellman_group1_sha1.rb'
1080
-
1081
- # Offense count: 6
1082
- # Cop supports --auto-correct.
1083
- Style/UnlessElse:
1084
- Exclude:
1085
- - 'lib/net/ssh/buffer.rb'
1086
- - 'lib/net/ssh/transport/ctr.rb'
1087
- - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
1088
- - 'test/transport/kex/test_ecdh_sha2_nistp384.rb'
1089
- - 'test/transport/kex/test_ecdh_sha2_nistp521.rb'
1090
- - 'test/transport/test_server_version.rb'
1091
-
1092
- # Offense count: 4
1093
- # Cop supports --auto-correct.
1094
- Style/UnneededInterpolation:
1095
- Exclude:
1096
- - 'lib/net/ssh/proxy/socks5.rb'
1097
- - 'lib/net/ssh/transport/session.rb'
1098
- - 'test/integration/test_forward.rb'
1099
-
1100
- # Offense count: 4
1101
- # Cop supports --auto-correct.
1102
- Style/UnneededPercentQ:
1103
- Exclude:
1104
- - 'net-ssh.gemspec'
1105
- - 'test/test_config.rb'
1059
+ - 'lib/net/ssh/transport/packet_stream.rb'
1106
1060
 
1107
1061
  # Offense count: 2
1108
- # Cop supports --auto-correct.
1062
+ # This cop supports safe auto-correction (--auto-correct).
1109
1063
  Style/WhileUntilDo:
1110
1064
  Exclude:
1111
1065
  - 'lib/net/ssh/config.rb'
1112
1066
  - 'test/integration/common.rb'
1113
1067
 
1114
- # Offense count: 3
1115
- # Cop supports --auto-correct.
1116
- # Configuration parameters: SupportedStyles, WordRegex.
1068
+ # Offense count: 4
1069
+ # This cop supports safe auto-correction (--auto-correct).
1070
+ # Configuration parameters: WordRegex.
1117
1071
  # SupportedStyles: percent, brackets
1118
1072
  Style/WordArray:
1119
1073
  EnforcedStyle: percent
1120
1074
  MinSize: 3
1121
1075
 
1122
- # Offense count: 7
1123
- # Cop supports --auto-correct.
1076
+ # Offense count: 4
1077
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1124
1078
  Style/ZeroLengthPredicate:
1125
1079
  Exclude:
1126
1080
  - 'lib/net/ssh/buffered_io.rb'
1127
1081
  - 'lib/net/ssh/connection/channel.rb'
1128
- - 'test/integration/test_forward.rb'
1129
- - 'test_connection_close_shall_close_cannels.rb'