@@ -127,11 +127,13 @@ char* AWSClient4::createCanonicalHeaders() {
127
127
128
128
char * AWSClient4::createRequestHeaders (char * signature) {
129
129
char headers[1000 ] = " " ;
130
- sprintf (headers, " %sContent-Type: %s\n " , headers, contentType);
131
- sprintf (headers, " %sHost: %s\n " , headers, createHost ());
132
- sprintf (headers, " %sx-amz-content-sha256: %s\n " , headers, payloadHash);
133
- sprintf (headers, " %sx-amz-date: %sT%sZ\n " , headers, awsDate, awsTime);
134
- sprintf (headers, " %sAuthorization: AWS4-HMAC-SHA256 Credential=%s/%s/%s/%s/aws4_request,SignedHeaders=%s,Signature=%s\n " , headers, awsKeyID, awsDate, awsRegion, awsService, signedHeaders, signature);
130
+ sprintf (headers, " %sContent-Type: %s\r\n " , headers, contentType);
131
+ sprintf (headers, " %sConnection: close\r\n " , headers);
132
+ sprintf (headers, " %sContent-Length: %d\r\n " , headers, strlen (payload.getCStr ()));
133
+ sprintf (headers, " %sHost: %s\r\n " , headers, createHost ());
134
+ sprintf (headers, " %sx-amz-content-sha256: %s\r\n " , headers, payloadHash);
135
+ sprintf (headers, " %sx-amz-date: %sT%sZ\r\n " , headers, awsDate, awsTime);
136
+ sprintf (headers, " %sAuthorization: AWS4-HMAC-SHA256 Credential=%s/%s/%s/%s/aws4_request,SignedHeaders=%s,Signature=%s\r\n " , headers, awsKeyID, awsDate, awsRegion, awsService, signedHeaders, signature);
135
137
return headers;
136
138
}
137
139
@@ -228,8 +230,8 @@ char* AWSClient4::createRequest(MinimalString &reqPayload) {
228
230
char *headers = createRequestHeaders (signature);
229
231
230
232
char *host = createHost ();
231
- char * request = new char [strlen (method) + strlen (host) + strlen (awsPath) + strlen (headers) + strlen (reqPayload.getCStr ()) + 12 ]();
232
- sprintf (request, " %s %s HTTP/1.1\n %s\n %s" , method, awsPath, headers, reqPayload.getCStr ());
233
+ char * request = new char [strlen (method) + strlen (host) + strlen (awsPath) + strlen (headers) + strlen (reqPayload.getCStr ()) + 16 ]();
234
+ sprintf (request, " %s %s HTTP/1.1\r\ n %s\r\ n %s\r\n\r\n " , method, awsPath, headers, reqPayload.getCStr ());
233
235
234
236
return request;
235
237
}
0 commit comments