aws-sdk-core 3.220.2 → 3.222.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +19 -0
- data/VERSION +1 -1
- data/lib/aws-sdk-core/rest/request/headers.rb +1 -1
- data/lib/aws-sdk-sso/client.rb +1 -1
- data/lib/aws-sdk-sso.rb +1 -1
- data/lib/aws-sdk-ssooidc/client.rb +14 -3
- data/lib/aws-sdk-ssooidc/client_api.rb +6 -0
- data/lib/aws-sdk-ssooidc/types.rb +28 -1
- data/lib/aws-sdk-ssooidc.rb +1 -1
- data/lib/aws-sdk-sts/client.rb +1 -1
- data/lib/aws-sdk-sts.rb +1 -1
- data/lib/seahorse/client/async_base.rb +4 -5
- data/lib/seahorse/client/h2/connection.rb +18 -28
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 60d14e86ef70bbaf2d67ef1e0b4eae11af4deb68b18bdab4137666397fb21baa
|
4
|
+
data.tar.gz: 7a03b144af8e9ce4ebc7c91b4be1f6a582e5b5905b6a2b57a3574e85430268a2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 34361a1c8fb1e2b92b19f50ef29c9ffd5ab4cd067032a0412ff352c660ea24f97fe92a635038e91dc16eacf05647af6884120154ab0ead29442f8bc5f52b2c9c
|
7
|
+
data.tar.gz: 65a11e4900fda955ec95162dbbba0dc0ef29f4007d2067f5351f6da992ef8e7636735e696d175fb6187352a681713390bd4f37ea7182f4ceda61da7f785240b9
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,25 @@
|
|
1
1
|
Unreleased Changes
|
2
2
|
------------------
|
3
3
|
|
4
|
+
3.222.1 (2025-03-28)
|
5
|
+
------------------
|
6
|
+
|
7
|
+
* Issue - Allow explicit modeled headers to override prefixed headers for `rest` protocols.
|
8
|
+
|
9
|
+
3.222.0 (2025-03-27)
|
10
|
+
------------------
|
11
|
+
|
12
|
+
* Feature - Updated Aws::SSOOIDC::Client with the latest API changes.
|
13
|
+
|
14
|
+
* Feature - This release adds AwsAdditionalDetails in the CreateTokenWithIAM API response.
|
15
|
+
|
16
|
+
3.221.0 (2025-03-24)
|
17
|
+
------------------
|
18
|
+
|
19
|
+
* Feature - Add `logger` as an explicit dependency for Ruby 3.5.
|
20
|
+
* Issue - Enable ALPN over TLS for H2 Connection by default.
|
21
|
+
* Issue - Fix HTTP-2 connections to properly use config values configured on the client.
|
22
|
+
|
4
23
|
3.220.2 (2025-03-20)
|
5
24
|
------------------
|
6
25
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
3.
|
1
|
+
3.222.1
|
data/lib/aws-sdk-sso/client.rb
CHANGED
data/lib/aws-sdk-sso.rb
CHANGED
@@ -708,6 +708,7 @@ module Aws::SSOOIDC
|
|
708
708
|
# * {Types::CreateTokenWithIAMResponse#id_token #id_token} => String
|
709
709
|
# * {Types::CreateTokenWithIAMResponse#issued_token_type #issued_token_type} => String
|
710
710
|
# * {Types::CreateTokenWithIAMResponse#scope #scope} => Array<String>
|
711
|
+
# * {Types::CreateTokenWithIAMResponse#aws_additional_details #aws_additional_details} => Types::AwsAdditionalDetails
|
711
712
|
#
|
712
713
|
#
|
713
714
|
# @example Example: Call OAuth/OIDC /token endpoint for Authorization Code grant with IAM authentication
|
@@ -727,6 +728,9 @@ module Aws::SSOOIDC
|
|
727
728
|
# resp.to_h outputs the following:
|
728
729
|
# {
|
729
730
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
731
|
+
# aws_additional_details: {
|
732
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
733
|
+
# },
|
730
734
|
# expires_in: 1579729529,
|
731
735
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0",
|
732
736
|
# issued_token_type: "urn:ietf:params:oauth:token-type:refresh_token",
|
@@ -772,6 +776,9 @@ module Aws::SSOOIDC
|
|
772
776
|
# resp.to_h outputs the following:
|
773
777
|
# {
|
774
778
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
779
|
+
# aws_additional_details: {
|
780
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
781
|
+
# },
|
775
782
|
# expires_in: 1579729529,
|
776
783
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsInN0czphdWRpdF9jb250ZXh0IjoiRVhBTVBMRUFVRElUQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.Xyah6qbk78qThzJ41iFU2yfGuRqqtKXHrJYwQ8L9Ip0",
|
777
784
|
# issued_token_type: "urn:ietf:params:oauth:token-type:refresh_token",
|
@@ -797,6 +804,9 @@ module Aws::SSOOIDC
|
|
797
804
|
# resp.to_h outputs the following:
|
798
805
|
# {
|
799
806
|
# access_token: "aoal-YigITUDiNX1xZwOMXM5MxOWDL0E0jg9P6_C_jKQPxS_SKCP6f0kh1Up4g7TtvQqkMnD-GJiU_S1gvug6SrggAkc0:MGYCMQD3IatVjV7jAJU91kK3PkS/SfA2wtgWzOgZWDOR7sDGN9t0phCZz5It/aes/3C1Zj0CMQCKWOgRaiz6AIhza3DSXQNMLjRKXC8F8ceCsHlgYLMZ7hZidEXAMPLEACCESSTOKEN",
|
807
|
+
# aws_additional_details: {
|
808
|
+
# identity_context: "EXAMPLEIDENTITYCONTEXT",
|
809
|
+
# },
|
800
810
|
# expires_in: 1579729529,
|
801
811
|
# id_token: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhd3M6aWRlbnRpdHlfc3RvcmVfaWQiOiJkLTMzMzMzMzMzMzMiLCJzdWIiOiI3MzA0NDhmMi1lMGExLTcwYTctYzk1NC0wMDAwMDAwMDAwMDAiLCJhd3M6aW5zdGFuY2VfYWNjb3VudCI6IjExMTExMTExMTExMSIsInN0czppZGVudGl0eV9jb250ZXh0IjoiRVhBTVBMRUlERU5USVRZQ09OVEVYVCIsImlzcyI6Imh0dHBzOi8vaWRlbnRpdHljZW50ZXIuYW1hem9uYXdzLmNvbS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmlkZW50aXR5X3N0b3JlX2FybiI6ImFybjphd3M6aWRlbnRpdHlzdG9yZTo6MTExMTExMTExMTExOmlkZW50aXR5c3RvcmUvZC0zMzMzMzMzMzMzIiwiYXVkIjoiYXJuOmF3czpzc286OjEyMzQ1Njc4OTAxMjphcHBsaWNhdGlvbi9zc29pbnMtMTExMTExMTExMTExL2FwbC0yMjIyMjIyMjIyMjIiLCJhd3M6aW5zdGFuY2VfYXJuIjoiYXJuOmF3czpzc286OjppbnN0YW5jZS9zc29pbnMtMTExMTExMTExMTExIiwiYXdzOmNyZWRlbnRpYWxfaWQiOiJfWlIyTjZhVkJqMjdGUEtheWpfcEtwVjc3QVBERl80MXB4ZXRfWWpJdUpONlVJR2RBdkpFWEFNUExFQ1JFRElEIiwiYXV0aF90aW1lIjoiMjAyMC0wMS0yMlQxMjo0NToyOVoiLCJleHAiOjE1Nzk3Mjk1MjksImlhdCI6MTU3OTcyNTkyOX0.5SYiW1kMsuUr7nna-l5tlakM0GNbMHvIM2_n0QD23jM",
|
802
812
|
# issued_token_type: "urn:ietf:params:oauth:token-type:access_token",
|
@@ -834,6 +844,7 @@ module Aws::SSOOIDC
|
|
834
844
|
# resp.issued_token_type #=> String
|
835
845
|
# resp.scope #=> Array
|
836
846
|
# resp.scope[0] #=> String
|
847
|
+
# resp.aws_additional_details.identity_context #=> String
|
837
848
|
#
|
838
849
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAM AWS API Documentation
|
839
850
|
#
|
@@ -1003,8 +1014,8 @@ module Aws::SSOOIDC
|
|
1003
1014
|
# expires_in: 1579729529,
|
1004
1015
|
# interval: 1,
|
1005
1016
|
# user_code: "makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE",
|
1006
|
-
# verification_uri: "https://
|
1007
|
-
# verification_uri_complete: "https://
|
1017
|
+
# verification_uri: "https://directory-alias-example.awsapps.com/start/#/device",
|
1018
|
+
# verification_uri_complete: "https://directory-alias-example.awsapps.com/start/#/device?user_code=makdfsk83yJraWQiOiJrZXktMTU2Njk2sImFsZyI6IkhTMzIn0EXAMPLEUSERCODE",
|
1008
1019
|
# }
|
1009
1020
|
#
|
1010
1021
|
# @example Request syntax with placeholder values
|
@@ -1051,7 +1062,7 @@ module Aws::SSOOIDC
|
|
1051
1062
|
tracer: tracer
|
1052
1063
|
)
|
1053
1064
|
context[:gem_name] = 'aws-sdk-core'
|
1054
|
-
context[:gem_version] = '3.
|
1065
|
+
context[:gem_version] = '3.222.1'
|
1055
1066
|
Seahorse::Client::Request.new(handlers, context)
|
1056
1067
|
end
|
1057
1068
|
|
@@ -20,6 +20,7 @@ module Aws::SSOOIDC
|
|
20
20
|
Assertion = Shapes::StringShape.new(name: 'Assertion')
|
21
21
|
AuthCode = Shapes::StringShape.new(name: 'AuthCode')
|
22
22
|
AuthorizationPendingException = Shapes::StructureShape.new(name: 'AuthorizationPendingException')
|
23
|
+
AwsAdditionalDetails = Shapes::StructureShape.new(name: 'AwsAdditionalDetails')
|
23
24
|
ClientId = Shapes::StringShape.new(name: 'ClientId')
|
24
25
|
ClientName = Shapes::StringShape.new(name: 'ClientName')
|
25
26
|
ClientSecret = Shapes::StringShape.new(name: 'ClientSecret')
|
@@ -37,6 +38,7 @@ module Aws::SSOOIDC
|
|
37
38
|
GrantType = Shapes::StringShape.new(name: 'GrantType')
|
38
39
|
GrantTypes = Shapes::ListShape.new(name: 'GrantTypes')
|
39
40
|
IdToken = Shapes::StringShape.new(name: 'IdToken')
|
41
|
+
IdentityContext = Shapes::StringShape.new(name: 'IdentityContext')
|
40
42
|
InternalServerException = Shapes::StructureShape.new(name: 'InternalServerException')
|
41
43
|
IntervalInSeconds = Shapes::IntegerShape.new(name: 'IntervalInSeconds')
|
42
44
|
InvalidClientException = Shapes::StructureShape.new(name: 'InvalidClientException')
|
@@ -74,6 +76,9 @@ module Aws::SSOOIDC
|
|
74
76
|
AuthorizationPendingException.add_member(:error_description, Shapes::ShapeRef.new(shape: ErrorDescription, location_name: "error_description"))
|
75
77
|
AuthorizationPendingException.struct_class = Types::AuthorizationPendingException
|
76
78
|
|
79
|
+
AwsAdditionalDetails.add_member(:identity_context, Shapes::ShapeRef.new(shape: IdentityContext, location_name: "identityContext"))
|
80
|
+
AwsAdditionalDetails.struct_class = Types::AwsAdditionalDetails
|
81
|
+
|
77
82
|
CreateTokenRequest.add_member(:client_id, Shapes::ShapeRef.new(shape: ClientId, required: true, location_name: "clientId"))
|
78
83
|
CreateTokenRequest.add_member(:client_secret, Shapes::ShapeRef.new(shape: ClientSecret, required: true, location_name: "clientSecret"))
|
79
84
|
CreateTokenRequest.add_member(:grant_type, Shapes::ShapeRef.new(shape: GrantType, required: true, location_name: "grantType"))
|
@@ -112,6 +117,7 @@ module Aws::SSOOIDC
|
|
112
117
|
CreateTokenWithIAMResponse.add_member(:id_token, Shapes::ShapeRef.new(shape: IdToken, location_name: "idToken"))
|
113
118
|
CreateTokenWithIAMResponse.add_member(:issued_token_type, Shapes::ShapeRef.new(shape: TokenTypeURI, location_name: "issuedTokenType"))
|
114
119
|
CreateTokenWithIAMResponse.add_member(:scope, Shapes::ShapeRef.new(shape: Scopes, location_name: "scope"))
|
120
|
+
CreateTokenWithIAMResponse.add_member(:aws_additional_details, Shapes::ShapeRef.new(shape: AwsAdditionalDetails, location_name: "awsAdditionalDetails"))
|
115
121
|
CreateTokenWithIAMResponse.struct_class = Types::CreateTokenWithIAMResponse
|
116
122
|
|
117
123
|
ExpiredTokenException.add_member(:error, Shapes::ShapeRef.new(shape: Error, location_name: "error"))
|
@@ -53,6 +53,25 @@ module Aws::SSOOIDC
|
|
53
53
|
include Aws::Structure
|
54
54
|
end
|
55
55
|
|
56
|
+
# This structure contains Amazon Web Services-specific parameter
|
57
|
+
# extensions for the token endpoint responses and includes the identity
|
58
|
+
# context.
|
59
|
+
#
|
60
|
+
# @!attribute [rw] identity_context
|
61
|
+
# STS context assertion that carries a user identifier to the Amazon
|
62
|
+
# Web Services service that it calls and can be used to obtain an
|
63
|
+
# identity-enhanced IAM role session. This value corresponds to the
|
64
|
+
# `sts:identity_context` claim in the ID token.
|
65
|
+
# @return [String]
|
66
|
+
#
|
67
|
+
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/AwsAdditionalDetails AWS API Documentation
|
68
|
+
#
|
69
|
+
class AwsAdditionalDetails < Struct.new(
|
70
|
+
:identity_context)
|
71
|
+
SENSITIVE = []
|
72
|
+
include Aws::Structure
|
73
|
+
end
|
74
|
+
|
56
75
|
# @!attribute [rw] client_id
|
57
76
|
# The unique identifier string for the client or application. This
|
58
77
|
# value comes from the result of the RegisterClient API.
|
@@ -356,6 +375,13 @@ module Aws::SSOOIDC
|
|
356
375
|
# token that is issued is limited to the scopes that are granted.
|
357
376
|
# @return [Array<String>]
|
358
377
|
#
|
378
|
+
# @!attribute [rw] aws_additional_details
|
379
|
+
# A structure containing information from the `idToken`. Only the
|
380
|
+
# `identityContext` is in it, which is a value extracted from the
|
381
|
+
# `idToken`. This provides direct access to identity information
|
382
|
+
# without requiring JWT parsing.
|
383
|
+
# @return [Types::AwsAdditionalDetails]
|
384
|
+
#
|
359
385
|
# @see http://docs.aws.amazon.com/goto/WebAPI/sso-oidc-2019-06-10/CreateTokenWithIAMResponse AWS API Documentation
|
360
386
|
#
|
361
387
|
class CreateTokenWithIAMResponse < Struct.new(
|
@@ -365,7 +391,8 @@ module Aws::SSOOIDC
|
|
365
391
|
:refresh_token,
|
366
392
|
:id_token,
|
367
393
|
:issued_token_type,
|
368
|
-
:scope
|
394
|
+
:scope,
|
395
|
+
:aws_additional_details)
|
369
396
|
SENSITIVE = [:access_token, :refresh_token, :id_token]
|
370
397
|
include Aws::Structure
|
371
398
|
end
|
data/lib/aws-sdk-ssooidc.rb
CHANGED
data/lib/aws-sdk-sts/client.rb
CHANGED
data/lib/aws-sdk-sts.rb
CHANGED
@@ -3,7 +3,6 @@
|
|
3
3
|
module Seahorse
|
4
4
|
module Client
|
5
5
|
class AsyncBase < Seahorse::Client::Base
|
6
|
-
|
7
6
|
# default H2 plugins
|
8
7
|
# @api private
|
9
8
|
@plugins = PluginList.new([
|
@@ -11,10 +10,10 @@ module Seahorse
|
|
11
10
|
Plugins::H2,
|
12
11
|
Plugins::ResponseTarget
|
13
12
|
])
|
13
|
+
|
14
14
|
def initialize(plugins, options)
|
15
|
-
super
|
16
|
-
@connection = H2::Connection.new(
|
17
|
-
@options = options
|
15
|
+
super(plugins, options)
|
16
|
+
@connection = H2::Connection.new(@config)
|
18
17
|
end
|
19
18
|
|
20
19
|
# @return [H2::Connection]
|
@@ -36,7 +35,7 @@ module Seahorse
|
|
36
35
|
# @return [Seahorse::Client::H2::Connection]
|
37
36
|
def new_connection
|
38
37
|
if @connection.closed?
|
39
|
-
@connection = H2::Connection.new(@
|
38
|
+
@connection = H2::Connection.new(@config)
|
40
39
|
else
|
41
40
|
@connection
|
42
41
|
end
|
@@ -10,13 +10,8 @@ module Seahorse
|
|
10
10
|
module Client
|
11
11
|
# @api private
|
12
12
|
module H2
|
13
|
-
|
14
13
|
# H2 Connection build on top of `http/2` gem
|
15
|
-
# (requires Ruby >= 2.1)
|
16
|
-
# with TLS layer plus ALPN, requires:
|
17
|
-
# Ruby >= 2.3 and OpenSSL >= 1.0.2
|
18
14
|
class Connection
|
19
|
-
|
20
15
|
OPTIONS = {
|
21
16
|
max_concurrent_streams: 100,
|
22
17
|
connection_timeout: 60,
|
@@ -27,7 +22,7 @@ module Seahorse
|
|
27
22
|
ssl_ca_bundle: nil,
|
28
23
|
ssl_ca_directory: nil,
|
29
24
|
ssl_ca_store: nil,
|
30
|
-
enable_alpn:
|
25
|
+
enable_alpn: true
|
31
26
|
}
|
32
27
|
|
33
28
|
# chunk read size at socket
|
@@ -41,25 +36,23 @@ module Seahorse
|
|
41
36
|
instance_variable_set("@#{opt_name}", value)
|
42
37
|
end
|
43
38
|
@h2_client = HTTP2::Client.new(
|
44
|
-
settings_max_concurrent_streams: max_concurrent_streams
|
39
|
+
settings_max_concurrent_streams: @max_concurrent_streams
|
45
40
|
)
|
46
|
-
@logger
|
47
|
-
options[:logger] || Logger.new($stdout)
|
48
|
-
end
|
41
|
+
@logger ||= Logger.new($stdout) if @http_wire_trace
|
49
42
|
@chunk_size = options[:read_chunk_size] || CHUNKSIZE
|
43
|
+
|
50
44
|
@errors = []
|
51
45
|
@status = :ready
|
46
|
+
|
52
47
|
@mutex = Mutex.new # connection can be shared across requests
|
53
48
|
@socket = nil
|
54
49
|
@socket_thread = nil
|
55
50
|
end
|
56
51
|
|
57
52
|
OPTIONS.keys.each do |attr_name|
|
58
|
-
attr_reader
|
53
|
+
attr_reader attr_name
|
59
54
|
end
|
60
55
|
|
61
|
-
alias ssl_verify_peer? ssl_verify_peer
|
62
|
-
|
63
56
|
attr_reader :errors
|
64
57
|
|
65
58
|
attr_accessor :input_signal_thread
|
@@ -112,7 +105,7 @@ module Seahorse
|
|
112
105
|
@h2_client << data
|
113
106
|
rescue IO::WaitReadable
|
114
107
|
begin
|
115
|
-
unless IO.select([@socket], nil, nil, connection_read_timeout)
|
108
|
+
unless IO.select([@socket], nil, nil, @connection_read_timeout)
|
116
109
|
self.debug_output('socket connection read time out')
|
117
110
|
self.close!
|
118
111
|
else
|
@@ -154,11 +147,11 @@ module Seahorse
|
|
154
147
|
end
|
155
148
|
|
156
149
|
def debug_output(msg, type = nil)
|
157
|
-
prefix =
|
150
|
+
prefix =
|
151
|
+
case type
|
158
152
|
when :send then '-> '
|
159
153
|
when :receive then '<- '
|
160
|
-
else
|
161
|
-
''
|
154
|
+
else ''
|
162
155
|
end
|
163
156
|
return unless @logger
|
164
157
|
_debug_entry(prefix + msg)
|
@@ -206,7 +199,7 @@ module Seahorse
|
|
206
199
|
begin
|
207
200
|
tcp.connect_nonblock(addr)
|
208
201
|
rescue IO::WaitWritable
|
209
|
-
unless IO.select(nil, [tcp], nil, connection_timeout)
|
202
|
+
unless IO.select(nil, [tcp], nil, @connection_timeout)
|
210
203
|
tcp.close
|
211
204
|
raise
|
212
205
|
end
|
@@ -220,15 +213,15 @@ module Seahorse
|
|
220
213
|
|
221
214
|
def _tls_context
|
222
215
|
ssl_ctx = OpenSSL::SSL::SSLContext.new(:TLSv1_2)
|
223
|
-
if ssl_verify_peer
|
216
|
+
if @ssl_verify_peer
|
224
217
|
ssl_ctx.verify_mode = OpenSSL::SSL::VERIFY_PEER
|
225
|
-
ssl_ctx.ca_file = ssl_ca_bundle
|
226
|
-
ssl_ctx.ca_path = ssl_ca_directory
|
227
|
-
ssl_ctx.cert_store = ssl_ca_store if ssl_ca_store
|
218
|
+
ssl_ctx.ca_file = @ssl_ca_bundle || _default_ca_bundle
|
219
|
+
ssl_ctx.ca_path = @ssl_ca_directory || _default_ca_directory
|
220
|
+
ssl_ctx.cert_store = @ssl_ca_store if @ssl_ca_store
|
228
221
|
else
|
229
222
|
ssl_ctx.verify_mode = OpenSSL::SSL::VERIFY_NONE
|
230
223
|
end
|
231
|
-
if enable_alpn
|
224
|
+
if @enable_alpn
|
232
225
|
debug_output('enabling ALPN for TLS ...')
|
233
226
|
ssl_ctx.alpn_protocols = ['h2']
|
234
227
|
end
|
@@ -236,15 +229,12 @@ module Seahorse
|
|
236
229
|
end
|
237
230
|
|
238
231
|
def _default_ca_bundle
|
239
|
-
File.exist?(OpenSSL::X509::DEFAULT_CERT_FILE)
|
240
|
-
OpenSSL::X509::DEFAULT_CERT_FILE : nil
|
232
|
+
OpenSSL::X509::DEFAULT_CERT_FILE if File.exist?(OpenSSL::X509::DEFAULT_CERT_FILE)
|
241
233
|
end
|
242
234
|
|
243
235
|
def _default_ca_directory
|
244
|
-
Dir.exist?(OpenSSL::X509::DEFAULT_CERT_DIR)
|
245
|
-
OpenSSL::X509::DEFAULT_CERT_DIR : nil
|
236
|
+
OpenSSL::X509::DEFAULT_CERT_DIR if Dir.exist?(OpenSSL::X509::DEFAULT_CERT_DIR)
|
246
237
|
end
|
247
|
-
|
248
238
|
end
|
249
239
|
end
|
250
240
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: aws-sdk-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.222.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Amazon Web Services
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2025-03-
|
11
|
+
date: 2025-03-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: aws-eventstream
|
@@ -98,6 +98,20 @@ dependencies:
|
|
98
98
|
- - ">="
|
99
99
|
- !ruby/object:Gem::Version
|
100
100
|
version: 1.6.1
|
101
|
+
- !ruby/object:Gem::Dependency
|
102
|
+
name: logger
|
103
|
+
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirements:
|
105
|
+
- - ">="
|
106
|
+
- !ruby/object:Gem::Version
|
107
|
+
version: '0'
|
108
|
+
type: :runtime
|
109
|
+
prerelease: false
|
110
|
+
version_requirements: !ruby/object:Gem::Requirement
|
111
|
+
requirements:
|
112
|
+
- - ">="
|
113
|
+
- !ruby/object:Gem::Version
|
114
|
+
version: '0'
|
101
115
|
description: Provides API clients for AWS. This gem is part of the official AWS SDK
|
102
116
|
for Ruby.
|
103
117
|
email:
|