diff options
-rw-r--r-- | lib/base64.c | 2 | ||||
-rw-r--r-- | tests/unit/unit1302.c | 20 |
2 files changed, 20 insertions, 2 deletions
diff --git a/lib/base64.c b/lib/base64.c index 9ba9a7d3e..bd9ba35be 100644 --- a/lib/base64.c +++ b/lib/base64.c @@ -303,7 +303,7 @@ CURLcode Curl_base64_encode(struct SessionHandle *data, * * When encoded data length is 0, returns NULL in *outptr. * - * @unittest: + * @unittest: 1302 */ CURLcode Curl_base64url_encode(struct SessionHandle *data, const char *inputbuff, size_t insize, diff --git a/tests/unit/unit1302.c b/tests/unit/unit1302.c index 6886af8c4..412a71f01 100644 --- a/tests/unit/unit1302.c +++ b/tests/unit/unit1302.c @@ -5,7 +5,7 @@ * | (__| |_| | _ <| |___ * \___|\___/|_| \_\_____| * - * Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al. + * Copyright (C) 1998 - 2014, 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 @@ -73,6 +73,24 @@ fail_unless(size == 8, "size should be 8"); verify_memory( output, "aWlpaQ==", 8); Curl_safefree(output); +rc = Curl_base64_encode(data, "\xff\x01\xfe\x02", 4, &output, &size); +fail_unless(rc == CURLE_OK, "return code should be CURLE_OK"); +fail_unless(size == 8, "size should be 8"); +verify_memory( output, "/wH+Ag==", 8); +Curl_safefree(output); + +rc = Curl_base64url_encode(data, "\xff\x01\xfe\x02", 4, &output, &size); +fail_unless(rc == CURLE_OK, "return code should be CURLE_OK"); +fail_unless(size == 8, "size should be 8"); +verify_memory( output, "_wH-Ag==", 8); +Curl_safefree(output); + +rc = Curl_base64url_encode(data, "iiii", 4, &output, &size); +fail_unless(rc == CURLE_OK, "return code should be CURLE_OK"); +fail_unless(size == 8, "size should be 8"); +verify_memory( output, "aWlpaQ==", 8); +Curl_safefree(output); + /* 0 length makes it do strlen() */ rc = Curl_base64_encode(data, "iiii", 0, &output, &size); fail_unless(rc == CURLE_OK, "return code should be CURLE_OK"); |