mirror of
https://github.com/curl/curl.git
synced 2024-12-15 06:40:09 +08:00
fcf8f68546
1956 adds the sha256 value corresponding to an empty buffer 1957 adds an arbitrary value and confirms that the signature differs from 1956 1958 adds whitespace to 1957 and confirms that the signature matches 1957 1959 adds a value longer than 'char sha_hex[65]' in Curl_output_aws_sigv4() Signed-off-by: Casey Bodley <cbodley@redhat.com> Closes #9804
74 lines
2.3 KiB
C
74 lines
2.3 KiB
C
/***************************************************************************
|
|
* _ _ ____ _
|
|
* Project ___| | | | _ \| |
|
|
* / __| | | | |_) | |
|
|
* | (__| |_| | _ <| |___
|
|
* \___|\___/|_| \_\_____|
|
|
*
|
|
* Copyright (C) 1998 - 2022, Daniel Stenberg, <daniel@haxx.se>, et al.
|
|
*
|
|
* This software is licensed as described in the file COPYING, which
|
|
* you should have received as part of this distribution. The terms
|
|
* are also available at https://curl.haxx.se/docs/copyright.html.
|
|
*
|
|
* You may opt to use, copy, modify, merge, publish, distribute and/or sell
|
|
* copies of the Software, and permit persons to whom the Software is
|
|
* furnished to do so, under the terms of the COPYING file.
|
|
*
|
|
* This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
|
|
* KIND, either express or implied.
|
|
*
|
|
* SPDX-License-Identifier: curl
|
|
*
|
|
***************************************************************************/
|
|
#include "test.h"
|
|
|
|
#include "memdebug.h"
|
|
|
|
int test(char *URL)
|
|
{
|
|
CURL *curl;
|
|
CURLcode res = TEST_ERR_MAJOR_BAD;
|
|
struct curl_slist *list = NULL;
|
|
struct curl_slist *connect_to = NULL;
|
|
|
|
if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
|
|
fprintf(stderr, "curl_global_init() failed\n");
|
|
return TEST_ERR_MAJOR_BAD;
|
|
}
|
|
|
|
curl = curl_easy_init();
|
|
if(!curl) {
|
|
fprintf(stderr, "curl_easy_init() failed\n");
|
|
curl_global_cleanup();
|
|
return TEST_ERR_MAJOR_BAD;
|
|
}
|
|
|
|
test_setopt(curl, CURLOPT_VERBOSE, 1L);
|
|
test_setopt(curl, CURLOPT_AWS_SIGV4, "xxx");
|
|
test_setopt(curl, CURLOPT_USERPWD, "xxx");
|
|
test_setopt(curl, CURLOPT_HEADER, 0L);
|
|
test_setopt(curl, CURLOPT_URL, URL);
|
|
list = curl_slist_append(list, "Content-Type: application/json");
|
|
if(!list)
|
|
goto test_cleanup;
|
|
if(libtest_arg2) {
|
|
connect_to = curl_slist_append(connect_to, libtest_arg2);
|
|
}
|
|
test_setopt(curl, CURLOPT_CONNECT_TO, connect_to);
|
|
curl_slist_append(list, "X-Xxx-Content-Sha256: "
|
|
"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855");
|
|
test_setopt(curl, CURLOPT_HTTPHEADER, list);
|
|
|
|
res = curl_easy_perform(curl);
|
|
|
|
test_cleanup:
|
|
|
|
curl_slist_free_all(connect_to);
|
|
curl_slist_free_all(list);
|
|
curl_easy_cleanup(curl);
|
|
curl_global_cleanup();
|
|
|
|
return res;
|
|
}
|