1 + | 304502210097752f8c9953078cbb6b370471cb7029aea9517d59fb835d8befce66a91e6c4a022043a8c62681ff76e6cbaaeaed2fff2fcfee8efceebb7bd9e562ecd5a08b2c563f
|
\ | No newline at end of file
|
0 2 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
|
1 3 | new file mode 100644
|
2 4 | index 0000000..1d6e288
|
3 - | -- /dev/null
|
5 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-signed-request.txt
|
4 6 | @@ -0,0 +1,7 @@
|
7 + | POST / HTTP/1.1
|
8 + | Host:example.amazonaws.com
|
9 + | My-Header1:value1
|
10 + | X-Amz-Date:20150830T123600Z
|
11 + | X-Amz-Region-Set:us-east-1
|
12 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3046022100a5dc03771b33997d8eeb15d639cb7bdef2aff78a4a59c7996070e5f94fe149780221009a732061539208209ba0ae6755bef956c258a0c0ac6a6916489486efde21cfeb
|
13 + |
|
5 14 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
|
6 15 | similarity index 99%
|
7 16 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/header-string-to-sign.txt
|
8 17 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/header-string-to-sign.txt
|
9 18 | index f6e3e9b..7c5236a 100644
|
10 19 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
|
11 20 | new file mode 100644
|
12 21 | index 0000000..379dcb2
|
13 - | -- /dev/null
|
22 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/public-key.json
|
14 23 | @@ -0,0 +1,4 @@
|
24 + | {
|
25 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
26 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
27 + | }
|
15 28 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
|
16 29 | similarity index 99%
|
17 30 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-canonical-request.txt
|
18 31 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-canonical-request.txt
|
19 32 | index 0ae73e1..2cf3f29 100644
|
20 33 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
|
21 34 | new file mode 100644
|
22 35 | index 0000000..2a08401
|
23 - | -- /dev/null
|
36 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signature.txt
|
24 37 | @@ -0,0 +1 @@
|
38 + | 304502204f2a31513c9bea5c92dd8045e226dc1db150f768e60b538cacce157c623873dc022100ab5d654ce3c7b917656cec2cf58a3689159e89deed5241ca21e19a40173674c4
|
\ | No newline at end of file
|
25 39 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
|
26 40 | new file mode 100644
|
27 41 | index 0000000..8d2343f
|
28 - | -- /dev/null
|
42 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-signed-request.txt
|
29 43 | @@ -0,0 +1,4 @@
|
44 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450220398bbd17824da156cc02e783348c16e8c04d46d1ae6b31dec9422d8054193380022100f05d3e4f7ed4eed55e950488ed7c53975cdbb4713ec4a2c0af9351ab8fdc9a48 HTTP/1.1
|
45 + | Host:example.amazonaws.com
|
46 + | My-Header1:value1
|
47 + |
|
30 48 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
|
31 49 | similarity index 99%
|
32 50 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-key-sort/query-string-to-sign.txt
|
33 51 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/query-string-to-sign.txt
|
34 52 | index 8cb96bf..2c4db7a 100644
|
35 53 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
|
36 54 | similarity index 69%
|
37 55 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
|
38 56 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
|
39 57 | index 0253f19..917720e 100644
|
40 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-sort/post-header-key-sort.req
|
58 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-key-sort/request.txt
|
41 59 | @@ -1,4 +1,3 @@
|
42 60 | POST / HTTP/1.1
|
43 61 | Host:example.amazonaws.com
|
44 62 | My-Header1:value1
|
45 - | X-Amz-Date:20150830T123600Z
|
\ | No newline at end of file
|
46 63 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
|
47 64 | new file mode 100644
|
48 65 | index 0000000..0468d80
|
49 - | -- /dev/null
|
66 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/context.json
|
50 67 | @@ -0,0 +1,12 @@
|
68 + | {
|
69 + | "credentials": {
|
70 + | "access_key_id": "AKIDEXAMPLE",
|
71 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
72 + | },
|
73 + | "expiration_in_seconds": 3600,
|
74 + | "normalize": true,
|
75 + | "region": "us-east-1",
|
76 + | "service": "service",
|
77 + | "sign_body": false,
|
78 + | "timestamp": "2015-08-30T12:36:00Z"
|
79 + | }
|
\ | No newline at end of file
|
51 80 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
|
52 81 | similarity index 99%
|
53 82 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-canonical-request.txt
|
54 83 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-canonical-request.txt
|
55 84 | index 1dc3ef8..164e65c 100644
|
56 85 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
|
57 86 | new file mode 100644
|
58 87 | index 0000000..7072b0e
|
59 - | -- /dev/null
|
88 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signature.txt
|
60 89 | @@ -0,0 +1 @@
|
90 + | 304402207b3baf259f5d29f13511eb4c9b236045c43168ca70369ed639611f4bff9eb6490220465e922e8b19146de9c70147440f4ee80a3318f0c756c8050dbfd641e6ff0456
|
\ | No newline at end of file
|
61 91 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
|
62 92 | new file mode 100644
|
63 93 | index 0000000..17f5e3e
|
64 - | -- /dev/null
|
94 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-signed-request.txt
|
65 95 | @@ -0,0 +1,7 @@
|
96 + | POST / HTTP/1.1
|
97 + | Host:example.amazonaws.com
|
98 + | My-Header1:VALUE1
|
99 + | X-Amz-Date:20150830T123600Z
|
100 + | X-Amz-Region-Set:us-east-1
|
101 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;my-header1;x-amz-date;x-amz-region-set, Signature=3045022100c72dd4d54c45d3eb30858c6227e9512f41b7379b7c685e39e0cd39a793d7ee3102205c900d330270e31d2f7b5138fb3d791b6743f6f3b9ffbc34a4adcc8307591b11
|
102 + |
|
66 103 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
|
67 104 | similarity index 99%
|
68 105 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/header-string-to-sign.txt
|
69 106 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/header-string-to-sign.txt
|
70 107 | index 59c7e45..620f54e 100644
|
71 108 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
|
72 109 | new file mode 100644
|
73 110 | index 0000000..379dcb2
|
74 - | -- /dev/null
|
111 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/public-key.json
|
75 112 | @@ -0,0 +1,4 @@
|
113 + | {
|
114 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
115 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
116 + | }
|
76 117 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
|
77 118 | similarity index 99%
|
78 119 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-canonical-request.txt
|
79 120 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-canonical-request.txt
|
80 121 | index 377e6f3..23e0da3 100644
|
81 122 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
|
82 123 | new file mode 100644
|
83 124 | index 0000000..a18acb8
|
84 - | -- /dev/null
|
125 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signature.txt
|
85 126 | @@ -0,0 +1 @@
|
127 + | 30450221009895446cb62cfb2dbb5e943baa12cad86c9d903bcfdb400f7e24391566709d8002205a12b1179a7d3569a8dfbfb8c15d0ad2e5e816aff6b2ee0c3deaf0e89fcbea80
|
\ | No newline at end of file
|
86 128 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
|
87 129 | new file mode 100644
|
88 130 | index 0000000..7cbdcfa
|
89 - | -- /dev/null
|
131 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-signed-request.txt
|
90 132 | @@ -0,0 +1,4 @@
|
133 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host%3Bmy-header1&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402205ed45a0daa4ef3d554ea401f8d2e4f434c77dd8dfd4a15d08786faf9d6fdedf50220501f847d3159358f7823190dfffebaa16ce5b3868921c06b255f7dc3c742d9ff HTTP/1.1
|
134 + | Host:example.amazonaws.com
|
135 + | My-Header1:VALUE1
|
136 + |
|
91 137 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
|
92 138 | similarity index 99%
|
93 139 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-header-value-case/query-string-to-sign.txt
|
94 140 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/query-string-to-sign.txt
|
95 141 | index 84a7afd..0c90627 100644
|
96 142 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
|
97 143 | similarity index 69%
|
98 144 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
|
99 145 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
|
100 146 | index 3f9987a..5f14c91 100644
|
101 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-value-case/post-header-value-case.req
|
147 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-header-value-case/request.txt
|
102 148 | @@ -1,4 +1,3 @@
|
103 149 | POST / HTTP/1.1
|
104 150 | Host:example.amazonaws.com
|
105 151 | My-Header1:VALUE1
|
106 - | X-Amz-Date:20150830T123600Z
|
\ | No newline at end of file
|
107 152 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
|
108 153 | new file mode 100644
|
109 154 | index 0000000..8f1d5ce
|
110 - | -- /dev/null
|
155 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/context.json
|
111 156 | @@ -0,0 +1,14 @@
|
157 + | {
|
158 + | "credentials": {
|
159 + | "access_key_id": "AKIDEXAMPLE",
|
160 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
|
161 + | "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
|
162 + | },
|
163 + | "expiration_in_seconds": 3600,
|
164 + | "normalize": true,
|
165 + | "region": "us-east-1",
|
166 + | "service": "service",
|
167 + | "sign_body": false,
|
168 + | "timestamp": "2015-08-30T12:36:00Z",
|
169 + | "omit_session_token": true
|
170 + | }
|
112 171 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
|
113 172 | similarity index 99%
|
114 173 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-canonical-request.txt
|
115 174 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-canonical-request.txt
|
116 175 | index a6942c1..e881ac7 100644
|
117 176 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
|
118 177 | new file mode 100644
|
119 178 | index 0000000..9c5ecb9
|
120 - | -- /dev/null
|
179 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signature.txt
|
121 180 | @@ -0,0 +1 @@
|
181 + | 3045022005936b1139f85e06856778dc6fefa39c534143129dca2e0a40d1c910d42f12f1022100b97f90927755775d36f57803214c2268a051914bbdab196c071ec24462f6baae
|
\ | No newline at end of file
|
122 182 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
|
123 183 | similarity index 52%
|
124 184 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req
|
125 185 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
|
126 186 | index 9d91775..61b6527 100644
|
127 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-sts-token/post-sts-header-before/post-sts-header-before.req
|
187 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-signed-request.txt
|
128 188 | @@ -1,4 +1,7 @@
|
129 189 | POST / HTTP/1.1
|
130 190 | Host:example.amazonaws.com
|
131 - | X-Amz-Date:20150830T123600Z
|
132 191 | X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
|
192 + | X-Amz-Date:20150830T123600Z
|
193 + | X-Amz-Region-Set:us-east-1
|
194 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3045022100f7866e35aa214de4541aa33326aa9b5e9a409b72c9185c7a2e2d246ebb5a25a80220642e809f3d016fb3674364776c2ffadf7e7f8da94c36538a4715fa9425b52ed8
|
195 + |
|
133 196 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
|
134 197 | similarity index 99%
|
135 198 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/header-string-to-sign.txt
|
136 199 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/header-string-to-sign.txt
|
137 200 | index d5650cb..f8adf13 100644
|
138 201 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
|
139 202 | new file mode 100644
|
140 203 | index 0000000..379dcb2
|
141 - | -- /dev/null
|
204 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/public-key.json
|
142 205 | @@ -0,0 +1,4 @@
|
206 + | {
|
207 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
208 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
209 + | }
|
143 210 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
|
144 211 | similarity index 99%
|
145 212 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-canonical-request.txt
|
146 213 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-canonical-request.txt
|
147 214 | index e48ce07..5ea8e3c 100644
|
148 215 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
|
149 216 | new file mode 100644
|
150 217 | index 0000000..ff8823a
|
151 - | -- /dev/null
|
218 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signature.txt
|
152 219 | @@ -0,0 +1 @@
|
220 + | 3046022100f7c89084cbc2c276f6cbc02a6f6b353e2fb3538d02ed31f819324acf0f49cd0b022100823e6714c97899ea16d7f409989b250a911e6930112f8c73cf7d8c660bf2ed2f
|
\ | No newline at end of file
|
153 221 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
|
154 222 | new file mode 100644
|
155 223 | index 0000000..cfac41b
|
156 - | -- /dev/null
|
224 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-signed-request.txt
|
157 225 | @@ -0,0 +1,3 @@
|
226 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402204360bb65fe763c79526141ae439e4198190b7ffc048551a63c60b428bebc4c43022064a9d5c1f476566aea41fa60adfadc952164c53460553b2d1ae161d2f9b665f7 HTTP/1.1
|
227 + | Host:example.amazonaws.com
|
228 + |
|
158 229 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
|
159 230 | similarity index 99%
|
160 231 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-after/query-string-to-sign.txt
|
161 232 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/query-string-to-sign.txt
|
162 233 | index 34e3382..711c162 100644
|
163 234 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
|
164 235 | similarity index 61%
|
165 236 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
|
166 237 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
|
167 238 | index 3dc4179..3f0a82a 100644
|
168 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla/post-vanilla.req
|
239 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-after/request.txt
|
169 240 | @@ -1,3 +1,2 @@
|
170 241 | POST / HTTP/1.1
|
171 242 | Host:example.amazonaws.com
|
172 - | X-Amz-Date:20150830T123600Z
|
\ | No newline at end of file
|
173 243 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
|
174 244 | new file mode 100644
|
175 245 | index 0000000..5187392
|
176 - | -- /dev/null
|
246 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/context.json
|
177 247 | @@ -0,0 +1,14 @@
|
248 + | {
|
249 + | "credentials": {
|
250 + | "access_key_id": "AKIDEXAMPLE",
|
251 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY",
|
252 + | "token": "AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA=="
|
253 + | },
|
254 + | "expiration_in_seconds": 3600,
|
255 + | "normalize": true,
|
256 + | "region": "us-east-1",
|
257 + | "service": "service",
|
258 + | "sign_body": false,
|
259 + | "timestamp": "2015-08-30T12:36:00Z",
|
260 + | "omit_session_token": false
|
261 + | }
|
178 262 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
|
179 263 | similarity index 99%
|
180 264 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-canonical-request.txt
|
181 265 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-canonical-request.txt
|
182 266 | index dd408c8..e95924e 100644
|
183 267 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
|
184 268 | new file mode 100644
|
185 269 | index 0000000..1573f07
|
186 - | -- /dev/null
|
270 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signature.txt
|
187 271 | @@ -0,0 +1 @@
|
272 + | 30450221009cf93687a6055c287c68f881d4a907a6c99eef88b9c908e33e15740ec5a75e43022072df645db08e18ba4cd7436b3d67691792815a353d48113c7c444bb67c630e50
|
\ | No newline at end of file
|
188 273 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
|
189 274 | new file mode 100644
|
190 275 | index 0000000..6ef9a08
|
191 - | -- /dev/null
|
276 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-signed-request.txt
|
192 277 | @@ -0,0 +1,7 @@
|
278 + | POST / HTTP/1.1
|
279 + | Host:example.amazonaws.com
|
280 + | X-Amz-Security-Token:AQoDYXdzEPT//////////wEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI/qkPpKPi/kMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d+xo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz+scqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR/oLxBA==
|
281 + | X-Amz-Date:20150830T123600Z
|
282 + | X-Amz-Region-Set:us-east-1
|
283 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set;x-amz-security-token, Signature=3045022035115ac58fb923b0894e63eabf5864858c27f504b34bd707b569b2d6ee6a9c2e02210080ed7d2f3b7d52b4243890c596379ecd2066e9a1ac183d546ba07955ed5db306
|
284 + |
|
193 285 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
|
194 286 | similarity index 99%
|
195 287 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/header-string-to-sign.txt
|
196 288 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/header-string-to-sign.txt
|
197 289 | index f352b54..3c3235f 100644
|
198 290 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
|
199 291 | new file mode 100644
|
200 292 | index 0000000..379dcb2
|
201 - | -- /dev/null
|
293 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/public-key.json
|
202 294 | @@ -0,0 +1,4 @@
|
295 + | {
|
296 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
297 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
298 + | }
|
203 299 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
|
204 300 | similarity index 99%
|
205 301 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-canonical-request.txt
|
206 302 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-canonical-request.txt
|
207 303 | index 832cdc0..63b7de5 100644
|
208 304 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
|
209 305 | new file mode 100644
|
210 306 | index 0000000..713f57c
|
211 - | -- /dev/null
|
307 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signature.txt
|
212 308 | @@ -0,0 +1 @@
|
309 + | 304402203a4d2e9bd05ccf8b1e5834f2bb5ab81ea3b1dfbeb84388f07ab3b61ab519332a02204db83afae56ac4e713f631cd15268605d7b36119e672458d86df0cfcb68fe836
|
\ | No newline at end of file
|
213 310 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
|
214 311 | new file mode 100644
|
215 312 | index 0000000..32c3bb3
|
216 - | -- /dev/null
|
313 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-signed-request.txt
|
217 314 | @@ -0,0 +1,3 @@
|
315 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Security-Token=AQoDYXdzEPT%2F%2F%2F%2F%2F%2F%2F%2F%2F%2FwEXAMPLEtc764bNrC9SAPBSM22wDOk4x4HIZ8j4FZTwdQWLWsKWHGBuFqwAeMicRXmxfpSPfIeoIYRqTflfKD8YUuwthAx7mSEI%2FqkPpKPi%2FkMcGdQrmGdeehM4IC1NtBmUpp2wUE8phUZampKsburEDy0KPkyQDYwT7WZ0wq5VSXDvp75YU9HFvlRd8Tx6q6fE8YQcHNVXAkiY9q6d%2Bxo0rKwT38xVqr7ZD0u0iPPkUL64lIZbqBAz%2BscqKmlzm8FDrypNC9Yjc8fPOLn9FX9KSYvKTr4rvx3iSIlTJabIQwj2ICCR%2FoLxBA%3D%3D&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207e41aee2d6ea2a3868b3dea7b04caeb14d23ee696a76b93467213cd18467cbf502202a05e108d8feb197a62b4ea4b8a9d11aa4dc92bcfaf6e5fe185efac4bafd0802 HTTP/1.1
|
316 + | Host:example.amazonaws.com
|
317 + |
|
218 318 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
|
219 319 | similarity index 99%
|
220 320 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-sts-header-before/query-string-to-sign.txt
|
221 321 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/query-string-to-sign.txt
|
222 322 | index d7f3668..b46cd8c 100644
|
223 323 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
|
224 324 | similarity index 60%
|
225 325 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
|
226 326 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
|
227 327 | index 8b5efc8..3f0a82a 100644
|
228 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-header-key-case/post-header-key-case.req
|
328 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-sts-header-before/request.txt
|
229 329 | @@ -1,3 +1,2 @@
|
230 330 | POST / HTTP/1.1
|
231 331 | Host:example.amazonaws.com
|
232 - | X-Amz-Date:20150830T123600Z
|
233 332 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
|
234 333 | new file mode 100644
|
235 334 | index 0000000..0468d80
|
236 - | -- /dev/null
|
335 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/context.json
|
237 336 | @@ -0,0 +1,12 @@
|
337 + | {
|
338 + | "credentials": {
|
339 + | "access_key_id": "AKIDEXAMPLE",
|
340 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
341 + | },
|
342 + | "expiration_in_seconds": 3600,
|
343 + | "normalize": true,
|
344 + | "region": "us-east-1",
|
345 + | "service": "service",
|
346 + | "sign_body": false,
|
347 + | "timestamp": "2015-08-30T12:36:00Z"
|
348 + | }
|
\ | No newline at end of file
|
238 349 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
|
239 350 | similarity index 99%
|
240 351 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-canonical-request.txt
|
241 352 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-canonical-request.txt
|
242 353 | index 02af60f..34b8c11 100644
|
243 354 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
|
244 355 | new file mode 100644
|
245 356 | index 0000000..aac6427
|
246 - | -- /dev/null
|
357 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signature.txt
|
247 358 | @@ -0,0 +1 @@
|
359 + | 3045022077e142d360c6c3d6768c94c89856f6de0e4fe088328ed0a2324d78ffb73570f1022100ed84c9cd071b43d78f2d70cc1694b3ea807638c648d29a2c401cf3301b34e081
|
\ | No newline at end of file
|
248 360 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
|
249 361 | new file mode 100644
|
250 362 | index 0000000..a611436
|
251 - | -- /dev/null
|
363 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-signed-request.txt
|
252 364 | @@ -0,0 +1,6 @@
|
365 + | POST /?Param1=value1 HTTP/1.1
|
366 + | Host:example.amazonaws.com
|
367 + | X-Amz-Date:20150830T123600Z
|
368 + | X-Amz-Region-Set:us-east-1
|
369 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402203129b52c7149bcf5761f83d023986576af5846b9e9f11050651639f9e24c9ebd02200f7e2f6c2aed2bbb76580e50d32e8aa09dc65f7544cdb169b4a690a2a248efd3
|
370 + |
|
253 371 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
|
254 372 | similarity index 99%
|
255 373 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-string-to-sign.txt
|
256 374 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/header-string-to-sign.txt
|
257 375 | index 4256b4f..ad88dff 100644
|
258 376 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
|
259 377 | new file mode 100644
|
260 378 | index 0000000..379dcb2
|
261 - | -- /dev/null
|
379 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/public-key.json
|
262 380 | @@ -0,0 +1,4 @@
|
381 + | {
|
382 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
383 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
384 + | }
|
263 385 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
|
264 386 | similarity index 99%
|
265 387 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-canonical-request.txt
|
266 388 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-canonical-request.txt
|
267 389 | index fa84bbd..76d5ad6 100644
|
268 390 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
|
269 391 | new file mode 100644
|
270 392 | index 0000000..4cb1c94
|
271 - | -- /dev/null
|
393 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signature.txt
|
272 394 | @@ -0,0 +1 @@
|
395 + | 3045022100df7ad6c7c07d989d8bf5bdc3953a5992ceb0e0acb40c8fba0fdb2e12b1003a0e022002a3b1109182bf60285df0b581ce2d8c6665215d7c0ae4bc32a43a30bad21626
|
\ | No newline at end of file
|
273 396 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
|
274 397 | new file mode 100644
|
275 398 | index 0000000..bd22b97
|
276 - | -- /dev/null
|
399 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-signed-request.txt
|
277 400 | @@ -0,0 +1,3 @@
|
401 + | POST /?Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3045022025fbe60840e867e12ed08dde14cb7b65da87de27afd012fd2bef96c7bc5b6bfe022100ab6eaea845c3d8b65b39d4506cdd36232f10dae092ddd4d54f887d2f979821d9 HTTP/1.1
|
402 + | Host:example.amazonaws.com
|
403 + |
|
278 404 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
|
279 405 | similarity index 99%
|
280 406 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-string-to-sign.txt
|
281 407 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/query-string-to-sign.txt
|
282 408 | index de270ef..8c9d319 100644
|
283 409 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
|
284 410 | similarity index 67%
|
285 411 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req
|
286 412 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
|
287 413 | index 9157bc7..c9d6e5d 100644
|
288 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-empty-query-value/post-vanilla-empty-query-value.req
|
414 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-empty-query-value/request.txt
|
289 415 | @@ -1,3 +1,2 @@
|
290 416 | POST /?Param1=value1 HTTP/1.1
|
291 417 | Host:example.amazonaws.com
|
292 - | X-Amz-Date:20150830T123600Z
|
\ | No newline at end of file
|
293 418 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
|
294 419 | new file mode 100644
|
295 420 | index 0000000..0468d80
|
296 - | -- /dev/null
|
421 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/context.json
|
297 422 | @@ -0,0 +1,12 @@
|
423 + | {
|
424 + | "credentials": {
|
425 + | "access_key_id": "AKIDEXAMPLE",
|
426 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
427 + | },
|
428 + | "expiration_in_seconds": 3600,
|
429 + | "normalize": true,
|
430 + | "region": "us-east-1",
|
431 + | "service": "service",
|
432 + | "sign_body": false,
|
433 + | "timestamp": "2015-08-30T12:36:00Z"
|
434 + | }
|
\ | No newline at end of file
|
298 435 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
|
299 436 | similarity index 99%
|
300 437 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/header-canonical-request.txt
|
301 438 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-canonical-request.txt
|
302 439 | index 02af60f..34b8c11 100644
|
303 440 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
|
304 441 | new file mode 100644
|
305 442 | index 0000000..34f75c8
|
306 - | -- /dev/null
|
443 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signature.txt
|
307 444 | @@ -0,0 +1 @@
|
445 + | 3046022100b876f1bd2e85da20227bf515463de11ed5334e78e559bf814ce39c6a500af453022100a0a4797c60fda7bca3af5ae71680853b0c4e401d3da0821e3266062ff3463275
|
\ | No newline at end of file
|
308 446 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
|
309 447 | new file mode 100644
|
310 448 | index 0000000..c731408
|
311 - | -- /dev/null
|
449 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-signed-request.txt
|
312 450 | @@ -0,0 +1,6 @@
|
451 + | POST /?Param1=value1 HTTP/1.1
|
452 + | Host:example.amazonaws.com
|
453 + | X-Amz-Date:20150830T123600Z
|
454 + | X-Amz-Region-Set:us-east-1
|
455 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=304402202785ef1eddce96aa4f4cb359f00fcb1155fa7f679b4af8949a8ea097381543fc02205a9719949fcc5452e690dcd2426318aa17d87aa67c68fdd66f815ae2d3591b49
|
456 + |
|
313 457 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
|
314 458 | similarity index 99%
|
315 459 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/header-string-to-sign.txt
|
316 460 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/header-string-to-sign.txt
|
317 461 | index 4256b4f..ad88dff 100644
|
318 462 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
|
319 463 | new file mode 100644
|
320 464 | index 0000000..379dcb2
|
321 - | -- /dev/null
|
465 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/public-key.json
|
322 466 | @@ -0,0 +1,4 @@
|
467 + | {
|
468 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
469 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
470 + | }
|
323 471 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
|
324 472 | similarity index 99%
|
325 473 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-empty-query-value/query-canonical-request.txt
|
326 474 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-canonical-request.txt
|
327 475 | index fa84bbd..76d5ad6 100644
|
328 476 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
|
329 477 | new file mode 100644
|
330 478 | index 0000000..ae000d6
|
331 - | -- /dev/null
|
479 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signature.txt
|
332 480 | @@ -0,0 +1 @@
|
481 + | 304402206c9877a31b4f7d0118d45b1e1ac58ed605f2d7ded4005d59c86ac7331737097302201772085759c0ab0ecbf67a85128823319866ee7118945cf569dd17f678aafce5
|
\ | No newline at end of file
|
333 482 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
|
334 483 | new file mode 100644
|
335 484 | index 0000000..a868f7d
|
336 - | -- /dev/null
|
485 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-signed-request.txt
|
337 486 | @@ -0,0 +1,3 @@
|
487 + | POST /?Param1=value1&X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=304402207a361da47ef99ca9b92f2a8d5f8f0214a9580491aa78413733200307498bae3d02207072a6f2a774fa336cc5fb84daf553f70ed1867f2e35563e3a24fdf4a329713d HTTP/1.1
|
488 + | Host:example.amazonaws.com
|
489 + |
|
338 490 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
|
339 491 | similarity index 99%
|
340 492 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla-query/query-string-to-sign.txt
|
341 493 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/query-string-to-sign.txt
|
342 494 | index de270ef..8c9d319 100644
|
343 495 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
|
344 496 | similarity index 67%
|
345 497 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
|
346 498 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
|
347 499 | index 9157bc7..c9d6e5d 100644
|
348 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-vanilla-query/post-vanilla-query.req
|
500 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla-query/request.txt
|
349 501 | @@ -1,3 +1,2 @@
|
350 502 | POST /?Param1=value1 HTTP/1.1
|
351 503 | Host:example.amazonaws.com
|
352 - | X-Amz-Date:20150830T123600Z
|
\ | No newline at end of file
|
353 504 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
|
354 505 | new file mode 100644
|
355 506 | index 0000000..0468d80
|
356 - | -- /dev/null
|
507 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/context.json
|
357 508 | @@ -0,0 +1,12 @@
|
509 + | {
|
510 + | "credentials": {
|
511 + | "access_key_id": "AKIDEXAMPLE",
|
512 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
513 + | },
|
514 + | "expiration_in_seconds": 3600,
|
515 + | "normalize": true,
|
516 + | "region": "us-east-1",
|
517 + | "service": "service",
|
518 + | "sign_body": false,
|
519 + | "timestamp": "2015-08-30T12:36:00Z"
|
520 + | }
|
\ | No newline at end of file
|
358 521 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
|
359 522 | similarity index 99%
|
360 523 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-canonical-request.txt
|
361 524 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-canonical-request.txt
|
362 525 | index a6942c1..e881ac7 100644
|
363 526 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
|
364 527 | new file mode 100644
|
365 528 | index 0000000..7c5e47b
|
366 - | -- /dev/null
|
529 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signature.txt
|
367 530 | @@ -0,0 +1 @@
|
531 + | 3044022051fe398025aafbfc21d054bc78e5edfb96c9acb7fd272795565181d757815e4702202e7b8d2b92324290b1d95f8b0fc5e333bb8b5e333f6160bcab39d7258156d224
|
\ | No newline at end of file
|
368 532 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
|
369 533 | new file mode 100644
|
370 534 | index 0000000..c0e50a0
|
371 - | -- /dev/null
|
535 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-signed-request.txt
|
372 536 | @@ -0,0 +1,6 @@
|
537 + | POST / HTTP/1.1
|
538 + | Host:example.amazonaws.com
|
539 + | X-Amz-Date:20150830T123600Z
|
540 + | X-Amz-Region-Set:us-east-1
|
541 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=host;x-amz-date;x-amz-region-set, Signature=3044022020e04d83be1fc4c7669eb2530c48444ff2ef65e73ab6d4084ba89b886b70d01a0220570df05bd3ba39ccd96a3e831ed8757fbb516baa603d78eaed3ccc95d50a2abb
|
542 + |
|
373 543 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
|
374 544 | similarity index 99%
|
375 545 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/header-string-to-sign.txt
|
376 546 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/header-string-to-sign.txt
|
377 547 | index d5650cb..f8adf13 100644
|
378 548 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
|
379 549 | new file mode 100644
|
380 550 | index 0000000..379dcb2
|
381 - | -- /dev/null
|
551 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/public-key.json
|
382 552 | @@ -0,0 +1,4 @@
|
553 + | {
|
554 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
555 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
556 + | }
|
383 557 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
|
384 558 | similarity index 99%
|
385 559 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-canonical-request.txt
|
386 560 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-canonical-request.txt
|
387 561 | index e48ce07..5ea8e3c 100644
|
388 562 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
|
389 563 | new file mode 100644
|
390 564 | index 0000000..ea8e3b4
|
391 - | -- /dev/null
|
565 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signature.txt
|
392 566 | @@ -0,0 +1 @@
|
567 + | 30440220158b75ce84ef2d97a0b287759f9104b9e093ef3a912a84bd78d30274d08c10c4022064fb9961da1d951aba42455df5752c3e3fa8055cd053b59ad53b140d54f6aafd
|
\ | No newline at end of file
|
393 568 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
|
394 569 | new file mode 100644
|
395 570 | index 0000000..616973f
|
396 - | -- /dev/null
|
571 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-signed-request.txt
|
397 572 | @@ -0,0 +1,3 @@
|
573 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=host&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=3044022034768b9f03c61ee7f93b1e23198ff08923345e32f25e662afa5794997f00ebb102205813497325d50d374e486a3fce997e02ae9610a8eb81af01128103dd9d2d997d HTTP/1.1
|
574 + | Host:example.amazonaws.com
|
575 + |
|
398 576 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
|
399 577 | similarity index 99%
|
400 578 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-vanilla/query-string-to-sign.txt
|
401 579 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/query-string-to-sign.txt
|
402 580 | index 34e3382..711c162 100644
|
403 581 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
|
404 582 | new file mode 100644
|
405 583 | index 0000000..3f0a82a
|
406 - | -- /dev/null
|
584 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-vanilla/request.txt
|
407 585 | @@ -0,0 +1,2 @@
|
586 + | POST / HTTP/1.1
|
587 + | Host:example.amazonaws.com
|
408 588 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
|
409 589 | new file mode 100644
|
410 590 | index 0000000..0db1df1
|
411 - | -- /dev/null
|
591 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/context.json
|
412 592 | @@ -0,0 +1,12 @@
|
593 + | {
|
594 + | "credentials": {
|
595 + | "access_key_id": "AKIDEXAMPLE",
|
596 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
597 + | },
|
598 + | "expiration_in_seconds": 3600,
|
599 + | "normalize": true,
|
600 + | "region": "us-east-1",
|
601 + | "service": "service",
|
602 + | "sign_body": true,
|
603 + | "timestamp": "2015-08-30T12:36:00Z"
|
604 + | }
|
\ | No newline at end of file
|
413 605 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
|
414 606 | similarity index 62%
|
415 607 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
|
416 608 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
|
417 609 | index 05ab787..62639b2 100644
|
418 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
|
610 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-canonical-request.txt
|
419 611 | @@ -1,12 +1,12 @@
|
420 612 | POST
|
421 613 | /
|
422 614 |
|
423 615 | content-length:13
|
424 616 | content-type:application/x-www-form-urlencoded; charset=utf-8
|
425 617 | host:example.amazonaws.com
|
426 - | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
618 + | x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
427 619 | x-amz-date:20150830T123600Z
|
428 620 | x-amz-region-set:us-east-1
|
429 621 |
|
430 622 | content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
|
431 - | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
623 + | 9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
\ | No newline at end of file
|
432 624 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
|
433 625 | new file mode 100644
|
434 626 | index 0000000..006ec2e
|
435 - | -- /dev/null
|
627 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signature.txt
|
436 628 | @@ -0,0 +1 @@
|
629 + | 3045022100eaa8151b5a6e60d9c52dfa60d186a304d0226984aa9ed21f2913267cdfd365c902203bfd4e6dfea58e68d3cb892939f3a00ac91e80c8df69828aefa1e48245928678
|
\ | No newline at end of file
|
437 630 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
|
438 631 | new file mode 100644
|
439 632 | index 0000000..87a11f2
|
440 - | -- /dev/null
|
633 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-signed-request.txt
|
441 634 | @@ -0,0 +1,10 @@
|
635 + | POST / HTTP/1.1
|
636 + | Content-Type:application/x-www-form-urlencoded; charset=utf-8
|
637 + | Host:example.amazonaws.com
|
638 + | Content-Length:13
|
639 + | X-Amz-Date:20150830T123600Z
|
640 + | X-Amz-Region-Set:us-east-1
|
641 + | x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
642 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set, Signature=3045022100c016dc61cbd380cf8160711320957071f5c122ef69164d56d02f79daf51a0603022043e3313aa2f6b46285cc89dfe5616ccc74c810a3d7ea25b76ee1ca496f7facba
|
643 + |
|
644 + | Param1=value1
|
\ | No newline at end of file
|
442 645 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
|
443 646 | new file mode 100644
|
444 647 | index 0000000..c047afb
|
445 - | -- /dev/null
|
648 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/header-string-to-sign.txt
|
446 649 | @@ -0,0 +1,4 @@
|
650 + | AWS4-ECDSA-P256-SHA256
|
651 + | 20150830T123600Z
|
652 + | 20150830/service/aws4_request
|
653 + | bcdb9ab3050c0bb18c5e9eb60e6eb1aaaf00907920065569a99b0c51278639b5
|
\ | No newline at end of file
|
447 654 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
|
448 655 | new file mode 100644
|
449 656 | index 0000000..379dcb2
|
450 - | -- /dev/null
|
657 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/public-key.json
|
451 658 | @@ -0,0 +1,4 @@
|
659 + | {
|
660 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
661 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
662 + | }
|
452 663 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
|
453 664 | similarity index 85%
|
454 665 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
|
455 666 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
|
456 667 | index fcc454f..6933a8c 100644
|
457 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
|
668 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-canonical-request.txt
|
458 669 | @@ -1,9 +1,9 @@
|
459 670 | POST
|
460 671 | /
|
461 672 | X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost
|
462 673 | content-length:13
|
463 674 | content-type:application/x-www-form-urlencoded; charset=utf-8
|
464 675 | host:example.amazonaws.com
|
465 676 |
|
466 677 | content-length;content-type;host
|
467 - | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
678 + | 9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
\ | No newline at end of file
|
468 679 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
|
469 680 | new file mode 100644
|
470 681 | index 0000000..34a2e12
|
471 - | -- /dev/null
|
682 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signature.txt
|
472 683 | @@ -0,0 +1 @@
|
684 + | 3046022100dcfa462c480d85707221a690323639df78fb10eb2f4913abcfc4eec215c39fb8022100bad863cf9d951963fc2d8068a2887742d553283e5086f644e3ca9ff8b262e13c
|
\ | No newline at end of file
|
473 685 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
|
474 686 | new file mode 100644
|
475 687 | index 0000000..197b99e
|
476 - | -- /dev/null
|
688 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-signed-request.txt
|
477 689 | @@ -0,0 +1,6 @@
|
690 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450220128d491ccca3f9a7988d00454d2210dd884d7990ca2cb844d4968c8fa9e937f8022100b3668dd440d8206074460567cee98691f66412fe5a83d8e32c601e1331f2ec2b HTTP/1.1
|
691 + | Content-Type:application/x-www-form-urlencoded; charset=utf-8
|
692 + | Host:example.amazonaws.com
|
693 + | Content-Length:13
|
694 + |
|
695 + | Param1=value1
|
\ | No newline at end of file
|
478 696 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
|
479 697 | new file mode 100644
|
480 698 | index 0000000..9d2bc74
|
481 - | -- /dev/null
|
699 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/query-string-to-sign.txt
|
482 700 | @@ -0,0 +1,4 @@
|
701 + | AWS4-ECDSA-P256-SHA256
|
702 + | 20150830T123600Z
|
703 + | 20150830/service/aws4_request
|
704 + | d4dab970413a0459d2a3bb644b278e96e85f2f6ac8fa09a74bbd6a269ec3dd82
|
\ | No newline at end of file
|
483 705 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
|
484 706 | similarity index 80%
|
485 707 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req
|
486 708 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
|
487 709 | index 36015f1..8289eaa 100644
|
488 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4-test-suite/post-x-www-form-urlencoded-parameters/post-x-www-form-urlencoded-parameters.req
|
710 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded-parameters/request.txt
|
489 711 | @@ -1,6 +1,6 @@
|
490 712 | POST / HTTP/1.1
|
491 713 | Content-Type:application/x-www-form-urlencoded; charset=utf-8
|
492 714 | Host:example.amazonaws.com
|
493 - | X-Amz-Date:20150830T123600Z
|
715 + | Content-Length:13
|
494 716 |
|
495 717 | Param1=value1
|
\ | No newline at end of file
|
496 718 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
|
497 719 | new file mode 100644
|
498 720 | index 0000000..0db1df1
|
499 - | -- /dev/null
|
721 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/context.json
|
500 722 | @@ -0,0 +1,12 @@
|
723 + | {
|
724 + | "credentials": {
|
725 + | "access_key_id": "AKIDEXAMPLE",
|
726 + | "secret_access_key": "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY"
|
727 + | },
|
728 + | "expiration_in_seconds": 3600,
|
729 + | "normalize": true,
|
730 + | "region": "us-east-1",
|
731 + | "service": "service",
|
732 + | "sign_body": true,
|
733 + | "timestamp": "2015-08-30T12:36:00Z"
|
734 + | }
|
\ | No newline at end of file
|
501 735 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
|
502 736 | similarity index 61%
|
503 737 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
|
504 738 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
|
505 739 | index 69009dc..797632b 100644
|
506 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/header-canonical-request.txt
|
740 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-canonical-request.txt
|
507 741 | @@ -1,12 +1,12 @@
|
508 742 | POST
|
509 743 | /
|
510 744 |
|
511 745 | content-length:13
|
512 746 | content-type:application/x-www-form-urlencoded
|
513 747 | host:example.amazonaws.com
|
514 - | x-amz-content-sha256:e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
748 + | x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
515 749 | x-amz-date:20150830T123600Z
|
516 750 | x-amz-region-set:us-east-1
|
517 751 |
|
518 752 | content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set
|
519 - | e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
|
753 + | 9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
\ | No newline at end of file
|
520 754 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
|
521 755 | new file mode 100644
|
522 756 | index 0000000..f5a641c
|
523 - | -- /dev/null
|
757 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signature.txt
|
524 758 | @@ -0,0 +1 @@
|
759 + | 304402202dc0a1ca6ca9308bece143f48201f2500761a242ba6efc7857e1ba01a022e843022053f570cb5adf521df2f6732b5077becd86bc2073b30e9d48c2057851902c1c0e
|
\ | No newline at end of file
|
525 760 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
|
526 761 | new file mode 100644
|
527 762 | index 0000000..7bd94a7
|
528 - | -- /dev/null
|
763 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-signed-request.txt
|
529 764 | @@ -0,0 +1,10 @@
|
765 + | POST / HTTP/1.1
|
766 + | Content-Type:application/x-www-form-urlencoded
|
767 + | Host:example.amazonaws.com
|
768 + | Content-Length:13
|
769 + | X-Amz-Date:20150830T123600Z
|
770 + | X-Amz-Region-Set:us-east-1
|
771 + | x-amz-content-sha256:9095672bbd1f56dfc5b65f3e153adc8731a4a654192329106275f4c7b24d0b6e
|
772 + | Authorization:AWS4-ECDSA-P256-SHA256 Credential=AKIDEXAMPLE/20150830/service/aws4_request, SignedHeaders=content-length;content-type;host;x-amz-content-sha256;x-amz-date;x-amz-region-set, Signature=3045022100955bbc0f0b9d4284719808642167f7d5ea4a72f8c296b75b442898c8b81cd7e502202425fb97620fa9a20344d22b248dd00db07524fc39b5ad77533e00b277331241
|
773 + |
|
774 + | Param1=value1
|
\ | No newline at end of file
|
530 775 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
|
531 776 | new file mode 100644
|
532 777 | index 0000000..8d25ba9
|
533 - | -- /dev/null
|
778 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/header-string-to-sign.txt
|
534 779 | @@ -0,0 +1,4 @@
|
780 + | AWS4-ECDSA-P256-SHA256
|
781 + | 20150830T123600Z
|
782 + | 20150830/service/aws4_request
|
783 + | ba7fa291aefad463b308fdc89b33d852aea9fbcfa151d820117bd8189066cb91
|
\ | No newline at end of file
|
535 784 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
|
536 785 | new file mode 100644
|
537 786 | index 0000000..379dcb2
|
538 - | -- /dev/null
|
787 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/public-key.json
|
539 788 | @@ -0,0 +1,4 @@
|
789 + | {
|
790 + | "X":"b6618f6a65740a99e650b33b6b4b5bd0d43b176d721a3edfea7e7d2d56d936b1",
|
791 + | "Y":"865ed22a7eadc9c5cb9d2cbaca1b3699139fedc5043dc6661864218330c8e518"
|
792 + | }
|
540 793 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
|
541 794 | similarity index 99%
|
542 795 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-canonical-request.txt
|
543 796 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-canonical-request.txt
|
544 797 | index 9ed065b..563ff58 100644
|
545 798 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
|
546 799 | new file mode 100644
|
547 800 | index 0000000..0c77daf
|
548 - | -- /dev/null
|
801 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signature.txt
|
549 802 | @@ -0,0 +1 @@
|
803 + | 304402205e21d399153f879b0f32c38742d12941299467bfdc213224cc76a97acffd6ec6022035a9be37a38c19e98e5cfc536fabe885e82fbf999081234b364cab5cacff8733
|
\ | No newline at end of file
|
550 804 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
|
551 805 | new file mode 100644
|
552 806 | index 0000000..71d6de9
|
553 - | -- /dev/null
|
807 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-signed-request.txt
|
554 808 | @@ -0,0 +1,6 @@
|
809 + | POST /?X-Amz-Algorithm=AWS4-ECDSA-P256-SHA256&X-Amz-Credential=AKIDEXAMPLE%2F20150830%2Fservice%2Faws4_request&X-Amz-Date=20150830T123600Z&X-Amz-SignedHeaders=content-length%3Bcontent-type%3Bhost&X-Amz-Expires=3600&X-Amz-Region-Set=us-east-1&X-Amz-Signature=30450221008d8a6aa0bc3f651e6c14c52e9e24dbca58964641c9cb6e55169f9dc74766ae3d022016126756ce1523ac972f66f6bf6e981f44572d3c8916f1f43d428fb2caa0e1ea HTTP/1.1
|
810 + | Content-Type:application/x-www-form-urlencoded
|
811 + | Host:example.amazonaws.com
|
812 + | Content-Length:13
|
813 + |
|
814 + | Param1=value1
|
\ | No newline at end of file
|
555 815 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
|
556 816 | similarity index 99%
|
557 817 | rename from tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-sig-v4a-test-suite/post-x-www-form-urlencoded/query-string-to-sign.txt
|
558 818 | rename to tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/query-string-to-sign.txt
|
559 819 | index bef3143..cc7a224 100644
|
560 820 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
|
561 821 | new file mode 100644
|
562 822 | index 0000000..760b2d3
|
563 - | -- /dev/null
|
823 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/aws-signing-test-suite/v4a/post-x-www-form-urlencoded/request.txt
|
564 824 | @@ -0,0 +1,6 @@
|
825 + | POST / HTTP/1.1
|
826 + | Content-Type:application/x-www-form-urlencoded
|
827 + | Host:example.amazonaws.com
|
828 + | Content-Length:13
|
829 + |
|
830 + | Param1=value1
|
\ | No newline at end of file
|
565 831 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
|
566 832 | index 9bd636f..b53f33f 100644
|
567 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
|
833 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/canonical_request.rs
|
568 834 | @@ -346,67 +346,78 @@ impl CanonicalRequest<'_> {
|
569 835 | params.push((Cow::Borrowed(k), Cow::Borrowed(v)));
|
570 836 | }
|
571 837 |
|
572 838 | if let SignatureValues::QueryParams(values) = values {
|
573 839 | add_param(&mut params, param::X_AMZ_DATE, &values.date_time);
|
574 840 | add_param(&mut params, param::X_AMZ_EXPIRES, &values.expires);
|
575 841 |
|
576 842 | #[cfg(feature = "sigv4a")]
|
577 843 | if let Some(regions) = values.region_set {
|
578 844 | add_param(&mut params, sigv4a::param::X_AMZ_REGION_SET, regions);
|
579 845 | }
|
580 846 |
|
581 847 | add_param(&mut params, param::X_AMZ_ALGORITHM, values.algorithm);
|
582 848 | add_param(&mut params, param::X_AMZ_CREDENTIAL, &values.credential);
|
583 849 | add_param(
|
584 850 | &mut params,
|
585 851 | param::X_AMZ_SIGNED_HEADERS,
|
586 852 | values.signed_headers.as_str(),
|
587 853 | );
|
588 854 |
|
589 855 | if let Some(security_token) = values.security_token {
|
590 856 | add_param(
|
591 857 | &mut params,
|
592 858 | settings
|
593 859 | .session_token_name_override
|
594 860 | .unwrap_or(param::X_AMZ_SECURITY_TOKEN),
|
595 861 | security_token,
|
596 862 | );
|
597 863 | }
|
598 864 | }
|
599 - | // Sort by param name, and then by param value
|
865 + |
|
866 + | // Sort on the _encoded_ key/value pairs
|
867 + | let mut params: Vec<(String, String)> = params
|
868 + | .into_iter()
|
869 + | .map(|x| {
|
870 + | use aws_smithy_http::query::fmt_string;
|
871 + | let enc_k = fmt_string(&x.0);
|
872 + | let enc_v = fmt_string(&x.1);
|
873 + | (enc_k, enc_v)
|
874 + | })
|
875 + | .collect();
|
876 + |
|
600 877 | params.sort();
|
601 878 |
|
602 879 | let mut query = QueryWriter::new(uri);
|
603 880 | query.clear_params();
|
604 881 | for (key, value) in params {
|
605 - | query.insert(&key, &value);
|
882 + | query.insert_encoded(&key, &value);
|
606 883 | }
|
607 884 |
|
608 885 | let query = query.build_query();
|
609 886 | if query.is_empty() {
|
610 887 | None
|
611 888 | } else {
|
612 889 | Some(query)
|
613 890 | }
|
614 891 | }
|
615 892 |
|
616 893 | fn insert_host_header(
|
617 894 | canonical_headers: &mut HeaderMap<HeaderValue>,
|
618 895 | uri: &Uri,
|
619 896 | ) -> HeaderValue {
|
620 897 | match canonical_headers.get(&HOST) {
|
621 898 | Some(header) => header.clone(),
|
622 899 | None => {
|
623 900 | let port = uri.port();
|
624 901 | let scheme = uri.scheme();
|
625 902 | let authority = uri
|
626 903 | .authority()
|
627 904 | .expect("request uri authority must be set for signing")
|
628 905 | .as_str();
|
629 906 | let host = uri
|
630 907 | .host()
|
631 908 | .expect("request uri host must be set for signing");
|
632 909 |
|
633 910 | // Check if port is default (80 for HTTP, 443 for HTTPS) and if so exclude it from the
|
634 911 | // Host header when signing since RFC 2616 indicates that the default port should not be
|
635 912 | // sent in the Host header (and Hyper strips default ports if they are present)
|
636 913 | @@ -642,310 +653,320 @@ impl<'a> StringToSign<'a> {
|
637 914 | service,
|
638 915 | hashed_creq,
|
639 916 | signature_version: SignatureVersion::V4a,
|
640 917 | }
|
641 918 | }
|
642 919 | }
|
643 920 |
|
644 921 | impl fmt::Display for StringToSign<'_> {
|
645 922 | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
|
646 923 | write!(
|
647 924 | f,
|
648 925 | "{}\n{}\n{}\n{}",
|
649 926 | self.algorithm,
|
650 927 | format_date_time(self.time),
|
651 928 | match self.signature_version {
|
652 929 | SignatureVersion::V4 => self.scope.to_string(),
|
653 930 | SignatureVersion::V4a => self.scope.v4a_display(),
|
654 931 | },
|
655 932 | self.hashed_creq
|
656 933 | )
|
657 934 | }
|
658 935 | }
|
659 936 |
|
660 937 | #[cfg(test)]
|
661 938 | mod tests {
|
662 939 | use crate::date_time::test_parsers::parse_date_time;
|
663 940 | use crate::http_request::canonical_request::{
|
664 941 | normalize_header_value, trim_all, CanonicalRequest, SigningScope, StringToSign,
|
665 942 | };
|
666 943 | use crate::http_request::test;
|
944 + | use crate::http_request::test::SigningSuiteTest;
|
667 945 | use crate::http_request::{
|
668 946 | PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
|
669 947 | SigningParams, SigningSettings,
|
670 948 | };
|
671 949 | use crate::sign::v4;
|
672 950 | use crate::sign::v4::sha256_hex_string;
|
673 951 | use aws_credential_types::Credentials;
|
674 952 | use aws_smithy_http::query_writer::QueryWriter;
|
675 953 | use aws_smithy_runtime_api::client::identity::Identity;
|
676 954 | use http0::{HeaderValue, Uri};
|
677 955 | use pretty_assertions::assert_eq;
|
678 956 | use proptest::{prelude::*, proptest};
|
679 957 | use std::borrow::Cow;
|
680 958 | use std::time::Duration;
|
681 959 |
|
682 960 | fn signing_params(identity: &Identity, settings: SigningSettings) -> SigningParams<'_> {
|
683 961 | v4::signing_params::Builder::default()
|
684 962 | .identity(identity)
|
685 963 | .region("test-region")
|
686 964 | .name("testservicename")
|
687 965 | .time(parse_date_time("20210511T154045Z").unwrap())
|
688 966 | .settings(settings)
|
689 967 | .build()
|
690 968 | .unwrap()
|
691 969 | .into()
|
692 970 | }
|
693 971 |
|
694 972 | #[test]
|
695 973 | fn test_repeated_header() {
|
696 - | let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
|
974 + | let test = test::SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
975 + | let mut req = test.request();
|
697 976 | req.headers.push((
|
698 977 | "x-amz-object-attributes".to_string(),
|
699 978 | "Checksum".to_string(),
|
700 979 | ));
|
701 980 | req.headers.push((
|
702 981 | "x-amz-object-attributes".to_string(),
|
703 982 | "ObjectSize".to_string(),
|
704 983 | ));
|
705 984 | let req = SignableRequest::from(&req);
|
706 985 | let settings = SigningSettings {
|
707 986 | payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
708 987 | session_token_mode: SessionTokenMode::Exclude,
|
709 988 | ..Default::default()
|
710 989 | };
|
711 990 | let identity = Credentials::for_tests().into();
|
712 991 | let signing_params = signing_params(&identity, settings);
|
713 992 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
714 993 |
|
715 994 | assert_eq!(
|
716 995 | creq.values.signed_headers().to_string(),
|
717 996 | "host;x-amz-content-sha256;x-amz-date;x-amz-object-attributes"
|
718 997 | );
|
719 998 | assert_eq!(
|
720 999 | creq.header_values_for("x-amz-object-attributes"),
|
721 1000 | "Checksum,ObjectSize",
|
722 1001 | );
|
723 1002 | }
|
724 1003 |
|
725 1004 | #[test]
|
726 1005 | fn test_host_header_properly_handles_ports() {
|
727 1006 | fn host_header_test_setup(endpoint: String) -> String {
|
728 - | let mut req = test::v4::test_request("get-vanilla");
|
1007 + | let test = SigningSuiteTest::v4("get-vanilla");
|
1008 + | let mut req = test.request();
|
729 1009 | req.uri = endpoint;
|
730 1010 | let req = SignableRequest::from(&req);
|
731 1011 | let settings = SigningSettings {
|
732 1012 | payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
733 1013 | session_token_mode: SessionTokenMode::Exclude,
|
734 1014 | ..Default::default()
|
735 1015 | };
|
736 1016 | let identity = Credentials::for_tests().into();
|
737 1017 | let signing_params = signing_params(&identity, settings);
|
738 1018 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
739 1019 | creq.header_values_for("host")
|
740 1020 | }
|
741 1021 |
|
742 1022 | // HTTP request with 80 port should not be signed with that port
|
743 1023 | let http_80_host_header = host_header_test_setup("http://localhost:80".into());
|
744 1024 | assert_eq!(http_80_host_header, "localhost",);
|
745 1025 |
|
746 1026 | // HTTP request with non-80 port should be signed with that port
|
747 1027 | let http_1234_host_header = host_header_test_setup("http://localhost:1234".into());
|
748 1028 | assert_eq!(http_1234_host_header, "localhost:1234",);
|
749 1029 |
|
750 1030 | // HTTPS request with 443 port should not be signed with that port
|
751 1031 | let https_443_host_header = host_header_test_setup("https://localhost:443".into());
|
752 1032 | assert_eq!(https_443_host_header, "localhost",);
|
753 1033 |
|
754 1034 | // HTTPS request with non-443 port should be signed with that port
|
755 1035 | let https_1234_host_header = host_header_test_setup("https://localhost:1234".into());
|
756 1036 | assert_eq!(https_1234_host_header, "localhost:1234",);
|
757 1037 | }
|
758 1038 |
|
759 1039 | #[test]
|
760 1040 | fn test_set_xamz_sha_256() {
|
761 - | let req = test::v4::test_request("get-vanilla-query-order-key-case");
|
1041 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1042 + | let req = test.request();
|
762 1043 | let req = SignableRequest::from(&req);
|
763 1044 | let settings = SigningSettings {
|
764 1045 | payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
765 1046 | session_token_mode: SessionTokenMode::Exclude,
|
766 1047 | ..Default::default()
|
767 1048 | };
|
768 1049 | let identity = Credentials::for_tests().into();
|
769 1050 | let mut signing_params = signing_params(&identity, settings);
|
770 1051 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
771 1052 | assert_eq!(
|
772 1053 | creq.values.content_sha256(),
|
773 1054 | "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
|
774 1055 | );
|
775 1056 | // assert that the sha256 header was added
|
776 1057 | assert_eq!(
|
777 1058 | creq.values.signed_headers().as_str(),
|
778 1059 | "host;x-amz-content-sha256;x-amz-date"
|
779 1060 | );
|
780 1061 |
|
781 1062 | signing_params.set_payload_checksum_kind(PayloadChecksumKind::NoHeader);
|
782 1063 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
783 1064 | assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
|
784 1065 | }
|
785 1066 |
|
786 1067 | #[test]
|
787 1068 | fn test_unsigned_payload() {
|
788 - | let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
|
1069 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1070 + | let mut req = test.request();
|
789 1071 | req.set_body(SignableBody::UnsignedPayload);
|
790 1072 | let req: SignableRequest<'_> = SignableRequest::from(&req);
|
791 1073 |
|
792 1074 | let settings = SigningSettings {
|
793 1075 | payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
794 1076 | ..Default::default()
|
795 1077 | };
|
796 1078 | let identity = Credentials::for_tests().into();
|
797 1079 | let signing_params = signing_params(&identity, settings);
|
798 1080 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
799 1081 | assert_eq!(creq.values.content_sha256(), "UNSIGNED-PAYLOAD");
|
800 1082 | assert!(creq.to_string().ends_with("UNSIGNED-PAYLOAD"));
|
801 1083 | }
|
802 1084 |
|
803 1085 | #[test]
|
804 1086 | fn test_precomputed_payload() {
|
805 1087 | let payload_hash = "44ce7dd67c959e0d3524ffac1771dfbba87d2b6b4b4e99e42034a8b803f8b072";
|
806 - | let mut req = test::v4::test_request("get-vanilla-query-order-key-case");
|
1088 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1089 + | let mut req = test.request();
|
807 1090 | req.set_body(SignableBody::Precomputed(String::from(payload_hash)));
|
808 1091 | let req = SignableRequest::from(&req);
|
809 1092 | let settings = SigningSettings {
|
810 1093 | payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
811 1094 | ..Default::default()
|
812 1095 | };
|
813 1096 | let identity = Credentials::for_tests().into();
|
814 1097 | let signing_params = signing_params(&identity, settings);
|
815 1098 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
816 1099 | assert_eq!(creq.values.content_sha256(), payload_hash);
|
817 1100 | assert!(creq.to_string().ends_with(payload_hash));
|
818 1101 | }
|
819 1102 |
|
820 1103 | #[test]
|
821 1104 | fn test_generate_scope() {
|
822 1105 | let expected = "20150830/us-east-1/iam/aws4_request\n";
|
823 1106 | let scope = SigningScope {
|
824 1107 | time: parse_date_time("20150830T123600Z").unwrap(),
|
825 1108 | region: "us-east-1",
|
826 1109 | service: "iam",
|
827 1110 | };
|
828 1111 | assert_eq!(format!("{}\n", scope), expected);
|
829 1112 | }
|
830 1113 |
|
831 1114 | #[test]
|
832 1115 | fn test_string_to_sign() {
|
833 1116 | let time = parse_date_time("20150830T123600Z").unwrap();
|
834 - | let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
|
835 - | let expected_sts = test::v4::test_sts("get-vanilla-query-order-key-case");
|
1117 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1118 + | let creq = test.canonical_request(SignatureLocation::Headers);
|
1119 + | let expected_sts = test.string_to_sign(SignatureLocation::Headers);
|
836 1120 | let encoded = sha256_hex_string(creq.as_bytes());
|
837 1121 |
|
838 1122 | let actual = StringToSign::new_v4(time, "us-east-1", "service", &encoded);
|
839 1123 | assert_eq!(expected_sts, actual.to_string());
|
840 1124 | }
|
841 1125 |
|
842 1126 | #[test]
|
843 1127 | fn test_digest_of_canonical_request() {
|
844 - | let creq = test::v4::test_canonical_request("get-vanilla-query-order-key-case");
|
1128 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1129 + | let creq = test.canonical_request(SignatureLocation::Headers);
|
845 1130 | let expected = "816cd5b414d056048ba4f7c5386d6e0533120fb1fcfa93762cf0fc39e2cf19e0";
|
846 1131 | let actual = sha256_hex_string(creq.as_bytes());
|
847 1132 | assert_eq!(expected, actual);
|
848 1133 | }
|
849 1134 |
|
850 1135 | #[test]
|
851 1136 | fn test_double_url_encode_path() {
|
852 - | let req = test::v4::test_request("double-encode-path");
|
1137 + | let test = SigningSuiteTest::v4("double-encode-path");
|
1138 + | let req = test.request();
|
853 1139 | let req = SignableRequest::from(&req);
|
854 1140 | let identity = Credentials::for_tests().into();
|
855 1141 | let signing_params = signing_params(&identity, SigningSettings::default());
|
856 1142 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
857 1143 |
|
858 - | let expected = test::v4::test_canonical_request("double-encode-path");
|
1144 + | let expected = test.canonical_request(SignatureLocation::Headers);
|
859 1145 | let actual = format!("{}", creq);
|
860 1146 | assert_eq!(actual, expected);
|
861 1147 | }
|
862 1148 |
|
863 1149 | #[test]
|
864 1150 | fn test_double_url_encode() {
|
865 - | let req = test::v4::test_request("double-url-encode");
|
1151 + | let test = SigningSuiteTest::v4("double-url-encode");
|
1152 + | let req = test.request();
|
866 1153 | let req = SignableRequest::from(&req);
|
867 1154 | let identity = Credentials::for_tests().into();
|
868 1155 | let signing_params = signing_params(&identity, SigningSettings::default());
|
869 1156 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
870 - |
|
871 - | let expected = test::v4::test_canonical_request("double-url-encode");
|
1157 + | let expected = test.canonical_request(SignatureLocation::Headers);
|
872 1158 | let actual = format!("{}", creq);
|
873 1159 | assert_eq!(actual, expected);
|
874 1160 | }
|
875 1161 |
|
876 1162 | #[test]
|
877 1163 | fn test_tilde_in_uri() {
|
878 1164 | let req = http0::Request::builder()
|
879 1165 | .uri("https://s3.us-east-1.amazonaws.com/my-bucket?list-type=2&prefix=~objprefix&single&k=&unreserved=-_.~").body("").unwrap().into();
|
880 1166 | let req = SignableRequest::from(&req);
|
881 1167 | let identity = Credentials::for_tests().into();
|
882 1168 | let signing_params = signing_params(&identity, SigningSettings::default());
|
883 1169 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
884 1170 | assert_eq!(
|
885 1171 | Some("k=&list-type=2&prefix=~objprefix&single=&unreserved=-_.~"),
|
886 1172 | creq.params.as_deref(),
|
887 1173 | );
|
888 1174 | }
|
889 1175 |
|
890 1176 | #[test]
|
891 1177 | fn test_signing_urls_with_percent_encoded_query_strings() {
|
892 1178 | let all_printable_ascii_chars: String = (32u8..127).map(char::from).collect();
|
893 1179 | let uri = Uri::from_static("https://s3.us-east-1.amazonaws.com/my-bucket");
|
894 1180 |
|
895 1181 | let mut query_writer = QueryWriter::new(&uri);
|
896 1182 | query_writer.insert("list-type", "2");
|
897 1183 | query_writer.insert("prefix", &all_printable_ascii_chars);
|
898 1184 |
|
899 1185 | let req = http0::Request::builder()
|
900 1186 | .uri(query_writer.build_uri())
|
901 1187 | .body("")
|
902 1188 | .unwrap()
|
903 1189 | .into();
|
904 1190 | let req = SignableRequest::from(&req);
|
905 1191 | let identity = Credentials::for_tests().into();
|
906 1192 | let signing_params = signing_params(&identity, SigningSettings::default());
|
907 1193 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
908 1194 |
|
909 1195 | let expected = "list-type=2&prefix=%20%21%22%23%24%25%26%27%28%29%2A%2B%2C-.%2F0123456789%3A%3B%3C%3D%3E%3F%40ABCDEFGHIJKLMNOPQRSTUVWXYZ%5B%5C%5D%5E_%60abcdefghijklmnopqrstuvwxyz%7B%7C%7D~";
|
910 1196 | let actual = creq.params.unwrap();
|
911 1197 | assert_eq!(expected, actual);
|
912 1198 | }
|
913 1199 |
|
914 1200 | #[test]
|
915 1201 | fn test_omit_session_token() {
|
916 - | let req = test::v4::test_request("get-vanilla-query-order-key-case");
|
1202 + | let test = SigningSuiteTest::v4("get-vanilla-query-order-key-case");
|
1203 + | let req = test.request();
|
917 1204 | let req = SignableRequest::from(&req);
|
918 1205 | let settings = SigningSettings {
|
919 1206 | session_token_mode: SessionTokenMode::Include,
|
920 1207 | ..Default::default()
|
921 1208 | };
|
922 1209 | let identity = Credentials::for_tests_with_session_token().into();
|
923 1210 | let mut signing_params = signing_params(&identity, settings);
|
924 1211 |
|
925 1212 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
926 1213 | assert_eq!(
|
927 1214 | creq.values.signed_headers().as_str(),
|
928 1215 | "host;x-amz-date;x-amz-security-token"
|
929 1216 | );
|
930 1217 | assert_eq!(
|
931 1218 | creq.headers.get("x-amz-security-token").unwrap(),
|
932 1219 | "notarealsessiontoken"
|
933 1220 | );
|
934 1221 |
|
935 1222 | signing_params.set_session_token_mode(SessionTokenMode::Exclude);
|
936 1223 | let creq = CanonicalRequest::from(&req, &signing_params).unwrap();
|
937 1224 | assert_eq!(
|
938 1225 | creq.headers.get("x-amz-security-token").unwrap(),
|
939 1226 | "notarealsessiontoken"
|
940 1227 | );
|
941 1228 | assert_eq!(creq.values.signed_headers().as_str(), "host;x-amz-date");
|
942 1229 | }
|
943 1230 |
|
944 1231 | // It should exclude authorization, user-agent, x-amzn-trace-id, and transfer-encoding headers from presigning
|
945 1232 | #[test]
|
946 1233 | fn non_presigning_header_exclusion() {
|
947 1234 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
|
948 1235 | index c4bbbee..363fc2c 100644
|
949 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
|
1236 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/sign.rs
|
950 1237 | @@ -6,60 +6,62 @@
|
951 1238 | use super::error::SigningError;
|
952 1239 | use super::{PayloadChecksumKind, SignatureLocation};
|
953 1240 | use crate::http_request::canonical_request::header;
|
954 1241 | use crate::http_request::canonical_request::param;
|
955 1242 | use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
|
956 1243 | use crate::http_request::error::CanonicalRequestError;
|
957 1244 | use crate::http_request::SigningParams;
|
958 1245 | use crate::sign::v4;
|
959 1246 | #[cfg(feature = "sigv4a")]
|
960 1247 | use crate::sign::v4a;
|
961 1248 | use crate::{SignatureVersion, SigningOutput};
|
962 1249 | use http0::Uri;
|
963 1250 | use std::borrow::Cow;
|
964 1251 | use std::fmt::{Debug, Formatter};
|
965 1252 | use std::str;
|
966 1253 |
|
967 1254 | const LOG_SIGNABLE_BODY: &str = "LOG_SIGNABLE_BODY";
|
968 1255 |
|
969 1256 | /// Represents all of the information necessary to sign an HTTP request.
|
970 1257 | #[derive(Debug)]
|
971 1258 | #[non_exhaustive]
|
972 1259 | pub struct SignableRequest<'a> {
|
973 1260 | method: &'a str,
|
974 1261 | uri: Uri,
|
975 1262 | headers: Vec<(&'a str, &'a str)>,
|
976 1263 | body: SignableBody<'a>,
|
977 1264 | }
|
978 1265 |
|
979 1266 | impl<'a> SignableRequest<'a> {
|
980 1267 | /// Creates a new `SignableRequest`.
|
1268 + | ///
|
1269 + | /// NOTE: The `uri` is expected to already in encoded form.
|
981 1270 | pub fn new(
|
982 1271 | method: &'a str,
|
983 1272 | uri: impl Into<Cow<'a, str>>,
|
984 1273 | headers: impl Iterator<Item = (&'a str, &'a str)>,
|
985 1274 | body: SignableBody<'a>,
|
986 1275 | ) -> Result<Self, SigningError> {
|
987 1276 | let uri = uri
|
988 1277 | .into()
|
989 1278 | .parse()
|
990 1279 | .map_err(|e| SigningError::from(CanonicalRequestError::from(e)))?;
|
991 1280 | let headers = headers.collect();
|
992 1281 | Ok(Self {
|
993 1282 | method,
|
994 1283 | uri,
|
995 1284 | headers,
|
996 1285 | body,
|
997 1286 | })
|
998 1287 | }
|
999 1288 |
|
1000 1289 | /// Returns the signable URI
|
1001 1290 | pub(crate) fn uri(&self) -> &Uri {
|
1002 1291 | &self.uri
|
1003 1292 | }
|
1004 1293 |
|
1005 1294 | /// Returns the signable HTTP method
|
1006 1295 | pub(crate) fn method(&self) -> &str {
|
1007 1296 | self.method
|
1008 1297 | }
|
1009 1298 |
|
1010 1299 | /// Returns the request headers
|
1011 1300 | @@ -478,436 +480,324 @@ fn add_header(map: &mut Vec<Header>, key: &'static str, value: &str, sensitive:
|
1012 1301 | sensitive,
|
1013 1302 | });
|
1014 1303 | }
|
1015 1304 |
|
1016 1305 | // add signature to authorization header
|
1017 1306 | // Authorization: algorithm Credential=access key ID/credential scope, SignedHeaders=SignedHeaders, Signature=signature
|
1018 1307 | fn build_authorization_header(
|
1019 1308 | access_key: &str,
|
1020 1309 | creq: &CanonicalRequest<'_>,
|
1021 1310 | sts: StringToSign<'_>,
|
1022 1311 | signature: &str,
|
1023 1312 | signature_version: SignatureVersion,
|
1024 1313 | ) -> String {
|
1025 1314 | let scope = match signature_version {
|
1026 1315 | SignatureVersion::V4 => sts.scope.to_string(),
|
1027 1316 | SignatureVersion::V4a => sts.scope.v4a_display(),
|
1028 1317 | };
|
1029 1318 | format!(
|
1030 1319 | "{} Credential={}/{}, SignedHeaders={}, Signature={}",
|
1031 1320 | sts.algorithm,
|
1032 1321 | access_key,
|
1033 1322 | scope,
|
1034 1323 | creq.values.signed_headers().as_str(),
|
1035 1324 | signature
|
1036 1325 | )
|
1037 1326 | }
|
1038 1327 | #[cfg(test)]
|
1039 1328 | mod tests {
|
1040 1329 | use crate::date_time::test_parsers::parse_date_time;
|
1041 1330 | use crate::http_request::sign::{add_header, SignableRequest};
|
1331 + | use crate::http_request::test::SigningSuiteTest;
|
1042 1332 | use crate::http_request::{
|
1043 - | sign, test, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
|
1333 + | sign, SessionTokenMode, SignableBody, SignatureLocation, SigningInstructions,
|
1044 1334 | SigningSettings,
|
1045 1335 | };
|
1046 1336 | use crate::sign::v4;
|
1047 1337 | use aws_credential_types::Credentials;
|
1048 1338 | use http0::{HeaderValue, Request};
|
1049 1339 | use pretty_assertions::assert_eq;
|
1050 1340 | use proptest::proptest;
|
1051 1341 | use std::borrow::Cow;
|
1052 1342 | use std::iter;
|
1053 - | use std::time::Duration;
|
1054 1343 |
|
1055 1344 | macro_rules! assert_req_eq {
|
1056 1345 | (http: $expected:expr, $actual:expr) => {
|
1057 1346 | let mut expected = ($expected).map(|_b|"body");
|
1058 1347 | let mut actual = ($actual).map(|_b|"body");
|
1059 1348 | make_headers_comparable(&mut expected);
|
1060 1349 | make_headers_comparable(&mut actual);
|
1061 1350 | assert_eq!(format!("{:?}", expected), format!("{:?}", actual));
|
1062 1351 | };
|
1063 1352 | ($expected:tt, $actual:tt) => {
|
1064 1353 | assert_req_eq!(http: ($expected).as_http_request(), $actual);
|
1065 1354 | };
|
1066 1355 | }
|
1067 1356 |
|
1068 1357 | pub(crate) fn make_headers_comparable<B>(request: &mut Request<B>) {
|
1069 1358 | for (_name, value) in request.headers_mut() {
|
1070 1359 | value.set_sensitive(false);
|
1071 1360 | }
|
1072 1361 | }
|
1073 1362 |
|
1074 - | #[test]
|
1075 - | fn test_sign_vanilla_with_headers() {
|
1076 - | let settings = SigningSettings::default();
|
1077 - | let identity = &Credentials::for_tests().into();
|
1078 - | let params = v4::SigningParams {
|
1079 - | identity,
|
1080 - | region: "us-east-1",
|
1081 - | name: "service",
|
1082 - | time: parse_date_time("20150830T123600Z").unwrap(),
|
1083 - | settings,
|
1084 - | }
|
1085 - | .into();
|
1086 - |
|
1087 - | let original = test::v4::test_request("get-vanilla-query-order-key-case");
|
1088 - | let signable = SignableRequest::from(&original);
|
1089 - | let out = sign(signable, ¶ms).unwrap();
|
1090 - | assert_eq!(
|
1091 - | "5557820e7380d585310524bd93d51a08d7757fb5efd7344ee12088f2b0860947",
|
1092 - | out.signature
|
1093 - | );
|
1094 - |
|
1095 - | let mut signed = original.as_http_request();
|
1096 - | out.output.apply_to_request_http0x(&mut signed);
|
1097 - |
|
1098 - | let expected = test::v4::test_signed_request("get-vanilla-query-order-key-case");
|
1099 - | assert_req_eq!(expected, signed);
|
1100 - | }
|
1101 - |
|
1363 + | // Sigv4A suite tests
|
1102 1364 | #[cfg(feature = "sigv4a")]
|
1103 - | mod sigv4a_tests {
|
1104 - | use super::*;
|
1105 - | use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
|
1106 - | use crate::http_request::{sign, test, SigningParams};
|
1107 - | use crate::sign::v4a;
|
1108 - | use p256::ecdsa::signature::{Signature, Verifier};
|
1109 - | use p256::ecdsa::{DerSignature, SigningKey};
|
1110 - | use pretty_assertions::assert_eq;
|
1111 - |
|
1112 - | fn new_v4a_signing_params_from_context(
|
1113 - | test_context: &'_ test::v4a::TestContext,
|
1114 - | signature_location: SignatureLocation,
|
1115 - | ) -> SigningParams<'_> {
|
1116 - | let mut params = v4a::SigningParams::from(test_context);
|
1117 - | params.settings.signature_location = signature_location;
|
1118 - |
|
1119 - | params.into()
|
1120 - | }
|
1121 - |
|
1122 - | fn run_v4a_test_suite(test_name: &str, signature_location: SignatureLocation) {
|
1123 - | let tc = test::v4a::test_context(test_name);
|
1124 - | let params = new_v4a_signing_params_from_context(&tc, signature_location);
|
1125 - |
|
1126 - | let req = test::v4a::test_request(test_name);
|
1127 - | let expected_creq = test::v4a::test_canonical_request(test_name, signature_location);
|
1128 - | let signable_req = SignableRequest::from(&req);
|
1129 - | let actual_creq = CanonicalRequest::from(&signable_req, ¶ms).unwrap();
|
1365 + | mod v4a_suite {
|
1366 + | use crate::http_request::test::v4a::run_test_suite_v4a;
|
1130 1367 |
|
1131 - | assert_eq!(expected_creq, actual_creq.to_string(), "creq didn't match");
|
1132 - |
|
1133 - | let expected_string_to_sign =
|
1134 - | test::v4a::test_string_to_sign(test_name, signature_location);
|
1135 - | let hashed_creq = &v4::sha256_hex_string(actual_creq.to_string().as_bytes());
|
1136 - | let actual_string_to_sign = StringToSign::new_v4a(
|
1137 - | *params.time(),
|
1138 - | params.region_set().unwrap(),
|
1139 - | params.name(),
|
1140 - | hashed_creq,
|
1141 - | )
|
1142 - | .to_string();
|
1143 - |
|
1144 - | assert_eq!(
|
1145 - | expected_string_to_sign, actual_string_to_sign,
|
1146 - | "'string to sign' didn't match"
|
1147 - | );
|
1148 - |
|
1149 - | let out = sign(signable_req, ¶ms).unwrap();
|
1150 - | // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
|
1151 - | out.output
|
1152 - | .apply_to_request_http0x(&mut req.as_http_request());
|
1153 - |
|
1154 - | let creds = params.credentials().unwrap();
|
1155 - | let signing_key =
|
1156 - | v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
|
1157 - | let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
|
1158 - | let sig = sig
|
1159 - | .try_into()
|
1160 - | .expect("DER-style signatures are always convertible into fixed-size signatures");
|
1161 - |
|
1162 - | let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
|
1163 - | let peer_public_key = signing_key.verifying_key();
|
1164 - | let sts = actual_string_to_sign.as_bytes();
|
1165 - | peer_public_key.verify(sts, &sig).unwrap();
|
1368 + | #[test]
|
1369 + | fn test_get_header_key_duplicate() {
|
1370 + | run_test_suite_v4a("get-header-key-duplicate")
|
1166 1371 | }
|
1167 1372 |
|
1168 1373 | #[test]
|
1169 - | fn test_get_header_key_duplicate() {
|
1170 - | run_v4a_test_suite("get-header-key-duplicate", SignatureLocation::Headers);
|
1374 + | #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
|
1375 + | fn test_get_header_value_multiline() {
|
1376 + | run_test_suite_v4a("get-header-value-multiline")
|
1171 1377 | }
|
1172 1378 |
|
1173 1379 | #[test]
|
1174 1380 | fn test_get_header_value_order() {
|
1175 - | run_v4a_test_suite("get-header-value-order", SignatureLocation::Headers);
|
1381 + | run_test_suite_v4a("get-header-value-order")
|
1176 1382 | }
|
1177 1383 |
|
1178 1384 | #[test]
|
1179 1385 | fn test_get_header_value_trim() {
|
1180 - | run_v4a_test_suite("get-header-value-trim", SignatureLocation::Headers);
|
1386 + | run_test_suite_v4a("get-header-value-trim");
|
1181 1387 | }
|
1182 1388 |
|
1183 1389 | #[test]
|
1184 1390 | fn test_get_relative_normalized() {
|
1185 - | run_v4a_test_suite("get-relative-normalized", SignatureLocation::Headers);
|
1391 + | run_test_suite_v4a("get-relative-normalized");
|
1186 1392 | }
|
1187 1393 |
|
1188 1394 | #[test]
|
1189 1395 | fn test_get_relative_relative_normalized() {
|
1190 - | run_v4a_test_suite(
|
1191 - | "get-relative-relative-normalized",
|
1192 - | SignatureLocation::Headers,
|
1193 - | );
|
1396 + | run_test_suite_v4a("get-relative-relative-normalized");
|
1194 1397 | }
|
1195 1398 |
|
1196 1399 | #[test]
|
1197 1400 | fn test_get_relative_relative_unnormalized() {
|
1198 - | run_v4a_test_suite(
|
1199 - | "get-relative-relative-unnormalized",
|
1200 - | SignatureLocation::Headers,
|
1201 - | );
|
1401 + | run_test_suite_v4a("get-relative-relative-unnormalized");
|
1202 1402 | }
|
1203 1403 |
|
1204 1404 | #[test]
|
1205 1405 | fn test_get_relative_unnormalized() {
|
1206 - | run_v4a_test_suite("get-relative-unnormalized", SignatureLocation::Headers);
|
1406 + | run_test_suite_v4a("get-relative-unnormalized");
|
1207 1407 | }
|
1208 1408 |
|
1209 1409 | #[test]
|
1210 1410 | fn test_get_slash_dot_slash_normalized() {
|
1211 - | run_v4a_test_suite("get-slash-dot-slash-normalized", SignatureLocation::Headers);
|
1411 + | run_test_suite_v4a("get-slash-dot-slash-normalized");
|
1212 1412 | }
|
1213 1413 |
|
1214 1414 | #[test]
|
1215 1415 | fn test_get_slash_dot_slash_unnormalized() {
|
1216 - | run_v4a_test_suite(
|
1217 - | "get-slash-dot-slash-unnormalized",
|
1218 - | SignatureLocation::Headers,
|
1219 - | );
|
1416 + | run_test_suite_v4a("get-slash-dot-slash-unnormalized");
|
1220 1417 | }
|
1221 1418 |
|
1222 1419 | #[test]
|
1223 1420 | fn test_get_slash_normalized() {
|
1224 - | run_v4a_test_suite("get-slash-normalized", SignatureLocation::Headers);
|
1421 + | run_test_suite_v4a("get-slash-normalized");
|
1225 1422 | }
|
1226 1423 |
|
1227 1424 | #[test]
|
1228 1425 | fn test_get_slash_pointless_dot_normalized() {
|
1229 - | run_v4a_test_suite(
|
1230 - | "get-slash-pointless-dot-normalized",
|
1231 - | SignatureLocation::Headers,
|
1232 - | );
|
1426 + | run_test_suite_v4a("get-slash-pointless-dot-normalized");
|
1233 1427 | }
|
1234 1428 |
|
1235 1429 | #[test]
|
1236 1430 | fn test_get_slash_pointless_dot_unnormalized() {
|
1237 - | run_v4a_test_suite(
|
1238 - | "get-slash-pointless-dot-unnormalized",
|
1239 - | SignatureLocation::Headers,
|
1240 - | );
|
1431 + | run_test_suite_v4a("get-slash-pointless-dot-unnormalized");
|
1241 1432 | }
|
1242 1433 |
|
1243 1434 | #[test]
|
1244 1435 | fn test_get_slash_unnormalized() {
|
1245 - | run_v4a_test_suite("get-slash-unnormalized", SignatureLocation::Headers);
|
1436 + | run_test_suite_v4a("get-slash-unnormalized");
|
1246 1437 | }
|
1247 1438 |
|
1248 1439 | #[test]
|
1249 1440 | fn test_get_slashes_normalized() {
|
1250 - | run_v4a_test_suite("get-slashes-normalized", SignatureLocation::Headers);
|
1441 + | run_test_suite_v4a("get-slashes-normalized");
|
1251 1442 | }
|
1252 1443 |
|
1253 1444 | #[test]
|
1254 1445 | fn test_get_slashes_unnormalized() {
|
1255 - | run_v4a_test_suite("get-slashes-unnormalized", SignatureLocation::Headers);
|
1446 + | run_test_suite_v4a("get-slashes-unnormalized");
|
1447 + | }
|
1448 + |
|
1449 + | #[test]
|
1450 + | #[ignore = "relies on single encode of path segments"]
|
1451 + | // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
|
1452 + | // skipped until we add control over double_uri_encode in context.json
|
1453 + | fn test_get_space_normalized() {
|
1454 + | run_test_suite_v4a("get-space-normalized");
|
1455 + | }
|
1456 + |
|
1457 + | #[test]
|
1458 + | #[ignore = "httpparse fails on unencoded spaces in path"]
|
1459 + | // the input request has unencoded space ' ' in the path which fails to parse
|
1460 + | fn test_get_space_unnormalized() {
|
1461 + | run_test_suite_v4a("get-space-unnormalized");
|
1256 1462 | }
|
1257 1463 |
|
1258 1464 | #[test]
|
1259 1465 | fn test_get_unreserved() {
|
1260 - | run_v4a_test_suite("get-unreserved", SignatureLocation::Headers);
|
1466 + | run_test_suite_v4a("get-unreserved");
|
1467 + | }
|
1468 + |
|
1469 + | #[test]
|
1470 + | #[ignore = "httparse fails on invalid uri character"]
|
1471 + | // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
|
1472 + | fn test_get_utf8() {
|
1473 + | run_test_suite_v4a("get-utf8");
|
1261 1474 | }
|
1262 1475 |
|
1263 1476 | #[test]
|
1264 1477 | fn test_get_vanilla() {
|
1265 - | run_v4a_test_suite("get-vanilla", SignatureLocation::Headers);
|
1478 + | run_test_suite_v4a("get-vanilla");
|
1266 1479 | }
|
1267 1480 |
|
1268 1481 | #[test]
|
1269 1482 | fn test_get_vanilla_empty_query_key() {
|
1270 - | run_v4a_test_suite(
|
1271 - | "get-vanilla-empty-query-key",
|
1272 - | SignatureLocation::QueryParams,
|
1273 - | );
|
1483 + | run_test_suite_v4a("get-vanilla-empty-query-key");
|
1274 1484 | }
|
1275 1485 |
|
1276 1486 | #[test]
|
1277 1487 | fn test_get_vanilla_query() {
|
1278 - | run_v4a_test_suite("get-vanilla-query", SignatureLocation::QueryParams);
|
1488 + | run_test_suite_v4a("get-vanilla-query");
|
1489 + | }
|
1490 + |
|
1491 + | #[test]
|
1492 + | fn test_get_vanilla_query_order_encoded() {
|
1493 + | run_test_suite_v4a("get-vanilla-query-order-encoded");
|
1279 1494 | }
|
1280 1495 |
|
1281 1496 | #[test]
|
1282 1497 | fn test_get_vanilla_query_order_key_case() {
|
1283 - | run_v4a_test_suite(
|
1284 - | "get-vanilla-query-order-key-case",
|
1285 - | SignatureLocation::QueryParams,
|
1286 - | );
|
1498 + | run_test_suite_v4a("get-vanilla-query-order-key-case");
|
1287 1499 | }
|
1288 1500 |
|
1289 1501 | #[test]
|
1290 1502 | fn test_get_vanilla_query_unreserved() {
|
1291 - | run_v4a_test_suite(
|
1292 - | "get-vanilla-query-unreserved",
|
1293 - | SignatureLocation::QueryParams,
|
1294 - | );
|
1503 + | run_test_suite_v4a("get-vanilla-query-unreserved");
|
1504 + | }
|
1505 + |
|
1506 + | #[test]
|
1507 + | #[ignore = "httparse fails on invalid uri character"]
|
1508 + | // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
|
1509 + | fn test_get_vanilla_utf8_query() {
|
1510 + | run_test_suite_v4a("get-vanilla-utf8-query");
|
1295 1511 | }
|
1296 1512 |
|
1297 1513 | #[test]
|
1298 1514 | fn test_get_vanilla_with_session_token() {
|
1299 - | run_v4a_test_suite("get-vanilla-with-session-token", SignatureLocation::Headers);
|
1515 + | run_test_suite_v4a("get-vanilla-with-session-token")
|
1300 1516 | }
|
1301 1517 |
|
1302 1518 | #[test]
|
1303 1519 | fn test_post_header_key_case() {
|
1304 - | run_v4a_test_suite("post-header-key-case", SignatureLocation::Headers);
|
1520 + | run_test_suite_v4a("post-header-key-case");
|
1305 1521 | }
|
1306 1522 |
|
1307 1523 | #[test]
|
1308 1524 | fn test_post_header_key_sort() {
|
1309 - | run_v4a_test_suite("post-header-key-sort", SignatureLocation::Headers);
|
1525 + | run_test_suite_v4a("post-header-key-sort");
|
1310 1526 | }
|
1311 1527 |
|
1312 1528 | #[test]
|
1313 1529 | fn test_post_header_value_case() {
|
1314 - | run_v4a_test_suite("post-header-value-case", SignatureLocation::Headers);
|
1530 + | run_test_suite_v4a("post-header-value-case");
|
1315 1531 | }
|
1316 1532 |
|
1317 1533 | #[test]
|
1318 1534 | fn test_post_sts_header_after() {
|
1319 - | run_v4a_test_suite("post-sts-header-after", SignatureLocation::Headers);
|
1535 + | run_test_suite_v4a("post-sts-header-after");
|
1320 1536 | }
|
1321 1537 |
|
1322 1538 | #[test]
|
1323 1539 | fn test_post_sts_header_before() {
|
1324 - | run_v4a_test_suite("post-sts-header-before", SignatureLocation::Headers);
|
1540 + | run_test_suite_v4a("post-sts-header-before");
|
1325 1541 | }
|
1326 1542 |
|
1327 1543 | #[test]
|
1328 1544 | fn test_post_vanilla() {
|
1329 - | run_v4a_test_suite("post-vanilla", SignatureLocation::Headers);
|
1545 + | run_test_suite_v4a("post-vanilla");
|
1330 1546 | }
|
1331 1547 |
|
1332 1548 | #[test]
|
1333 1549 | fn test_post_vanilla_empty_query_value() {
|
1334 - | run_v4a_test_suite(
|
1335 - | "post-vanilla-empty-query-value",
|
1336 - | SignatureLocation::QueryParams,
|
1337 - | );
|
1550 + | run_test_suite_v4a("post-vanilla-empty-query-value");
|
1338 1551 | }
|
1339 1552 |
|
1340 1553 | #[test]
|
1341 1554 | fn test_post_vanilla_query() {
|
1342 - | run_v4a_test_suite("post-vanilla-query", SignatureLocation::QueryParams);
|
1555 + | run_test_suite_v4a("post-vanilla-query");
|
1343 1556 | }
|
1344 1557 |
|
1345 1558 | #[test]
|
1346 1559 | fn test_post_x_www_form_urlencoded() {
|
1347 - | run_v4a_test_suite("post-x-www-form-urlencoded", SignatureLocation::Headers);
|
1560 + | run_test_suite_v4a("post-x-www-form-urlencoded");
|
1348 1561 | }
|
1349 1562 |
|
1350 1563 | #[test]
|
1351 1564 | fn test_post_x_www_form_urlencoded_parameters() {
|
1352 - | run_v4a_test_suite(
|
1353 - | "post-x-www-form-urlencoded-parameters",
|
1354 - | SignatureLocation::QueryParams,
|
1355 - | );
|
1565 + | run_test_suite_v4a("post-x-www-form-urlencoded-parameters");
|
1356 1566 | }
|
1357 1567 | }
|
1358 1568 |
|
1359 1569 | #[test]
|
1360 1570 | fn test_sign_url_escape() {
|
1361 - | let test = "double-encode-path";
|
1571 + | let test = SigningSuiteTest::v4("double-encode-path");
|
1362 1572 | let settings = SigningSettings::default();
|
1363 1573 | let identity = &Credentials::for_tests().into();
|
1364 1574 | let params = v4::SigningParams {
|
1365 1575 | identity,
|
1366 1576 | region: "us-east-1",
|
1367 1577 | name: "service",
|
1368 1578 | time: parse_date_time("20150830T123600Z").unwrap(),
|
1369 1579 | settings,
|
1370 1580 | }
|
1371 1581 | .into();
|
1372 1582 |
|
1373 - | let original = test::v4::test_request(test);
|
1583 + | let original = test.request();
|
1374 1584 | let signable = SignableRequest::from(&original);
|
1375 1585 | let out = sign(signable, ¶ms).unwrap();
|
1376 1586 | assert_eq!(
|
1377 1587 | "57d157672191bac40bae387e48bbe14b15303c001fdbb01f4abf295dccb09705",
|
1378 1588 | out.signature
|
1379 1589 | );
|
1380 1590 |
|
1381 1591 | let mut signed = original.as_http_request();
|
1382 1592 | out.output.apply_to_request_http0x(&mut signed);
|
1383 1593 |
|
1384 - | let expected = test::v4::test_signed_request(test);
|
1385 - | assert_req_eq!(expected, signed);
|
1386 - | }
|
1387 - |
|
1388 - | #[test]
|
1389 - | fn test_sign_vanilla_with_query_params() {
|
1390 - | let settings = SigningSettings {
|
1391 - | signature_location: SignatureLocation::QueryParams,
|
1392 - | expires_in: Some(Duration::from_secs(35)),
|
1393 - | ..Default::default()
|
1394 - | };
|
1395 - | let identity = &Credentials::for_tests().into();
|
1396 - | let params = v4::SigningParams {
|
1397 - | identity,
|
1398 - | region: "us-east-1",
|
1399 - | name: "service",
|
1400 - | time: parse_date_time("20150830T123600Z").unwrap(),
|
1401 - | settings,
|
1402 - | }
|
1403 - | .into();
|
1404 - |
|
1405 - | let original = test::v4::test_request("get-vanilla-query-order-key-case");
|
1406 - | let signable = SignableRequest::from(&original);
|
1407 - | let out = sign(signable, ¶ms).unwrap();
|
1408 - | assert_eq!(
|
1409 - | "ecce208e4b4f7d7e3a4cc22ced6acc2ad1d170ee8ba87d7165f6fa4b9aff09ab",
|
1410 - | out.signature
|
1411 - | );
|
1412 - |
|
1413 - | let mut signed = original.as_http_request();
|
1414 - | out.output.apply_to_request_http0x(&mut signed);
|
1415 - |
|
1416 - | let expected =
|
1417 - | test::v4::test_signed_request_query_params("get-vanilla-query-order-key-case");
|
1594 + | let expected = test.signed_request(SignatureLocation::Headers);
|
1418 1595 | assert_req_eq!(expected, signed);
|
1419 1596 | }
|
1420 1597 |
|
1421 1598 | #[test]
|
1422 1599 | fn test_sign_headers_utf8() {
|
1423 1600 | let settings = SigningSettings::default();
|
1424 1601 | let identity = &Credentials::for_tests().into();
|
1425 1602 | let params = v4::SigningParams {
|
1426 1603 | identity,
|
1427 1604 | region: "us-east-1",
|
1428 1605 | name: "service",
|
1429 1606 | time: parse_date_time("20150830T123600Z").unwrap(),
|
1430 1607 | settings,
|
1431 1608 | }
|
1432 1609 | .into();
|
1433 1610 |
|
1434 1611 | let original = http0::Request::builder()
|
1435 1612 | .uri("https://some-endpoint.some-region.amazonaws.com")
|
1436 1613 | .header("some-header", HeaderValue::from_str("テスト").unwrap())
|
1437 1614 | .body("")
|
1438 1615 | .unwrap()
|
1439 1616 | .into();
|
1440 1617 | let signable = SignableRequest::from(&original);
|
1441 1618 | let out = sign(signable, ¶ms).unwrap();
|
1442 1619 | assert_eq!(
|
1443 1620 | "55e16b31f9bde5fd04f9d3b780dd2b5e5f11a5219001f91a8ca9ec83eaf1618f",
|
1444 1621 | out.signature
|
1445 1622 | );
|
1446 1623 |
|
1447 1624 | let mut signed = original.as_http_request();
|
1448 1625 | @@ -1138,31 +1028,236 @@ mod tests {
|
1449 1626 | let mut request = http::Request::builder()
|
1450 1627 | .uri("https://some-endpoint.some-region.amazonaws.com/some/path")
|
1451 1628 | .body("")
|
1452 1629 | .unwrap();
|
1453 1630 |
|
1454 1631 | instructions.apply_to_request_http1x(&mut request);
|
1455 1632 |
|
1456 1633 | assert_eq!(
|
1457 1634 | "/some/path?some-param=f%26o%3Fo&some-other-param%3F=bar",
|
1458 1635 | request.uri().path_and_query().unwrap().to_string()
|
1459 1636 | );
|
1460 1637 | }
|
1461 1638 |
|
1462 1639 | #[test]
|
1463 1640 | fn test_debug_signable_body() {
|
1464 1641 | let sut = SignableBody::Bytes(b"hello signable body");
|
1465 1642 | assert_eq!(
|
1466 1643 | "Bytes(\"** REDACTED **. To print 19 bytes of raw data, set environment variable `LOG_SIGNABLE_BODY=true`\")",
|
1467 1644 | format!("{sut:?}")
|
1468 1645 | );
|
1469 1646 |
|
1470 1647 | let sut = SignableBody::UnsignedPayload;
|
1471 1648 | assert_eq!("UnsignedPayload", format!("{sut:?}"));
|
1472 1649 |
|
1473 1650 | let sut = SignableBody::Precomputed("precomputed".to_owned());
|
1474 1651 | assert_eq!("Precomputed(\"precomputed\")", format!("{sut:?}"));
|
1475 1652 |
|
1476 1653 | let sut = SignableBody::StreamingUnsignedPayloadTrailer;
|
1477 1654 | assert_eq!("StreamingUnsignedPayloadTrailer", format!("{sut:?}"));
|
1478 1655 | }
|
1656 + |
|
1657 + | // v4 test suite
|
1658 + | mod v4_suite {
|
1659 + | use crate::http_request::test::run_test_suite_v4;
|
1660 + |
|
1661 + | #[test]
|
1662 + | fn test_get_header_key_duplicate() {
|
1663 + | run_test_suite_v4("get-header-key-duplicate");
|
1664 + | }
|
1665 + |
|
1666 + | #[test]
|
1667 + | #[ignore = "httpparse doesn't support parsing multiline headers since they are deprecated in RFC7230"]
|
1668 + | fn test_get_header_value_multiline() {
|
1669 + | run_test_suite_v4("get-header-value-multiline");
|
1670 + | }
|
1671 + |
|
1672 + | #[test]
|
1673 + | fn test_get_header_value_order() {
|
1674 + | run_test_suite_v4("get-header-value-order");
|
1675 + | }
|
1676 + |
|
1677 + | #[test]
|
1678 + | fn test_get_header_value_trim() {
|
1679 + | run_test_suite_v4("get-header-value-trim");
|
1680 + | }
|
1681 + |
|
1682 + | #[test]
|
1683 + | fn test_get_relative_normalized() {
|
1684 + | run_test_suite_v4("get-relative-normalized");
|
1685 + | }
|
1686 + |
|
1687 + | #[test]
|
1688 + | fn test_get_relative_relative_normalized() {
|
1689 + | run_test_suite_v4("get-relative-relative-normalized");
|
1690 + | }
|
1691 + |
|
1692 + | #[test]
|
1693 + | fn test_get_relative_relative_unnormalized() {
|
1694 + | run_test_suite_v4("get-relative-relative-unnormalized");
|
1695 + | }
|
1696 + |
|
1697 + | #[test]
|
1698 + | fn test_get_relative_unnormalized() {
|
1699 + | run_test_suite_v4("get-relative-unnormalized");
|
1700 + | }
|
1701 + |
|
1702 + | #[test]
|
1703 + | fn test_get_slash_dot_slash_normalized() {
|
1704 + | run_test_suite_v4("get-slash-dot-slash-normalized");
|
1705 + | }
|
1706 + |
|
1707 + | #[test]
|
1708 + | fn test_get_slash_dot_slash_unnormalized() {
|
1709 + | run_test_suite_v4("get-slash-dot-slash-unnormalized");
|
1710 + | }
|
1711 + |
|
1712 + | #[test]
|
1713 + | fn test_get_slash_normalized() {
|
1714 + | run_test_suite_v4("get-slash-normalized");
|
1715 + | }
|
1716 + |
|
1717 + | #[test]
|
1718 + | fn test_get_slash_pointless_dot_normalized() {
|
1719 + | run_test_suite_v4("get-slash-pointless-dot-normalized");
|
1720 + | }
|
1721 + |
|
1722 + | #[test]
|
1723 + | fn test_get_slash_pointless_dot_unnormalized() {
|
1724 + | run_test_suite_v4("get-slash-pointless-dot-unnormalized");
|
1725 + | }
|
1726 + |
|
1727 + | #[test]
|
1728 + | fn test_get_slash_unnormalized() {
|
1729 + | run_test_suite_v4("get-slash-unnormalized");
|
1730 + | }
|
1731 + |
|
1732 + | #[test]
|
1733 + | fn test_get_slashes_normalized() {
|
1734 + | run_test_suite_v4("get-slashes-normalized");
|
1735 + | }
|
1736 + |
|
1737 + | #[test]
|
1738 + | fn test_get_slashes_unnormalized() {
|
1739 + | run_test_suite_v4("get-slashes-unnormalized");
|
1740 + | }
|
1741 + |
|
1742 + | #[test]
|
1743 + | #[ignore = "relies on single encode of path segments"]
|
1744 + | // rely on single encoding of path segments, i.e. string-to-sign contains %20 for spaces rather than %25%20 as it should.
|
1745 + | // skipped until we add control over double_uri_encode in context.json
|
1746 + | fn test_get_space_normalized() {
|
1747 + | run_test_suite_v4("get-space-normalized");
|
1748 + | }
|
1749 + |
|
1750 + | #[test]
|
1751 + | #[ignore = "httpparse fails on unencoded spaces in path"]
|
1752 + | // the input request has unencoded space ' ' in the path which fails to parse
|
1753 + | fn test_get_space_unnormalized() {
|
1754 + | run_test_suite_v4("get-space-unnormalized");
|
1755 + | }
|
1756 + |
|
1757 + | #[test]
|
1758 + | fn test_get_unreserved() {
|
1759 + | run_test_suite_v4("get-unreserved");
|
1760 + | }
|
1761 + |
|
1762 + | #[test]
|
1763 + | #[ignore = "httparse fails on invalid uri character"]
|
1764 + | // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
|
1765 + | fn test_get_utf8() {
|
1766 + | run_test_suite_v4("get-utf8");
|
1767 + | }
|
1768 + |
|
1769 + | #[test]
|
1770 + | fn test_get_vanilla() {
|
1771 + | run_test_suite_v4("get-vanilla");
|
1772 + | }
|
1773 + |
|
1774 + | #[test]
|
1775 + | fn test_get_vanilla_empty_query_key() {
|
1776 + | run_test_suite_v4("get-vanilla-empty-query-key");
|
1777 + | }
|
1778 + |
|
1779 + | #[test]
|
1780 + | fn test_get_vanilla_query() {
|
1781 + | run_test_suite_v4("get-vanilla-query");
|
1782 + | }
|
1783 + |
|
1784 + | #[test]
|
1785 + | fn test_get_vanilla_query_order_encoded() {
|
1786 + | run_test_suite_v4("get-vanilla-query-order-encoded");
|
1787 + | }
|
1788 + |
|
1789 + | #[test]
|
1790 + | fn test_get_vanilla_query_order_key_case() {
|
1791 + | run_test_suite_v4("get-vanilla-query-order-key-case");
|
1792 + | }
|
1793 + |
|
1794 + | #[test]
|
1795 + | fn test_get_vanilla_query_unreserved() {
|
1796 + | run_test_suite_v4("get-vanilla-query-unreserved");
|
1797 + | }
|
1798 + |
|
1799 + | #[test]
|
1800 + | #[ignore = "httparse fails on invalid uri character"]
|
1801 + | // relies on /ሴ canonicalized as /%E1%88%B4 when it should be /%25%E1%25%88%25%B4
|
1802 + | fn test_get_vanilla_utf8_query() {
|
1803 + | run_test_suite_v4("get-vanilla-utf8-query");
|
1804 + | }
|
1805 + |
|
1806 + | #[test]
|
1807 + | fn test_get_vanilla_with_session_token() {
|
1808 + | run_test_suite_v4("get-vanilla-with-session-token");
|
1809 + | }
|
1810 + |
|
1811 + | #[test]
|
1812 + | fn test_post_header_key_case() {
|
1813 + | run_test_suite_v4("post-header-key-case");
|
1814 + | }
|
1815 + |
|
1816 + | #[test]
|
1817 + | fn test_post_header_key_sort() {
|
1818 + | run_test_suite_v4("post-header-key-sort");
|
1819 + | }
|
1820 + |
|
1821 + | #[test]
|
1822 + | fn test_post_header_value_case() {
|
1823 + | run_test_suite_v4("post-header-value-case");
|
1824 + | }
|
1825 + |
|
1826 + | #[test]
|
1827 + | fn test_post_sts_header_after() {
|
1828 + | run_test_suite_v4("post-sts-header-after");
|
1829 + | }
|
1830 + |
|
1831 + | #[test]
|
1832 + | fn test_post_sts_header_before() {
|
1833 + | run_test_suite_v4("post-sts-header-before");
|
1834 + | }
|
1835 + |
|
1836 + | #[test]
|
1837 + | fn test_post_vanilla() {
|
1838 + | run_test_suite_v4("post-vanilla");
|
1839 + | }
|
1840 + |
|
1841 + | #[test]
|
1842 + | fn test_post_vanilla_empty_query_value() {
|
1843 + | run_test_suite_v4("post-vanilla-empty-query-value");
|
1844 + | }
|
1845 + |
|
1846 + | #[test]
|
1847 + | fn test_post_vanilla_query() {
|
1848 + | run_test_suite_v4("post-vanilla-query");
|
1849 + | }
|
1850 + |
|
1851 + | #[test]
|
1852 + | fn test_post_x_www_form_urlencoded() {
|
1853 + | run_test_suite_v4("post-x-www-form-urlencoded");
|
1854 + | }
|
1855 + |
|
1856 + | #[test]
|
1857 + | fn test_post_x_www_form_urlencoded_parameters() {
|
1858 + | run_test_suite_v4("post-x-www-form-urlencoded-parameters");
|
1859 + | }
|
1860 + | }
|
1479 1861 | }
|
1480 1862 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
|
1481 1863 | index be6c496..86eec20 100644
|
1482 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
|
1864 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/http_request/test.rs
|
1483 1865 | @@ -1,242 +1,453 @@
|
1484 1866 | /*
|
1485 1867 | * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
1486 1868 | * SPDX-License-Identifier: Apache-2.0
|
1487 1869 | */
|
1488 1870 |
|
1489 1871 | //! Functions shared between the tests of several modules.
|
1490 1872 |
|
1491 - | use crate::http_request::{SignableBody, SignableRequest};
|
1873 + | use crate::http_request::canonical_request::{CanonicalRequest, StringToSign};
|
1874 + | use crate::http_request::{
|
1875 + | PayloadChecksumKind, SessionTokenMode, SignableBody, SignableRequest, SignatureLocation,
|
1876 + | SigningSettings,
|
1877 + | };
|
1878 + | use aws_credential_types::Credentials;
|
1879 + | use aws_smithy_runtime_api::client::identity::Identity;
|
1492 1880 | use http0::{Method, Uri};
|
1881 + | use std::borrow::Cow;
|
1493 1882 | use std::error::Error as StdError;
|
1883 + | use std::time::{Duration, SystemTime};
|
1884 + | use time::format_description::well_known::Rfc3339;
|
1885 + | use time::OffsetDateTime;
|
1886 + |
|
1887 + | /// Common test suite collection
|
1888 + | #[derive(Debug, Clone, Copy, Eq, PartialEq)]
|
1889 + | enum Collection {
|
1890 + | V4,
|
1891 + | V4A,
|
1892 + | }
|
1494 1893 |
|
1495 - | pub(crate) mod v4 {
|
1496 - | use super::*;
|
1894 + | /// A test from the common CRT test suite
|
1895 + | #[derive(Debug, Clone)]
|
1896 + | pub(crate) struct SigningSuiteTest {
|
1897 + | test_name: &'static str,
|
1898 + | collection: Collection,
|
1899 + | }
|
1497 1900 |
|
1498 - | fn path(name: &str, ext: &str) -> String {
|
1499 - | format!("aws-sig-v4-test-suite/{}/{}.{}", name, name, ext)
|
1901 + | impl SigningSuiteTest {
|
1902 + | /// Create a new test from the V4 test suite
|
1903 + | pub(crate) fn v4(test_name: &'static str) -> Self {
|
1904 + | Self {
|
1905 + | test_name,
|
1906 + | collection: Collection::V4,
|
1500 1907 | }
|
1501 - |
|
1502 - | pub(crate) fn test_canonical_request(name: &str) -> String {
|
1503 - | // Tests fail if there's a trailing newline in the file, and pre-commit requires trailing newlines
|
1504 - | read(&path(name, "creq")).trim().to_string()
|
1505 1908 | }
|
1506 1909 |
|
1507 - | pub(crate) fn test_sts(name: &str) -> String {
|
1508 - | read(&path(name, "sts"))
|
1910 + | /// Create a new test from the V4a test suite
|
1911 + | pub(crate) fn v4a(test_name: &'static str) -> Self {
|
1912 + | Self {
|
1913 + | test_name,
|
1914 + | collection: Collection::V4A,
|
1509 1915 | }
|
1510 - |
|
1511 - | pub(crate) fn test_request(name: &str) -> TestRequest {
|
1512 - | test_parsed_request(name, "req")
|
1513 1916 | }
|
1514 1917 |
|
1515 - | pub(crate) fn test_signed_request(name: &str) -> TestRequest {
|
1516 - | test_parsed_request(name, "sreq")
|
1918 + | /// Get the path to a file in this test suite directory
|
1919 + | fn path(&self, filename: &str) -> String {
|
1920 + | let dir = match self.collection {
|
1921 + | Collection::V4 => "v4",
|
1922 + | Collection::V4A => "v4a",
|
1923 + | };
|
1924 + | format!("aws-signing-test-suite/{dir}/{}/{filename}", self.test_name)
|
1517 1925 | }
|
1518 1926 |
|
1519 - | pub(crate) fn test_signed_request_query_params(name: &str) -> TestRequest {
|
1520 - | test_parsed_request(name, "qpsreq")
|
1927 + | /// Get the HTTP request for the test
|
1928 + | pub(crate) fn request(&self) -> TestRequest {
|
1929 + | test_parsed_request(&self.path("request.txt"))
|
1521 1930 | }
|
1522 1931 |
|
1523 - | fn test_parsed_request(name: &str, ext: &str) -> TestRequest {
|
1524 - | let path = path(name, ext);
|
1525 - | match parse_request(read(&path).as_bytes()) {
|
1526 - | Ok(parsed) => parsed,
|
1527 - | Err(err) => panic!("Failed to parse {}: {}", path, err),
|
1932 + | /// Get the signed HTTP request for the test
|
1933 + | pub(crate) fn signed_request(&self, signature_location: SignatureLocation) -> TestRequest {
|
1934 + | match signature_location {
|
1935 + | SignatureLocation::QueryParams => {
|
1936 + | test_parsed_request(&self.path("query-signed-request.txt"))
|
1528 1937 | }
|
1938 + | SignatureLocation::Headers => {
|
1939 + | test_parsed_request(&self.path("header-signed-request.txt"))
|
1529 1940 | }
|
1530 - |
|
1531 - | #[test]
|
1532 - | fn test_parse() {
|
1533 - | test_request("post-header-key-case");
|
1534 1941 | }
|
1535 - |
|
1536 - | #[test]
|
1537 - | fn test_read_query_params() {
|
1538 - | test_request("get-vanilla-query-order-key-case");
|
1539 1942 | }
|
1540 - | }
|
1541 - |
|
1542 - | #[cfg(feature = "sigv4a")]
|
1543 - | pub(crate) mod v4a {
|
1544 - | use super::*;
|
1545 - | use crate::http_request::{
|
1546 - | PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
|
1547 - | };
|
1548 - | use aws_credential_types::Credentials;
|
1549 - | use aws_smithy_runtime_api::client::identity::Identity;
|
1550 - | use serde_derive::Deserialize;
|
1551 - | use std::time::{Duration, SystemTime};
|
1552 - | use time::format_description::well_known::Rfc3339;
|
1553 - | use time::OffsetDateTime;
|
1554 1943 |
|
1555 - | fn path(test_name: &str, definition_name: &str) -> String {
|
1556 - | format!("aws-sig-v4a-test-suite/{test_name}/{definition_name}.txt")
|
1944 + | /// Get the canonical request for the test
|
1945 + | pub(crate) fn canonical_request(&self, signature_location: SignatureLocation) -> String {
|
1946 + | match signature_location {
|
1947 + | SignatureLocation::QueryParams => read(&self.path("query-canonical-request.txt")),
|
1948 + | SignatureLocation::Headers => read(&self.path("header-canonical-request.txt")),
|
1557 1949 | }
|
1558 - |
|
1559 - | pub(crate) fn test_request(name: &str) -> TestRequest {
|
1560 - | test_parsed_request(&path(name, "request"))
|
1561 1950 | }
|
1562 1951 |
|
1563 - | pub(crate) fn test_canonical_request(
|
1564 - | name: &str,
|
1565 - | signature_location: SignatureLocation,
|
1566 - | ) -> String {
|
1952 + | /// Get the string to sign for the test
|
1953 + | pub(crate) fn string_to_sign(&self, signature_location: SignatureLocation) -> String {
|
1567 1954 | match signature_location {
|
1568 - | SignatureLocation::QueryParams => read(&path(name, "query-canonical-request")),
|
1569 - | SignatureLocation::Headers => read(&path(name, "header-canonical-request")),
|
1955 + | SignatureLocation::QueryParams => read(&self.path("query-string-to-sign.txt")),
|
1956 + | SignatureLocation::Headers => read(&self.path("header-string-to-sign.txt")),
|
1570 1957 | }
|
1571 1958 | }
|
1572 1959 |
|
1573 - | pub(crate) fn test_string_to_sign(name: &str, signature_location: SignatureLocation) -> String {
|
1960 + | /// Get the signature for the test
|
1961 + | pub(crate) fn signature(&self, signature_location: SignatureLocation) -> String {
|
1574 1962 | match signature_location {
|
1575 - | SignatureLocation::QueryParams => read(&path(name, "query-string-to-sign")),
|
1576 - | SignatureLocation::Headers => read(&path(name, "header-string-to-sign")),
|
1963 + | SignatureLocation::QueryParams => read(&self.path("query-signature.txt")),
|
1964 + | SignatureLocation::Headers => read(&self.path("header-signature.txt")),
|
1965 + | }
|
1577 1966 | }
|
1967 + |
|
1968 + | /// Get the test context for the test
|
1969 + | pub(crate) fn context(&self) -> TestContext {
|
1970 + | let context = read(&self.path("context.json"));
|
1971 + | let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
|
1972 + | tc_builder.build()
|
1578 1973 | }
|
1974 + | }
|
1579 1975 |
|
1580 - | fn test_parsed_request(path: &str) -> TestRequest {
|
1976 + | fn test_parsed_request(path: &str) -> TestRequest {
|
1581 1977 | match parse_request(read(path).as_bytes()) {
|
1582 1978 | Ok(parsed) => parsed,
|
1583 1979 | Err(err) => panic!("Failed to parse {}: {}", path, err),
|
1584 1980 | }
|
1585 - | }
|
1981 + | }
|
1586 1982 |
|
1587 - | pub(crate) fn test_context(test_name: &str) -> TestContext {
|
1588 - | let path = format!("aws-sig-v4a-test-suite/{test_name}/context.json");
|
1589 - | let context = read(&path);
|
1590 - | let tc_builder: TestContextBuilder = serde_json::from_str(&context).unwrap();
|
1591 - | tc_builder.build()
|
1592 - | }
|
1983 + | fn new_v4_signing_params_from_context(
|
1984 + | test_context: &'_ TestContext,
|
1985 + | signature_location: SignatureLocation,
|
1986 + | ) -> crate::http_request::SigningParams<'_> {
|
1987 + | let mut params = crate::sign::v4::SigningParams::from(test_context);
|
1988 + | params.settings.signature_location = signature_location;
|
1989 + | params.into()
|
1990 + | }
|
1991 + |
|
1992 + | /// Run the given test from the v4 suite for both header and query
|
1993 + | /// signature locations
|
1994 + | pub(crate) fn run_test_suite_v4(test_name: &'static str) {
|
1995 + | run_v4_test(test_name, SignatureLocation::Headers);
|
1996 + | run_v4_test(test_name, SignatureLocation::QueryParams);
|
1997 + | }
|
1998 + |
|
1999 + | fn assert_uri_eq(expected: &Uri, actual: &Uri) {
|
2000 + | assert_eq!(expected.scheme(), actual.scheme());
|
2001 + | assert_eq!(expected.authority(), actual.authority());
|
2002 + | assert_eq!(expected.path(), actual.path());
|
2003 + |
|
2004 + | // query params may be out of order
|
2005 + | let mut expected_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
|
2006 + | form_urlencoded::parse(expected.query().unwrap_or_default().as_bytes()).collect();
|
2007 + | expected_params.sort();
|
2008 + |
|
2009 + | let mut actual_params: Vec<(Cow<'_, str>, Cow<'_, str>)> =
|
2010 + | form_urlencoded::parse(actual.query().unwrap_or_default().as_bytes()).collect();
|
2011 + | actual_params.sort();
|
2012 + |
|
2013 + | assert_eq!(expected_params, actual_params);
|
2014 + | }
|
1593 2015 |
|
1594 - | pub(crate) struct TestContext {
|
2016 + | fn assert_requests_eq(expected: TestRequest, actual: http0::Request<&str>) {
|
2017 + | let expected = expected.as_http_request();
|
2018 + | let actual = actual;
|
2019 + | assert_eq!(expected.method(), actual.method());
|
2020 + | assert_eq!(
|
2021 + | expected.headers().len(),
|
2022 + | actual.headers().len(),
|
2023 + | "extra or missing headers"
|
2024 + | );
|
2025 + | assert_eq!(expected.headers(), actual.headers(), "headers mismatch");
|
2026 + | assert_uri_eq(expected.uri(), actual.uri());
|
2027 + | assert_eq!(*expected.body(), *actual.body(), "body mismatch");
|
2028 + | }
|
2029 + |
|
2030 + | /// Run the given test from the v4 suite for the given signature location
|
2031 + | pub(crate) fn run_v4_test(test_name: &'static str, signature_location: SignatureLocation) {
|
2032 + | let test = SigningSuiteTest::v4(test_name);
|
2033 + | let tc = test.context();
|
2034 + | let params = new_v4_signing_params_from_context(&tc, signature_location);
|
2035 + |
|
2036 + | let req = test.request();
|
2037 + | let expected_creq = test.canonical_request(signature_location);
|
2038 + | let signable_req = SignableRequest::from(&req);
|
2039 + | let actual_creq = CanonicalRequest::from(&signable_req, ¶ms).unwrap();
|
2040 + |
|
2041 + | // check canonical request
|
2042 + | assert_eq!(
|
2043 + | expected_creq,
|
2044 + | actual_creq.to_string(),
|
2045 + | "canonical request didn't match (signature location: {signature_location:?})"
|
2046 + | );
|
2047 + |
|
2048 + | let expected_string_to_sign = test.string_to_sign(signature_location);
|
2049 + | let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
|
2050 + | let actual_string_to_sign = StringToSign::new_v4(
|
2051 + | *params.time(),
|
2052 + | params.region().unwrap(),
|
2053 + | params.name(),
|
2054 + | hashed_creq,
|
2055 + | )
|
2056 + | .to_string();
|
2057 + |
|
2058 + | // check string to sign
|
2059 + | assert_eq!(
|
2060 + | expected_string_to_sign, actual_string_to_sign,
|
2061 + | "'string to sign' didn't match (signature location: {signature_location:?})"
|
2062 + | );
|
2063 + |
|
2064 + | let out = crate::http_request::sign(signable_req, ¶ms).unwrap();
|
2065 + | let mut signed = req.as_http_request();
|
2066 + | out.output.apply_to_request_http0x(&mut signed);
|
2067 + |
|
2068 + | // check signature
|
2069 + | assert_eq!(
|
2070 + | test.signature(signature_location),
|
2071 + | out.signature,
|
2072 + | "signature didn't match (signature location: {signature_location:?})"
|
2073 + | );
|
2074 + |
|
2075 + | let expected = test.signed_request(signature_location);
|
2076 + | assert_requests_eq(expected, signed);
|
2077 + | }
|
2078 + |
|
2079 + | /// Test suite context.json
|
2080 + | pub(crate) struct TestContext {
|
1595 2081 | pub(crate) identity: Identity,
|
1596 2082 | pub(crate) expiration_in_seconds: u64,
|
1597 2083 | pub(crate) normalize: bool,
|
1598 2084 | pub(crate) region: String,
|
1599 2085 | pub(crate) service: String,
|
1600 2086 | pub(crate) timestamp: String,
|
1601 2087 | pub(crate) omit_session_token: bool,
|
1602 2088 | pub(crate) sign_body: bool,
|
1603 - | }
|
1604 - |
|
1605 - | impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
|
1606 - | fn from(tc: &'a TestContext) -> Self {
|
1607 - | crate::sign::v4a::SigningParams {
|
1608 - | identity: &tc.identity,
|
1609 - | region_set: &tc.region,
|
1610 - | name: &tc.service,
|
1611 - | time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
|
1612 - | .unwrap()
|
1613 - | .into(),
|
1614 - | settings: SigningSettings {
|
1615 - | // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
1616 - | expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
|
1617 - | uri_path_normalization_mode: tc.normalize.into(),
|
1618 - | session_token_mode: if tc.omit_session_token {
|
1619 - | SessionTokenMode::Exclude
|
1620 - | } else {
|
1621 - | SessionTokenMode::Include
|
1622 - | },
|
1623 - | payload_checksum_kind: if tc.sign_body {
|
1624 - | PayloadChecksumKind::XAmzSha256
|
1625 - | } else {
|
1626 - | PayloadChecksumKind::NoHeader
|
1627 - | },
|
1628 - | ..Default::default()
|
1629 - | },
|
1630 - | }
|
1631 - | }
|
1632 - | }
|
2089 + | }
|
1633 2090 |
|
1634 - | // Serde has limitations requiring this odd workaround.
|
1635 - | // See https://github.com/serde-rs/serde/issues/368 for more info.
|
1636 - | fn return_true() -> bool {
|
2091 + | // Serde has limitations requiring this odd workaround.
|
2092 + | // See https://github.com/serde-rs/serde/issues/368 for more info.
|
2093 + | fn return_true() -> bool {
|
1637 2094 | true
|
1638 - | }
|
2095 + | }
|
1639 2096 |
|
1640 - | #[derive(Deserialize)]
|
1641 - | pub(crate) struct TestContextBuilder {
|
2097 + | #[derive(serde_derive::Deserialize)]
|
2098 + | pub(crate) struct TestContextBuilder {
|
1642 2099 | credentials: TestContextCreds,
|
1643 2100 | expiration_in_seconds: u64,
|
1644 2101 | normalize: bool,
|
1645 2102 | region: String,
|
1646 2103 | service: String,
|
1647 2104 | timestamp: String,
|
1648 2105 | #[serde(default)]
|
1649 2106 | omit_session_token: bool,
|
1650 2107 | #[serde(default = "return_true")]
|
1651 2108 | sign_body: bool,
|
1652 - | }
|
2109 + | }
|
1653 2110 |
|
1654 - | impl TestContextBuilder {
|
2111 + | impl TestContextBuilder {
|
1655 2112 | pub(crate) fn build(self) -> TestContext {
|
1656 2113 | let identity = Identity::new(
|
1657 2114 | Credentials::from_keys(
|
1658 2115 | &self.credentials.access_key_id,
|
1659 2116 | &self.credentials.secret_access_key,
|
1660 2117 | self.credentials.token.clone(),
|
1661 2118 | ),
|
1662 2119 | Some(SystemTime::UNIX_EPOCH + Duration::from_secs(self.expiration_in_seconds)),
|
1663 2120 | );
|
1664 2121 |
|
1665 2122 | TestContext {
|
1666 2123 | identity,
|
1667 2124 | expiration_in_seconds: self.expiration_in_seconds,
|
1668 2125 | normalize: self.normalize,
|
1669 2126 | region: self.region,
|
1670 2127 | service: self.service,
|
1671 2128 | timestamp: self.timestamp,
|
1672 2129 | omit_session_token: self.omit_session_token,
|
1673 2130 | sign_body: self.sign_body,
|
1674 2131 | }
|
1675 2132 | }
|
1676 - | }
|
2133 + | }
|
1677 2134 |
|
1678 - | #[derive(Deserialize)]
|
1679 - | pub(crate) struct TestContextCreds {
|
2135 + | #[derive(serde_derive::Deserialize)]
|
2136 + | pub(crate) struct TestContextCreds {
|
1680 2137 | access_key_id: String,
|
1681 2138 | secret_access_key: String,
|
1682 2139 | token: Option<String>,
|
2140 + | }
|
2141 + |
|
2142 + | impl<'a> From<&'a TestContext> for crate::sign::v4::SigningParams<'a, SigningSettings> {
|
2143 + | fn from(tc: &'a TestContext) -> Self {
|
2144 + | crate::sign::v4::SigningParams {
|
2145 + | identity: &tc.identity,
|
2146 + | region: &tc.region,
|
2147 + | name: &tc.service,
|
2148 + | time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
|
2149 + | .unwrap()
|
2150 + | .into(),
|
2151 + | settings: SigningSettings {
|
2152 + | // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
2153 + | expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
|
2154 + | uri_path_normalization_mode: tc.normalize.into(),
|
2155 + | session_token_mode: if tc.omit_session_token {
|
2156 + | SessionTokenMode::Exclude
|
2157 + | } else {
|
2158 + | SessionTokenMode::Include
|
2159 + | },
|
2160 + | payload_checksum_kind: if tc.sign_body {
|
2161 + | PayloadChecksumKind::XAmzSha256
|
2162 + | } else {
|
2163 + | PayloadChecksumKind::NoHeader
|
2164 + | },
|
2165 + | ..Default::default()
|
2166 + | },
|
2167 + | }
|
2168 + | }
|
2169 + | }
|
2170 + |
|
2171 + | #[cfg(feature = "sigv4a")]
|
2172 + | pub(crate) mod v4a {
|
2173 + | use super::*;
|
2174 + | use crate::http_request::{
|
2175 + | sign, PayloadChecksumKind, SessionTokenMode, SignatureLocation, SigningSettings,
|
2176 + | };
|
2177 + | use crate::sign::v4a;
|
2178 + | use p256::ecdsa::signature::{Signature, Verifier};
|
2179 + | use p256::ecdsa::{DerSignature, SigningKey};
|
2180 + | use std::time::Duration;
|
2181 + | use time::format_description::well_known::Rfc3339;
|
2182 + | use time::OffsetDateTime;
|
2183 + |
|
2184 + | fn new_v4a_signing_params_from_context(
|
2185 + | test_context: &'_ TestContext,
|
2186 + | signature_location: SignatureLocation,
|
2187 + | ) -> crate::http_request::SigningParams<'_> {
|
2188 + | let mut params = crate::sign::v4a::SigningParams::from(test_context);
|
2189 + | params.settings.signature_location = signature_location;
|
2190 + | params.into()
|
2191 + | }
|
2192 + |
|
2193 + | pub(crate) fn run_test_suite_v4a(test_name: &'static str) {
|
2194 + | run_v4a_test(test_name, SignatureLocation::Headers);
|
2195 + | run_v4a_test(test_name, SignatureLocation::QueryParams);
|
2196 + | }
|
2197 + |
|
2198 + | pub(crate) fn run_v4a_test(test_name: &'static str, signature_location: SignatureLocation) {
|
2199 + | let test = SigningSuiteTest::v4a(test_name);
|
2200 + | let tc = test.context();
|
2201 + | let params = new_v4a_signing_params_from_context(&tc, signature_location);
|
2202 + |
|
2203 + | let req = test.request();
|
2204 + | let expected_creq = test.canonical_request(signature_location);
|
2205 + | let signable_req = SignableRequest::from(&req);
|
2206 + | let actual_creq = CanonicalRequest::from(&signable_req, ¶ms).unwrap();
|
2207 + |
|
2208 + | assert_eq!(
|
2209 + | expected_creq,
|
2210 + | actual_creq.to_string(),
|
2211 + | "canonical request didn't match (signature location: {signature_location:?})"
|
2212 + | );
|
2213 + |
|
2214 + | let expected_string_to_sign = test.string_to_sign(signature_location);
|
2215 + | let hashed_creq = &crate::sign::v4::sha256_hex_string(actual_creq.to_string().as_bytes());
|
2216 + | let actual_string_to_sign = StringToSign::new_v4a(
|
2217 + | *params.time(),
|
2218 + | params.region_set().unwrap(),
|
2219 + | params.name(),
|
2220 + | hashed_creq,
|
2221 + | )
|
2222 + | .to_string();
|
2223 + |
|
2224 + | assert_eq!(
|
2225 + | expected_string_to_sign, actual_string_to_sign,
|
2226 + | "'string to sign' didn't match (signature location: {signature_location:?})"
|
2227 + | );
|
2228 + |
|
2229 + | let out = sign(signable_req, ¶ms).unwrap();
|
2230 + | // Sigv4a signatures are non-deterministic, so we can't compare the signature directly.
|
2231 + | out.output
|
2232 + | .apply_to_request_http0x(&mut req.as_http_request());
|
2233 + |
|
2234 + | let creds = params.credentials().unwrap();
|
2235 + | let signing_key =
|
2236 + | v4a::generate_signing_key(creds.access_key_id(), creds.secret_access_key());
|
2237 + | let sig = DerSignature::from_bytes(&hex::decode(out.signature).unwrap()).unwrap();
|
2238 + | let sig = sig
|
2239 + | .try_into()
|
2240 + | .expect("DER-style signatures are always convertible into fixed-size signatures");
|
2241 + |
|
2242 + | let signing_key = SigningKey::from_bytes(signing_key.as_ref()).unwrap();
|
2243 + | let peer_public_key = signing_key.verifying_key();
|
2244 + | let sts = actual_string_to_sign.as_bytes();
|
2245 + | peer_public_key.verify(sts, &sig).unwrap();
|
2246 + | // TODO(sigv4a) - use public.key.json as verifying key?
|
2247 + | }
|
2248 + |
|
2249 + | impl<'a> From<&'a TestContext> for crate::sign::v4a::SigningParams<'a, SigningSettings> {
|
2250 + | fn from(tc: &'a TestContext) -> Self {
|
2251 + | crate::sign::v4a::SigningParams {
|
2252 + | identity: &tc.identity,
|
2253 + | region_set: &tc.region,
|
2254 + | name: &tc.service,
|
2255 + | time: OffsetDateTime::parse(&tc.timestamp, &Rfc3339)
|
2256 + | .unwrap()
|
2257 + | .into(),
|
2258 + | settings: SigningSettings {
|
2259 + | // payload_checksum_kind: PayloadChecksumKind::XAmzSha256,
|
2260 + | expires_in: Some(Duration::from_secs(tc.expiration_in_seconds)),
|
2261 + | uri_path_normalization_mode: tc.normalize.into(),
|
2262 + | session_token_mode: if tc.omit_session_token {
|
2263 + | SessionTokenMode::Exclude
|
2264 + | } else {
|
2265 + | SessionTokenMode::Include
|
2266 + | },
|
2267 + | payload_checksum_kind: if tc.sign_body {
|
2268 + | PayloadChecksumKind::XAmzSha256
|
2269 + | } else {
|
2270 + | PayloadChecksumKind::NoHeader
|
2271 + | },
|
2272 + | ..Default::default()
|
2273 + | },
|
2274 + | }
|
2275 + | }
|
1683 2276 | }
|
1684 2277 |
|
1685 2278 | #[test]
|
1686 2279 | fn test_parse() {
|
1687 - | let req = test_request("post-header-key-case");
|
2280 + | let req = SigningSuiteTest::v4a("post-header-key-case").request();
|
1688 2281 | assert_eq!(req.method, "POST");
|
1689 2282 | assert_eq!(req.uri, "https://example.amazonaws.com/");
|
1690 2283 | assert!(req.headers.is_empty());
|
1691 2284 | }
|
1692 2285 |
|
1693 2286 | #[test]
|
1694 2287 | fn test_read_query_params() {
|
1695 - | let req = test_request("get-header-value-trim");
|
2288 + | let req = SigningSuiteTest::v4a("get-header-value-trim").request();
|
1696 2289 | assert_eq!(req.method, "GET");
|
1697 2290 | assert_eq!(req.uri, "https://example.amazonaws.com/");
|
1698 2291 | assert!(!req.headers.is_empty());
|
1699 2292 | }
|
1700 2293 | }
|
1701 2294 |
|
1702 2295 | fn read(path: &str) -> String {
|
1703 2296 | println!("Loading `{}` for test case...", path);
|
1704 2297 | let v = {
|
1705 2298 | match std::fs::read_to_string(path) {
|
1706 2299 | // This replacement is necessary for tests to pass on Windows, as reading the
|
1707 2300 | // test snapshots from the file system results in CRLF line endings being inserted.
|
1708 2301 | Ok(value) => value.replace("\r\n", "\n"),
|
1709 2302 | Err(err) => {
|
1710 2303 | panic!("failed to load test case `{}`: {}", path, err);
|
1711 2304 | }
|
1712 2305 | }
|
1713 2306 | };
|
1714 2307 |
|
1715 2308 | v.trim().to_string()
|
1716 2309 | }
|
1717 2310 |
|
1718 2311 | pub(crate) struct TestRequest {
|
1719 2312 | pub(crate) uri: String,
|
1720 2313 | pub(crate) method: String,
|
1721 2314 | pub(crate) headers: Vec<(String, String)>,
|
1722 2315 | pub(crate) body: TestSignedBody,
|
1723 2316 | }
|
1724 2317 |
|
1725 2318 | pub(crate) enum TestSignedBody {
|
1726 2319 | @@ -290,79 +501,87 @@ impl<B: AsRef<[u8]>> From<http0::Request<B>> for TestRequest {
|
1727 2320 | String::from_utf8(v.as_bytes().to_vec()).unwrap(),
|
1728 2321 | )
|
1729 2322 | })
|
1730 2323 | .collect::<Vec<_>>(),
|
1731 2324 | body: TestSignedBody::Bytes(value.body().as_ref().to_vec()),
|
1732 2325 | }
|
1733 2326 | }
|
1734 2327 | }
|
1735 2328 |
|
1736 2329 | impl<'a> From<&'a TestRequest> for SignableRequest<'a> {
|
1737 2330 | fn from(request: &'a TestRequest) -> SignableRequest<'a> {
|
1738 2331 | SignableRequest::new(
|
1739 2332 | &request.method,
|
1740 2333 | &request.uri,
|
1741 2334 | request
|
1742 2335 | .headers
|
1743 2336 | .iter()
|
1744 2337 | .map(|(k, v)| (k.as_str(), v.as_str())),
|
1745 2338 | request.body.as_signable_body(),
|
1746 2339 | )
|
1747 2340 | .expect("URI MUST be valid")
|
1748 2341 | }
|
1749 2342 | }
|
1750 2343 |
|
1751 2344 | fn parse_request(s: &[u8]) -> Result<TestRequest, Box<dyn StdError + Send + Sync + 'static>> {
|
1752 2345 | let mut headers = [httparse::EMPTY_HEADER; 64];
|
1753 2346 | // httparse 1.5 requires two trailing newlines to head the header section.
|
1754 2347 | let mut with_newline = Vec::from(s);
|
1755 2348 | with_newline.push(b'\n');
|
1756 2349 | let mut req = httparse::Request::new(&mut headers);
|
1757 - | let _ = req.parse(&with_newline).unwrap();
|
2350 + | let status = req.parse(&with_newline).unwrap();
|
2351 + |
|
2352 + | let body = if status.is_complete() {
|
2353 + | let body_offset = status.unwrap();
|
2354 + | // ignore the newline we added, take from original
|
2355 + | &s[body_offset..]
|
2356 + | } else {
|
2357 + | &[]
|
2358 + | };
|
1758 2359 |
|
1759 2360 | let mut uri_builder = Uri::builder().scheme("https");
|
1760 2361 | if let Some(path) = req.path {
|
1761 2362 | uri_builder = uri_builder.path_and_query(path);
|
1762 2363 | }
|
1763 2364 |
|
1764 2365 | let mut headers = vec![];
|
1765 2366 | for header in req.headers {
|
1766 2367 | let name = header.name.to_lowercase();
|
1767 2368 | if name == "host" {
|
1768 2369 | uri_builder = uri_builder.authority(header.value);
|
1769 2370 | } else if !name.is_empty() {
|
1770 2371 | headers.push((
|
1771 2372 | header.name.to_string(),
|
1772 2373 | std::str::from_utf8(header.value)?.to_string(),
|
1773 2374 | ));
|
1774 2375 | }
|
1775 2376 | }
|
1776 2377 |
|
1777 2378 | Ok(TestRequest {
|
1778 2379 | uri: uri_builder.build()?.to_string(),
|
1779 2380 | method: req.method.unwrap().to_string(),
|
1780 2381 | headers,
|
1781 - | body: TestSignedBody::Bytes(vec![]),
|
2382 + | body: TestSignedBody::Bytes(Vec::from(body)),
|
1782 2383 | })
|
1783 2384 | }
|
1784 2385 |
|
1785 2386 | #[test]
|
1786 2387 | fn test_parse_headers() {
|
1787 2388 | let buf = b"Host:example.amazonaws.com\nX-Amz-Date:20150830T123600Z\n\nblah blah";
|
1788 2389 | let mut headers = [httparse::EMPTY_HEADER; 4];
|
1789 2390 | assert_eq!(
|
1790 2391 | httparse::parse_headers(buf, &mut headers),
|
1791 2392 | Ok(httparse::Status::Complete((
|
1792 2393 | 56,
|
1793 2394 | &[
|
1794 2395 | httparse::Header {
|
1795 2396 | name: "Host",
|
1796 2397 | value: b"example.amazonaws.com",
|
1797 2398 | },
|
1798 2399 | httparse::Header {
|
1799 2400 | name: "X-Amz-Date",
|
1800 2401 | value: b"20150830T123600Z",
|
1801 2402 | }
|
1802 2403 | ][..]
|
1803 2404 | )))
|
1804 2405 | );
|
1805 2406 | }
|
1806 2407 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
|
1807 2408 | index a208453..fc00249 100644
|
1808 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
|
2409 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-sigv4/src/sign/v4.rs
|
1809 2410 | @@ -168,52 +168,54 @@ pub mod signing_params {
|
1810 2411 | );
|
1811 2412 |
|
1812 2413 | /// Builds an instance of [`SigningParams`]. Will yield a [`BuildError`] if
|
1813 2414 | /// a required argument was not given.
|
1814 2415 | pub fn build(self) -> Result<SigningParams<'a, S>, BuildError> {
|
1815 2416 | Ok(SigningParams {
|
1816 2417 | identity: self
|
1817 2418 | .identity
|
1818 2419 | .ok_or_else(|| BuildError::new("identity is required"))?,
|
1819 2420 | region: self
|
1820 2421 | .region
|
1821 2422 | .ok_or_else(|| BuildError::new("region is required"))?,
|
1822 2423 | name: self
|
1823 2424 | .name
|
1824 2425 | .ok_or_else(|| BuildError::new("name is required"))?,
|
1825 2426 | time: self
|
1826 2427 | .time
|
1827 2428 | .ok_or_else(|| BuildError::new("time is required"))?,
|
1828 2429 | settings: self
|
1829 2430 | .settings
|
1830 2431 | .ok_or_else(|| BuildError::new("settings are required"))?,
|
1831 2432 | })
|
1832 2433 | }
|
1833 2434 | }
|
1834 2435 | }
|
1835 2436 |
|
1836 2437 | #[cfg(test)]
|
1837 2438 | mod tests {
|
1838 2439 | use super::{calculate_signature, generate_signing_key, sha256_hex_string};
|
1839 2440 | use crate::date_time::test_parsers::parse_date_time;
|
1840 - | use crate::http_request::test;
|
1841 2441 |
|
1842 2442 | #[test]
|
1843 2443 | fn test_signature_calculation() {
|
1844 2444 | let secret = "wJalrXUtnFEMI/K7MDENG+bPxRfiCYEXAMPLEKEY";
|
1845 - | let creq = test::v4::test_canonical_request("iam");
|
2445 + | let creq = r#"AWS4-HMAC-SHA256
|
2446 + | 20150830T123600Z
|
2447 + | 20150830/us-east-1/iam/aws4_request
|
2448 + | f536975d06c0309214f805bb90ccff089219ecd68b2577efef23edd43b7e1a59"#;
|
1846 2449 | let time = parse_date_time("20150830T123600Z").unwrap();
|
1847 2450 |
|
1848 2451 | let derived_key = generate_signing_key(secret, time, "us-east-1", "iam");
|
1849 2452 | let signature = calculate_signature(derived_key, creq.as_bytes());
|
1850 2453 |
|
1851 2454 | let expected = "5d672d79c15b13162d9279b0855cfba6789a8edb4c82c400e06b5924a6f2b5d7";
|
1852 2455 | assert_eq!(expected, &signature);
|
1853 2456 | }
|
1854 2457 |
|
1855 2458 | #[test]
|
1856 2459 | fn sign_payload_empty_string() {
|
1857 2460 | let expected = "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";
|
1858 2461 | let actual = sha256_hex_string([]);
|
1859 2462 | assert_eq!(expected, actual);
|
1860 2463 | }
|
1861 2464 | }
|
1862 2465 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
|
1863 2466 | index ce78c38..8c2f591 100644
|
1864 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
|
2467 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-checksums/Cargo.toml
|
1865 2468 | @@ -1,43 +1,43 @@
|
1866 2469 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
1867 2470 | [package]
|
1868 2471 | name = "aws-smithy-checksums"
|
1869 2472 | version = "0.63.5"
|
1870 2473 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Zelda Hessler <zhessler@amazon.com>"]
|
1871 2474 | description = "Checksum calculation and verification callbacks"
|
1872 2475 | edition = "2021"
|
1873 2476 | license = "Apache-2.0"
|
1874 2477 | repository = "https://github.com/smithy-lang/smithy-rs"
|
1875 2478 | [package.metadata.docs.rs]
|
1876 2479 | all-features = true
|
1877 2480 | targets = ["x86_64-unknown-linux-gnu"]
|
1878 2481 | cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
|
1879 2482 | rustdoc-args = ["--cfg", "docsrs"]
|
1880 2483 |
|
1881 2484 | [dependencies]
|
1882 2485 | bytes = "1.10.0"
|
1883 2486 | crc-fast = "1.3.0"
|
1884 2487 | hex = "0.4.3"
|
1885 2488 | http = "0.2.9"
|
1886 2489 | http-body = "0.4.5"
|
1887 2490 | md-5 = "0.10"
|
1888 2491 | pin-project-lite = "0.2.14"
|
1889 2492 | sha1 = "0.10"
|
1890 2493 | sha2 = "0.10"
|
1891 2494 | tracing = "0.1.40"
|
1892 2495 |
|
1893 2496 | [dependencies.aws-smithy-http]
|
1894 2497 | path = "../aws-smithy-http"
|
1895 - | version = "0.62.2"
|
2498 + | version = "0.62.3"
|
1896 2499 |
|
1897 2500 | [dependencies.aws-smithy-types]
|
1898 2501 | path = "../aws-smithy-types"
|
1899 2502 | version = "1.3.2"
|
1900 2503 |
|
1901 2504 | [dev-dependencies]
|
1902 2505 | bytes-utils = "0.1.2"
|
1903 2506 | pretty_assertions = "1.3"
|
1904 2507 | tracing-test = "0.2.1"
|
1905 2508 |
|
1906 2509 | [dev-dependencies.tokio]
|
1907 2510 | version = "1.23.1"
|
1908 2511 | features = ["macros", "rt"]
|
1909 2512 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
|
1910 2513 | index 970c99e..d3c7a49 100644
|
1911 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
|
2514 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/Cargo.toml
|
1912 2515 | @@ -1,34 +1,34 @@
|
1913 2516 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
1914 2517 | [package]
|
1915 2518 | name = "aws-smithy-http"
|
1916 - | version = "0.62.2"
|
2519 + | version = "0.62.3"
|
1917 2520 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
1918 2521 | description = "Smithy HTTP logic for smithy-rs."
|
1919 2522 | edition = "2021"
|
1920 2523 | license = "Apache-2.0"
|
1921 2524 | repository = "https://github.com/smithy-lang/smithy-rs"
|
1922 2525 | [package.metadata.docs.rs]
|
1923 2526 | all-features = true
|
1924 2527 | targets = ["x86_64-unknown-linux-gnu"]
|
1925 2528 | cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
|
1926 2529 | rustdoc-args = ["--cfg", "docsrs"]
|
1927 2530 |
|
1928 2531 | [features]
|
1929 2532 | event-stream = ["aws-smithy-eventstream"]
|
1930 2533 | rt-tokio = ["aws-smithy-types/rt-tokio"]
|
1931 2534 |
|
1932 2535 | [dependencies]
|
1933 2536 | bytes = "1.10.0"
|
1934 2537 | bytes-utils = "0.1"
|
1935 2538 | percent-encoding = "2.3.1"
|
1936 2539 | pin-project-lite = "0.2.14"
|
1937 2540 | pin-utils = "0.1.0"
|
1938 2541 | tracing = "0.1.40"
|
1939 2542 | futures-core = "0.3.31"
|
1940 2543 |
|
1941 2544 | [dependencies.aws-smithy-eventstream]
|
1942 2545 | path = "../aws-smithy-eventstream"
|
1943 2546 | optional = true
|
1944 2547 | version = "0.60.10"
|
1945 2548 |
|
1946 2549 | [dependencies.aws-smithy-runtime-api]
|
1947 2550 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
|
1948 2551 | index 508f7a2..361545e 100644
|
1949 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
|
2552 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/fuzz/Cargo.toml
|
1950 2553 | @@ -1,27 +1,27 @@
|
1951 2554 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
1952 2555 | [[bin]]
|
1953 2556 | name = "read_many_from_str"
|
1954 2557 | path = "fuzz_targets/read_many_from_str.rs"
|
1955 2558 | test = false
|
1956 2559 | doc = false
|
1957 2560 |
|
1958 2561 | [package]
|
1959 2562 | name = "aws-smithy-http-fuzz"
|
1960 2563 | version = "0.0.0"
|
1961 2564 | authors = ["Automatically generated"]
|
1962 2565 | publish = false
|
1963 2566 | edition = "2021"
|
1964 2567 |
|
1965 2568 | [package.metadata]
|
1966 2569 | cargo-fuzz = true
|
1967 2570 |
|
1968 2571 | [dependencies]
|
1969 2572 | libfuzzer-sys = "=0.4.7"
|
1970 2573 | http = "0.2.3"
|
1971 2574 |
|
1972 2575 | [dependencies.aws-smithy-http]
|
1973 2576 | path = ".."
|
1974 - | version = "0.62.2"
|
2577 + | version = "0.62.3"
|
1975 2578 |
|
1976 2579 | [workspace]
|
1977 2580 | members = ["."]
|
1978 2581 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
|
1979 2582 | index fef41d0..7694da6 100644
|
1980 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
|
2583 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-http/src/query_writer.rs
|
1981 2584 | @@ -25,68 +25,73 @@ impl QueryWriter {
|
1982 2585 | pub fn new(uri: &Uri) -> Self {
|
1983 2586 | let new_path_and_query = uri
|
1984 2587 | .path_and_query()
|
1985 2588 | .map(|pq| pq.to_string())
|
1986 2589 | .unwrap_or_default();
|
1987 2590 | let prefix = if uri.query().is_none() {
|
1988 2591 | Some('?')
|
1989 2592 | } else if !uri.query().unwrap_or_default().is_empty() {
|
1990 2593 | Some('&')
|
1991 2594 | } else {
|
1992 2595 | None
|
1993 2596 | };
|
1994 2597 | QueryWriter {
|
1995 2598 | base_uri: uri.clone(),
|
1996 2599 | new_path_and_query,
|
1997 2600 | prefix,
|
1998 2601 | }
|
1999 2602 | }
|
2000 2603 |
|
2001 2604 | /// Clears all query parameters.
|
2002 2605 | pub fn clear_params(&mut self) {
|
2003 2606 | if let Some(index) = self.new_path_and_query.find('?') {
|
2004 2607 | self.new_path_and_query.truncate(index);
|
2005 2608 | self.prefix = Some('?');
|
2006 2609 | }
|
2007 2610 | }
|
2008 2611 |
|
2009 2612 | /// Inserts a new query parameter. The key and value are percent encoded
|
2010 2613 | /// by `QueryWriter`. Passing in percent encoded values will result in double encoding.
|
2011 2614 | pub fn insert(&mut self, k: &str, v: &str) {
|
2615 + | self.insert_encoded(&percent_encode_query(k), &percent_encode_query(v));
|
2616 + | }
|
2617 + |
|
2618 + | /// Inserts a new already encoded query parameter. The key and value will be inserted
|
2619 + | /// as is.
|
2620 + | pub fn insert_encoded(&mut self, encoded_k: &str, encoded_v: &str) {
|
2012 2621 | if let Some(prefix) = self.prefix {
|
2013 2622 | self.new_path_and_query.push(prefix);
|
2014 2623 | }
|
2015 2624 | self.prefix = Some('&');
|
2016 - | self.new_path_and_query.push_str(&percent_encode_query(k));
|
2625 + | self.new_path_and_query.push_str(encoded_k);
|
2017 2626 | self.new_path_and_query.push('=');
|
2018 - |
|
2019 - | self.new_path_and_query.push_str(&percent_encode_query(v));
|
2627 + | self.new_path_and_query.push_str(encoded_v)
|
2020 2628 | }
|
2021 2629 |
|
2022 2630 | /// Returns just the built query string.
|
2023 2631 | pub fn build_query(self) -> String {
|
2024 2632 | self.build_uri().query().unwrap_or_default().to_string()
|
2025 2633 | }
|
2026 2634 |
|
2027 2635 | /// Returns a full [`Uri`] with the query string updated.
|
2028 2636 | pub fn build_uri(self) -> Uri {
|
2029 2637 | let mut parts = self.base_uri.into_parts();
|
2030 2638 | parts.path_and_query = Some(
|
2031 2639 | self.new_path_and_query
|
2032 2640 | .parse()
|
2033 2641 | .expect("adding query should not invalidate URI"),
|
2034 2642 | );
|
2035 2643 | Uri::from_parts(parts).expect("a valid URL in should always produce a valid URL out")
|
2036 2644 | }
|
2037 2645 | }
|
2038 2646 |
|
2039 2647 | #[cfg(test)]
|
2040 2648 | mod test {
|
2041 2649 | use super::QueryWriter;
|
2042 2650 | use http_02x::Uri;
|
2043 2651 |
|
2044 2652 | #[test]
|
2045 2653 | fn empty_uri() {
|
2046 2654 | let uri = Uri::from_static("http://www.example.com");
|
2047 2655 | let mut query_writer = QueryWriter::new(&uri);
|
2048 2656 | query_writer.insert("key", "val%ue");
|
2049 2657 | query_writer.insert("another", "value");
|
2050 2658 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
|
2051 2659 | index f108978..df7a9fe 100644
|
2052 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
|
2660 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-runtime/Cargo.toml
|
2053 2661 | @@ -15,61 +15,61 @@ rustdoc-args = ["--cfg", "docsrs"]
|
2054 2662 |
|
2055 2663 | [package.metadata.smithy-rs-release-tooling]
|
2056 2664 | stable = true
|
2057 2665 | [package.metadata.cargo-udeps.ignore]
|
2058 2666 | normal = ["aws-smithy-http"]
|
2059 2667 |
|
2060 2668 | [features]
|
2061 2669 | client = ["aws-smithy-runtime-api/client", "aws-smithy-types/http-body-1-x"]
|
2062 2670 | http-auth = ["aws-smithy-runtime-api/http-auth"]
|
2063 2671 | connector-hyper-0-14-x = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/hyper-014"]
|
2064 2672 | tls-rustls = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/legacy-rustls-ring", "connector-hyper-0-14-x"]
|
2065 2673 | default-https-client = ["dep:aws-smithy-http-client", "aws-smithy-http-client?/rustls-aws-lc"]
|
2066 2674 | rt-tokio = ["tokio/rt"]
|
2067 2675 | test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "legacy-test-util"]
|
2068 2676 | legacy-test-util = ["aws-smithy-runtime-api/test-util", "dep:tracing-subscriber", "aws-smithy-http-client/test-util", "connector-hyper-0-14-x", "aws-smithy-http-client/legacy-test-util"]
|
2069 2677 | wire-mock = ["legacy-test-util", "aws-smithy-http-client/wire-mock"]
|
2070 2678 |
|
2071 2679 | [dependencies]
|
2072 2680 | bytes = "1.10.0"
|
2073 2681 | fastrand = "2.3.0"
|
2074 2682 | pin-project-lite = "0.2.14"
|
2075 2683 | pin-utils = "0.1.0"
|
2076 2684 | tracing = "0.1.40"
|
2077 2685 |
|
2078 2686 | [dependencies.aws-smithy-async]
|
2079 2687 | path = "../aws-smithy-async"
|
2080 2688 | version = "1.2.5"
|
2081 2689 |
|
2082 2690 | [dependencies.aws-smithy-http]
|
2083 2691 | path = "../aws-smithy-http"
|
2084 - | version = "0.62.2"
|
2692 + | version = "0.62.3"
|
2085 2693 |
|
2086 2694 | [dependencies.aws-smithy-observability]
|
2087 2695 | path = "../aws-smithy-observability"
|
2088 2696 | version = "0.1.3"
|
2089 2697 |
|
2090 2698 | [dependencies.aws-smithy-runtime-api]
|
2091 2699 | path = "../aws-smithy-runtime-api"
|
2092 2700 | version = "1.8.5"
|
2093 2701 |
|
2094 2702 | [dependencies.aws-smithy-types]
|
2095 2703 | path = "../aws-smithy-types"
|
2096 2704 | features = ["http-body-0-4-x"]
|
2097 2705 | version = "1.3.2"
|
2098 2706 |
|
2099 2707 | [dependencies.aws-smithy-http-client]
|
2100 2708 | path = "../aws-smithy-http-client"
|
2101 2709 | optional = true
|
2102 2710 | version = "1.0.6"
|
2103 2711 |
|
2104 2712 | [dependencies.http-02x]
|
2105 2713 | package = "http"
|
2106 2714 | version = "0.2.9"
|
2107 2715 |
|
2108 2716 | [dependencies.http-1x]
|
2109 2717 | package = "http"
|
2110 2718 | version = "1"
|
2111 2719 |
|
2112 2720 | [dependencies.http-body-04x]
|
2113 2721 | package = "http-body"
|
2114 2722 | version = "0.4.5"
|
2115 2723 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
|
2116 2724 | index 4e050c6..f58eb1c 100644
|
2117 - | -- a/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
|
2725 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/aws-smithy-wasm/Cargo.toml
|
2118 2726 | @@ -1,33 +1,33 @@
|
2119 2727 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2120 2728 | [package]
|
2121 2729 | name = "aws-smithy-wasm"
|
2122 2730 | version = "0.1.4"
|
2123 2731 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Eduardo Rodrigues <16357187+eduardomourar@users.noreply.github.com>"]
|
2124 2732 | description = "Smithy WebAssembly configuration for smithy-rs."
|
2125 2733 | edition = "2021"
|
2126 2734 | license = "Apache-2.0"
|
2127 2735 | repository = "https://github.com/awslabs/smithy-rs"
|
2128 2736 | [package.metadata.docs.rs]
|
2129 2737 | all-features = true
|
2130 2738 | targets = ["x86_64-unknown-linux-gnu"]
|
2131 2739 | cargo-args = ["-Zunstable-options", "-Zrustdoc-scrape-examples"]
|
2132 2740 | rustdoc-args = ["--cfg", "docsrs"]
|
2133 2741 |
|
2134 2742 | [dependencies]
|
2135 2743 | bytes = "1.10.0"
|
2136 2744 | http = "1.0.0"
|
2137 2745 | tracing = "0.1.40"
|
2138 2746 | wasi = "0.12.1"
|
2139 2747 |
|
2140 2748 | [dependencies.aws-smithy-runtime-api]
|
2141 2749 | path = "../aws-smithy-runtime-api"
|
2142 2750 | features = ["http-1x"]
|
2143 2751 | version = "1.8.5"
|
2144 2752 |
|
2145 2753 | [dependencies.aws-smithy-http]
|
2146 2754 | path = "../aws-smithy-http"
|
2147 - | version = "0.62.2"
|
2755 + | version = "0.62.3"
|
2148 2756 |
|
2149 2757 | [dependencies.aws-smithy-types]
|
2150 2758 | path = "../aws-smithy-types"
|
2151 2759 | version = "1.3.2"
|
2152 2760 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
|
2153 2761 | index a880648..139e808 100644
|
2154 - | -- a/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
|
2762 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/bedrockruntime/Cargo.toml
|
2155 2763 | @@ -7,61 +7,61 @@ description = "AWS SDK for Amazon Bedrock Runtime"
|
2156 2764 | edition = "2021"
|
2157 2765 | license = "Apache-2.0"
|
2158 2766 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2159 2767 | rust-version = "1.86.0"
|
2160 2768 | readme = "README.md"
|
2161 2769 | [package.metadata.smithy]
|
2162 2770 | codegen-version = "ci"
|
2163 2771 | [package.metadata.docs.rs]
|
2164 2772 | all-features = true
|
2165 2773 | targets = ["x86_64-unknown-linux-gnu"]
|
2166 2774 | [dependencies.aws-credential-types]
|
2167 2775 | path = "../aws-credential-types"
|
2168 2776 | version = "1.2.4"
|
2169 2777 |
|
2170 2778 | [dependencies.aws-runtime]
|
2171 2779 | path = "../aws-runtime"
|
2172 2780 | features = ["event-stream"]
|
2173 2781 | version = "1.5.9"
|
2174 2782 |
|
2175 2783 | [dependencies.aws-smithy-async]
|
2176 2784 | path = "../aws-smithy-async"
|
2177 2785 | version = "1.2.5"
|
2178 2786 |
|
2179 2787 | [dependencies.aws-smithy-eventstream]
|
2180 2788 | path = "../aws-smithy-eventstream"
|
2181 2789 | version = "0.60.10"
|
2182 2790 |
|
2183 2791 | [dependencies.aws-smithy-http]
|
2184 2792 | path = "../aws-smithy-http"
|
2185 2793 | features = ["event-stream"]
|
2186 - | version = "0.62.2"
|
2794 + | version = "0.62.3"
|
2187 2795 |
|
2188 2796 | [dependencies.aws-smithy-json]
|
2189 2797 | path = "../aws-smithy-json"
|
2190 2798 | version = "0.61.4"
|
2191 2799 |
|
2192 2800 | [dependencies.aws-smithy-runtime]
|
2193 2801 | path = "../aws-smithy-runtime"
|
2194 2802 | features = ["client"]
|
2195 2803 | version = "1.8.5"
|
2196 2804 |
|
2197 2805 | [dependencies.aws-smithy-runtime-api]
|
2198 2806 | path = "../aws-smithy-runtime-api"
|
2199 2807 | features = ["client", "http-02x"]
|
2200 2808 | version = "1.8.5"
|
2201 2809 |
|
2202 2810 | [dependencies.aws-smithy-types]
|
2203 2811 | path = "../aws-smithy-types"
|
2204 2812 | version = "1.3.2"
|
2205 2813 |
|
2206 2814 | [dependencies.aws-types]
|
2207 2815 | path = "../aws-types"
|
2208 2816 | version = "1.3.8"
|
2209 2817 |
|
2210 2818 | [dependencies.bytes]
|
2211 2819 | version = "1.4.0"
|
2212 2820 |
|
2213 2821 | [dependencies.fastrand]
|
2214 2822 | version = "2.0.0"
|
2215 2823 |
|
2216 2824 | [dependencies.http]
|
2217 2825 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
|
2218 2826 | index 415ecc9..667d12b 100644
|
2219 - | -- a/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
|
2827 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/cloudwatchlogs/Cargo.toml
|
2220 2828 | @@ -7,61 +7,61 @@ description = "AWS SDK for Amazon CloudWatch Logs"
|
2221 2829 | edition = "2021"
|
2222 2830 | license = "Apache-2.0"
|
2223 2831 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2224 2832 | rust-version = "1.86.0"
|
2225 2833 | readme = "README.md"
|
2226 2834 | [package.metadata.smithy]
|
2227 2835 | codegen-version = "ci"
|
2228 2836 | [package.metadata.docs.rs]
|
2229 2837 | all-features = true
|
2230 2838 | targets = ["x86_64-unknown-linux-gnu"]
|
2231 2839 | [dependencies.aws-credential-types]
|
2232 2840 | path = "../aws-credential-types"
|
2233 2841 | version = "1.2.4"
|
2234 2842 |
|
2235 2843 | [dependencies.aws-runtime]
|
2236 2844 | path = "../aws-runtime"
|
2237 2845 | features = ["event-stream"]
|
2238 2846 | version = "1.5.9"
|
2239 2847 |
|
2240 2848 | [dependencies.aws-smithy-async]
|
2241 2849 | path = "../aws-smithy-async"
|
2242 2850 | version = "1.2.5"
|
2243 2851 |
|
2244 2852 | [dependencies.aws-smithy-eventstream]
|
2245 2853 | path = "../aws-smithy-eventstream"
|
2246 2854 | version = "0.60.10"
|
2247 2855 |
|
2248 2856 | [dependencies.aws-smithy-http]
|
2249 2857 | path = "../aws-smithy-http"
|
2250 2858 | features = ["event-stream"]
|
2251 - | version = "0.62.2"
|
2859 + | version = "0.62.3"
|
2252 2860 |
|
2253 2861 | [dependencies.aws-smithy-json]
|
2254 2862 | path = "../aws-smithy-json"
|
2255 2863 | version = "0.61.4"
|
2256 2864 |
|
2257 2865 | [dependencies.aws-smithy-runtime]
|
2258 2866 | path = "../aws-smithy-runtime"
|
2259 2867 | features = ["client"]
|
2260 2868 | version = "1.8.5"
|
2261 2869 |
|
2262 2870 | [dependencies.aws-smithy-runtime-api]
|
2263 2871 | path = "../aws-smithy-runtime-api"
|
2264 2872 | features = ["client", "http-02x"]
|
2265 2873 | version = "1.8.5"
|
2266 2874 |
|
2267 2875 | [dependencies.aws-smithy-types]
|
2268 2876 | path = "../aws-smithy-types"
|
2269 2877 | version = "1.3.2"
|
2270 2878 |
|
2271 2879 | [dependencies.aws-types]
|
2272 2880 | path = "../aws-types"
|
2273 2881 | version = "1.3.8"
|
2274 2882 |
|
2275 2883 | [dependencies.bytes]
|
2276 2884 | version = "1.4.0"
|
2277 2885 |
|
2278 2886 | [dependencies.fastrand]
|
2279 2887 | version = "2.0.0"
|
2280 2888 |
|
2281 2889 | [dependencies.http]
|
2282 2890 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
|
2283 2891 | index 8871cab..ed88de6 100644
|
2284 - | -- a/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
|
2892 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/codecatalyst/Cargo.toml
|
2285 2893 | @@ -1,61 +1,61 @@
|
2286 2894 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2287 2895 | [package]
|
2288 2896 | name = "aws-sdk-codecatalyst"
|
2289 2897 | version = "0.0.0-local"
|
2290 2898 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2291 2899 | description = "AWS SDK for Amazon CodeCatalyst"
|
2292 2900 | edition = "2021"
|
2293 2901 | license = "Apache-2.0"
|
2294 2902 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2295 2903 | rust-version = "1.86.0"
|
2296 2904 | readme = "README.md"
|
2297 2905 | [package.metadata.smithy]
|
2298 2906 | codegen-version = "ci"
|
2299 2907 | [package.metadata.docs.rs]
|
2300 2908 | all-features = true
|
2301 2909 | targets = ["x86_64-unknown-linux-gnu"]
|
2302 2910 | [dependencies.aws-credential-types]
|
2303 2911 | path = "../aws-credential-types"
|
2304 2912 | version = "1.2.4"
|
2305 2913 |
|
2306 2914 | [dependencies.aws-runtime]
|
2307 2915 | path = "../aws-runtime"
|
2308 2916 | version = "1.5.9"
|
2309 2917 |
|
2310 2918 | [dependencies.aws-smithy-async]
|
2311 2919 | path = "../aws-smithy-async"
|
2312 2920 | version = "1.2.5"
|
2313 2921 |
|
2314 2922 | [dependencies.aws-smithy-http]
|
2315 2923 | path = "../aws-smithy-http"
|
2316 - | version = "0.62.2"
|
2924 + | version = "0.62.3"
|
2317 2925 |
|
2318 2926 | [dependencies.aws-smithy-json]
|
2319 2927 | path = "../aws-smithy-json"
|
2320 2928 | version = "0.61.4"
|
2321 2929 |
|
2322 2930 | [dependencies.aws-smithy-runtime]
|
2323 2931 | path = "../aws-smithy-runtime"
|
2324 2932 | features = ["client", "http-auth"]
|
2325 2933 | version = "1.8.5"
|
2326 2934 |
|
2327 2935 | [dependencies.aws-smithy-runtime-api]
|
2328 2936 | path = "../aws-smithy-runtime-api"
|
2329 2937 | features = ["client", "http-02x", "http-auth"]
|
2330 2938 | version = "1.8.5"
|
2331 2939 |
|
2332 2940 | [dependencies.aws-smithy-types]
|
2333 2941 | path = "../aws-smithy-types"
|
2334 2942 | version = "1.3.2"
|
2335 2943 |
|
2336 2944 | [dependencies.aws-types]
|
2337 2945 | path = "../aws-types"
|
2338 2946 | version = "1.3.8"
|
2339 2947 |
|
2340 2948 | [dependencies.bytes]
|
2341 2949 | version = "1.4.0"
|
2342 2950 |
|
2343 2951 | [dependencies.fastrand]
|
2344 2952 | version = "2.0.0"
|
2345 2953 |
|
2346 2954 | [dependencies.http]
|
2347 2955 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
|
2348 2956 | index 89573ff..05238af 100644
|
2349 - | -- a/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
|
2957 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/config/Cargo.toml
|
2350 2958 | @@ -1,61 +1,61 @@
|
2351 2959 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2352 2960 | [package]
|
2353 2961 | name = "aws-sdk-config"
|
2354 2962 | version = "0.0.0-local"
|
2355 2963 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2356 2964 | description = "AWS SDK for AWS Config"
|
2357 2965 | edition = "2021"
|
2358 2966 | license = "Apache-2.0"
|
2359 2967 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2360 2968 | rust-version = "1.86.0"
|
2361 2969 | readme = "README.md"
|
2362 2970 | [package.metadata.smithy]
|
2363 2971 | codegen-version = "ci"
|
2364 2972 | [package.metadata.docs.rs]
|
2365 2973 | all-features = true
|
2366 2974 | targets = ["x86_64-unknown-linux-gnu"]
|
2367 2975 | [dependencies.aws-credential-types]
|
2368 2976 | path = "../aws-credential-types"
|
2369 2977 | version = "1.2.4"
|
2370 2978 |
|
2371 2979 | [dependencies.aws-runtime]
|
2372 2980 | path = "../aws-runtime"
|
2373 2981 | version = "1.5.9"
|
2374 2982 |
|
2375 2983 | [dependencies.aws-smithy-async]
|
2376 2984 | path = "../aws-smithy-async"
|
2377 2985 | version = "1.2.5"
|
2378 2986 |
|
2379 2987 | [dependencies.aws-smithy-http]
|
2380 2988 | path = "../aws-smithy-http"
|
2381 - | version = "0.62.2"
|
2989 + | version = "0.62.3"
|
2382 2990 |
|
2383 2991 | [dependencies.aws-smithy-json]
|
2384 2992 | path = "../aws-smithy-json"
|
2385 2993 | version = "0.61.4"
|
2386 2994 |
|
2387 2995 | [dependencies.aws-smithy-runtime]
|
2388 2996 | path = "../aws-smithy-runtime"
|
2389 2997 | features = ["client"]
|
2390 2998 | version = "1.8.5"
|
2391 2999 |
|
2392 3000 | [dependencies.aws-smithy-runtime-api]
|
2393 3001 | path = "../aws-smithy-runtime-api"
|
2394 3002 | features = ["client", "http-02x"]
|
2395 3003 | version = "1.8.5"
|
2396 3004 |
|
2397 3005 | [dependencies.aws-smithy-types]
|
2398 3006 | path = "../aws-smithy-types"
|
2399 3007 | version = "1.3.2"
|
2400 3008 |
|
2401 3009 | [dependencies.aws-types]
|
2402 3010 | path = "../aws-types"
|
2403 3011 | version = "1.3.8"
|
2404 3012 |
|
2405 3013 | [dependencies.bytes]
|
2406 3014 | version = "1.4.0"
|
2407 3015 |
|
2408 3016 | [dependencies.fastrand]
|
2409 3017 | version = "2.0.0"
|
2410 3018 |
|
2411 3019 | [dependencies.http]
|
2412 3020 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
|
2413 3021 | index d397c58..2c1062b 100644
|
2414 - | -- a/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
|
3022 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/dynamodb/Cargo.toml
|
2415 3023 | @@ -1,61 +1,61 @@
|
2416 3024 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2417 3025 | [package]
|
2418 3026 | name = "aws-sdk-dynamodb"
|
2419 3027 | version = "0.0.0-local"
|
2420 3028 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2421 3029 | description = "AWS SDK for Amazon DynamoDB"
|
2422 3030 | edition = "2021"
|
2423 3031 | license = "Apache-2.0"
|
2424 3032 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2425 3033 | rust-version = "1.86.0"
|
2426 3034 | readme = "README.md"
|
2427 3035 | [package.metadata.smithy]
|
2428 3036 | codegen-version = "ci"
|
2429 3037 | [package.metadata.docs.rs]
|
2430 3038 | all-features = true
|
2431 3039 | targets = ["x86_64-unknown-linux-gnu"]
|
2432 3040 | [dependencies.aws-credential-types]
|
2433 3041 | path = "../aws-credential-types"
|
2434 3042 | version = "1.2.4"
|
2435 3043 |
|
2436 3044 | [dependencies.aws-runtime]
|
2437 3045 | path = "../aws-runtime"
|
2438 3046 | version = "1.5.9"
|
2439 3047 |
|
2440 3048 | [dependencies.aws-smithy-async]
|
2441 3049 | path = "../aws-smithy-async"
|
2442 3050 | version = "1.2.5"
|
2443 3051 |
|
2444 3052 | [dependencies.aws-smithy-http]
|
2445 3053 | path = "../aws-smithy-http"
|
2446 - | version = "0.62.2"
|
3054 + | version = "0.62.3"
|
2447 3055 |
|
2448 3056 | [dependencies.aws-smithy-json]
|
2449 3057 | path = "../aws-smithy-json"
|
2450 3058 | version = "0.61.4"
|
2451 3059 |
|
2452 3060 | [dependencies.aws-smithy-runtime]
|
2453 3061 | path = "../aws-smithy-runtime"
|
2454 3062 | features = ["client"]
|
2455 3063 | version = "1.8.5"
|
2456 3064 |
|
2457 3065 | [dependencies.aws-smithy-runtime-api]
|
2458 3066 | path = "../aws-smithy-runtime-api"
|
2459 3067 | features = ["client", "http-02x"]
|
2460 3068 | version = "1.8.5"
|
2461 3069 |
|
2462 3070 | [dependencies.aws-smithy-types]
|
2463 3071 | path = "../aws-smithy-types"
|
2464 3072 | version = "1.3.2"
|
2465 3073 |
|
2466 3074 | [dependencies.aws-types]
|
2467 3075 | path = "../aws-types"
|
2468 3076 | version = "1.3.8"
|
2469 3077 |
|
2470 3078 | [dependencies.bytes]
|
2471 3079 | version = "1.4.0"
|
2472 3080 |
|
2473 3081 | [dependencies.fastrand]
|
2474 3082 | version = "2.0.0"
|
2475 3083 |
|
2476 3084 | [dependencies.http]
|
2477 3085 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
|
2478 3086 | index c0ba315..46168af 100644
|
2479 - | -- a/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
|
3087 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/ec2/Cargo.toml
|
2480 3088 | @@ -1,61 +1,61 @@
|
2481 3089 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2482 3090 | [package]
|
2483 3091 | name = "aws-sdk-ec2"
|
2484 3092 | version = "0.0.0-local"
|
2485 3093 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2486 3094 | description = "AWS SDK for Amazon Elastic Compute Cloud"
|
2487 3095 | edition = "2021"
|
2488 3096 | license = "Apache-2.0"
|
2489 3097 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2490 3098 | rust-version = "1.86.0"
|
2491 3099 | readme = "README.md"
|
2492 3100 | [package.metadata.smithy]
|
2493 3101 | codegen-version = "ci"
|
2494 3102 | [package.metadata.docs.rs]
|
2495 3103 | all-features = true
|
2496 3104 | targets = ["x86_64-unknown-linux-gnu"]
|
2497 3105 | [dependencies.aws-credential-types]
|
2498 3106 | path = "../aws-credential-types"
|
2499 3107 | version = "1.2.4"
|
2500 3108 |
|
2501 3109 | [dependencies.aws-runtime]
|
2502 3110 | path = "../aws-runtime"
|
2503 3111 | version = "1.5.9"
|
2504 3112 |
|
2505 3113 | [dependencies.aws-smithy-async]
|
2506 3114 | path = "../aws-smithy-async"
|
2507 3115 | version = "1.2.5"
|
2508 3116 |
|
2509 3117 | [dependencies.aws-smithy-http]
|
2510 3118 | path = "../aws-smithy-http"
|
2511 - | version = "0.62.2"
|
3119 + | version = "0.62.3"
|
2512 3120 |
|
2513 3121 | [dependencies.aws-smithy-json]
|
2514 3122 | path = "../aws-smithy-json"
|
2515 3123 | version = "0.61.4"
|
2516 3124 |
|
2517 3125 | [dependencies.aws-smithy-query]
|
2518 3126 | path = "../aws-smithy-query"
|
2519 3127 | version = "0.60.7"
|
2520 3128 |
|
2521 3129 | [dependencies.aws-smithy-runtime]
|
2522 3130 | path = "../aws-smithy-runtime"
|
2523 3131 | features = ["client"]
|
2524 3132 | version = "1.8.5"
|
2525 3133 |
|
2526 3134 | [dependencies.aws-smithy-runtime-api]
|
2527 3135 | path = "../aws-smithy-runtime-api"
|
2528 3136 | features = ["client", "http-02x"]
|
2529 3137 | version = "1.8.5"
|
2530 3138 |
|
2531 3139 | [dependencies.aws-smithy-types]
|
2532 3140 | path = "../aws-smithy-types"
|
2533 3141 | version = "1.3.2"
|
2534 3142 |
|
2535 3143 | [dependencies.aws-smithy-xml]
|
2536 3144 | path = "../aws-smithy-xml"
|
2537 3145 | version = "0.60.10"
|
2538 3146 |
|
2539 3147 | [dependencies.aws-types]
|
2540 3148 | path = "../aws-types"
|
2541 3149 | version = "1.3.8"
|
2542 3150 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
|
2543 3151 | index 4474d17..095d40e 100644
|
2544 - | -- a/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
|
3152 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/ecs/Cargo.toml
|
2545 3153 | @@ -1,61 +1,61 @@
|
2546 3154 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2547 3155 | [package]
|
2548 3156 | name = "aws-sdk-ecs"
|
2549 3157 | version = "0.0.0-local"
|
2550 3158 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2551 3159 | description = "AWS SDK for Amazon EC2 Container Service"
|
2552 3160 | edition = "2021"
|
2553 3161 | license = "Apache-2.0"
|
2554 3162 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2555 3163 | rust-version = "1.86.0"
|
2556 3164 | readme = "README.md"
|
2557 3165 | [package.metadata.smithy]
|
2558 3166 | codegen-version = "ci"
|
2559 3167 | [package.metadata.docs.rs]
|
2560 3168 | all-features = true
|
2561 3169 | targets = ["x86_64-unknown-linux-gnu"]
|
2562 3170 | [dependencies.aws-credential-types]
|
2563 3171 | path = "../aws-credential-types"
|
2564 3172 | version = "1.2.4"
|
2565 3173 |
|
2566 3174 | [dependencies.aws-runtime]
|
2567 3175 | path = "../aws-runtime"
|
2568 3176 | version = "1.5.9"
|
2569 3177 |
|
2570 3178 | [dependencies.aws-smithy-async]
|
2571 3179 | path = "../aws-smithy-async"
|
2572 3180 | version = "1.2.5"
|
2573 3181 |
|
2574 3182 | [dependencies.aws-smithy-http]
|
2575 3183 | path = "../aws-smithy-http"
|
2576 - | version = "0.62.2"
|
3184 + | version = "0.62.3"
|
2577 3185 |
|
2578 3186 | [dependencies.aws-smithy-json]
|
2579 3187 | path = "../aws-smithy-json"
|
2580 3188 | version = "0.61.4"
|
2581 3189 |
|
2582 3190 | [dependencies.aws-smithy-runtime]
|
2583 3191 | path = "../aws-smithy-runtime"
|
2584 3192 | features = ["client"]
|
2585 3193 | version = "1.8.5"
|
2586 3194 |
|
2587 3195 | [dependencies.aws-smithy-runtime-api]
|
2588 3196 | path = "../aws-smithy-runtime-api"
|
2589 3197 | features = ["client", "http-02x"]
|
2590 3198 | version = "1.8.5"
|
2591 3199 |
|
2592 3200 | [dependencies.aws-smithy-types]
|
2593 3201 | path = "../aws-smithy-types"
|
2594 3202 | version = "1.3.2"
|
2595 3203 |
|
2596 3204 | [dependencies.aws-types]
|
2597 3205 | path = "../aws-types"
|
2598 3206 | version = "1.3.8"
|
2599 3207 |
|
2600 3208 | [dependencies.bytes]
|
2601 3209 | version = "1.4.0"
|
2602 3210 |
|
2603 3211 | [dependencies.fastrand]
|
2604 3212 | version = "2.0.0"
|
2605 3213 |
|
2606 3214 | [dependencies.http]
|
2607 3215 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
|
2608 3216 | index 15b1d77..16d7d89 100644
|
2609 - | -- a/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
|
3217 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/glacier/Cargo.toml
|
2610 3218 | @@ -1,65 +1,65 @@
|
2611 3219 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2612 3220 | [package]
|
2613 3221 | name = "aws-sdk-glacier"
|
2614 3222 | version = "0.0.0-local"
|
2615 3223 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2616 3224 | description = "AWS SDK for Amazon Glacier"
|
2617 3225 | edition = "2021"
|
2618 3226 | license = "Apache-2.0"
|
2619 3227 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2620 3228 | rust-version = "1.86.0"
|
2621 3229 | readme = "README.md"
|
2622 3230 | [package.metadata.smithy]
|
2623 3231 | codegen-version = "ci"
|
2624 3232 | [package.metadata.docs.rs]
|
2625 3233 | all-features = true
|
2626 3234 | targets = ["x86_64-unknown-linux-gnu"]
|
2627 3235 | [dependencies.aws-credential-types]
|
2628 3236 | path = "../aws-credential-types"
|
2629 3237 | version = "1.2.4"
|
2630 3238 |
|
2631 3239 | [dependencies.aws-runtime]
|
2632 3240 | path = "../aws-runtime"
|
2633 3241 | version = "1.5.9"
|
2634 3242 |
|
2635 3243 | [dependencies.aws-sigv4]
|
2636 3244 | path = "../aws-sigv4"
|
2637 - | version = "1.3.3"
|
3245 + | version = "1.3.4"
|
2638 3246 |
|
2639 3247 | [dependencies.aws-smithy-async]
|
2640 3248 | path = "../aws-smithy-async"
|
2641 3249 | version = "1.2.5"
|
2642 3250 |
|
2643 3251 | [dependencies.aws-smithy-http]
|
2644 3252 | path = "../aws-smithy-http"
|
2645 - | version = "0.62.2"
|
3253 + | version = "0.62.3"
|
2646 3254 |
|
2647 3255 | [dependencies.aws-smithy-json]
|
2648 3256 | path = "../aws-smithy-json"
|
2649 3257 | version = "0.61.4"
|
2650 3258 |
|
2651 3259 | [dependencies.aws-smithy-runtime]
|
2652 3260 | path = "../aws-smithy-runtime"
|
2653 3261 | features = ["client"]
|
2654 3262 | version = "1.8.5"
|
2655 3263 |
|
2656 3264 | [dependencies.aws-smithy-runtime-api]
|
2657 3265 | path = "../aws-smithy-runtime-api"
|
2658 3266 | features = ["client", "http-02x"]
|
2659 3267 | version = "1.8.5"
|
2660 3268 |
|
2661 3269 | [dependencies.aws-smithy-types]
|
2662 3270 | path = "../aws-smithy-types"
|
2663 3271 | version = "1.3.2"
|
2664 3272 |
|
2665 3273 | [dependencies.aws-types]
|
2666 3274 | path = "../aws-types"
|
2667 3275 | version = "1.3.8"
|
2668 3276 |
|
2669 3277 | [dependencies.bytes]
|
2670 3278 | version = "1.4.0"
|
2671 3279 |
|
2672 3280 | [dependencies.fastrand]
|
2673 3281 | version = "2.0.0"
|
2674 3282 |
|
2675 3283 | [dependencies.hex]
|
2676 3284 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
|
2677 3285 | index d718a3a..65e6f24 100644
|
2678 - | -- a/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
|
3286 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/iam/Cargo.toml
|
2679 3287 | @@ -1,61 +1,61 @@
|
2680 3288 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2681 3289 | [package]
|
2682 3290 | name = "aws-sdk-iam"
|
2683 3291 | version = "0.0.0-local"
|
2684 3292 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2685 3293 | description = "AWS SDK for AWS Identity and Access Management"
|
2686 3294 | edition = "2021"
|
2687 3295 | license = "Apache-2.0"
|
2688 3296 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2689 3297 | rust-version = "1.86.0"
|
2690 3298 | readme = "README.md"
|
2691 3299 | [package.metadata.smithy]
|
2692 3300 | codegen-version = "ci"
|
2693 3301 | [package.metadata.docs.rs]
|
2694 3302 | all-features = true
|
2695 3303 | targets = ["x86_64-unknown-linux-gnu"]
|
2696 3304 | [dependencies.aws-credential-types]
|
2697 3305 | path = "../aws-credential-types"
|
2698 3306 | version = "1.2.4"
|
2699 3307 |
|
2700 3308 | [dependencies.aws-runtime]
|
2701 3309 | path = "../aws-runtime"
|
2702 3310 | version = "1.5.9"
|
2703 3311 |
|
2704 3312 | [dependencies.aws-smithy-async]
|
2705 3313 | path = "../aws-smithy-async"
|
2706 3314 | version = "1.2.5"
|
2707 3315 |
|
2708 3316 | [dependencies.aws-smithy-http]
|
2709 3317 | path = "../aws-smithy-http"
|
2710 - | version = "0.62.2"
|
3318 + | version = "0.62.3"
|
2711 3319 |
|
2712 3320 | [dependencies.aws-smithy-json]
|
2713 3321 | path = "../aws-smithy-json"
|
2714 3322 | version = "0.61.4"
|
2715 3323 |
|
2716 3324 | [dependencies.aws-smithy-query]
|
2717 3325 | path = "../aws-smithy-query"
|
2718 3326 | version = "0.60.7"
|
2719 3327 |
|
2720 3328 | [dependencies.aws-smithy-runtime]
|
2721 3329 | path = "../aws-smithy-runtime"
|
2722 3330 | features = ["client"]
|
2723 3331 | version = "1.8.5"
|
2724 3332 |
|
2725 3333 | [dependencies.aws-smithy-runtime-api]
|
2726 3334 | path = "../aws-smithy-runtime-api"
|
2727 3335 | features = ["client", "http-02x"]
|
2728 3336 | version = "1.8.5"
|
2729 3337 |
|
2730 3338 | [dependencies.aws-smithy-types]
|
2731 3339 | path = "../aws-smithy-types"
|
2732 3340 | version = "1.3.2"
|
2733 3341 |
|
2734 3342 | [dependencies.aws-smithy-xml]
|
2735 3343 | path = "../aws-smithy-xml"
|
2736 3344 | version = "0.60.10"
|
2737 3345 |
|
2738 3346 | [dependencies.aws-types]
|
2739 3347 | path = "../aws-types"
|
2740 3348 | version = "1.3.8"
|
2741 3349 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
|
2742 3350 | index 0ed4302..3d828a5 100644
|
2743 - | -- a/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
|
3351 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/kms/Cargo.toml
|
2744 3352 | @@ -1,61 +1,61 @@
|
2745 3353 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2746 3354 | [package]
|
2747 3355 | name = "aws-sdk-kms"
|
2748 3356 | version = "0.0.0-local"
|
2749 3357 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2750 3358 | description = "AWS SDK for AWS Key Management Service"
|
2751 3359 | edition = "2021"
|
2752 3360 | license = "Apache-2.0"
|
2753 3361 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2754 3362 | rust-version = "1.86.0"
|
2755 3363 | readme = "README.md"
|
2756 3364 | [package.metadata.smithy]
|
2757 3365 | codegen-version = "ci"
|
2758 3366 | [package.metadata.docs.rs]
|
2759 3367 | all-features = true
|
2760 3368 | targets = ["x86_64-unknown-linux-gnu"]
|
2761 3369 | [dependencies.aws-credential-types]
|
2762 3370 | path = "../aws-credential-types"
|
2763 3371 | version = "1.2.4"
|
2764 3372 |
|
2765 3373 | [dependencies.aws-runtime]
|
2766 3374 | path = "../aws-runtime"
|
2767 3375 | version = "1.5.9"
|
2768 3376 |
|
2769 3377 | [dependencies.aws-smithy-async]
|
2770 3378 | path = "../aws-smithy-async"
|
2771 3379 | version = "1.2.5"
|
2772 3380 |
|
2773 3381 | [dependencies.aws-smithy-http]
|
2774 3382 | path = "../aws-smithy-http"
|
2775 - | version = "0.62.2"
|
3383 + | version = "0.62.3"
|
2776 3384 |
|
2777 3385 | [dependencies.aws-smithy-json]
|
2778 3386 | path = "../aws-smithy-json"
|
2779 3387 | version = "0.61.4"
|
2780 3388 |
|
2781 3389 | [dependencies.aws-smithy-runtime]
|
2782 3390 | path = "../aws-smithy-runtime"
|
2783 3391 | features = ["client"]
|
2784 3392 | version = "1.8.5"
|
2785 3393 |
|
2786 3394 | [dependencies.aws-smithy-runtime-api]
|
2787 3395 | path = "../aws-smithy-runtime-api"
|
2788 3396 | features = ["client", "http-02x"]
|
2789 3397 | version = "1.8.5"
|
2790 3398 |
|
2791 3399 | [dependencies.aws-smithy-types]
|
2792 3400 | path = "../aws-smithy-types"
|
2793 3401 | version = "1.3.2"
|
2794 3402 |
|
2795 3403 | [dependencies.aws-types]
|
2796 3404 | path = "../aws-types"
|
2797 3405 | version = "1.3.8"
|
2798 3406 |
|
2799 3407 | [dependencies.bytes]
|
2800 3408 | version = "1.4.0"
|
2801 3409 |
|
2802 3410 | [dependencies.fastrand]
|
2803 3411 | version = "2.0.0"
|
2804 3412 |
|
2805 3413 | [dependencies.http]
|
2806 3414 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
|
2807 3415 | index 6518dfc..6b94752 100644
|
2808 - | -- a/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
|
3416 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/lambda/Cargo.toml
|
2809 3417 | @@ -7,61 +7,61 @@ description = "AWS SDK for AWS Lambda"
|
2810 3418 | edition = "2021"
|
2811 3419 | license = "Apache-2.0"
|
2812 3420 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2813 3421 | rust-version = "1.86.0"
|
2814 3422 | readme = "README.md"
|
2815 3423 | [package.metadata.smithy]
|
2816 3424 | codegen-version = "ci"
|
2817 3425 | [package.metadata.docs.rs]
|
2818 3426 | all-features = true
|
2819 3427 | targets = ["x86_64-unknown-linux-gnu"]
|
2820 3428 | [dependencies.aws-credential-types]
|
2821 3429 | path = "../aws-credential-types"
|
2822 3430 | version = "1.2.4"
|
2823 3431 |
|
2824 3432 | [dependencies.aws-runtime]
|
2825 3433 | path = "../aws-runtime"
|
2826 3434 | features = ["event-stream"]
|
2827 3435 | version = "1.5.9"
|
2828 3436 |
|
2829 3437 | [dependencies.aws-smithy-async]
|
2830 3438 | path = "../aws-smithy-async"
|
2831 3439 | version = "1.2.5"
|
2832 3440 |
|
2833 3441 | [dependencies.aws-smithy-eventstream]
|
2834 3442 | path = "../aws-smithy-eventstream"
|
2835 3443 | version = "0.60.10"
|
2836 3444 |
|
2837 3445 | [dependencies.aws-smithy-http]
|
2838 3446 | path = "../aws-smithy-http"
|
2839 3447 | features = ["event-stream"]
|
2840 - | version = "0.62.2"
|
3448 + | version = "0.62.3"
|
2841 3449 |
|
2842 3450 | [dependencies.aws-smithy-json]
|
2843 3451 | path = "../aws-smithy-json"
|
2844 3452 | version = "0.61.4"
|
2845 3453 |
|
2846 3454 | [dependencies.aws-smithy-runtime]
|
2847 3455 | path = "../aws-smithy-runtime"
|
2848 3456 | features = ["client"]
|
2849 3457 | version = "1.8.5"
|
2850 3458 |
|
2851 3459 | [dependencies.aws-smithy-runtime-api]
|
2852 3460 | path = "../aws-smithy-runtime-api"
|
2853 3461 | features = ["client", "http-02x"]
|
2854 3462 | version = "1.8.5"
|
2855 3463 |
|
2856 3464 | [dependencies.aws-smithy-types]
|
2857 3465 | path = "../aws-smithy-types"
|
2858 3466 | version = "1.3.2"
|
2859 3467 |
|
2860 3468 | [dependencies.aws-types]
|
2861 3469 | path = "../aws-types"
|
2862 3470 | version = "1.3.8"
|
2863 3471 |
|
2864 3472 | [dependencies.bytes]
|
2865 3473 | version = "1.4.0"
|
2866 3474 |
|
2867 3475 | [dependencies.fastrand]
|
2868 3476 | version = "2.0.0"
|
2869 3477 |
|
2870 3478 | [dependencies.http]
|
2871 3479 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
|
2872 3480 | index dabb0e0..34cbc15 100644
|
2873 - | -- a/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
|
3481 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/polly/Cargo.toml
|
2874 3482 | @@ -1,65 +1,65 @@
|
2875 3483 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2876 3484 | [package]
|
2877 3485 | name = "aws-sdk-polly"
|
2878 3486 | version = "0.0.0-local"
|
2879 3487 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2880 3488 | description = "AWS SDK for Amazon Polly"
|
2881 3489 | edition = "2021"
|
2882 3490 | license = "Apache-2.0"
|
2883 3491 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2884 3492 | rust-version = "1.86.0"
|
2885 3493 | readme = "README.md"
|
2886 3494 | [package.metadata.smithy]
|
2887 3495 | codegen-version = "ci"
|
2888 3496 | [package.metadata.docs.rs]
|
2889 3497 | all-features = true
|
2890 3498 | targets = ["x86_64-unknown-linux-gnu"]
|
2891 3499 | [dependencies.aws-credential-types]
|
2892 3500 | path = "../aws-credential-types"
|
2893 3501 | version = "1.2.4"
|
2894 3502 |
|
2895 3503 | [dependencies.aws-runtime]
|
2896 3504 | path = "../aws-runtime"
|
2897 3505 | version = "1.5.9"
|
2898 3506 |
|
2899 3507 | [dependencies.aws-sigv4]
|
2900 3508 | path = "../aws-sigv4"
|
2901 - | version = "1.3.3"
|
3509 + | version = "1.3.4"
|
2902 3510 |
|
2903 3511 | [dependencies.aws-smithy-async]
|
2904 3512 | path = "../aws-smithy-async"
|
2905 3513 | version = "1.2.5"
|
2906 3514 |
|
2907 3515 | [dependencies.aws-smithy-http]
|
2908 3516 | path = "../aws-smithy-http"
|
2909 - | version = "0.62.2"
|
3517 + | version = "0.62.3"
|
2910 3518 |
|
2911 3519 | [dependencies.aws-smithy-json]
|
2912 3520 | path = "../aws-smithy-json"
|
2913 3521 | version = "0.61.4"
|
2914 3522 |
|
2915 3523 | [dependencies.aws-smithy-runtime]
|
2916 3524 | path = "../aws-smithy-runtime"
|
2917 3525 | features = ["client"]
|
2918 3526 | version = "1.8.5"
|
2919 3527 |
|
2920 3528 | [dependencies.aws-smithy-runtime-api]
|
2921 3529 | path = "../aws-smithy-runtime-api"
|
2922 3530 | features = ["client", "http-02x"]
|
2923 3531 | version = "1.8.5"
|
2924 3532 |
|
2925 3533 | [dependencies.aws-smithy-types]
|
2926 3534 | path = "../aws-smithy-types"
|
2927 3535 | version = "1.3.2"
|
2928 3536 |
|
2929 3537 | [dependencies.aws-types]
|
2930 3538 | path = "../aws-types"
|
2931 3539 | version = "1.3.8"
|
2932 3540 |
|
2933 3541 | [dependencies.bytes]
|
2934 3542 | version = "1.4.0"
|
2935 3543 |
|
2936 3544 | [dependencies.fastrand]
|
2937 3545 | version = "2.0.0"
|
2938 3546 |
|
2939 3547 | [dependencies.http]
|
2940 3548 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
|
2941 3549 | index a884716..f3d8713 100644
|
2942 - | -- a/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
|
3550 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/qldbsession/Cargo.toml
|
2943 3551 | @@ -1,61 +1,61 @@
|
2944 3552 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
2945 3553 | [package]
|
2946 3554 | name = "aws-sdk-qldbsession"
|
2947 3555 | version = "0.0.0-local"
|
2948 3556 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
2949 3557 | description = "AWS SDK for Amazon QLDB Session"
|
2950 3558 | edition = "2021"
|
2951 3559 | license = "Apache-2.0"
|
2952 3560 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
2953 3561 | rust-version = "1.86.0"
|
2954 3562 | readme = "README.md"
|
2955 3563 | [package.metadata.smithy]
|
2956 3564 | codegen-version = "ci"
|
2957 3565 | [package.metadata.docs.rs]
|
2958 3566 | all-features = true
|
2959 3567 | targets = ["x86_64-unknown-linux-gnu"]
|
2960 3568 | [dependencies.aws-credential-types]
|
2961 3569 | path = "../aws-credential-types"
|
2962 3570 | version = "1.2.4"
|
2963 3571 |
|
2964 3572 | [dependencies.aws-runtime]
|
2965 3573 | path = "../aws-runtime"
|
2966 3574 | version = "1.5.9"
|
2967 3575 |
|
2968 3576 | [dependencies.aws-smithy-async]
|
2969 3577 | path = "../aws-smithy-async"
|
2970 3578 | version = "1.2.5"
|
2971 3579 |
|
2972 3580 | [dependencies.aws-smithy-http]
|
2973 3581 | path = "../aws-smithy-http"
|
2974 - | version = "0.62.2"
|
3582 + | version = "0.62.3"
|
2975 3583 |
|
2976 3584 | [dependencies.aws-smithy-json]
|
2977 3585 | path = "../aws-smithy-json"
|
2978 3586 | version = "0.61.4"
|
2979 3587 |
|
2980 3588 | [dependencies.aws-smithy-runtime]
|
2981 3589 | path = "../aws-smithy-runtime"
|
2982 3590 | features = ["client"]
|
2983 3591 | version = "1.8.5"
|
2984 3592 |
|
2985 3593 | [dependencies.aws-smithy-runtime-api]
|
2986 3594 | path = "../aws-smithy-runtime-api"
|
2987 3595 | features = ["client", "http-02x"]
|
2988 3596 | version = "1.8.5"
|
2989 3597 |
|
2990 3598 | [dependencies.aws-smithy-types]
|
2991 3599 | path = "../aws-smithy-types"
|
2992 3600 | version = "1.3.2"
|
2993 3601 |
|
2994 3602 | [dependencies.aws-types]
|
2995 3603 | path = "../aws-types"
|
2996 3604 | version = "1.3.8"
|
2997 3605 |
|
2998 3606 | [dependencies.bytes]
|
2999 3607 | version = "1.4.0"
|
3000 3608 |
|
3001 3609 | [dependencies.fastrand]
|
3002 3610 | version = "2.0.0"
|
3003 3611 |
|
3004 3612 | [dependencies.http]
|
3005 3613 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
|
3006 3614 | index 32a7dc9..a2c752d 100644
|
3007 - | -- a/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
|
3615 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/route53/Cargo.toml
|
3008 3616 | @@ -1,61 +1,61 @@
|
3009 3617 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3010 3618 | [package]
|
3011 3619 | name = "aws-sdk-route53"
|
3012 3620 | version = "0.0.0-local"
|
3013 3621 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3014 3622 | description = "AWS SDK for Amazon Route 53"
|
3015 3623 | edition = "2021"
|
3016 3624 | license = "Apache-2.0"
|
3017 3625 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3018 3626 | rust-version = "1.86.0"
|
3019 3627 | readme = "README.md"
|
3020 3628 | [package.metadata.smithy]
|
3021 3629 | codegen-version = "ci"
|
3022 3630 | [package.metadata.docs.rs]
|
3023 3631 | all-features = true
|
3024 3632 | targets = ["x86_64-unknown-linux-gnu"]
|
3025 3633 | [dependencies.aws-credential-types]
|
3026 3634 | path = "../aws-credential-types"
|
3027 3635 | version = "1.2.4"
|
3028 3636 |
|
3029 3637 | [dependencies.aws-runtime]
|
3030 3638 | path = "../aws-runtime"
|
3031 3639 | version = "1.5.9"
|
3032 3640 |
|
3033 3641 | [dependencies.aws-smithy-async]
|
3034 3642 | path = "../aws-smithy-async"
|
3035 3643 | version = "1.2.5"
|
3036 3644 |
|
3037 3645 | [dependencies.aws-smithy-http]
|
3038 3646 | path = "../aws-smithy-http"
|
3039 - | version = "0.62.2"
|
3647 + | version = "0.62.3"
|
3040 3648 |
|
3041 3649 | [dependencies.aws-smithy-json]
|
3042 3650 | path = "../aws-smithy-json"
|
3043 3651 | version = "0.61.4"
|
3044 3652 |
|
3045 3653 | [dependencies.aws-smithy-runtime]
|
3046 3654 | path = "../aws-smithy-runtime"
|
3047 3655 | features = ["client"]
|
3048 3656 | version = "1.8.5"
|
3049 3657 |
|
3050 3658 | [dependencies.aws-smithy-runtime-api]
|
3051 3659 | path = "../aws-smithy-runtime-api"
|
3052 3660 | features = ["client", "http-02x"]
|
3053 3661 | version = "1.8.5"
|
3054 3662 |
|
3055 3663 | [dependencies.aws-smithy-types]
|
3056 3664 | path = "../aws-smithy-types"
|
3057 3665 | version = "1.3.2"
|
3058 3666 |
|
3059 3667 | [dependencies.aws-smithy-xml]
|
3060 3668 | path = "../aws-smithy-xml"
|
3061 3669 | version = "0.60.10"
|
3062 3670 |
|
3063 3671 | [dependencies.aws-types]
|
3064 3672 | path = "../aws-types"
|
3065 3673 | version = "1.3.8"
|
3066 3674 |
|
3067 3675 | [dependencies.fastrand]
|
3068 3676 | version = "2.0.0"
|
3069 3677 |
|
3070 3678 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
|
3071 3679 | index f65e261..2f6bec0 100644
|
3072 - | -- a/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
|
3680 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/s3/Cargo.toml
|
3073 3681 | @@ -1,75 +1,75 @@
|
3074 3682 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3075 3683 | [package]
|
3076 3684 | name = "aws-sdk-s3"
|
3077 3685 | version = "0.0.0-local"
|
3078 3686 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3079 3687 | description = "AWS SDK for Amazon Simple Storage Service"
|
3080 3688 | edition = "2021"
|
3081 3689 | license = "Apache-2.0"
|
3082 3690 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3083 3691 | rust-version = "1.86.0"
|
3084 3692 | readme = "README.md"
|
3085 3693 | [package.metadata.smithy]
|
3086 3694 | codegen-version = "ci"
|
3087 3695 | [package.metadata.docs.rs]
|
3088 3696 | all-features = true
|
3089 3697 | targets = ["x86_64-unknown-linux-gnu"]
|
3090 3698 | [dependencies.aws-credential-types]
|
3091 3699 | path = "../aws-credential-types"
|
3092 3700 | version = "1.2.4"
|
3093 3701 |
|
3094 3702 | [dependencies.aws-runtime]
|
3095 3703 | path = "../aws-runtime"
|
3096 3704 | features = ["event-stream", "http-02x"]
|
3097 3705 | version = "1.5.9"
|
3098 3706 |
|
3099 3707 | [dependencies.aws-sigv4]
|
3100 3708 | path = "../aws-sigv4"
|
3101 - | version = "1.3.3"
|
3709 + | version = "1.3.4"
|
3102 3710 |
|
3103 3711 | [dependencies.aws-smithy-async]
|
3104 3712 | path = "../aws-smithy-async"
|
3105 3713 | version = "1.2.5"
|
3106 3714 |
|
3107 3715 | [dependencies.aws-smithy-checksums]
|
3108 3716 | path = "../aws-smithy-checksums"
|
3109 3717 | version = "0.63.5"
|
3110 3718 |
|
3111 3719 | [dependencies.aws-smithy-eventstream]
|
3112 3720 | path = "../aws-smithy-eventstream"
|
3113 3721 | version = "0.60.10"
|
3114 3722 |
|
3115 3723 | [dependencies.aws-smithy-http]
|
3116 3724 | path = "../aws-smithy-http"
|
3117 3725 | features = ["event-stream"]
|
3118 - | version = "0.62.2"
|
3726 + | version = "0.62.3"
|
3119 3727 |
|
3120 3728 | [dependencies.aws-smithy-json]
|
3121 3729 | path = "../aws-smithy-json"
|
3122 3730 | version = "0.61.4"
|
3123 3731 |
|
3124 3732 | [dependencies.aws-smithy-runtime]
|
3125 3733 | path = "../aws-smithy-runtime"
|
3126 3734 | features = ["client"]
|
3127 3735 | version = "1.8.5"
|
3128 3736 |
|
3129 3737 | [dependencies.aws-smithy-runtime-api]
|
3130 3738 | path = "../aws-smithy-runtime-api"
|
3131 3739 | features = ["client", "http-02x"]
|
3132 3740 | version = "1.8.5"
|
3133 3741 |
|
3134 3742 | [dependencies.aws-smithy-types]
|
3135 3743 | path = "../aws-smithy-types"
|
3136 3744 | version = "1.3.2"
|
3137 3745 |
|
3138 3746 | [dependencies.aws-smithy-xml]
|
3139 3747 | path = "../aws-smithy-xml"
|
3140 3748 | version = "0.60.10"
|
3141 3749 |
|
3142 3750 | [dependencies.aws-types]
|
3143 3751 | path = "../aws-types"
|
3144 3752 | version = "1.3.8"
|
3145 3753 |
|
3146 3754 | [dependencies.bytes]
|
3147 3755 | version = "1.4.0"
|
3148 3756 |
|
3149 3757 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
|
3150 3758 | index b4d1cdd..861c0cc 100644
|
3151 - | -- a/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
|
3759 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/s3control/Cargo.toml
|
3152 3760 | @@ -1,61 +1,61 @@
|
3153 3761 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3154 3762 | [package]
|
3155 3763 | name = "aws-sdk-s3control"
|
3156 3764 | version = "0.0.0-local"
|
3157 3765 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3158 3766 | description = "AWS SDK for AWS S3 Control"
|
3159 3767 | edition = "2021"
|
3160 3768 | license = "Apache-2.0"
|
3161 3769 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3162 3770 | rust-version = "1.86.0"
|
3163 3771 | readme = "README.md"
|
3164 3772 | [package.metadata.smithy]
|
3165 3773 | codegen-version = "ci"
|
3166 3774 | [package.metadata.docs.rs]
|
3167 3775 | all-features = true
|
3168 3776 | targets = ["x86_64-unknown-linux-gnu"]
|
3169 3777 | [dependencies.aws-credential-types]
|
3170 3778 | path = "../aws-credential-types"
|
3171 3779 | version = "1.2.4"
|
3172 3780 |
|
3173 3781 | [dependencies.aws-runtime]
|
3174 3782 | path = "../aws-runtime"
|
3175 3783 | version = "1.5.9"
|
3176 3784 |
|
3177 3785 | [dependencies.aws-smithy-async]
|
3178 3786 | path = "../aws-smithy-async"
|
3179 3787 | version = "1.2.5"
|
3180 3788 |
|
3181 3789 | [dependencies.aws-smithy-http]
|
3182 3790 | path = "../aws-smithy-http"
|
3183 - | version = "0.62.2"
|
3791 + | version = "0.62.3"
|
3184 3792 |
|
3185 3793 | [dependencies.aws-smithy-json]
|
3186 3794 | path = "../aws-smithy-json"
|
3187 3795 | version = "0.61.4"
|
3188 3796 |
|
3189 3797 | [dependencies.aws-smithy-runtime]
|
3190 3798 | path = "../aws-smithy-runtime"
|
3191 3799 | features = ["client"]
|
3192 3800 | version = "1.8.5"
|
3193 3801 |
|
3194 3802 | [dependencies.aws-smithy-runtime-api]
|
3195 3803 | path = "../aws-smithy-runtime-api"
|
3196 3804 | features = ["client", "http-02x"]
|
3197 3805 | version = "1.8.5"
|
3198 3806 |
|
3199 3807 | [dependencies.aws-smithy-types]
|
3200 3808 | path = "../aws-smithy-types"
|
3201 3809 | version = "1.3.2"
|
3202 3810 |
|
3203 3811 | [dependencies.aws-smithy-xml]
|
3204 3812 | path = "../aws-smithy-xml"
|
3205 3813 | version = "0.60.10"
|
3206 3814 |
|
3207 3815 | [dependencies.aws-types]
|
3208 3816 | path = "../aws-types"
|
3209 3817 | version = "1.3.8"
|
3210 3818 |
|
3211 3819 | [dependencies.fastrand]
|
3212 3820 | version = "2.0.0"
|
3213 3821 |
|
3214 3822 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
|
3215 3823 | index 2cde182..fc367f4 100644
|
3216 - | -- a/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
|
3824 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/sso/Cargo.toml
|
3217 3825 | @@ -1,61 +1,61 @@
|
3218 3826 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3219 3827 | [package]
|
3220 3828 | name = "aws-sdk-sso"
|
3221 3829 | version = "0.0.0-local"
|
3222 3830 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3223 3831 | description = "AWS SDK for AWS Single Sign-On"
|
3224 3832 | edition = "2021"
|
3225 3833 | license = "Apache-2.0"
|
3226 3834 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3227 3835 | rust-version = "1.86.0"
|
3228 3836 | readme = "README.md"
|
3229 3837 | [package.metadata.smithy]
|
3230 3838 | codegen-version = "ci"
|
3231 3839 | [package.metadata.docs.rs]
|
3232 3840 | all-features = true
|
3233 3841 | targets = ["x86_64-unknown-linux-gnu"]
|
3234 3842 | [dependencies.aws-credential-types]
|
3235 3843 | path = "../aws-credential-types"
|
3236 3844 | version = "1.2.4"
|
3237 3845 |
|
3238 3846 | [dependencies.aws-runtime]
|
3239 3847 | path = "../aws-runtime"
|
3240 3848 | version = "1.5.9"
|
3241 3849 |
|
3242 3850 | [dependencies.aws-smithy-async]
|
3243 3851 | path = "../aws-smithy-async"
|
3244 3852 | version = "1.2.5"
|
3245 3853 |
|
3246 3854 | [dependencies.aws-smithy-http]
|
3247 3855 | path = "../aws-smithy-http"
|
3248 - | version = "0.62.2"
|
3856 + | version = "0.62.3"
|
3249 3857 |
|
3250 3858 | [dependencies.aws-smithy-json]
|
3251 3859 | path = "../aws-smithy-json"
|
3252 3860 | version = "0.61.4"
|
3253 3861 |
|
3254 3862 | [dependencies.aws-smithy-runtime]
|
3255 3863 | path = "../aws-smithy-runtime"
|
3256 3864 | features = ["client"]
|
3257 3865 | version = "1.8.5"
|
3258 3866 |
|
3259 3867 | [dependencies.aws-smithy-runtime-api]
|
3260 3868 | path = "../aws-smithy-runtime-api"
|
3261 3869 | features = ["client", "http-02x"]
|
3262 3870 | version = "1.8.5"
|
3263 3871 |
|
3264 3872 | [dependencies.aws-smithy-types]
|
3265 3873 | path = "../aws-smithy-types"
|
3266 3874 | version = "1.3.2"
|
3267 3875 |
|
3268 3876 | [dependencies.aws-types]
|
3269 3877 | path = "../aws-types"
|
3270 3878 | version = "1.3.8"
|
3271 3879 |
|
3272 3880 | [dependencies.bytes]
|
3273 3881 | version = "1.4.0"
|
3274 3882 |
|
3275 3883 | [dependencies.fastrand]
|
3276 3884 | version = "2.0.0"
|
3277 3885 |
|
3278 3886 | [dependencies.http]
|
3279 3887 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
|
3280 3888 | index 7a34c16..588d0bd 100644
|
3281 - | -- a/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
|
3889 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/ssooidc/Cargo.toml
|
3282 3890 | @@ -1,61 +1,61 @@
|
3283 3891 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3284 3892 | [package]
|
3285 3893 | name = "aws-sdk-ssooidc"
|
3286 3894 | version = "0.0.0-local"
|
3287 3895 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3288 3896 | description = "AWS SDK for AWS SSO OIDC"
|
3289 3897 | edition = "2021"
|
3290 3898 | license = "Apache-2.0"
|
3291 3899 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3292 3900 | rust-version = "1.86.0"
|
3293 3901 | readme = "README.md"
|
3294 3902 | [package.metadata.smithy]
|
3295 3903 | codegen-version = "ci"
|
3296 3904 | [package.metadata.docs.rs]
|
3297 3905 | all-features = true
|
3298 3906 | targets = ["x86_64-unknown-linux-gnu"]
|
3299 3907 | [dependencies.aws-credential-types]
|
3300 3908 | path = "../aws-credential-types"
|
3301 3909 | version = "1.2.4"
|
3302 3910 |
|
3303 3911 | [dependencies.aws-runtime]
|
3304 3912 | path = "../aws-runtime"
|
3305 3913 | version = "1.5.9"
|
3306 3914 |
|
3307 3915 | [dependencies.aws-smithy-async]
|
3308 3916 | path = "../aws-smithy-async"
|
3309 3917 | version = "1.2.5"
|
3310 3918 |
|
3311 3919 | [dependencies.aws-smithy-http]
|
3312 3920 | path = "../aws-smithy-http"
|
3313 - | version = "0.62.2"
|
3921 + | version = "0.62.3"
|
3314 3922 |
|
3315 3923 | [dependencies.aws-smithy-json]
|
3316 3924 | path = "../aws-smithy-json"
|
3317 3925 | version = "0.61.4"
|
3318 3926 |
|
3319 3927 | [dependencies.aws-smithy-runtime]
|
3320 3928 | path = "../aws-smithy-runtime"
|
3321 3929 | features = ["client"]
|
3322 3930 | version = "1.8.5"
|
3323 3931 |
|
3324 3932 | [dependencies.aws-smithy-runtime-api]
|
3325 3933 | path = "../aws-smithy-runtime-api"
|
3326 3934 | features = ["client", "http-02x"]
|
3327 3935 | version = "1.8.5"
|
3328 3936 |
|
3329 3937 | [dependencies.aws-smithy-types]
|
3330 3938 | path = "../aws-smithy-types"
|
3331 3939 | version = "1.3.2"
|
3332 3940 |
|
3333 3941 | [dependencies.aws-types]
|
3334 3942 | path = "../aws-types"
|
3335 3943 | version = "1.3.8"
|
3336 3944 |
|
3337 3945 | [dependencies.bytes]
|
3338 3946 | version = "1.4.0"
|
3339 3947 |
|
3340 3948 | [dependencies.fastrand]
|
3341 3949 | version = "2.0.0"
|
3342 3950 |
|
3343 3951 | [dependencies.http]
|
3344 3952 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
|
3345 3953 | index 895dfb3..f2ce34e 100644
|
3346 - | -- a/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
|
3954 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/sts/Cargo.toml
|
3347 3955 | @@ -1,61 +1,61 @@
|
3348 3956 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3349 3957 | [package]
|
3350 3958 | name = "aws-sdk-sts"
|
3351 3959 | version = "0.0.0-local"
|
3352 3960 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3353 3961 | description = "AWS SDK for AWS Security Token Service"
|
3354 3962 | edition = "2021"
|
3355 3963 | license = "Apache-2.0"
|
3356 3964 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3357 3965 | rust-version = "1.86.0"
|
3358 3966 | readme = "README.md"
|
3359 3967 | [package.metadata.smithy]
|
3360 3968 | codegen-version = "ci"
|
3361 3969 | [package.metadata.docs.rs]
|
3362 3970 | all-features = true
|
3363 3971 | targets = ["x86_64-unknown-linux-gnu"]
|
3364 3972 | [dependencies.aws-credential-types]
|
3365 3973 | path = "../aws-credential-types"
|
3366 3974 | version = "1.2.4"
|
3367 3975 |
|
3368 3976 | [dependencies.aws-runtime]
|
3369 3977 | path = "../aws-runtime"
|
3370 3978 | version = "1.5.9"
|
3371 3979 |
|
3372 3980 | [dependencies.aws-smithy-async]
|
3373 3981 | path = "../aws-smithy-async"
|
3374 3982 | version = "1.2.5"
|
3375 3983 |
|
3376 3984 | [dependencies.aws-smithy-http]
|
3377 3985 | path = "../aws-smithy-http"
|
3378 - | version = "0.62.2"
|
3986 + | version = "0.62.3"
|
3379 3987 |
|
3380 3988 | [dependencies.aws-smithy-json]
|
3381 3989 | path = "../aws-smithy-json"
|
3382 3990 | version = "0.61.4"
|
3383 3991 |
|
3384 3992 | [dependencies.aws-smithy-query]
|
3385 3993 | path = "../aws-smithy-query"
|
3386 3994 | version = "0.60.7"
|
3387 3995 |
|
3388 3996 | [dependencies.aws-smithy-runtime]
|
3389 3997 | path = "../aws-smithy-runtime"
|
3390 3998 | features = ["client"]
|
3391 3999 | version = "1.8.5"
|
3392 4000 |
|
3393 4001 | [dependencies.aws-smithy-runtime-api]
|
3394 4002 | path = "../aws-smithy-runtime-api"
|
3395 4003 | features = ["client", "http-02x"]
|
3396 4004 | version = "1.8.5"
|
3397 4005 |
|
3398 4006 | [dependencies.aws-smithy-types]
|
3399 4007 | path = "../aws-smithy-types"
|
3400 4008 | version = "1.3.2"
|
3401 4009 |
|
3402 4010 | [dependencies.aws-smithy-xml]
|
3403 4011 | path = "../aws-smithy-xml"
|
3404 4012 | version = "0.60.10"
|
3405 4013 |
|
3406 4014 | [dependencies.aws-types]
|
3407 4015 | path = "../aws-types"
|
3408 4016 | version = "1.3.8"
|
3409 4017 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
|
3410 4018 | index d556561..91178b6 100644
|
3411 - | -- a/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
|
4019 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamquery/Cargo.toml
|
3412 4020 | @@ -1,61 +1,61 @@
|
3413 4021 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3414 4022 | [package]
|
3415 4023 | name = "aws-sdk-timestreamquery"
|
3416 4024 | version = "0.0.0-local"
|
3417 4025 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3418 4026 | description = "AWS SDK for Amazon Timestream Query"
|
3419 4027 | edition = "2021"
|
3420 4028 | license = "Apache-2.0"
|
3421 4029 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3422 4030 | rust-version = "1.86.0"
|
3423 4031 | readme = "README.md"
|
3424 4032 | [package.metadata.smithy]
|
3425 4033 | codegen-version = "ci"
|
3426 4034 | [package.metadata.docs.rs]
|
3427 4035 | all-features = true
|
3428 4036 | targets = ["x86_64-unknown-linux-gnu"]
|
3429 4037 | [dependencies.aws-credential-types]
|
3430 4038 | path = "../aws-credential-types"
|
3431 4039 | version = "1.2.4"
|
3432 4040 |
|
3433 4041 | [dependencies.aws-runtime]
|
3434 4042 | path = "../aws-runtime"
|
3435 4043 | version = "1.5.9"
|
3436 4044 |
|
3437 4045 | [dependencies.aws-smithy-async]
|
3438 4046 | path = "../aws-smithy-async"
|
3439 4047 | version = "1.2.5"
|
3440 4048 |
|
3441 4049 | [dependencies.aws-smithy-http]
|
3442 4050 | path = "../aws-smithy-http"
|
3443 - | version = "0.62.2"
|
4051 + | version = "0.62.3"
|
3444 4052 |
|
3445 4053 | [dependencies.aws-smithy-json]
|
3446 4054 | path = "../aws-smithy-json"
|
3447 4055 | version = "0.61.4"
|
3448 4056 |
|
3449 4057 | [dependencies.aws-smithy-runtime]
|
3450 4058 | path = "../aws-smithy-runtime"
|
3451 4059 | features = ["client"]
|
3452 4060 | version = "1.8.5"
|
3453 4061 |
|
3454 4062 | [dependencies.aws-smithy-runtime-api]
|
3455 4063 | path = "../aws-smithy-runtime-api"
|
3456 4064 | features = ["client", "http-02x"]
|
3457 4065 | version = "1.8.5"
|
3458 4066 |
|
3459 4067 | [dependencies.aws-smithy-types]
|
3460 4068 | path = "../aws-smithy-types"
|
3461 4069 | version = "1.3.2"
|
3462 4070 |
|
3463 4071 | [dependencies.aws-types]
|
3464 4072 | path = "../aws-types"
|
3465 4073 | version = "1.3.8"
|
3466 4074 |
|
3467 4075 | [dependencies.bytes]
|
3468 4076 | version = "1.4.0"
|
3469 4077 |
|
3470 4078 | [dependencies.fastrand]
|
3471 4079 | version = "2.0.0"
|
3472 4080 |
|
3473 4081 | [dependencies.http]
|
3474 4082 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
|
3475 4083 | index 0c56e4c..95731e3 100644
|
3476 - | -- a/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
|
4084 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/timestreamwrite/Cargo.toml
|
3477 4085 | @@ -1,61 +1,61 @@
|
3478 4086 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3479 4087 | [package]
|
3480 4088 | name = "aws-sdk-timestreamwrite"
|
3481 4089 | version = "0.0.0-local"
|
3482 4090 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3483 4091 | description = "AWS SDK for Amazon Timestream Write"
|
3484 4092 | edition = "2021"
|
3485 4093 | license = "Apache-2.0"
|
3486 4094 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3487 4095 | rust-version = "1.86.0"
|
3488 4096 | readme = "README.md"
|
3489 4097 | [package.metadata.smithy]
|
3490 4098 | codegen-version = "ci"
|
3491 4099 | [package.metadata.docs.rs]
|
3492 4100 | all-features = true
|
3493 4101 | targets = ["x86_64-unknown-linux-gnu"]
|
3494 4102 | [dependencies.aws-credential-types]
|
3495 4103 | path = "../aws-credential-types"
|
3496 4104 | version = "1.2.4"
|
3497 4105 |
|
3498 4106 | [dependencies.aws-runtime]
|
3499 4107 | path = "../aws-runtime"
|
3500 4108 | version = "1.5.9"
|
3501 4109 |
|
3502 4110 | [dependencies.aws-smithy-async]
|
3503 4111 | path = "../aws-smithy-async"
|
3504 4112 | version = "1.2.5"
|
3505 4113 |
|
3506 4114 | [dependencies.aws-smithy-http]
|
3507 4115 | path = "../aws-smithy-http"
|
3508 - | version = "0.62.2"
|
4116 + | version = "0.62.3"
|
3509 4117 |
|
3510 4118 | [dependencies.aws-smithy-json]
|
3511 4119 | path = "../aws-smithy-json"
|
3512 4120 | version = "0.61.4"
|
3513 4121 |
|
3514 4122 | [dependencies.aws-smithy-runtime]
|
3515 4123 | path = "../aws-smithy-runtime"
|
3516 4124 | features = ["client"]
|
3517 4125 | version = "1.8.5"
|
3518 4126 |
|
3519 4127 | [dependencies.aws-smithy-runtime-api]
|
3520 4128 | path = "../aws-smithy-runtime-api"
|
3521 4129 | features = ["client", "http-02x"]
|
3522 4130 | version = "1.8.5"
|
3523 4131 |
|
3524 4132 | [dependencies.aws-smithy-types]
|
3525 4133 | path = "../aws-smithy-types"
|
3526 4134 | version = "1.3.2"
|
3527 4135 |
|
3528 4136 | [dependencies.aws-types]
|
3529 4137 | path = "../aws-types"
|
3530 4138 | version = "1.3.8"
|
3531 4139 |
|
3532 4140 | [dependencies.bytes]
|
3533 4141 | version = "1.4.0"
|
3534 4142 |
|
3535 4143 | [dependencies.fastrand]
|
3536 4144 | version = "2.0.0"
|
3537 4145 |
|
3538 4146 | [dependencies.http]
|
3539 4147 | diff --git a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
|
3540 4148 | index 5b35037..9fb220a 100644
|
3541 - | -- a/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
|
4149 + | ++ b/tmp-codegen-diff/aws-sdk/sdk/transcribestreaming/Cargo.toml
|
3542 4150 | @@ -1,71 +1,71 @@
|
3543 4151 | # Code generated by software.amazon.smithy.rust.codegen.smithy-rs. DO NOT EDIT.
|
3544 4152 | [package]
|
3545 4153 | name = "aws-sdk-transcribestreaming"
|
3546 4154 | version = "0.0.0-local"
|
3547 4155 | authors = ["AWS Rust SDK Team <aws-sdk-rust@amazon.com>", "Russell Cohen <rcoh@amazon.com>"]
|
3548 4156 | description = "AWS SDK for Amazon Transcribe Streaming Service"
|
3549 4157 | edition = "2021"
|
3550 4158 | license = "Apache-2.0"
|
3551 4159 | repository = "https://github.com/awslabs/aws-sdk-rust"
|
3552 4160 | rust-version = "1.86.0"
|
3553 4161 | readme = "README.md"
|
3554 4162 | [package.metadata.smithy]
|
3555 4163 | codegen-version = "ci"
|
3556 4164 | [package.metadata.docs.rs]
|
3557 4165 | all-features = true
|
3558 4166 | targets = ["x86_64-unknown-linux-gnu"]
|
3559 4167 | [dependencies.aws-credential-types]
|
3560 4168 | path = "../aws-credential-types"
|
3561 4169 | version = "1.2.4"
|
3562 4170 |
|
3563 4171 | [dependencies.aws-runtime]
|
3564 4172 | path = "../aws-runtime"
|
3565 4173 | features = ["event-stream"]
|
3566 4174 | version = "1.5.9"
|
3567 4175 |
|
3568 4176 | [dependencies.aws-sigv4]
|
3569 4177 | path = "../aws-sigv4"
|
3570 - | version = "1.3.3"
|
4178 + | version = "1.3.4"
|
3571 4179 |
|
3572 4180 | [dependencies.aws-smithy-async]
|
3573 4181 | path = "../aws-smithy-async"
|
3574 4182 | version = "1.2.5"
|
3575 4183 |
|
3576 4184 | [dependencies.aws-smithy-eventstream]
|
3577 4185 | path = "../aws-smithy-eventstream"
|
3578 4186 | version = "0.60.10"
|
3579 4187 |
|
3580 4188 | [dependencies.aws-smithy-http]
|
3581 4189 | path = "../aws-smithy-http"
|
3582 4190 | features = ["event-stream"]
|
3583 - | version = "0.62.2"
|
4191 + | version = "0.62.3"
|
3584 4192 |
|
3585 4193 | [dependencies.aws-smithy-json]
|
3586 4194 | path = "../aws-smithy-json"
|
3587 4195 | version = "0.61.4"
|
3588 4196 |
|
3589 4197 | [dependencies.aws-smithy-runtime]
|
3590 4198 | path = "../aws-smithy-runtime"
|
3591 4199 | features = ["client"]
|
3592 4200 | version = "1.8.5"
|
3593 4201 |
|