1
0
mirror of https://github.com/moparisthebest/curl synced 2024-08-13 17:03:50 -04:00
curl/lib
Steve Holme 7c469fa537 sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID
Added the ability for the calling program to specify the authorisation
identity (authzid), the identity to act as, in addition to the
authentication identity (authcid) and password when using SASL PLAIN
authentication.

Fixes #3653
Closes #3790

NOTE: This commit was cherry-picked and is part of a series of commits
that added the authzid feature for upcoming 7.66.0. The series was
temporarily reverted in db8ec1f so that it would not ship in a 7.65.x
patch release.

Closes https://github.com/curl/curl/pull/4186
2019-08-06 11:38:20 -04:00
..
vauth build: fix Codacy warnings 2019-06-05 20:38:06 +02:00
vquic quiche:h3_stream_recv return 0 at end of stream 2019-08-06 08:06:58 +02:00
vtls mesalink: implement client authentication 2019-08-06 10:19:17 +02:00
.gitattributes
.gitignore
altsvc.c altsvc: make quiche use h3-22 now 2019-08-06 07:39:27 +02:00
altsvc.h alt-svc: the libcurl bits 2019-03-03 11:17:52 +01:00
amigaos.c configure: add --with-amissl 2019-03-15 10:22:42 +01:00
amigaos.h configure: add --with-amissl 2019-03-15 10:22:42 +01:00
arpa_telnet.h travis: add build for "configure --disable-verbose" 2018-10-18 14:51:49 +02:00
asyn-ares.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
asyn-thread.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
asyn.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
base64.c base64: build conditionally if there are users 2019-05-13 08:17:09 +02:00
checksrc.pl checksrc: add COPYRIGHTYEAR check 2018-12-03 23:13:40 +01:00
CMakeLists.txt CMake: Improve config installation 2018-10-01 16:16:29 -04:00
config-amigaos.h
config-dos.h whitespace fixes 2018-09-23 22:24:02 +00:00
config-mac.h
config-os400.h OS400: Add CURLOPT_H3 symbols 2019-08-04 11:04:51 -04:00
config-plan9.h plan9: add support for running on Plan 9 2019-07-31 00:23:25 +02:00
config-riscos.h
config-symbian.h openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
config-tpf.h build: remove HAVE_LIMITS_H check 2018-01-05 23:34:30 -05:00
config-vxworks.h openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
config-win32.h url: Load if_nametoindex() dynamically from iphlpapi.dll on Windows 2019-05-29 07:19:20 +01:00
config-win32ce.h build: remove HAVE_LIMITS_H check 2018-01-05 23:34:30 -05:00
conncache.c conncache: Remove the DEBUGASSERT on length check 2019-05-29 22:07:43 +01:00
conncache.h conncache: make "bundles" per host name when doing proxy tunnels 2019-05-28 16:23:59 +02:00
connect.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
connect.h cleanup: make local functions static 2019-02-10 18:38:57 +01:00
content_encoding.c content_encoding: accept up to 4 unknown trailer bytes after raw deflate data 2018-07-12 22:46:15 +02:00
content_encoding.h HTTP: support multiple Content-Encodings 2017-11-05 15:09:48 +01:00
cookie.c source: remove names from source comments 2019-07-19 23:50:22 +02:00
cookie.h altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_addrinfo.c memdebug: log pointer before freeing its data 2019-03-12 21:45:03 +01:00
curl_addrinfo.h memdebug: make debug-specific functions use curl_dbg_ prefix 2019-03-08 23:21:21 +01:00
curl_base64.h
curl_config.h.cmake openssl: define HAVE_SSL_GET_SHUTDOWN based on version number 2019-07-14 16:24:46 +02:00
curl_ctype.c URL: fix ASCII dependency in strcpy_url and strlen_url 2018-05-03 15:19:20 +02:00
curl_ctype.h URL: fix ASCII dependency in strcpy_url and strlen_url 2018-05-03 15:19:20 +02:00
curl_des.c
curl_des.h
curl_endian.c cleanup: make local functions static 2019-02-10 18:38:57 +01:00
curl_endian.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
curl_fnmatch.c cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
curl_fnmatch.h
curl_get_line.c altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_get_line.h altsvc: Fix building with cookies disables 2019-04-20 22:46:21 +02:00
curl_gethostname.c
curl_gethostname.h
curl_gssapi.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
curl_gssapi.h gssapi: fix deprecated header warnings 2019-02-14 08:38:43 +01:00
curl_hmac.h
curl_ldap.h whitespace fixes 2018-09-23 22:24:02 +00:00
curl_md4.h md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
curl_md5.h md5: Update the function signature following d84da52d 2019-04-16 00:08:42 +01:00
curl_memory.h cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
curl_memrchr.c Curl_memchr: zero length input can't match 2018-04-24 08:03:23 +02:00
curl_memrchr.h
curl_multibyte.c curl_multibyte: fix a malloc overcalculation 2018-11-06 03:11:05 -05:00
curl_multibyte.h
curl_ntlm_core.c md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
curl_ntlm_core.h ntlm: Support the NT response in the type-3 when OpenSSL doesn't include MD4 2019-04-23 20:00:33 +01:00
curl_ntlm_wb.c http_ntlm_wb: Handle auth for only a single request 2019-05-18 19:01:11 +01:00
curl_ntlm_wb.h http_ntlm_wb: Move the type-2 message processing into a dedicated function 2019-05-16 00:03:30 +01:00
curl_path.c ssh: define USE_SSH if SSH is enabled (any backend) 2019-05-06 10:14:17 +02:00
curl_path.h headers: end all headers with guard comment 2018-10-23 10:02:24 +02:00
curl_printf.h snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
curl_range.c Curl_range: fix FTP-only and FILE-only builds 2018-03-11 20:33:04 +01:00
curl_range.h Curl_range: commonize FTP and FILE range handling 2018-01-30 17:23:26 +01:00
curl_rtmp.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
curl_rtmp.h
curl_sasl.c sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID 2019-08-06 11:38:20 -04:00
curl_sasl.h
curl_sec.h
curl_setup_once.h whitespace fixes 2018-09-23 22:24:02 +00:00
curl_setup.h plan9: add support for running on Plan 9 2019-07-31 00:23:25 +02:00
curl_sha256.h auth: add support for RFC7616 - HTTP Digest access authentication 2017-10-28 16:32:43 +02:00
curl_sspi.c comment: Fix multiple typos in function parameters 2018-10-03 10:27:27 +02:00
curl_sspi.h
curl_threads.c curl_threads: fix classic MinGW compile break 2018-09-27 09:13:20 +02:00
curl_threads.h Windows: fixes for MinGW targeting Windows Vista 2018-10-09 08:33:45 +02:00
curlx.h snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
dict.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
dict.h
doh.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
doh.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
dotdot.c Curl_dedotdotify(): always nul terminate returned string. 2018-09-24 07:48:41 +02:00
dotdot.h headers: end all headers with guard comment 2018-10-23 10:02:24 +02:00
easy.c curl_multi_poll: a sister to curl_multi_wait() that waits more 2019-08-06 09:33:29 +02:00
easyif.h whitespace fixes 2018-09-23 22:24:02 +00:00
escape.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
escape.h whitespace fixes 2018-09-23 22:24:02 +00:00
file.c file: fix "Checking if unsigned variable 'readcount' is less than zero." 2019-03-12 21:46:11 +01:00
file.h whitespace fixes 2018-09-23 22:24:02 +00:00
fileinfo.c wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
fileinfo.h ftplistparser: keep state between invokes 2018-04-24 14:23:20 +02:00
firefox-db2pem.sh whitespace fixes 2018-09-23 22:24:02 +00:00
formdata.c mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
formdata.h mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
ftp.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
ftp.h urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
ftplistparser.c ftplistparser: fix LGTM alert "Empty block without comment" 2019-04-05 12:56:18 +02:00
ftplistparser.h
getenv.c getenv: support up to 4K environment variable contents on windows 2019-07-31 08:20:59 +02:00
getinfo.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
getinfo.h
gopher.c gopher: remove check for path == NULL 2019-03-05 08:01:50 +01:00
gopher.h
hash.c cppcheck: fix warnings 2018-06-11 11:14:48 +02:00
hash.h multi: fix the transfer hashes in the socket hash entries 2019-06-12 12:31:23 +02:00
hmac.c checksrc: make sure sizeof() is used *with* parentheses 2018-05-21 23:21:47 +02:00
hostasyn.c dns: release sharelock as soon as possible 2019-02-11 13:34:11 +01:00
hostcheck.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
hostcheck.h whitespace fixes 2018-09-23 22:24:02 +00:00
hostip4.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
hostip6.c HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
hostip.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
hostip.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
hostsyn.c resolvers: only include anything if needed 2017-10-27 13:20:13 +02:00
http2.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
http2.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
http_chunks.c ctype: restore character classification for non-ASCII platforms 2018-04-24 14:36:06 +02:00
http_chunks.h whitespace fixes 2018-09-23 22:24:02 +00:00
http_digest.c auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_digest.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_negotiate.c http_negotiate: improve handling of gss_init_sec_context() failures 2019-08-01 16:21:41 +02:00
http_negotiate.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_ntlm.c http_ntlm: Move the NTLM state out of the ntlmdata structure 2019-05-15 00:31:45 +01:00
http_ntlm.h auth: Rename the various authentication clean up functions 2019-05-12 18:37:00 +01:00
http_proxy.c NTLM: reset proxy "multipass" state when CONNECT request is done 2019-06-02 23:11:33 +02:00
http_proxy.h
http.c quiche: first working HTTP/3 request 2019-08-06 07:39:21 +02:00
http.h quiche: first working HTTP/3 request 2019-08-06 07:39:21 +02:00
idn_win32.c
if2ip.c CURLOPT_ADDRESS_SCOPE: fix range check and more 2019-04-13 11:18:55 +02:00
if2ip.h CURLOPT_ADDRESS_SCOPE: fix range check and more 2019-04-13 11:18:55 +02:00
imap.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
imap.h imap: change from "FETCH" to "UID FETCH" 2018-09-06 10:57:48 +02:00
inet_ntop.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
inet_ntop.h whitespace fixes 2018-09-23 22:24:02 +00:00
inet_pton.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
inet_pton.h whitespace fixes 2018-09-23 22:24:02 +00:00
krb5.c lib: Use UTF-8 encoding in comments 2019-07-06 23:25:20 -04:00
ldap.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
libcurl.plist
libcurl.rc (lib)curl.rc: fixup for minor bugs 2018-12-10 00:10:04 +01:00
libcurl.vers.in
llist.c Curl_llist_remove: fix potential NULL pointer deref 2017-11-21 09:02:40 +01:00
llist.h whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.am curl_multi_poll: a sister to curl_multi_wait() that waits more 2019-08-06 09:33:29 +02:00
makefile.amiga whitespace fixes 2018-09-23 22:24:02 +00:00
makefile.dj whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.inc HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
Makefile.m32 whitespace fixes 2018-09-23 22:24:02 +00:00
Makefile.netware openssl: Remove SSLEAY leftovers 2018-11-17 21:36:10 +01:00
Makefile.vxworks
Makefile.Watcom openssl: Remove SSLEAY leftovers 2018-11-17 21:36:10 +01:00
md4.c md4: Use our own MD4 implementation when no crypto libraries are available 2019-08-04 18:01:29 +01:00
md5.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
memdebug.c lib: reduce variable scopes 2019-05-20 08:51:11 +02:00
memdebug.h memdebug: make debug-specific functions use curl_dbg_ prefix 2019-03-08 23:21:21 +01:00
mime.c mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
mime.h mime: acknowledge CURL_DISABLE_MIME 2019-05-13 08:17:09 +02:00
mk-ca-bundle.pl mk-ca-bundle.pl: make -u delete certdata.txt if found not changed 2018-06-14 00:02:20 +02:00
mk-ca-bundle.vbs spelling fixes 2018-02-23 23:29:01 +00:00
mprintf.c mprintf: avoid unsigned integer overflow warning 2018-11-02 11:07:04 +01:00
multi.c curl_multi_poll: a sister to curl_multi_wait() that waits more 2019-08-06 09:33:29 +02:00
multihandle.h pipelining: removed 2019-04-06 22:49:50 +02:00
multiif.h curl_multi_poll: a sister to curl_multi_wait() that waits more 2019-08-06 09:33:29 +02:00
netrc.c netrc: Return the correct error code when out of memory 2019-06-18 21:00:43 +01:00
netrc.h netrc: CURL_DISABLE_NETRC 2019-05-17 23:24:34 +02:00
non-ascii.c non-ascii.c: fix typos in comments 2019-02-12 10:24:29 +01:00
non-ascii.h mime: new MIME API. 2017-09-02 17:47:10 +01:00
nonblock.c nonblock: fix unused parameter warning 2018-10-14 21:07:45 +02:00
nonblock.h whitespace fixes 2018-09-23 22:24:02 +00:00
nwlib.c memory: ensure to check allocation results 2018-10-03 23:45:38 +02:00
nwos.c
openldap.c cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
parsedate.c parsedate: CURL_DISABLE_PARSEDATE 2019-05-13 08:17:10 +02:00
parsedate.h whitespace fixes 2018-09-23 22:24:02 +00:00
pingpong.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
pingpong.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
pop3.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
pop3.h
progress.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
progress.h whitespace fixes 2018-09-23 22:24:02 +00:00
psl.c psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
psl.h psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
quic.c HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
quic.h HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
rand.c PolarSSL: deprecate support step 1. Removed from configure. 2019-05-22 10:00:56 +02:00
rand.h PolarSSL: deprecate support step 1. Removed from configure. 2019-05-22 10:00:56 +02:00
rtsp.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
rtsp.h whitespace fixes 2018-09-23 22:24:02 +00:00
security.c cleanup: fix typo in comment 2019-07-08 13:19:35 +02:00
select.c cppcheck: fix warnings 2018-06-11 11:14:48 +02:00
select.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
sendf.c WRITEFUNCTION: add missing set_in_callback around callback 2019-05-05 11:09:30 +02:00
sendf.h travis: add build for "configure --disable-verbose" 2018-10-18 14:51:49 +02:00
setopt.c sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID 2019-08-06 11:38:20 -04:00
setopt.h os400: make vsetopt() non-static as Curl_vsetopt() for os400 support. 2019-06-16 01:05:53 +02:00
setup-os400.h
setup-vms.h
sha256.c http: fix for tiny "HTTP/0.9" response 2018-08-13 23:16:01 +02:00
share.c psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
share.h psl: use latest psl and refresh it periodically 2018-05-28 20:37:14 +02:00
sigpipe.h sigpipe: if mbedTLS is used, ignore SIGPIPE 2019-01-28 12:03:33 +01:00
slist.c whitespace fixes 2018-09-23 22:24:02 +00:00
slist.h whitespace fixes 2018-09-23 22:24:02 +00:00
smb.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
smb.h smb: fix memory leak on early failure 2018-07-30 17:59:36 +02:00
smtp.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
smtp.h
sockaddr.h whitespace fixes 2018-09-23 22:24:02 +00:00
socks_gssapi.c snprintf: renamed and we now only use msnprintf() 2018-11-23 08:26:51 +01:00
socks_sspi.c strerror: make the strerror function use local buffers 2019-02-26 10:20:21 +01:00
socks.c doh: disable DOH for the cases it doesn't work 2019-05-11 11:38:58 +02:00
socks.h whitespace fixes 2018-09-23 22:24:02 +00:00
speedcheck.c timediff: return timediff_t from the time diff functions 2017-10-25 09:54:37 +02:00
speedcheck.h timeval: struct curltime is a struct timeval replacement 2017-07-28 15:51:25 +02:00
splay.c cleanup: remove FIXME and TODO comments 2019-05-16 09:16:56 +02:00
splay.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
ssh-libssh.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
ssh.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
ssh.h all: s/int/size_t cleanup 2018-09-01 10:40:42 +02:00
strcase.c strcase: corrected comment header for Curl_strcasecompare() 2017-08-31 11:37:36 +02:00
strcase.h Remove unused definitions 2018-08-21 18:53:43 +02:00
strdup.c Curl_saferealloc: Fixed typo in docblock 2018-09-21 14:24:55 +02:00
strdup.h
strerror.c strerror: make the strerror function use local buffers 2019-02-26 10:20:21 +01:00
strerror.h strerror: make the strerror function use local buffers 2019-02-26 10:20:21 +01:00
strtok.c
strtok.h
strtoofft.c lib: silence null-dereference warnings 2018-04-09 15:54:52 +02:00
strtoofft.h progress: calculate transfer speed on milliseconds if possible 2018-01-08 23:45:09 +13:00
system_win32.c win32: make DLL loading a no-op for UWP 2019-06-25 20:33:07 +02:00
system_win32.h system_win32: fix clang warning 2019-07-11 02:27:04 -04:00
telnet.c urldata: simplify bytecounters 2019-03-01 17:30:34 +01:00
telnet.h whitespace fixes 2018-09-23 22:24:02 +00:00
tftp.c cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
tftp.h whitespace fixes 2018-09-23 22:24:02 +00:00
timeval.c timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
timeval.h timediff: make it 64 bit (if possible) even with 32 bit time_t 2019-08-01 07:43:24 +02:00
transfer.c quiche: first working HTTP/3 request 2019-08-06 07:39:21 +02:00
transfer.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
url.c sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID 2019-08-06 11:38:20 -04:00
url.h cleanup: remove the 'numsocks' argument used in many places 2019-07-30 23:16:44 +02:00
urlapi-int.h headers: Remove no longer exported functions 2019-07-10 19:26:40 +02:00
urlapi.c urlapi: increase supported scheme length to 40 bytes 2019-05-20 15:27:02 +02:00
urldata.h sasl: Implement SASL authorisation identity via CURLOPT_SASL_AUTHZID 2019-08-06 11:38:20 -04:00
version.c HTTP3: initial (experimental) support 2019-07-21 23:49:03 +02:00
warnless.c cleanup: make local functions static 2019-02-10 18:38:57 +01:00
warnless.h cleanup: make local functions static 2019-02-10 18:38:57 +01:00
wildcard.c wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
wildcard.h wildcard: disable from build when FTP isn't present 2019-05-13 08:17:09 +02:00
x509asn1.c wolfssl: refer to it as wolfSSL only 2019-06-10 09:18:16 +02:00
x509asn1.h wolfssl: refer to it as wolfSSL only 2019-06-10 09:18:16 +02:00