curl/lib
Patrick Monnerat c2e72c7812
base64: base64url encoding has no padding
See RFC4648 section 5 and RFC7540 section 3.2.1.

Suppress generation of '=' padding of base64url encoding. This is
accomplished by considering the string beginning at offset 64 in the
character table as the padding: this is "=" for base64, "" for base64url.

Also use strchr() to replace character search loops where possible.

Suppress erroneous comments about empty encoding results.

Adjust unit test 1302 to unpadded base64url encoding and add tests for
empty results.

Closes #9139
2022-07-19 11:06:20 +02:00
..
vauth digest: fix missing increment of 'nc' value for auth-int 2022-07-06 04:14:37 -04:00
vquic
vssh libssh: skip the fake-close when libssh does the right thing 2022-06-15 23:43:35 +02:00
vtls openssl: fix BoringSSL symbol conflicts with LDAP and Schannel 2022-07-14 07:14:22 +00:00
.checksrc
.gitattributes copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
.gitignore
altsvc.c
altsvc.h
amigaos.c
amigaos.h
arpa_telnet.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
asyn-ares.c
asyn-thread.c
asyn.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
base64.c
bufref.c
bufref.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
c-hyper.c hyper: use wakers for curl pause/resume 2022-06-30 10:19:08 +02:00
c-hyper.h hyper: use wakers for curl pause/resume 2022-06-30 10:19:08 +02:00
CMakeLists.txt
config-amigaos.h
config-dos.h
config-mac.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
config-os400.h
config-plan9.h
config-riscos.h
config-win32.h
config-win32ce.h
conncache.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
conncache.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
connect.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
connect.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
content_encoding.c content_encoding: return error on too many compression steps 2022-06-25 22:14:21 +02:00
content_encoding.h
cookie.c
cookie.h cookie: apply limits 2022-06-26 11:00:48 +02:00
curl_addrinfo.c
curl_addrinfo.h
curl_base64.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_config.h.cmake
curl_ctype.c
curl_ctype.h
curl_des.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_des.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_endian.c
curl_endian.h
curl_fnmatch.c
curl_fnmatch.h
curl_get_line.c
curl_get_line.h
curl_gethostname.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_gethostname.h
curl_gssapi.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_gssapi.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_hmac.h
curl_krb5.h
curl_ldap.h
curl_md4.h
curl_md5.h
curl_memory.h
curl_memrchr.c
curl_memrchr.h
curl_multibyte.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_multibyte.h
curl_ntlm_core.c
curl_ntlm_core.h
curl_ntlm_wb.c
curl_ntlm_wb.h
curl_path.c
curl_path.h
curl_printf.h
curl_range.c
curl_range.h
curl_rtmp.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_rtmp.h
curl_sasl.c
curl_sasl.h
curl_setup_once.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
curl_setup.h curl_setup: include _mingw.h 2022-06-23 03:34:51 -04:00
curl_sha256.h
curl_sspi.c
curl_sspi.h
curl_threads.c
curl_threads.h
curlx.h
dict.c
dict.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
doh.c
doh.h doh: move doh related struct definitions to doh.h 2022-07-18 11:55:26 +02:00
dotdot.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
dotdot.h
dynbuf.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
dynbuf.h
easy_lock.h
easy.c hyper: use wakers for curl pause/resume 2022-06-30 10:19:08 +02:00
easygetopt.c
easyif.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
easyoptions.c
easyoptions.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
escape.c
escape.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
file.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
file.h
fileinfo.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
fileinfo.h
fopen.c fopen: add Curl_fopen() for better overwriting of files 2022-06-26 11:03:57 +02:00
fopen.h
formdata.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
formdata.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
ftp.c
ftp.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
ftplistparser.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
ftplistparser.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
getenv.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
getinfo.c getinfo: return better error on NULL as first argument 2022-07-10 18:22:23 +02:00
getinfo.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
gopher.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
gopher.h
h2h3.c h2h3: fix overriding the 'TE: Trailers' header 2022-07-19 00:19:13 +02:00
h2h3.h
hash.c
hash.h
headers.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
headers.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hmac.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hostasyn.c
hostip4.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hostip6.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hostip.c
hostip.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hostsyn.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
hsts.c
hsts.h
http2.c
http2.h
http_aws_sigv4.c
http_aws_sigv4.h
http_chunks.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_chunks.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_digest.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_digest.h
http_negotiate.c
http_negotiate.h
http_ntlm.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_ntlm.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_proxy.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
http_proxy.h
http.c
http.h
idn_win32.c
if2ip.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
if2ip.h
imap.c
imap.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
inet_ntop.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
inet_ntop.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
inet_pton.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
inet_pton.h
krb5.c krb5: return error properly on decode errors 2022-06-25 22:13:09 +02:00
ldap.c
libcurl.plist.in
libcurl.rc
libcurl.vers.in
llist.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
llist.h
Makefile.am
makefile.amiga copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
makefile.dj copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
Makefile.inc
Makefile.m32
md4.c
md5.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
memdebug.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
memdebug.h
mime.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
mime.h
mprintf.c
mqtt.c
mqtt.h
multi.c
multihandle.h
multiif.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
netrc.c
netrc.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
nonblock.c
nonblock.h
openldap.c
optiontable.pl easyoptions: fix icc warning 2022-07-19 11:01:15 +02:00
parsedate.c
parsedate.h
pingpong.c urldata: make 'buffer_size' an unsigned int 2022-07-04 23:03:44 +02:00
pingpong.h
pop3.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
pop3.h
progress.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
progress.h
psl.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
psl.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
quic.h
rand.c
rand.h windows: improve random source 2022-07-04 09:38:24 +00:00
rename.c
rename.h
rtsp.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
rtsp.h
select.c select: do not return fatal error on EINTR from poll() 2022-07-04 00:58:07 -04:00
select.h
sendf.c
sendf.h
setopt.c urldata: reduce size of four ftp related members 2022-07-05 10:18:48 +02:00
setopt.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
setup-os400.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
setup-vms.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
setup-win32.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
sha256.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
share.c
share.h
sigpipe.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
slist.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
slist.h
smb.c
smb.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
smtp.c
smtp.h
sockaddr.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
socketpair.c
socketpair.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
socks_gssapi.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
socks_sspi.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
socks.c
socks.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
speedcheck.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
speedcheck.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
splay.c
splay.h
strcase.c
strcase.h
strdup.c
strdup.h
strerror.c
strerror.h
strtok.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
strtok.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
strtoofft.c
strtoofft.h
system_win32.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
system_win32.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
telnet.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
telnet.h
tftp.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
tftp.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
timediff.c
timediff.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
timeval.c
timeval.h
transfer.c
transfer.h copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
url.c doh: move doh related struct definitions to doh.h 2022-07-18 11:55:26 +02:00
url.h
urlapi-int.h
urlapi.c urlapi: make curl_url_set(url, CURLUPART_URL, NULL, 0) clear all parts 2022-06-20 08:15:51 +02:00
urldata.h
version_win32.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
version_win32.h
version.c version: rename threadsafe-init to threadsafe 2022-06-13 18:59:45 +00:00
warnless.c copyright: make repository REUSE compliant 2022-06-13 09:13:00 +02:00
warnless.h
wildcard.c
wildcard.h