summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES7192
-rw-r--r--CMake/FindGSS.cmake2
-rw-r--r--CMakeLists.txt72
-rwxr-xr-xMacOSX-Framework4
-rw-r--r--Makefile13
-rw-r--r--Makefile.am141
-rw-r--r--Makefile.in211
-rw-r--r--README4
-rw-r--r--RELEASE-NOTES265
-rw-r--r--acinclude.m459
-rw-r--r--aclocal.m457
-rwxr-xr-xbuildconf4
-rwxr-xr-xcompile2
-rwxr-xr-xconfigure596
-rw-r--r--configure.ac276
-rw-r--r--curl-config.in2
-rwxr-xr-xdepcomp2
-rw-r--r--docs/BINDINGS47
-rw-r--r--docs/BUGS6
-rw-r--r--docs/CODE_OF_CONDUCT.md32
-rw-r--r--docs/CONTRIBUTE48
-rw-r--r--docs/DISTRO-DILEMMA14
-rw-r--r--docs/FAQ42
-rw-r--r--docs/FEATURES12
-rw-r--r--docs/HTTP-COOKIES2
-rw-r--r--docs/HTTP2.md107
-rw-r--r--docs/INSTALL53
-rw-r--r--docs/INSTALL.devcpp2
-rw-r--r--docs/INTERNALS909
-rw-r--r--docs/KNOWN_BUGS11
-rw-r--r--docs/LIBCURL-STRUCTS245
-rw-r--r--docs/LICENSE-MIXING46
-rw-r--r--docs/MAIL-ETIQUETTE2
-rw-r--r--docs/MANUAL4
-rw-r--r--docs/Makefile.am6
-rw-r--r--docs/Makefile.in35
-rw-r--r--docs/RELEASE-PROCEDURE17
-rw-r--r--docs/ROADMAP.md139
-rw-r--r--docs/SSL-PROBLEMS26
-rw-r--r--docs/THANKS72
-rw-r--r--docs/TODO339
-rw-r--r--docs/TheArtOfHttpScripting64
-rw-r--r--docs/VERSIONS20
-rw-r--r--docs/curl-config.html11
-rw-r--r--docs/curl-config.pdfbin6016 -> 6016 bytes
-rw-r--r--docs/curl.1113
-rw-r--r--docs/curl.html110
-rw-r--r--docs/curl.pdfbin108728 -> 104875 bytes
-rw-r--r--docs/examples/10-at-a-time.c9
-rw-r--r--docs/examples/Makefile.in77
-rw-r--r--docs/examples/Makefile.inc5
-rw-r--r--docs/examples/Makefile.m3245
-rw-r--r--docs/examples/Makefile.netware8
-rw-r--r--docs/examples/anyauthput.c7
-rw-r--r--docs/examples/asiohiper.cpp10
-rw-r--r--docs/examples/cacertinmem.c14
-rw-r--r--docs/examples/certinfo.c6
-rw-r--r--docs/examples/chkspeed.c6
-rw-r--r--docs/examples/cookie_interface.c14
-rw-r--r--docs/examples/curlgtk.c7
-rw-r--r--docs/examples/curlx.c7
-rw-r--r--docs/examples/debug.c6
-rw-r--r--docs/examples/evhiperfifo.c6
-rw-r--r--docs/examples/externalsocket.c7
-rw-r--r--docs/examples/fileupload.c6
-rw-r--r--docs/examples/fopen.c30
-rw-r--r--docs/examples/ftp-wildcard.c6
-rw-r--r--docs/examples/ftpget.c12
-rw-r--r--docs/examples/ftpgetinfo.c8
-rw-r--r--docs/examples/ftpgetresp.c10
-rw-r--r--docs/examples/ftpsget.c12
-rw-r--r--docs/examples/ftpupload.c11
-rw-r--r--docs/examples/ftpuploadresume.c12
-rw-r--r--docs/examples/getinfo.c11
-rw-r--r--docs/examples/getinmemory.c13
-rw-r--r--docs/examples/ghiper.c6
-rw-r--r--docs/examples/hiperfifo.c6
-rw-r--r--docs/examples/href_extractor.c14
-rw-r--r--docs/examples/htmltidy.c13
-rw-r--r--docs/examples/htmltitle.cpp8
-rw-r--r--docs/examples/http-post.c6
-rw-r--r--docs/examples/http2-download.c292
-rw-r--r--docs/examples/http2-serverpush.c317
-rw-r--r--docs/examples/http2-upload.c356
-rw-r--r--docs/examples/httpcustomheader.c6
-rw-r--r--docs/examples/httpput.c6
-rw-r--r--docs/examples/https.c6
-rw-r--r--docs/examples/imap-append.c6
-rw-r--r--docs/examples/imap-ssl.c2
-rw-r--r--docs/examples/multi-debugcallback.c7
-rw-r--r--docs/examples/multi-double.c6
-rw-r--r--docs/examples/multi-post.c11
-rw-r--r--docs/examples/multi-single.c11
-rw-r--r--docs/examples/multi-uv.c6
-rw-r--r--docs/examples/multithread.c8
-rw-r--r--docs/examples/opensslthreadlock.c13
-rw-r--r--docs/examples/persistant.c6
-rw-r--r--docs/examples/pop3-multi.c2
-rw-r--r--docs/examples/pop3-retr.c2
-rw-r--r--docs/examples/pop3-ssl.c4
-rw-r--r--docs/examples/pop3-tls.c2
-rw-r--r--docs/examples/post-callback.c6
-rw-r--r--docs/examples/postinmemory.c3
-rw-r--r--docs/examples/postit2.c2
-rw-r--r--docs/examples/sftpget.c2
-rw-r--r--docs/examples/smtp-mail.c2
-rw-r--r--docs/examples/smtp-ssl.c2
-rw-r--r--docs/examples/xmlstream.c2
-rw-r--r--docs/libcurl/ABI70
-rw-r--r--docs/libcurl/Makefile.am64
-rw-r--r--docs/libcurl/Makefile.in477
-rw-r--r--docs/libcurl/curl_easy_cleanup.37
-rw-r--r--docs/libcurl/curl_easy_cleanup.html32
-rw-r--r--docs/libcurl/curl_easy_cleanup.pdfbin4581 -> 4477 bytes
-rw-r--r--docs/libcurl/curl_easy_duphandle.36
-rw-r--r--docs/libcurl/curl_easy_duphandle.html14
-rw-r--r--docs/libcurl/curl_easy_duphandle.pdfbin4058 -> 4028 bytes
-rw-r--r--docs/libcurl/curl_easy_escape.36
-rw-r--r--docs/libcurl/curl_easy_escape.html35
-rw-r--r--docs/libcurl/curl_easy_escape.pdfbin4154 -> 4193 bytes
-rw-r--r--docs/libcurl/curl_easy_getinfo.322
-rw-r--r--docs/libcurl/curl_easy_getinfo.html55
-rw-r--r--docs/libcurl/curl_easy_getinfo.pdfbin18522 -> 17534 bytes
-rw-r--r--docs/libcurl/curl_easy_init.html29
-rw-r--r--docs/libcurl/curl_easy_init.pdfbin4197 -> 4197 bytes
-rw-r--r--docs/libcurl/curl_easy_pause.html11
-rw-r--r--docs/libcurl/curl_easy_pause.pdfbin7373 -> 7373 bytes
-rw-r--r--docs/libcurl/curl_easy_perform.34
-rw-r--r--docs/libcurl/curl_easy_perform.html29
-rw-r--r--docs/libcurl/curl_easy_perform.pdfbin4986 -> 4987 bytes
-rw-r--r--docs/libcurl/curl_easy_recv.37
-rw-r--r--docs/libcurl/curl_easy_recv.html13
-rw-r--r--docs/libcurl/curl_easy_recv.pdfbin5493 -> 5445 bytes
-rw-r--r--docs/libcurl/curl_easy_reset.html11
-rw-r--r--docs/libcurl/curl_easy_reset.pdfbin3701 -> 3701 bytes
-rw-r--r--docs/libcurl/curl_easy_send.37
-rw-r--r--docs/libcurl/curl_easy_send.html13
-rw-r--r--docs/libcurl/curl_easy_send.pdfbin5208 -> 5174 bytes
-rw-r--r--docs/libcurl/curl_easy_setopt.324
-rw-r--r--docs/libcurl/curl_easy_setopt.html54
-rw-r--r--docs/libcurl/curl_easy_setopt.pdfbin25370 -> 24241 bytes
-rw-r--r--docs/libcurl/curl_easy_strerror.html13
-rw-r--r--docs/libcurl/curl_easy_strerror.pdfbin3667 -> 3667 bytes
-rw-r--r--docs/libcurl/curl_easy_unescape.34
-rw-r--r--docs/libcurl/curl_easy_unescape.html13
-rw-r--r--docs/libcurl/curl_easy_unescape.pdfbin4179 -> 4179 bytes
-rw-r--r--docs/libcurl/curl_escape.html11
-rw-r--r--docs/libcurl/curl_escape.pdfbin4014 -> 4014 bytes
-rw-r--r--docs/libcurl/curl_formadd.35
-rw-r--r--docs/libcurl/curl_formadd.html159
-rw-r--r--docs/libcurl/curl_formadd.pdfbin12533 -> 12395 bytes
-rw-r--r--docs/libcurl/curl_formfree.html11
-rw-r--r--docs/libcurl/curl_formfree.pdfbin3767 -> 3767 bytes
-rw-r--r--docs/libcurl/curl_formget.34
-rw-r--r--docs/libcurl/curl_formget.html56
-rw-r--r--docs/libcurl/curl_formget.pdfbin4403 -> 4410 bytes
-rw-r--r--docs/libcurl/curl_free.html11
-rw-r--r--docs/libcurl/curl_free.pdfbin3356 -> 3356 bytes
-rw-r--r--docs/libcurl/curl_getdate.34
-rw-r--r--docs/libcurl/curl_getdate.html61
-rw-r--r--docs/libcurl/curl_getdate.pdfbin6462 -> 6462 bytes
-rw-r--r--docs/libcurl/curl_getenv.html11
-rw-r--r--docs/libcurl/curl_getenv.pdfbin4188 -> 4188 bytes
-rw-r--r--docs/libcurl/curl_global_cleanup.html11
-rw-r--r--docs/libcurl/curl_global_cleanup.pdfbin3860 -> 3860 bytes
-rw-r--r--docs/libcurl/curl_global_init.html11
-rw-r--r--docs/libcurl/curl_global_init.pdfbin5107 -> 5107 bytes
-rw-r--r--docs/libcurl/curl_global_init_mem.310
-rw-r--r--docs/libcurl/curl_global_init_mem.html20
-rw-r--r--docs/libcurl/curl_global_init_mem.pdfbin4281 -> 4083 bytes
-rw-r--r--docs/libcurl/curl_mprintf.html13
-rw-r--r--docs/libcurl/curl_mprintf.pdfbin5924 -> 5924 bytes
-rw-r--r--docs/libcurl/curl_multi_add_handle.html13
-rw-r--r--docs/libcurl/curl_multi_add_handle.pdfbin4737 -> 4737 bytes
-rw-r--r--docs/libcurl/curl_multi_assign.html13
-rw-r--r--docs/libcurl/curl_multi_assign.pdfbin4570 -> 4570 bytes
-rw-r--r--docs/libcurl/curl_multi_cleanup.html11
-rw-r--r--docs/libcurl/curl_multi_cleanup.pdfbin3812 -> 3812 bytes
-rw-r--r--docs/libcurl/curl_multi_fdset.html28
-rw-r--r--docs/libcurl/curl_multi_fdset.pdfbin5480 -> 5480 bytes
-rw-r--r--docs/libcurl/curl_multi_info_read.324
-rw-r--r--docs/libcurl/curl_multi_info_read.html56
-rw-r--r--docs/libcurl/curl_multi_info_read.pdfbin5883 -> 4915 bytes
-rw-r--r--docs/libcurl/curl_multi_init.html11
-rw-r--r--docs/libcurl/curl_multi_init.pdfbin3423 -> 3423 bytes
-rw-r--r--docs/libcurl/curl_multi_perform.351
-rw-r--r--docs/libcurl/curl_multi_perform.html65
-rw-r--r--docs/libcurl/curl_multi_perform.pdfbin7082 -> 5668 bytes
-rw-r--r--docs/libcurl/curl_multi_remove_handle.32
-rw-r--r--docs/libcurl/curl_multi_remove_handle.html15
-rw-r--r--docs/libcurl/curl_multi_remove_handle.pdfbin3953 -> 3980 bytes
-rw-r--r--docs/libcurl/curl_multi_setopt.340
-rw-r--r--docs/libcurl/curl_multi_setopt.html51
-rw-r--r--docs/libcurl/curl_multi_setopt.pdfbin5358 -> 4596 bytes
-rw-r--r--docs/libcurl/curl_multi_socket.html42
-rw-r--r--docs/libcurl/curl_multi_socket.pdfbin9402 -> 9402 bytes
-rw-r--r--docs/libcurl/curl_multi_socket_action.html46
-rw-r--r--docs/libcurl/curl_multi_socket_action.pdfbin9638 -> 9638 bytes
-rw-r--r--docs/libcurl/curl_multi_strerror.html15
-rw-r--r--docs/libcurl/curl_multi_strerror.pdfbin3433 -> 3433 bytes
-rw-r--r--docs/libcurl/curl_multi_timeout.318
-rw-r--r--docs/libcurl/curl_multi_timeout.html32
-rw-r--r--docs/libcurl/curl_multi_timeout.pdfbin4872 -> 4628 bytes
-rw-r--r--docs/libcurl/curl_multi_wait.32
-rw-r--r--docs/libcurl/curl_multi_wait.html44
-rw-r--r--docs/libcurl/curl_multi_wait.pdfbin4947 -> 4944 bytes
-rw-r--r--docs/libcurl/curl_share_cleanup.html11
-rw-r--r--docs/libcurl/curl_share_cleanup.pdfbin3630 -> 3630 bytes
-rw-r--r--docs/libcurl/curl_share_init.html11
-rw-r--r--docs/libcurl/curl_share_init.pdfbin3839 -> 3839 bytes
-rw-r--r--docs/libcurl/curl_share_setopt.html11
-rw-r--r--docs/libcurl/curl_share_setopt.pdfbin5585 -> 5585 bytes
-rw-r--r--docs/libcurl/curl_share_strerror.html15
-rw-r--r--docs/libcurl/curl_share_strerror.pdfbin3432 -> 3432 bytes
-rw-r--r--docs/libcurl/curl_slist_append.36
-rw-r--r--docs/libcurl/curl_slist_append.html34
-rw-r--r--docs/libcurl/curl_slist_append.pdfbin3842 -> 3817 bytes
-rw-r--r--docs/libcurl/curl_slist_free_all.html11
-rw-r--r--docs/libcurl/curl_slist_free_all.pdf18
-rw-r--r--docs/libcurl/curl_strequal.html11
-rw-r--r--docs/libcurl/curl_strequal.pdfbin4148 -> 4148 bytes
-rw-r--r--docs/libcurl/curl_unescape.html11
-rw-r--r--docs/libcurl/curl_unescape.pdfbin3967 -> 3967 bytes
-rw-r--r--docs/libcurl/curl_version.html11
-rw-r--r--docs/libcurl/curl_version.pdfbin3490 -> 3490 bytes
-rw-r--r--docs/libcurl/curl_version_info.34
-rw-r--r--docs/libcurl/curl_version_info.html63
-rw-r--r--docs/libcurl/curl_version_info.pdfbin8845 -> 8849 bytes
-rw-r--r--docs/libcurl/index.html1
-rw-r--r--docs/libcurl/libcurl-easy.html11
-rw-r--r--docs/libcurl/libcurl-easy.pdfbin4914 -> 4914 bytes
-rw-r--r--docs/libcurl/libcurl-errors.34
-rw-r--r--docs/libcurl/libcurl-errors.html13
-rw-r--r--docs/libcurl/libcurl-errors.pdfbin17585 -> 17578 bytes
-rw-r--r--docs/libcurl/libcurl-multi.351
-rw-r--r--docs/libcurl/libcurl-multi.html41
-rw-r--r--docs/libcurl/libcurl-multi.pdfbin11820 -> 11840 bytes
-rw-r--r--docs/libcurl/libcurl-share.html11
-rw-r--r--docs/libcurl/libcurl-share.pdfbin4999 -> 4999 bytes
-rw-r--r--docs/libcurl/libcurl-symbols.31616
-rw-r--r--docs/libcurl/libcurl-symbols.html1578
-rw-r--r--docs/libcurl/libcurl-symbols.pdfbin38043 -> 0 bytes
-rw-r--r--docs/libcurl/libcurl-thread.395
-rw-r--r--docs/libcurl/libcurl-thread.html90
-rw-r--r--docs/libcurl/libcurl-thread.pdfbin6705 -> 0 bytes
-rw-r--r--docs/libcurl/libcurl-tutorial.356
-rw-r--r--docs/libcurl/libcurl-tutorial.html244
-rw-r--r--docs/libcurl/libcurl-tutorial.pdfbin71613 -> 74083 bytes
-rw-r--r--docs/libcurl/libcurl.315
-rw-r--r--docs/libcurl/libcurl.html16
-rw-r--r--docs/libcurl/libcurl.pdfbin13572 -> 13825 bytes
-rw-r--r--docs/libcurl/mksymbolsmanpage.pl93
-rw-r--r--docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html13
-rw-r--r--docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdfbin4079 -> 4079 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html13
-rw-r--r--docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdfbin4035 -> 4035 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAXCONNECTS.html13
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAXCONNECTS.pdfbin4199 -> 4199 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.310
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.html18
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.pdfbin4324 -> 4209 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.html13
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.pdf18
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.html13
-rw-r--r--docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.pdfbin4098 -> 4098 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING.327
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING.html28
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING.pdfbin4497 -> 4003 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.32
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.html32
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.pdfbin4043 -> 4046 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.32
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.html32
-rw-r--r--docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.pdfbin3787 -> 3790 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHDATA.349
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHDATA.html70
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHDATA.pdfbin3790 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3132
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.html131
-rw-r--r--docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.pdfbin6933 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_SOCKETDATA.html20
-rw-r--r--docs/libcurl/opts/CURLMOPT_SOCKETDATA.pdfbin3836 -> 3836 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.html31
-rw-r--r--docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.pdfbin4421 -> 4421 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_TIMERDATA.html20
-rw-r--r--docs/libcurl/opts/CURLMOPT_TIMERDATA.pdfbin3792 -> 3792 bytes
-rw-r--r--docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.356
-rw-r--r--docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.html68
-rw-r--r--docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.pdfbin5815 -> 4481 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.pdfbin3663 -> 3663 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.pdfbin4671 -> 4671 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.pdfbin3515 -> 3515 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_APPEND.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_APPEND.pdfbin3599 -> 3599 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_AUTOREFERER.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_AUTOREFERER.pdfbin3603 -> 3603 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_BUFFERSIZE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_BUFFERSIZE.pdfbin4047 -> 4047 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CAINFO.33
-rw-r--r--docs/libcurl/opts/CURLOPT_CAINFO.html17
-rw-r--r--docs/libcurl/opts/CURLOPT_CAINFO.pdfbin4416 -> 4306 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CAPATH.35
-rw-r--r--docs/libcurl/opts/CURLOPT_CAPATH.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_CAPATH.pdfbin4289 -> 4289 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CERTINFO.313
-rw-r--r--docs/libcurl/opts/CURLOPT_CERTINFO.html17
-rw-r--r--docs/libcurl/opts/CURLOPT_CERTINFO.pdfbin3939 -> 3942 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.pdfbin4558 -> 4558 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_DATA.34
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_DATA.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_DATA.pdfbin3762 -> 3765 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.html25
-rw-r--r--docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.pdfbin3885 -> 3885 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.pdfbin3813 -> 3813 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.pdfbin4160 -> 4160 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.314
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.pdfbin4037 -> 3907 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.314
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.pdfbin4026 -> 3893 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECT_ONLY.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CONNECT_ONLY.pdfbin4060 -> 4060 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.html31
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.pdfbin5150 -> 5150 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.html31
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.pdfbin5050 -> 5050 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.html31
-rw-r--r--docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.pdfbin5129 -> 5129 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIE.322
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIE.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIE.pdfbin4913 -> 4379 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIEFILE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIEFILE.pdfbin4173 -> 4173 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIEJAR.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIEJAR.pdfbin4607 -> 4607 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIELIST.351
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIELIST.html67
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIELIST.pdfbin6463 -> 4195 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIESESSION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_COOKIESESSION.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.html40
-rw-r--r--docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.pdfbin4668 -> 4668 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CRLF.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CRLF.pdfbin3753 -> 3753 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CRLFILE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CRLFILE.pdfbin4541 -> 4541 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.pdfbin6299 -> 6299 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DEBUGDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DEBUGDATA.pdfbin3822 -> 3822 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.html233
-rw-r--r--docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.pdfbin7759 -> 7759 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DIRLISTONLY.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DIRLISTONLY.pdfbin4586 -> 4586 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.pdfbin4454 -> 4454 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_INTERFACE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_INTERFACE.pdfbin3946 -> 3946 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.pdfbin4048 -> 4048 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.pdfbin4060 -> 4060 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_SERVERS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_SERVERS.pdfbin4081 -> 4081 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.pdfbin4015 -> 4015 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_EGDSOCKET.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_EGDSOCKET.pdfbin3736 -> 3736 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_ERRORBUFFER.326
-rw-r--r--docs/libcurl/opts/CURLOPT_ERRORBUFFER.html56
-rw-r--r--docs/libcurl/opts/CURLOPT_ERRORBUFFER.pdfbin5769 -> 4609 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.pdfbin3851 -> 3851 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FAILONERROR.35
-rw-r--r--docs/libcurl/opts/CURLOPT_FAILONERROR.html16
-rw-r--r--docs/libcurl/opts/CURLOPT_FAILONERROR.pdfbin4089 -> 4046 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FILETIME.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FILETIME.pdfbin3849 -> 3849 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FNMATCH_DATA.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_FNMATCH_DATA.pdfbin3756 -> 3756 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.html29
-rw-r--r--docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.pdfbin3948 -> 3948 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.pdfbin4656 -> 4656 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FORBID_REUSE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FORBID_REUSE.pdfbin3990 -> 3990 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FRESH_CONNECT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FRESH_CONNECT.pdfbin4013 -> 4013 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTPPORT.html25
-rw-r--r--docs/libcurl/opts/CURLOPT_FTPPORT.pdfbin4725 -> 4725 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTPSSLAUTH.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTPSSLAUTH.pdfbin4065 -> 4065 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.pdfbin3777 -> 3777 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.pdfbin3933 -> 3933 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.pdfbin4696 -> 4696 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.pdfbin4449 -> 4441 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.pdfbin4087 -> 4087 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.pdfbin4127 -> 4127 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.pdfbin3918 -> 3918 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.pdfbin3999 -> 3999 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.pdfbin3956 -> 3956 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_PRET.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_FTP_USE_PRET.pdfbin3708 -> 3708 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.pdfbin4142 -> 4142 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADER.319
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADER.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADER.pdfbin4076 -> 3815 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADERDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADERDATA.pdfbin3901 -> 3901 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADERFUNCTION.325
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADERFUNCTION.html36
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADERFUNCTION.pdfbin6757 -> 6359 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADEROPT.312
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADEROPT.html17
-rw-r--r--docs/libcurl/opts/CURLOPT_HEADEROPT.pdfbin4438 -> 4412 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP200ALIASES.38
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP200ALIASES.html24
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP200ALIASES.pdfbin4251 -> 4152 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPAUTH.html20
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPAUTH.pdfbin7475 -> 7475 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPGET.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPGET.pdfbin4043 -> 4043 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPHEADER.335
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPHEADER.html43
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPHEADER.pdfbin6648 -> 5350 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPPOST.html66
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPPOST.pdfbin4474 -> 4474 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.37
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.html18
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.pdfbin4188 -> 3964 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.pdfbin3785 -> 3785 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.pdfbin3635 -> 3635 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_VERSION.36
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_VERSION.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_HTTP_VERSION.pdfbin4205 -> 4178 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.314
-rw-r--r--docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.html36
-rw-r--r--docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.pdfbin4063 -> 3904 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE.317
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE.html30
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE.pdfbin4384 -> 4254 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.317
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.html39
-rw-r--r--docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.pdfbin4356 -> 4224 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERFACE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERFACE.pdfbin4392 -> 4392 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.pdfbin3852 -> 3852 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.pdfbin4939 -> 4939 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_IOCTLDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_IOCTLDATA.pdfbin3781 -> 3781 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.html47
-rw-r--r--docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.pdfbin4728 -> 4728 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_IPRESOLVE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_IPRESOLVE.pdfbin3784 -> 3784 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_ISSUERCERT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_ISSUERCERT.pdfbin4457 -> 4457 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_KEYPASSWD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_KEYPASSWD.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_KRBLEVEL.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_KRBLEVEL.pdfbin3969 -> 3969 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_LOCALPORT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_LOCALPORT.pdfbin3868 -> 3868 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.pdfbin4116 -> 4116 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.pdfbin4083 -> 4083 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.pdfbin3822 -> 3822 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.pdfbin3763 -> 3763 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_AUTH.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_AUTH.pdfbin4377 -> 4377 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_FROM.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_FROM.pdfbin3879 -> 3879 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_RCPT.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_MAIL_RCPT.pdfbin4289 -> 4289 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXCONNECTS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXCONNECTS.pdfbin4258 -> 4258 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXFILESIZE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXFILESIZE.pdfbin4081 -> 4081 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.pdfbin4083 -> 4083 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXREDIRS.html40
-rw-r--r--docs/libcurl/opts/CURLOPT_MAXREDIRS.pdfbin4129 -> 4129 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.pdfbin3970 -> 3970 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.pdfbin4011 -> 4011 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NETRC.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_NETRC.pdfbin4768 -> 4768 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NETRC_FILE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_NETRC_FILE.pdfbin3990 -> 3990 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.pdfbin4091 -> 4091 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.pdfbin4053 -> 4053 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NOBODY.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_NOBODY.pdfbin3883 -> 3883 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NOPROGRESS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_NOPROGRESS.pdfbin3733 -> 3733 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_NOPROXY.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_NOPROXY.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_NOSIGNAL.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_NOSIGNAL.pdfbin4514 -> 4514 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.pdfbin3816 -> 3816 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.html59
-rw-r--r--docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.pdfbin6058 -> 6058 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PASSWORD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PASSWORD.pdfbin3952 -> 3952 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PATH_AS_IS.363
-rw-r--r--docs/libcurl/opts/CURLOPT_PATH_AS_IS.html79
-rw-r--r--docs/libcurl/opts/CURLOPT_PATH_AS_IS.pdfbin4220 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.387
-rw-r--r--docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.html96
-rw-r--r--docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.pdfbin5848 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PIPEWAIT.363
-rw-r--r--docs/libcurl/opts/CURLOPT_PIPEWAIT.html69
-rw-r--r--docs/libcurl/opts/CURLOPT_PIPEWAIT.pdfbin4577 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PORT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PORT.pdfbin3981 -> 3981 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_POST.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_POST.pdfbin5251 -> 5251 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDS.33
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDS.html42
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDS.pdfbin5851 -> 5674 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.html39
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.html50
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.pdfbin3880 -> 3880 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTQUOTE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTQUOTE.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTREDIR.html49
-rw-r--r--docs/libcurl/opts/CURLOPT_POSTREDIR.pdfbin4682 -> 4682 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PREQUOTE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PREQUOTE.pdfbin3868 -> 3868 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PRIVATE.319
-rw-r--r--docs/libcurl/opts/CURLOPT_PRIVATE.html32
-rw-r--r--docs/libcurl/opts/CURLOPT_PRIVATE.pdfbin4170 -> 3895 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROGRESSDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROGRESSDATA.pdfbin3809 -> 3809 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.pdfbin5873 -> 5873 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROTOCOLS.html97
-rw-r--r--docs/libcurl/opts/CURLOPT_PROTOCOLS.pdfbin5240 -> 5240 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY.pdfbin6395 -> 6395 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYAUTH.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYAUTH.pdfbin4289 -> 4289 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYHEADER.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYHEADER.pdfbin4117 -> 4117 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYPASSWORD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYPASSWORD.pdfbin4050 -> 4050 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYPORT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYPORT.pdfbin3853 -> 3853 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYTYPE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYTYPE.pdfbin4194 -> 4194 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYUSERNAME.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYUSERNAME.pdfbin4059 -> 4059 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYUSERPWD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXYUSERPWD.pdfbin4166 -> 4166 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.345
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.html65
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.pdfbin3812 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.pdfbin4042 -> 4042 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_PUT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_PUT.pdfbin3830 -> 3830 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_QUOTE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_QUOTE.pdfbin5637 -> 5637 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RANDOM_FILE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RANDOM_FILE.pdfbin3574 -> 3574 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RANGE.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_RANGE.pdfbin4492 -> 4492 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_READDATA.316
-rw-r--r--docs/libcurl/opts/CURLOPT_READDATA.html29
-rw-r--r--docs/libcurl/opts/CURLOPT_READDATA.pdfbin4334 -> 4177 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_READFUNCTION.311
-rw-r--r--docs/libcurl/opts/CURLOPT_READFUNCTION.html17
-rw-r--r--docs/libcurl/opts/CURLOPT_READFUNCTION.pdfbin5194 -> 5073 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.html97
-rw-r--r--docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.pdfbin5208 -> 5208 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_REFERER.314
-rw-r--r--docs/libcurl/opts/CURLOPT_REFERER.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_REFERER.pdfbin4048 -> 3916 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RESOLVE.35
-rw-r--r--docs/libcurl/opts/CURLOPT_RESOLVE.html57
-rw-r--r--docs/libcurl/opts/CURLOPT_RESOLVE.pdfbin5745 -> 4987 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RESUME_FROM.html45
-rw-r--r--docs/libcurl/opts/CURLOPT_RESUME_FROM.pdfbin4411 -> 4411 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.html59
-rw-r--r--docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.pdfbin4323 -> 4323 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.pdfbin3654 -> 3654 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_REQUEST.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_REQUEST.pdfbin7519 -> 7519 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.pdfbin4028 -> 4028 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.pdfbin4313 -> 4313 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.pdfbin3874 -> 3874 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SASL_IR.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SASL_IR.pdfbin3862 -> 3862 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SEEKDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SEEKDATA.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_SEEKFUNCTION.313
-rw-r--r--docs/libcurl/opts/CURLOPT_SEEKFUNCTION.html36
-rw-r--r--docs/libcurl/opts/CURLOPT_SEEKFUNCTION.pdfbin5022 -> 4883 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SERVICE_NAME.346
-rw-r--r--docs/libcurl/opts/CURLOPT_SERVICE_NAME.html65
-rw-r--r--docs/libcurl/opts/CURLOPT_SERVICE_NAME.pdfbin3783 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SHARE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SHARE.pdfbin4248 -> 4248 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKOPTDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKOPTDATA.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.html47
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.pdfbin6183 -> 6183 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.pdfbin3684 -> 3684 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.pdfbin3841 -> 3841 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.pdfbin4003 -> 4003 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.pdfbin3812 -> 3812 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KEYDATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KEYDATA.pdfbin3792 -> 3792 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.html78
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.pdfbin6709 -> 6709 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.pdf18
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.pdfbin4210 -> 4210 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.pdfbin4321 -> 4321 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLCERT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLCERT.pdfbin4341 -> 4341 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLCERTTYPE.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLCERTTYPE.pdfbin3933 -> 3933 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLENGINE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLENGINE.pdfbin3954 -> 3954 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.pdfbin3981 -> 3981 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLKEY.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLKEY.pdfbin4171 -> 4171 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLKEYTYPE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLKEYTYPE.pdfbin4186 -> 4186 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLVERSION.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_SSLVERSION.pdfbin4783 -> 4783 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.pdfbin4476 -> 4476 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.33
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.html15
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.pdfbin3847 -> 3824 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.331
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.pdfbin4969 -> 4965 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.pdfbin3662 -> 3662 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.pdfbin3663 -> 3663 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_FALSESTART.348
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_FALSESTART.html65
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_FALSESTART.pdfbin3947 -> 0 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_OPTIONS.326
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_OPTIONS.html19
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_OPTIONS.pdfbin4570 -> 4100 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.pdfbin3844 -> 3844 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.314
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.pdfbin5814 -> 4993 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.314
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.pdfbin5713 -> 4932 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.353
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.html67
-rw-r--r--docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.pdf111
-rw-r--r--docs/libcurl/opts/CURLOPT_STDERR.313
-rw-r--r--docs/libcurl/opts/CURLOPT_STDERR.html26
-rw-r--r--docs/libcurl/opts/CURLOPT_STDERR.pdfbin3794 -> 3672 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.320
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.pdfbin4122 -> 3872 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.320
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.pdfbin4011 -> 3761 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.320
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.html33
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.pdfbin3856 -> 3608 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_NODELAY.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TCP_NODELAY.pdfbin4246 -> 4246 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TELNETOPTIONS.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TELNETOPTIONS.pdfbin3661 -> 3661 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.pdfbin3830 -> 3830 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMECONDITION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMECONDITION.pdfbin4165 -> 4165 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT.314
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT.pdfbin4618 -> 4495 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT_MS.314
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT_MS.html27
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEOUT_MS.pdfbin4735 -> 4623 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEVALUE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TIMEVALUE.pdfbin3732 -> 3732 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.pdfbin3940 -> 3940 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.pdfbin4117 -> 4117 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.pdfbin3922 -> 3922 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TRANSFERTEXT.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TRANSFERTEXT.pdfbin3972 -> 3972 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.pdfbin4111 -> 4111 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.pdfbin5029 -> 5029 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.pdfbin3808 -> 3808 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_UPLOAD.html52
-rw-r--r--docs/libcurl/opts/CURLOPT_UPLOAD.pdfbin4742 -> 4742 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_URL.325
-rw-r--r--docs/libcurl/opts/CURLOPT_URL.html38
-rw-r--r--docs/libcurl/opts/CURLOPT_URL.pdfbin15854 -> 14943 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_USERAGENT.313
-rw-r--r--docs/libcurl/opts/CURLOPT_USERAGENT.html26
-rw-r--r--docs/libcurl/opts/CURLOPT_USERAGENT.pdfbin4142 -> 4014 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_USERNAME.html22
-rw-r--r--docs/libcurl/opts/CURLOPT_USERNAME.pdfbin4731 -> 4731 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_USERPWD.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_USERPWD.pdfbin5037 -> 5037 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_USE_SSL.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_USE_SSL.pdfbin4371 -> 4371 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_VERBOSE.html35
-rw-r--r--docs/libcurl/opts/CURLOPT_VERBOSE.pdfbin4254 -> 4253 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_WILDCARDMATCH.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_WILDCARDMATCH.pdfbin5926 -> 5926 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_WRITEDATA.312
-rw-r--r--docs/libcurl/opts/CURLOPT_WRITEDATA.html17
-rw-r--r--docs/libcurl/opts/CURLOPT_WRITEDATA.pdfbin4674 -> 4668 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_WRITEFUNCTION.html23
-rw-r--r--docs/libcurl/opts/CURLOPT_WRITEFUNCTION.pdfbin5273 -> 5273 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_XFERINFODATA.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_XFERINFODATA.pdfbin3814 -> 3814 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.pdfbin5111 -> 5111 bytes
-rw-r--r--docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.html13
-rw-r--r--docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.pdfbin4044 -> 4044 bytes
-rw-r--r--docs/libcurl/opts/Makefile.am95
-rw-r--r--docs/libcurl/opts/Makefile.in123
-rw-r--r--docs/libcurl/symbols-in-versions16
-rwxr-xr-xdocs/libcurl/symbols.pl4
-rw-r--r--docs/mk-ca-bundle.html18
-rw-r--r--docs/mk-ca-bundle.pdfbin7060 -> 7056 bytes
-rw-r--r--include/Makefile.in29
-rw-r--r--include/curl/Makefile.in31
-rw-r--r--include/curl/curl.h32
-rw-r--r--include/curl/curlver.h16
-rw-r--r--include/curl/mprintf.h9
-rw-r--r--include/curl/multi.h38
-rw-r--r--include/curl/typecheck-gcc.h2
-rwxr-xr-xinstall-sh366
-rw-r--r--lib/CMakeLists.txt5
-rw-r--r--lib/Makefile.Watcom4
-rw-r--r--lib/Makefile.am14
-rw-r--r--lib/Makefile.b324
-rw-r--r--lib/Makefile.in183
-rw-r--r--lib/Makefile.inc16
-rw-r--r--lib/Makefile.m3231
-rw-r--r--lib/Makefile.netware18
-rw-r--r--lib/Makefile.vc1018
-rw-r--r--lib/Makefile.vc11677
-rw-r--r--lib/Makefile.vc12677
-rw-r--r--lib/Makefile.vc14677
-rw-r--r--lib/Makefile.vc618
-rw-r--r--lib/Makefile.vc7677
-rw-r--r--lib/Makefile.vc818
-rw-r--r--lib/Makefile.vc918
-rw-r--r--lib/README.ares69
-rw-r--r--lib/README.curl_off_t68
-rw-r--r--lib/README.curlx61
-rw-r--r--lib/README.encoding60
-rw-r--r--lib/README.hostip35
-rw-r--r--lib/README.httpauth74
-rw-r--r--lib/README.memoryleak55
-rw-r--r--lib/README.multi_socket53
-rw-r--r--lib/README.pingpong30
-rw-r--r--lib/README.pipelining44
-rw-r--r--lib/amigaos.c4
-rw-r--r--lib/asyn-ares.c19
-rw-r--r--lib/asyn-thread.c19
-rw-r--r--lib/base64.c16
-rw-r--r--lib/bundles.c110
-rw-r--r--lib/bundles.h (renamed from tests/unit/unit1601.c)40
-rwxr-xr-xlib/checksrc.pl82
-rw-r--r--lib/checksrc.whitelist10
-rw-r--r--lib/config-amigaos.h3
-rw-r--r--lib/config-dos.h12
-rw-r--r--lib/config-mac.h3
-rw-r--r--lib/config-symbian.h10
-rw-r--r--lib/config-tpf.h4
-rw-r--r--lib/config-vxworks.h7
-rw-r--r--lib/config-win32.h14
-rw-r--r--lib/config-win32ce.h6
-rw-r--r--lib/conncache.c161
-rw-r--r--lib/conncache.h21
-rw-r--r--lib/connect.c95
-rw-r--r--lib/cookie.c97
-rw-r--r--lib/curl_addrinfo.c16
-rw-r--r--lib/curl_config.h.cmake5
-rw-r--r--lib/curl_config.h.in30
-rw-r--r--lib/curl_des.c63
-rw-r--r--lib/curl_des.h34
-rw-r--r--lib/curl_endian.c8
-rw-r--r--lib/curl_fnmatch.c7
-rw-r--r--lib/curl_gssapi.c6
-rw-r--r--lib/curl_gssapi.h13
-rw-r--r--lib/curl_memory.h3
-rw-r--r--lib/curl_memrchr.c8
-rw-r--r--lib/curl_multibyte.c15
-rw-r--r--lib/curl_multibyte.h8
-rw-r--r--lib/curl_ntlm.c23
-rw-r--r--lib/curl_ntlm_core.c91
-rw-r--r--lib/curl_ntlm_core.h4
-rw-r--r--lib/curl_ntlm_msgs.c22
-rw-r--r--lib/curl_ntlm_wb.c36
-rw-r--r--lib/curl_printf.h56
-rw-r--r--lib/curl_rtmp.c8
-rw-r--r--lib/curl_sasl.c597
-rw-r--r--lib/curl_sasl.h126
-rw-r--r--lib/curl_sasl_gssapi.c44
-rw-r--r--lib/curl_sasl_sspi.c168
-rw-r--r--lib/curl_setup.h34
-rw-r--r--lib/curl_sspi.c30
-rw-r--r--lib/curl_sspi.h4
-rw-r--r--lib/curl_threads.c10
-rw-r--r--lib/curlx.h5
-rw-r--r--lib/dict.c16
-rw-r--r--lib/easy.c10
-rw-r--r--lib/escape.c13
-rw-r--r--lib/file.c12
-rw-r--r--lib/fileinfo.c6
-rw-r--r--lib/firefox-db2pem.sh4
-rw-r--r--lib/formdata.c53
-rw-r--r--lib/ftp.c163
-rw-r--r--lib/ftp.h11
-rw-r--r--lib/ftplistparser.c9
-rw-r--r--lib/getinfo.c11
-rw-r--r--lib/gopher.c12
-rw-r--r--lib/hash.c72
-rw-r--r--lib/hash.h10
-rw-r--r--lib/hmac.c6
-rw-r--r--lib/hostasyn.c14
-rw-r--r--lib/hostcheck.c6
-rw-r--r--lib/hostip.c274
-rw-r--r--lib/hostip.h14
-rw-r--r--lib/hostip4.c7
-rw-r--r--lib/hostip6.c7
-rw-r--r--lib/hostsyn.c6
-rw-r--r--lib/http.c360
-rw-r--r--lib/http.h64
-rw-r--r--lib/http2.c1169
-rw-r--r--lib/http2.h12
-rw-r--r--lib/http_chunks.c12
-rw-r--r--lib/http_digest.c10
-rw-r--r--lib/http_negotiate.c110
-rw-r--r--lib/http_negotiate.h6
-rw-r--r--lib/http_negotiate_sspi.c93
-rw-r--r--lib/http_proxy.c55
-rw-r--r--lib/http_proxy.h7
-rw-r--r--lib/if2ip.c6
-rw-r--r--lib/imap.c982
-rw-r--r--lib/imap.h23
-rw-r--r--lib/inet_ntop.c3
-rw-r--r--lib/inet_ntop.h4
-rw-r--r--lib/krb5.c29
-rw-r--r--lib/ldap.c89
-rw-r--r--lib/libcurl.plist6
-rw-r--r--lib/md4.c494
-rw-r--r--lib/md5.c579
-rw-r--r--lib/memdebug.c39
-rw-r--r--lib/memdebug.h20
-rwxr-xr-xlib/mk-ca-bundle.pl35
-rw-r--r--lib/multi.c350
-rw-r--r--lib/multihandle.h52
-rw-r--r--lib/multiif.h16
-rw-r--r--lib/netrc.c20
-rw-r--r--lib/nwlib.c8
-rw-r--r--lib/openldap.c17
-rw-r--r--lib/pingpong.c12
-rw-r--r--lib/pipeline.c111
-rw-r--r--lib/pipeline.h12
-rw-r--r--lib/pop3.c973
-rw-r--r--lib/pop3.h23
-rw-r--r--lib/progress.c6
-rw-r--r--lib/rtsp.c24
-rw-r--r--lib/security.c137
-rw-r--r--lib/select.c8
-rw-r--r--lib/sendf.c19
-rw-r--r--lib/setup-vms.h16
-rw-r--r--lib/share.c27
-rw-r--r--lib/share.h4
-rw-r--r--lib/slist.c4
-rw-r--r--lib/smb.c22
-rw-r--r--lib/smtp.c931
-rw-r--r--lib/smtp.h21
-rw-r--r--lib/socks.c4
-rw-r--r--lib/socks_gssapi.c61
-rw-r--r--lib/socks_sspi.c41
-rw-r--r--lib/splay.c10
-rw-r--r--lib/ssh.c36
-rw-r--r--lib/ssh.h8
-rw-r--r--lib/strdup.c4
-rw-r--r--lib/strerror.c31
-rw-r--r--lib/telnet.c139
-rw-r--r--lib/tftp.c123
-rw-r--r--lib/timeval.c4
-rw-r--r--lib/transfer.c51
-rw-r--r--lib/transfer.h5
-rw-r--r--lib/url.c456
-rw-r--r--lib/url.h6
-rw-r--r--lib/urldata.h84
-rw-r--r--lib/version.c6
-rw-r--r--lib/vtls/axtls.c34
-rw-r--r--lib/vtls/axtls.h12
-rw-r--r--lib/vtls/curl_darwinssl.c (renamed from lib/vtls/darwinssl.c)25
-rw-r--r--lib/vtls/curl_darwinssl.h (renamed from lib/vtls/darwinssl.h)13
-rw-r--r--lib/vtls/curl_schannel.c (renamed from lib/vtls/schannel.c)631
-rw-r--r--lib/vtls/curl_schannel.h (renamed from lib/vtls/schannel.h)7
-rw-r--r--lib/vtls/cyassl.c216
-rw-r--r--lib/vtls/cyassl.h22
-rw-r--r--lib/vtls/gskit.c15
-rw-r--r--lib/vtls/gskit.h22
-rw-r--r--lib/vtls/gtls.c308
-rw-r--r--lib/vtls/gtls.h26
-rw-r--r--lib/vtls/nss.c327
-rw-r--r--lib/vtls/nssg.h24
-rw-r--r--lib/vtls/openssl.c751
-rw-r--r--lib/vtls/openssl.h23
-rw-r--r--lib/vtls/polarssl.c128
-rw-r--r--lib/vtls/polarssl.h12
-rw-r--r--lib/vtls/polarssl_threadlock.c5
-rw-r--r--lib/vtls/vtls.c135
-rw-r--r--lib/vtls/vtls.h28
-rw-r--r--lib/wildcard.c20
-rw-r--r--lib/x509asn1.c24
-rw-r--r--lib/x509asn1.h7
-rw-r--r--m4/curl-confopts.m436
-rw-r--r--m4/curl-openssl.m49
-rwxr-xr-xmaketgz9
-rwxr-xr-xmissing402
-rwxr-xr-xmkinstalldirs162
-rw-r--r--packages/AIX/Makefile.in29
-rw-r--r--packages/AIX/RPM/Makefile.in29
-rw-r--r--packages/EPM/Makefile.in29
-rw-r--r--packages/Linux/Makefile.in29
-rw-r--r--packages/Linux/RPM/Makefile.in31
-rw-r--r--packages/Makefile.in29
-rw-r--r--packages/OS400/README.OS40016
-rw-r--r--packages/OS400/ccsidcurl.c48
-rw-r--r--packages/OS400/ccsidcurl.h6
-rw-r--r--packages/OS400/curl.inc.in68
-rw-r--r--packages/OS400/makefile.sh2
-rw-r--r--packages/OS400/os400sys.c58
-rw-r--r--packages/Solaris/Makefile.in29
-rw-r--r--packages/Symbian/group/libcurl.mmp8
-rw-r--r--packages/TPF/curl.mak1
-rw-r--r--packages/Win32/Makefile.in29
-rw-r--r--packages/Win32/cygwin/Makefile.in29
-rw-r--r--packages/vms/Makefile.in29
-rw-r--r--packages/vms/build_gnv_curl_pcsi_desc.com8
-rw-r--r--packages/vms/build_vms.com2
-rw-r--r--packages/vms/gnv_link_curl.com13
-rw-r--r--projects/README51
-rw-r--r--projects/Windows/VC10/curl.sln (renamed from projects/Windows/VC10/curl-all.sln)42
-rw-r--r--projects/Windows/VC10/lib/libcurl.sln40
-rw-r--r--projects/Windows/VC10/lib/libcurl.vcxproj793
-rw-r--r--projects/Windows/VC10/src/curlsrc.sln (renamed from projects/Windows/VC10/src/curl.sln)26
-rw-r--r--projects/Windows/VC10/src/curlsrc.vcxproj (renamed from projects/Windows/VC10/src/curl.vcxproj)958
-rw-r--r--projects/Windows/VC11/curl.sln (renamed from projects/Windows/VC11/curl-all.sln)42
-rw-r--r--projects/Windows/VC11/lib/libcurl.sln40
-rw-r--r--projects/Windows/VC11/lib/libcurl.vcxproj801
-rw-r--r--projects/Windows/VC11/src/curlsrc.sln (renamed from projects/Windows/VC11/src/curl.sln)26
-rw-r--r--projects/Windows/VC11/src/curlsrc.vcxproj (renamed from projects/Windows/VC11/src/curl.vcxproj)966
-rw-r--r--projects/Windows/VC12/curl.sln (renamed from projects/Windows/VC12/curl-all.sln)42
-rw-r--r--projects/Windows/VC12/lib/libcurl.sln40
-rw-r--r--projects/Windows/VC12/lib/libcurl.vcxproj801
-rw-r--r--projects/Windows/VC12/src/curlsrc.sln (renamed from projects/Windows/VC12/src/curl.sln)26
-rw-r--r--projects/Windows/VC12/src/curlsrc.vcxproj (renamed from projects/Windows/VC12/src/curl.vcxproj)966
-rw-r--r--projects/Windows/VC14/curl-all.sln298
-rw-r--r--projects/Windows/VC14/lib/libcurl.sln181
-rw-r--r--projects/Windows/VC14/lib/libcurl.vcxproj2617
-rw-r--r--projects/Windows/VC14/src/curl.sln181
-rw-r--r--projects/Windows/VC14/src/curl.vcxproj2786
-rw-r--r--projects/Windows/VC6/curl.dsw (renamed from projects/Windows/VC6/curl-all.dsw)2
-rw-r--r--projects/Windows/VC6/lib/libcurl.dsp116
-rw-r--r--projects/Windows/VC6/src/curlsrc.dsp (renamed from projects/Windows/VC6/src/curl.dsp)200
-rw-r--r--projects/Windows/VC6/src/curlsrc.dsw (renamed from projects/Windows/VC6/src/curl.dsw)2
-rw-r--r--projects/Windows/VC7.1/curl.sln (renamed from projects/Windows/VC7.1/curl-all.sln)2
-rw-r--r--projects/Windows/VC7.1/lib/libcurl.vcproj71
-rw-r--r--projects/Windows/VC7.1/src/curlsrc.sln (renamed from projects/Windows/VC7.1/src/curl.sln)2
-rw-r--r--projects/Windows/VC7.1/src/curlsrc.vcproj (renamed from projects/Windows/VC7.1/src/curl.vcproj)74
-rw-r--r--projects/Windows/VC7/curl.sln (renamed from projects/Windows/VC7/curl-all.sln)2
-rw-r--r--projects/Windows/VC7/lib/libcurl.vcproj71
-rw-r--r--projects/Windows/VC7/src/curlsrc.sln (renamed from projects/Windows/VC7/src/curl.sln)2
-rw-r--r--projects/Windows/VC7/src/curlsrc.vcproj (renamed from projects/Windows/VC7/src/curl.vcproj)74
-rw-r--r--projects/Windows/VC8/curl.sln (renamed from projects/Windows/VC8/curl-all.sln)2
-rw-r--r--projects/Windows/VC8/lib/libcurl.sln20
-rw-r--r--projects/Windows/VC8/lib/libcurl.vcproj328
-rw-r--r--projects/Windows/VC8/src/curlsrc.sln (renamed from projects/Windows/VC8/src/curl.sln)2
-rw-r--r--projects/Windows/VC8/src/curlsrc.vcproj (renamed from projects/Windows/VC8/src/curl.vcproj)340
-rw-r--r--projects/Windows/VC9/curl.sln (renamed from projects/Windows/VC9/curl-all.sln)2
-rw-r--r--projects/Windows/VC9/lib/libcurl.sln20
-rw-r--r--projects/Windows/VC9/lib/libcurl.vcproj368
-rw-r--r--projects/Windows/VC9/src/curlsrc.sln (renamed from projects/Windows/VC9/src/curl.sln)2
-rw-r--r--projects/Windows/VC9/src/curlsrc.vcproj (renamed from projects/Windows/VC9/src/curl.vcproj)436
-rw-r--r--projects/build-openssl.bat44
-rw-r--r--projects/build-wolfssl.bat353
-rw-r--r--projects/checksrc.bat63
-rwxr-xr-xscripts/zsh.pl77
-rw-r--r--src/CMakeLists.txt15
-rw-r--r--src/Makefile.Watcom6
-rw-r--r--src/Makefile.am14
-rw-r--r--src/Makefile.b324
-rw-r--r--src/Makefile.in47
-rw-r--r--src/Makefile.m3225
-rw-r--r--src/Makefile.netware4
-rw-r--r--src/Makefile.vc108
-rw-r--r--src/Makefile.vc11544
-rw-r--r--src/Makefile.vc12544
-rw-r--r--src/Makefile.vc14544
-rw-r--r--src/Makefile.vc68
-rw-r--r--src/Makefile.vc7544
-rw-r--r--src/Makefile.vc88
-rw-r--r--src/Makefile.vc98
-rw-r--r--src/checksrc.whitelist3
-rw-r--r--src/mkhelp.pl10
-rw-r--r--src/tool_cb_dbg.c6
-rw-r--r--src/tool_cb_hdr.c7
-rw-r--r--src/tool_cb_wrt.c81
-rw-r--r--src/tool_cb_wrt.h3
-rw-r--r--src/tool_cfgable.c4
-rw-r--r--src/tool_cfgable.h11
-rw-r--r--src/tool_dirhie.c4
-rw-r--r--src/tool_easysrc.c6
-rw-r--r--src/tool_formparse.c22
-rw-r--r--src/tool_getparam.c85
-rw-r--r--src/tool_getpass.c12
-rw-r--r--src/tool_help.c18
-rw-r--r--src/tool_helpers.c6
-rw-r--r--src/tool_homedir.c6
-rw-r--r--src/tool_hugehelp.c9502
-rw-r--r--src/tool_metalink.c51
-rw-r--r--src/tool_msgs.c14
-rw-r--r--src/tool_msgs.h4
-rw-r--r--src/tool_operate.c103
-rw-r--r--src/tool_paramhlp.c19
-rw-r--r--src/tool_parsecfg.c45
-rw-r--r--src/tool_setopt.c6
-rw-r--r--src/tool_setopt.h2
-rw-r--r--src/tool_strdup.c4
-rw-r--r--src/tool_urlglob.c22
-rw-r--r--src/tool_urlglob.h4
-rw-r--r--src/tool_version.h2
-rw-r--r--src/tool_writeenv.c5
-rw-r--r--src/tool_writeout.c9
-rwxr-xr-xtest-driver139
-rw-r--r--tests/FILEFORMAT17
-rw-r--r--tests/Makefile.am2
-rw-r--r--tests/Makefile.in31
-rw-r--r--tests/README27
-rw-r--r--tests/certs/EdelCurlRoot-ca.cacert119
-rw-r--r--tests/certs/EdelCurlRoot-ca.crt119
-rw-r--r--tests/certs/EdelCurlRoot-ca.csr30
-rw-r--r--tests/certs/EdelCurlRoot-ca.derbin918 -> 916 bytes
-rw-r--r--tests/certs/EdelCurlRoot-ca.key50
-rw-r--r--tests/certs/EdelCurlRoot-ca.prm2
-rw-r--r--tests/certs/Makefile.am37
-rw-r--r--tests/certs/Makefile.in67
-rw-r--r--tests/certs/Server-localhost-sv.crl29
-rw-r--r--tests/certs/Server-localhost-sv.crt101
-rw-r--r--tests/certs/Server-localhost-sv.csr14
-rw-r--r--tests/certs/Server-localhost-sv.derbin835 -> 837 bytes
-rw-r--r--tests/certs/Server-localhost-sv.dhp5
-rw-r--r--tests/certs/Server-localhost-sv.key26
-rw-r--r--tests/certs/Server-localhost-sv.p12bin0 -> 2958 bytes
-rw-r--r--tests/certs/Server-localhost-sv.pem136
-rw-r--r--tests/certs/Server-localhost-sv.prm4
-rw-r--r--tests/certs/Server-localhost-sv.pub.derbin162 -> 162 bytes
-rw-r--r--tests/certs/Server-localhost-sv.pub.pem8
-rw-r--r--tests/certs/Server-localhost.nn-sv.crl30
-rw-r--r--tests/certs/Server-localhost.nn-sv.crt101
-rw-r--r--tests/certs/Server-localhost.nn-sv.csr14
-rw-r--r--tests/certs/Server-localhost.nn-sv.derbin841 -> 843 bytes
-rw-r--r--tests/certs/Server-localhost.nn-sv.dhp5
-rw-r--r--tests/certs/Server-localhost.nn-sv.key26
-rw-r--r--tests/certs/Server-localhost.nn-sv.pem136
-rw-r--r--tests/certs/Server-localhost.nn-sv.prm4
-rw-r--r--tests/certs/Server-localhost.nn-sv.pub.derbin162 -> 162 bytes
-rw-r--r--tests/certs/Server-localhost.nn-sv.pub.pem8
-rw-r--r--tests/certs/Server-localhost0h-sv.crl32
-rw-r--r--tests/certs/Server-localhost0h-sv.crt101
-rw-r--r--tests/certs/Server-localhost0h-sv.csr14
-rw-r--r--tests/certs/Server-localhost0h-sv.derbin837 -> 839 bytes
-rw-r--r--tests/certs/Server-localhost0h-sv.dhp5
-rw-r--r--tests/certs/Server-localhost0h-sv.key26
-rw-r--r--tests/certs/Server-localhost0h-sv.p12bin0 -> 2970 bytes
-rw-r--r--tests/certs/Server-localhost0h-sv.pem136
-rw-r--r--tests/certs/Server-localhost0h-sv.prm4
-rw-r--r--tests/certs/Server-localhost0h-sv.pub.derbin162 -> 162 bytes
-rw-r--r--tests/certs/Server-localhost0h-sv.pub.pem8
-rw-r--r--tests/certs/scripts/Makefile.in29
-rwxr-xr-xtests/certs/scripts/genroot.sh8
-rwxr-xr-xtests/certs/scripts/genserv.sh4
-rw-r--r--tests/data/CMakeLists.txt7
-rw-r--r--tests/data/Makefile.am2
-rw-r--r--tests/data/Makefile.in56
-rw-r--r--tests/data/Makefile.inc23
-rw-r--r--tests/data/test10014
-rw-r--r--tests/data/test10026
-rw-r--r--tests/data/test10302
-rw-r--r--tests/data/test10322
-rw-r--r--tests/data/test10402
-rw-r--r--tests/data/test10412
-rw-r--r--tests/data/test10422
-rw-r--r--tests/data/test10432
-rw-r--r--tests/data/test10582
-rw-r--r--tests/data/test10712
-rw-r--r--tests/data/test10752
-rw-r--r--tests/data/test10792
-rw-r--r--tests/data/test10872
-rw-r--r--tests/data/test10884
-rw-r--r--tests/data/test10952
-rw-r--r--tests/data/test11006
-rw-r--r--tests/data/test11012
-rw-r--r--tests/data/test11174
-rw-r--r--tests/data/test11214
-rw-r--r--tests/data/test11344
-rw-r--r--tests/data/test113595
-rw-r--r--tests/data/test122
-rw-r--r--tests/data/test12042
-rw-r--r--tests/data/test12122
-rw-r--r--tests/data/test12154
-rw-r--r--tests/data/test12292
-rw-r--r--tests/data/test12372
-rw-r--r--tests/data/test124164
-rw-r--r--tests/data/test1301
-rw-r--r--tests/data/test13104
-rw-r--r--tests/data/test13312
-rw-r--r--tests/data/test14012
-rw-r--r--tests/data/test14124
-rw-r--r--tests/data/test14184
-rw-r--r--tests/data/test142172
-rw-r--r--tests/data/test142263
-rw-r--r--tests/data/test142357
-rw-r--r--tests/data/test142476
-rw-r--r--tests/data/test14284
-rw-r--r--tests/data/test14342
-rw-r--r--tests/data/test1504
-rw-r--r--tests/data/test15101
-rw-r--r--tests/data/test151314
-rw-r--r--tests/data/test15272
-rw-r--r--tests/data/test1536
-rw-r--r--tests/data/test153030
-rw-r--r--tests/data/test1531bin552 -> 0 bytes
-rw-r--r--tests/data/test1542
-rw-r--r--tests/data/test1554
-rw-r--r--tests/data/test15930
-rw-r--r--tests/data/test162
-rw-r--r--tests/data/test160027
-rw-r--r--tests/data/test160126
-rw-r--r--tests/data/test160226
-rw-r--r--tests/data/test1622
-rw-r--r--tests/data/test1642
-rw-r--r--tests/data/test1674
-rw-r--r--tests/data/test1686
-rw-r--r--tests/data/test1696
-rw-r--r--tests/data/test172
-rw-r--r--tests/data/test1702
-rw-r--r--tests/data/test1764
-rw-r--r--tests/data/test18015
-rw-r--r--tests/data/test1842
-rw-r--r--tests/data/test1854
-rw-r--r--tests/data/test1884
-rw-r--r--tests/data/test1894
-rw-r--r--tests/data/test190210
-rw-r--r--tests/data/test1942
-rw-r--r--tests/data/test22
-rw-r--r--tests/data/test202310
-rw-r--r--tests/data/test202410
-rw-r--r--tests/data/test202516
-rw-r--r--tests/data/test202610
-rw-r--r--tests/data/test202712
-rw-r--r--tests/data/test202816
-rw-r--r--tests/data/test202914
-rw-r--r--tests/data/test203016
-rw-r--r--tests/data/test203120
-rw-r--r--tests/data/test20328
-rw-r--r--tests/data/test20338
-rw-r--r--tests/data/test203963
-rw-r--r--tests/data/test204069
-rw-r--r--tests/data/test204158
-rw-r--r--tests/data/test204244
-rw-r--r--tests/data/test204333
-rw-r--r--tests/data/test2082
-rw-r--r--tests/data/test2334
-rw-r--r--tests/data/test2344
-rw-r--r--tests/data/test2394
-rw-r--r--tests/data/test2422
-rw-r--r--tests/data/test2436
-rw-r--r--tests/data/test2454
-rw-r--r--tests/data/test2464
-rw-r--r--tests/data/test2562
-rw-r--r--tests/data/test2576
-rw-r--r--tests/data/test2584
-rw-r--r--tests/data/test2594
-rw-r--r--tests/data/test2642
-rw-r--r--tests/data/test2674
-rw-r--r--tests/data/test2732
-rw-r--r--tests/data/test2754
-rw-r--r--tests/data/test2782
-rw-r--r--tests/data/test2792
-rw-r--r--tests/data/test2872
-rw-r--r--tests/data/test2992
-rw-r--r--tests/data/test32
-rw-r--r--tests/data/test3012
-rw-r--r--tests/data/test318
-rw-r--r--tests/data/test32011
-rw-r--r--tests/data/test332
-rw-r--r--tests/data/test382
-rw-r--r--tests/data/test468
-rw-r--r--tests/data/test5032
-rw-r--r--tests/data/test5194
-rw-r--r--tests/data/test5222
-rw-r--r--tests/data/test5232
-rw-r--r--tests/data/test5406
-rw-r--r--tests/data/test5476
-rw-r--r--tests/data/test5486
-rw-r--r--tests/data/test5512
-rw-r--r--tests/data/test552bin142985 -> 142985 bytes
-rw-r--r--tests/data/test5556
-rw-r--r--tests/data/test562
-rw-r--r--tests/data/test5652
-rw-r--r--tests/data/test5906
-rw-r--r--tests/data/test5982
-rw-r--r--tests/data/test612
-rw-r--r--tests/data/test624
-rw-r--r--tests/data/test632
-rw-r--r--tests/data/test642
-rw-r--r--tests/data/test652
-rw-r--r--tests/data/test674
-rw-r--r--tests/data/test684
-rw-r--r--tests/data/test696
-rw-r--r--tests/data/test704
-rw-r--r--tests/data/test724
-rw-r--r--tests/data/test732
-rw-r--r--tests/data/test802
-rw-r--r--tests/data/test814
-rw-r--r--tests/data/test822
-rw-r--r--tests/data/test834
-rw-r--r--tests/data/test83756
-rw-r--r--tests/data/test83856
-rw-r--r--tests/data/test83956
-rw-r--r--tests/data/test842
-rw-r--r--tests/data/test84056
-rw-r--r--tests/data/test852
-rw-r--r--tests/data/test882
-rw-r--r--tests/data/test88357
-rw-r--r--tests/data/test88457
-rw-r--r--tests/data/test88556
-rw-r--r--tests/data/test88656
-rw-r--r--tests/data/test898
-rw-r--r--tests/data/test908
-rw-r--r--tests/data/test916
-rw-r--r--tests/data/test922
-rw-r--r--tests/data/test9382
-rw-r--r--tests/data/test94256
-rw-r--r--tests/data/test94356
-rw-r--r--tests/data/test94455
-rw-r--r--tests/data/test94555
-rw-r--r--tests/data/test962
-rw-r--r--tests/data/test992
-rwxr-xr-xtests/extern-scan.pl60
-rw-r--r--tests/libtest/CMakeLists.txt122
-rw-r--r--tests/libtest/Makefile.am6
-rw-r--r--tests/libtest/Makefile.in800
-rw-r--r--tests/libtest/Makefile.inc10
-rw-r--r--tests/libtest/first.c31
-rw-r--r--tests/libtest/lib1515.c3
-rw-r--r--tests/libtest/lib1527.c1
-rw-r--r--tests/libtest/lib1530.c67
-rw-r--r--tests/libtest/lib1531.c144
-rw-r--r--tests/libtest/lib506.c3
-rw-r--r--tests/libtest/lib530.c16
-rw-r--r--tests/libtest/lib539.c3
-rw-r--r--tests/libtest/lib557.c3
-rw-r--r--tests/libtest/lib568.c5
-rw-r--r--tests/libtest/lib569.c7
-rw-r--r--tests/libtest/lib570.c7
-rw-r--r--tests/libtest/lib571.c6
-rw-r--r--tests/libtest/lib572.c5
-rw-r--r--tests/libtest/lib582.c6
-rw-r--r--tests/libtest/lib586.c3
-rw-r--r--tests/libtest/test.h8
-rw-r--r--tests/libtest/testtrace.c6
-rwxr-xr-xtests/memanalyze.pl9
-rw-r--r--tests/runtests.html11
-rw-r--r--tests/runtests.pdfbin7639 -> 7639 bytes
-rwxr-xr-xtests/runtests.pl52
-rw-r--r--tests/server/CMakeLists.txt62
-rw-r--r--tests/server/Makefile.am2
-rw-r--r--tests/server/Makefile.in35
-rw-r--r--tests/server/getpart.c9
-rw-r--r--tests/server/rtspd.c44
-rw-r--r--tests/server/sws.c66
-rw-r--r--tests/server/tftpd.c6
-rw-r--r--tests/testcurl.html63
-rw-r--r--tests/testcurl.pdfbin7224 -> 7224 bytes
-rwxr-xr-xtests/testcurl.pl47
-rw-r--r--tests/unit/Makefile.in179
-rw-r--r--tests/unit/Makefile.inc14
-rw-r--r--tests/unit/curlcheck.h14
-rw-r--r--tests/unit/unit1305.c18
-rw-r--r--tests/unit/unit1397.c2
-rw-r--r--tests/unit/unit1600.c63
-rw-r--r--tests/unit/unit1602.c80
-rw-r--r--winbuild/BUILD.WINDOWS.txt29
-rw-r--r--winbuild/Makefile.vc15
-rw-r--r--winbuild/MakefileBuild.vc33
1354 files changed, 27316 insertions, 51386 deletions
diff --git a/CHANGES b/CHANGES
index 056e27463..ddcd07e6e 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,5159 +6,5321 @@
Changelog
-Version 7.44.0 (11 Aug 2015)
-
-Daniel Stenberg (11 Aug 2015)
-- RELEASE-NOTES: synced with c75a1e775061
+Version 7.40.0 (7 Jan 2015)
-- [Svyatoslav Mishyn brought this change]
+Daniel Stenberg (7 Jan 2015)
+- RELEASE-NOTES: version 7.40.0
- curl_formget.3: correct return code
+- darwinssl: fix session ID keys to only reuse identical sessions
- Closes #375
-
-- [Svyatoslav Mishyn brought this change]
+ ...to avoid a session ID getting cached without certificate checking and
+ then after a subsequent _enabling_ of the check libcurl could still
+ re-use the session done without cert checks.
+
+ Bug: http://curl.haxx.se/docs/adv_20150108A.html
+ Reported-by: Marc Hesse
- libcurl-tutorial.3: fix formatting
+- tests: make sure CRLFs can't be used in URLs passed to proxy
- Closes #374
+ Bug: http://curl.haxx.se/docs/adv_20150108B.html
-- [Svyatoslav Mishyn brought this change]
+- url-parsing: reject CRLFs within URLs
+
+ Bug: http://curl.haxx.se/docs/adv_20150108B.html
+ Reported-by: Andrey Labunets
- curl_easy_recv.3: fix formatting
+Steve Holme (7 Jan 2015)
+- ldap: Convert attribute output to UTF-8 when Unicode
-- [Anders Bakken brought this change]
+- ldap: Convert DN output to UTF-8 when Unicode
- http2: discard frames with no SessionHandle
-
- Return 0 instead of NGHTTP2_ERR_CALLBACK_FAILURE if we can't locate the
- SessionHandle. Apparently mod_h2 will sometimes send a frame for a
- stream_id we're finished with.
+Daniel Stenberg (7 Jan 2015)
+- hostip: remove 'stale' argument from Curl_fetch_addr proto
- Use nghttp2_session_get_stream_user_data and
- nghttp2_session_set_stream_user_data to identify SessionHandles instead
- of a hash.
+ Also, remove the log output of the resolved name is NOT in the cache in
+ the spirit of only telling when something is actually happening.
+
+Steve Holme (7 Jan 2015)
+- ldap/imap: Fixed spelling mistake in comments and variable names
- Closes #372
+ Reported-by: Michael Osipov
-- RELEASE-NOTES: synced with 9ee40ce2aba
+Daniel Stenberg (7 Jan 2015)
+- RELEASE-NOTES: updated with ./contributors.sh output
-- [Viktor Szakats brought this change]
+Dan Fandrich (5 Jan 2015)
+- curl_multibyte.h: Eliminated some trailing whitespace
- build: refer to fixed libidn versions
-
- closes #371
+Steve Holme (4 Jan 2015)
+- RELEASE-NOTES: Synced with ea93252ef1
-- Revert "configure: disable libidn by default"
-
- This reverts commit e6749055d65398315fd77f5b5b8234c5552ac2d3.
+- ldap: Fixed Unicode usage for all Win32 builds
- ... since libidn has since been fixed.
+ Otherwise, the fixes in the previous commits would only be applicable
+ to IDN and SSPI based builds and not others such as OpenSSL with LDAP
+ enabled.
-- [Jakub Zakrzewski brought this change]
+- ldap: Fixed memory leak from commit efb64fdf80
- CMake: s/HAVE_GSS_API/HAVE_GSSAPI/ to match header define
-
- Otherwise the build only pretended to use GSS-API
+- ldap: Fix memory leak from commit 3a805c5cc1
+
+- ldap: Fixed attribute variable warnings when Unicode is enabled
- Closes #370
+ Use 'TCHAR *' for local attribute variable rather than 'char *'.
-- SFTP: fix range request off-by-one in size check
+- ldap: Fixed DN variable warnings when Unicode is enabled
- Reported-by: Tim Stack
+ Use 'TCHAR *' for local DN variable rather than 'char *'.
+
+- ldap: Remove the unescape_elements() function
- Closes #359
+ Due to the recent modifications this function is no longer used.
-- test46: update cookie expire time
+- ldap.c: Fixed compilation warning
- ... since it went old and thus was expired and caused the test to fail!
+ ldap.c:98: warning: extra tokens at end of #endif directive
-Steve Holme (9 Aug 2015)
-- generate.bat: Use buildconf.bat for prerequisite file generation
+- ldap: Fixed support for Unicode filter in Win32 search call
-- buildconf.bat: Tidy up of comments after recent commits
+- ldap.c: Fixed compilation warning
+
+ ldap.c:802: warning: comparison between signed and unsigned integer
+ expressions
-- buildconf.bat: Added full generation of src\tool_hugehelp.c
+- ldap: Fixed support for Unicode attributes in Win32 search call
+
+- ldap: Fixed memory leak from commit efb64fdf80
- Added support for generating the full man page based on code from
- generate.bat.
+ The unescapped DN was not freed after a successful character conversion.
-- buildconf.bat: Added detection of groff, nroff, perl and gzip
+- ldap.c: Fixed compilation error
- To allow for the full generation of tool_hugehelp.c added detection of
- the required programs - based on code from generate.bat.
+ ldap.c:738: error: macro "LDAP_TRACE" passed 2 arguments, but takes
+ just 1
-- buildconf.bat: Move DOS variable clean-up code to separate function
+- ldap.c: Fixed compilation warning
- Rather than duplicate future variables, during clean-up of both success
- and error conditions, use a common function that can be called by both.
+ ldap.c:89: warning: extra tokens at end of #endif directive
-- RELEASE-NOTES: Synced with 39dcf352d2
+- ldap: Fixed support for Unicode DN in Win32 search call
-- buildconf.bat: Added error messages on failure
+- ldap: Fixed Unicode user and password in Win32 bind calls
-- buildconf.bat: Generate and clean files in the same order
+- ldap: Fixed Unicode host name in Win32 initialisation calls
-- buildconf.bat: Maintain compatibility with DOS based systems
+- ldap: Use host.dispname for infof() connection failure messages
- Commit f08e30d7bc broke compatibility with DOS and non Windows NT based
- versions of Windows due to the use of the setlocal command.
+ As host.name may be encoded use dispname for infof() failure messages.
-Jay Satiro (9 Aug 2015)
-- CURLOPT_RESOLVE.3: Note removal support was added in 7.42
-
- Bug: http://curl.haxx.se/mail/lib-2015-08/0019.html
- Reported-by: Inca R
+- ldap: Prefer 'CURLcode result' for curl result codes
-Steve Holme (8 Aug 2015)
-- checksrc.bat: Fixed error when missing *.c and *.h files
+- ldap: Pass write length in all Curl_client_write() calls
- File Not Found
-
-- checksrc.bat: Fixed incorrect 'lib\vtls' path check in commit 333c36b276
+ As we get the length for the DN and attribute variables, and we know
+ the length for the line terminator, pass the length values rather than
+ zero as this will save Curl_client_write() from having to perform an
+ additional strlen() call.
-- checksrc.bat: Fixed error when [directory] isn't a curl source directory
+- ldap: Fixed attribute memory leaks on failed client write
- The system cannot find the file specified.
-
-- checksrc.bat: Added check for unknown arguments
+ Fixed memory leaks from commit 086ad79970 as was noted in the commit
+ comments.
-- scripts: Added missing comments
+- ldap: Fixed DN memory leaks on failed client write
+
+ Fixed memory leaks from commit 086ad79970 as was noted in the commit
+ comments.
-- scripts: Always perform setlocal and endlocal calls in pairs
+- curl_ntlm_core.c: Fixed compilation warning from commit 1cb17b2a5d
- Ensure that there isn't a mismatch between setlocal and endlocal calls,
- which could have happened due to setlocal being called after certain
- error conditions were checked for.
+ curl_ntlm_core.c:146: warning: passing 'DES_cblock' (aka 'unsigned char
+ [8]') to parameter of type 'char *' converts
+ between pointers to integer types with different
+ sign
-- scripts: Allow -help to be specified in any argument
+- ntlm: Use extend_key_56_to_64() for all cryptography engines
- Allow the -help command line argument to be specified in any argument
- and not just as the first.
+ Rather than duplicate the code in setup_des_key() for OpenSSL and in
+ extend_key_56_to_64() for non-OpenSSL based crypto engines, as it is
+ the same, use extend_key_56_to_64() for all engines.
-Daniel Stenberg (6 Aug 2015)
-- [juef brought this change]
+- RELEASE-NOTES: Synced with 34f0bd110f
- curl_multi_remove_handle.3: fix formatting
+- curl_ntlm_core.c: Fixed compilation warning
- closes #366
+ curl_ntlm_core.c:458: warning: 'ascii_uppercase_to_unicode_le' defined
+ but not used
-Steve Holme (6 Aug 2015)
-- README: Added notes about 'Running DLL based configurations'
+- endian: Fixed bit-shift in 64-bit integer read functions
- ...as well as a TODO for a future enhancement to the project files.
+ From commit 43792592ca and 4bb5a351b2.
- Thanks-to: Jay Satiro
+ Reported-by: Michael Osipov
-- RELEASE-NOTES: Synced with cf8975387f
+- smb: Use endian functions for reading NBT and message size values
-- buildconf.bat: Synchronise no repository error with generate.bat
+- endian: Added big endian read functions
-- generate.bat: Added a check for the presence of a git repository
+- endian: Added 64-bit integer read function
-- [Jay Satiro brought this change]
+- COPYING: Bumped copyright year to 2015
- build: Added wolfSSL configurations to VC10+ project files
+- version: Bump copyright year to 2015
+
+- smb.c: Fixed compilation warnings
- URL: https://github.com/bagder/curl/pull/174
+ smb.c:780: warning: passing 'char *' to parameter of type 'unsigned
+ char *' converts between pointers to integer types with
+ different sign
+ smb.c:781: warning: passing 'char *' to parameter of type 'unsigned
+ char *' converts between pointers to integer types with
+ different sign
+ smb.c:804: warning: passing 'char *' to parameter of type 'unsigned
+ char *' converts between pointers to integer types with
+ different sign
-- [Jay Satiro brought this change]
+- smb: Use endian functions for reading length and offset values
- build: Added wolfSSL build script for Visual Studio projects
-
- Added the wolfSSL build script, based on build-openssl.bat, as well as
- the property sheet and header file required for the upcoming additions
- to the Visual Studio project files.
+- endian: Added 16-bit integer write function
-Daniel Stenberg (6 Aug 2015)
-- CHANGES: refer to the online changelog
+- endian: Fixed Linux compilation issues
- Suggested-by: mc0e
+ Having files named endian.[c|h] seemed to cause issues under Linux so
+ renamed them both to have the curl_ prefix in the filenames.
-- [Isaac Boukris brought this change]
+- [Julien Nabet brought this change]
- NTLM: handle auth for only a single request
-
- Currently when the server responds with 401 on NTLM authenticated
- connection (re-used) we consider it to have failed. However this is
- legitimate and may happen when for example IIS is set configured to
- 'authPersistSingleRequest' or when the request goes thru a proxy (with
- 'via' header).
+ lib1900.c: Fixed cppcheck error
- Implemented by imploying an additional state once a connection is
- re-used to indicate that if we receive 401 we need to restart
- authentication.
+ lib1900.c:182: (style) Array index 'handlenum' is used before limits
+ check
- Closes #363
-
-Steve Holme (5 Aug 2015)
-- RELEASE-NOTES: Synced with 473807b95f
-
-- generate.bat: Use buildconf.bat for prerequisite file clean-up
-
-- buildconf.bat: Added support for file clean-up via -clean
-
-- buildconf.bat: Added progress output
-
-- buildconf.bat: Avoid using goto for file not in repository
+ Bug: https://github.com/bagder/curl/pull/133
-Daniel Stenberg (5 Aug 2015)
-- curl_slist_append.3: add error checking to the example
+- endian: Added standard function descriptions
-Steve Holme (5 Aug 2015)
-- buildconf.bat: Added display of usage text with -help
+- endian: Renamed functions for curl API naming convention
-- buildconf.bat: Added exit codes for error handling
+- endian: Moved write functions to new module
-- buildconf.bat: Added our standard copyright header
+- endian: Moved read functions to new module
-- buildconf.bat: Use lower-case for commands and reserved keywords
+- endian: Introduced endian module
+
+ To allow the little endian functions, currently used in two of the NTLM
+ source files, to be used by other modules such as the SMB module.
-- generate.bat: Only clean prerequisite files when in ALL mode
+- sepheaders.c: Applied curl oding standards
-- generate.bat: Moved error messages out of sub-routines
+- [Julien Nabet brought this change]
-- generate.bat: More use of lower-case for commands and reserved keywords
+ sepheaders.c: Fixed resource leak on failure
-Daniel Stenberg (3 Aug 2015)
-- libcurl.3: fix a single typo
+- vtls: Use '(void) arg' for unused parameters
- Closes #361
-
-- RELEASE-NOTES: synced with c4eb10e2f06f
+ Prefer void for unused parameters, rather than assigning an argument to
+ itself as a) unintelligent compilers won't optimize it out, b) it can't
+ be used for const parameters, c) it will cause compilation warnings for
+ clang with -Wself-assign and d) is inconsistent with other areas of the
+ curl source code.
-- SSH: three state machine fixups
-
- The SSH state machine didn't clear the 'rc' variable appropriately in a
- two places which prevented it from looping the way it should. And it
- lacked an 'else' statement that made it possible to erroneously get
- stuck in the SSH_AUTH_AGENT state.
-
- Reported-by: Tim Stack
+- smb.c: Fixed compilation warning
- Closes #357
+ smb.c:586: warning: conversion to 'short unsigned int' from 'int' may
+ alter its value
-- curl_gssapi: remove 'const' to fix compiler warnings
-
- initialization discards 'const' qualifier from pointer target type
+- [Bill Nagel brought this change]
-- docs: formpost needs the full size at start of upload
+ smb: Use the connection's upload buffer
- Closes #360
+ Use the connection's upload buffer instead of allocating our own send
+ buffer.
-Steve Holme (1 Aug 2015)
-- sspi: Fix typo from left over from old code which referenced NTLM
-
- References to NTLM in the identity generation should have been removed
- in commit c469941293 but not all were.
+- RELEASE-NOTES: Synced with 1933f9d33c
-- win32: Fix compilation warnings from commit 40c921f8b8
+- schannel: Moved the ISC return flag definitions to the SSPI module
- connect.c:953:5: warning: initializer element is not computable at load
- time
- connect.c:953:5: warning: missing initializer for field 'dwMinorVersion'
- of 'OSVERSIONINFOEX'
- curl_sspi.c:97:5: warning: initializer element is not computable at load
- time
- curl_sspi.c:97:5: warning: missing initializer for field 'szCSDVersion'
- of 'OSVERSIONINFOEX'
+ Moved our Initialize Security Context return attribute definitions to
+ the SSPI module, as a) these can be used by other SSPI based providers
+ and b) the ISC required attributes are defined there.
-- schannel: Fix compilation warning from commit 7a8e861a56
-
- schannel.c:1125:5: warning: missing initializer for field 'dwMinorVersion'
- of 'OSVERSIONINFOEX' [-Wmissing-field-initializers
+- [Bill Nagel brought this change]
-Daniel Stenberg (31 Jul 2015)
-- libcurl-thread.3: minor reformatting
+ smb: Close the connection after a failed client write
-Jay Satiro (31 Jul 2015)
-- curl_global_init_mem.3: Warn threaded resolver needs thread safe funcs
+- darwinssl: Fixed compilation warning
- Bug: http://curl.haxx.se/mail/lib-2015-07/0149.html
- Reported-by: Eric Ridge
+ vtls.c:683:43: warning: unused parameter 'data'
-- libcurl-thread.3: Warn memory functions must be thread safe
+- sockfilt.c: Fixed compilation warnings
- Bug: http://curl.haxx.se/mail/lib-2015-07/0149.html
- Reported-by: Eric Ridge
-
-Steve Holme (31 Jul 2015)
-- RELEASE-NOTES: Synced with 8b1d00ac1a
+ sockfilt.c:288: warning: conversion to 'DWORD' from 'size_t' may alter
+ its value
+ sockfilt.c:291: warning: conversion to 'DWORD' from 'size_t' may alter
+ its value
+ sockfilt.c:323: warning: conversion to 'DWORD' from 'size_t' may alter
+ its value
+ sockfilt.c:326: warning: conversion to 'DWORD' from 'size_t' may alter
+ its value
-- INSTALL: Minor formatting correction in 'Legacy Windows and SSL' section
+- test1509: Fixed compilation warning
- ...as well as some rewording.
+ lib1509.c:93:18: warning: conversion to 'long int' from 'size_t' may
+ alter its value
-Kamil Dudka (30 Jul 2015)
-- http: move HTTP/2 cleanup code off http_disconnect()
-
- Otherwise it would never be called for an HTTP/2 connection, which has
- its own disconnect handler.
-
- I spotted this while debugging <https://bugzilla.redhat.com/1248389>
- where the http_disconnect() handler was called on an FTP session handle
- causing 'dnf' to crash. conn->data->req.protop of type (struct FTP *)
- was reinterpreted as type (struct HTTP *) which resulted in SIGSEGV in
- Curl_add_buffer_free() after printing the "Connection cache is full,
- closing the oldest one." message.
-
- A previously working version of libcurl started to crash after it was
- recompiled with the HTTP/2 support despite the HTTP/2 protocol was not
- actually used. This commit makes it work again although I suspect the
- root cause (reinterpreting session handle data of incompatible protocol)
- still has to be fixed. Otherwise the same will happen when mixing FTP
- and HTTP/2 connections and exceeding the connection cache limit.
+- test556: Fixed compilation warning
- Reported-by: Tomas Tomecek
- Bug: https://bugzilla.redhat.com/1248389
-
-Daniel Stenberg (30 Jul 2015)
-- [Viktor Szakats brought this change]
+ lib556.c:90: warning: conversion to 'unsigned int' from 'size_t' may
+ alter its value
- ABI doc: use secure URL
+- sasl_gssapi: Fixed use of dummy username with real username
-- ABI: remove the ascii logo
+- vtls: Fixed compilation warning and an ignored return code
- and made the indent level to 1
-
-- libcurl-multi.3: mention curl_multi_wait
+ curl_schannel.h:123: warning: right-hand operand of comma expression
+ has no effect
- ... and some general rewordings to improve this docs.
+ Some instances of the curlssl_close_all() function were declared with a
+ void return type whilst others as int. The schannel version returned
+ CURLE_NOT_BUILT_IN and others simply returned zero, but in all cases the
+ return code was ignored by the calling function Curl_ssl_close_all().
- Reported-by: Tim Stack
+ For the time being and to keep the internal API consistent, changed all
+ declarations to use a void return type.
- Closes #356
+ To reduce code we might want to consider removing the unimplemented
+ versions and use a void #define like schannel does.
-Steve Holme (30 Jul 2015)
-- maketgz: Fixed some VC makefiles missing from the release tarball
+Daniel Stenberg (28 Dec 2014)
+- TODO: 2.3 Better support for same name resolves
+
+Steve Holme (28 Dec 2014)
+- test1520: Fixed initial teething problems
- VC7, VC11, VC12 and VC14 makefiles were missing from the release
- tarball.
+ * Missing initialisation of upload status caused a seg fault
+ * Missing data termination caused corrupt data to be uploaded
+ * Data verification should be performed in <upload> element
+ * Added missing recipient list cleanup
-- RELEASE-NOTES: Synced with 2d7e165761
+- test1520: Fixed compilation errors
-- build: Added VC14 project files to Makefile.am
+- tests: Added test for bug #1456
-- build: Added VC14 project files
-
- Updates to Makefile.am for the generation of the project files in
- the tarball to follow.
+- checksrc.bat: Fixed a problem opening files with spaces in the filename
-Jay Satiro (29 Jul 2015)
-- libcurl-thread.3: Clarify CURLOPT_NOSIGNAL takes long value 1L
+- openldap: Prefer use of 'CURLcode result'
-Steve Holme (28 Jul 2015)
-- generate.bat: Use lower-case for commands and reserved keywords
+- openldap: Use 'LDAPMessage *msg' for messages
- Whilst there are no coding standards for the batch files used in curl,
- most tend to use lower-case for keywords and upper-case for variables.
+ This frees up the 'result' variable for CURLcode based result codes.
-- build: Added initial VC14 support to generate.bat
-
- Visual Studio project files and updates to makefile.am to follow.
+- nss: Don't ignore Curl_extract_certinfo() OOM failure
-- build: Fixed missing .opensdf files from VC10+ .gitignore files
+- nss: Don't ignore Curl_ssl_init_certinfo() OOM failure
-- build: Use $(ProjectName) macro for curl.exe and curld.exe filenames
+- nss: Use 'CURLcode result' for curl result codes
- This wasn't possible with the old curlsrc project filenames, but like
- commit 2a615a2b64 and 11397eb6dd for libcurl use the built in Visual
- Studio macros for the output filenames.
+ ...and don't use CURLE_OK in failure/success comparisons.
-- build: Renamed curl src Visual Studio project files
-
- Following commit 957fcd9049 and in preparation for adding the VC14
- project files renamed the curl source project files.
+- getinfo: Code style policing
-Daniel Stenberg (28 Jul 2015)
-- [Jay Satiro brought this change]
+- getinfo: Use 'CURLcode result' for curl result codes
- libcurl-thread.3: Revert to stricter handle wording
-
- .. also update formatting and add WinSSL and wolfSSL to the SSL/TLS
- handlers list.
+- darwinssl: Use 'CURLcode result' for curl result codes
-- [Jay Satiro brought this change]
+- polarssl: Use 'CURLcode result' for curl result codes
- libcurl-thread.3: Consolidate thread safety info
+- docs: Updated following the addition of SASL GSSAPI via GSS-API libraries
- This is a new document to consolidate our thread safety information from
- several documents (curl-www:features, libcurl.3, libcurl-tutorial.3).
- Each document's section on multi-threading will now point to this one.
+ As this feature has been implemented for 7.40.0.
-Steve Holme (27 Jul 2015)
-- README: Corrected formatting for 'Legacy Windows and SSL' section
+- asiohiper.cpp: No need to initialise members of ConnInfo
- ...as well as some wording.
-
-- build-openssl.bat: Added support for VC14
-
-Daniel Stenberg (26 Jul 2015)
-- RELEASE-NOTES: synced with 0f645adc95390e8
+ ...as calloc() automatically clears the area of memory with zeros.
-- test1902: attempt to make the test more reliable
+- asiohiper.cpp: Updated for curl coding standards
- Closes #355
-
-- comment: fix comment about adding new option support
-
-Jay Satiro (25 Jul 2015)
-- build-openssl.bat: Show syntax if required args are missing
+ ...with the exception of the start of block statement curly brackets.
-Daniel Stenberg (26 Jul 2015)
-- TODO: improve how curl works in a windows console window
+- code/docs: Use correct case for IPv4 and IPv6
- Closes #322 for now
+ For consistency, as we seem to have a bit of a mixed bag, changed all
+ instances of ipv4 and ipv6 in comments and documentations to use the
+ correct case.
-- 1.11 minimize dependencies with dynamicly loaded modules
+- runtests: Fixed detection of Unix Sockets feature
- Closes #349 for now
+ ...following change in curl --version output.
-Jay Satiro (25 Jul 2015)
-- tool_operate: Fix CURLOPT_SSL_OPTIONS for builds without HTTPS
-
- - Set CURLOPT_SSL_OPTIONS only if the tool enabled an SSL option.
-
- Broken by me several days ago in 172b2be.
- https://github.com/bagder/curl/commit/172b2be#diff-70b44ee478e58d4e1ddcf9c9a73d257b
+- code/docs: Use Unix rather than UNIX to avoid use of the trademark
- Bug: http://curl.haxx.se/mail/lib-2015-07/0119.html
- Reported-by: Dan Fandrich
+ Use Unix when generically writing about Unix based systems as UNIX is
+ the trademark and should only be used in a particular product's name.
-Daniel Stenberg (25 Jul 2015)
-- configure: check if OpenSSL linking wants -ldl
+- ip2ip.c: Fixed compilation warning when IPv6 Scope ID not supported
- To make it easier to link with static versions of OpenSSL, the configure
- script now checks if -ldl is needed for linking.
+ if2ip.c:119: warning: unused parameter 'remote_scope_id'
- Help-by: TJ Saunders
-
-- [Michael Kaufmann brought this change]
+ ...and some minor code style policing in the same function.
- HTTP: ignore "Content-Encoding: compress"
+- vtls: Don't set cert info count until memory allocation is successful
- Currently, libcurl rejects responses with "Content-Encoding: compress"
- when CURLOPT_ACCEPT_ENCODING is set to "". I think that libcurl should
- treat the Content-Encoding "compress" the same as other
- Content-Encodings that it does not support, e.g. "bzip2". That means
- just ignoring it.
-
-- [Marcel Raad brought this change]
+ Otherwise Curl_ssl_init_certinfo() can fail and set the num_of_certs
+ member variable to the requested count, which could then be used
+ incorrectly as libcurl closes down.
- openssl: work around MSVC warning
+- vtls: Use CURLcode for Curl_ssl_init_certinfo() return type
- MSVC 12 complains:
+ The return type for this function was 0 on success and 1 on error. This
+ was then examined by the calling functions and, in most cases, used to
+ return CURLE_OUT_OF_MEMORY.
- lib\vtls\openssl.c(1554): warning C4701: potentially uninitialized local
- variable 'verstr' used It's a false positive, but as it's normally not,
- I have enabled warning-as-error for that warning.
-
-- [Michał Fita brought this change]
+ Instead use CURLcode for the return type and return the out of memory
+ error directly, propagating it up the call stack.
- configure: add --disable-rt option
-
- This option disables any attempts in configure to create dependency on
- stuff requiring linking to librt.so and libpthread.so, in this case this
- means clock_gettime(CLOCK_MONOTONIC, &mt).
+- configure: Use camel case for UNIX sockets feature output
- We were in need to build curl which doesn't link libpthread.so to avoid
- the following bug:
- https://sourceware.org/bugzilla/show_bug.cgi?id=16628.
+ To match the curl --version output.
-Kamil Dudka (23 Jul 2015)
-- http2: verify success of strchr() in http2_send()
+Marc Hoersken (26 Dec 2014)
+- sockfilt.c: Reduce the number of individual memory allocations
- Detected by Coverity.
+ Merge multiple internal arrays into one, even if some variables
+ will not not be used. They are all created with the number of
+ file descriptors as their size.
- Error: NULL_RETURNS:
- lib/http2.c:1301: returned_null: "strchr" returns null (checked 103 out of 109 times).
- lib/http2.c:1301: var_assigned: Assigning: "hdbuf" = null return value from "strchr".
- lib/http2.c:1302: dereference: Incrementing a pointer which might be null: "hdbuf".
- 1300|
- 1301| hdbuf = strchr(hdbuf, 0x0a);
- 1302|-> ++hdbuf;
- 1303|
- 1304| authority_idx = 0;
+ Also fix possible thread handle leak in CloseHandle-loop.
-Jay Satiro (22 Jul 2015)
-- Windows: Fix VerifyVersionInfo calls
-
- - Fix the VerifyVersionInfo calls, which we use to test for the OS major
- version, to also test for the minor version as well as the service pack
- major and minor versions.
+- sockfilt.c: Replace 100ms sleep with thread throttle
- MSDN: "If you are testing the major version, you must also test the
- minor version and the service pack major and minor versions."
+ Improves performance of test cases 574 and 575 by 50%.
- https://msdn.microsoft.com/en-us/library/windows/desktop/ms725492.aspx
+ A value of zero causes the thread to relinquish the remainder
+ of its time slice to any other thread of equal priority that is
+ ready to run. If there are no other threads of equal priority
+ ready to run, the function returns immediately, and the thread
+ continues execution.
- Bug: https://github.com/bagder/curl/pull/353#issuecomment-123493098
- Reported-by: Marcel Raad <MarcelRaad@users.noreply.github.com>
+ http://msdn.microsoft.com/library/windows/desktop/ms686307.aspx
-- [Marcel Raad brought this change]
+Steve Holme (25 Dec 2014)
+- tool_help: Use camel case for UNIX sockets feature output
+
+ In line with the other features listed in the --version output,
+ capitalise the UNIX socket feature.
- schannel: Replace deprecated GetVersion with VerifyVersionInfo
+- vtls: Use bool for Curl_ssl_getsessionid() return type
+
+ The return type of this function is a boolean value, and even uses a
+ bool internally, so use bool in the function declaration as well as
+ the variables that store the return value, to avoid any confusion.
-Steve Holme (21 Jul 2015)
-- makefile: Added support for VC14
+- schannel: Minor code style policing for casts
-Patrick Monnerat (21 Jul 2015)
-- os400: ebcdic wrappers for new functions. Upgrade ILE/RPG bindings.
+- schannel: Prefer 'CURLcode result' for curl result codes
-- libcurl: VERSIONINFO update
- Addition of new procedures curl_pushheader_bynum and curl_pushheader_byname
- requires VERSIONINFO updating.
+- cyassl: Prefer 'CURLcode result' for curl result codes
-- http2: satisfy external references even if http2 is not compiled in.
+- tool_xattr: Use 'CURLcode result' for curl result codes
-Daniel Stenberg (20 Jul 2015)
-- http2: add stream != NULL checks for reliability
+- curl_ntlm_core.c: Fixed compilation warnings
- They should not trigger, but in case of internal problems we at least
- avoid crashes this way.
+ curl_ntlm_core.c:301: warning: pointer targets in passing argument 2 of
+ 'CryptImportKey' differ in signedness
+ curl_ntlm_core.c:310: warning: passing argument 6 of 'CryptEncrypt' from
+ incompatible pointer type
+ curl_ntlm_core.c:540: warning: passing argument 4 of 'CryptGetHashParam'
+ from incompatible pointer type
+
+- RELEASE-NOTES: Synced with 8830df8b66
-Jay Satiro (18 Jul 2015)
-- symbols-in-versions: Add new CURLSSLOPT_NO_REVOKE symbol
+- gtls: Use preferred 'CURLcode result'
-- SSL: Add an option to disable certificate revocation checks
-
- New tool option --ssl-no-revoke.
- New value CURLSSLOPT_NO_REVOKE for CURLOPT_SSL_OPTIONS.
+- openldap: Use standard naming for setup connection function
- Currently this option applies only to WinSSL where we have automatic
- certificate revocation checking by default. According to the
- ssl-compared chart there are other backends that have automatic checking
- (NSS, wolfSSL and DarwinSSL) so we could possibly accommodate them at
- some later point.
+ Renamed ldap_setup() to ldap_setup_connection() to follow more widely
+ used function naming.
+
+- rtmp: Use standard naming for setup connection function
- Bug: https://github.com/bagder/curl/issues/264
- Reported-by: zenden2k <zenden2k@gmail.com>
+ Renamed rtmp_setup() to rtmp_setup_connection() to follow more widely
+ used function naming.
-- runtests: Allow for spaces in curl custom path
+- smb: Use standard naming for setup connection function
- .. also fix some typos in test's FILEFORMAT spec.
+ Renamed smb_setup() to smb_setup_connection() to follow more widely
+ used function naming.
-- [David Woodhouse brought this change]
+- config-win32.h: Fixed line length > 79 columns
+
+- openssl: Prefer we don't use NULL in comparisons
- ntlm_wb: Fix theoretical memory leak
+- build: Removed WIN32 definition from the Visual Studio projects
- Static analysis indicated that my commit 9008f3d564 ("ntlm_wb: Fix
- hard-coded limit on NTLM auth packet size") introduced a potential
- memory leak on an error path, because we forget to free the buffer
- before returning an error.
+ As this pre-processor definition is defined in curl_setup.h there is no
+ need to include it in the Visual Studio project files.
+
+- build: Removed WIN64 definition from the libcurl Visual Studio projects
- Fix this.
+ Removed the WIN64 pre-processor definition from the libcurl project
+ files as:
- Although actually, it never happens in practice because we never *get*
- here with state == NTLMSTATE_TYPE1. The state is always zero. That
- might want cleaning up in a separate patch.
+ * WIN64 is not used in our source code
+ * The curl projects files don't define it
+ * It isn't required by or used in the platform SDK
+ * For backwards compatability curl_setup.h defines WIN32
+ * The compiler automatically defines _WIN64 for x64 builds
- Reported-by: Terri Oda
-
-- strerror: Add CRYPT_E_REVOKED to SSPI error strings
-
-Kamil Dudka (14 Jul 2015)
-- libtest: call PR_Cleanup() on exit if NSPR is used
+ Historically Visual Studio projects have defined WIN32, in addition to
+ the compiler defined _WIN32 definition, and I had incorrectly changed
+ that to WIN64 for the x64 libcurl builds but not in the curl projects.
- This prevents valgrind from reporting possibly lost memory that NSPR
- uses for file descriptor cache and other globally allocated internal
- data structures.
+ As such, it is questionable whether this should be defined or not. For
+ more information see the following cache of a discussion that took
+ place on the microsoft.public.vc.mfc newsgroup:
- Reported-by: Štefan Kremeň
-
-Jay Satiro (14 Jul 2015)
-- [John Malmberg brought this change]
+ http://www.tech-archive.net/Archive/VC/microsoft.public.vc.mfc/2008-06/msg00074.html
- openssl: VMS support for SHA256
-
- setup-vms.h: More symbols for SHA256, hacks for older VAX
-
- openssl.h: Use OpenSSL OPENSSL_NO_SHA256 macro to allow building on VAX.
+- openssl.c Fix for compilation errors with older versions of OpenSSL
- openssl.c: Use OpenSSL version checks and OPENSSL_NO_SHA256 macro to
- allow building on VAX and 64 bit VMS.
+ openssl.c:1408: error: 'TLS1_1_VERSION' undeclared
+ openssl.c:1411: error: 'TLS1_2_VERSION' undeclared
-- examples: Fix typo in multi-single.c
+Daniel Stenberg (22 Dec 2014)
+- [John Malmberg brought this change]
-Daniel Stenberg (7 Jul 2015)
-- [Tatsuhiro Tsujikawa brought this change]
+ Fix comment edit in vms/backup_gnv_curl_src.com
+
+ packages/vms/backup_gnv_curl_src.com: Originally copied from Bash port.
- http2: Fix memory leak in push header array
+- curl: show size of inhibited data when using -v
+
+ To offer some more info and yet it doesn't use more lines.
-Dan Fandrich (2 Jul 2015)
-- test2041: fixed line endings in protocol part
+- openssl: fix SSL/TLS versions in verbose output
-- cyassl: fixed mismatched sha256sum function prototype
+- openssl: make it compile against openssl 1.1.0-DEV master branch
-Daniel Stenberg (1 Jul 2015)
-- [moparisthebest brought this change]
+Marc Hoersken (22 Dec 2014)
+- sshserver.pl: clarify and streamline variable names
- SSL: Pinned public key hash support
+Daniel Stenberg (21 Dec 2014)
+- openssl: warn for SRP set if SSLv3 is used, not for TLS version
+
+ ... as it requires TLS and it was was left to warn on the default from
+ when default was SSL...
-- examples: provide <DESC> sections
+- smb: use memcpy() instead of strncpy()
+
+ ... as it never copies the trailing zero anyway and always just the four
+ bytes so let's not mislead anyone into thinking it is actually treated
+ as a string.
+
+ Coverity CID: 1260214
-- [John Malmberg brought this change]
+- [John E. Malmberg brought this change]
- OpenVMS: VMS Software, Inc now the supplier.
+ VMS: Updates for 0740-0D1220
- setup-vms.h: Symbol case fixups submitted by Michael Steve
+ lib/setup-vms.h : VAX HP OpenSSL port is ancient, needs help.
+ More defines to set symbols to uppercase.
- build_gnv_curl_pcsi_desc.com: VSI aka as VMS Software, is now the
- supplier of new versions of VMS. The install kit needs to accept
- VSI as a producer.
-
-Jay Satiro (30 Jun 2015)
-- multi: Move http2 push function declarations to header end
+ src/tool_main.c : Fix parameter to vms_special_exit() call.
- This change necessary for binary compatibility.
+ packages/vms/ :
+ backup_gnv_curl_src.com : Fix the error message to have the correct package.
- Prior to this change test 1135 failed due to the order of functions.
-
-- symbols-in-versions: Add new http2 push symbols
+ build_curl-config_script.com : Rewrite to be more accurate.
- Prior to this change test 1119 failed due to the missing symbols.
-
-Daniel Stenberg (30 Jun 2015)
-- RELEASE-NOTES: synced with e6749055d653
-
-- configure: disable libidn by default
+ build_libcurl_pc.com : Use tool_version.h now.
- For security reasons, until there is a fix.
+ build_vms.com : Fix to handle lib/vtls directory.
- Bug: http://curl.haxx.se/mail/lib-2015-06/0143.html
- Reported-by: Gustavo Grieco, Feist Josselin
-
-- SSL-PROBLEMS: mention WinSSL problems in WinXP
-
-- CODE_OF_CONDUCT.md: added
+ curl_gnv_build_steps.txt : Updated build procedure documentation.
- Just to underscore how we treat each other in this project. Nothing new
- really, but could be useful for newcomers and outsiders to see our
- values.
-
-- tool_header_cb: fflush the header stream
+ generate_config_vms_h_curl.com :
+ * VAX does not support 64 bit ints, so no NTLM support for now.
+ * VAX HP SSL port is ancient, needs some help.
+ * Disable NGHTTP2 for now, not ported to VMS.
+ * Disable UNIX_SOCKETS, not available on VMS yet.
+ * HP GSSAPI port does not have gss_nt_service_name.
- Flush the header stream when -D is used so that they are sent off
- earlier.
+ gnv_link_curl.com : Update for new curl structure.
- Bug: https://github.com/bagder/curl/issues/324
- Reported-by: Cédric Connes
-
-- [Roger Leigh brought this change]
-
- tests: Distribute CMakeLists.txt files in subdirectories
+ pcsi_product_gnv_curl.com : Set up to optionally do a complete build.
-- CURLOPT_FAILONERROR.3: mention that it closes the connection
+Marc Hoersken (21 Dec 2014)
+- sockfilt.c: use non-Ex functions that are available before WinXP
- Reported-by: bemoody
- Bug: https://github.com/bagder/curl/issues/325
+ It was initially reported by Guenter that GetFileSizeEx
+ requires (_WIN32_WINNT >= 0x0500) to be true.
-- curl_multi_setopt.3: alpha sort the options
+- tests: use Cygwin-style paths in SSH, SSHD and SFTP config files
+
+ Second patch to enable Windows support using Cygwin-based OpenSSH.
+
+ Tested with CopSSH 5.0.0 free edition using an msys shell on Windows 7.
-- curl_multi_setopt.3: add the new push options
+- tests: support spaces in paths to SSH, SSHD and SFTP binaries
+
+ First patch to enable Windows support using Cygwin-based OpenSSH.
-- [Tatsuhiro Tsujikawa brought this change]
+Steve Holme (20 Dec 2014)
+- non-ascii: Reduce variable usage
+
+ Removed 'next' variable in Curl_convert_form(). Rather than setting it
+ from 'form->next' and using that to set 'form' after the conversion
+ just use 'form = form->next' instead.
- http2: Use nghttp2 library error code for error return value
+- non-ascii: Prefer while loop rather than a do loop
+
+ This also removes the need to check that the 'form' argument is valid.
-- [Tatsuhiro Tsujikawa brought this change]
+- non-ascii: Reduce variable scope
+
+ As 'result' isn't used out side the conversion callback code and
+ previously caused variable shadowing in the libiconv based code.
- http2: Harden header validation for curl_pushheader_byname
+- non-ascii: We prefer 'CURLcode result'
- Since we do prefix match using given header by application code
- against header name pair in format "NAME:VALUE", and VALUE part can
- contain ":", we have to careful about existence of ":" in header
- parameter. ":" should be allowed to match HTTP/2 pseudo-header field,
- and other use of ":" in header must be treated as error, and
- curl_pushheader_byname should return NULL. This commit implements
- this behaviour.
+ This also fixes a variable shadowing issue when HAVE_ICONV is defined
+ as rc was declared for the result code of libiconv based functions.
-- [Tatsuhiro Tsujikawa brought this change]
+Marc Hoersken (19 Dec 2014)
+- secureserver.pl: clean up formatting of config and fix verbose output
+
+ Verbose output was not matching the actual configuration file,
+ because FIPS and Windows conditions were ignored.
- CURLMOPT_PUSHFUNCTION.3: Remove unused variable
+- secureserver.pl: update Windows detection and fix path conversion
-- CURLMOPT_PUSHFUNCTION.3: added example
+- secureserver.pl: make OpenSSL CApath and cert absolute path values
+
+ Recent stunnel versions (5.08) seem to have trouble with relative
+ paths on Windows. This turns the relative paths into absolute ones.
-- http2: curl_pushheader_byname now takes a const char *
+Patrick Monnerat (18 Dec 2014)
+- if2ip: dummy scope parameter for Curl_if2ip() call in SIOCGIFADDR-enabled code.
-- http2-serverpush.c: example code
+- [Kyle J. McKay brought this change]
-- http2: free all header memory after the push callback
+ parseurlandfillconn(): fix improper non-numeric scope_id stripping.
+ Fixes SF bug 1149: http://sourceforge.net/p/curl/bugs/1449/
-- http2: init the pushed transfer properly
+- IPV6: address scope != scope id
+ There was a confusion between these: this commit tries to disambiguate them.
+ - Scope can be computed from the address itself.
+ - Scope id is scope dependent: it is currently defined as 1-based local
+ interface index for link-local scoped addresses, and as a site index(?) for
+ (obsolete) site-local addresses. Linux only supports it for link-local
+ addresses.
+ The URL parser properly parses a scope id as an interface index, but stores it
+ in a field named "scope": confusion. The field has been renamed into "scope_id".
+ Curl_if2ip() used the scope id as it was a scope. This caused failures
+ to bind to an interface.
+ Scope is now computed from the addresses and Curl_if2ip() matches them.
+ If redundantly specified in the URL, scope id is check for mismatch with
+ the interface index.
+
+ This commit should fix SF bug #1451.
-- http2: fixed the header accessor functions for the push callback
+- connect: singleipconnect(): properly try other address families after failure
-- http2: setup the new pushed stream properly
+Daniel Stenberg (16 Dec 2014)
+- SFTP: work-around servers that return zero size on STAT
+
+ Bug: http://curl.haxx.se/mail/lib-2014-12/0103.html
+ Pathed-by: Marc Renault
-- http2: initial implementation of the push callback
+- glob_next_url: make the loop count upwards
+
+ As the former contruct apparently caused a compiler warning, mentioned
+ in d8efde07e556c.
-- http2: initial HTTP/2 server push types/docs
+- tool_operate: we prefer 'CURLcode result'
-- test1531: verify POSTFIELDSIZE set after add_handle
+- tool_urlglob: unify return codes to use CURLcode
- Following the fix made in 903b6e05565bf.
+ There was a mix of GlobCode, CURLcode and ints and they were mostly
+ passing around CURLcode errors. This change makes the functions use only
+ CURLcode and removes the GlobCode type completely.
-- pretransfer: init state.infilesize here, not in add_handle
-
- ... to properly support that options are set to the handle after it is
- added to the multi handle.
+- tool_urlglob.c: partly reverse dc19789444
- Bug: http://curl.haxx.se/mail/lib-2015-06/0122.html
- Reported-by: Stefan Bühler
+ The loop in glob_next_url() needs to be done backwards to maintain the
+ logic. dc19789444 caused test 1235 to fail.
-Jay Satiro (21 Jun 2015)
-- [Lior Kaplan brought this change]
+- KNOWN_BUGS: the SFTP code doesn't support CURLINFO_FILETIME
- tool_help: fix --tlsv1 help text to use >= for TLSv1
+- [Jay Satiro brought this change]
-- INSTALL: Advise use of non-native SSL for Windows <= XP
+ opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS
- Advise that WinSSL in versions <= XP will not be able to connect to
- servers that no longer support the legacy handshakes and algorithms used
- by those versions, and to use an alternate backend like OpenSSL instead.
+ Change CURLOPT_TIMEOUT doc to warn that if CURLOPT_TIMEOUT and
+ CURLOPT_TIMEOUT_MS are both set whichever one is set last is the one
+ that will be used.
- Bug: https://github.com/bagder/curl/issues/253
- Reported-by: zenden2k <zenden2k@gmail.com>
+ Prior to this change that behavior was only noted in the
+ CURLOPT_TIMEOUT_MS doc.
-Kamil Dudka (19 Jun 2015)
-- curl_easy_setopt.3: restore contents removed by mistake
+Nick Zitzmann (15 Dec 2014)
+- darwinssl: fix incorrect usage of aprintf()
- ... in commit curl-7_43_0-18-g570076e
+ Commit b13923f changed an snprintf() to use aprintf(), but the API usage
+ wasn't correct, and was causing a crash to occur. This fixes it.
-Daniel Stenberg (19 Jun 2015)
-- curl_easy_setopt.3: mention CURLOPT_PIPEWAIT
+Steve Holme (14 Dec 2014)
+- copyright: Updated the copyright year following recent updates
-Jay Satiro (18 Jun 2015)
-- cookie: Fix bug in export if any-domain cookie is present
+Daniel Stenberg (14 Dec 2014)
+- tool_urlglob.c: reverse two loops
- In 3013bb6 I had changed cookie export to ignore any-domain cookies,
- however the logic I used to do so was incorrect, and would lead to a
- busy loop in the case of exporting a cookie list that contained
- any-domain cookies. The result of that is worse though, because in that
- case the other cookies would not be written resulting in an empty file
- once the application is terminated to stop the busy loop.
+ By counting from 0 and up instead of backwards like before, we remove
+ the need for the "funny" check of the unsigned variable when decreased
+ passed zero. Easier to read and less risk for compiler warnings.
-Dan Fandrich (18 Jun 2015)
-- FTP: fixed compiling with --disable-proxy, broken in b88f980a
+Marc Hoersken (14 Dec 2014)
+- tool_urlglob.c: Added braces to clarify the conditions
-Daniel Stenberg (18 Jun 2015)
-- tool: always provide negotiate/kerberos options
+- tool_urlglob.c: Silence warning C6293: Ill-defined for-loop
- libcurl can still be built with it, even if the tool is not. Maintain
- independence!
-
-- TODO: Support IDNA2008
-
-- [Viktor Szakats brought this change]
+ The >= 0 is actually not required, since i underflows and
+ the for-loop is stopped using the < condition, but this
+ makes the VS2012 compiler and code analysis happy.
- Makefile.m32: add support for CURL_LDFLAG_EXTRAS
+- tool_binmode.c: Explicitly ignore the return code of setmode
- It is similar to existing CURL_CFLAG_EXTRAS, but for
- extra linker option.
+ Fixes code analysis warning C6031:
+ return value ignored: <function> could return unexpected value
-- RTSP: removed another piece of dead code
+- lib: Fixed multiple code analysis warnings if SAL are available
- Coverity CID 1306668
+ warning C28252: Inconsistent annotation for function:
+ parameter has another annotation on this instance
-- openssl: fix use of uninitialized buffer
+Steve Holme (14 Dec 2014)
+- smb.c: Fixed code analysis warning
- Make sure that the error buffer is always initialized and simplify the
- use of it to make the logic easier.
+ smb.c:320: warning C6297: Arithmetic overflow: 32-bit value is shifted,
+ then cast to 64-bit value. Result may not be an expected
+ value
+
+Marc Hoersken (14 Dec 2014)
+- tool_util.c: Use GetTickCount64 if it is available
+
+Steve Holme (14 Dec 2014)
+- smb: Use HAVE_PROCESS_H for process.h inclusion
- Bug: https://github.com/bagder/curl/issues/318
- Reported-by: sneis
+ Rather than testing against _WIN32 use the preferred HAVE_PROCESS_H
+ pre-processor define when including process.h.
-- examples: more descriptions
+Daniel Stenberg (14 Dec 2014)
+- darwinssl: aprintf() to allocate the session key
+
+ ... to avoid using a fixed memory size that risks being too large or too
+ small.
-- examples: add descriptions with <DESC>
+Marc Hoersken (14 Dec 2014)
+- curl_schannel: Improvements to memory re-allocation strategy
+
+ - do not grow memory by doubling its size
+ - do not leak previously allocated memory if reallocation fails
+ - replace while-loop with a single check to make sure
+ that the requested amount of data fits into the buffer
- Using this fixed format for example descriptions, we can generate a
- better list on the web site.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1450
+ Reported-by: Warren Menzer
-- libcurl-errors.3: fix typo
+Steve Holme (14 Dec 2014)
+- asyn-ares: We prefer use of 'CURLcode result'
-- curl_easy_setopt.3: option order doesn't matter
+Marc Hoersken (14 Dec 2014)
+- curl_schannel.c: Data may be available before connection shutdown
-- openssl: fix build with BoringSSL
-
- OPENSSL_load_builtin_modules does not exist in BoringSSL. Regression
- from cae43a1
+Steve Holme (14 Dec 2014)
+- http2: Use 'CURLcode result' for curl result codes
-- [Paul Howarth brought this change]
+- asyn-thread: We prefer 'CURLcode result'
- openssl: Fix build with openssl < ~ 0.9.8f
+- smb: Fixed unnecessary initialisation of struct member variables
- The symbol SSL3_MT_NEWSESSION_TICKET appears to have been introduced at
- around openssl 0.9.8f, and the use of it in lib/vtls/openssl.c breaks
- builds with older openssls (certainly with 0.9.8b, which is the latest
- older version I have to try with).
+ There is no need to set the 'state' and 'result' member variables to
+ SMB_REQUESTING (0) and CURLE_OK (0) after the allocation via calloc()
+ as calloc() initialises the contents to zero.
-- FTP: do the HTTP CONNECT for data connection blocking
-
- ** WORK-AROUND **
-
- The introduced non-blocking general behaviour for Curl_proxyCONNECT()
- didn't work for the data connection establishment unless it was very
- fast. The newly introduced function argument makes it operate in a more
- blocking manner, more like it used to work in the past. This blocking
- approach is only used when the FTP data connecting through HTTP proxy.
-
- Blocking like this is bad. A better fix would make it work more
- asynchronously.
+- ntlm: Fixed return code for bad type-2 Target Info
- Bug: https://github.com/bagder/curl/issues/278
+ Use CURLE_BAD_CONTENT_ENCODING for bad type-2 Target Info security
+ buffers just like we do for bad decodes.
-- bump: start the journey toward 7.44.0
+- ntlm: Remove unnecessary casts in readshort_le()
+
+ I don't think both of my fix ups from yesterday were needed to fix the
+ compilation warning, so remove the one that I think is unnecessary and
+ let the next Android autobuild prove/disprove it.
-Jay Satiro (17 Jun 2015)
-- CURLOPT_ERRORBUFFER.3: Fix example, escape backslashes
+- curl_ntlm_msgs.c: Another attempt to fix compilation warning
+
+ curl_ntlm_msgs.c:170: warning: conversion to 'short unsigned int' from
+ 'int' may alter its value
-- CURLOPT_ERRORBUFFER.3: Improve example
+Guenter Knauf (13 Dec 2014)
+- synctime.c: added own user-agent string.
-Version 7.43.0 (17 Jun 2015)
+Steve Holme (13 Dec 2014)
+- smb.c: Fixed line longer than 79 columns
-Daniel Stenberg (17 Jun 2015)
-- RELEASE-NOTES: 7.43.0 release
+- curl_ntlm_msgs.c: Fixed compilation warning from commit 783b5c3b11
+
+ curl_ntlm_msgs.c:169: warning: conversion to 'short unsigned int' from
+ 'int' may alter its value
-- THANKS: updated with 7.43.0 names
+Guenter Knauf (13 Dec 2014)
+- mk-ca-bundle.pl: restored forced run again.
-- [Kamil Dudka brought this change]
+- synctime.c: removed another timeserver URL.
+
+ worldtimeserver.com seems also no longer available.
- http: do not leak basic auth credentials on re-used connections
+- synctime.c: fixed timeserver URLs.
- CVE-2015-3236
+ For getting the date header its not necessary to access special
+ pages or even CGI scripts - all pages including the main index
+ reply with the date header, therefore shortened URLs to domain.
+ Removed worldtime.com; added pool.ntp.org.
+
+Steve Holme (13 Dec 2014)
+- ftp.c: Fixed compilation warning when no verbose string support
- This partially reverts commit curl-7_39_0-237-g87c4abb
+ ftp.c:819: warning: unused parameter 'lineno'
+
+- smb: Added state change functions to assist with debugging
- Reported-by: Tomas Tomecek, Kamil Dudka
- Bug: http://curl.haxx.se/docs/adv_20150617A.html
+ For debugging purposes, and as per other protocols within curl, added
+ state change functions rather than changing the states directly.
-- [Kamil Dudka brought this change]
+- ntlm: Use short integer when decoding 16-bit values
- test2040: verify basic auth on re-used connections
+- RELEASE-NOTES: Synced with 6291a16b20
-- SMB: rangecheck values read off incoming packet
-
- CVE-2015-3237
+- smtp.c: Fixed compilation warnings
- Detected by Coverity. CID 1299430.
+ smtp.c:2357 warning: adding 'size_t' (aka 'unsigned long') to a string
+ does not append to the string
+ smtp.c:2375 warning: adding 'size_t' (aka 'unsigned long') to a string
+ does not append to the string
+ smtp.c:2386 warning: adding 'size_t' (aka 'unsigned long') to a string
+ does not append to the string
- Bug: http://curl.haxx.se/docs/adv_20150617B.html
+ Used array index notation instead.
-Jay Satiro (17 Jun 2015)
-- schannel: schannel_recv overhaul
+- smb: Disable SMB when 64-bit integers are not supported
- This commit is several drafts squashed together. The changes from each
- draft are noted below. If any changes are similar and possibly
- contradictory the change in the latest draft takes precedence.
+ This fixes compilation issues with compilers that don't support 64-bit
+ integers through long long or __int64.
+
+- ntlm: Disable NTLM v2 when 64-bit integers are not supported
- Bug: https://github.com/bagder/curl/issues/244
- Reported-by: Chris Araman
+ This fixes compilation issues with compilers that don't support 64-bit
+ integers through long long or __int64 which was introduced in commit
+ 07b66cbfa4.
+
+- ntlm: Allow NTLM2Session messages when USE_NTRESPONSES manually defined
- %%
- %% Draft 1
- %%
- - return 0 if len == 0. that will have to be documented.
- - continue on and process the caches regardless of raw recv
- - if decrypted data will be returned then set the error code to CURLE_OK
- and return its count
- - if decrypted data will not be returned and the connection has closed
- (eg nread == 0) then return 0 and CURLE_OK
- - if decrypted data will not be returned and the connection *hasn't*
- closed then set the error code to CURLE_AGAIN --only if an error code
- isn't already set-- and return -1
- - narrow the Win2k workaround to only Win2k
+ Previously USE_NTLM2SESSION would only be defined automatically when
+ USE_NTRESPONSES wasn't already defined. Separated the two definitions
+ so that the user can manually set USE_NTRESPONSES themselves but
+ USE_NTLM2SESSION is defined automatically if they don't define it.
+
+- smtp.c: Fixed line longer than 79 columns
+
+- config-win32.h: Don't enable Windows Crypt API if using OpenSSL
- %%
- %% Draft 2
- %%
- - Trying out a change in flow to handle corner cases.
+ As the OpenSSL and NSS Crypto engines are prefered by the core NTLM
+ routines, to the Windows Crypt API, don't define USE_WIN32_CRYPT
+ automatically when either OpenSSL or NSS are in use - doing so would
+ disable NTLM2Session responses in NTLM type-3 messages.
+
+- smtp: Fixed inappropriate free of the scratch buffer
- %%
- %% Draft 3
- %%
- - Back out the lazier decryption change made in draft2.
+ If the scratch buffer was allocated in a previous call to
+ Curl_smtp_escape_eob(), a new buffer not allocated in the subsequent
+ call and no action taken by that call, then an attempt would be made to
+ try and free the buffer which, by now, would be part of the data->state
+ structure.
- %%
- %% Draft 4
- %%
- - Some formatting and branching changes
- - Decrypt all encrypted cached data when len == 0
- - Save connection closed state
- - Change special Win2k check to use connection closed state
+ This bug was introduced in commit 4bd860a001.
+
+- smtp: Fixed dot stuffing when EOL characters were at end of input buffers
- %%
- %% Draft 5
- %%
- - Default to CURLE_AGAIN in cleanup if an error code wasn't set and the
- connection isn't closed.
+ Fixed a problem with the CRLF. detection when multiple buffers were
+ used to upload an email to libcurl and the line ending character(s)
+ appeared at the end of each buffer. This meant any lines which started
+ with . would not be escaped into .. and could be interpreted as the end
+ of transmission string instead.
- %%
- %% Draft 6
- %%
- - Save the last error only if it is an unrecoverable error.
+ This only affected libcurl based applications that used a read function
+ and wasn't reproducible with the curl command-line tool.
- Prior to this I saved the last error state in all cases; unfortunately
- the logic to cover that in all cases would lead to some muddle and I'm
- concerned that could then lead to a bug in the future so I've replaced
- it by only recording an unrecoverable error and that state will persist.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1456
+ Assisted-by: Patrick Monnerat
+
+Daniel Stenberg (11 Dec 2014)
+- telnet: fix "cast increases required alignment of target type"
+
+- ntlm_wb_response: fix "statement not reached"
- - Do not recurse on renegotiation.
+ ... and I could use a break instead of a goto to end the loop.
- Instead we'll continue on to process any trailing encrypted data
- received during the renegotiation only.
+ Bug: http://curl.haxx.se/mail/lib-2014-12/0089.html
+ Reported-by: Tor Arntsen
+
+Steve Holme (10 Dec 2014)
+- RELEASE-NOTES: Synced with 1cc5194337
- - Move the err checks in cleanup after the check for decrypted data.
+ Added some bug fixes that I had missed in previous synchronisations.
+
+Daniel Stenberg (10 Dec 2014)
+- Curl_unix2addr: avoid using the variable name 'sun'
- In either case decrypted data is always returned but I think it's easier
- to understand when those err checks come after the decrypted data check.
+ I suspect this causes compile failures on Solaris:
- %%
- %% Draft 7
- %%
- - Regardless of len value go directly to cleanup if there is an
- unrecoverable error or a close_notify was already received. Prior to
- this change we only acknowledged those two states if len != 0.
+ Bug: http://curl.haxx.se/mail/lib-2014-12/0081.html
+
+Steve Holme (10 Dec 2014)
+- url.c: Fixed compilation warning when USE_NTLM is not defined
- - Fix a bug in connection closed behavior: Set the error state in the
- cleanup, because we don't know for sure it's an error until that time.
+ url.c:3078: warning: variable 'credentialsMatch' set but not used
+
+- parsedate.c: Fixed compilation warning
- - (Related to above) In the case the connection is closed go "greedy"
- with the decryption to make sure all remaining encrypted data has been
- decrypted even if it is not needed at that time by the caller. This is
- necessary because we can only tell if the connection closed gracefully
- (close_notify) once all encrypted data has been decrypted.
+ parsedate.c:548: warning: 'parsed' may be used uninitialized in this
+ function
- - Do not renegotiate when an unrecoverable error is pending.
+ As curl_getdate() returns -1 when parsedate() fails we can initialise
+ parsed to -1.
+
+Daniel Stenberg (10 Dec 2014)
+- TODO: Cache negative name resolves
- %%
- %% Draft 8
- %%
- - Don't show 'server closed the connection' info message twice.
+ Worth exploring
+
+- ldap: check Curl_client_write() return codes
- - Show an info message if server closed abruptly (missing close_notify).
+ There might be one or two memory leaks left in the error paths.
-Daniel Stenberg (16 Jun 2015)
-- [Paul Oliver brought this change]
+- ldap: rename variables to comply to curl standards
- Fix typo in docs
+Dan Fandrich (10 Dec 2014)
+- sws.c: Fixed 'rc' may be used uninitialized warning
+
+- cookies: Improved OOM handling in cookies
+
+ This fixes the test 506 torture test. The internal cookie API really
+ ought to be improved to separate cookie parsing errors (which may be
+ ignored) with OOM errors (which should be fatal).
+
+Guenter Knauf (9 Dec 2014)
+- synctime.c: fixed user-agent setting.
- s/curret/current/
+ Some websites meanwhile refuse to reply to requests from ancient
+ browsers like IE6, therefore I've comment out this setting, but
+ also fixed the string to now fake IE8 if someone enables it.
-- [Viktor Szakats brought this change]
+Daniel Stenberg (9 Dec 2014)
+- smb: fix unused return code warning
- docs: update URLs
+Patrick Monnerat (9 Dec 2014)
+- Curl_client_write() & al.: chop long data, convert data only once.
-- RELEASE-NOTES: synced with f29f2cbd00dbe5f
+Guenter Knauf (9 Dec 2014)
+- VC build: added sspi define for winssl-zlib builds.
-- [Viktor Szakats brought this change]
+Daniel Stenberg (9 Dec 2014)
+- schannel_recv: return the correct code
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1462
+ Reported-by: Tae Hyoung Ahn
- README: use secure protocol for Git repository
+- http2: avoid logging neg "failure" if h2 was not requested
-- [Viktor Szakats brought this change]
+- openldap: do not ignore Curl_client_write() return codes
- HTTP2.md: use SSL/TLS IETF URLs
+- compile: warn on unused return code from Curl_client_write()
-- [Viktor Szakats brought this change]
+Patrick Monnerat (8 Dec 2014)
+- SMB: Fix a data size mismatch that broke SMB on big-endian platforms
- LICENSE-MIXING: update URLs
+Steve Holme (7 Dec 2014)
+- smb: Fixed Windows autoconf builds following commit eb88d778e7
- * use SSL/TLS where available
- * follow permanent redirects
+ As Windows based autoconf builds don't yet define USE_WIN32_CRYPTO
+ either explicitly through --enable-win32-cypto or automatically on
+ _WIN32 based platforms, subsequent builds broke with the following
+ error message:
+
+ "Can't compile NTLM support without a crypto library."
-- LICENSE-MIXING: refreshed
+- RELEASE-NOTES: Synced with 526603ff05
-- curl_easy_duphandle: see also *reset
+- [Bill Nagel brought this change]
-- rtsp_do: fix DEAD CODE
+ smb: Build with SSPI enabled
- "At condition p_request, the value of p_request cannot be NULL."
+ Build SMB/CIFS protocol support when SSPI is enabled.
+
+- [Bill Nagel brought this change]
+
+ ntlm: Use Windows Crypt API
- Coverity CID 1306668.
+ Allow the use of the Windows Crypt API for NTLMv1 functions.
-- security:choose_mech fix DEAD CODE warning
+Dan Fandrich (7 Dec 2014)
+- cookie.c: Refactored cleanup code to simplify
- ... by removing the "do {} while (0)" block.
+ Also, fixed the outdated comments on the cookie API.
+
+- get_url_file_name: Fixed crash on OOM on debug build
- Coverity CID 1306669
+ This caused a null-pointer dereference which caused a few dozen
+ torture tests to fail.
-- curl.1: netrc is in man section 5
+Steve Holme (6 Dec 2014)
+- sws.c: Fixed compilation warning
+
+ sws.c:2191 warning: 'rc' may be used uninitialized in this function
-- curl.1: small format fix
+- ftp.c: Fixed compilation warnings when proxy support disabled
- use \fI-style instead of .BR for references
+ ftp.c:1827 warning: unused parameter 'newhost'
+ ftp.c:1827 warning: unused parameter 'newport'
-- urldata: store POST size in state.infilesize too
+- smb: Fixed a problem with large file transfers
- ... to simplify checking when PUT _or_ POST have completed.
+ Fixed an issue with the message size calculation where the raw bytes
+ from the buffer were interpreted as signed values rather than unsigned
+ values.
- Reported-by: Frank Meier
- Bug: http://curl.haxx.se/mail/lib-2015-06/0019.html
-
-Dan Fandrich (14 Jun 2015)
-- test1530: added http to required features
-
-Jay Satiro (14 Jun 2015)
-- [Drake Arconis brought this change]
+ Reported-by: Gisle Vanem
+ Assisted-by: Bill Nagel
- build: Fix typo from OpenSSL 1.0.2 version detection fix
+- smb: Moved the URL decoding into a separate function
-- [Drake Arconis brought this change]
+- smb: Fixed URL encoded URLs not working
- build: Properly detect OpenSSL 1.0.2 when using configure
+- Makefile.inc: Added our standard header and updated file formatting
-- curl_multi_info_read.3: fix example formatting
+- Makefile.inc: Updated file formatting
+
+ Aligned continuation character and used space as the separator
+ character as per other makefile files.
-Daniel Stenberg (13 Jun 2015)
-- BINDINGS: there's a new R binding in town!
+- curl_md4.h: Updated copyright year following recent edit
+
+ ...and minor layout adjustment.
-- BINDINGS: added the Xojo binding
+Patrick Monnerat (5 Dec 2014)
+- SMB: Fix big endian problems. Make it OS/400 aware.
-Jay Satiro (11 Jun 2015)
-- [Joel Depooter brought this change]
+- OS400: enable NTLM authentication
- schannel: Add support for optional client certificates
+Steve Holme (5 Dec 2014)
+- multi.c: Fixed compilation warning
- Some servers will request a client certificate, but not require one.
- This change allows libcurl to connect to such servers when using
- schannel as its ssl/tls backend. When a server requests a client
- certificate, libcurl will now continue the handshake without one,
- rather than terminating the handshake. The server can then decide
- if that is acceptable or not. Prior to this change, libcurl would
- terminate the handshake, reporting a SEC_I_INCOMPLETE_CREDENTIALS
- error.
+ multi.c:2695: warning: declaration of `exp' shadows a global declaration
-Daniel Stenberg (11 Jun 2015)
-- curl_easy_cleanup.3: provide more SEE ALSO
+Guenter Knauf (5 Dec 2014)
+- build: updated dependencies in makefiles.
-- debug: remove http2 debug leftovers
+Steve Holme (5 Dec 2014)
+- sasl: Corrected formatting of function descriptions
-- VERSIONS: now using markdown
+- sasl_gssapi: Added missing function description
-- RELEASE-PROCEDURE: remove ascii logo at the top of file
+- RELEASE-NOTES: Provided better descriptions
+
+ As it is often difficult to choose the best description for a single
+ feature when it spans many commits, updated the descriptions for the
+ recent SMB/CIFS protocol and GSS-API additions.
-- INTERNALS: absorbed docs/LIBCURL-STRUCTS
+- sasl_sspi: Corrected some typos
-- INTERNALS: cat lib/README* >> INTERNALS
-
- and a conversion to markdown. Removed the lib/README.* files. The idea
- being to move toward having INTERNALS as the one and only "book" of
- internals documentation.
+- sasl_sspi: Don't use hard coded sizes in Kerberos V5 security data
- Added a TOC to top of the document.
+ Don't use a hard coded size of 4 for the security layer and buffer size
+ in Curl_sasl_create_gssapi_security_message(), instead, use sizeof() as
+ we have done in the sasl_gssapi module.
-Jay Satiro (8 Jun 2015)
-- openssl: LibreSSL and BoringSSL do not use TLS_client_method
+- sasl_sspi: Free the Kerberos V5 challenge as soon as we're done with it
- Although OpenSSL 1.1.0+ deprecated SSLv23_client_method in favor of
- TLS_client_method LibreSSL and BoringSSL didn't and still use
- SSLv23_client_method.
-
- Bug: https://github.com/bagder/curl/commit/49a6642#commitcomment-11578009
- Reported-by: asavah@users.noreply.github.com
+ Reduced the amount of free's required for the decoded challenge message
+ in Curl_sasl_create_gssapi_security_message() as a result of coding it
+ differently in the sasl_gssapi module.
-Daniel Stenberg (9 Jun 2015)
-- RELEASE-NOTES: synced with 20ac3458068
+- gssapi: Corrected typo in comments
-- CURLOPT_OPENSOCKETFUNCTION: return error at once
-
- When CURL_SOCKET_BAD is returned in the callback, it should be treated
- as an error (CURLE_COULDNT_CONNECT) if no other socket is subsequently
- created when trying to connect to a server.
+- sasl_gssapi: Added body to Curl_sasl_create_gssapi_security_message()
+
+Daniel Stenberg (4 Dec 2014)
+- [Stefan Bühler brought this change]
+
+ http_perhapsrewind: don't abort CONNECT requests
- Bug: http://curl.haxx.se/mail/lib-2015-06/0047.html
+ ...they never have a body
-- fopen.c: fix a few compiler warnings
+- [Stefan Bühler brought this change]
-- [Ville Skyttä brought this change]
+ HTTP: Free (proxy)userpwd for NTLM/Negotiate after sending a request
+
+ Sending NTLM/Negotiate header again after successful authentication
+ breaks the connection with certain Proxies and request types (POST to MS
+ Forefront).
- docs: Spelling fixes
+- [Stefan Bühler brought this change]
-- [Ville Skyttä brought this change]
+ HTTP: don't abort connections with pending Negotiate authentication
+
+ ... similarly to how NTLM works as Negotiate is in fact often NTLM with
+ another name.
- docs: man page indentation and syntax fixes
+- [Stefan Bühler brought this change]
-Linus Nielsen (8 Jun 2015)
-- help: Add --proxy-service-name and --service-name to the --help output
+ fix gdb libtool invocation path
-Jay Satiro (7 Jun 2015)
-- openssl: Fix verification of server-sent legacy intermediates
-
- - Try building a chain using issuers in the trusted store first to avoid
- problems with server-sent legacy intermediates.
-
- Prior to this change server-sent legacy intermediates with missing
- legacy issuers would cause verification to fail even if the client's CA
- bundle contained a valid replacement for the intermediate and an
- alternate chain could be constructed that would verify successfully.
-
- https://rt.openssl.org/Ticket/Display.html?id=3621&user=guest&pass=guest
+Steve Holme (4 Dec 2014)
+- sasl_gssapi: Fixed missing include from commit d3cca934ee
-Daniel Stenberg (5 Jun 2015)
-- BINDINGS: update several URLs
+Daniel Stenberg (4 Dec 2014)
+- [Jay Satiro brought this change]
+
+ examples: remove sony.com from 10-at-a-time
- Stop linking to the curl.haxx.se anchor pages, they are usually only
- themselves pointers to the real page so better point there directly
- instead.
+ Prior to this change the 10-at-a-time example showed CURLE_RECV_ERROR
+ for the sony website because it ends the connection when the request is
+ missing a user agent.
-- BINDINGS: the curl-rust binding
+Steve Holme (4 Dec 2014)
+- sasl_gssapi: Fixed missing decoding debug failure message
-- curl.h: add CURL_HTTP_VERSION_2
-
- The protocol is named "HTTP/2" after all. It is an alias for the
- existing CURL_HTTP_VERSION_2_0 enum.
+- sasl_gssapi: Fixed honouring of no mutual authentication
-- openssl: removed error string #ifdef
-
- ERR_error_string_n() was introduced in 0.9.6, no need to #ifdef anymore
+- sasl_sspi: Added more Kerberos V5 decoding debug failure messages
-- openssl: removed USERDATA_IN_PWD_CALLBACK kludge
-
- Code for OpenSSL 0.9.4 serves no purpose anymore!
+Daniel Stenberg (4 Dec 2014)
+- [Anthon Pang brought this change]
-- openssl: remove SSL_get_session()-using code
+ docs: Fix FAILONERROR typos
- It was present for OpenSSL 0.9.5 code but we only support 0.9.7 or
- later.
-
-- openssl: remove dummy callback use from SSL_CTX_set_verify()
+ It returns error for >= 400 HTTP responses.
- The existing callback served no purpose.
+ Bug: https://github.com/bagder/curl/pull/129
-- LIBCURL-STRUCTS: clarify for multiplexing
+- [Peter Wu brought this change]
-Jay Satiro (3 Jun 2015)
-- cookie: Stop exporting any-domain cookies
+ tool: fix CURLOPT_UNIX_SOCKET_PATH in --libcurl output
- Prior to this change any-domain cookies (cookies without a domain that
- are sent to any domain) were exported with domain name "unknown".
+ Mark CURLOPT_UNIX_SOCKET_PATH as string to ensure that it ends up as
+ option in the file generated by --libcurl.
- Bug: https://github.com/bagder/curl/issues/292
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Daniel Stenberg (3 Jun 2015)
-- RELEASE-PROCEDURE: refreshed 'coming dates'
+- [Peter Wu brought this change]
-Jay Satiro (2 Jun 2015)
-- curl_setup: Change fopen text macros to use 't' for MSDOS
+ opts: fix CURLOPT_UNIX_SOCKET_PATH formatting
- Bug: https://github.com/bagder/curl/pull/258#issuecomment-107915198
- Reported-by: Gisle Vanem
+ Add .nf and .fi such that the code gets wrapped in a pre on the web.
+ Fixed grammar, fixed formatting of the "See also" items.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Daniel Stenberg (2 Jun 2015)
-- curl_multi_timeout.3: added example
+Patrick Monnerat (4 Dec 2014)
+- OS400: enable Unix sockets.
-- curl_multi_perform.3: added example
+Daniel Stenberg (3 Dec 2014)
+- RELEASE-NOTES: synced with b216427e73b5e9
-- curl_multi_info_read.3: added example
+- opts: added CURLOPT_UNIX_SOCKET_PATH to Makefile.am
-- checksrc: detect fopen() for text without the FOPEN_* macros
+- updateconninfo: clear destination struct before getsockname()
- Follow-up to e8423f9ce150 with discussionis in
- https://github.com/bagder/curl/pull/258
+ Otherwise we may read uninitialized bytes later in the unix-domain
+ sockets case.
+
+- curl.1: added --unix-socket
+
+- [Peter Wu brought this change]
+
+ tool: add --unix-socket option
- This check scans for fopen() with a mode string without 'b' present, as
- it may indicate that an FOPEN_* define should rather be used.
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- curl_getdate.3: update RFC reference
+- [Peter Wu brought this change]
-Jay Satiro (1 Jun 2015)
-- curl_setup: Add macros for FOPEN_READTEXT, FOPEN_WRITETEXT
+ libcurl: add UNIX domain sockets support
+
+ The ability to do HTTP requests over a UNIX domain socket has been
+ requested before, in Apr 2008 [0][1] and Sep 2010 [2]. While a
+ discussion happened, no patch seems to get through. I decided to give it
+ a go since I need to test a nginx HTTP server which listens on a UNIX
+ domain socket.
+
+ One patch [3] seems to make it possible to use the
+ CURLOPT_OPENSOCKETFUNCTION function to gain a UNIX domain socket.
+ Another person wrote a Go program which can do HTTP over a UNIX socket
+ for Docker[4] which uses a special URL scheme (though the name contains
+ cURL, it has no relation to the cURL library).
- - Change fopen calls to use FOPEN_READTEXT instead of "r" or "rt"
- - Change fopen calls to use FOPEN_WRITETEXT instead of "w" or "wt"
+ This patch considers support for UNIX domain sockets at the same level
+ as HTTP proxies / IPv6, it acts as an intermediate socket provider and
+ not as a separate protocol. Since this feature affects network
+ operations, a new feature flag was added ("unix-sockets") with a
+ corresponding CURL_VERSION_UNIX_SOCKETS macro.
- This change is to explicitly specify when we need to read/write text.
- Unfortunately 't' is not part of POSIX fopen so we can't specify it
- directly. Instead we now have FOPEN_READTEXT, FOPEN_WRITETEXT.
+ A new CURLOPT_UNIX_SOCKET_PATH option is added and documented. This
+ option enables UNIX domain sockets support for all requests on the
+ handle (replacing IP sockets and skipping proxies).
- Prior to this change we had an issue on Windows if an application that
- uses libcurl overrides the default file mode to binary. The default file
- mode in Windows is normally text mode (translation mode) and that's what
- libcurl expects.
+ A new configure option (--enable-unix-sockets) and CMake option
+ (ENABLE_UNIX_SOCKETS) can disable this optional feature. Note that I
+ deliberately did not mark this feature as advanced, this is a
+ feature/component that should easily be available.
- Bug: https://github.com/bagder/curl/pull/258#issuecomment-107093055
- Reported-by: Orgad Shaneh
+ [0]: http://curl.haxx.se/mail/lib-2008-04/0279.html
+ [1]: http://daniel.haxx.se/blog/2008/04/14/http-over-unix-domain-sockets/
+ [2]: http://sourceforge.net/p/curl/feature-requests/53/
+ [3]: http://curl.haxx.se/mail/lib-2008-04/0361.html
+ [4]: https://github.com/Soulou/curl-unix-socket
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Daniel Stenberg (1 Jun 2015)
-- http2-upload.c: use PIPEWAIT for playing HTTP/2 better
+- [Peter Wu brought this change]
-- http2-download: check for CURLPIPE_MULTIPLEX properly
+ tests: add two HTTP over UNIX socket tests
+
+ test1435: a simple test that checks whether a HTTP request can be
+ performed over the UNIX socket. The hostname/port are interpreted
+ by sws and should be ignored by cURL.
- Bug: http://curl.haxx.se/mail/lib-2015-06/0001.html
- Reported-by: Rafayel Mkrtchyan
+ test1436: test for the ability to do two requests to the same host,
+ interleaved with one to a different hostname.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Isaac Boukris brought this change]
+- [Peter Wu brought this change]
- HTTP-NTLM: fail auth on connection close instead of looping
+ tests: add HTTP UNIX socket server testing support
+
+ The variable `$ipvnum` can now contain "unix" besides the integers 4
+ and 6 since the variable. Functions which receive this parameter
+ have their `$port` parameter renamed to `$port_or_path` to support a
+ path to the UNIX domain socket (as a "port" is only meaningful for TCP).
- Bug: https://github.com/bagder/curl/issues/256
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- 5.6 Refuse "downgrade" redirects
+- [Peter Wu brought this change]
-- README.pingpong: removed
+ sws: try to remove socket and retry bind
+
+ If sws is killed it might leave a stale socket file on the filesystem
+ which would cause an EADDRINUSE error. After this patch, it is checked
+ whether the socket is really stale and if so, the socket file gets
+ removed and another bind is executed.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- ROADMAP: remove HTTP/2 multiplexing - its here now
+- [Peter Wu brought this change]
-- HTTP2.md: formatted properly
+ sws: add UNIX domain socket support
+
+ This extends sws with a --unix-socket option which causes the port to
+ be ignored (as the server now listens on the path specified by
+ --unix-socket). This feature will be available in the following patch
+ that enables checking for UNIX domain socket support.
+
+ Proxy support (CONNECT) is not considered nor tested. It does not make
+ sense anyway, first connecting through a TCP proxy, then let that TCP
+ proxy connect to a UNIX socket.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- HTTP2: moved docs into docs/ and make it markdown
+- [Peter Wu brought this change]
-- README.http2: refreshed and added multiplexing info
+ sws: restrict TCP_NODELAY to IP sockets
+
+ TCP_NODELAY does not make sense for Unix sockets, so enable it only if
+ the socket is using IP.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- dist: add the http2 examples
+Dan Fandrich (3 Dec 2014)
+- [Dave Reisner brought this change]
-- http2 examples: clean up some comments
+ curl.1: fix trivial typo
-- examples: added two programs doing multiplexed HTTP/2
+Steve Holme (3 Dec 2014)
+- sasl_gssapi: Added body to Curl_sasl_create_gssapi_user_message()
-- scripts: moved contributors.sh and contrithanks.sh into subdir
+- sasl_gssapi: Added body to Curl_sasl_gssapi_cleanup()
-- RELEASE-NOTES: synced with c005790ff1c0a
+- sasl_gssapi: Added Curl_sasl_build_gssapi_spn() function
+
+ Added helper function for returning a GSS-API compatible SPN.
-- [Daniel Melani brought this change]
+Daniel Stenberg (3 Dec 2014)
+- NSS: enable the CAPATH option
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1457
+ Patch-by: Tomasz Kojm
- openssl: typo in comment
+Steve Holme (3 Dec 2014)
+- sasl_gssapi: Enable USE_KERBEROS5 for GSS-API based builds
-Jay Satiro (27 May 2015)
-- openssl: Use TLS_client_method for OpenSSL 1.1.0+
+- sasl_gssapi: Added GSS-API based Kerberos V5 variables
+
+- sws.c: Fixed compilation warning when IPv6 is disabled
- SSLv23_client_method is deprecated starting in OpenSSL 1.1.0. The
- equivalent is TLS_client_method.
+ sws.c:69: warning: comma at end of enumerator list
+
+- sasl_gssapi: Made log_gss_error() a common GSS-API function
- https://github.com/openssl/openssl/commit/13c9bb3#diff-708d3ae0f2c2973b272b811315381557
+ Made log_gss_error() a common function so that it can be used in both
+ the http_negotiate code as well as the curl_sasl_gssapi code.
-Daniel Stenberg (26 May 2015)
-- FAQ: How do I port libcurl to my OS?
+- sasl_gssapi: Introduced GSS-API based SASL module
+
+ Added the initial version of curl_sasl_gssapi.c and updated the project
+ files in preparation for adding GSS-API based Kerberos V5 support.
-Jay Satiro (25 May 2015)
-- CURLOPT_COOKIELIST.3: Explain Set-Cookie without a domain
+- smb: Don't try to connect with empty credentials
- Document that if Set-Cookie is used without a domain then the cookie is
- sent for any domain and will not be modified.
+ On some platforms curl would crash if no credentials were used. As such
+ added detection of such a use case to prevent this from happening.
- Bug: http://curl.haxx.se/mail/lib-2015-05/0137.html
- Reported-by: Alexander Dyagilev
+ Reported-by: Gisle Vanem
-Daniel Stenberg (25 May 2015)
-- [Tatsuhiro Tsujikawa brought this change]
+- smb.c: Coding policing of pointer usage
- http2: Copy data passed in Curl_http2_switched into HTTP/2 connection buffer
-
- Previously, after seeing upgrade to HTTP/2, we feed data followed by
- upgrade response headers directly to nghttp2_session_mem_recv() in
- Curl_http2_switched(). But it turns out that passed buffer, mem, is
- part of stream->mem, and callbacks called by
- nghttp2_session_mem_recv() will write stream specific data into
- stream->mem, overwriting input data. This will corrupt input, and
- most likely frame length error is detected by nghttp2 library. The
- fix is first copy the passed data to HTTP/2 connection buffer,
- httpc->inbuf, and call nghttp2_session_mem_recv().
+- configure: Fixed inclusion of SMB when no crypto engines available
+
+Guenter Knauf (1 Dec 2014)
+- build: in Makefile.m32 simplified autodetection.
-Jay Satiro (24 May 2015)
-- CURLOPT_COOKIE.3: Explain that the cookies won't be modified
+Daniel Stenberg (30 Nov 2014)
+- [Peter Wu brought this change]
+
+ sws: move away from IPv4/IPv4-only assumption
+
+ Instead of depending the socket domain type on use_ipv6, specify the
+ domain type (AF_INET / AF_INET6) as variable. An enum is used here with
+ switch to avoid compiler warnings in connect_to, complaining that rc
+ is possibly undefined (which is not possible as socket_domain is
+ always set).
- The CURLOPT_COOKIE doc says it "sets the cookie header explicitly in the
- outgoing request(s)." However there seems to be some user confusion
- about cookie modification. Document that the cookies set by this option
- are not modified by the cookie engine.
+ Besides abstracting the socket type, make the debugging messages be
+ independent on IP (introduce location_str which points to "port XXXXX").
+ Rename "ipv_inuse" to "socket_type" and tighten the scope (main).
- Bug: http://curl.haxx.se/mail/lib-2015-05/0115.html
- Reported-by: Alexander Dyagilev
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- CURLOPT_COOKIELIST.3: Add example
+- [Peter Wu brought this change]
-Dan Fandrich (24 May 2015)
-- testcurl.pl: use rel2abs to make the source directory absolute
+ lib/connect: restrict IP/TCP options to said sockets
- This function makes a platform-specific absolute path which uses
- backslashes on Windows. This form works when passing it on the
- command-line, as well as if the source is on another drive.
+ This patch prepares for adding UNIX domain sockets support.
+
+ TCP_NODELAY and TCP_KEEPALIVE are specific to TCP/IP sockets, so do not
+ apply these to other socket types. bindlocal only works for IP sockets
+ (independent of TCP/UDP), so filter that out too for other types.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- conncache: fixed memory leak on OOM (torture tests)
+- smb.c: use size_t as input argument types for msg sizes
+
+ This fixes warnings about conversions to int
-Daniel Stenberg (24 May 2015)
-- perl: remove subdir, not touched in 9 years
+Steve Holme (30 Nov 2014)
+- version: The next release will become 7.40.0
-- log2changes.pl: moved to scripts/
+- [Bill Nagel brought this change]
-- [Alessandro Ghedini brought this change]
+ docs: Updated for the SMB protocol
+
+ This patch updates the documentation for the SMB/CIFS protocol.
- scripts: add zsh.pl for generating zsh completion
+- curl tool: Exclude SMB from the protocol redirect
+
+ As local files could be accessed through \\localhost\c$.
-Dan Fandrich (23 May 2015)
-- test1510: another flaky test
+- [Bill Nagel brought this change]
-Daniel Stenberg (22 May 2015)
-- security: fix "Unchecked return value" from sscanf()
+ curl tool: Enable support for the SMB protocol
- By (void) prefixing it and adding a comment. Did some minor related
- cleanups.
-
- Coverity CID 1299423.
+ This patch enables SMB/CIFS support in the curl command-line tool.
-- security: simplify choose_mech
-
- Coverity CID 1299424 identified dead code because of checks that could
- never equal true (if the mechanism's name was NULL).
+- smb.c: Fixed compilation warnings
- Simplified the function by removing a level of pointers and removing the
- loop and array that weren't used.
+ smb.c:398: warning: comparison of integers of different signs:
+ 'ssize_t' (aka 'long') and 'unsigned long'
+ smb.c:443: warning: comparison of integers of different signs:
+ 'ssize_t' (aka 'long') and 'unsigned long'
-- RTSP: catch attempted unsupported requests better
+- libcurl: Exclude SMB from the protocol redirect
- Replace use of assert with code that properly catches bad input at
- run-time even in non-debug builds.
-
- This flaw was sort of detected by Coverity CID 1299425 which claimed the
- "case RTSPREQ_NONE" was dead code.
+ As local files could be accessed through \\localhost\c$.
-- share_init: fix OOM crash
+- [Bill Nagel brought this change]
+
+ libcurl: Enable support for the SMB protocol
- A failed calloc() would lead to NULL pointer use.
+ This patch enables SMB/CIFS support in libcurl.
+
+- smb.c: Fixed compilation warnings
- Coverity CID 1299427.
+ smb.c:322: warning: conversion to 'short unsigned int' from 'unsigned
+ int' may alter its value
+ smb.c:323: warning: conversion to 'short unsigned int' from 'unsigned
+ int' may alter its value
+ smb.c:482: warning: conversion to 'short unsigned int' from 'int' may
+ alter its value
+ smb.c:521: warning: conversion to 'unsigned int' from 'curl_off_t' may
+ alter its value
+ smb.c:549: warning: conversion to 'unsigned int' from 'curl_off_t' may
+ alter its value
+ smb.c:550: warning: conversion to 'short unsigned int' from 'int' may
+ alter its value
-- parse_proxy: switch off tunneling if non-HTTP proxy
+- smb.c: Renamed SMB command message variables to avoid compiler warnings
- non-HTTP proxy implies not using CURLOPT_HTTPPROXYTUNNEL
+ smb.c:489: warning: declaration of 'close' shadows a global declaration
+ smb.c:511: warning: declaration of 'read' shadows a global declaration
+ smb.c:528: warning: declaration of 'write' shadows a global declaration
+
+- smb.c: Fixed compilation warnings
- Bug: http://curl.haxx.se/mail/lib-2015-05/0056.html
- Reported-by: Sean Boudreau
+ smb.c:212: warning: unused parameter 'done'
+ smb.c:380: warning: ISO C does not allow extra ';' outside of a function
+ smb.c:812: warning: unused parameter 'premature'
+ smb.c:822: warning: unused parameter 'dead'
-- curl: fix potential NULL dereference
+- smb.c: Fixed compilation warnings
- Coverity CID 1299428: Dereference after null check (FORWARD_NULL)
+ smb.c:311: warning: conversion from 'unsigned __int64' to 'u_short',
+ possible loss of data
+ smb.c:425: warning: conversion from '__int64' to 'unsigned short',
+ possible loss of data
+ smb.c:452: warning: conversion from '__int64' to 'unsigned short',
+ possible loss of data
-- http2: on_frame_recv: return early on stream 0
+- smb.c: Fixed compilation warnings
- Coverity CID 1299426 warned about possible NULL dereference otherwise,
- but that would only ever happen if we get invalid HTTP/2 data with
- frames for stream 0. Avoid this risk by returning early when stream 0 is
- used.
+ smb.c:162: error: comma at end of enumerator list
+ smb.c:469: warning: conversion from 'size_t' to 'unsigned short',
+ possible loss of data
+ smb.c:517: warning: conversion from 'curl_off_t' to 'unsigned int',
+ possible loss of data
+ smb.c:545: warning: conversion from 'curl_off_t' to 'unsigned int',
+ possible loss of data
+
+- [Bill Nagel brought this change]
-- http: removed self assignment
+ smb: Added initial SMB functionality
- Follow-up fix from b0143a2a33f0
+ Initial implementation of the SMB/CIFS protocol.
+
+- [Bill Nagel brought this change]
+
+ smb: Added SMB handler interfaces
- Detected by coverity. CID 1299429
+ Added the SMB and SMBS handler interface structures and associated
+ functions required for SMB/CIFS operation.
-- [Tatsuhiro Tsujikawa brought this change]
+- transfer: Code style policing
+
+ Prefer ! rather than NULL in if statements, added comments and updated
+ function spacing, argument spacing and line spacing to be more readble.
- http2: Make HTTP Upgrade work
+- transfer: Fixed existing scratch buffer being checked for NULL twice
- This commit just add implicitly opened stream 1 to streams hash.
+ If the scratch buffer already existed when the CRLF conversion was
+ performed then the buffer pointer would be checked twice for NULL. This
+ second check is only necessary if the call to malloc() was performed by
+ the first check.
-Jay Satiro (22 May 2015)
-- strerror: Change SEC_E_ILLEGAL_MESSAGE description
+- smtp: Fixed dot stuffing being performed when no new data read
- Prior to this change the description for SEC_E_ILLEGAL_MESSAGE was OS
- and language specific, and invariably translated to something not very
- helpful like: "The message received was unexpected or badly formatted."
+ Whilst I had moved the dot stuffing code from being performed before
+ CRLF conversion takes place to after it, in commit 4bd860a001, I had
+ moved it outside the 'when something read' block of code when meant
+ it could perform the dot stuffing twice on partial send if nread
+ happened to contain the right values. It also meant the function could
+ potentially read past the end of buffer. This was highlighted by the
+ following warning:
- Bug: https://github.com/bagder/curl/issues/267
- Reported-by: Michael Osipov
+ warning: `nread' might be used uninitialized in this function
-- telnet: Fix read-callback change for Windows builds
+Daniel Stenberg (29 Nov 2014)
+- smb.h: fixed picky compiler warning
- Refer to b0143a2 for more information on the read-callback change.
+ smb.h:30:16: error: comma at end of enumerator list [-Werror=pedantic]
-Daniel Stenberg (21 May 2015)
-- CURLOPT_HTTPPROXYTUNNEL.3: only works with a HTTP proxy!
+Steve Holme (29 Nov 2014)
+- tests: Disable test 1013 until SMB is fully added
-Dan Fandrich (21 May 2015)
-- testcurl.pl: allow source to be in an arbitrary directory
-
- This way, the build directory can be located on an entirely different
- filesystem from the source code (e.g. a tmpfs).
+- [Bill Nagel brought this change]
-Daniel Stenberg (20 May 2015)
-- read_callback: move to SessionHandle from connectdata
+ smb: Added SMB protocol and port definitions
- With many easy handles using the same connection for multiplexing, it is
- important we store and keep the transfer-oriented stuff in the
- SessionHandle so that callbacks and callback data work fine even when
- many easy handles share the same physical connection.
+ Added the necessary protocol and port definitions in order to support
+ SMB/CIFS.
-- http2: show stream IDs in decimal
+- [Bill Nagel brought this change]
+
+ smb: Added internal SMB definitions and structures
- It makes them easier to match output from the nghttpd test server.
+ Added the internal definitions and structures necessary for SMB/CIFS
+ support.
-- [Tatsuhiro Tsujikawa brought this change]
+- [Bill Nagel brought this change]
- http2: Faster http2 upload
+ smb: Added SMB connection structure
- Previously, when we send all given buffer in data_source_callback, we
- return NGHTTP2_ERR_DEFERRED, and nghttp2 library removes this stream
- temporarily for writing. This itself is good. If this is the sole
- stream in the session, nghttp2_session_want_write() returns zero,
- which means that libcurl does not check writeability of the underlying
- socket. This leads to very slow upload, because it seems curl only
- upload 16k something per 1 second. To fix this, if we still have data
- to send, call nghttp2_session_resume_data after nghttp2_session_send.
- This makes nghttp2_session_want_write() returns nonzero (if connection
- window still opens), and as a result, socket writeability is checked,
- and upload speed becomes normal.
+ Added the connection structure that will be required in urldata.h for
+ SMB/CIFS based connections.
-- [Dmitry Eremin-Solenikov brought this change]
+- [Bill Nagel brought this change]
- gtls: don't fail on non-fatal alerts during handshake
+ smb: Added initial source files for SMB
- Stop curl from failing when non-fatal alert is received during
- handshake. This e.g. fixes lots of problems when working with https
- sites through proxies.
+ Added the initial source files and updated the relevant project files in
+ order to support SMB/CIFS.
-- curl_easy_unescape.3: update RFC reference
-
- Reported-by: bsammon
- Bug: https://github.com/bagder/curl/issues/282
+- [Bill Nagel brought this change]
-Jay Satiro (20 May 2015)
-- CURLOPT_POSTFIELDS.3: Mention curl_easy_escape
-
- .. also correct some variable naming in curl_easy_escape.3
+ smb: Added configuration options for SMB
- Bug: https://github.com/bagder/curl/issues/281
- Reported-by: bsammon@users.noreply.github.com
+ Added --enable-smb and --disable-smb configuration options for the
+ upcoming SMB/CIFS protocol support.
-Daniel Stenberg (19 May 2015)
-- [Brian Prodoehl brought this change]
+Daniel Stenberg (28 Nov 2014)
+- [Peter Wu brought this change]
- openssl: Use SSL_CTX_set_msg_callback and SSL_CTX_set_msg_callback_arg
+ runtests.pl: fix startup of IPv6 servers
- BoringSSL removed support for direct callers of SSL_CTX_callback_ctrl
- and SSL_CTX_ctrl, so move to a way that should work on BoringSSL and
- OpenSSL.
+ Commit curl-7_23_1-143-g8218064 changed the parameter of
+ responsive_http_server to accept types other than IPv6 (converting
+ from a boolean to a string), but only considered the lower-case "ipv6"
+ and not the "IPv6" variant. This caused all servers to start in IPv4
+ mode instead.
- re #275
-
-Jay Satiro (19 May 2015)
-- curl.1: fix missing space in section --data
+ This patch converts the remaining cases to "ipv6". While not strictly
+ necessary for the run*server variants, these got also converted for
+ consistency and to prevent future errors.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Daniel Stenberg (19 May 2015)
-- transfer: remove erroneous and misleading comment
+- [Peter Wu brought this change]
-Kamil Dudka (19 May 2015)
-- http: silence compile-time warnings without USE_NGHTTP2
-
- Error: CLANG_WARNING:
- lib/http.c:173:16: warning: Value stored to 'http' during its initialization is never read
+ runtests.pl: fix warning message, remove duplicate value
- Error: COMPILER_WARNING:
- lib/http.c: scope_hint: In function ‘http_disconnect’
- lib/http.c:173:16: warning: unused variable ‘http’ [-Wunused-variable]
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Jay Satiro (19 May 2015)
-- transfer: Replace __func__ instances with function name
+Steve Holme (27 Nov 2014)
+- http.c: Fixed compilation warnings from features being disabled
- .. also make __func__ replacement in multi.
+ warning: unused variable 'data'
+ warning: variable 'addcookies' set but not used
- Prior to this change debug builds would fail to build if the compiler
- was building pre-c99 and didn't support __func__.
+ ...and some very minor coding style policing.
-Daniel Stenberg (19 May 2015)
-- [Viktor Szakats brought this change]
+- RELEASE-NOTES: Synced with c5399c827d
- build: bump version in default nghttp2 paths
+- tests: Added SMTP with --crlf test case
-- INTERNALS: we require nghttp2 1.0.0+ now
+- docs: Updated for commit 4bd860a001 and SMTP Unix line ending conversion
-Jay Satiro (18 May 2015)
-- http: Add some include guards for the new HTTP/2 stuff
+- smtp: Fixed const'ness of nread parameter in Curl_smtp_escape_eob()
+
+ ...and some comment typos!
-Daniel Stenberg (18 May 2015)
-- http2: store upload state per stream
+- smtp: Added support for the conversion of Unix newlines during mail send
+
+ Added support for the automatic conversion of Unix newlines to CRLF
+ during mail uploads.
- Use a curl_off_t for upload left
+ Feature: http://curl.haxx.se/bug/view.cgi?id=1456
-- http2: fix build when NOT h2-enabled
+- CURLOPT_CRLF.3: Fixed inclusion of SMTP in listed protocols
-- http2: switch to use Curl_hash_destroy()
+Daniel Stenberg (25 Nov 2014)
+- curl*3: added small examples
- as after 4883f7019d3, the *_clean() function only flushes the hash.
+ and some minor edits
-- curlver: restore LIBCURL_VERSION_NUM defined as a full number
+- libcurl.3: fix formatting
- As it breaks configure, curl-config and test 1023 if not.
+ refer to functions with the man page section properly
-- [Anthony Avina brought this change]
+- man pages: SEE ALSO curl_multi_wait
- hostip: fix unintended destruction of hash table
-
- .. and added unit1602 for hash.c
+- curl_multi_wait.3: clarify numfds being used if not NULL
-- curlver: introducing new version number (checking) macros
+- multi-single.c: switch to use curl_multi_wait
+
+ Makes the example much easier and straight-forward!
-- runtests.pl: use 'h2c' now, no -14 anymore
+- testcurl: bump the version of this script!
-- [Tatsuhiro Tsujikawa brought this change]
+- testcurl: skip reading the setup file if given enough cmdline info
+
+ This makes it much easier to run multiple tests in the same directory,
+ just altering the command lines used.
- http2: Ignore if we have stream ID not in hash in on_stream_close
+- select.c: fix compilation for VxWorks
- We could get stream ID not in the hash in on_stream_close. For
- example, if we decided to reject stream (e.g., PUSH_PROMISE), then we
- don't create stream and store it in hash with its stream ID.
+ Reported-by: Brian
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1455
-- [Tatsuhiro Tsujikawa brought this change]
+Patrick Monnerat (24 Nov 2014)
+- [moparisthebest brought this change]
- Require nghttp2 v1.0.0
-
- This commit requires nghttp2 v1.0.0 to compile, and migrate to v1.0.0,
- and utilize recent version of nghttp2 to simplify the code,
+ SSL: Add PEM format support for public key pinning
+
+Kamil Dudka (24 Nov 2014)
+- Revert "repository: ignore patch files generated by git"
- First we use nghttp2_option_set_no_recv_client_magic function to
- detect nghttp2 v1.0.0. That function only exists since v1.0.0.
+ This reverts commit 217024a687ce86eb6d2317822ed81c7e5abc4b61.
- Since nghttp2 v0.7.5, nghttp2 ensures header field ordering, and
- validates received header field. If it found error, RST_STREAM with
- PROTOCOL_ERROR is issued. Since we require v1.0.0, we can utilize
- this feature to simplify libcurl code. This commit does this.
+ Bug: https://github.com/bagder/curl/commit/217024a6#commitcomment-8693738
+
+Steve Holme (23 Nov 2014)
+- multi.c: Fixed compilation warnings when no verbose string support
- Migration from 0.7 series are done based on nghttp2 migration
- document. For libcurl, we removed the code sending first 24 bytes
- client magic. It is now done by nghttp2 library.
- on_invalid_frame_recv callback signature changed, and is updated
- accordingly.
+ warning: variable 'connection_id' set but not used
+ warning: unused parameter 'lineno'
-- http2: infof length in on_frame_send()
+- RELEASE-NOTES: Synced with 1450712e76
-- pipeline: switch some code over to functions
-
- ... to "compartmentalize" a bit and make it easier to change behavior
- when multiplexing is used instead of good old pipelining.
+- sasl: Tidied up some parameter comments
-- symbols-in-versions: add CURLOPT_PIPEWAIT
+- sasl: Reduced the need for two sets of NTLM functions
-- CURLOPT_PIPEWAIT: added
+- ntlm: Moved NSS initialisation to base decode function
+
+- http_ntlm: Fixed additional NSS initialisation call when decoding type-2
- By setting this option to 1 libcurl will wait for a connection to reveal
- if it is possible to pipeline/multiplex on before it continues.
+ After commit 48d19acb7c the HTTP code would call Curl_nss_force_init()
+ twice when decoding a NTLM type-2 message, once directly and the other
+ through the call to Curl_sasl_decode_ntlm_type2_message().
-- Curl_http_readwrite_headers: minor code simplification
+- ntlm: Fixed static'ness of local decode function
-- IsPipeliningPossible: fixed for http2
+- ntlm: Corrected some parameter names and comments
-- http2: bump the h2 buffer size to 32K for speed
+- runtests.pl: Re-aligned feature support comments
-- http2: remove the stream from the hash in stream_close callback
+- runtests.pl: Use Kerberos and SPNEGO as proxies for the crypto feature
+
+ In addition to NTLM, use Kerberos and SPNEGO as proxies to the crypto
+ feature.
- ... and suddenly things work much better!
+ ...and converted tab characters, from commit 4b4e8a5853, to spaces.
-- http2: if there is paused data, do not clear the drain field
+- runtests.pl: Added support for SPNEGO
-- http2: rename s/data/pausedata
+- runtests.pl: Added Kerberos detection
-- http2: "stream %x" in all outputs to make it easier to search for
+- runtests.pl: Added GSS-API detection
-- http2: Curl_expire() all handles with incoming traffic
+- FILEFORMAT: Added SSPI, GSS-API and Kerberos to the features list
+
+- FILEFORMAT: Added test requires feature not present information
- ... so that they'll get handled next in the multi loop.
+ Such as !SSPI as we do for the NTLM and Digest tests.
-- http2: don't signal settings change for same values
+Daniel Stenberg (20 Nov 2014)
+- http.c: log if it notices HTTP 1.1 after a upgrade to http2
-- http2: set default concurrency, fix ConnectionExists for multiplex
+- test1801: first real http2 test case
-- bundles: store no/default/pipeline/multiplex
-
- to allow code to act differently on the situation.
-
- Also added some more info message for the connection re-use function to
- make it clearer when connections are not re-used.
-
-- http2: lazy init header_recvbuf
-
- It makes us use less memory when not doing HTTP/2 and subsequently also
- makes us not have to cleanup HTTP/2 related data when not using HTTP/2!
+- sws: initial tiny steps toward http2 support
-- http2: separate multiplex/pipelining + cleanup memory leaks
+- FILEFORMAT: mention the new upgrade support
-- CURLMOPT_PIPELINE: bit 1 is for multiplexing
+- test1800: first plain-text http2 test case
+
+ Verifies the upgrade request, but gets a plain 1.1 response
- [Tatsuhiro Tsujikawa brought this change]
- http2: Fix bug that data to be drained are overwritten by pending "paused" data
+ http: Disable pipelining for HTTP/2 and upgraded connections
+
+ This commit disables pipelining for HTTP/2 or upgraded connections. For
+ HTTP/2, we do not support multiplexing. In general, requests cannot be
+ pipelined in an upgraded connection, since it is now different protocol.
-- [Tatsuhiro Tsujikawa brought this change]
+- [Brad Harder brought this change]
- http2: Don't call nghttp2_session_mem_recv while it is paused by a stream
+ CURLOPT_POSTFIELDS.3: mention the COPYPOSTFIELDS option
-- [Tatsuhiro Tsujikawa brought this change]
+Steve Holme (19 Nov 2014)
+- multi-uv.c: Updated for curl coding standards
- http2: Read data left in connection buffer after pause
-
- Previously when we do pause because of out of buffer, we just throw
- away unread data in connection buffer. This just broke protocol
- framing, and I saw occasional FRAME_SIZE_ERROR. This commit fix this
- issue by remembering how much data read, and in the next iteration, we
- process remaining data.
+- conncache: Fixed specifiers in infof() for long and size_t variables
-- [Tatsuhiro Tsujikawa brought this change]
+- [Peter Wu brought this change]
- http2: Fix streams get stuck
+ cmake: add Kerberos to the supported features
- This commit fixes the bug that streams get stuck if stream gets some
- DATA, and stream->closed becomes true at the same time. Previously,
- in this condition, after we processed DATA, we are going to try to
- read data from underlying transport, but there is no data, and gets
- EAGAIN. There was no code path to evaludate stream->closed.
+ Updated following commit eda919f and a4b7f71.
+
+ Acked-by: Brad King <brad.king@kitware.com>
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- http2: store incoming h2 SETTINGS
+- [Peter Wu brought this change]
-- pipeline: move function to pipeline.c and make static
+ cmake: fix NTLM detection when CURL_DISABLE_HTTP defined
+
+ Updated following changes in commit f0d860d.
- ... as it was only used from there.
+ Acked-by: Brad King <brad.king@kitware.com>
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- IsPipeliningPossible: http2 can always "pipeline" (multiplex)
+Daniel Stenberg (19 Nov 2014)
+- RELEASE-NOTES: synced with cb13fad733e
-- http2: remove debug logging from on_frame_recv
+- [Jay Satiro brought this change]
-- http2: remove the closed check in http2_recv
+ examples: Wait recommended 100ms when no file descriptors are ready
+
+ Prior to this change when no file descriptors were ready on platforms
+ other than Windows the multi examples would sleep whatever was in
+ timeout, which may or may not have been less than the minimum
+ recommended value [1] of 100ms.
- With the "drained" functionality we can get here slightly asynchronously
- so the stream have have been closed but there is pending data left to
- read.
+ [1]: http://curl.haxx.se/libcurl/c/curl_multi_fdset.html
-- http2: bump the h2 buffer to 8K
+- [Waldek Kozba brought this change]
-- http2: Curl_read should not use the single buffer
-
- ... as it does for pipelining when we're multiplexing, as we need the
- different buffers to store incoming data correctly for all streams.
+ multi-uv.c: close the file handle after download
-- http2: more debug outputs
+- [Jon Spencer brought this change]
-- http2: leave WAITPERFORM when conn is multiplexed
+ multi: inform about closed sockets before they are closed
- No need to wait for our "spot" like for pipelining
+ When the connection code decides to close a socket it informs the multi
+ system via the Curl_multi_closed function. The multi system may, in
+ turn, invoke the CURLMOPT_SOCKETFUNCTION function with
+ CURL_POLL_REMOVE. This happens after the socket has already been
+ closed. Reorder the code so that CURL_POLL_REMOVE is called before the
+ socket is closed.
-- http2: force "drainage" of streams
+Guenter Knauf (19 Nov 2014)
+- build: in Makefile.m32 moved target autodetection.
- ... which is necessary since the socket won't be readable but there is
- data waiting in the buffer.
+ Moved target autodetection block after defining CC macro.
+
+- build: in Makefile.m32 simplify platform flags.
-- http2: move the mem+len pair to the stream struct
+- build: in Makefile.m32 try to detect 64bit target.
-- http2: more stream-oriented data, stream ID 0 is for connections
+Daniel Stenberg (19 Nov 2014)
+- [Brad King brought this change]
-- http2: move lots of state data to the 'stream' struct
+ CMake: Simplify if() conditions on check result variables
- ... from the connection struct. The stream one being the 'struct HTTP'
- which is kept in the SessionHandle struct (easy handle).
+ Remove use of an old hack that takes advantage of the auto-dereference
+ behavior of the if() command to detect if a variable is defined. The
+ hack has the form:
- lookup streams for incoming frames in the stream hash, hashing is based
- on the stream id and we get the SessionHandle for the incoming stream
- that way.
-
-- HTTP: partial start at fixing up hash-lookups on http2 frame receival
-
-- http: a stream hash for h2 multiplexing
-
-- http: a stream hash for h2 multiplexing
+ if("${VAR} MATCHES "^${VAR}$")
+
+ where "${VAR}" is a macro argument reference. Use if(DEFINED) instead.
+ This also avoids warnings for CMake Policy CMP0054 in CMake 3.1.
-- http2: debug log when receiving unexpected stream_id
+- TODO-RELEASE: removed
-- http2: move stream_id to the HTTP struct (per-stream)
+- [Carlo Wood brought this change]
-- Curl_http2_setup: only do it once and enable multiplex on the server
+ debug: added new connection cache output, plus fixups
- Once we know we are HTTP/2 enabled we know the server can multiplex.
-
-- http: switch on "pipelining" (multiplexing) for HTTP/2 servers
+ Debug output 'typo' fix.
- ... and do not blacklist any.
-
-- README.pipelining: removed
+ Don't print an extra "0x" in
+ * Pipe broke: handle 0x0x2546d88, url = /
- All the details mentioned here are better documented in man pages
-
-Dan Fandrich (14 May 2015)
-- build: removed bundles.c from make files
+ Add debug output.
+ Print the number of connections in the connection cache when
+ adding one, and not only when one is removed.
- This file was removed in commit fd137786
+ Fix typos in comments.
-Daniel Stenberg (14 May 2015)
-- Curl_conncache_add_conn: fix memory leak on OOM
+- multi: move the ending condition into the loop as well
+
+ ... as it was before I changed the loop in commit e04ccbd50. It caused
+ test 2030 and 2032 to fail.
-- CURLMOPT_MAX_HOST_CONNECTIONS: host = host name + port number
+Steve Holme (18 Nov 2014)
+- multi: Prefer we don't use CURLE_OK and NULL in comparisons
-- conncache: keep bundles on host+port bases, not only host names
+Daniel Stenberg (18 Nov 2014)
+- multi_runsingle: use 'result' for local CURLcode storage
- Previously we counted all connections to a specific host name and that
- would be used for the CURLMOPT_MAX_HOST_CONNECTIONS check for example,
- while servers on different port numbers are normally considered
- different "origins" on the web and should thus be considered different
- hosts.
+ ... and assign data->result only at the end. Makes the code more compact
+ (easier to read) and more similar to other code.
-- bundles: merged into conncache.c
+- multi_runsingle: rename result to rc
- All the existing Curl_bundle* functions were only ever used from within
- the conncache.c file, so I moved them over and made them static (and
- removed the Curl_ prefix).
+ save 'result' for CURLcode types
-- hostcache: made all host caches use structs, not pointers
+- multi: make multi_runsingle loop internally
- This avoids unnecessary dynamic allocs and as this also removed the last
- users of *hash_alloc() and *hash_destroy(), those two functions are now
- removed.
+ simplifies the use of this function at little cost.
-- multi: converted socket hash into non-allocated struct
-
- avoids extra dynamic allocation
+- [Carlo Wood brought this change]
-- connection cache: avoid Curl_hash_alloc()
+ multi: when leaving for timeout, close accordingly
- ... by using plain structs instead of pointers for the connection cache,
- we can avoid several dynamic allocations that weren't necessary.
+ Fixes the problem when a transfer in a pipeline times out.
-- proxy: add newline to info message
+Guenter Knauf (18 Nov 2014)
+- build: in Makefile.m32 add -m32 flag for 32bit.
-Patrick Monnerat (8 May 2015)
-- FTP: fix dangling conn->ip_addr dereference on verbose EPSV.
+- mk-ca-bundle.vbs: update copyright year.
-- FTP: Make EPSV use the control IP address rather than the original host.
- This ensures an alternate address is not used.
- Does not apply to proxy tunnel.
+- build: in Makefile.m32 pass -F flag to windres.
-Daniel Stenberg (8 May 2015)
-- [Alessandro Ghedini brought this change]
+Steve Holme (17 Nov 2014)
+- config-win32: Fixed build targets for the VS2012+ Windows XP toolset
+
+ Even though commit 23e70e1cc6 mentioned the v110_xp toolset, I had
+ forgotten to include the relevant pre-processor definitions.
- tool_help: fix formatting for --next option
+- sasl_sspi: Removed note about the NTLM functions being a wrapper
-- [Egon Eckert brought this change]
+- connect.c: Fixed compilation warning when no verbose string support
+
+ warning: unused parameter 'reason'
- opts: improved the TCP keepalive examples
+- easy.c: Fixed compilation warning when no verbose string support
+
+ warning: unused parameter 'easy'
-Jay Satiro (8 May 2015)
-- winbuild: Document the option used to statically link the CRT
+- win32: Updated some legacy APIs to use the newer extended versions
- - Document option RTLIBCFG (runtime library configuration).
+ Updated the usage of some legacy APIs, that are preventing curl from
+ compiling for Windows Store and Windows Phone build targets.
- Bug: https://github.com/bagder/curl/issues/254
- Reported-by: Bert Huijben
+ Suggested-by: Stefan Neis
+ Feature: http://sourceforge.net/p/curl/feature-requests/82/
-- [Orgad Shaneh brought this change]
-
- netrc: Read in text mode when cygwin
-
- Use text mode when cygwin to eliminate trailing carriage returns.
+- config-win32: Introduce build targets for VS2012+
- Bug: https://github.com/bagder/curl/pull/258
+ Visual Studio 2012 introduced support for Windows Store apps as well as
+ supporting Windows Phone 8. Introduced build targets that allow more
+ modern APIs to be used as certain legacy ones are not available on these
+ new platforms.
-Patrick Monnerat (5 May 2015)
-- OS400: Add SPNEGO service name options to ILE/RPG binding.
+- sasl_sspi: Fixed compilation warnings when no verbose string support
-Daniel Stenberg (4 May 2015)
-- curl_multi_info_read.3: fix typo
+- sasl_sspi: Added base64 decoding debug failure messages
- Reported-by: Liviu Chircu
+ Just like in the NTLM code, added infof() failure messages for
+ DIGEST-MD5 and GSSAPI authentication when base64 decoding fails.
-- MANUAL: language fix
-
- Reported-by: Fred Stluka
- Bug: https://github.com/bagder/curl/issues/255
+- ntlm: Moved the SSPI based Type-3 message generation into the SASL module
-- [Alessandro Ghedini brought this change]
+- ntlm: Moved the SSPI based Type-2 message decoding into the SASL module
- gtls: properly retrieve certificate status
-
- Also print the revocation reason if appropriate.
+- ntlm: Moved the SSPI based Type-1 message generation into the SASL module
-- OpenSSL: conditional check for SSL3_RT_HEADER
-
- The symbol is fairly new.
+- [Michael Osipov brought this change]
+
+ kerberos: Use symbol qualified with _KERBEROS5
- Reported-by: Kamil Dudka
+ For consistency renamed USE_KRB5 to USE_KERBEROS5.
-- openssl: skip trace outputs for ssl_ver == 0
+Daniel Stenberg (15 Nov 2014)
+- [Jay Satiro brought this change]
+
+ examples: Don't call select() to sleep on windows
- The OpenSSL trace callback is wonderfully undocumented but given a
- journey in the source code, it seems the cases were ssl_ver is zero
- doesn't follow the same pattern and thus turned out confusing and
- misleading. For now, we skip doing any CURLINFO_TEXT logging on those
- but keep sending them as CURLINFO_SSL_DATA_OUT/IN.
+ Windows does not support using select() for sleeping without a dummy
+ socket. Instead use Windows' Sleep() and sleep for 100ms which is the
+ minimum suggested value in the curl_multi_fdset() doc.
- Also, I added direction to the text info and I edited some functions
- slightly.
+ Prior to this change the multi examples would exit prematurely since
+ select() would error instead of sleeping when called without an fd.
- Bug: https://github.com/bagder/curl/issues/219
- Reported-by: Jay Satiro, Ashish Shukla
-
-Marc Hoersken (2 May 2015)
-- schannel.c: Small changes
+ Reported-by: Johan Lantz
+ Bug: http://curl.haxx.se/mail/lib-2014-11/0221.html
-- schannel.c: Improve code path and readability
-
-- schannel.c: Improve error and return code handling upon aa99a63f03
+- [Tatsuhiro Tsujikawa brought this change]
-- [Chris Araman brought this change]
+ http2: Don't send Upgrade headers when we already do HTTP/2
- schannel: fix regression in schannel_recv
+Steve Holme (15 Nov 2014)
+- sasl: Corrected Curl_sasl_build_spn() function description
- https://github.com/bagder/curl/issues/244
-
- Commit 145c263 changed the behavior when Curl_read_plain returns
- CURLE_AGAIN. We now handle CURLE_AGAIN and SEC_I_CONTEXT_EXPIRED
- correctly.
+ There was a mismatch in function parameter names.
-- Bug born in changes made several days ago 9a91e80.
+- tool: Removed krb4 from the supported features
- Commit: https://github.com/bagder/curl/commit/926cb9f
- Reported-by: Ray Satiro
+ Although libcurl would never return CURL_VERSION_KERBEROS4 after 7.33,
+ so would not be output with --version, removed krb4 from the supported
+ features output.
-Daniel Stenberg (30 Apr 2015)
- [Michael Osipov brought this change]
- configure: remove missing and make it autogenerate
+ tool: Use Kerberos for supported features
+
+- urldata: Don't define sec_complete when no GSS-API support present
- The missing file has not been autogenerated because a temporary fix was
- employed in acinclude.m4 which blocked update. Removed that fix and a recent
- version of missing is copied to build root.
+ This variable is only used with HAVE_GSSAPI is defined by the FTP code
+ so let's place the definition with the other GSS-API based variables.
- [Michael Osipov brought this change]
- acinclude.m4: fix test for default CA cert bundle/path
-
- test(1) on HP-UX requires a single equals sign and fails with two.
- Let's use one and make every OS happy.
-
-- CONTRIBUTING.md: remove the sourceforge mention
-
- Reported-By: Michael Osipov
+ docs: Use consistent naming for Kerberos
-Dan Fandrich (30 Apr 2015)
-- http_negotiate_sspi: added missing data variable
+- TODO: Lets support QOP options in GSSAPI authentication
-Daniel Stenberg (30 Apr 2015)
-- [Michael Osipov brought this change]
+- sasl_sspi: Corrected a couple of comment typos
- configure: remove --automake from libtoolize call
+- sasl: Moved Curl_sasl_gssapi_cleanup() definition into header file
- That option is not mentioned in the man page of libtoolize 2.4.4.19-fda4.
- Moveover, a comment in line 2623 says "--automake is for 1.5 compatibility".
+ Rather than define the function as extern in the source files that use
+ it, moved the function declaration into the SASL header file just like
+ the Digest and NTLM clean-up functions.
- This option is redundant now.
+ Additionally, added a function description comment block.
-- [Viktor Szakats brought this change]
+- sasl_sspi: Added missing RFC reference for HTTP Digest authentication
- build: update depedency versions, urls, example makefiles
-
- - update default versions of dependencies (except for rare/old platforms)
- - update urls
- - sync examples makefiles with main ones
- - remove line ending space
+- ntlm: Clean-up and standardisation of base64 decoding
-- [Michael Osipov brought this change]
+- ntlm: We prefer 'CURLcode result'
- configure: remove autogenerated files by autoconf
-
- * install-sh is always regenerated
- * mkinstalldirs was already redudant years ago. Automake uses install for
- that. See: http://lists.gnu.org/archive/html/automake/2007-03/msg00015.html
-
-- [Anders Bakken brought this change]
-
- curl_multi_add_handle: next is already NULL
+Daniel Stenberg (13 Nov 2014)
+- [Brad King brought this change]
-Jay Satiro (30 Apr 2015)
-- schannel: Fix out of bounds array
+ CMake: Restore order-dependent library checks
- Bug born in changes made several days ago 9a91e80.
+ Revert commit 2257deb502 (Cmake: Avoid cycle directory dependencies,
+ 2014-08-22) and add a comment explaining the purpose of the original
+ code.
- Bug: http://curl.haxx.se/mail/lib-2015-04/0199.html
- Reported-by: Brian Chrisman
-
-- docs/libcurl: gitignore libcurl-symbols.3
+ The check_library_exists_concat macro is intended to be called multiple
+ times on a sequence of possibly dependent libraries. Later libraries
+ may depend on earlier libraries when they are static. They cannot be
+ safely linked in reverse order on some platforms.
- Bug: http://curl.haxx.se/mail/lib-2015-04/0191.html
- Reported-by: Michael Osipov
+ Signed-off-by: Brad King <brad.king@kitware.com>
-- [Viktor Szakats brought this change]
+- [Brad King brought this change]
- lib/makefile.m32: add arch -m32/-m64 to LDFLAGS
+ CMake: Restore order-dependent header checks
- This fixes using a multi-target mingw distro to build curl .dll for the
- non-default target.
- (mirroring the same patch present in src/makefile.m32)
-
-Daniel Stenberg (29 Apr 2015)
-- RELEASE-NOTES: synced with cd39b944afc
+ Revert commit 1269df2e3b (Cmake: Don't check for all headers each
+ time, 2014-08-15) and add a comment explaining the purpose of the
+ original code.
- I've not mentioned the bug fixes that were shipped in 7.42.1 from the
- 7_42 branch.
-
-- THANKS: merged from the 7.42.1 release
-
-- CURLOPT_HEADEROPT: default to separate
+ The check_include_file_concat macro is intended to be called multiple
+ times on a sequence of possibly dependent headers. Later headers
+ may depend on earlier headers to provide declarations. They cannot
+ be safely included independently on some platforms.
- Make the HTTP headers separated by default for improved security and
- reduced risk for information leakage.
+ For example, many POSIX APIs document including sys/types.h before some
+ other headers. Also on some OS X versions sys/socket.h must be included
+ before net/if.h or the check for the latter will fail.
- Bug: http://curl.haxx.se/docs/adv_20150429.html
- Reported-by: Yehezkel Horowitz, Oren Souroujon
-
-Linus Nielsen (28 Apr 2015)
-- docs/libcurl: Corrected a typo in the CURLOPT_PROXY_SERVICE_NAME documentation
+ Signed-off-by: Brad King <brad.king@kitware.com>
-Daniel Stenberg (28 Apr 2015)
-- hash: simplify Curl_str_key_compare()
+- [Peter Wu brought this change]
-- dist: ship CURLOPT_PROXY_SERVICE_NAME and CURLOPT_SERVICE_NAME
-
-- [Linus Nielsen brought this change]
-
- Negotiate: custom service names for SPNEGO.
+ test22: expand a backtick command
- * Add new options, CURLOPT_PROXY_SERVICE_NAME and CURLOPT_SERVICE_NAME.
- * Add new curl options, --proxy-service-name and --service-name.
+ This is the only user of the backtick operator in the command. As the
+ commands will soon not be executed by a shell anymore (but by perl),
+ replace the command with its output.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- http2: unify http_conn variable names to 'c'
+- RELEASE-NOTES: synced with 2ee3c63b13
-- ConnectionExists: call it multi-use instead of pipelining
-
- So that it fits HTTP/2 as well
+- http2: fix switched macro when http2 is not enabled
-Kamil Dudka (27 Apr 2015)
-- [Paul Howarth brought this change]
+- [Tatsuhiro Tsujikawa brought this change]
- nss: fix compilation failure with old versions of NSS
+ http2: Deal with HTTP/2 data inside response header buffer
- Bug: http://curl.haxx.se/mail/lib-2015-04/0095.html
+ Previously if HTTP/2 traffic is appended to HTTP Upgrade response header
+ (thus they are in the same buffer), the trailing HTTP/2 traffic is not
+ processed and lost. The appended data is most likely SETTINGS frame.
+ If it is lost, nghttp2 library complains server does not obey the HTTP/2
+ protocol and issues GOAWAY frame and curl eventually drops connection.
+ This commit fixes this problem and now trailing data is processed.
-Daniel Stenberg (27 Apr 2015)
-- sws: init http2 state properly
+Steve Holme (11 Nov 2014)
+- configure: Fixed inclusion of krb5 when CURL_DISABLE_CRYPTO_AUTH is defined
- It would otherwise cause problems when running tests after 1801 etc.
+ Commit fe0f8967bf fixed a problem with krb5 not being defined as a
+ supported feature when HAVE_GSSAPI is defined, however, it should
+ only be included if CURL_DISABLE_CRYPTO_AUTH is not set, like when
+ SPNEGO is listed as a feature.
-- curl_easy_getinfo.3: document 'internals' in CURLINFO_TLS_SESSION
+Daniel Stenberg (10 Nov 2014)
+- multi: removed Curl_multi_set_easy_connection
- ... as it was previouly undocumented what the pointer was.
-
-- runtests: use a DISABLED.local file too
+ It isn't used anywhere!
- ... and have git ignore that. Allows for a dev to add tests to ignore in
- local tests and yet don't obstruct a normal git work flow.
+ Reported-by: Carlo Wood
-Marc Hoersken (26 Apr 2015)
-- schannel.c: Fix typo introduced with 3447c973d0
+- [Peter Wu brought this change]
-- schannel.c: Fix possible SEC_E_BUFFER_TOO_SMALL error
+ symbol-scan.pl: do not require autotools
- Reported-by: Brian Chrisman
-
-Daniel Stenberg (26 Apr 2015)
-- schannel: re-indented file to follow curl style better
+ Makes test1119 pass when building with cmake.
- white space changes only
+ configurehelp.pm is generated by configure (autotools). As cmake does
+ not provide a separate variable for the C preprocessor, default to cpp.
+ Before commit ef24ecde68a5f577a7f0f423a767620f09a0ab16 ("symbol-scan:
+ use configure script knowledge about how to run the C preprocessor"),
+ this tool would also use 'cpp'.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
+
+- [Peter Wu brought this change]
-- Curl_ossl_init: load builtin modules
+ cmake: add ENABLE_THREADED_RESOLVER, rename ARES
- To have engine modules work, we must tell openssl to load builtin
- modules first.
+ Fix detection of the AsynchDNS feature which not just depends on
+ pthreads support, but also on whether USE_POSIX_THREADS is set or not.
+ Caught by test 1014.
- Bug: https://github.com/bagder/curl/pull/206
-
-- configure: follow-up fix for krb5-config
+ This patch adds a new ENABLE_THREADED_RESOLVER option (corresponding to
+ --enable-threaded-resolver of autotools) which also needs a check for
+ HAVE_PTHREAD_H.
- commit 5b66860652 was incomplete so here's a follow-up fix
+ For symmetry with autotools, CURL_USE_ARES is renamed to ENABLE_ARES
+ (--enable-ares). Checks that test for the availability actually use
+ USE_ARES instead as that is the result of whether a-res is available or
+ not (in practice this does not matter as CARES is marked as required
+ package, but nevertheless it is better to write the intent).
- Reported-by: Dagobert Michelsen
- Bug: https://github.com/bagder/curl/commit/5b668606527613179d0349f21b4ab0df2971e3d2#commitcomment-10473445
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- openssl: fix serial number output
+- [Peter Wu brought this change]
+
+ cmake: build libhostname for test suite
- The code extracting the cert serial number was broken and didn't display
- it properly.
+ Used by some test cases via LD_PRELOAD in order to fake the host name.
- Bug: https://github.com/bagder/curl/issues/235
- Reported-by: dkjjr89
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Grant Pannell brought this change]
+- [Peter Wu brought this change]
- sasl_sspi: Populate domain from the realm in the challenge
+ cmake: fix HAVE_GETHOSTNAME definition
- Without this, SSPI based digest auth was broken.
+ Otherwise Curl_gethostname always fails. Windows has gethostname
+ since Vista according to
+ http://msdn.microsoft.com/en-us/library/ms738527%28VS.85%29.aspx, but
+ accordings to byte_bucket's VC 2005 documentation, it is available even
+ in Windows 95. (possibly after installing a Platform SDK, the
+ Windows Server 2003 SP1 Platform SDK should be sufficient).
- Bug: https://github.com/bagder/curl/pull/141.patch
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-Jay Satiro (25 Apr 2015)
-- [Anthony Avina brought this change]
+- [Peter Wu brought this change]
- tool: New option --data-raw to HTTP POST data, '@' allowed.
+ tests: fix libhostname visibility
- Add new option --data-raw which is almost the same as --data but does
- not have a special interpretation of the @ character.
+ I noticed that a patched cmake build would pass tests with a fake local
+ hostname, but the autotools build skips them:
- Prior to this change there was no (easy) way to pass the @ character as
- the first character in POST data without it being interpreted as a
- special character.
+ got unexpected host name back, LD_PRELOAD failed
- Bug: https://github.com/bagder/curl/issues/198
- Reported-by: Jens Rantil
-
-Dan Fandrich (25 Apr 2015)
-- test2039: fixed line endings that caused a test failure
-
-Daniel Stenberg (24 Apr 2015)
-- [Viktor Szakats brought this change]
-
- netrc: add unit tests for 'default' support
+ It turns out that -fvisibility=hidden hides the symbol, and since the
+ tests are not part of libcurl, it fails too. Just remove the LIBCURL
+ guard.
+
+ Broken since cURL 7.30 (commit 83a42ee20ea7fc25abb61c0b7ef56ebe712d7093,
+ "curl.h: stricter CURL_EXTERN linkage decorations logic").
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Viktor Szakats brought this change]
+- [Peter Wu brought this change]
- netrc: support 'default' token
+ tests: fix memleak in server/resolve.c
- The 'default' token has no argument and means to match _any_ domain.
- It must be placed last if there are 'machine <name>' tokens in the same file.
+ This makes LeakSanitizer happy.
- See full description here:
- https://www.gnu.org/software/inetutils/manual/html_node/The-_002enetrc-File.html
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- ROADMAP.md: extended the HTTP/2 section, reformatted
+- configure: assume krb5 when gss-api works
- Elaborated on several of the remaining HTTP/2 parts and made document
- use a format that ends up nicer on the web page:
- http://curl.haxx.se/dev/roadmap.html
+ To please test 1014 while we work out if this is truly the a correct
+ assumption.
-Kamil Dudka (23 Apr 2015)
-- curl -z: do not write empty file on unmet condition
+Steve Holme (9 Nov 2014)
+- vtls.h: Fixed compiler warning when compiled without SSL
- This commit fixes a regression introduced in curl-7_41_0-186-g261a0fe.
- It also introduces a regression test 1424 based on tests 78 and 1423.
-
- Reported-by: Viktor Szakats
- Bug: https://github.com/bagder/curl/issues/237
+ vtls.c:185:46: warning: unused parameter 'data'
-Dan Fandrich (23 Apr 2015)
-- tool: fixed a comment typo
+- RELEASE-NOTES: Synced with 2fbf23875f
-- README: convert to UTF-8
+- ntlm: Added separate SSPI based functions
+
+ In preparation for moving the NTLM message code into the SASL module,
+ and separating the native code from the SSPI code, added functions that
+ simply call the functions in curl_ntlm_msg.c.
-Jay Satiro (22 Apr 2015)
-- cyassl: Implement public key pinning
+- http_ntlm: Use the SASL functions instead
- Also add public key extraction example to CURLOPT_PINNEDPUBLICKEY doc.
+ In preparation for moving the NTLM message code into the SASL module
+ use the SASL functions in the HTTP code instead.
-Dan Fandrich (22 Apr 2015)
-- [Alessandro Ghedini brought this change]
+Daniel Stenberg (9 Nov 2014)
+- libssh2: detect features based on version, not configure checks
+
+ ... so that non-configure builds get the correct functions too based on
+ the libssh2 version used.
+
+- [Nobuhiro Ban brought this change]
+
+ SSH: use the port number as well for known_known checks
+
+ ... if the libssh2 version is new enough.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1448
- curl.1: fix typo
+Steve Holme (9 Nov 2014)
+- INSTALL: Updated pre-processor references to the old VC6 project files
+
+ Reworked the two sections that discuss modifying the Visual Studio pre-
+ processor settings, and vc6libcurl.dsw/vc6libcurl.dsp, to remove the
+ project files references as they have been superseded by a more thorough
+ set of project files for VC6 through VC12, but to also give the correct
+ reference to this setting in later versions of Visual Studio.
-Kamil Dudka (22 Apr 2015)
-- docs: distribute the CURLOPT_PINNEDPUBLICKEY(3) man page, too
+- INSTALL: Added email protocols to the "Disabling in Win32 builds" section
-- tests/unit/.gitignore: hide unit1601 and above, too
+- configure: Fixed NTLM missing from features when CURL_DISABLE_HTTP defined
-Daniel Stenberg (22 Apr 2015)
-- connectionexists: follow-up to fd9d3a1ef1f
+- build: Fixed no NTLM support for email when CURL_DISABLE_HTTP is defined
- PROTOPT_CREDSPERREQUEST still needs to be checked even when NTLM is not
- enabled.
+ USE_NTLM would only be defined if: HTTP support was enabled, NTLM and
+ cryptography weren't disabled, and either a supporting cryptography
+ library or Windows SSPI was being compiled against.
- Mistake-caught-by: Kamil Dudka
-
-- connectionexists: fix build without NTLM
+ This means it was not possible to build libcurl without HTTP support
+ and use NTLM for other protocols such as IMAP, POP3 and SMTP. Rather
+ than introduce a new SASL pre-processor definition, removed the HTTP
+ prerequisite just like USE_SPNEGO and USE_KRB5.
- Do not access NTLM-specific struct fields when built without NTLM
- enabled!
+ Note: Winbind support still needs to be dependent on CURL_DISABLE_HTTP
+ as it is only available to HTTP at present.
- bug: http://curl.haxx.se/?i=231
- Reported-by: Patrick Rapin
+ This bug dates back to August 2011 when I started to add support for
+ NTLM to SMTP.
-- bump: start working toward 7.43.0
-
-Kamil Dudka (22 Apr 2015)
-- nss: implement public key pinning for NSS backend
+- ntlm: Removed an unnecessary free of native Target Info
- Bug: https://bugzilla.redhat.com/1195771
+ Due to commit 40ee1ba0dc the free in Curl_ntlm_decode_type2_target() is
+ longer required.
-Daniel Stenberg (22 Apr 2015)
-- dist: include {src,lib}/checksrc.whitelist
+- ntlm: Moved the native Target Info clean-up from HTTP specific function
-Version 7.42.0 (22 Apr 2015)
+- ntlm: Moved SSPI clean-up code into SASL module
-Daniel Stenberg (22 Apr 2015)
-- RELEASE-NOTES: updated for 7.42.0
+- Makefile.dist: Added support for WinIDN
-- THANKS: added contributors from 7.42.0 release notes
+- Makefile.vc6: Added support for WinIDN
-- THANKS-filter: a few more alterations to squash
+- Makefile.dist: Added some missing SSPI configurations
-- contrithanks.sh: helper script for maintaining THANKS
+- Makefile.dist: Separated the groups of SSL configurations from each other
-- http_done: close Negotiate connections when done
-
- When doing HTTP requests Negotiate authenticated, the entire connnection
- may become authenticated and not just the specific HTTP request which is
- otherwise how HTTP works, as Negotiate can basically use NTLM under the
- hood. curl was not adhering to this fact but would assume that such
- requests would also be authenticated per request.
-
- CVE-2015-3148
-
- Bug: http://curl.haxx.se/docs/adv_20150422B.html
- Reported-by: Isaac Boukris
+- Makefile.dist: Grouped the x64 configurations next to their x86 counterparts
-- fix_hostname: zero length host name caused -1 index offset
-
- If a URL is given with a zero-length host name, like in "http://:80" or
- just ":80", `fix_hostname()` will index the host name pointer with a -1
- offset (as it blindly assumes a non-zero length) and both read and
- assign that address.
-
- CVE-2015-3144
+- curl.h: Tidy up of CURL_VERSION_* flags
- Bug: http://curl.haxx.se/docs/adv_20150422D.html
- Reported-by: Hanno Böck
+ As the list has gotten a little messy and hard to read, especially with
+ the introduction of deprecated items, aligned the values and comments
+ into clean columns and reworked some of the comments in the process.
-- cookie: cookie parser out of boundary memory access
-
- The internal libcurl function called sanitize_cookie_path() that cleans
- up the path element as given to it from a remote site or when read from
- a file, did not properly validate the input. If given a path that
- consisted of a single double-quote, libcurl would index a newly
- allocated memory area with index -1 and assign a zero to it, thus
- destroying heap memory it wasn't supposed to.
-
- CVE-2015-3145
-
- Bug: http://curl.haxx.se/docs/adv_20150422C.html
- Reported-by: Hanno Böck
+- curl_tool: Added krb5 to the supported features
-- ConnectionExists: for NTLM re-use, require credentials to match
-
- CVE-2015-3143
-
- Bug: http://curl.haxx.se/docs/adv_20150422A.html
- Reported-by: Paras Sethia
+- configure: Added krb5 to the supported features
+
+- version info: Added Kerberos V5 to the supported features
-Jay Satiro (21 Apr 2015)
-- [byronhe brought this change]
+Guenter Knauf (7 Nov 2014)
+- mk-ca-bundle.vbs: switch to new certdata.txt url.
- openssl: add OPENSSL_NO_SSL3_METHOD check
+Steve Holme (7 Nov 2014)
+- RELEASE-NOTES: Synced with dcad09e125
-Daniel Stenberg (20 Apr 2015)
-- CURLOPT_HEADERFUNCTION.3: match parameter name in synopsis and desc
+- http_digest: Fixed some memory leaks introduced in commit 6f8d8131b1
- Bug: https://github.com/bagder/curl/issues/229
- Reported-by: bsammon
+ Fixed a couple of memory leaks as a result of moving code that used to
+ populate allocuserpwd and relied on it's clean up.
-Kamil Dudka (20 Apr 2015)
-- [Mostyn Bramley-Moore brought this change]
+- docs: Updated following the addition of SSPI based HTTP digest auth
- configure --with-nss: remove unneeded libs from the fallback
+- sasl_sspi: Tidy up of the existing digest code
+
+ Following the addition of SSPI support for HTTP digest, synchronised
+ elements of the email digest code with that of the new HTTP code.
-Daniel Stenberg (20 Apr 2015)
-- contributors.sh: fix help output, filter out (-prefix from names
+- http_digest: Post SSPI support tidy up
+
+ Post tidy up to ensure commonality of code style and variable names.
-- RELEASE-NOTES: synced with cc0e7ebc3be0
+Dan Fandrich (6 Nov 2014)
+- test552: Don't run HTTP digest tests for SSPI based builds
+
+ Technical difficulties prevented this from going into the
+ previous commit.
-- [Michael Stapelberg brought this change]
+Steve Holme (6 Nov 2014)
+- tests: Don't run HTTP digest tests for SSPI based builds
+
+ Added !SSPI to the features list of the HTTP digest tests, as SSPI
+ based builds now use the Windows SSPI messaging API rather than the
+ internal functions, and we can't control the random numbers that get
+ used as part of the digest.
- CURLMOPT_TIMERFUNCTION.3: Clarify, add an example
+Daniel Stenberg (6 Nov 2014)
+- curl.1: show zone index use in a URL
-- [Viktor Szakáts brought this change]
+Steve Holme (6 Nov 2014)
+- http_digest: Fixed auth retry loop when SSPI based authentication fails
- vtls/openssl: use https in URLs and a comment typo fixed
+- http_digest: Reworked the SSPI based input token storage
+
+ Reworked the input token (challenge message) storage as what is passed
+ to the buf and desc in the response generation are typically blobs of
+ data rather than strings, so this is more in keeping with other areas
+ of the SSPI code, such as the NTLM message functions.
-- curl_version_info.3: fixed the 'protocols' variable type
+- sasl_sspi: Fixed compilation warning from commit 2d2a62e3d9
- Reported-by: John Marshall
- Bug: https://github.com/bagder/curl/issues/225
+ Added void reference to unused 'data' parameter back to fix compilation
+ warning.
-Dan Fandrich (18 Apr 2015)
-- test1423: added missing "file" to server section
+- sspi: Align definition values to even columns as we use 2 char spacing
-Daniel Stenberg (17 Apr 2015)
-- TheArtOfHttpScripting: Multiple URLs + Multiple HTTP methods
+- sspi: Fixed missing definition of ISC_REQ_USE_HTTP_STYLE
- ... and some minor edits
+ Some versions of Microsoft's sspi.h don't define this.
-- Revert "HTTP: don't abort connections with pending Negotiate authentication"
-
- This reverts commit 5dc68dd6092a789bb5e0a67a1c1356ba87fdcbc6.
+- sasl: Removed non-SSPI Digest functions and defines from SSPI based builds
- Bug: https://github.com/bagder/curl/issues/223
- Reported-by: Michael Osipov
+ Introduced in commit 7e6d51a73c these functions and definitions are only
+ required by the internal challenge-response functions now.
-Jay Satiro (17 Apr 2015)
-- cyassl: Fix include order
-
- Prior to this change CyaSSL's build options could redefine some generic
- build symbols.
-
- http://curl.haxx.se/mail/lib-2015-04/0069.html
+- sasl_sspi: Added HTTP digest response generation code
-Kamil Dudka (17 Apr 2015)
-- configure --with-nss: drop redundant if statement
+- http_digest: Added SSPI based challenge decoding code
-- configure --with-nss=PATH: query pkg-config if available
-
- Bug: https://github.com/bagder/curl/pull/171
+- http_digest: Added SSPI based clean-up code
-Daniel Stenberg (17 Apr 2015)
-- parsecfg: do not continue past a zero termination
+- http_digest: Added SSPI based authentication functions
- When a config file line ends without newline, the parsing function could
- continue reading beyond that point in memory.
-
- Reported-by: Hanno Böck
-
-Jay Satiro (16 Apr 2015)
-- gitignore: Ignore Windows build output directories
+ This temporarily breaks HTTP digest authentication in SSPI based builds,
+ causing CURLE_NOT_BUILT_IN to be returned. A follow up commit will
+ resume normal operation.
-Daniel Stenberg (15 Apr 2015)
-- RELEASE-NOTES: synced with 1ba6e4c88e0
+- http_digest: Added required SSPI based variables to digest structure
-- TODO: 17.9 Choose the name of file in braces for complex URLs
+Daniel Stenberg (6 Nov 2014)
+- [Frank Gevaerts brought this change]
-- TODO: a little caution that maybe not all ideas are still good
+ contributors.sh: --releasenotes reads in names from RELEASE-NOTES
+
+ This is very handy when updating the RELEASE-NOTES as then we sometimes
+ have names added manually in the existing list and we use this script to
+ update the set.
-- TODO: 17.8 offer color-coded HTTP header output
+- RELEASE-NOTES: synced with 68542e72a9
-- TODO: 17.7 warning when sending binary output to terminal
+- curl_easy_setopt.3: add CURLOPT_PINNEDPUBLICKEY
+
+ Reported-by: Christian Hägele
+ Bug: http://curl.haxx.se/mail/lib-2014-11/0078.html
-- KNOWN_BUGS: #90 IMAP "SEARCH ALL" truncates output on large boxes
+Steve Holme (5 Nov 2014)
+- build: Fixed Visual Studio project file generation of strdup.[c|h]
+
+ As the curl command-line tool now includes it's own version of strdup(),
+ for platforms that don't have it, fixed up the git respository Visual
+ Studio project file generator to not include the version from lib in the
+ tool project files, rather than having both lib\strdup.[c|h] and
+ src\tool_strdup.[c|h] present.
-Jay Satiro (14 Apr 2015)
-- cyassl: Add support for TLS extension SNI
+Daniel Stenberg (5 Nov 2014)
+- tool_strdup.c: include the tool strdup.h
+
+ ... not the lib/ one that the tool no longer uses!
-Daniel Stenberg (13 Apr 2015)
-- [Matthew Hall brought this change]
+- THANKS-filter: added another Michał Górny version we've used
- gitignore: ignore test-driver file
+- contributors.sh: split lists using " and "
+
+ ... and require the space after the filtering to make the filter able to
+ remove names.
-- [Matthew Hall brought this change]
+Steve Holme (5 Nov 2014)
+- http_digest: Fixed memory leaks from commit 6f8d8131b1
- vtls_openssl: improve PKCS#12 load failure error message
+- sasl: Fixed compilation warning from commit 25264131e2
+
+ Added forward declaration of digestdata to overcome the following
+ compilation warning:
+
+ warning: 'struct digestdata' declared inside parameter list
+
+ Additionally made the ntlmdata forward declaration dependent on
+ USE_NTLM similar to how digestdata and kerberosdata are.
-- [Matthew Hall brought this change]
+- sasl: Fixed HTTP digest challenges with spaces between auth parameters
+
+ Broken as part of the rework, in commit 7e6d51a73c, to assist with the
+ addition of HTTP digest via Windows SSPI.
- vtls_openssl: fix minor typo in PKCS#12 load routine
+- http_digest: Fixed compilation errors from commit 6f8d8131b1
+
+ error: invalid operands to binary
+ warning: pointer targets in assignment differ in signedness
-- [Matthew Hall brought this change]
+- http_digest: Moved response generation into SASL module
- vtls_openssl: improve client certificate load failure error messages
+- http_digest: Moved challenge decoding into SASL module
-- [Matthew Hall brought this change]
+- http_digest: Moved clean-up function into SASL module
- vtls_openssl: remove ambiguous SSL_CLIENT_CERT_ERR constant
+- http_digest: Moved algorithm definitions to SASL module
-- BUGS: refer to the github issue tracker now as primary
+- [Gisle Vanem brought this change]
-- firefox-db2pem: fix wildcard to find Firefox default profile
+ ssh: Fixed build on platforms where R_OK is not defined
- At some point, Firefox has changed and generates different directory
- names for the default profile that made this script fail to find them.
+ Bug: http://curl.haxx.se/mail/lib-2014-11/0035.html
+ Reported-by: Jan Ehrhardt
+
+- strdup: Removed irrelevant comment
- Bug: https://github.com/bagder/curl/issues/207
- Reported-by: sneakyimp
+ ...as Curl_memdup() duplicates an area of fix size memory, that may be
+ binary, and not a null terminated string.
-Jay Satiro (11 Apr 2015)
-- cyassl: Include the CyaSSL build config
+- url.c: Fixed compilation warning
- CyaSSL >= 2.6.0 may have an options.h that was generated during
- its build by configure.
+ conversion from 'curl_off_t' to 'size_t', possible loss of data
-- build: Generate source prerequisites for Visual Studio in generate.bat
+- http_digest: Use CURLcode instead of CURLdigest
- Prior to this change Visual Studio builds could fail due to missing
- prerequisites src/tool_hugehelp.c and include/curl/curlbuild.h.
+ To provide consistent behaviour between the various HTTP authentication
+ functions use CURLcode based error codes for Curl_input_digest()
+ especially as the calling code doesn't use the specific error code just
+ that it failed.
+
+Daniel Stenberg (5 Nov 2014)
+- contributors.sh: filter common alternative name spellings
- http://curl.haxx.se/mail/lib-2015-04/0034.html
+ docs/THANKS-filter is a new filter file for converting contributor names
+ we get or have recorded in alternative formats to the one we already use
+ in THANKS. To help us show individual contributors using a single
+ presentation of their names.
-Daniel Stenberg (9 Apr 2015)
-- [Viktor Szakats brought this change]
+- THANKS: added missing contributor from 2012
- lib/makefile.m32: add missing libs to build libcurl.dll
-
- Add 'gdi32' and 'crypt32' Windows implibs to avoid failure
- while building libcurl.dll using the mingw compiler.
- The same logic is used in 'src/makefile.m32' when
- building curl.exe.
+- [Frank Gevaerts brought this change]
-Kamil Dudka (8 Apr 2015)
-- test142[23]: verify that an empty file is stored on success
+ Remove duplicate names.
+
+ The removed names also appear as:
+ Andrés García, François Charlier, Gökhan Şengün, Michał Górny, Sébastien
+ Willemijns, Christopher Conroy, John E. Malmberg, Luca Altea, Peter Su,
+ S. Moonesamy, Samuel Listopad, Yasuharu Yamada, Karl Moerder
-- src/tool_operate: create output file on successful download
+Steve Holme (5 Nov 2014)
+- sspi: Define authentication package name constants
- ... of an empty file
+ These were previously hard coded, and whilst defined in security.h,
+ they may or may not be present in old header files given that these
+ defines were never used in the original code.
- Bug: https://github.com/bagder/curl/issues/183
+ Not only that, but there appears to be some ambiguity between the ANSI
+ and UNICODE NTLM definition name in security.h.
-- src/tool_cb_wrt: separate fnc for output file creation
+Patrick Monnerat (5 Nov 2014)
+- Adjust OS400-specific support to last release
-Daniel Stenberg (7 Apr 2015)
-- [Da-Yoon Chung brought this change]
-
- lib/transfer.c: Remove factor of 8 from sleep time calculation
+Daniel Stenberg (5 Nov 2014)
+- THANKS: added two missing names and removed a duplicate
- The factor of 8 is a bytes-to-bits conversion factor, but pkt_size and
- rate_bps are both in bytes. When using the rate limiting option, curl
- waits 8 times too long, and then transfers very quickly until the
- average rate reaches the limit. The average rate follows the limit over
- time, but the actual traffic is bursty.
+ ./contributors.sh found these extra ones that somehow had fallen
+ through the cracks and never gotten added here.
- Thanks-to: Benjamin Gilbert
+ Reported-by: Frank Gevaerts
-- [Jay Satiro brought this change]
+- bump: towards next release
- x509asn1: Silence x64 loss-of-data warning on RSA key length assignment
-
- The key length in bits will always fit in an unsigned long so the
- loss-of-data warning assigning the result of x64 pointer arithmetic to
- an unsigned long is unnecessary.
+- THANKS: added names from 7.39.0 release notes
-- [Jay Satiro brought this change]
+Version 7.39.0 (5 Nov 2014)
+
+Daniel Stenberg (5 Nov 2014)
+- RELEASE-NOTES: 7.39.0 release (commit b3875606925)
- cyassl: Use CYASSL_MAX_ERROR_SZ for error buffer size
+- curl_easy_duphandle: CURLOPT_COPYPOSTFIELDS read out of bounds
- Also fix it so that all ERR_error_string calls use an error buffer.
- CyaSSL's implementation of ERR_error_string only writes the error when
- an error buffer is passed.
+ When duplicating a handle, the data to post was duplicated using
+ strdup() when it could be binary and contain zeroes and it was not even
+ zero terminated! This caused read out of bounds crashes/segfaults.
- http://www.yassl.com/forums/topic599-openssl-compatibility-and-errerrorstring.html
+ Since the lib/strdup.c file no longer is easily shared with the curl
+ tool with this change, it now uses its own version instead.
+
+ Bug: http://curl.haxx.se/docs/adv_20141105.html
+ CVE: CVE-2014-3707
+ Reported-By: Symeon Paraschoudis
-- [Jay Satiro brought this change]
+- lib544.c: use duphandle for test 545
+
+ To verify that curl_easy_duphandle() works fine on a handle that has
+ gotten data stored with *_COPYPOSTFIELDS.
- cyassl: Remove 'Connecting to' message from cyassl_connect_step2
+- tests: add new feature 'SSLpinning'
- Prior to this change libcurl could show multiple 'CyaSSL: Connecting to'
- messages since cyassl_connect_step2 is called multiple times, typically.
- The message is superfluous even once since libcurl already informs the
- user elsewhere in code that it is connecting.
+ ... and make test 2034 and 2035 require it, and have it set when built
+ with OpenSSL or GnuTLS.
-- [Viktor Szakats brought this change]
+- buildconf: update copyright year
- checksrc.bat: quotes to support an SRC_DIR with spaces
+Steve Holme (4 Nov 2014)
+- INSTALL: Consistent spacing in section headings, paragraphs and examples
-- hostip: fix compiler warnings
+Daniel Stenberg (4 Nov 2014)
+- buildconf: stop checking for libtool
- introduced in the previous mini-series of 3 commits
+ As we only use libtoolize, only check for that!
-- [Stefan Bühler brought this change]
+Steve Holme (4 Nov 2014)
+- INSTALL: Corrected MIT Kerberos and Heimdal package names
- actually implement CURLOPT_RESOLVE removals
-
- - also log when a CURLOPT_RESOLVE entry couldn't get parsed
+- README: Corrected inconsistent use of --help
-- [Stefan Bühler brought this change]
+- INSTALL: Use GSS-API rather than GSSAPI
+
+ As implementations are refereed to GSS-API libraries as per the RFC and
+ GSSAPI typically refers to the SASL authentication mechanism.
+
+ ...and minor rewording on the same paragraph.
- move Curl_share_lock and ref counting into Curl_fetch_addr
+- README: Added note about using Visual Studio projects out of git repository
-- [Stefan Bühler brought this change]
+Daniel Stenberg (4 Nov 2014)
+- [K. R. Walker brought this change]
- fix refreshing of obsolete dns cache entries
+ cmake: fix ZLIB_INCLUDE_DIRS use
- - cache entries must be also refreshed when they are in use
- - have the cache count as inuse reference too, freeing timestamp == 0 special
- value
- - use timestamp == 0 for CURLOPT_RESOLVE entries which don't get refreshed
- - remove CURLOPT_RESOLVE special inuse reference (timestamp == 0 will prevent refresh)
- - fix Curl_hostcache_clean - CURLOPT_RESOLVE entries don't have a special
- reference anymore, and it would also release non CURLOPT_RESOLVE references
- - fix locking in Curl_hostcache_clean
- - fix unit1305.c: hash now keeps a reference, need to set inuse = 1
-
-- RELEASE-NOTES: synced with abf6bddc14a
+ CMake 2.8's FindZLIB.cmake documents ZLIB_INCLUDE_DIRS, see
+ http://www.cmake.org/cmake/help/v2.8.0/cmake.html#module:FindZLIB
+
+ Bug: https://github.com/bagder/curl/pull/123
- [Jay Satiro brought this change]
- checksrc.bat: Check lib\vtls source
+ SSL: PolarSSL default min SSL version TLS 1.0
+
+ - Prior to this change no SSL minimum version was set by default at
+ runtime for PolarSSL. Therefore in most cases PolarSSL would probably
+ have defaulted to a minimum version of SSLv3 which is no longer secure.
-- [Jay Satiro brought this change]
+- opts-Makefile: put more man pages into dist and make hmtl+pdf
- cyassl: Set minimum protocol version before CTX callback
+- curl_multi_setopt.3: refer to stand-alone pages
- This change is to allow the user's CTX callback to change the minimum
- protocol version in the CTX without us later overriding it, as we did
- prior to this change.
+ ... instead of duplicating info.
-- [Jay Satiro brought this change]
+- opts: more multi options as stand-alone man pages
- build-openssl.bat: Fix mixed line endings
+- Makefile.am: two cmake files are gone
- Use LF not CRLF, throughout. msysgit will only convert a file to CRLF
- on checkout if it's not mixed.
+ 8cb010144 removed the CurlCheckCSourceCompiles.cmake and
+ CurlCheckCSourceRuns.cmake files
-- [Jay Satiro brought this change]
+- opts: made stand-alone man-pages for several multi options
- cyassl: Fix certificate load check
+- [Carlo Wood brought this change]
+
+ Curl_single_getsock: fix hold/pause sock handling
- SSL_CTX_load_verify_locations can return negative values on fail,
- therefore to check for failure we check if load is != 1 (success)
- instead of if load is == 0 (failure), the latter being incorrect given
- that behavior.
+ The previous condition that checked if the socket was marked as readable
+ when also adding a writable one, was incorrect and didn't take the pause
+ bits properly into account.
-- [Tatsuhiro Tsujikawa brought this change]
+- [Peter Wu brought this change]
- http2: Fix missing nghttp2_session_send call in Curl_http2_switched
+ cmake: fix struct sockaddr_storage check
- Previously in Curl_http2_switched, we called nghttp2_session_mem_recv to
- parse incoming data which were already received while curl was handling
- upgrade. But we didn't call nghttp2_session_send, and it led to make
- curl not send any response to the received frames. Most likely, we
- received SETTINGS from server at this point, so we missed opportunity to
- send SETTINGS + ACK. This commit adds missing nghttp2_session_send call
- in Curl_http2_switched to fix this issue.
-
- Bug: https://github.com/bagder/curl/issues/192
- Reported-by: Stefan Eissing
-
-- cookie: handle spaces after the name in Set-Cookie
+ CHECK_TYPE_SIZE_PREINCLUDE is an internal, undocumented variable which
+ was removed in cmake 2.8.1. According to the MSDN docs[1], inclusion
+ of winsock2.h is sufficient. WIN32_LEAN_AND_MEAN does not really seem
+ to affect the tests, so remove it too[2].
- "name =value" is fine and the space should just be skipped.
+ For the non-windows case, remove inet headers as POSIX only requires
+ sys/socket.h.
- Updated test 31 to also test for this.
+ [1]: http://msdn.microsoft.com/en-us/library/windows/desktop/ms740504%28v=vs.85%29.aspx
+ [2]: http://stackoverflow.com/questions/11040133/what-does-defining-win32-lean-and-mean-exclude-exactly
- Bug: https://github.com/bagder/curl/issues/195
- Reported-by: cromestant
- Help-by: Frank Gevaerts
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Jay Satiro brought this change]
+- [Peter Wu brought this change]
- cyassl: Fix library initialization return value
+ cmake: clean OtherTests, fixing -Werror
- (Curl_cyassl_init)
- - Return 1 on success, 0 in failure.
+ There were several -Wunused warnings and one duplicate macro definition.
+ The EXTRA_DEFINES variable of the CurlCheckCSources macro was being
+ abused ("__unused1\n#undef inline\n#define __unused2", seriously?) to
+ insert extra C code. Avoid this broken abstraction and use cmake's
+ check_c_source_compiles directly (works fine with CMake 2.8, maybe
+ even cmake 2.6).
- Prior to this change the fail path returned an incorrect value and the
- evaluation to determine whether CyaSSL_Init had succeeded was incorrect.
- Ironically that combined with the way curl_global_init tests SSL library
- initialization (!Curl_ssl_init()) meant that CyaSSL having been
- successfully initialized would be seen as that even though the code path
- and return value in Curl_cyassl_init were wrong.
-
-- [Thomas Ruecker brought this change]
-
- CURLOPT_HTTP200ALIASES.3: Mainly SHOUTcast servers use "ICY 200"
+ After cleaning up all related variables (EXTRA_DEFINES,
+ HEADER_INCLUDES, auxiliary headers_hack), also remove a duplicate
+ add_headers_include macro and remove duplicate header additions before
+ the struct timeval check.
- Icecast versions 1.3.0 through 1.3.12 would reply with "ICY 200"
- under certain conditions:
+ Oh, and now the code is converted to use CheckCSourceRuns and
+ CheckCSourceCompiles, the two curl-specific helpers can be removed.
+ Unfortunately, the cmake output is now slightly more verbose. Before:
- client_wants_icy_headers (connection_t *con)
- {
- const char *val;
+ Performing Test int send(int, const void *, size_t, int) (curl_cv_func_send_test)
+ Performing Test int send(int, const void *, size_t, int) (curl_cv_func_send_test) - Failed
- if (!con)
- return 1;
+ Since check_c_source_compiles prints the varname, now you see:
- val = get_user_agent (con);
- if (!val || !val[0] || strcmp (val, "(null)") == 0)
- return 1;
+ Performing Test curl_cv_func_send_test
+ Performing Test curl_cv_func_send_test - Failed
+ Tested: int send(int, const void *, size_t, int)
- if (con->food.client->use_icy)
- return 1;
- if (strncasecmp (val, "winamp", 6) == 0)
- return 1;
- if (strncasecmp (val, "Shoutcast", 9) == 0)
- return 1;
+ Compared cmake output with each other using vimdiff, no functional
+ differences were found. Tested with GCC 4.9.1 and Clang 3.5.0.
- return 0;
- }
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
+
+- [Peter Wu brought this change]
+
+ cmake: fix gethostby{addr,name}_r in CurlTests
- So mainly if there is no 'user agent' or it is '(null)' or contains
- 'winamp' or 'Shoutcast'.
+ This patch cleans up the automatically-generated (?) code and fixes one
+ case that will always fail due to syntax error.
- No mainstream distribution carries Icecast 1.3.x anymore, after all
- it was released in 2002 and superseded by Icecast 2.x.
-
-Dan Fandrich (31 Mar 2015)
-- axtls: add timeout within Curl_axtls_connect
+ HAVE_GETHOSTBYADDR_R_5_REENTRANT always failed because of a trailing
+ character ("int length;q"). Several parameter type and unused variable
+ warnings popped up. This causes a detection failure with -Werror.
- This allows test 405 to pass on axTLS.
-
-Daniel Stenberg (30 Mar 2015)
-- [Jay Satiro brought this change]
-
- checksrc: Windows-specific input fixes
+ Observe that the REENTRANT cases are exactly the same as their
+ non-REENTRANT cases except for a `_REENTRANT` macro definition.
+ Merge all these pieces and build one big main function with different
+ cases, but reusing variables where logical.
- lib/config-win32ce.h
- - Fix whitespace for checksrc compliance.
+ For the cases where the parameters where NULL, I looked at
+ lib/hostip4.c to get an idea of the parameters types.
- lib/checksrc.pl
- - Remove trailing carriage returns from input.
+ void-cast variables such as 'rc' to avoid -Wuninitialized errors.
- projects/checksrc.bat
- - Ignore tool_hugehelp.c.
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Dagobert Michelsen brought this change]
+- [Peter Wu brought this change]
- configure: Use KRB5CONFIG for krb5-config
+ cmake: drop _BSD_SOURCE macro usage
- Allows the user to easier override its path.
+ autotools does not use features.h nor _BSD_SOURCE. As this macro
+ triggers warnings since glibc 2.20, remove it. It should not have
+ functional differences.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1486
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- multi: remove_handle: move pending connections
+Steve Holme (2 Nov 2014)
+- RELEASE-NOTES: Synced with d71ea7c01e
- If the handle removed from the multi handle happens to be the one
- "owning" the pipeline other transfers will be waiting indefinitely. Now
- we move such handles back to connect to have them race (again) for
- getting the connection and thus avoid hanging.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1465
- Reported-by: Jiri Dvorak
+ Additionally, updated "GSSAPI" to "GSS-API" for a Cmake related change
+ as GSSAPI can be confused with the authentication mechanism rather than
+ a GSS-API implementation library such as MIT or Heimdal.
-- KNOWN_BUGS: 89 is bug #1411
+- build: Added WinIDN build configuration options
- Disabling pipelining on multi handle with in-progress pipelined requests
- leads to heap corruption and crash
-
-- [Jay Satiro brought this change]
+ Added support for WinIDN build configurations to the VC6 project files.
- cyassl: CTX callback cosmetic changes and doc fix
+- build: Added WinIDN build configuration options
- - More descriptive fail message for NO_FILESYSTEM builds.
- - Cosmetic changes.
- - Change more of CURLOPT_SSL_CTX_* doc to not be OpenSSL specific.
-
-- RELEASE-NOTES: synced with d2feb71752f
+ Added support for WinIDN build configurations to the VC7 and VC7.1
+ project files.
-Dan Fandrich (28 Mar 2015)
-- tool_operate: only set SSL options if SSL is enabled
-
-- runtests.pl: detect WolfSSL as yassl
-
-Daniel Stenberg (27 Mar 2015)
-- [Kyle L. Huff brought this change]
+- build: Fixed the pre-processor separator in Visual Studio project files
+
+ A left over from the VC6 project files, so mainly cosmetic in Visual
+ Studio .NET as it can handle both comma and semi-colon characters for
+ separating multiple pre-processor definitions.
+
+ However, the IDE uses semi-colons if the value is edited, and as such,
+ this may cause problems in future for anyone updating the files or
+ merging patches.
+
+ Used the Visual Studio IDE to correct the separator character.
- cyassl: add SSL context callback support for CyaSSL
+- build: Added optional specific version generation of VC project files
- Adds support for CURLOPT_SSL_CTX_FUNCTION when using CyaSSL, and better
- handles CyaSSL instances using NO_FILESYSTEM.
+ ..when working from the git repository. This is particularly useful
+ for single development environments where the project files for all
+ supported versions of Visual Studio may not be required.
-- [Kyle L. Huff brought this change]
+- [Jay Satiro brought this change]
- cyassl: remove undefined reference to CyaSSL_no_filesystem_verify
+ build-openssl.bat: Fix x64 release build
- CyaSSL_no_filesystem_verify is not (or no longer) defined by cURL or
- CyaSSL. This reference causes build errors when compiling with
- NO_FILESYSTEM.
+ Prior to this change if x64 release was specified a failed attempt was
+ made to build x86 release instead.
-- [Jay Satiro brought this change]
+- CURLOPT_XOAUTH2_BEARER.3: Corrected the OAuth version number
- build: Fix libcurl.sln erroneous mixed configurations
+- CURLOPT_SASL_IR.3: Added supported mechanism information
- Prior to this change some Release configurations had an active
- configuration assignment to their Debug counterpart.
+ ...and removed duplication of what protocols are supported from the
+ description text.
-- [Jay Satiro brought this change]
+- opts: Use common wording for MAIL related names
- vtls: Don't accept unknown CURLOPT_SSLVERSION values
+- opts: Use common wording for TLS user/password option names
+
+ ...and revised the proxy wording a little as well.
-- [Jay Satiro brought this change]
+- CURLOPT_MAXCONNECTS.3: Reworked the description to be less confusing
+
+ ...and corrected a related typo in curl_easy_setopt.3.
- url: Don't accept CURLOPT_SSLVERSION unless USE_SSL is defined
+Guenter Knauf (2 Nov 2014)
+- RELEASE-NOTES: removed obsolete entry; fixed entry.
-- [Paul Howarth brought this change]
+Steve Holme (2 Nov 2014)
+- RELEASE-NOTES: Synced with e7da67f5d3
- build: link curl to openssl libraries when openssl support is enabled
+- docs: Added mention of Kerberos for CURL_VERSION_SSPI
- This fixes a build failure where openssl and libmetalink are used
- together and the system linker does not do implicit linking (e.g.
- Fedora 13 and later releases). The MD5 functions required for
- metalink support must be pulled in from the openssl crypto library.
+ As this has been present for SOCKSv5 proxy since v7.19.4 and for IMAP,
+ POP3 and SMTP authentication since v7.38.0.
+
+- CURL_VERSION_KERBEROS4: Mark as deprecated
- This is similar to commit c6e7cbb94e669b85d3eb8e015ec51d0072112133,
- which fixes the same sort of problem for NSS builds.
+ Support for Kerberos V4 was removed in v7.33.0.
-- multi: on a request completion, check all CONNECT_PEND transfers
+- sasl: Fixed Kerberos V5 inclusion when CURL_DISABLE_CRYPTO_AUTH is used
- ... even if they don't have an associated connection anymore. It could
- leave the waiting transfers pending with no active one on the
- connection.
+ Typically the USE_WINDOWS_SSPI definition would not be used when the
+ CURL_DISABLE_CRYPTO_AUTH define is, however, it is still a valid build
+ configuration and, as such, the SASL Kerberos V5 (GSSAPI) authentication
+ data structures and functions would incorrectly be used when they
+ shouldn't be.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1465
- Reported-by: Jiri Dvorak
+ Introduced a new USE_KRB5 definition that takes into account the use of
+ CURL_DISABLE_CRYPTO_AUTH like USE_SPNEGO and USE_NTLM do.
-- [Emil Lerner brought this change]
-
- globbing: fix url number calculation when using range with step
+- openssl: Use 'CURLcode result'
- In function glob_range, the number of urls was multiplied by (max - min
- + 1), regardless of step. The correct formula is (max - min) / step + 1
-
-- README.http2: refreshed and added TODO items
+ More CURLcode fixes.
-- [Emil Lerner brought this change]
-
- globbing: fix step parsing for character globbing ranges
+Daniel Stenberg (1 Nov 2014)
+- resume: consider a resume from [content-length] to be OK
- The glob_range function used wrong offset (3 instead of 4) for parsing
- integer step inside character range specification, which led to 'bad
- range' error when using character ranges with explicitly specified step
- (such as '[a-z:2]')
-
-- polarssl: called mbedTLS in 1.3.10 and later
-
-- polarssl: remove dead code
+ Basically since servers often then don't respond well to this and
+ instead send the full contents and then libcurl would instead error out
+ with the assumption that the server doesn't support resume. As the data
+ is then already transfered, this is now considered fine.
- and simplify code by changing if-elses to a switch()
+ Test case 1434 added to verify this. Test case 1042 slightly modified.
- CID 1291706: Logically dead code. Execution cannot reach this statement
+ Reported-by: hugo
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1443
-- polarssl: remove superfluous for(;;) loop
-
- "unreachable: Since the loop increment is unreachable, the loop body
- will never execute more than once."
+Steve Holme (1 Nov 2014)
+- openssl: Use 'CURLcode result'
- Coverity CID 1291707
+ More standardisation of CURLcode usage and coding style.
-- Curl_ssl_md5sum: return CURLcode
+- openssl: Use 'CURLcode result'
- ... since the funciton can fail on OOM. Check this return code.
-
- Coverity CID 1291705.
+ ...and some minor code style changes.
-- [Jay Satiro brought this change]
+- ftplistparser: We prefer 'CURLcode result'
- cyassl: default to highest possible TLS version
+- opts: Use common wording for user/password option names
+
+- CURLOPT_CONNECT_ONLY.3: Removed "This option is implemented for..." text
- (cyassl_connect_step1)
- - Use TLS 1.0-1.2 by default when available.
+ As this is covered by the PROTOCOLS section and saves having to update
+ two parts of the document with the same information in future.
+
+- CURLOPT_GSSAPI_DELEGATION.3: Use GSS-API rather than GSSAPI
- CyaSSL/wolfSSL >= v3.3.0 supports setting a minimum protocol downgrade
- version.
+ As implementations are refereed to GSS-API libraries as per the RFC and
+ GSSAPI typically refers to an authentication mechanism.
+
+- CURLOPT_CONNECT_ONLY.3: Fixed incomplete protocol list
- cyassl/cyassl@322f79f
+ Added missing IMAP to the protocol list.
-- [Jay Satiro brought this change]
+- code cleanup: Use 'CURLcode result'
- cyassl: Check for invalid length parameter in Curl_cyassl_random
+- curl_easy_setopt.3: Fixed lots of typos
-- [Jay Satiro brought this change]
+- curl_easy_setopt.3: Moved CURLOPT_DIRLISTONLY into PROTOCOL OPTIONS
+
+ ...as this option affects more that just FTP.
- cyassl: If wolfSSL then identify as such in version string
+Guenter Knauf (30 Oct 2014)
+- build: added Watcom support to build with WinSSL.
-Dan Fandrich (24 Mar 2015)
-- symbols-in-versions: added CURLOPT_PATH_AS_IS
+Daniel Stenberg (30 Oct 2014)
+- CURLOPT_PINNEDPUBLICKEY.3: added details
-- testcurl.pl: add the --notes option to supply more info about a build
+Steve Holme (30 Oct 2014)
+- CURLOPT_CUSTOMREQUEST.3: Fixed incomplete protocol list
- Support for notes has been in place for a while, but it required
- being added to the setup file manually.
+ Whilst the description included information about SMTP, the protocol
+ list only showed "TTP, FTP, IMAP, POP3".
+
+- CURLOPT_DIRLISTONLY.3: Added information about the usage in POP3
-- curl_memory: make curl_memory.h the second-last header file loaded
+Daniel Stenberg (29 Oct 2014)
+- openssl: enable NPN separately from ALPN
- This header file must be included after all header files except
- memdebug.h, as it does similar memory function redefinitions and can be
- similarly affected by conflicting definitions in system or dependent
- library headers.
+ ... and allow building with nghttp2 but completely without NPN and ALPN,
+ as nghttp2 can still be used for plain-text HTTP.
+
+ Reported-by: Lucas Pardue
-Daniel Stenberg (24 Mar 2015)
-- openssl: do the OCSP work-around for libressl too
+- configure.ac: remove checks for OpenSSL NPN/ALPN funcs again
- I tested with libressl git master now (v2.1.4-27-g34bf96c) and it seems to
- still require the work-around for stapling to work.
+ ... since the conditional in the code are now based on OpenSSL versions
+ instead to better support non-configure builds.
+
+- opts: added some "SEE ALSO" references
-- openssl: verifystatus: only use the OCSP work-around <= 1.0.2a
+Steve Holme (29 Oct 2014)
+- RELEASE-NOTES: Synced with 32913182dc
+
+- vtls.c: Fixed compilation warning
- URL: http://curl.haxx.se/mail/lib-2015-03/0205.html
- Reported-by: Alessandro Ghedini
+ conversion from 'size_t' to 'unsigned int', possible loss of data
-- openssl: adapt to ASN1/X509 things gone opaque in 1.1
+- sspi: Return CURLE_LOGIN_DENIED on AcquireCredentialsHandle() failure
+
+ Return a more appropriate error, rather than CURLE_OUT_OF_MEMORY when
+ acquiring the credentials handle fails. This is then consistent with
+ the code prior to commit f7e24683c4 when log-in credentials were empty.
-Dan Fandrich (24 Mar 2015)
-- [Jay Satiro brought this change]
+- sasl_sspi: Allow DIGEST-MD5 to use current windows credentials
+
+ Fixed the ability to use the current log-in credentials with DIGEST-MD5.
+ I had previously disabled this functionality in commit 607883f13c as I
+ couldn't get this to work under Windows 8, however, from testing HTTP
+ Digest authentication through Windows SSPI and then further testing of
+ this code I have found it works in Windows 7.
+
+ Some further investigation is required to see what the differences are
+ between Windows 7 and 8, but for now enable this functionality as the
+ code will return an error when AcquireCredentialsHandle() fails.
- curl_easy_setopt.3: Fix misspelling in CURLOPT_PATH_AS_IS description
+Kamil Dudka (29 Oct 2014)
+- transfer: drop the code handling the ssl_connect_retry flag
+
+ Its last use has been removed by the previous commit.
-- [Viktor Szakáts brought this change]
+- nss: drop the code for libcurl-level downgrade to SSLv3
+
+ This code was already deactivated by commit
+ ec783dc142129d3860e542b443caaa78a6172d56.
- CURLOPT_HTTPHEADER.3: fix typo in recent commit
+- openssl: fix a line length warning
-- [Viktor Szakáts brought this change]
+Guenter Knauf (29 Oct 2014)
+- Added NetWare support to build with nghttp2.
- CURLOPT_PATH_AS_IS.3: add type 'long' to prototype
+- Fixed error message since we require ALPN support.
-- vtls: fix compile with --disable-crypto-auth but with SSL
+- Check for ALPN via OpenSSL version number.
- This is a strange combination of options, but is allowed.
+ This check works also with to non-configure platforms.
-Patrick Monnerat (24 Mar 2015)
-- os400: define new options in ILE/RPG binding.
+Steve Holme (28 Oct 2014)
+- sasl_sspi: Fixed typo in comment
-Daniel Stenberg (24 Mar 2015)
-- RELEASE-NOTES: synced with f6878609361
+- code cleanup: We prefer 'CURLcode result'
-- curl_easy_setopt.3: Add CURLOPT_PATH_AS_IS
+Daniel Stenberg (28 Oct 2014)
+- TODO: consider supporting STAT
-- CURLOPT_PATH_AS_IS: added
-
- --path-as-is is the command line option
+- mk-ca-bundle: spell fix "version"
+
+- HTTP: return larger than 3 digit response codes too
- Added docs in curl.1 and CURLOPT_PATH_AS_IS.3
+ HTTP 1.1 is clearly specified to only allow three digit response codes,
+ and libcurl used sscanf("%3d") for that purpose. This made libcurl
+ support smaller numbers but not larger. It does now, but we will not
+ make any specific promises nor document this further since it is going
+ outside of what HTTP is.
- Added test in test 1241
-
-- [Yamada Yasuharu brought this change]
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1441
+ Reported-by: Balaji
- curl_easy_recv/send: make them work with the multi interface
+- src/: remove version.h.dist from gitignore
- By making sure Curl_getconnectinfo() uses the correct connection cache
- to find the last connection.
+ It has not been used since commit f7bfdbab in 2011
-- http2: move the init too for when its actually needed
+Steve Holme (26 Oct 2014)
+- ntlm: We prefer 'CURLcode result'
- ... it would otherwise lead to memory leakage if we never actually do
- the switch.
+ Continuing commit 0eb3d15ccb more return code variable name changes.
-Dan Fandrich (23 Mar 2015)
-- dict: rename byte to avoid compiler shadowed declaration warning
-
- This conflicted with a WolfSSL typedef.
+Guenter Knauf (26 Oct 2014)
+- Cosmetics: lowercase non-special subroutine names.
-- cyassl: include version.h to ensure the version macros are defined
+Steve Holme (26 Oct 2014)
+- RELEASE-NOTES: Synced with 07ac29a058
-- test1513: eliminated race condition in test run
+- http_negotiate: We prefer 'CURLcode result'
- It seems that some systems (e.g. fairly consistently in some recent
- Solaris autobuilds) would manage to get to the connect phase before the
- progress callback was called, resulting in a CURLE_COULDNT_CONNECT
- error. Reworked the test to point at a test server that never returns a
- full result so the progress callback always gets a chance to be called
- before the transfer can complete in some other way.
+ Continuing commit 0eb3d15ccb more return code variable name changes.
-Nick Zitzmann (21 Mar 2015)
-- darwinsssl: add support for TLS False Start
-
- TLS False Start support requires iOS 7.0 or later, or OS X 10.9 or later.
+- http_negotiate: Fixed missing check for USE_SPNEGO
-Daniel Stenberg (21 Mar 2015)
-- gtls: add check of return code
+- sspi: Synchronization of cleanup code between auth mechanisms
+
+- sspi: Renamed max token length variables
- Coverity CID 1291167 pointed out that 'rc' was received but never used when
- gnutls_credentials_set() was used. Added return code check now.
+ Code cleanup to try and synchronise code between the different SSPI
+ based authentication mechanisms.
-- gtls: dereferencing NULL pointer
+- sspi: Renamed expiry time stamp variables
- Coverity CID 1291165 pointed out 'chainp' could be dereferenced when
- NULL if gnutls_certificate_get_peers() had previously failed.
+ Code cleanup to try and synchronise code between the different SSPI
+ based authentication mechanisms.
-- gtls: avoid uninitialized variable.
+- sspi: Only call CompleteAuthToken() when complete is needed
+
+ Don't call CompleteAuthToken() after InitializeSecurityContext() has
+ returned SEC_I_CONTINUE_NEEDED as this return code only indicates the
+ function should be called again after receiving a response back from
+ the server.
- Coverity CID 1291166 pointed out that we could read this variable
- uninitialized.
+ This only affected the Digest and NTLM authentication code.
-Dan Fandrich (21 Mar 2015)
-- tests/certs: rebuild certificates with modified key usage bits
+Dan Fandrich (26 Oct 2014)
+- Added the "flaky" keyword to a number of tests
- The certificates were missing the digitalSignature and keyAgreement
- usage types, of which at least digitalSignature was checked by CyaSSL.
- This caused the test server in test 310 (among others) to fail the
- startup verification and therefore run (see
- http://curl.haxx.se/mail/lib-2014-07/0303.html).
+ Each shows evidence of flakiness on at least one platform on
+ the autobuilds. Users can use this keyword to skip these tests
+ if desired.
-- tests/certs: added make target to rebuild certificates
+Steve Holme (26 Oct 2014)
+- ntlm: Return all errors from Curl_ntlm_core_mk_nt_hash()
- The certificate generation scripts were also updated to better match the
- format of the certificates currently checked in.
+ For consistency with other areas of the NTLM code propagate all errors
+ from Curl_ntlm_core_mk_nt_hash() up the call stack rather than just
+ CURLE_OUT_OF_MEMORY.
-Daniel Stenberg (21 Mar 2015)
-- x509asn1: add /* fallthrough */ in switch() case
+- ntlm: Return CURLcode from Curl_ntlm_core_mk_lm_hash()
-- x509asn1: minor edit to unconfuse Coverity
+- ntlm: Use 'CURLcode result'
- CID 1202732 warns on the previous use, although I cannot fine any
- problems with it. I'm doing this change only to make the code use a more
- familiar approach to accomplish the same thing.
+ Continuing commit 0eb3d15ccb more return code variable name changes.
-- [Dagobert Michelsen brought this change]
+- ntlm: Only define ntlm data structure when USE_NTLM is defined
- testcurl: Allow '=' in values given on command line
+- ntlm: Changed handles to be dynamic like other SSPI handles
+
+ Code cleanup to try and synchronise code between the different SSPI
+ based authentication mechanisms.
-- nss: error: unused variable 'connssl'
+- ntlm: Renamed handle variables to match other SSPI structures
+
+ Code cleanup to try and synchronise code between the different SSPI
+ based authentication mechanisms.
-Dan Fandrich (21 Mar 2015)
-- test938: added missing closing tags
+- ntlm: Renamed SSPI based input token variables
+
+ Code cleanup to try and synchronise code between the different SSPI
+ based authentication mechanisms.
-- cyassl: use new library version macro when available
+- ntlm: We prefer 'CURLcode result'
+
+ Continuing commit 0eb3d15ccb more return code variable name changes.
-Kamil Dudka (20 Mar 2015)
-- [Alessandro Ghedini brought this change]
+- build: Added WinIDN build configuration options
+
+ Added support for WinIDN build configurations to the VC8 and VC9
+ project files.
- curl: add --false-start option
+Nick Zitzmann (24 Oct 2014)
+- darwinssl: detect possible future removal of SSLv3 from the framework
+
+ If Apple ever drops SSLv3 support from the Security framework, we'll fail with an error if the user insists on using SSLv3.
-- [Alessandro Ghedini brought this change]
+Patrick Monnerat (24 Oct 2014)
+- gskit.c: remove SSLv3 from SSL default.
- nss: add support for TLS False Start
+- gskit.c: use 'CURLcode result'
-- [Alessandro Ghedini brought this change]
+Daniel Stenberg (24 Oct 2014)
+- [Jay Satiro brought this change]
- url: add CURLOPT_SSL_FALSESTART option
+ SSL: Remove SSLv3 from SSL default due to POODLE attack
- This option can be used to enable/disable TLS False Start defined in the RFC
- draft-bmoeller-tls-falsestart.
+ - Remove SSLv3 from SSL default in darwinssl, schannel, cyassl, nss,
+ openssl effectively making the default TLS 1.x. axTLS is not affected
+ since it supports only TLS, and gnutls is not affected since it already
+ defaults to TLS 1.x.
+
+ - Update CURLOPT_SSLVERSION doc
-Patrick Monnerat (20 Mar 2015)
-- [Alessandro Ghedini brought this change]
+- pipelining: only output "is not blacklisted" in debug builds
- gtls: implement CURLOPT_CERTINFO
+- *.3: add/extend "SEE ALSO" sections
-Daniel Stenberg (20 Mar 2015)
-- [Alessandro Ghedini brought this change]
+- curl_easy_pause.3: minor wording edit
- openssl: try to avoid accessing OCSP structs when possible
+- curl_getdate.3: provide a "SEE ALSO" section
-- CURLOPT_URL.3: spelling!
-
- Reported-by: Frank Gevaerts
+- curl_global_init.3: minor formatting fix, add version info
-- CURLOPT_URL.3: Added "SECURITY CONCERNS"
+- url.c: use 'CURLcode result'
-- CURLOPT_HTTPHEADER.3: add a "SECURITY CONCERNS" section
-
-Dan Fandrich (19 Mar 2015)
-- cyassl: detect the library as renamed wolfssl
+- code cleanup: we prefer 'CURLcode result'
- This change was made in CyaSSL/WolfSSL ver. 3.4.0
-
-Daniel Stenberg (19 Mar 2015)
-- HTTP: don't switch to HTTP/2 from 1.1 until we get the 101
+ ... for the local variable name in functions holding the return
+ code. Using the same name universally makes code easier to read and
+ follow.
- We prematurely changed protocol handler to HTTP/2 which made things very
- slow (and wrong).
+ Also, unify code for checking for CURLcode errors with:
- Reported-by: Stefan Eissing
- Bug: https://github.com/bagder/curl/issues/169
-
-Dan Fandrich (19 Mar 2015)
-- axtls: version 1.5.2 now requires that config.h be manually included
-
-Daniel Stenberg (19 Mar 2015)
-- metalink: fix resource leak in OOM
+ if(result) or if(!result)
- Coverity CID 1288826
-
-Dan Fandrich (18 Mar 2015)
-- docs/libcurl: clean up libcurl-symbols.3
-
-- docs/libcurl: check that all options with man pages are referenced
+ instead of
- If a man page exists in the opts/ directory, it must also be referenced
- either in curl_easy_setopt.3 or curl_multi_setopt.3
+ if(result == CURLE_OK), if(CURLE_OK == result) or if(result != CURLE_OK)
-- curl_easy_setopt.3: added a few missing options
-
-Kamil Dudka (18 Mar 2015)
-- nss: explicitly tell NSS to disable NPN/ALPN
+- Curl_add_timecondition: skip superfluous varible assignment
- ... if disabled at libcurl level. Otherwise, we would allow to
- negotiate NPN despite curl was invoked with the --no-npn option.
+ Detected by cppcheck.
-Daniel Stenberg (18 Mar 2015)
-- [Jay Satiro brought this change]
+- Curl_pp_flushsend: skip superfluous assignment
+
+ Detected by cppcheck.
- mkhelp: Remove trailing carriage return from every line of input
+- Curl_pp_readresp: remove superfluous assignment
- - Get rid of this flood of warnings in Windows mingw build:
- warning: missing terminating " character
+ Variable already assigned a few lines up.
- The warning is due to the carriage return. When msysgit checks out files
- from the repo by default it converts the line endings to CRLF. Prior to
- this change when mkhelp.pl processed the MANUAL and curl.1 in CRLF
- format the trailing carriage returns caused unnecessary CR in the
- output.
-
-- RELEASE-NOTES: synced with e539f01567
+ Detected by cppcheck.
-- [Christian Weisgerber brought this change]
-
- docs/libcurl: make portability fix
+- Curl_proxyCONNECT: remove superfluous statement
+
+ The variable is already assigned, skip the duplicate assignment.
- Using $< in a non-suffix rule context is a GNU make idiom. This bug was
- introduced in 7.41.0.
+ Pointed out by cppcheck.
-Dan Fandrich (17 Mar 2015)
-- checksrc: Fix whitelist on out-of-tree builds
+Guenter Knauf (24 Oct 2014)
+- Added MinGW support to build with nghttp2.
-Daniel Stenberg (17 Mar 2015)
-- [Stefan Bühler brought this change]
+- Added VC ssh2 target to main Makefile.
- Curl_sh_entry: remove unused 'timestamp'
+- Some cosmetics and simplifies.
-- HTTP: don't use Expect: headers when on HTTP/2
+- Remove dependency on openssl and cut.
- Reported-by: Stefan Eissing
- Bug: https://github.com/bagder/curl/issues/169
+ Prefer usage of Perl modules for sha1 calculation since there
+ might be systems where openssl is not installed or not in path.
+ If openssl is used for sha1 calculation then dont rely on cut
+ since it is usually not available on other systems than Linux.
-- checksrc: detect and remove space before trailing semicolons
+Daniel Stenberg (23 Oct 2014)
+- RELEASE-NOTES: synced with e116d0a62
-- checksrc: introduce a whitelisting concept
+- CURLOPT_RESOLVE.3: add an example
-- checksrc: use space after comma
+- gnutls: removed dead code
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1437
+ Reported-by: Julien
-- checksrc: use space before paren in "return (expr);"
+- Curl_rand: Uninitialized variable: r
+
+ This is not actually used uninitialized but we silence warnings.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1437
+ Reported-by: Julien
-- CONTRIBUTE: refer to git log instead of deprecated CHANGES file
+- opts: provide more and updated examples
-- CURLOPT_*.3: more examples and edits
+- CURLOPT_RANGE.3: works for SFTP as well
+
+ ... and added a small example
-- CURLOPT_*.3: added lots of small example sections
+- curl.1: edited for clarity
-- CURLOPT_PRIVATE.3: provide an example
+- CURLOPT_SSLVERSION.3: provide an example
-- CURLOPT_*TIMEOUT.3: provide examples
+- docs/libcurl/ABI: more markdown friendly
-- CURLOPT_USERAGENT.3: added an example
+- docs: edited lots of libcurl docs for clarity
-- CURLOPT_STDERR.3: added an example
+- opts: added examples
-- curl_easy_perform.3: remove superfluous close brace from example
+- HISTORY: two glimpses in 2014
-- free: instead of Curl_safefree()
+Kamil Dudka (20 Oct 2014)
+- nss: reset SSL handshake state machine
- Since we just started make use of free(NULL) in order to simplify code,
- this change takes it a step further and:
+ ... when the handshake succeeds
- - converts lots of Curl_safefree() calls to good old free()
- - makes Curl_safefree() not check the pointer before free()
-
- The (new) rule of thumb is: if you really want a function call that
- frees a pointer and then assigns it to NULL, then use Curl_safefree().
- But we will prefer just using free() from now on.
+ This fixes a connection failure when FTPS handle is reused.
-- [Markus Elfring brought this change]
+Daniel Stenberg (20 Oct 2014)
+- [Peter Wu brought this change]
- Bug #149: Deletion of unnecessary checks before a few calls of cURL functions
+ cmake: generate pkg-config and curl-config
- The following functions return immediately if a null pointer was passed.
- * Curl_cookie_cleanup
- * curl_formfree
+ Initial work to generate a pkg-config and curl-config script. Static
+ linking (`curl-config --static-libs` and `pkg-config --shared --libs
+ libcurl`) is broken and therefore disabled.
- It is therefore not needed that a function caller repeats a corresponding check.
+ CONFIGURE_OPTIONS does not make sense for CMake, use an empty string
+ for now.
- This issue was fixed by using the software Coccinelle 1.0.0-rc24.
+ At least `curl-config --features` and `curl-config --protocols` work
+ which is needed by runtests.pl.
- Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Markus Elfring brought this change]
+- [Peter Wu brought this change]
- Bug #149: Deletion of unnecessary checks before calls of the function "free"
-
- The function "free" is documented in the way that no action shall occur for
- a passed null pointer. It is therefore not needed that a function caller
- repeats a corresponding check.
- http://stackoverflow.com/questions/18775608/free-a-null-pointer-anyway-or-check-first
+ cmake: use LIBCURL_VERSION from curlver.h
- This issue was fixed by using the software Coccinelle 1.0.0-rc24.
+ This matches the behavior from autotools. The auxiliary major, minor
+ and patch components are not needed anymore and therefore removed.
- Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
-
-- [Jay Satiro brought this change]
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
- connect: Fix happy eyeballs logic for IPv4-only builds
-
- Bug: https://github.com/bagder/curl/pull/168
-
- (trynextip)
- - Don't try the "other" protocol family unless IPv6 is available. In an
- IPv4-only build the other family can only be IPv6 which is unavailable.
-
- This change essentially stops IPv4-only builds from attempting the
- "happy eyeballs" secondary parallel connection that is supposed to be
- used by the "other" address family.
-
- Prior to this change in IPv4-only builds that secondary parallel
- connection attempt could be erroneously used by the same family (IPv4)
- which caused a bug where every address after the first for a host could
- be tried twice, often in parallel. This change fixes that bug. An
- example of the bug is shown below.
-
- Assume MTEST resolves to 3 addresses 127.0.0.2, 127.0.0.3 and 127.0.0.4:
-
- * STATE: INIT => CONNECT handle 0x64f4b0; line 1046 (connection #-5000)
- * Rebuilt URL to: http://MTEST/
- * Added connection 0. The cache now contains 1 members
- * STATE: CONNECT => WAITRESOLVE handle 0x64f4b0; line 1083
- (connection #0)
- * Trying 127.0.0.2...
- * STATE: WAITRESOLVE => WAITCONNECT handle 0x64f4b0; line 1163
- (connection #0)
- * Trying 127.0.0.3...
- * connect to 127.0.0.2 port 80 failed: Connection refused
- * Trying 127.0.0.3...
- * connect to 127.0.0.3 port 80 failed: Connection refused
- * Trying 127.0.0.4...
- * connect to 127.0.0.3 port 80 failed: Connection refused
- * Trying 127.0.0.4...
- * connect to 127.0.0.4 port 80 failed: Connection refused
- * connect to 127.0.0.4 port 80 failed: Connection refused
- * Failed to connect to MTEST port 80: Connection refused
- * Closing connection 0
- * The cache now contains 0 members
- * Expire cleared
- curl: (7) Failed to connect to MTEST port 80: Connection refused
-
- The bug was born in commit bagder/curl@2d435c7.
-
-- mksymbolsmanpage.pl: use std header and generate better nroff header
+- [Peter Wu brought this change]
-- [Frank Meier brought this change]
-
- closesocket: call multi socket cb on close even with custom close
+ cmake: add SUPPORT_FEATURES and SUPPORT_PROTOCOLS
- In function Curl_closesocket() in connect.c the call to
- Curl_multi_closed() was wrongly omitted if a socket close function
- (CURLOPT_CLOSESOCKETFUNCTION) is registered.
+ For compatibility with autoconf, it will be used later for curl-config
+ and pkg-config. Not all features and or protocols can be enabled as
+ these are missing additional checks (see new TODOs).
- That would lead to not removing the socket from the internal hash table
- and not calling the multi socket callback appropriately.
+ SUPPORT_PROTOCOLS is partially scripted (grep for SUPPORT_PROTOCOLS=)
+ and manually verified/modified. SUPPORT_FEATURES is manually added.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1493
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Tobias Stoeckmann brought this change]
+- cmake: add CMake/Macros.cmake to the release tarball
- hostip: Fix signal race in Curl_resolv_timeout.
-
- A signal handler for SIGALRM is installed in Curl_resolv_timeout. It is
- configured to interrupt system calls and uses siglongjmp to return into
- the function if alarm() goes off.
-
- The signal handler is installed before curl_jmpenv is initialized.
- This means that an already installed alarm timer could trigger the
- newly installed signal handler, leading to undefined behavior when it
- accesses the uninitialized curl_jmpenv.
+- test545: make it not use a trailing zero
- Even if there is no previously installed alarm available, the code in
- Curl_resolv_timeout itself installs an alarm before the environment is
- fully set up. If the process is sent into suspend right after that, the
- signal handler could be called too early as in previous scenario.
-
- To fix this, the signal handler should only be installed and the alarm
- timer only be set after sigsetjmp has been called.
+ CURLOPT_COPYPOSTFIELDS with a given CURLOPT_POSTFIELDSIZE does not
+ require a trailing zero of the data and by making sure this test doesn't
+ use one we know it works (combined with valgrind).
-- http2: detect prematures close without data transfered
-
- ... by using the regular Curl_http_done() method which checks for
- that. This makes test 1801 fail consistently with error 56 (which seems
- fine) to that test is also updated here.
+Steve Holme (16 Oct 2014)
+- ntlm: Fixed empty type-2 decoded message info text
- Reported-by: Ben Darnell
- Bug: https://github.com/bagder/curl/issues/166
+ Updated the info text when the base-64 decode of the type-2 message
+ returns a null buffer to be more specific.
+
+- ntlm: Fixed empty/bad base-64 decoded buffer return codes
+
+- ntlm: Avoid unnecessary buffer allocation for SSPI based type-2 token
-Dan Fandrich (13 Mar 2015)
-- test320: Expect the Host header to be the first header
+Daniel Stenberg (16 Oct 2014)
+- httpcustomheader.c: make use of more CURLOPT_HTTPHEADER features
- Required for the test to work after a5d994941c2b.
+ ... and only do a single request for clarity.
-Daniel Stenberg (12 Mar 2015)
-- RELEASE-NOTES: synced with 186e46d88dd
+Steve Holme (15 Oct 2014)
+- sasl_sspi: Fixed some typos
-- openssl: use colons properly in the ciphers list
+- sasl_sspi: Fixed Kerberos response buffer not being allocated when using SSO
+
+Daniel Stenberg (15 Oct 2014)
+- [Bruno Thomsen brought this change]
+
+ mk-ca-bundle: added SHA-384 signature algorithm
+
+ Certificates based on SHA-1 are being phased out[1].
+ So we should expect a rise in certificates based on SHA-2.
+ Adding SHA-384 as a valid signature algorithm.
- While the previous string worked, this is the documented format.
+ [1] https://blog.mozilla.org/security/2014/09/23/phasing-out-certificates-with-sha-1-based-signature-algorithms/
- Reported-by: Richard Moore
+ Signed-off-by: Bruno Thomsen <bth@kamstrup.dk>
+
+Patrick Monnerat (14 Oct 2014)
+- OS400: fix bugs in curl_*escape_ccsid() and reduce variables scope
+
+- Implement pinned public key in GSKit backend
-- openssl: sort the ciphers on strength
+Daniel Stenberg (14 Oct 2014)
+- CURLOPT_TLSAUTH_*.3: fix reference typos
+
+- cleanups: reduce variable scope
- This makes curl pick better (stronger) ciphers by default. The strongest
- available ciphers are fine according to the HTTP/2 spec so an OpenSSL
- built curl is no longer rejected by string HTTP/2 servers.
+ cppcheck pointed these out.
+
+- singleipconnect: remove dead assignment never used
- Bug: http://curl.haxx.se/bug/view.cgi?id=1487
+ cppcheck pointed this out.
-- [Fabian Keil brought this change]
+- pinning: minor code style policing
- test203[0-3]: Expect the Host header to be the first header
-
- Required for the tests to work after a5d994941c2b.
+Patrick Monnerat (13 Oct 2014)
+- Factorize pinned public key code into generic file handling and backend specific
-- openssl: show the cipher selection to use
+- vtls: remove QsoSSL
-- http: always send Host: header as first header
+- gskit: supply dummy randomization function
+
+- vtls/*: deprecate have_curlssl_md5sum and set-up default md5sum implementation
+
+Daniel Stenberg (13 Oct 2014)
+- [Peter Wu brought this change]
+
+ tests: move TESTCASES to Makefile.inc, add show for cmake
- ...after the method line:
+ This change allows runtests.pl to be run from the CMake builddir:
- "Since the Host field-value is critical information for handling a
- request, a user agent SHOULD generate Host as the first header field
- following the request-line." / RFC 7230 section 5.4
+ export srcdir=/tmp/curl/tests;
+ perl -I$srcdir $srcdir/runtests.pl -l
- Additionally, this will also make libcurl ignore multiple specified
- custom Host: headers and only use the first one. Test 1121 has been
- updated accordingly
+ In order to make this possible, all test cases have been moved from
+ Makefile.am to Makefile.inc.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1491
- Reported-by: Rainer Canavan
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Alexander Pepper brought this change]
+- [Peter Wu brought this change]
- mk-ca-bundle bugfix: Don't report SHA1 numbers with "-q".
+ cmake: enable IPv6 by default if available
- Also unified printing to STDERR by creating the helper method "report".
-
-- proxy: re-use proxy connections (regression)
+ ENABLE_IPV6 depends on HAVE_GETADDRINFO or you will get a
+ Curl_getaddrinfo_ex error. Enable IPv6 by default, disabling it if
+ struct sockaddr_in6 is not found in netinet/in.h.
- When checking for a connection to re-use, a proxy-using request must
- check for and use a proxy connection and not one based on the host
- name!
+ Note that HAVE_GETADDRINFO_THREADSAFE is still not set as it needs more
+ platform checks even though POSIX requires a thread-safe getaddrinfo.
- Added test 1421 to verify
+ Verified on Arch Linux x86_64 with glibc 2.20-2 and Linux 3.16-rc7.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1492
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
-- [Jay Satiro brought this change]
-
- memanalyze.pl: handle free(NULL)
-
-- [Jay Satiro brought this change]
+- [Peter Wu brought this change]
- .travis.yml: Change CI make test to make test-full
+ cmake: build tool_hugehelp (ENABLE_MANUAL)
- - Change the continuous integration script to use 'make test-full'
- instead of just 'make test' so that the diagnostic log output is
- printed to stdout when a test fails.
+ Rather than always outputting an empty manual page for the '-M' option,
+ generate a full manual page as done by autotools. For simplicity in
+ CMake, always generate the gzipped page as it will not be used anyway
+ when zlib is not available.
- - Change the continuous integration script to use
- './configure --enable-debug' instead of just './configure' so that the
- memory analyzer will work during testing.
-
- Prior to this change Travis used its default C test script:
- ./configure && make && make test
-
-- [Alessandro Ghedini brought this change]
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
- gtls: correctly align certificate status verification messages
+- [Peter Wu brought this change]
-- [Alessandro Ghedini brought this change]
+ tests/http_pipe.py: Python 3 support
+
+ The 2to3 tool converted socketserver (which I manually fixed up with an
+ import fallback) and the print(e) line. The xrange option was converted
+ to range, but it seems better to use the '*' operator here for
+ simplicity.
+
+ Signed-off-by: Peter Wu <peter@lekensteyn.nl>
- gtls: don't print double newline after certificate dates
+- SECURITY: slightly nicer markdown format
-- [Alessandro Ghedini brought this change]
+- RELEASE-PROCEDURE: better markdown, more content
- gtls: print negotiated TLS version and full cipher suite name
+- RELEASE-NOTES: synced with 6637b237e6eb
- Instead of priting cipher and MAC algorithms names separately, print the
- whole cipher suite string which also includes the key exchange algorithm,
- along with the negotiated TLS version.
+ ... and bumped the planned release version.
-- gtls: fix compiler warnings
-
-- [Alessandro Ghedini brought this change]
+- vtls: have vtls.h include the backend header files
+
+ It turned out some features were not enabled in the build since for
+ example url.c #ifdefs on features that are defined on a per-backend
+ basis but vtls.h didn't include the backend headers.
+
+ CURLOPT_CERTINFO was one such feature that was accidentally disabled.
- gtls: add support for CURLOPT_CAPATH
+- test2036: verify -O with no slash at all in the URL
+
+ Similar to test 76 but that test's URL has a slash just no file name
+ part.
-- [stopiccot brought this change]
+- get_url_file_name: make no slash equal empty string
- MacOSX-Framework: use @rpath instead of @executable_path
+- get_url_file_name: never return a NULL string *and* OK
+
+ Change 987a4a73 assumes that as it simplifies life in the calling
+ function.
- Bug: https://github.com/bagder/curl/pull/157
+ Reported-by: Fabian Keil
-- RELEASE-NOTES: synced with c19349951
+- [Jakub Zakrzewski brought this change]
-- multi: fix *getsock() with CONNECT
-
- The code used some happy eyeballs logic even _after_ CONNECT has been
- sent to a proxy, while the happy eyeball phase is already (should be)
- over by then.
+ Cmake: Build with GSSAPI (MIT or Heimdal)
- This is solved by splitting the multi state into two separate states
- introducing the new SENDPROTOCONNECT state.
+ It tries hard to recognise SDK's on different platforms. On windows MIT
+ Kerberos installs SDK with other things and puts path into registry.
+ Heimdal have separate zip archive. On linux pkg-config is tried, then
+ krb5-config script and finally old-style libs and headers detection.
- Bug: http://curl.haxx.se/mail/lib-2015-01/0170.html
- Reported-by: Peter Laser
+ Command line args:
+ * CMAKE_USE_GSSAPI - enables GSSAPI detection
+ * GSS_ROOT_DIR - if set, should point to the root of GSSAPI installation
+ (the one with include and lib directories)
-- conncontrol: only log changes to the connection bit
+- [Jakub Zakrzewski brought this change]
-- http2: use CURL_HTTP_VERSION_* symbols instead of NPN_*
+ Cmake: Got rid of setup_curl_dependencies
- Since they already exist and will make comparing easier
-
-- http2: make the info-message about receiving HTTP2 headers debug-only
+ There is no need for such function. Include_directories propagate by
+ themselves and having a function with one simple link statement makes
+ little sense.
-- [Alessandro Ghedini brought this change]
+- [Jakub Zakrzewski brought this change]
- urldata: remove unused asked_for_h2 field
+ Cmake: Avoid cycle directory dependencies.
+
+ Because we prepended libraries to list, CMake had troubles resolving
+ link directory order as it detected some cycles. Appending to list ensures
+ that dependencies will preceed dependees.
-- [Alessandro Ghedini brought this change]
+- [Jakub Zakrzewski brought this change]
- polarssl: make it possible to enable ALPN/NPN without HTTP2
+ Cmake: Fix library list provided to cURL tests.
+
+ The list must be set after those nice CMake tests as we mess with
+ CMAKE_REQUIRED_LIBRARIES there.
-- [Alessandro Ghedini brought this change]
+- [Jakub Zakrzewski brought this change]
- nss: make it possible to enable ALPN/NPN without HTTP2
+ Cmake: Check for OpenSSL before OpenLDAP.
+
+ OpenLDAP might have been build with OpenSSL. Checking for OpenLDAP first
+ may result in undefined symbols. Of course, the found OpenSSL libraries
+ must also be linked whenever OpenLDAP is.
-- [Alessandro Ghedini brought this change]
+- curl_multi_fdset.3: improved the formatting slightly
- gtls: make it possible to enable ALPN/NPN without HTTP2
+- curl_multi_fdset: explain the fd_set arguments
-- [Alessandro Ghedini brought this change]
+Kamil Dudka (8 Oct 2014)
+- nss: do not fail if a CRL is already cached
+
+ This fixes a copy-paste mistake from commit 2968f957.
- openssl: make it possible to enable ALPN/NPN without HTTP2
+Patrick Monnerat (8 Oct 2014)
+- OS400: upgrade interface for pinned public key (no implementation yet)
-- metalink: add some error checks
-
- malloc() and strdup() calls without checking return codes.
+Daniel Stenberg (8 Oct 2014)
+- FormAdd: precaution against memdup() of NULL pointer
- Reported-by: Markus Elfring
- Bug: https://github.com/bagder/curl/issues/150
+ Coverity CID 252518. This function is in general far too complicated for
+ its own good and really should be broken down into several smaller
+ funcitons instead - but I'm adding this protection here now since it
+ seems there's a risk the code flow can end up here and dereference a
+ NULL pointer.
-- curl_easy_setopt.3: added CURLOPT_SSL_VERIFYSTATUS
+- operate: avoid NULL dereference
- Reported-by: Jonathan Cardoso
+ Coverity CID 1241948. dumpeasysrc() would get called with
+ config->current set to NULL which could be dereferenced by a warnf()
+ call.
-- urldata: fix gnutls build
-
-Steve Holme (5 Mar 2015)
-- openssl: Removed use of USE_SSLEAY from the Visual Studio project files
+- do_sec_send: remove dead code
- In addition to commit 709cf76f6b, removed the USE_SSLEAY preprocessor
- variable from the Visual Studio project files as it isn't required
- anymore.
+ Coverity CID 1241951. The condition 'len >= 0' would always be true at
+ that point and thus not necessary to check for.
-Daniel Stenberg (5 Mar 2015)
-- multi: fix memory-leak on timeout (regression)
-
- Since 1342a96ecfe0d44, a timeout detected in the multi state machine didn't
- necesarily clear everything up, like formpost data.
+- krb5_encode: remove unused argument
- Bug: https://github.com/bagder/curl/issues/147
- Reported-by: Michel Promonet
- Patched-by: Michel Promonet
+ Coverity CID 1241957. Removed the unused argument. As this struct and
+ pointer now are used only for krb5, there's no need to keep unused
+ function arguments around.
-- configure: follow-up fix from 709cf76f6
+- operate_do: skip superfluous check for NULL pointer
- OpenSSL handling was a little broken.
+ Coverity CID 1243583. get_url_file_name() cannot fail and return a NULL
+ file name pointer so skip the check for that - it tricks coverity into
+ believing it can happen and it then warns later on when we use 'outfile'
+ without checking for NULL.
-- openssl: remove all uses of USE_SSLEAY
+- curl_easy_getinfo.3: spell-fix
- SSLeay was the name of the library that was subsequently turned into
- OpenSSL many moons ago (1999). curl does not work with the old SSLeay
- library since years. This is now reflected by only using USE_OPENSSL in
- code that depends on OpenSSL.
+ Reported-By: Luan Cestari
-- [Sergei Nikulov brought this change]
+- [moparisthebest brought this change]
- cmake: handle build definitions CURLDEBUG/DEBUGBUILD
-
- Acked-by: Brad King
+ GnuTLS: Implement public key pinning
-- FAQ: 4.21 Why is there a HTTP/1.1 in my HTTP/2 request?
+- [moparisthebest brought this change]
-- symbols.pl: handle '-' in the deprecated field
+ SSL: implement public key pinning
+
+ Option --pinnedpubkey takes a path to a public key in DER format and
+ only connect if it matches (currently only implemented with OpenSSL).
- ... which otherwise made the script skip the _LAST define for some
- symbols.
+ Provides CURLOPT_PINNEDPUBLICKEY for curl_easy_setopt().
- Reported-by: Jeroen Ooms
- Bug: http://curl.haxx.se/mail/lib-2015-03/0052.html
+ Extract a public RSA key from a website like so:
+ openssl s_client -connect google.com:443 2>&1 < /dev/null | \
+ sed -n '/-----BEGIN/,/-----END/p' | openssl x509 -noout -pubkey \
+ | openssl rsa -pubin -outform DER > google.com.der
-- curl.1: fix "The the" typo
+- multi_runsingle: fix possible memory leak
- Reported-by: Jon Seymour
+ Coverity CID 1202837. 'newurl' can in fact be allocated even when
+ Curl_retry_request() returns failure so free it if need be.
-- vtls: use curl_printf.h all over
+- ares::Curl_resolver_cancel: skip checking for NULL conn
- No need to use _MPRINTF_REPLACE internally.
+ Coverity CID 1243581. 'conn' will never be NULL here, and if it would be
+ the subsequent statement would dereference it!
-- tool: use ENABLE_CURLX_PRINTF instead of _MPRINTF_REPLACE
+- parseconfig: skip a NULL check
+
+ Coverity CID 1154198. This NULL check implies that the pointer _can_ be
+ NULL at this point, which it can't. Thus it is dead code. It tricks
+ static analyzers to warn about dereferencing the pointer since the code
+ seems to imply it can be NULL.
-- tool_writeenv: remove _MPRINTF_REPLACE define, it wasn't used
+- [Waldek Kozba brought this change]
-- [Sergei Nikulov brought this change]
+ multi-uv.c: call curl_multi_info_read() better
+
+ Improves it for low-latency cases (like the communication with
+ localhost)
- libtest: fixed linker errors on msvc
+- tool_go_sleep: use (void) to spell out we ignore the return value
- Bug: https://github.com/bagder/curl/pull/144
+ Coverity CID 1222080.
-- mprintf.h: remove #ifdef CURLDEBUG
+- ssh_statemach_act: split out assignment from check
- ... and as a consequence, introduce curl_printf.h with that re-define
- magic instead and make all libcurl code use that instead.
+ just a minor code style thing to make the code clearer
-- tool_getpass: remove unused curl/mprintf.h include
+Marc Hoersken (4 Oct 2014)
+- curl_schannel.c: Fixed possible memory or handle leak
+
+ First try to fix possible memory leaks, in this case:
+ Only connssl->ctxt xor onnssl->cred being initialized.
-- CONTRIBUTING.md: file for advice on github
+Daniel Stenberg (4 Oct 2014)
+- getparameter: remove dead code
+
+ Coverity CID 1061126. 'parse' will always be non-NULL here.
-- [Viktor Szakáts brought this change]
+- getparameter: comment a switch FALLTHROUGH
+
+ Coverity CID 1061118. Point out that it is on purpose.
- BINDINGS: add link to Harbour bindings
+- choose_mech: fix return code
- And UTF8-fix a few names
+ Coverity CID 1241950. The pointer is never NULL but it might point to
+ NULL.
-- CURLOPT_HEADERFUNCTION.3: typo in error code name
+- Curl_sec_read_msg: spell out that we ignore return code
- Reported-by: Jonathan Cardoso
+ Coverity CID 1241947. Since if sscanf() fails, the previously set value
+ remains set.
-- BINDINGS: tclcurl moved
+- nonblock: call with (void) to show we ignore the return code
- Reporte-by: Steve Havelka
+ Coverity pointed out several of these.
-- [Jay Satiro brought this change]
+- parse_proxy: remove dead code.
+
+ Coverity CID 982331.
- opts: Fix pipelining examples
+- Curl_debug: document switch fallthroughs
-- [Jay Satiro brought this change]
+- curl_multi_remove_handle: remove dead code
+
+ Coverify CID 1157776. Removed a superfluous if() that always evaluated
+ true (and an else clause that never ran), and then re-indented the
+ function accordingly.
- curl_multi_setopt.3: Link to CURLMOPT_MAXCONNECTS
+- Curl_pipeline_server_blacklisted: handle a NULL server name
+
+ Coverity CID 1215284. The server name is extracted with
+ Curl_copy_header_value() and passed in to this function, and
+ copy_header_value can actually can fail and return NULL.
-- CONTRIBUTE: the new more github-friendly attitude!
+- ssh: comment "fallthrough" in switch statement
-Steve Holme (28 Feb 2015)
-- RELEASE-NOTES: Synced with 921d195187
+- [Jeremy Lin brought this change]
-Kamil Dudka (28 Feb 2015)
-- tool: wrap lines longer than 79 columns
+ ssh: improve key file search
- ... to avoid a build failure when configured with --enable-debug
+ For private keys, use the first match from: user-specified key file
+ (if provided), ~/.ssh/id_rsa, ~/.ssh/id_dsa, ./id_rsa, ./id_dsa
+
+ Note that the previous code only looked for id_dsa files. id_rsa is
+ now generally preferred, as it supports larger key sizes.
+
+ For public keys, use the user-specified key file, if provided.
+ Otherwise, try to extract the public key from the private key file.
+ This means that passing --pubkey is typically no longer required,
+ and makes the key-handling behavior more like OpenSSH.
-Steve Holme (27 Feb 2015)
-- [Tatsuhiro Tsujikawa brought this change]
+- CURLOPT_HTTPHEADER.3: libcurl doesn't copy the whole list
- http2: Return error if stream was closed with other than NO_ERROR
+- detect_proxy: fix possible single-byte memory leak
- Previously, we just ignored error code passed to
- on_stream_close_callback and just return 0 (success) after stream
- closure even if stream was reset with error. This patch records error
- code in on_stream_close_callback, and return -1 and use CURLE_HTTP2
- error code on abnormal stream closure.
+ Coverity CID 1202836. If the proxy environment variable returned an empty
+ string, it would be leaked. While an empty string is not really a proxy, other
+ logic in this function already allows a blank string to be returned so allow
+ that here to avoid the leak.
-- tool: Updated the warnf() function to use the GlobalConfig structure
+- multi_runsingle: fix memory leak
- As the 'error' and 'mute' options are now part of the GlobalConfig,
- rather than per Operation, updated the warnf() function to use this
- structure rather than the OperationConfig.
+ Coverity CID 1202837. There's a potential risk that 'newurl' gets
+ overwritten when it was already pointing to allocated memory.
-- build: Removed DataExecutionPrevention directive from VC9+ project files
+- pop3_perform_authentication: fix memory leak
- Removed the DataExecutionPrevention directive from the project files for
- Visual Studio 2008 and above. The XML value in the VC9 project files was
- set to "0" (Default) whilst the VC10+ project files contained an empty
- XML element.
+ Coverity CID 1215287. There's a potential risk for a memory leak in
+ here, and moving the free call to be unconditional seems like a cheap
+ price to remove the risk.
-- build: Use default RandomizedBaseAddress directive in VC9+ project files
-
- Visual Studio 2008 introduced support for the address space layout
- randomization (ASLR) feature of Windows Vista. However, upgrading the
- VC8 project files to VC9 and above disabled this feature.
+- imap_perform_authentication: fix memory leak
- Removed the RandomizedBaseAddress directive to enabled the default
- setting (/DYNAMICBASE). Note: This doesn't appear to have any negative
- impact when compiled and ran on Windows XP.
+ Coverity CID 1215296. There's a potential risk for a memory leak in
+ here, and moving the free call to be unconditional seems like a cheap
+ price to remove the risk.
-- build: Added support to Generate.bat for files in the upcoming vauth folder
-
-Daniel Stenberg (25 Feb 2015)
-- http2: return recv error on unexpected EOF
+- wait_or_timeout: return failure when Curl_poll() fails
- Pointed-out-by: Tatsuhiro Tsujikawa
- Bug: http://curl.haxx.se/bug/view.cgi?id=1487
+ Coverity detected this. CID 1241954. When Curl_poll() returns a negative value
+ 'mcode' was uninitialized. Pretty harmless since this is debug code only and
+ would at worst cause an error to _not_ be returned...
-Kamil Dudka (25 Feb 2015)
-- dist: add symbol-scan.pl to the tarball
+- curl.1: mention quoting in the URL section
- ... in order to make test1135 succeed
+ and separate the example URLs with newlines
-Daniel Stenberg (25 Feb 2015)
-- http2: move lots of verbose output to be debug-only
+Steve Holme (30 Sep 2014)
+- [Bill Nagel brought this change]
-Kamil Dudka (25 Feb 2015)
-- curl-config.in: eliminate double quotes around CURL_CA_BUNDLE
-
- Otherwise it expands to:
+ smtp: Fixed intermittent "SSL3_WRITE_PENDING: bad write retry" error
- echo ""/etc/pki/tls/certs/ca-bundle.crt""
+ This patch fixes the "SSL3_WRITE_PENDING: bad write retry" error that
+ sometimes occurs when sending an email over SMTPS with OpenSSL. OpenSSL
+ appears to require the same pointer on a write that follows a retry
+ (CURLE_AGAIN) as discussed here:
- Detected by ShellCheck:
-
- curl-config:74:16: warning: The double quotes around this do
- nothing. Remove or escape them. [SC2140]
+ http://stackoverflow.com/questions/2997218/why-am-i-getting-error1409f07fssl-routinesssl3-write-pending-bad-write-retr
-- nss: do not skip Curl_nss_seed() if data is NULL
-
- In that case, we only skip writing the error message for failed NSS
- initialization (while still returning the correct error code).
+Daniel Stenberg (30 Sep 2014)
+- RELEASE-NOTES: synced with 53cbea22310f15
-- nss: improve error handling in Curl_nss_random()
+- file: reject paths using embedded %00
- The vtls layer now checks the return value, so it is no longer necessary
- to abort if a random number cannot be provided by NSS. This also fixes
- the following Coverity report:
+ Mostly because we use C strings and they end at a binary zero so we know
+ we can't open a file name using an embedded binary zero.
- Error: FORWARD_NULL (CWE-476):
- lib/vtls/nss.c:1918: var_compare_op: Comparing "data" to null implies that "data" might be null.
- lib/vtls/nss.c:1923: var_deref_model: Passing null pointer "data" to "Curl_failf", which dereferences it.
- lib/sendf.c:154:3: deref_parm: Directly dereferencing parameter "data".
+ Reported-by: research@g0blin.co.uk
-Daniel Stenberg (25 Feb 2015)
-- RELEASE-PROCEDURE: add some more future release dates
-
- ... and remove some old ones
-
-- sws: timeout idle CONNECT connections
+Dan Fandrich (26 Sep 2014)
+- test506: Fixed a couple of memory leaks in test
-- bump: start working toward 7.42.0
+Daniel Stenberg (25 Sep 2014)
+- [Yousuke Kimoto brought this change]
-Version 7.41.0 (25 Feb 2015)
+ CURLOPT_COOKIELIST: Added "RELOAD" command
-Daniel Stenberg (25 Feb 2015)
-- THANKS: added contributors from the 7.41.0 RELEASE-NOTES
+- [Michael Wallner brought this change]
-- RELEASE-NOTES: sync with ffc2aeec6e (7.41.0 release time!)
+ CURLOPT_POSTREDIR.3: Added availability for CURL_REDIR_POST_303
-Marc Hoersken (25 Feb 2015)
-- Revert "telnet.c: fix handling of 0 being returned from custom read function"
+- threaded-resolver: revert Curl_expire_latest() switch
- This reverts commit 03fa576833643c67579ae216c4e7350fa9b5f2fe.
+ The switch to using Curl_expire_latest() in commit cacdc27f52b was a
+ mistake and was against the advice even mentioned in that commit. The
+ comparison in asyn-thread.c:Curl_resolver_is_resolved() makes
+ Curl_expire() the suitable function to use.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1426
+ Reported-By: graysky
+
+- libcurl docs: improvements all over
-- telnet.c: fix invalid use of custom read function if not being set
+Steve Holme (19 Sep 2014)
+- build: Added WinIDN build configuration options
- obj_count can be 1 if the custom read function is set or the stdin
- handle is a reference to a pipe. Since the pipe should be handled
- using the PeekNamedPipe-check below, the custom read function should
- only be used if it is actually enabled.
+ Added initial support for WinIDN build configurations to the VC10+
+ project files.
-- telnet.c: fix handling of 0 being returned from custom read function
+Daniel Stenberg (19 Sep 2014)
+- tutorial: signals aren't used for the threaded resolver
+
+- FAQ: update the pronunciation section
- According to [1]: "Returning 0 will signal end-of-file to the library
- and cause it to stop the current transfer."
- This change makes the Windows telnet code handle this case accordingly.
+ As we weren't using the correct phonetic description and doing it correctly
+ involves funny letters that I'm sure will cause problems for people in a text
+ document so I instead rephrased it and link to a WAV file with a person
+ actually saying 'curl'.
- [1] http://curl.haxx.se/libcurl/c/CURLOPT_READFUNCTION.html
+ Reported-By: Dimitar Boevski
-Daniel Stenberg (24 Feb 2015)
-- sws: stop logging about TPC_NODELAY nonsense
+- CURLOPT_COOKIE*: added more cross-references
-- lib530: make it less timing sensible
+- BINDINGS: add node-libcurl
- ... by making sure the first request is completed before doing the
- remainder.
+ Reported-By: Jonathan Cardoso Machado
+ URL: http://curl.haxx.se/mail/lib-2014-09/0102.html
-Kamil Dudka (23 Feb 2015)
-- connect: wait for IPv4 connection attempts
-
- ... even if the last IPv6 connection attempt has failed.
-
- Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c4
+- README.http2: updated to reflect current status
-- connect: avoid skipping an IPv4 address
-
- ... in case the protocol versions are mixed in a DNS response
- (IPv6 -> IPv4 -> IPv6).
-
- Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1187531#c3
+- formdata: removed unnecessary USE_SSLEAY use
-Daniel Stenberg (23 Feb 2015)
-- RELEASE-NOTES: synced with 5e4395eab839d
+- curlssl: make tls backend symbols use curlssl in the name
-- ROADMAP: curl_easy_setopt.3 has already been split up
+- url: let the backend decide CURLOPT_SSL_CTX_ support
- Remove cmake as marked for removal. It is in much better state now.
+ ... to further remove specific TLS backend knowledge from url.c
-- ROADMAP: extend the HTTP/2 stuff, remove SPDY
+- vtls: have the backend tell if it supports CERTINFO
-- [Julian Ospald brought this change]
+- [Catalin Patulea brought this change]
- configure: allow both --with-ca-bundle and --with-ca-path
+ configure: allow --with-ca-path with PolarSSL too
- SSL_CTX_load_verify_locations by default (and if given non-Null
- parameters) searches the CAfile first and falls back to CApath. This
- allows for CAfile to be a basis (e.g. installed by the package manager)
- and CApath to be a user configured directory.
+ Missed this in af45542c.
- This wasn't reflected by the previous configure constraint which this
- patch fixes.
+ Signed-off-by: Catalin Patulea <cat@vv.carleton.ca>
+
+- CURLOPT_CAPATH: return failure if set without backend support
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+ http2: Fix busy loop when EOF is encountered
- Bug: https://github.com/bagder/curl/pull/139
+ Previously we did not handle EOF from underlying transport socket and
+ wrongly just returned error code CURL_AGAIN from http2_recv, which
+ caused busy loop since socket has been closed. This patch adds the
+ code to handle EOF situation and tells the upper layer that we got
+ EOF.
-- [Ben Boeckel brought this change]
+Steve Holme (13 Sep 2014)
+- build: Added batch wrapper to checksrc.pl
- cmake: install the dll file to the correct directory
+- RELEASE-NOTES: Synced with bd3df5ec6d
-- [Alessandro Ghedini brought this change]
+- [Marcel Raad brought this change]
- nss: fix NPN/ALPN protocol negotiation
+ sasl_sspi: Fixed Unicode build
- Correctly check for memcmp() return value (it returns 0 if the strings match).
-
- This is not really important, since curl is going to use http/1.1 anyway, but
- it's still a bug I guess.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1422
+ Verified-by: Steve Holme
-- [Alessandro Ghedini brought this change]
+Daniel Stenberg (12 Sep 2014)
+- libcurl-tutorial.3: fix GnuTLS link to thread-safety guidelines
+
+ The former link was turned into a 404 at some point.
+
+ Reported-By: Askar Safin
- polarssl: fix ALPN protocol negotiation
+- contributors.sh: split list of names at comma
- Correctly check for strncmp() return value (it returns 0 if the strings
- match).
+ ... to support a list of names provided in a commit message.
-- [Sergei Nikulov brought this change]
+Steve Holme (12 Sep 2014)
+- [Ulrich Telle brought this change]
- CMake: Fix generation of tool_hugehelp.c on windows
+ ntlm: Fixed HTTP proxy authentication when using Windows SSPI
+
+ Removed ISC_REQ_* flags from calls to InitializeSecurityContext to fix
+ bug in NTLM handshake for HTTP proxy authentication.
+
+ NTLM handshake for HTTP proxy authentication failed with error
+ SEC_E_INVALID_TOKEN from InitializeSecurityContext for certain proxy
+ servers on generating the NTLM Type-3 message.
- Use "cmake -E echo" instead of "echo".
+ The flag ISC_REQ_CONFIDENTIALITY seems to cause the problem according
+ to the observations and suggestions made in a bug report for the
+ QT project (https://bugreports.qt-project.org/browse/QTBUG-17322).
- Reviewed-by: Brad King <brad.king@kitware.com>
+ Removing all the flags solved the problem.
+
+ Bug: http://curl.haxx.se/mail/lib-2014-08/0273.html
+ Reported-by: Ulrich Telle
+ Assisted-by: Steve Holme, Daniel Stenberg
-- [Sergei Nikulov brought this change]
+Daniel Stenberg (12 Sep 2014)
+- [Ray Satiro brought this change]
- CMake: fix winsock2 detection on windows
+ newlines: fix mixed newlines to LF-only
- Set CMAKE_REQUIRED_DEFINITIONS to include definitions needed to get
- the winsock2 API from windows.h. Simplify the order of checks to
- avoid extra conditions.
+ I use the curl repo mainly on Windows with the typical Windows git
+ checkout which converts the LF line endings in the curl repo to CRLF
+ automatically on checkout. The automatic conversion is not done on files
+ in the repo with mixed line endings. I recently noticed some weird
+ output with projects/build-openssl.bat that I traced back to mixed line
+ endings, so I scanned the repo and there are files (excluding the
+ test data) that have mixed line endings.
- Use check_include_file instead of check_include_file_concat to look
- for OpenSSL headers. They do not need to participate in a sequence
- of dependent system headers. Also they may cause winsock.h to be
- included before ws2tcpip.h, causing the latter to not be detected
- in the sequence.
+ I used this command below to do the scan. Unfortunately it's not as easy
+ as git grep, at least not on Windows. This gets the names of all the
+ files in the repo's HEAD, gets each of those files raw from HEAD, checks
+ for mixed line endings of both LF and CRLF, and prints the name if
+ mixed. I excluded path tests/data/test* because those can have mixed
+ line endings if I understand correctly.
- Reviewed-by: Brad King <brad.king@kitware.com>
+ for f in `git ls-tree --name-only --full-tree -r HEAD`;
+ do if [ -n "${f##tests/data/test*}" ];
+ then git show "HEAD:$f" | \
+ perl -0777 -ne 'exit 1 if /([^\r]\n.*\r\n)|(\r\n.*[^\r]\n)/';
+ if [ $? -ne 0 ];
+ then echo "$f";
+ fi;
+ fi;
+ done
-- [Alessandro Ghedini brought this change]
+- [Viktor Szakáts brought this change]
+
+ mk-ca-bundle.pl: converted tabs to spaces, deleted trailing spaces
- gtls: fix build with HTTP2
+- ROADMAP: markdown eats underscores
+
+ It interprets them as italic indictors unless we backtick the word.
-Steve Holme (16 Feb 2015)
-- Makefile.vc6: Corrected typos in rename of darwinssl.obj
+- ROADMAP: tiny formatting edit for nicer web output
-Nick Zitzmann (15 Feb 2015)
-- By request, change the name of "curl_darwinssl.[ch]" to "darwinssl.[ch]"
+Steve Holme (10 Sep 2014)
+- ROADMAP.md: Updated GSSAPI authentication following 7.38.0 additions
-Steve Holme (14 Feb 2015)
-- RELEASE-NOTES: Synced with 6f89f86c3d
+- INTERNALS: Added email and updated Kerberos details
-- tests/README: Updated to reflect email test ranges
+- FEATURES: Updated Kerberos details
+
+ Added support for Kerberos 5 to the email protocols following the recent
+ additions in 7.38.0.
+
+ Removed Kerberos 4 as this has been gone for a while now.
-- [Alessandro Ghedini brought this change]
+Daniel Stenberg (10 Sep 2014)
+- [Paul Howarth brought this change]
- curl.1: --cert-status is also supported by OpenSSL now
+ openssl: build fix for versions < 0.9.8e
+
+ Bug: http://curl.haxx.se/mail/lib-2014-09/0064.html
-- build: Removed Visual Studio SuppressStartupBanner directive for VC8+
+- mk-ca-bundle.pl: first, try downloading HTTPS with curl
+
+ As a sort of step forward, this script will now first try to get the
+ data from the HTTPS URL using curl, and only if that fails it will
+ switch back to the HTTP transfer using perl's native LWP functionality.
+ To reduce the risk of this script being tricked.
- Visual Studio 2005 and above defaults to disabling the startup banner
- for the Compiler, Linker and MIDL tools (with /NOLOGO). As such there
- is no need to explicitly set the SuppressStartupBanner directive, as
- this is a leftover from the VC7 and VC7.1 projects being upgraded to
- VC8 and above.
+ Using HTTPS to get a cert bundle introduces a chicken-and-egg problem so
+ we can't really ever completely disable HTTP, but chances are that most
+ users already have a ca cert bundle that trusts the mozilla.org site
+ that this script downloads from.
+
+ A future version of this script will probably switch to require a
+ dedicated "insecure" command line option to allow downloading over HTTP
+ (or unverified HTTPS).
-Kamil Dudka (12 Feb 2015)
-- openssl: fix a compile-time warning
+- LICENSE-MIXING: removed krb4 info
- lib/vtls/openssl.c:1450:7: warning: extra tokens at end of #endif directive
+ krb4 has been dropped since a while now
+
+- bump: on the 7.38.1-DEV train now!
-Steve Holme (11 Feb 2015)
-- openssl: Use OPENSSL_IS_BORINGSSL for BoringSSL detection
+- SSLCERTS: minor updates
- For consistency with other conditionally compiled code in openssl.c,
- use OPENSSL_IS_BORINGSSL rather than HAVE_BORINGSSL and try to use
- HAVE_BORINGSSL outside of openssl.c when the OpenSSL header files are
- not included.
+ Edited format to look better on the web, added a "it is about trust"
+ section.
-Patrick Monnerat (11 Feb 2015)
-- ftp: accept all 2xx responses to the PORT command
+Version 7.38.0 (10 Sep 2014)
-Steve Holme (9 Feb 2015)
-- openssl: Disable OCSP in old versions of OpenSSL
+Daniel Stenberg (10 Sep 2014)
+- dist: two cmake files are no more
- Versions of OpenSSL prior to v0.9.8h do not support the necessary
- functions for OCSP stapling.
+ CMake/FindOpenSSL.cmake and FindZLIB.cmake are gone since 14aa8f0c117b
-Daniel Stenberg (9 Feb 2015)
-- [Tatsuhiro Tsujikawa brought this change]
+- RELEASE-NOTES: final update for 7.38.0
- http2: Fix bug that associated stream canceled on PUSH_PROMISE
+- cookies: reject incoming cookies set for TLDs
+
+ Test 61 was modified to verify this.
- Previously we don't ignore PUSH_PROMISE header fields in on_header
- callback. It makes header values mixed with following HEADERS,
- resulting protocol error.
+ CVE-2014-3620
+
+ Reported-by: Tim Ruehsen
+ URL: http://curl.haxx.se/docs/adv_20140910B.html
-- [Jay Satiro brought this change]
+- [Tim Ruehsen brought this change]
- polarssl: Fix exclusive SSL protocol version options
+ cookies: only use full host matches for hosts used as IP address
- Prior to this change the options for exclusive SSL protocol versions did
- not actually set the protocol exclusive.
+ By not detecting and rejecting domain names for partial literal IP
+ addresses properly when parsing received HTTP cookies, libcurl can be
+ fooled to both send cookies to wrong sites and to allow arbitrary sites
+ to set cookies for others.
- http://curl.haxx.se/mail/lib-2015-01/0002.html
- Reported-by: Dan Fandrich
+ CVE-2014-3613
+
+ Bug: http://curl.haxx.se/docs/adv_20140910A.html
-- [Jay Satiro brought this change]
+- HISTORY: fix the 1998 title position
- gskit: Fix exclusive SSLv3 option
+- HISTORY: extended and now markdown
-- curl.1: clarify that -X is used for all requests
+- SSLCERTS: converted to markdown
- Reported-by: Jon Seymour
-
-- curl.1: add warning when using -H and redirects
+ Only minor edits to make it generate nice HTML output using markdown, as
+ this document serves both in source release tarballs as on the web site.
+
+ URL: http://curl.haxx.se/docs/sslcerts.html
-Steve Holme (7 Feb 2015)
-- schannel: Removed curl_ prefix from source files
+- ftp-wildcard.c: spell fix
- Removed the curl_ prefix from the schannel source files as discussed
- with Marc and Daniel at FOSDEM.
+ Reported-By: Frank Gevaerts
-Daniel Stenberg (6 Feb 2015)
-- md5: use axTLS's own MD5 functions when available
+- RELEASE-NOTES: synced with 921a0c22a6f
-- MD(4|5): make the MD4_* and MD5_* functions static
+- THANKS: synced with RELEASE-NOTES for 921a0c22a6f
-- axtls: fix conversion from size_t to int warning
+- polarassl: avoid memset() when clearing the first byte is enough
-Steve Holme (5 Feb 2015)
-- ftp: Use 'CURLcode result' for curl result codes
+- [Catalin Patulea brought this change]
-Daniel Stenberg (5 Feb 2015)
-- openssl: SSL_SESSION->ssl_version no longer exist
+ polarssl: support CURLOPT_CAPATH / --capath
- The struct went private in 1.0.2 so we cannot read the version number
- from there anymore. Use SSL_version() instead!
-
- Reported-by: Gisle Vanem
- Bug: http://curl.haxx.se/mail/lib-2015-02/0034.html
+ Signed-off-by: Catalin Patulea <cat@vv.carleton.ca>
-Dan Fandrich (4 Feb 2015)
-- unit1600: Fix compilation when NTLM is disabled
+- SECURITY: eh, make more sense!
-Daniel Stenberg (4 Feb 2015)
-- MD5: fix compiler warnings and code style nits
+- SECURITY: how to join the curl-security list
-- MD5: replace implementation
-
- The previous one was "encumbered" by RSA Inc - to avoid the licensing
- restrictions it has being replaced. This is the initial import,
- inserting the md5.c and md5.h files from
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5
-
- Code-by: Alexander Peslyak
+- RELEASE-NOTES: fix the required nghttp2 version typo
-- MD4: fix compiler warnings and code style nits
+- [Brandon Casey brought this change]
-- MD4: replace implementation
+ Ensure progress.size_dl/progress.size_ul are always >= 0
- The previous one was "encumbered" by RSA Inc - to avoid the licensing
- restrictions it has being replaced. This is the initial import,
- inserting the md4.c and md4.h files from
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md4
+ Historically the default "unknown" value for progress.size_dl and
+ progress.size_ul has been zero, since these values are initialized
+ implicitly by the calloc that allocates the curl handle that these
+ variables are a part of. Users of curl that install progress
+ callbacks may expect these values to always be >= 0.
- Code-by: Alexander Peslyak
-
-Steve Holme (4 Feb 2015)
-- telnet: Prefer 'CURLcode result' for curl result codes
-
-- hostasyn: Prefer 'CURLcode result' for curl result codes
-
-- schannel: Prefer 'CURLcode result' for curl result codes
+ Currently it is possible for progress.size_dl and progress.size_ul
+ to by set to a value of -1, if Curl_pgrsSetDownloadSize() or
+ Curl_pgrsSetUploadSize() are passed a "size" of -1 (which a few
+ places currently do, and a following patch will add more). So
+ lets update Curl_pgrsSetDownloadSize() and Curl_pgrsSetUploadSize()
+ so they make sure that these variables always contain a value that
+ is >= 0.
+
+ Updates test579 and test599.
+
+ Signed-off-by: Brandon Casey <drafnel@gmail.com>
-Daniel Stenberg (3 Feb 2015)
-- unit1601: MD5 unit tests
+Steve Holme (7 Sep 2014)
+- tests: Added test1420 to the makefile
-- unit1600: unit test for Curl_ntlm_core_mk_nt_hash
+- test1420: Removed unnecessary CURLOPT setting
-- unit1600: NTLM unit test
+- tests: Added more "Clear Text" authentication keywords
-- tests/README: add a new range, clean up some language
+- tests: Updated "based on" text due to email test renumbering
-- [Jay Satiro brought this change]
+- tests: For consistency added --libcurl to test name
- opts: CURLOPT_CAINFO availability depends on SSL engine
+- tests: Added --libcurl for IMAP test case
-- getpass: protect include with proper #ifdef
+- multi.c: Avoid invalid memory read after free() from commit 3c8c873252
- Reported-by: Tamir
+ As the current element in the list is free()d by Curl_llist_remove(),
+ when the associated connection is pending, reworked the loop to avoid
+ accessing the next element through e->next afterward.
-- getpass_r: read from stdin, not stdout!
+- multi.c: Fixed compilation warning from commit 3c8c873252
- The file number used was wrong. This bug was introduced over 10 years
- ago, proving this function isn't used much...
+ warning: implicit conversion from enumeration type 'CURLMcode' to
+ different enumeration type 'CURLcode'
+
+- url.c: Use CURLAUTH_NONE constant rather than 0
- Bug: http://curl.haxx.se/bug/view.cgi?id=1476
- Reported-by: Tamir
+ Small follow up to commit 898808fa8c to use auth constants rather than
+ hard code value when clearing picked authentication mechanism.
-- test1135: verify the CURL_EXTERN order in header files
+- RELEASE-NOTES: Synced with fd1ce3856a
-- Makefile.am: fix 'make distcheck'
-
- ... by removing generated files from the *_DIST variable [*] and instead
- generate them with a .dist suffix, since that is then handled and put
- into the release archive by our generic dist-hook.
-
- [*] = 'make distcheck' fails with non-existing files listed there
+Nick Zitzmann (4 Sep 2014)
+- [Vilmos Nebehaj brought this change]
-Steve Holme (2 Feb 2015)
-- curl_sasl.c: More code policing
+ darwinssl: Use CopyCertSubject() to check CA cert.
+
+ SecCertificateCopyPublicKey() is not available on iPhone. Use
+ CopyCertSubject() instead to see if the certificate returned by
+ SecCertificateCreateWithData() is valid.
- Better use of 80 character line limit, comment corrections and line
- spacing preferences.
+ Reported-by: Toby Peterson
-Daniel Stenberg (2 Feb 2015)
-- libcurl-symbols: first basic shot for autogenerated docs
+Steve Holme (4 Sep 2014)
+- RELEASE-NOTES: Clarify email Kerberos support is currently via Windows SSPI
-- FAQ: minor edit of 3.22
+Daniel Stenberg (4 Sep 2014)
+- MAIL-ETIQUETTE: "1.8 I posted, now what?"
-Steve Holme (2 Feb 2015)
-- build: Added removal of Visual Studio project files
+- CURLOPT_CA*: better refering between *CAINFO and *CAPATH
- Added the removal of the locally generated project files so one
- may revert to a clean repository.
+ ... and a minor wording edit
-- build: Renamed top level Visual Studio solution files
+- THANKS: added Dennis Clarke
- In preparation for adding the test suite and examples projects renamed
- the top level "all" solution files to better describe what they are.
-
- This will also enable us to use "curl" rather than "curlsrc" for the
- command line tool solution and project files, which will simplify some
- of the configuration.
+ Dennis Clarke from Blastwave.org for ensuring that nightly builds run
+ smooth on Solaris!
-- build: Enabled DEBUGBUILD in Visual Studio debug builds
-
- Defined the DEBUGBUILD pre-processor variable to allow extra logging,
- which is particularly useful in debug builds, as we use this and Visual
- Studio typically uses _DEBUG.
+- curl_multi_cleanup: remove superfluous NULL assigns
- We could define DEBUBBUILD, in curl_setup.h, when _MSC_VER and _DEBUG is
- defined but that would also affect the makefile based builds which we
- probably don't want to do.
+ ... as the struct is free()d in the end anyway. It was first pointed out
+ to me that one of the ->msglist assignments were supposed to have been
+ ->pending but was a copy and paste mistake when I realized none of the
+ clearing of pointers had to be there.
-- build: Removed unused Visual Studio bscmake settings
-
-Daniel Stenberg (2 Feb 2015)
-- CURLOPT_HTTP_VERSION.3: CURL_HTTP_VERSION_2_0 added in 7.33.0
+- multi: convert CURLM_STATE_CONNECT_PEND handling to a list
+
+ ... instead of scanning through all handles, stash only the actual
+ handles that are in that state in the new ->pending list and scan that
+ list only. It should be mostly empty or very short. And only used for
+ pipelining.
- And modify the text to refer to HTTP 2 as it isn't called "2.0".
+ This avoids a rather hefty slow-down especially notable if you add many
+ handles to the same multi handle. Regression introduced in commit
+ 0f147887 (version 7.30.0).
- Reported-By: Michael Wallner
+ Bug: http://curl.haxx.se/mail/lib-2014-07/0206.html
+ Reported-by: David Meyer
-Marc Hoersken (31 Jan 2015)
-- TODO: moved WinSSL/SChannel todo items into docs
+- RELEASE-NOTES: synced with e608324f9f9
-Daniel Stenberg (29 Jan 2015)
-- [Michael Kaufmann brought this change]
+- [Andre Heinecke brought this change]
- CURLOPT_SEEKFUNCTION.3: also when server closes a connection
+ polarssl: implement CURLOPT_SSLVERSION
+
+ Forwards the setting as minimum ssl version (if set) to polarssl. If
+ the server does not support the requested version the SSL Handshake will
+ fail.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1419
-Steve Holme (29 Jan 2015)
-- curl_sasl.c: Fixed compilation warning when cryptography is disabled
+nickzman (1 Sep 2014)
+- Merge pull request #115 from ldx/darwinsslfixpr
- curl_sasl.c:1506: warning: unused variable 'chlg'
+ darwinssl: now accepts cacert bundles in PEM format in addition to single certs
-- curl_sasl.c: Fixed compilation warning when verbose debug output disabled
+Vilmos Nebehaj (1 Sep 2014)
+- Check CA certificate in curl_darwinssl.c.
- curl_sasl.c:1317: warning: unused parameter 'conn'
+ SecCertificateCreateWithData() returns a non-NULL SecCertificateRef even
+ if the buffer holds an invalid or corrupt certificate. Call
+ SecCertificateCopyPublicKey() to make sure cacert is a valid
+ certificate.
-- ntlm_core: Use own odd parity function when crypto engine doesn't have one
+Daniel Stenberg (31 Aug 2014)
+- low-speed-limit: avoid timeout flood
+
+ Introducing Curl_expire_latest(). To be used when we the code flow only
+ wants to get called at a later time that is "no later than X" so that
+ something can be checked (and another timeout be added).
+
+ The low-speed logic for example could easily be made to set very many
+ expire timeouts if it would be called faster or sooner than what it had
+ set its own timer and this goes for a few other timers too that aren't
+ explictiy checked for timer expiration in the code.
+
+ If there's no condition the code that says if(time-passed >= TIME), then
+ Curl_expire_latest() is preferred to Curl_expire().
+
+ If there exists such a condition, it is on the other hand important that
+ Curl_expire() is used and not the other.
+
+ Bug: http://curl.haxx.se/mail/lib-2014-06/0235.html
+ Reported-by: Florian Weimer
-- ntlm_core: Prefer sizeof(key) rather than hard coded sizes
+- [Michael Wallner brought this change]
-- ntlm_core: Added consistent comments to DES functions
+ resolve: cache lookup for async resolvers
+
+ While waiting for a host resolve, check if the host cache may have
+ gotten the name already (by someone else), for when the same name is
+ resolved by several simultanoues requests.
+
+ The resolver thread occasionally gets stuck in getaddrinfo() when the
+ DNS or anything else is crappy or slow, so when a host is found in the
+ DNS cache, leave the thread alone and let itself cleanup the mess.
-- des: Added Curl_des_set_odd_parity()
+Vilmos Nebehaj (30 Aug 2014)
+- Fix CA certificate bundle handling in darwinssl.
- Added Curl_des_set_odd_parity() for use when cryptography engines
- don't include this functionality.
+ If the --cacert option is used with a CA certificate bundle that
+ contains multiple CA certificates, iterate through it, adding each
+ certificate as a trusted root CA.
-- tests: Grouped SMTP SASL EXTERNAL tests with other SMTP tests
+Daniel Stenberg (29 Aug 2014)
+- [Askar Safin brought this change]
-- tests: Grouped POP3 SASL EXTERNAL tests with other POP3 tests
+ getinfo-times: Typo fixed
-- tests: Grouped IMAP SASL EXTERNAL tests with other IMAP tests
+- [Askar Safin brought this change]
-- sasl: Minor code policing and grammar corrections
+ libcurl.3: Typo fixed
-Daniel Stenberg (28 Jan 2015)
-- [Gisle Vanem brought this change]
+- curl_formadd.3: setting CURLFORM_CONTENTSLENGTH 0 zero means strlen
- ldap: build with BoringSSL
+- curl.1: add an example for -H
-- security: avoid compiler warning
-
- Possible access to uninitialised memory '&nread' at line 140 of
- lib/security.c in function 'ftp_send_command'.
-
- Reported-by: Rich Burridge
+- FAQ: mention -w in the 4.20 answer as well
-- runtests: identify BoringSSL and libressl
+- FAQ: 4.20 curl doesn't return error for HTTP non-200 responses
-Patrick Monnerat (27 Jan 2015)
-- docs: cite SASL external authentication.
+- CURLOPT_NOBODY.3: clarify this option is for downloads
+
+ When enabling CURLOPT_NOBODY, libcurl effectively switches off upload
+ mode and will do a download (without a body). This is now better
+ explained in this man page.
+
+ Bug: http://curl.haxx.se/mail/lib-2014-08/0236.html
+ Reported-by: John Coffey
-- sasl: remove XOAUTH2 from default enabled authentication mechanism.
+- INTERNALS: nghttp2 must be 0.6.0 or later
-- test: add test cases for sasl external authentication (imap/pop3/smtp).
+- [Tatsuhiro Tsujikawa brought this change]
-- imap: remove automatic password setting: it breaks external sasl authentication
+ Compile with latest nghttp2
-- sasl: implement EXTERNAL authentication mechanism.
- Its use is only enabled by explicit requirement in URL (;AUTH=EXTERNAL) and
- by not setting the password.
+Dan Fandrich (26 Aug 2014)
+- THANKS: removed a few more duplicates
-Steve Holme (27 Jan 2015)
-- openssl: Fixed Curl_ossl_cert_status_request() not returning FALSE
+Daniel Stenberg (26 Aug 2014)
+- RELEASE-NOTES: synced with 007242257683a
- Modified the Curl_ossl_cert_status_request() function to return FALSE
- when built with BoringSSL or when OpenSSL is missing the necessary TLS
- extensions.
+ ... and bumped the contributor amount after recount
-- openssl: Fixed compilation errors when OpenSSL built with 'no-tlsext'
+- THANKS: added 52 missing contributors
- Fixed the build of openssl.c when OpenSSL is built without the necessary
- TLS extensions for OCSP stapling.
+ I re-ran contributors.sh on all changes since 7.10 and I found these
+ contributors who are mentioned in the commits but never were added to
+ THANKS before!
- Reported-by: John E. Malmberg
+ I also removed a couple of duplicates (mostly due to different
+ spellings).
-- [Brad Spencer brought this change]
+- contributors: grep and sort case insensitively
- curl_setup: Disable SMB/CIFS support when HTTP only
-
-- RELEASE-NOTES: Synced with 37824498a3
+- [Michael Osipov brought this change]
-Daniel Stenberg (22 Jan 2015)
-- configure: remove detection of the old yassl emulation API
+ configure.ac: Add support for recent GSS-API implementations for HP-UX
- ... as that is ancient history and not used.
-
-- OCSP stapling: disabled when build with BoringSSL
-
-- [Alessandro Ghedini brought this change]
+ By default, configure script assumes that libcurl will use the
+ HP-supplied GSS-API implementation which does not have krb5-config.
+ If a dev needs a more recent version which has that config script,
+ the change will allow to pass an appropriate GSSAPI_ROOT.
- openssl: add support for the Certificate Status Request TLS extension
+- CONNECT: close proxy connections that fail to CONNECT
- Also known as "status_request" or OCSP stapling, defined in RFC6066
- section 8.
+ This is usually due to failed auth. There's no point in us keeping such
+ a connection alive since it shouldn't be re-used anyway.
- Thanks-to: Joe Mason
- - for the work-around for the OpenSSL bug.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1381
+ Reported-by: Marcel Raad
-- BoringSSL: fix build for non-configure builds
+- RELEASE-NOTES: added two missing HTTP/2 bug fixes
- HAVE_BORINGSSL gets defined now by configure and should be defined by
- other build systems in case a BoringSSL build is desired.
+ And renamed all http2 references to HTTP/2 in this file
+
+- RELEASE-NOTES: synced with f646e9075f47
-- configure: fix BoringSSL detection and detect libresssl
+- [Jakub Zakrzewski brought this change]
-Steve Holme (22 Jan 2015)
-- curl_sasl: Reinstate the sasl_ prefix for locally scoped functions
+ Cmake: Possibility to use OpenLDAP, OpenSSL, LibSSH2 on windows
- Commit 7a8b2885e2 made some functions static and removed the public
- Curl_ prefix. Unfortunately, it also removed the sasl_ prefix, which
- is the naming convention we use in this source file.
+ At this point I can build libcurl on windows. It provides at least the same
+ list of protocols as for linux build and works with our software.
-- curl_sasl: Minor code policing following recent commits
+- [Jakub Zakrzewski brought this change]
-Daniel Stenberg (22 Jan 2015)
-- [John Malmberg brought this change]
+ Cmake: Removed repeated content from ending blocks
+
+ They are unnecesary in modern CMake and removing them improves readability.
+
+- [Jakub Zakrzewski brought this change]
- openvms: Handle openssl/0.8.9zb version parsing
+ Cmake: Removed some useless empty SET statements.
- packages/vms/gnv_link_curl.com was assuming only a single letter suffix
- in the openssl version. That assumption has been fixed for 7.40.
+ Undefined variables resolve to empty strings and we do not ever test if
+ the variable is defined thus those SETs are superfluous.
-- BoringSSL: detected by configure, switches off NTLM
+- [Jakub Zakrzewski brought this change]
-- BoringSSL: no PKCS12 support nor ERR_remove_state
+ Cmake: Removed useless comments from CMakeLists.txt
+
+ They look like some relics after changes.
-- [Leith Bade brought this change]
+- [Jakub Zakrzewski brought this change]
- BoringSSL: fix build
+ Cmake: Don't check for all headers each time
+
+ One header at a time is the right way. Apart from that the output on
+ windows goes from:
+ ...
+ -- Looking for include files I:/src/libssh2-1.4.3/include/libssh2.h, ws2tcpip.h
+ -- Looking for include files I:/src/libssh2-1.4.3/include/libssh2.h, ws2tcpip.h
+ - found
+ -- Looking for 3 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins
+ ock2.h
+ -- Looking for 3 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins
+ ock2.h - found
+ -- Looking for 4 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., stdi
+ o.h
+ -- Looking for 4 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., stdi
+ o.h - found
+ -- Looking for 5 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wind
+ ows.h
+ -- Looking for 5 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wind
+ ows.h - found
+ -- Looking for 6 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins
+ ock.h
+ -- Looking for 6 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins
+ ock.h - found
+ -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/
+ filio.h
+ -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/
+ filio.h - not found
+ -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/
+ ioctl.h
+ -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/
+ ioctl.h - not found
+ -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/
+ resource.h
+ ...
+
+ To much nicer:
+ ...
+ -- Looking for ws2tcpip.h
+ -- Looking for ws2tcpip.h - found
+ -- Looking for winsock2.h
+ -- Looking for winsock2.h - found
+ -- Looking for stdio.h
+ -- Looking for stdio.h - found
+ -- Looking for windows.h
+ -- Looking for windows.h - found
+ -- Looking for winsock.h
+ -- Looking for winsock.h - found
+ -- Looking for sys/filio.h
+ -- Looking for sys/filio.h - not found
+ -- Looking for sys/ioctl.h
+ -- Looking for sys/ioctl.h - not found
+ -- Looking for sys/resource.h
-Steve Holme (20 Jan 2015)
-- curl_sasl.c: chlglen is not used when cryptography is disabled
+- [Jakub Zakrzewski brought this change]
-- curl_sasl.c: Fixed compilation warning when cyptography is disabled
+ Cmake: Append OpenSSL include directory to search path
- curl_sasl.c:1453: warning C4101: 'serverdata' : unreferenced local
- variable
+ At this point I can build libcurl with OpenSSL, OpenLDAP and LibSSH2.
+ Supported protocols are at least:
+ HTTP, HTTPS, FTP, SFTP, TFTP, LDAP, LDAPS, POP3, SMTP
+ (those are the ones we have regression tests for
+ in our product's testsuite)
-- curl_sasl.c: Fixed compilation error when USE_WINDOWS_SSPI defined
-
- curl_sasl.c:1221: error C2065: 'mechtable' : undeclared identifier
-
- This error could also happen for non-SSPI builds when cryptography is
- disabled (CURL_DISABLE_CRYPTO_AUTH is defined).
+- [Jakub Zakrzewski brought this change]
+
+ Cmake: Search for liblber, LDAP SSL headers, swith for using OpenLDAP code.
+
+- [Jakub Zakrzewski brought this change]
-Patrick Monnerat (20 Jan 2015)
-- SASL: make some procedures local-scoped
+ Cmake: LibSSH2 detection and use.
-- SASL: common state engine for imap/pop3/smtp
+- [Jakub Zakrzewski brought this change]
-- SASL: common URL option and auth capabilities decoders for all protocols
+ Cmake: Moved macros out of the main CMakeLists.txt
-- IMAP/POP3/SMTP: use a per-connection sub-structure for SASL parameters.
+- [Jakub Zakrzewski brought this change]
-Daniel Stenberg (20 Jan 2015)
-- ipv6: enclose AF_INET6 uses with proper #ifdefs for ipv6
+ Cmake: Added missing protocol-disable switches
- Reported-by: Chris Young
+ They already have their defines in config.h. This makes it possible to
+ disable the protocols from command line during configure step.
-- [Chris Young brought this change]
+- [Jakub Zakrzewski brought this change]
- timeval: typecast for better type (on Amiga)
+ Cmake: Made boolean defines be defined to "1" instead of "ON"
- There is an issue with conflicting "struct timeval" definitions with
- certain AmigaOS releases and C libraries, depending on what gets
- included when. It's a minor difference - the OS one is unsigned,
- whereas the common structure has signed elements. If the OS one ends up
- getting defined, this causes a timing calculation error in curl.
+ It's by convention, for compatibility and because the comments say so.
+ Just mabe someone have written a test like "#if HAVE_XX==1"
+
+- [Jakub Zakrzewski brought this change]
+
+ Cmake: Require at least CMake 2.8.
- It's easy enough to resolve this at the curl end, by casting the
- potentially errorneous calculation to a signed long.
+ CMake 2.6 is already a bit old. Many bugs have been fixed since
+ its release. We use 2.8 in our company and we have no intention
+ of polluting our environment with old software, so 2.6 would
+ not be tested. This shouldn't be a problem since all one need
+ to build CMake from source is C and C++ compiler.
-- openssl: do public key pinning check independently
+- disconnect: don't touch easy-related state on disconnects
- ... of the other cert verification checks so that you can set verifyhost
- and verifypeer to FALSE and still check the public key.
+ This was done to make sure NTLM state that is bound to a connection
+ doesn't survive and gets used for the subsequent request - but
+ disconnects can also be done to for example make room in the connection
+ cache and thus that connection is not strictly related to the easy
+ handle's current operation.
- Bug: http://curl.haxx.se/bug/view.cgi?id=1471
- Reported-by: Kyle J. McKay
-
-Patrick Monnerat (19 Jan 2015)
-- OS400: CURLOPT_SSL_VERIFYSTATUS for ILE/RPG too.
-
-Steve Holme (18 Jan 2015)
-- ldap: Renamed the CURL_LDAP_WIN definition to USE_WIN32_LDAP
+ The http authentication state is still kept in the easy handle since all
+ http auth _except_ NTLM is connection independent and thus survive over
+ multiple connections.
- For consistency with other USE_WIN32_ defines as well as the
- USE_OPENLDAP define.
+ Bug: http://curl.haxx.se/mail/lib-2014-08/0148.html
+ Reported-by: Paras S
-- http_negotiate: Use dynamic buffer for SPN generation
+- curl.1: clarify --limit-rate's effect on both directions
- Use a dynamicly allocated buffer for the temporary SPN variable similar
- to how the SASL GSS-API code does, rather than using a fixed buffer of
- 2048 characters.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1414
+ Reported-by: teo8976
-- sasl_gssapi: Make Curl_sasl_build_gssapi_spn() public
+- curl.1: mention the --post30x options within the --location desc
-- sasl_gssapi: Fixed memory leak with local SPN variable
+Dan Fandrich (22 Aug 2014)
+- sasl: Fixed a memory leak on OOM
-Daniel Stenberg (17 Jan 2015)
-- http_negotiate.c: unused variable 'ret'
-
-Steve Holme (17 Jan 2015)
-- gskit.h: Code policing of function pointer arguments
+Daniel Stenberg (22 Aug 2014)
+- [Frank Meier brought this change]
-- vtls: Removed unimplemented overrides of curlssl_close_all()
+ NTLM: ignore CURLOPT_FORBID_REUSE during NTLM HTTP auth
- Carrying on from commit 037cd0d991, removed the following unimplemented
- instances of curlssl_close_all():
+ Problem: if CURLOPT_FORBID_REUSE is set, requests using NTLM failed
+ since NTLM requires multiple requests that re-use the same connection
+ for the authentication to work
- Curl_axtls_close_all()
- Curl_darwinssl_close_all()
- Curl_cyassl_close_all()
- Curl_gskit_close_all()
- Curl_gtls_close_all()
- Curl_nss_close_all()
- Curl_polarssl_close_all()
-
-- vtls: Separate the SSL backend definition from the API setup
+ Solution: Ignore the forbid reuse flag in case the NTLM authentication
+ handshake is in progress, according to the NTLM state flag.
- Slight code cleanup as the SSL backend #define is mixed up with the API
- function setup.
+ Fixed known bug #77.
-- vtls: Fixed compilation errors when SSL not used
-
- Fixed the following warning and error from commit 3af90a6e19 when SSL
- is not being used:
-
- url.c:2004: warning C4013: 'Curl_ssl_cert_status_request' undefined;
- assuming extern returning int
-
- error LNK2019: unresolved external symbol Curl_ssl_cert_status_request
- referenced in function Curl_setopt
+Steve Holme (22 Aug 2014)
+- openssl.c: Fixed longer than 79 columns
-- http_negotiate: Added empty decoded challenge message info text
+- openssl.c: Fixed compilation warning
+
+ warning: declaration of 'minor' shadows a global declaration
-- http_negotiate: Return CURLcode in Curl_input_negotiate() instead of int
+Daniel Stenberg (21 Aug 2014)
+- [Haris Okanovic brought this change]
-- http_negotiate_sspi: Prefer use of 'attrs' for context attributes
+ win32: Fixed WinSock 2 #if
- Use the same variable name as other areas of SSPI code.
-
-- http_negotiate_sspi: Use correct return type for QuerySecurityPackageInfo()
+ A conditionally compiled block in connect.c references WinSock 2
+ symbols, but used `#ifdef HAVE_WINSOCK_H` instead of `#ifdef
+ HAVE_WINSOCK2_H`.
- Use the SECURITY_STATUS typedef rather than a unsigned long for the
- QuerySecurityPackageInfo() return and rename the variable as per other
- areas of SSPI code.
+ Bug: http://curl.haxx.se/mail/lib-2014-08/0155.html
-- http_negotiate_sspi: Use 'CURLcode result' for CURL result code
-
-- curl_endian: Fixed build when 64-bit integers are not supported (Part 2)
+- Curl_disconnect: don't free the URL
- Missed Curl_read64_be() in commit bb12d44471 :(
-
-Daniel Stenberg (16 Jan 2015)
-- CURLOPT_SSL_VERIFYSTATUS.3: mention it is added in version 7.41.0
-
-- curlver.h: next release is 7.41.0 due to the changes
+ The URL is not a property of the connection so it should not be freed in
+ the connection disconnect but in the Curl_close() that frees the easy
+ handle.
+
+ Bug: http://curl.haxx.se/mail/lib-2014-08/0148.html
+ Reported-by: Paras S
-- RELEASE-NOTES: mention the new OCSP stapling options, bump version
+- help output: minor whitespace edits
+
+ Should've been amended in the previous commit but wasn't due to a
+ mistake.
-- opts: add CURLOPT_SSL_VERIFYSTATUS* to docs/Makefile
+- [Zearin brought this change]
-- help: add --cert-status to --help output
+ help output: use ≥2 spaces between option and description
+
+ ... and some other cleanups
-- copyright years: after OCSP stapling changes
+- FAQ: some actually sometimes get paid...
-- [Alessandro Ghedini brought this change]
+Steve Holme (17 Aug 2014)
+- sasl_sspi: Fixed a memory leak with the GSSAPI base-64 decoded challenge
- curl: add --cert-status option
+- sasl_sspi: Renamed GSSAPI mutual authentication parameter
- This enables the CURLOPT_SSL_VERIFYSTATUS functionality.
-
-- [Alessandro Ghedini brought this change]
+ ...From "mutual" to "mutual_auth" which better describes what it is.
- nss: add support for the Certificate Status Request TLS extension
+- sasl_sspi: Corrected some of the GSSAPI security message error codes
- Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8.
+ Corrected a number of the error codes that can be returned from the
+ Curl_sasl_create_gssapi_security_message() function when things go
+ wrong.
- This requires NSS 3.15 or higher.
+ It makes more sense to return CURLE_BAD_CONTENT_ENCODING when the
+ inbound security challenge can't be decoded correctly or doesn't
+ contain the KERB_WRAP_NO_ENCRYPT flag and CURLE_OUT_OF_MEMORY when
+ EncryptMessage() fails. Unfortunately the previous error code of
+ CURLE_RECV_ERROR was a copy and paste mistakes on my part and should
+ have been correct in commit 4b491c675f :(
-- [Alessandro Ghedini brought this change]
+- docs: Escaped single backslash
- gtls: add support for the Certificate Status Request TLS extension
+- TODO: Updated following GSSAPI (Kerberos V5) additions
- Also known as "status_request" or OCSP stapling, defined in RFC6066 section 8.
+ Updated "FTP 4.6 GSSAPI via Windows SSPI" and "SASL 14.1 Other
+ authentication mechanisms" following recent additions.
- This requires GnuTLS 3.1.3 or higher to build, however it's recommended to use
- at least GnuTLS 3.3.11 since previous versions had a bug that caused the OCSP
- response verfication to fail even on valid responses.
+ Added SASL 14.2 GSSAPI via GSS-API libraries.
-- [Alessandro Ghedini brought this change]
+- CURLOPT_USERNAME.3: Added Kerberos V5 and NTLM domain information
+
+ This repeats what has already been documented in both the curl manpage
+ and CURLOPT_USERPWD documentation but is provided here for completeness
+ as someone may not especially read the latter when using libcurl.
- url: add CURLOPT_SSL_VERIFYSTATUS option
+- CURLOPT_USERPWD.3: Updated following Kerberos V5 SSPI changes
- This option can be used to enable/disable certificate status verification using
- the "Certificate Status Request" TLS extension defined in RFC6066 section 8.
+ Added information about Kerberos V5 requiring the domain part in the
+ user name.
- This also adds the CURLE_SSL_INVALIDCERTSTATUS error, to be used when the
- certificate status verification fails, and the Curl_ssl_cert_status_request()
- function, used to check whether the SSL backend supports the status_request
- extension.
-
-- TheArtOfHttpScripting: skip the date at the top, we have git
+ Mentioned that the user name can be specified in UPN format, and not
+ just in Down-Level Logon Name format, following the information
+ added in commit 7679cb3fa8 reworking the exisitng information in the
+ process.
-- TheArtOfHttpScripting: phrase it TLS lib agnostic
+- docs: Added Kerberos V5 and NTLM domain information to --user
-Steve Holme (16 Jan 2015)
-- TODO: Added some SMB ideas
+- docs: Added Kerberos V5 to the --user SSPI current credentials usage
-- RELEASE-NOTES: Synced with 5f09947d28
+- sasl_sspi: Tell the server we don't support a GSSAPI receive buffer
-- build-openssl.bat: Added check for Perl installation
+- smtp: Added support for GSSAPI (Kerberos V5) authentication via Windows SSPI
-- checksrc.bat: Better detection of Perl installation
+- pop3: Added support for GSSAPI (Kerberos V5) authentication via Windows SSPI
-- curl_endian: Fixed build when 64-bit integers are not supported
-
- Bug: http://curl.haxx.se/mail/lib-2015-01/0094.html
- Reported-by: John E. Malmberg
-
-Daniel Stenberg (15 Jan 2015)
-- [Yun SangHo brought this change]
+- imap: Added support for GSSAPI (Kerberos V5) authentication via Windows SSPI
- curl.h: remove extra space
+- email: Added mutual authentication flag
-- Curl_pretransfer: reset expected transfer sizes
-
- Reported-by: Mohammad AlSaleh
- Bug: http://curl.haxx.se/mail/lib-2015-01/0065.html
+Daniel Stenberg (15 Aug 2014)
+- RELEASE-NOTES: synced with 0187c9e11d079
-Marc Hoersken (12 Jan 2015)
-- curl_schannel.c: mark session as removed from cache if not freed
+- http: fix the Content-Range: parser
- If the session is still used by active SSL/TLS connections, it
- cannot be closed yet. Thus we mark the session as not being cached
- any longer so that the reference counting mechanism in
- Curl_schannel_shutdown is used to close and free the session.
+ ... to handle "*/[total]". Also, removed the strange hack that made
+ CURLOPT_FAILONERROR on a 416 response after a *RESUME_FROM return
+ CURLE_OK.
- Reported-by: Jean-Francois Durand
+ Reported-by: Dimitrios Siganos
+ Bug: http://curl.haxx.se/mail/lib-2014-06/0221.html
-Steve Holme (9 Jan 2015)
-- RELEASE-NOTES: Synced with d21b66835f
+Steve Holme (14 Aug 2014)
+- email: Introduced the GSSAPI states
-Guenter Knauf (9 Jan 2015)
-- Merge pull request #134 from vszakats/mingw-m64
+- curl_sasl_sspi.c: Fixed more compilation warnings from commit 4b491c675f
+
+ warning: unused variable 'resp'
- add -m64 CFLAGS when targeting mingw64, add -m32/-m64 to LDFLAGS
+ warning: no previous prototype for 'Curl_sasl_gssapi_cleanup'
-- Merge pull request #136 from vszakats/mingw-allow-custom-cflags
+- SHA-1: 61c93383b7f6cf79d12ff99e9dced1d1cc2a7064
- mingw build: allow to pass custom CFLAGS
+ * curl_sasl_sspi.c: Fixed compilation warning from commit 4b491c675f
+
+ warning: declaration of 'result' shadows a previous local
-Daniel Stenberg (9 Jan 2015)
-- NSS: fix compiler error when built http2-enabled
+- curl_sasl.h: Fixed compilation error from commit 4b491c675f
+
+ warning: 'struct kerberos5data' declared inside parameter list
+
+ Due to missing forward declaration.
-Steve Holme (9 Jan 2015)
-- gssapi: Remove need for duplicated GSS_C_NT_HOSTBASED_SERVICE definitions
+- urldata.h: Fixed compilation warnings from commit 3ec253532e
- Better code reuse and consistency in calls to gss_import_name().
+ warning: extra tokens at end of #endif directive
-Viktor Szakats (9 Jan 2015)
-- mingw build: allow to pass custom CFLAGS
+- sasl_sspi: Added GSSAPI message functions
-Daniel Stenberg (8 Jan 2015)
-- FTP: if EPSV fails on IPV6 connections, bail out
+- urldata: Introduced a GSSAPI (Kerberos V5) data structure
- ... instead of trying PASV, since PASV can't work with IPv6.
+ Added a kerberos5data structure which is similar in nature to the
+ ntlmdata and negotiatedata structures.
+
+- sspi: Moved KERB_WRAP_NO_ENCRYPT from socks_sspi module
- Reported-by: Vojtěch Král
+ In preparation for the upcoming SSPI implementation of GSSAPI
+ authentication, moved the definition of KERB_WRAP_NO_ENCRYPT from
+ socks_sspi.c to curl_sspi.h allowing it to be shared amongst other
+ SSPI based code.
+
+Daniel Stenberg (13 Aug 2014)
+- mk-ca-bundle.pl: add missing $
-- FTP: fix IPv6 host using link-local address
+- mk-ca-bundle.pl: switched to using hg.mozilla.org
- ... and make sure we can connect the data connection to a host name that
- is longer than 48 bytes.
+ ... as mxr.mozilla.org is due to be retired.
- Also simplifies the code somewhat by re-using the original host name
- more, as it is likely still in the DNS cache.
+ The new host doesn't support If-Modified-Since nor ETags, meaning that
+ the script will now defer to download and do a post-transfer checksum
+ check to see if a new output is to be generated. The new output format
+ will hold the SHA1 checksum of the source file for that purpose.
- Original-Patch-by: Vojtěch Král
- Bug: http://curl.haxx.se/bug/view.cgi?id=1468
+ We call this version 1.22
+
+ Reported-by: Ed Morley
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1409
-Steve Holme (8 Jan 2015)
-- [Sam Schanken brought this change]
+- [Jose Alf brought this change]
- winbuild: Added option to build with c-ares
+ openssl: fix version report for the 0.9.8 branch
- Added support for a WITH_CARES option to be used when invoking nmake
- via Makefile.vc. This option enables linking against both the DLL and
- static versions of the c-ares libraries, as well as the debug and
- release varients, depending on the value of DEBUG. The USE_ARES
- preprocessor symbol is also defined.
+ Fixed libcurl to correctly output the newer versions of OpenSSL 0.9.8,
+ starting from openssl-0.9.8za.
-Guenter Knauf (8 Jan 2015)
-- NetWare build: added TLS-SRP enabled build.
+- [Frank Meier brought this change]
-Steve Holme (8 Jan 2015)
-- sasl_gssapi: Fixed build on NetBSD with built-in GSS-API
+ create_conn: prune dead connections
+
+ Bringing back the old functionality that was mistakenly removed when the
+ connection cache was remade. When creating a new connection, all the
+ existing ones are checked and those that are known to be dead get
+ disconnected for real and removed from the connection cache. It helps
+ the cache from holding on to very many stale connections and aids in
+ keeping down the number of system sockets in wait states.
+
+ Help-by: Jonatan Vela <jonatan.vela@ergon.ch>
- Bug: http://curl.haxx.se/bug/view.cgi?id=1469
- Reported-by: Thomas Klausner
+ Bug: http://curl.haxx.se/mail/lib-2014-06/0189.html
-Viktor Szakats (8 Jan 2015)
-- add -m64 clags when targeting mingw64, add -m32/-m64 to LDFLAGS
+Kamil Dudka (11 Aug 2014)
+- docs/SSLCERTS: update the section about NSS database
+
+ Bug: http://curl.haxx.se/mail/lib-2014-07/0335.html
+ Reported-by: David Shaw
-Daniel Stenberg (8 Jan 2015)
-- bump: start working towards 7.40.1
+Daniel Stenberg (11 Aug 2014)
+- [Peter Wang brought this change]
-- THANKS: 14 new contributors from the 7.40.0 release notes
+ Curl_poll + Curl_wait_ms: fix timeout return value
+
+ Curl_poll and Curl_wait_ms require the fix applied to Curl_socket_check
+ in commits b61e8b8 and c771968:
+
+ When poll or select are interrupted and coincides with the timeout
+ elapsing, the functions return -1 indicating an error instead of 0 for
+ the timeout.
-Version 7.40.0 (7 Jan 2015)
+Steve Holme (10 Aug 2014)
+- config-tpf.h: Fixed up line lengths > 79 characters
-Daniel Stenberg (7 Jan 2015)
-- RELEASE-NOTES: version 7.40.0
+- config-symbian.h: Fixed up line lengths > 79 characters
-- darwinssl: fix session ID keys to only reuse identical sessions
+- tool_hugehelp.c.cvs: Added copyright
- ...to avoid a session ID getting cached without certificate checking and
- then after a subsequent _enabling_ of the check libcurl could still
- re-use the session done without cert checks.
-
- Bug: http://curl.haxx.se/docs/adv_20150108A.html
- Reported-by: Marc Hesse
+ Added copyright due to warning from checksrc.pl.
-- tests: make sure CRLFs can't be used in URLs passed to proxy
-
- Bug: http://curl.haxx.se/docs/adv_20150108B.html
+- RELEASE-NOTES: Synced with cd6ecf6a89
-- url-parsing: reject CRLFs within URLs
+- sasl_sspi: Fixed hard coded buffer for response generation
- Bug: http://curl.haxx.se/docs/adv_20150108B.html
- Reported-by: Andrey Labunets
-
-Steve Holme (7 Jan 2015)
-- ldap: Convert attribute output to UTF-8 when Unicode
+ Given the SSPI package info query indicates a token size of 4096 bytes,
+ updated to use a dynamic buffer for the response message generation
+ rather than a fixed buffer of 1024 bytes.
-- ldap: Convert DN output to UTF-8 when Unicode
+- sasl_sspi: Fixed missing free of challenge buffer on SPN failure
-Daniel Stenberg (7 Jan 2015)
-- hostip: remove 'stale' argument from Curl_fetch_addr proto
+- http_negotiate_sspi: Tidy up to remove the get_gss_name() function
- Also, remove the log output of the resolved name is NOT in the cache in
- the spirit of only telling when something is actually happening.
+ Due to the reduction of code in commit 3b924b29 of get_gss_name() the
+ function isn't necessary anymore.
-Steve Holme (7 Jan 2015)
-- ldap/imap: Fixed spelling mistake in comments and variable names
+- http_negotiate_sspi: Use a dynamic buffer for SPN generation
- Reported-by: Michael Osipov
+ Updated to use a dynamic buffer for the SPN generation via the recently
+ introduced Curl_sasl_build_spn() function rather than a fixed buffer of
+ 1024 characters, which should have been more than enough, but by using
+ the new function removes the need for another variable sname to do the
+ wide character conversion in Unicode builds.
-Daniel Stenberg (7 Jan 2015)
-- RELEASE-NOTES: updated with ./contributors.sh output
+- sasl: Tidy up to rename SPN variable from URI
-Dan Fandrich (5 Jan 2015)
-- curl_multibyte.h: Eliminated some trailing whitespace
+- sasl: Use a dynamic buffer for SPN generation
+
+ Updated Curl_sasl_create_digest_md5_message() to use a dynamic buffer
+ for the SPN generation via the recently introduced Curl_sasl_build_spn()
+ function rather than a fixed buffer of 128 characters.
-Steve Holme (4 Jan 2015)
-- RELEASE-NOTES: Synced with ea93252ef1
+- sasl_sspi: Fixed SPN not being converted to wchar under Unicode builds
+
+ Curl_sasl_create_digest_md5_message() would simply cast the SPN variable
+ to a TCHAR when calling InitializeSecurityContext(). This meant that,
+ under Unicode builds, it would not be valid wide character string.
+
+ Updated to use the recently introduced Curl_sasl_build_spn() function
+ which performs the correct conversion for us.
-- ldap: Fixed Unicode usage for all Win32 builds
+- sasl: Introduced Curl_sasl_build_spn() for building a SPN
- Otherwise, the fixes in the previous commits would only be applicable
- to IDN and SSPI based builds and not others such as OpenSSL with LDAP
- enabled.
+ Various parts of the libcurl source code build a SPN for inclusion in
+ authentication data. This information is either used by our own native
+ generation routines or passed to authentication functions in third-party
+ libraries such as SSPI. However, some of these instances use fixed
+ buffers rather than dynamically allocated ones and not all of those that
+ should, convert to wide character strings in Unicode builds.
+
+ Implemented a common function that generates a SPN and performs the
+ wide character conversion where necessary.
-- ldap: Fixed memory leak from commit efb64fdf80
+- sasl_sspi: Fixed memory leak with not releasing Package Info struct
+
+ Curl_sasl_create_digest_md5_message() wouldn't free the Package Info
+ structure after QuerySecurityPackageInfo() had allocated it.
-- ldap: Fix memory leak from commit 3a805c5cc1
+- [Michael Osipov brought this change]
-- ldap: Fixed attribute variable warnings when Unicode is enabled
+ docs: Update SPNEGO and GSS-API related doc sections
- Use 'TCHAR *' for local attribute variable rather than 'char *'.
+ Reflect recent changes in SPNEGO and GSS-API code in the docs.
+ Update them with appropriate namings and remove visible spots for
+ GSS-Negotiate.
-- ldap: Fixed DN variable warnings when Unicode is enabled
+- sspi: Minor code tidy up to standardise coding style
- Use 'TCHAR *' for local DN variable rather than 'char *'.
-
-- ldap: Remove the unescape_elements() function
+ Following the recent changes and in attempt to align the SSPI based
+ authentication code performed the following:
- Due to the recent modifications this function is no longer used.
+ * Use NULL and SECBUFFVERSION rather than hard coded constants.
+ * Avoid comparison of zero in if statements.
+ * Standardised the buf and desc setup code.
-- ldap.c: Fixed compilation warning
+- schannel: Fixed compilation warning in vtls.c
- ldap.c:98: warning: extra tokens at end of #endif directive
-
-- ldap: Fixed support for Unicode filter in Win32 search call
+ vtls.c:688:43: warning: unused parameter 'data'
-- ldap.c: Fixed compilation warning
+- tool_getparam.c: Fixed compilation warning
- ldap.c:802: warning: comparison between signed and unsigned integer
- expressions
+ warning: `orig_opt' might be used uninitialized in this function
-- ldap: Fixed support for Unicode attributes in Win32 search call
+- RELEASE-NOTES: Synced with 159c3aafd8
-- ldap: Fixed memory leak from commit efb64fdf80
-
- The unescapped DN was not freed after a successful character conversion.
+Daniel Stenberg (8 Aug 2014)
+- curl_ntlm_msgs: make < 80 columns wide
-- ldap.c: Fixed compilation error
+Steve Holme (8 Aug 2014)
+- ntlm: Fixed hard coded buffer for SSPI based auth packet generation
- ldap.c:738: error: macro "LDAP_TRACE" passed 2 arguments, but takes
- just 1
+ Given the SSPI package info query indicates a token size of 2888 bytes,
+ and as with the Winbind code and commit 9008f3d56, use a dynamic buffer
+ for the Type-1 and Type-3 message generation rather than a fixed buffer
+ of 1024 bytes.
-- ldap.c: Fixed compilation warning
+- ntlm: Added support for SSPI package info query
- ldap.c:89: warning: extra tokens at end of #endif directive
+ Just as with the SSPI implementations of Digest and Negotiate added a
+ package info query so that libcurl can a) return a more appropriate
+ error code when the NTLM package is not supported and b) it can be of
+ use later to allocate a dynamic buffer for the Type-1 and Type-3
+ output tokens rather than use a fixed buffer of 1024 bytes.
-- ldap: Fixed support for Unicode DN in Win32 search call
+Daniel Stenberg (7 Aug 2014)
+- http2: added some more logging for debugging stream problems
-- ldap: Fixed Unicode user and password in Win32 bind calls
+- [Tatsuhiro Tsujikawa brought this change]
-- ldap: Fixed Unicode host name in Win32 initialisation calls
+ HTTP/2: Reset promised stream, not its associated stream.
-- ldap: Use host.dispname for infof() connection failure messages
-
- As host.name may be encoded use dispname for infof() failure messages.
+- [Tatsuhiro Tsujikawa brought this change]
-- ldap: Prefer 'CURLcode result' for curl result codes
+ HTTP/2: Move :authority before non-pseudo header fields
-- ldap: Pass write length in all Curl_client_write() calls
-
- As we get the length for the DN and attribute variables, and we know
- the length for the line terminator, pass the length values rather than
- zero as this will save Curl_client_write() from having to perform an
- additional strlen() call.
+- http2: show the received header for better debugging
-- ldap: Fixed attribute memory leaks on failed client write
+- openssl: replace call to OPENSSL_config
- Fixed memory leaks from commit 086ad79970 as was noted in the commit
- comments.
-
-- ldap: Fixed DN memory leaks on failed client write
+ OPENSSL_config() is "strongly recommended" to use but unfortunately that
+ function makes an exit() call on wrongly formatted config files which
+ makes it hard to use in some situations. OPENSSL_config() itself calls
+ CONF_modules_load_file() and we use that instead and we ignore its
+ return code!
- Fixed memory leaks from commit 086ad79970 as was noted in the commit
- comments.
+ Reported-by: Jan Ehrhardt
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1401
-- curl_ntlm_core.c: Fixed compilation warning from commit 1cb17b2a5d
-
- curl_ntlm_core.c:146: warning: passing 'DES_cblock' (aka 'unsigned char
- [8]') to parameter of type 'char *' converts
- between pointers to integer types with different
- sign
+Dan Fandrich (7 Aug 2014)
+- [Fabian Keil brought this change]
-- ntlm: Use extend_key_56_to_64() for all cryptography engines
+ runtests.pl: Pad test case numbers with up to three zeroes
- Rather than duplicate the code in setup_des_key() for OpenSSL and in
- extend_key_56_to_64() for non-OpenSSL based crypto engines, as it is
- the same, use extend_key_56_to_64() for all engines.
+ Test case numbers with four digits have been available for a
+ while now.
-- RELEASE-NOTES: Synced with 34f0bd110f
+Steve Holme (7 Aug 2014)
+- docs: Added Negotiate to the SSPI current credentials usage description
-- curl_ntlm_core.c: Fixed compilation warning
+- TODO: HTTP Digest via Windows SSPI
+
+- TODO: FTP GSSAPI via Windows SSPI
+
+- http_negotiate_sspi: Fixed specific username and password not working
- curl_ntlm_core.c:458: warning: 'ascii_uppercase_to_unicode_le' defined
- but not used
+ Bug: http://curl.haxx.se/mail/lib-2014-06/0224.html
+ Reported-by: Leonardo Rosati
-- endian: Fixed bit-shift in 64-bit integer read functions
+- http_negotiate_sspi: Fixed endless unauthorized loop in commit 6bc76194e8
- From commit 43792592ca and 4bb5a351b2.
+ If the server rejects our authentication attempt and curl hasn't
+ called CompleteAuthToken() then the status variable will be
+ SEC_I_CONTINUE_NEEDED and not SEC_E_OK.
- Reported-by: Michael Osipov
+ As such the existing detection mechanism for determining whether or not
+ the authentication process has finished is not sufficient.
+
+ However, the WWW-Authenticate: Negotiate header line will not contain
+ any data when the server has exhausted the negotiation, so we can use
+ that coupled with the already allocated context pointer.
-- smb: Use endian functions for reading NBT and message size values
+Daniel Stenberg (5 Aug 2014)
+- RELEASE-NOTES: synced with 5b37db44a3eb
-- endian: Added big endian read functions
+Dan Fandrich (5 Aug 2014)
+- parsedate.c: fix the return code for an overflow edge condition
-- endian: Added 64-bit integer read function
-
-- COPYING: Bumped copyright year to 2015
+Daniel Stenberg (5 Aug 2014)
+- [Toby Peterson brought this change]
-- version: Bump copyright year to 2015
+ darwinssl: don't use strtok()
+
+ The GetDarwinVersionNumber() function uses strtok, which is not
+ thread-safe.
-- smb.c: Fixed compilation warnings
+- Curl_ossl_version: adapted to detect BoringSSL
- smb.c:780: warning: passing 'char *' to parameter of type 'unsigned
- char *' converts between pointers to integer types with
- different sign
- smb.c:781: warning: passing 'char *' to parameter of type 'unsigned
- char *' converts between pointers to integer types with
- different sign
- smb.c:804: warning: passing 'char *' to parameter of type 'unsigned
- char *' converts between pointers to integer types with
- different sign
+ This seems to be the way it should work. Right now we can't build with
+ BoringSSL and try this out properly due to a minor API breakage.
-- smb: Use endian functions for reading length and offset values
+- Curl_ossl_version: detect and show libressl
+
+ LibreSSL is otherwise OpenSSL API compliant (so far)
-- endian: Added 16-bit integer write function
+- [Tatsuhiro Tsujikawa brought this change]
-- endian: Fixed Linux compilation issues
+ HTTP/2: Fix infinite loop in readwrite_data()
- Having files named endian.[c|h] seemed to cause issues under Linux so
- renamed them both to have the curl_ prefix in the filenames.
+ To prevent infinite loop in readwrite_data() function when stream is
+ reset before any response body comes, reset closed flag to false once
+ it is evaluated to true.
-- [Julien Nabet brought this change]
+Dan Fandrich (3 Aug 2014)
+- gtls: only define Curl_gtls_seed if Nettle is not being used
- lib1900.c: Fixed cppcheck error
-
- lib1900.c:182: (style) Array index 'handlenum' is used before limits
- check
-
- Bug: https://github.com/bagder/curl/pull/133
+- ssl: provide Curl_ssl_backend even if no SSL library is available
-- endian: Added standard function descriptions
+Daniel Stenberg (2 Aug 2014)
+- [Tatsuhiro Tsujikawa brought this change]
-- endian: Renamed functions for curl API naming convention
+ HTTP2: Support expect: 100-continue
+
+ "Expect: 100-continue", which was once deprecated in HTTP/2, is now
+ resurrected in HTTP/2 draft 14. This change adds its support to
+ HTTP/2 code. This change also includes stricter header field
+ checking.
-- endian: Moved write functions to new module
+- CURLOPT_SSL_VERIFYPEER.3. add a warning about disabling it
-- endian: Moved read functions to new module
+- FEATURES: minor update
-- endian: Introduced endian module
+- openssl: make ossl_send return CURLE_OK better
- To allow the little endian functions, currently used in two of the NTLM
- source files, to be used by other modules such as the SMB module.
+ Previously it only returned a CURLcode for errors, which is when it
+ returns a different size than what was passed in to it.
+
+ The http2 code only checked the curlcode and thus failed.
-- sepheaders.c: Applied curl oding standards
+- RELEASE-NOTES: synced with 7bb4c8cadb5d0
-- [Julien Nabet brought this change]
+- [Michael Wallner brought this change]
- sepheaders.c: Fixed resource leak on failure
+ CURLOPT_HEADEROPT.3: typo: do -> to
-- vtls: Use '(void) arg' for unused parameters
-
- Prefer void for unused parameters, rather than assigning an argument to
- itself as a) unintelligent compilers won't optimize it out, b) it can't
- be used for const parameters, c) it will cause compilation warnings for
- clang with -Wself-assign and d) is inconsistent with other areas of the
- curl source code.
+- [Marcel Raad brought this change]
-- smb.c: Fixed compilation warning
+ schannel: use CryptGenRandom for random numbers
- smb.c:586: warning: conversion to 'short unsigned int' from 'int' may
- alter its value
+ This function is available for every Windows version since Windows 95/NT.
+
+ reference:
+ http://msdn.microsoft.com/en-us/library/windows/desktop/aa379942.aspx
-- [Bill Nagel brought this change]
+- curl_version_info.3: 'ssl_version_num' is always 0
+
+ ... and has been so since 2005
- smb: Use the connection's upload buffer
+- ssl: generalize how the ssl backend identifier is set
- Use the connection's upload buffer instead of allocating our own send
- buffer.
+ Each backend now defines CURL_SSL_BACKEND accordingly. Added the *AXTLS
+ one which was missing previously.
-- RELEASE-NOTES: Synced with 1933f9d33c
+Dan Fandrich (31 Jul 2014)
+- axtls: define curlssl_random using axTLS's PRNG
-- schannel: Moved the ISC return flag definitions to the SSPI module
+- cyassl: fix the test for ASN_NO_SIGNER_E
- Moved our Initialize Security Context return attribute definitions to
- the SSPI module, as a) these can be used by other SSPI based providers
- and b) the ISC required attributes are defined there.
+ It's an enum so a macro test won't work. The CyaSSL changelog doesn't
+ say exactly when this error code was introduced, but it's likely
+ to be 2.7.0.
-- [Bill Nagel brought this change]
+- cyassl: use RNG_GenerateBlock to generate a good random number
- smb: Close the connection after a failed client write
+- opts: fixed some typos
-- darwinssl: Fixed compilation warning
+- smtp: fixed a segfault during test 1320 torture test
- vtls.c:683:43: warning: unused parameter 'data'
+ Under these circumstances, the connection hasn't been fully established
+ and smtp_connect hasn't been called, yet smtp_done still calls the state
+ machine which dereferences the NULL conn pointer in struct pingpong.
-- sockfilt.c: Fixed compilation warnings
+Daniel Stenberg (30 Jul 2014)
+- vtls: repair build without TLS support
- sockfilt.c:288: warning: conversion to 'DWORD' from 'size_t' may alter
- its value
- sockfilt.c:291: warning: conversion to 'DWORD' from 'size_t' may alter
- its value
- sockfilt.c:323: warning: conversion to 'DWORD' from 'size_t' may alter
- its value
- sockfilt.c:326: warning: conversion to 'DWORD' from 'size_t' may alter
- its value
+ ... by defining Curl_ssl_random() properly
-- test1509: Fixed compilation warning
+- polarssl: provide a (weak) random function
- lib1509.c:93:18: warning: conversion to 'long int' from 'size_t' may
- alter its value
+ This now provides a weak random function since PolarSSL doesn't have a
+ quick and easy way to provide a good one. It does however provide the
+ framework to make one so it _can_ and _should_ be done...
-- test556: Fixed compilation warning
-
- lib556.c:90: warning: conversion to 'unsigned int' from 'size_t' may
- alter its value
+- [Michael Wallner brought this change]
-- sasl_gssapi: Fixed use of dummy username with real username
+ curl_tlsinfo -> curl_tlssessioninfo
-- vtls: Fixed compilation warning and an ignored return code
+- cyassl: use the default (weeker) random
- curl_schannel.h:123: warning: right-hand operand of comma expression
- has no effect
+ I couldn't find any dedicated function in its API to get a "good" random
+ with.
+
+- cyassl: made it compile with version 2.0.6 again
- Some instances of the curlssl_close_all() function were declared with a
- void return type whilst others as int. The schannel version returned
- CURLE_NOT_BUILT_IN and others simply returned zero, but in all cases the
- return code was ignored by the calling function Curl_ssl_close_all().
+ ASN_NO_SIGNER_E didn't exist back then!
+
+- vtls: make the random function mandatory in the TLS backend
- For the time being and to keep the internal API consistent, changed all
- declarations to use a void return type.
+ To force each backend implementation to really attempt to provide proper
+ random. If a proper random function is missing, then we can explicitly
+ make use of the default one we use when TLS support is missing.
- To reduce code we might want to consider removing the unimplemented
- versions and use a void #define like schannel does.
+ This commit makes sure it works for darwinssl, gnutls, nss and openssl.
-Daniel Stenberg (28 Dec 2014)
-- TODO: 2.3 Better support for same name resolves
+- libcurl.m4: include the standard source header
+
+ ... with permission from David Shaw
-Steve Holme (28 Dec 2014)
-- test1520: Fixed initial teething problems
+Kamil Dudka (28 Jul 2014)
+- nss: do not check the version of NSS at run time
- * Missing initialisation of upload status caused a seg fault
- * Missing data termination caused corrupt data to be uploaded
- * Data verification should be performed in <upload> element
- * Added missing recipient list cleanup
+ The minimal required version of NSS is 3.14.x so it does not make sense
+ to check for NSS 3.12.0+ at run time.
-- test1520: Fixed compilation errors
+Daniel Stenberg (28 Jul 2014)
+- [Anthon Pang brought this change]
-- tests: Added test for bug #1456
+ curl.h: bring back CURLE_OBSOLETE16
+
+ Removing defines, even obsolete ones that haven't been used for a very
+ long time, still break a lot of applications.
+
+ Bug: https://github.com/bagder/curl/pull/106
-- checksrc.bat: Fixed a problem opening files with spaces in the filename
+Dan Fandrich (26 Jul 2014)
+- [Fabian Keil brought this change]
-- openldap: Prefer use of 'CURLcode result'
+ tests: Fix a couple of incomplete response lines
-- openldap: Use 'LDAPMessage *msg' for messages
-
- This frees up the 'result' variable for CURLcode based result codes.
+- [Fabian Keil brought this change]
-- nss: Don't ignore Curl_extract_certinfo() OOM failure
+ runtests.pl: Remove filteroff() which hasn't been used since 2001
-- nss: Don't ignore Curl_ssl_init_certinfo() OOM failure
+- [Fabian Keil brought this change]
-- nss: Use 'CURLcode result' for curl result codes
+ runtests.pl: Don't expect $TESTDIR/DISABLED to exist
- ...and don't use CURLE_OK in failure/success comparisons.
+ If a non-standard $TESTDIR is used the file may not be necessary.
+
+ Previously a "missing" file resulted in the warning:
+ readline() on closed filehandle D at ./runtests.pl line 4940.
-- getinfo: Code style policing
+- [Fabian Keil brought this change]
-- getinfo: Use 'CURLcode result' for curl result codes
+ getpart.pm: Fix a comment typo
-- darwinssl: Use 'CURLcode result' for curl result codes
+Daniel Stenberg (25 Jul 2014)
+- c-ares: fix build without IPv6 support
+
+ Bug: http://curl.haxx.se/mail/lib-2014-07/0337.html
+ Reported-by: Spork Schivago
-- polarssl: Use 'CURLcode result' for curl result codes
+- Curl_base64url_encode: unit-tested in 1302
-- docs: Updated following the addition of SASL GSSAPI via GSS-API libraries
+- base64: added Curl_base64url_encode()
- As this feature has been implemented for 7.40.0.
-
-- asiohiper.cpp: No need to initialise members of ConnInfo
+ This is now used by the http2 code. It has two different symbols at the
+ end of the base64 table to make the output "url safe".
- ...as calloc() automatically clears the area of memory with zeros.
+ Bug: https://github.com/tatsuhiro-t/nghttp2/issues/62
-- asiohiper.cpp: Updated for curl coding standards
-
- ...with the exception of the start of block statement curly brackets.
+- [Marcel Raad brought this change]
-- code/docs: Use correct case for IPv4 and IPv6
+ SSPI Negotiate: Fix 3 memory leaks
- For consistency, as we seem to have a bit of a mixed bag, changed all
- instances of ipv4 and ipv6 in comments and documentations to use the
- correct case.
+ Curl_base64_decode allocates the output string by itself and two other
+ strings were not freed either.
-- runtests: Fixed detection of Unix Sockets feature
-
- ...following change in curl --version output.
+- symbols: CURL_VERSION_GSSNEGOTIATE is deprecated
-- code/docs: Use Unix rather than UNIX to avoid use of the trademark
-
- Use Unix when generically writing about Unix based systems as UNIX is
- the trademark and should only be used in a particular product's name.
+- test1013.pl: GSS-Negotiate doesn't exist as a feature anymore
-- ip2ip.c: Fixed compilation warning when IPv6 Scope ID not supported
-
- if2ip.c:119: warning: unused parameter 'remote_scope_id'
-
- ...and some minor code style policing in the same function.
+- [Sergey Nikulov brought this change]
-- vtls: Don't set cert info count until memory allocation is successful
+ libtest: fixed duplicated line in Makefile
- Otherwise Curl_ssl_init_certinfo() can fail and set the num_of_certs
- member variable to the requested count, which could then be used
- incorrectly as libcurl closes down.
+ Bug: https://github.com/bagder/curl/pull/105
-- vtls: Use CURLcode for Curl_ssl_init_certinfo() return type
-
- The return type for this function was 0 on success and 1 on error. This
- was then examined by the calling functions and, in most cases, used to
- return CURLE_OUT_OF_MEMORY.
-
- Instead use CURLcode for the return type and return the out of memory
- error directly, propagating it up the call stack.
+Patrick Monnerat (23 Jul 2014)
+- GSSAPI: remove useless *_MECHANISM defines.
-- configure: Use camel case for UNIX sockets feature output
+Daniel Stenberg (23 Jul 2014)
+- findprotocol: show unsupported protocol within quotes
- To match the curl --version output.
+ ... to aid when for example prefixed with a space or other weird
+ character.
-Marc Hoersken (26 Dec 2014)
-- sockfilt.c: Reduce the number of individual memory allocations
+Patrick Monnerat (23 Jul 2014)
+- GSSAPI: private export mechanisms OIDs. OS400: Make RPG binding up to date.
+
+Daniel Stenberg (23 Jul 2014)
+- [Marcel Raad brought this change]
+
+ conncache: fix compiler warning
- Merge multiple internal arrays into one, even if some variables
- will not not be used. They are all created with the number of
- file descriptors as their size.
+ warning C4267: '=' : conversion from 'size_t' to 'long', possible loss
+ of data
- Also fix possible thread handle leak in CloseHandle-loop.
-
-- sockfilt.c: Replace 100ms sleep with thread throttle
+ The member connection_id of struct connectdata is a long (always a
+ 32-bit signed integer on Visual C++) and the member next_connection_id
+ of struct conncache is a size_t, so one of them should be changed to
+ match the other.
- Improves performance of test cases 574 and 575 by 50%.
+ This patch the size_t in struct conncache to long (the less invasive
+ change as that variable is only ever used in a single code line).
- A value of zero causes the thread to relinquish the remainder
- of its time slice to any other thread of equal priority that is
- ready to run. If there are no other threads of equal priority
- ready to run, the function returns immediately, and the thread
- continues execution.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1399
+
+- RELEASE-NOTES: synced with 81cd24adb8b
+
+- http2: more and better error checking
- http://msdn.microsoft.com/library/windows/desktop/ms686307.aspx
+ 1 - fixes the warnings when built without http2 support
+
+ 2 - adds CURLE_HTTP2, a new error code for errors detected by nghttp2
+ basically when they are about http2 specific things.
-Steve Holme (25 Dec 2014)
-- tool_help: Use camel case for UNIX sockets feature output
+Dan Fandrich (23 Jul 2014)
+- cyassl.c: return the correct error code on no CA cert
- In line with the other features listed in the --version output,
- capitalise the UNIX socket feature.
+ CyaSSL 3.0.0 returns a unique error code if no CA cert is available,
+ so translate that into CURLE_SSL_CACERT_BADFILE when peer verification
+ is requested.
-- vtls: Use bool for Curl_ssl_getsessionid() return type
+Daniel Stenberg (23 Jul 2014)
+- symbols-in-versions: new SPNEGO/GSS-API symbols in 7.38.0
+
+- test1013.pl: remove SPNEGO/GSS-API tweaks
- The return type of this function is a boolean value, and even uses a
- bool internally, so use bool in the function declaration as well as
- the variables that store the return value, to avoid any confusion.
+ No longer necessary after Michael Osipov's rework
-- schannel: Minor code style policing for casts
+- http_negotiate: remove unused variable
-- schannel: Prefer 'CURLcode result' for curl result codes
+- [Michael Osipov brought this change]
-- cyassl: Prefer 'CURLcode result' for curl result codes
+ docs: Improve inline GSS-API naming in code documentation
-- tool_xattr: Use 'CURLcode result' for curl result codes
+- [Michael Osipov brought this change]
-- curl_ntlm_core.c: Fixed compilation warnings
+ curl.h/features: Deprecate GSS-Negotiate macros due to bad naming
- curl_ntlm_core.c:301: warning: pointer targets in passing argument 2 of
- 'CryptImportKey' differ in signedness
- curl_ntlm_core.c:310: warning: passing argument 6 of 'CryptEncrypt' from
- incompatible pointer type
- curl_ntlm_core.c:540: warning: passing argument 4 of 'CryptGetHashParam'
- from incompatible pointer type
+ - Replace CURLAUTH_GSSNEGOTIATE with CURLAUTH_NEGOTIATE
+ - CURL_VERSION_GSSNEGOTIATE is deprecated which
+ is served by CURL_VERSION_SSPI, CURL_VERSION_GSSAPI and
+ CURUL_VERSION_SPNEGO now.
+ - Remove display of feature 'GSS-Negotiate'
-- RELEASE-NOTES: Synced with 8830df8b66
+- [Michael Osipov brought this change]
-- gtls: Use preferred 'CURLcode result'
+ configure/features: Add feature and version info for GSS-API and SPNEGO
-- openldap: Use standard naming for setup connection function
-
- Renamed ldap_setup() to ldap_setup_connection() to follow more widely
- used function naming.
+- [Michael Osipov brought this change]
-- rtmp: Use standard naming for setup connection function
+ HTTP: Remove checkprefix("GSS-Negotiate")
- Renamed rtmp_setup() to rtmp_setup_connection() to follow more widely
- used function naming.
+ That auth mech has never existed neither on MS nor on Unix side.
+ There is only Negotiate over SPNEGO.
-- smb: Use standard naming for setup connection function
+- [Michael Osipov brought this change]
+
+ curl_gssapi: Add macros for common mechs and pass them appropriately
- Renamed smb_setup() to smb_setup_connection() to follow more widely
- used function naming.
+ Macros defined: KRB5_MECHANISM and SPNEGO_MECHANISM called from
+ HTTP, FTP and SOCKS on Unix
-- config-win32.h: Fixed line length > 79 columns
+- CONNECT: Revert Curl_proxyCONNECT back to 7.29.0 design
+
+ This reverts commit cb3e6dfa3511 and instead fixes the problem
+ differently.
+
+ The reverted commit addressed a test failure in test 1021 by simplifying
+ and generalizing the code flow in a way that damaged the
+ performance. Now we modify the flow so that Curl_proxyCONNECT() again
+ does as much as possible in one go, yet still do test 1021 with and
+ without valgrind. It failed due to mistakes in the multi state machine.
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1397
+ Reported-by: Paul Saab
-- openssl: Prefer we don't use NULL in comparisons
+- [Marcel Raad brought this change]
-- build: Removed WIN32 definition from the Visual Studio projects
+ url.c: use the preferred symbol name: *READDATA
- As this pre-processor definition is defined in curl_setup.h there is no
- need to include it in the Visual Studio project files.
+ with CURL_NO_OLDIES defined, it doesn't compile because this deprecated
+ symbol (*INFILE) is used
+
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1398
-- build: Removed WIN64 definition from the libcurl Visual Studio projects
+Dan Fandrich (19 Jul 2014)
+- [Alessandro Ghedini brought this change]
+
+ CURLOPT_CHUNK_BGN_FUNCTION: fix typo
+
+Kamil Dudka (18 Jul 2014)
+- [Alessandro Ghedini brought this change]
+
+ build: link curl to NSS libraries when NSS support is enabled
- Removed the WIN64 pre-processor definition from the libcurl project
- files as:
+ This fixes a build failure on Debian caused by commit
+ 24c3cdce88f39731506c287cb276e8bf4a1ce393.
- * WIN64 is not used in our source code
- * The curl projects files don't define it
- * It isn't required by or used in the platform SDK
- * For backwards compatability curl_setup.h defines WIN32
- * The compiler automatically defines _WIN64 for x64 builds
+ Bug: http://curl.haxx.se/mail/lib-2014-07/0209.html
+
+Steve Holme (17 Jul 2014)
+- build: Removed unnecessary XML Documentation file directive from VC8 to VC12
- Historically Visual Studio projects have defined WIN32, in addition to
- the compiler defined _WIN32 definition, and I had incorrectly changed
- that to WIN64 for the x64 libcurl builds but not in the curl projects.
+ The curl tool project files for VC8 to VC12 would set this setting to
+ $(IntDir) which is the Visual Studio default value. To avoid confusion
+ when viewing settings from within Visual Studio and for consistency
+ with the libcurl project files removed this setting.
- As such, it is questionable whether this should be defined or not. For
- more information see the following cache of a discussion that took
- place on the microsoft.public.vc.mfc newsgroup:
+ Conflicts:
+ projects/Windows/VC10/src/curlsrc.tmpl
+ projects/Windows/VC11/src/curlsrc.tmpl
+ projects/Windows/VC12/src/curlsrc.tmpl
+ projects/Windows/VC8/src/curlsrc.tmpl
+ projects/Windows/VC9/src/curlsrc.tmpl
+
+- build: Removed unnecessary Precompiled Header file directive in VC7 to VC12
- http://www.tech-archive.net/Archive/VC/microsoft.public.vc.mfc/2008-06/msg00074.html
+ The curl tool project files for VC7 to VC12 would set this settings to
+ $(IntDir)$(TargetName).pch which is the Visual Studio default value. To
+ avoid confusion when viewing settings from within Visual Studio and for
+ consistency with the libcurl project files removed this setting.
+
+ Conflicts:
+ projects/Windows/VC10/src/curlsrc.tmpl
+ projects/Windows/VC11/src/curlsrc.tmpl
+ projects/Windows/VC12/src/curlsrc.tmpl
+ projects/Windows/VC8/src/curlsrc.tmpl
+ projects/Windows/VC9/src/curlsrc.tmpl
-- openssl.c Fix for compilation errors with older versions of OpenSSL
+- build: Removed unnecessary ASM and Object file directives in VC7 to VC12
- openssl.c:1408: error: 'TLS1_1_VERSION' undeclared
- openssl.c:1411: error: 'TLS1_2_VERSION' undeclared
+ The curl tool project files for VC7 to VC12 would set these settings to
+ $(IntDir) which is the Visual Studio default value. To avoid confusion
+ when viewing settings from within Visual Studio and for consistency
+ with the libcurl project files removed these two settings.
-Daniel Stenberg (22 Dec 2014)
-- [John Malmberg brought this change]
+Daniel Stenberg (17 Jul 2014)
+- [Dave Reisner brought this change]
- Fix comment edit in vms/backup_gnv_curl_src.com
+ src/Makefile.am: add .DELETE_ON_ERROR
- packages/vms/backup_gnv_curl_src.com: Originally copied from Bash port.
-
-- curl: show size of inhibited data when using -v
+ This prevents targets like tool_hugehelp.c from leaving around
+ half-constructed files if the rule fails with GNU make.
- To offer some more info and yet it doesn't use more lines.
+ Reported-by: Rafaël Carré <funman@videolan.org>
-- openssl: fix SSL/TLS versions in verbose output
+- THANKS: added new contributors from 7.37.1 announcement
-- openssl: make it compile against openssl 1.1.0-DEV master branch
+Dan Fandrich (17 Jul 2014)
+- testcurl.pl: log the value of --runtestopts in the test header
-Marc Hoersken (22 Dec 2014)
-- sshserver.pl: clarify and streamline variable names
+Daniel Stenberg (16 Jul 2014)
+- RELEASE-NOTES: cleared, working towards next release
-Daniel Stenberg (21 Dec 2014)
-- openssl: warn for SRP set if SSLv3 is used, not for TLS version
+- curl_gssapi.c: make line shorter than 80 columns
+
+- [David Woodhouse brought this change]
+
+ Fix negotiate auth to proxies to track correct state
+
+- [David Woodhouse brought this change]
+
+ Don't abort Negotiate auth when the server has a response for us
- ... as it requires TLS and it was was left to warn on the default from
- when default was SSL...
+ It's wrong to assume that we can send a single SPNEGO packet which will
+ complete the authentication. It's a *negotiation* — the clue is in the
+ name. So make sure we handle responses from the server.
+
+ Curl_input_negotiate() will already handle bailing out if it thinks the
+ state is GSS_S_COMPLETE (or SEC_E_OK on Windows) and the server keeps
+ talking to us, so we should avoid endless loops that way.
-- smb: use memcpy() instead of strncpy()
+- [David Woodhouse brought this change]
+
+ Don't clear GSSAPI state between each exchange in the negotiation
- ... as it never copies the trailing zero anyway and always just the four
- bytes so let's not mislead anyone into thinking it is actually treated
- as a string.
+ GSSAPI doesn't work very well if we forget everything ever time.
- Coverity CID: 1260214
+ XX: Is Curl_http_done() the right place to do the final cleanup?
-- [John E. Malmberg brought this change]
+- [David Woodhouse brought this change]
- VMS: Updates for 0740-0D1220
+ Use SPNEGO for HTTP Negotiate
- lib/setup-vms.h : VAX HP OpenSSL port is ancient, needs help.
- More defines to set symbols to uppercase.
+ This is the correct way to do SPNEGO. Just ask for it
- src/tool_main.c : Fix parameter to vms_special_exit() call.
+ Now I correctly see it trying NTLMSSP authentication when a Kerberos ticket
+ isn't available. Of course, we bail out when the server responds with the
+ challenge packet, since we don't expect that. But I'll fix that bug next...
+
+- [David Woodhouse brought this change]
+
+ Remove all traces of FBOpenSSL SPNEGO support
- packages/vms/ :
- backup_gnv_curl_src.com : Fix the error message to have the correct package.
+ This is just fundamentally broken. SPNEGO (RFC4178) is a protocol which
+ allows client and server to negotiate the underlying mechanism which will
+ actually be used to authenticate. This is *often* Kerberos, and can also
+ be NTLM and other things. And to complicate matters, there are various
+ different OIDs which can be used to specify the Kerberos mechanism too.
- build_curl-config_script.com : Rewrite to be more accurate.
+ A SPNEGO exchange will identify *which* GSSAPI mechanism is being used,
+ and will exchange GSSAPI tokens which are appropriate for that mechanism.
- build_libcurl_pc.com : Use tool_version.h now.
+ But this SPNEGO implementation just strips the incoming SPNEGO packet
+ and extracts the token, if any. And completely discards the information
+ about *which* mechanism is being used. Then we *assume* it was Kerberos,
+ and feed the token into gss_init_sec_context() with the default
+ mechanism (GSS_S_NO_OID for the mech_type argument).
- build_vms.com : Fix to handle lib/vtls directory.
+ Furthermore... broken as this code is, it was never even *used* for input
+ tokens anyway, because higher layers of curl would just bail out if the
+ server actually said anything *back* to us in the negotiation. We assume
+ that we send a single token to the server, and it accepts it. If the server
+ wants to continue the exchange (as is required for NTLM and for SPNEGO
+ to do anything useful), then curl was broken anyway.
- curl_gnv_build_steps.txt : Updated build procedure documentation.
+ So the only bit which actually did anything was the bit in
+ Curl_output_negotiate(), which always generates an *initial* SPNEGO
+ token saying "Hey, I support only the Kerberos mechanism and this is its
+ token".
- generate_config_vms_h_curl.com :
- * VAX does not support 64 bit ints, so no NTLM support for now.
- * VAX HP SSL port is ancient, needs some help.
- * Disable NGHTTP2 for now, not ported to VMS.
- * Disable UNIX_SOCKETS, not available on VMS yet.
- * HP GSSAPI port does not have gss_nt_service_name.
+ You could have done that by manually just prefixing the Kerberos token
+ with the appropriate bytes, if you weren't going to do any proper SPNEGO
+ handling. There's no need for the FBOpenSSL library at all.
- gnv_link_curl.com : Update for new curl structure.
+ The sane way to do SPNEGO is just to *ask* the GSSAPI library to do
+ SPNEGO. That's what the 'mech_type' argument to gss_init_sec_context()
+ is for. And then it should all Just Workâ„¢.
- pcsi_product_gnv_curl.com : Set up to optionally do a complete build.
+ That 'sane way' will be added in a subsequent patch, as will bug fixes
+ for our failure to handle any exchange other than a single outbound
+ token to the server which results in immediate success.
-Marc Hoersken (21 Dec 2014)
-- sockfilt.c: use non-Ex functions that are available before WinXP
-
- It was initially reported by Guenter that GetFileSizeEx
- requires (_WIN32_WINNT >= 0x0500) to be true.
+- [David Woodhouse brought this change]
-- tests: use Cygwin-style paths in SSH, SSHD and SFTP config files
-
- Second patch to enable Windows support using Cygwin-based OpenSSH.
-
- Tested with CopSSH 5.0.0 free edition using an msys shell on Windows 7.
+ ntlm_wb: Avoid invoking ntlm_auth helper with empty username
-- tests: support spaces in paths to SSH, SSHD and SFTP binaries
-
- First patch to enable Windows support using Cygwin-based OpenSSH.
+- [David Woodhouse brought this change]
-Steve Holme (20 Dec 2014)
-- non-ascii: Reduce variable usage
+ ntlm_wb: Fix hard-coded limit on NTLM auth packet size
- Removed 'next' variable in Curl_convert_form(). Rather than setting it
- from 'form->next' and using that to set 'form' after the conversion
- just use 'form = form->next' instead.
+ Bumping it to 1KiB in commit aaaf9e50ec is all very well, but having hit
+ a hard limit once let's just make it cope by reallocating as necessary.
-- non-ascii: Prefer while loop rather than a do loop
-
- This also removes the need to check that the 'form' argument is valid.
+Version 7.37.1 (16 Jul 2014)
-- non-ascii: Reduce variable scope
-
- As 'result' isn't used out side the conversion callback code and
- previously caused variable shadowing in the libiconv based code.
+Daniel Stenberg (16 Jul 2014)
+- RELEASE-NOTES: synced with 4cb2521595
-- non-ascii: We prefer 'CURLcode result'
+- test506: verify aa6884845168
- This also fixes a variable shadowing issue when HAVE_ICONV is defined
- as rc was declared for the result code of libiconv based functions.
+ After the fixed cookie lock deadlock, this test now passes and it
+ detects double-locking and double-unlocking of mutexes.
-Marc Hoersken (19 Dec 2014)
-- secureserver.pl: clean up formatting of config and fix verbose output
-
- Verbose output was not matching the actual configuration file,
- because FIPS and Windows conditions were ignored.
+- [Yousuke Kimoto brought this change]
-- secureserver.pl: update Windows detection and fix path conversion
+ cookie: avoid mutex deadlock
+
+ ... by removing the extra mutex locks around th call to
+ Curl_flush_cookies() which takes care of the locking itself already.
+
+ Bug: http://curl.haxx.se/mail/lib-2014-02/0184.html
-- secureserver.pl: make OpenSSL CApath and cert absolute path values
+- gnutls: fix compiler warning
- Recent stunnel versions (5.08) seem to have trouble with relative
- paths on Windows. This turns the relative paths into absolute ones.
+ conversion to 'int' from 'long int' may alter its value
-Patrick Monnerat (18 Dec 2014)
-- if2ip: dummy scope parameter for Curl_if2ip() call in SIOCGIFADDR-enabled code.
+Dan Fandrich (15 Jul 2014)
+- test320: strip off the actual negotiated cipher width
+
+ It's irrelevant to the test, and will change depending on which SSL
+ library is being used by libcurl.
-- [Kyle J. McKay brought this change]
+- gnutls: detect lack of SRP support in GnuTLS at run-time and try without
+
+ Reported-by: David Woodhouse
- parseurlandfillconn(): fix improper non-numeric scope_id stripping.
- Fixes SF bug 1149: http://sourceforge.net/p/curl/bugs/1449/
+Daniel Stenberg (14 Jul 2014)
+- [Michał Górny brought this change]
-- IPV6: address scope != scope id
- There was a confusion between these: this commit tries to disambiguate them.
- - Scope can be computed from the address itself.
- - Scope id is scope dependent: it is currently defined as 1-based local
- interface index for link-local scoped addresses, and as a site index(?) for
- (obsolete) site-local addresses. Linux only supports it for link-local
- addresses.
- The URL parser properly parses a scope id as an interface index, but stores it
- in a field named "scope": confusion. The field has been renamed into "scope_id".
- Curl_if2ip() used the scope id as it was a scope. This caused failures
- to bind to an interface.
- Scope is now computed from the addresses and Curl_if2ip() matches them.
- If redundantly specified in the URL, scope id is check for mismatch with
- the interface index.
+ configure: respect host tool prefix for krb5-config
- This commit should fix SF bug #1451.
+ Use ${host_alias}-krb5-config if available. This improves cross-
+ compilation support and fixes multilib on Gentoo (at least).
-- connect: singleipconnect(): properly try other address families after failure
+- [David Woodhouse brought this change]
-Daniel Stenberg (16 Dec 2014)
-- SFTP: work-around servers that return zero size on STAT
+ gnutls: handle IP address in cert name check
- Bug: http://curl.haxx.se/mail/lib-2014-12/0103.html
- Pathed-by: Marc Renault
+ Before GnuTLS 3.3.6, the gnutls_x509_crt_check_hostname() function
+ didn't actually check IP addresses in SubjectAltName, even though it was
+ explicitly documented as doing so. So do it ourselves...
-- glob_next_url: make the loop count upwards
-
- As the former contruct apparently caused a compiler warning, mentioned
- in d8efde07e556c.
+Dan Fandrich (14 Jul 2014)
+- build: set _POSIX_PTHREAD_SEMANTICS on Solaris to get proper getpwuid_r
-- tool_operate: we prefer 'CURLcode result'
+Daniel Stenberg (14 Jul 2014)
+- RELEASE-NOTES: next one is called 7.37.1
-- tool_urlglob: unify return codes to use CURLcode
+Dan Fandrich (13 Jul 2014)
+- gnutls: improved error message if setting cipher list fails
- There was a mix of GlobCode, CURLcode and ints and they were mostly
- passing around CURLcode errors. This change makes the functions use only
- CURLcode and removes the GlobCode type completely.
+ Reported-by: David Woodhouse
-- tool_urlglob.c: partly reverse dc19789444
+- netrc: fixed thread safety problem by using getpwuid_r if available
- The loop in glob_next_url() needs to be done backwards to maintain the
- logic. dc19789444 caused test 1235 to fail.
-
-- KNOWN_BUGS: the SFTP code doesn't support CURLINFO_FILETIME
+ The old way using getpwuid could cause problems in programs that enable
+ reading from netrc files simultaneously in multiple threads.
+
+ Reported-by: David Woodhouse
-- [Jay Satiro brought this change]
+- RELEASE-NOTES: add the reporter of the previous bug fix
- opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS
+- netrc: treat failure to find home dir same as missing netrc file
- Change CURLOPT_TIMEOUT doc to warn that if CURLOPT_TIMEOUT and
- CURLOPT_TIMEOUT_MS are both set whichever one is set last is the one
- that will be used.
+ This previously caused a fatal error (with a confusing error code, at
+ that).
- Prior to this change that behavior was only noted in the
- CURLOPT_TIMEOUT_MS doc.
+ Reported by: Glen A Johnson Jr.
-Nick Zitzmann (15 Dec 2014)
-- darwinssl: fix incorrect usage of aprintf()
-
- Commit b13923f changed an snprintf() to use aprintf(), but the API usage
- wasn't correct, and was causing a crash to occur. This fixes it.
+Steve Holme (12 Jul 2014)
+- RELEASE-NOTES: Synced with aaaf9e50ec
-Steve Holme (14 Dec 2014)
-- copyright: Updated the copyright year following recent updates
+- ntlm_wb: Fixed buffer size not being large enough for NTLMv2 sessions
+
+ Bug: http://curl.haxx.se/mail/lib-2014-07/0103.html
+ Reported-by: David Woodhouse
-Daniel Stenberg (14 Dec 2014)
-- tool_urlglob.c: reverse two loops
+- build: Fixed overridden compiler PDB settings in VC7 to VC12
- By counting from 0 and up instead of backwards like before, we remove
- the need for the "funny" check of the unsigned variable when decreased
- passed zero. Easier to read and less risk for compiler warnings.
+ The curl tool project files for VC7 to VC12 would override the default
+ setting with the output filename being the same as the linker PDB file.
+ As such the compiler file would be overwritten with the linker file
+ for all debug builds.
+
+ To avoid this overwrite and for consistency with the libcurl project
+ files, removed the setting to force the default filename to be used.
-Marc Hoersken (14 Dec 2014)
-- tool_urlglob.c: Added braces to clarify the conditions
+Dan Fandrich (12 Jul 2014)
+- tests: added globbing keyword to URL globbing tests
-- tool_urlglob.c: Silence warning C6293: Ill-defined for-loop
-
- The >= 0 is actually not required, since i underflows and
- the for-loop is stopped using the < condition, but this
- makes the VS2012 compiler and code analysis happy.
+- Fixed some "statement not reached" warnings
-- tool_binmode.c: Explicitly ignore the return code of setmode
-
- Fixes code analysis warning C6031:
- return value ignored: <function> could return unexpected value
+- gnutls: fixed a couple of uninitialized variable references
-- lib: Fixed multiple code analysis warnings if SAL are available
+- gnutls: fixed compilation against versions < 2.12.0
- warning C28252: Inconsistent annotation for function:
- parameter has another annotation on this instance
+ The AES-GCM ciphers were added to GnuTLS as late as ver. 3.0.1 but
+ the code path in which they're referenced here is only ever used for
+ somewhat older GnuTLS versions. This caused undeclared identifier errors
+ when compiling against those.
-Steve Holme (14 Dec 2014)
-- smb.c: Fixed code analysis warning
+- gnutls: explicitly added SRP to the priority string
- smb.c:320: warning C6297: Arithmetic overflow: 32-bit value is shifted,
- then cast to 64-bit value. Result may not be an expected
- value
+ This seems to have become necessary for SRP support to work starting
+ with GnuTLS ver. 2.99.0. Since support for SRP was added to GnuTLS
+ before the function that takes this priority string, there should be no
+ issue with backward compatibility.
-Marc Hoersken (14 Dec 2014)
-- tool_util.c: Use GetTickCount64 if it is available
+- tests: adjust for capitalization differences in newer gnutls-serv
-Steve Holme (14 Dec 2014)
-- smb: Use HAVE_PROCESS_H for process.h inclusion
+- test320/1/2/4: fix the port number substitution variables
- Rather than testing against _WIN32 use the preferred HAVE_PROCESS_H
- pre-processor define when including process.h.
+ These tests have been broken since commit 1958fe57 in Oct. 2011
-Daniel Stenberg (14 Dec 2014)
-- darwinssl: aprintf() to allocate the session key
-
- ... to avoid using a fixed memory size that risks being too large or too
- small.
+- tests: document more test identifiers and variables
-Marc Hoersken (14 Dec 2014)
-- curl_schannel: Improvements to memory re-allocation strategy
+- gnutls: ignore invalid certificate dates with VERIFYPEER disabled
- - do not grow memory by doubling its size
- - do not leak previously allocated memory if reallocation fails
- - replace while-loop with a single check to make sure
- that the requested amount of data fits into the buffer
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1450
- Reported-by: Warren Menzer
+ This makes the behaviour consistent with what happens if a date can
+ be extracted from the certificate but is expired.
-Steve Holme (14 Dec 2014)
-- asyn-ares: We prefer use of 'CURLcode result'
+Steve Holme (10 Jul 2014)
+- CURLOPT_UPLOAD: Corrected argument type
-Marc Hoersken (14 Dec 2014)
-- curl_schannel.c: Data may be available before connection shutdown
+Daniel Stenberg (9 Jul 2014)
+- FAQ: expand the thread-safe section
+
+ ... with a mention of *NOSIGNAL, based on talk in bug #1386
-Steve Holme (14 Dec 2014)
-- http2: Use 'CURLcode result' for curl result codes
+Dan Fandrich (9 Jul 2014)
+- url.c: Fixed memory leak on OOM
+
+ This showed itself on some systems with torture failures
+ in tests 1060 and 1061
-- asyn-thread: We prefer 'CURLcode result'
+- Update instances of some obsolete CURLOPTs to their new names
-- smb: Fixed unnecessary initialisation of struct member variables
-
- There is no need to set the 'state' and 'result' member variables to
- SMB_REQUESTING (0) and CURLE_OK (0) after the allocation via calloc()
- as calloc() initialises the contents to zero.
+Daniel Stenberg (5 Jul 2014)
+- [Marcel Raad brought this change]
-- ntlm: Fixed return code for bad type-2 Target Info
+ compiler warnings: potentially uninitialized variables
- Use CURLE_BAD_CONTENT_ENCODING for bad type-2 Target Info security
- buffers just like we do for bad decodes.
-
-- ntlm: Remove unnecessary casts in readshort_le()
+ ... pointed out by MSVC2013
- I don't think both of my fix ups from yesterday were needed to fix the
- compilation warning, so remove the one that I think is unnecessary and
- let the next Android autobuild prove/disprove it.
+ Bug: http://curl.haxx.se/bug/view.cgi?id=1391
-- curl_ntlm_msgs.c: Another attempt to fix compilation warning
+Kamil Dudka (4 Jul 2014)
+- nss: make the list of CRL items global
- curl_ntlm_msgs.c:170: warning: conversion to 'short unsigned int' from
- 'int' may alter its value
+ Otherwise NSS could use an already freed item for another connection.
-Guenter Knauf (13 Dec 2014)
-- synctime.c: added own user-agent string.
+- nss: fix a memory leak when CURLOPT_CRLFILE is used
-Steve Holme (13 Dec 2014)
-- smb.c: Fixed line longer than 79 columns
-
-- curl_ntlm_msgs.c: Fixed compilation warning from commit 783b5c3b11
+- nss: make crl_der allocated on heap
- curl_ntlm_msgs.c:169: warning: conversion to 'short unsigned int' from
- 'int' may alter its value
+ ... and spell it as crl_der instead of crlDER
-Guenter Knauf (13 Dec 2014)
-- mk-ca-bundle.pl: restored forced run again.
+- nss: let nss_{cache,load}_crl return CURLcode
-- synctime.c: removed another timeserver URL.
+- tool: oops, forgot to include <plarenas.h>
- worldtimeserver.com seems also no longer available.
+ ... that contains the declaration of PL_ArenaFinish()
-- synctime.c: fixed timeserver URLs.
+- tool: call PL_ArenaFinish() on exit if NSPR is used
- For getting the date header its not necessary to access special
- pages or even CGI scripts - all pages including the main index
- reply with the date header, therefore shortened URLs to domain.
- Removed worldtime.com; added pool.ntp.org.
-
-Steve Holme (13 Dec 2014)
-- ftp.c: Fixed compilation warning when no verbose string support
+ This prevents valgrind from reporting still reachable memory allocated
+ by NSPR arenas (mainly the freelist).
- ftp.c:819: warning: unused parameter 'lineno'
+ Reported-by: Hubert Kario
-- smb: Added state change functions to assist with debugging
-
- For debugging purposes, and as per other protocols within curl, added
- state change functions rather than changing the states directly.
+Daniel Stenberg (3 Jul 2014)
+- [Dimitrios Siganos brought this change]
-- ntlm: Use short integer when decoding 16-bit values
+ example: use correct type (long) for CURLOPT_FOLLOWLOCATION
-- RELEASE-NOTES: Synced with 6291a16b20
+- [Dimitrios Siganos brought this change]
-- smtp.c: Fixed compilation warnings
-
- smtp.c:2357 warning: adding 'size_t' (aka 'unsigned long') to a string
- does not append to the string
- smtp.c:2375 warning: adding 'size_t' (aka 'unsigned long') to a string
- does not append to the string
- smtp.c:2386 warning: adding 'size_t' (aka 'unsigned long') to a string
- does not append to the string
-
- Used array index notation instead.
+ Document type of argument for CURLOPT_FOLLOWLOCATION.
-- smb: Disable SMB when 64-bit integers are not supported
-
- This fixes compilation issues with compilers that don't support 64-bit
- integers through long long or __int64.
+- [Dimitrios Siganos brought this change]
-- ntlm: Disable NTLM v2 when 64-bit integers are not supported
-
- This fixes compilation issues with compilers that don't support 64-bit
- integers through long long or __int64 which was introduced in commit
- 07b66cbfa4.
+ Document type of argument for CURLOPT_ERRORBUFFER.
-- ntlm: Allow NTLM2Session messages when USE_NTRESPONSES manually defined
-
- Previously USE_NTLM2SESSION would only be defined automatically when
- USE_NTRESPONSES wasn't already defined. Separated the two definitions
- so that the user can manually set USE_NTRESPONSES themselves but
- USE_NTLM2SESSION is defined automatically if they don't define it.
+- [Dimitrios Siganos brought this change]
-- smtp.c: Fixed line longer than 79 columns
+ Document type of argument for CURLOPT_COPYPOSTFIELDS.
-- config-win32.h: Don't enable Windows Crypt API if using OpenSSL
-
- As the OpenSSL and NSS Crypto engines are prefered by the core NTLM
- routines, to the Windows Crypt API, don't define USE_WIN32_CRYPT
- automatically when either OpenSSL or NSS are in use - doing so would
- disable NTLM2Session responses in NTLM type-3 messages.
+- [Dimitrios Siganos brought this change]
-- smtp: Fixed inappropriate free of the scratch buffer
-
- If the scratch buffer was allocated in a previous call to
- Curl_smtp_escape_eob(), a new buffer not allocated in the subsequent
- call and no action taken by that call, then an attempt would be made to
- try and free the buffer which, by now, would be part of the data->state
- structure.
-
- This bug was introduced in commit 4bd860a001.
+ Document type of argument for CURLOPT_ADDRESS_SCOPE.
-- smtp: Fixed dot stuffing when EOL characters were at end of input buffers
+- curl.1: minor language fix
- Fixed a problem with the CRLF. detection when multiple buffers were
- used to upload an email to libcurl and the line ending character(s)
- appeared at the end of each buffer. This meant any lines which started
- with . would not be escaped into .. and could be interpreted as the end
- of transmission string instead.
-
- This only affected libcurl based applications that used a read function
- and wasn't reproducible with the curl command-line tool.
-
- Bug: http://curl.haxx.se/bug/view.cgi?id=1456
- Assisted-by: Patrick Monnerat
+ Bug: http://curl.haxx.se/mail/archive-2014-07/0006.html
-Daniel Stenberg (11 Dec 2014)
-- telnet: fix "cast increases required alignment of target type"
+- [Ray Satiro brought this change]
-- ntlm_wb_response: fix "statement not reached"
+ progress callback: skip last callback update on errors
- ... and I could use a break instead of a goto to end the loop.
+ When an error has been detected, skip the final forced call to the
+ progress callback by making sure to pass the current return code
+ variable in the Curl_done() call in the CURLM_STATE_DONE state.
- Bug: http://curl.haxx.se/mail/lib-2014-12/0089.html
- Reported-by: Tor Arntsen
-
-Steve Holme (10 Dec 2014)
-- RELEASE-NOTES: Synced with 1cc5194337
+ This avoids the "extra" callback that could occur even if you returned
+ error from the progress callback.
- Added some bug fixes that I had missed in previous synchronisations.
+ Bug: http://curl.haxx.se/mail/lib-2014-06/0062.html
+ Reported by: Jonathan Cardoso Machado
-Daniel Stenberg (10 Dec 2014)
-- Curl_unix2addr: avoid using the variable name 'sun'
-
- I suspect this causes compile failures on Solaris:
+Dan Fandrich (2 Jul 2014)
+- opts: fixed some CURLOPT references so they get turned into links
+
+Kamil Dudka (2 Jul 2014)
+- tool: call PR_Cleanup() on exit if NSPR is used
- Bug: http://curl.haxx.se/mail/lib-2014-12/0081.html
+ This prevents valgrind from reporting possibly lost memory that NSPR
+ uses for file descriptor cache and other globally allocated internal
+ data structures.
-Steve Holme (10 Dec 2014)
-- url.c: Fixed compilation warning when USE_NTLM is not defined
+- nss: make the fallback to SSLv3 work again
- url.c:3078: warning: variable 'credentialsMatch' set but not used
+ This feature was unintentionally disabled by commit ff92fcfb.
-- parsedate.c: Fixed compilation warning
+- nss: do not abort on connection failure
- parsedate.c:548: warning: 'parsed' may be used uninitialized in this
- function
+ ... due to calling SSL_VersionRangeGet() with NULL file descriptor
- As curl_getdate() returns -1 when parsedate() fails we can initialise
- parsed to -1.
+ reported-by: upstream tests 305 and 404
-Daniel Stenberg (10 Dec 2014)
-- TODO: Cache negative name resolves
-
- Worth exploring
+Dan Fandrich (1 Jul 2014)
+- opts: Document the socket callback function parameters
-- ldap: check Curl_client_write() return codes
-
- There might be one or two memory leaks left in the error paths.
+Steve Holme (28 Jun 2014)
+- opts: Fixed some typos
-- ldap: rename variables to comply to curl standards
+Dan Fandrich (25 Jun 2014)
+- curl_easy_setopt.3: fixed the error code for an unsupported option
-Dan Fandrich (10 Dec 2014)
-- sws.c: Fixed 'rc' may be used uninitialized warning
+- opts: added some DEFAULT and RETURN VALUE sections
-- cookies: Improved OOM handling in cookies
+Daniel Stenberg (21 Jun 2014)
+- libcurl docs: man page edits
- This fixes the test 506 torture test. The internal cookie API really
- ought to be improved to separate cookie parsing errors (which may be
- ignored) with OOM errors (which should be fatal).
+ mainly to improve how the web versions render
-Guenter Knauf (9 Dec 2014)
-- synctime.c: fixed user-agent setting.
+Dan Fandrich (21 Jun 2014)
+- curl_easy_setopt.3: fixed some typos
+
+Daniel Stenberg (21 Jun 2014)
+- lib man pages: update easy setopt option references
- Some websites meanwhile refuse to reply to requests from ancient
- browsers like IE6, therefore I've comment out this setting, but
- also fixed the string to now fake IE8 if someone enables it.
+ ... by using the "\fIopt(3)\fP" syntax they will be linked properly when
+ the web version of the page is generated.
-Daniel Stenberg (9 Dec 2014)
-- smb: fix unused return code warning
+- opts: the CURLOPT_SSL_ENABLE_*PN options are enabled by default
-Patrick Monnerat (9 Dec 2014)
-- Curl_client_write() & al.: chop long data, convert data only once.
+- [Colin Hogben brought this change]
-Guenter Knauf (9 Dec 2014)
-- VC build: added sspi define for winssl-zlib builds.
-
-Daniel Stenberg (9 Dec 2014)
-- schannel_recv: return the correct code
+ lib: documentation updates in README.hostip
- Bug: http://curl.haxx.se/bug/view.cgi?id=1462
- Reported-by: Tae Hyoung Ahn
-
-- http2: avoid logging neg "failure" if h2 was not requested
+ c-ares now does support IPv6;
+ avoid implying threaded resolver is Windows-only;
+ two referenced source files were renamed in 7de2f92
-- openldap: do not ignore Curl_client_write() return codes
+- curl_easy_setopt.3: CURLOPT_POSTFIELDS is the exception
+
+ ... to the always-copy-char *-argument.
+
+ And fix some minor mistakes.
-- compile: warn on unused return code from Curl_client_write()
+- curl_easy_setopt.3: refer to the individual man pages
+
+ With all the new individual option man pages created, this now refers to
+ each separate one instead of duplicaing the info. Also makes this page
+ easier to overview.
-Patrick Monnerat (8 Dec 2014)
-- SMB: Fix a data size mismatch that broke SMB on big-endian platforms
+Dan Fandrich (21 Jun 2014)
+- opts: fixed mancheck for out-of-tree builds
-Steve Holme (7 Dec 2014)
-- smb: Fixed Windows autoconf builds following commit eb88d778e7
+Daniel Stenberg (21 Jun 2014)
+- curl_easy_setopt.3: shorten
- As Windows based autoconf builds don't yet define USE_WIN32_CRYPTO
- either explicitly through --enable-win32-cypto or automatically on
- _WIN32 based platforms, subsequent builds broke with the following
- error message:
-
- "Can't compile NTLM support without a crypto library."
+ shorten descriptions, mostly refer to the separate descriptions
-- RELEASE-NOTES: Synced with 526603ff05
+- CURLOPT_DNS_LOCAL_IP4.3: better short desc
-- [Bill Nagel brought this change]
+Dan Fandrich (20 Jun 2014)
+- opts: document CURLE_OUT_OF_MEMORY among other return values
- smb: Build with SSPI enabled
-
- Build SMB/CIFS protocol support when SSPI is enabled.
+- opts: fixed some typos
-- [Bill Nagel brought this change]
+Daniel Stenberg (20 Jun 2014)
+- opts: various corrections
- ntlm: Use Windows Crypt API
+- opts: add the rest of the options
- Allow the use of the Windows Crypt API for NTLMv1 functions.
+ ... and fixed mancheck to ignore obsolete options
-Dan Fandrich (7 Dec 2014)
-- cookie.c: Refactored cleanup code to simplify
+- opts: the final bunch of options as man pages
- Also, fixed the outdated comments on the cookie API.
+ Now all current options have their own man pages.
-- get_url_file_name: Fixed crash on OOM on debug build
-
- This caused a null-pointer dereference which caused a few dozen
- torture tests to fail.
+- opts: 37 additional man pages
-Steve Holme (6 Dec 2014)
-- sws.c: Fixed compilation warning
-
- sws.c:2191 warning: 'rc' may be used uninitialized in this function
+- CURLOPT_URL: move up the text from "Notes"
-- ftp.c: Fixed compilation warnings when proxy support disabled
-
- ftp.c:1827 warning: unused parameter 'newhost'
- ftp.c:1827 warning: unused parameter 'newport'
+- ROADMAP: removed, now ROADMAP.md
-- smb: Fixed a problem with large file transfers
-
- Fixed an issue with the message size calculation where the raw bytes
- from the buffer were interpreted as signed values rather than unsigned
- values.
+- ROADMAP.md: make it markdown formatted
+
+- ROADMAP: initial commit of "curl the next few years"
- Reported-by: Gisle Vanem
- Assisted-by: Bill Nagel
+ To be further discussed, debated and edited
-- smb: Moved the URL decoding into a separate function
+- opts: more man pages
-- smb: Fixed URL encoded URLs not working
+- CURLOPT_UNRESTRICTED_AUTH.3: added missing 'T'
-- Makefile.inc: Added our standard header and updated file formatting
+- opts: makefile now includes all current man pages
-- Makefile.inc: Updated file formatting
-
- Aligned continuation character and used space as the separator
- character as per other makefile files.
+- opts: 11 more man pages
-- curl_md4.h: Updated copyright year following recent edit
-
- ...and minor layout adjustment.
+Dan Fandrich (18 Jun 2014)
+- opts: document CURLE_OUT_OF_MEMORY as RETURN VALUE
-Patrick Monnerat (5 Dec 2014)
-- SMB: Fix big endian problems. Make it OS/400 aware.
+- opts: fixed a couple of typos
-- OS400: enable NTLM authentication
+Patrick Monnerat (18 Jun 2014)
+- OS400: make it compilable again. Make RPG binding up to date.
-Steve Holme (5 Dec 2014)
-- multi.c: Fixed compilation warning
-
- multi.c:2695: warning: declaration of `exp' shadows a global declaration
+- buildconf: do not search tools in current directory.
-Guenter Knauf (5 Dec 2014)
-- build: updated dependencies in makefiles.
+Dan Fandrich (18 Jun 2014)
+- curl.h: renamed CURLOPT_DEPRECATEDx to CURLOPT_OBSOLETEx
+
+ This is consistent with the existing obsolete error code naming
+ convention.
-Steve Holme (5 Dec 2014)
-- sasl: Corrected formatting of function descriptions
+Daniel Stenberg (18 Jun 2014)
+- opts: 16 more man pages
diff --git a/CMake/FindGSS.cmake b/CMake/FindGSS.cmake
index dfaeaf307..4986a8e09 100644
--- a/CMake/FindGSS.cmake
+++ b/CMake/FindGSS.cmake
@@ -155,7 +155,7 @@ message(STATUS "LDFLAGS: ${_GSS_LIB_FLAGS}")
set(GSS_FLAVOUR "MIT")
else()
# prevent compiling the header - just check if we can include it
- set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D__ROKEN_H__")
+ set(CMAKE_REQUIRED_DEFINITIONS "-D__ROKEN_H__")
check_include_file( "roken.h" _GSS_HAVE_ROKEN_H)
check_include_file( "heimdal/roken.h" _GSS_HAVE_HEIMDAL_ROKEN_H)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 9a42cc75c..fc75d59de 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -76,24 +76,6 @@ option(BUILD_CURL_TESTS "Set to ON to build cURL tests." ON)
option(CURL_STATICLIB "Set to ON to build libcurl with static linking." OFF)
option(ENABLE_ARES "Set to ON to enable c-ares support" OFF)
option(ENABLE_THREADED_RESOLVER "Set to ON to enable POSIX threaded DNS lookup" OFF)
-
-option(ENABLE_DEBUG "Set to ON to enable curl debug features" OFF)
-option(ENABLE_CURLDEBUG "Set to ON to build with TrackMemory feature enabled" OFF)
-
-if (ENABLE_DEBUG)
- # DEBUGBUILD will be defined only for Debug builds
- if(NOT CMAKE_VERSION VERSION_LESS 3.0)
- set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS $<$<CONFIG:Debug>:DEBUGBUILD>)
- else()
- set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS_DEBUG DEBUGBUILD)
- endif()
- set(ENABLE_CURLDEBUG ON)
-endif()
-
-if (ENABLE_CURLDEBUG)
- set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS CURLDEBUG)
-endif()
-
# initialize CURL_LIBS
set(CURL_LIBS "")
@@ -256,7 +238,6 @@ include (CheckCSourceCompiles)
# On windows preload settings
if(WIN32)
- set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -D_WINSOCKAPI_")
include(${CMAKE_CURRENT_SOURCE_DIR}/CMake/Platforms/WindowsCache.cmake)
endif(WIN32)
@@ -298,6 +279,7 @@ endif()
option(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ON)
mark_as_advanced(CMAKE_USE_OPENSSL)
+set(USE_SSLEAY OFF)
set(USE_OPENSSL OFF)
set(HAVE_LIBCRYPTO OFF)
set(HAVE_LIBSSL OFF)
@@ -306,31 +288,32 @@ if(CMAKE_USE_OPENSSL)
find_package(OpenSSL)
if(OPENSSL_FOUND)
list(APPEND CURL_LIBS ${OPENSSL_LIBRARIES})
+ set(USE_SSLEAY ON)
set(USE_OPENSSL ON)
set(HAVE_LIBCRYPTO ON)
set(HAVE_LIBSSL ON)
include_directories(${OPENSSL_INCLUDE_DIR})
set(CMAKE_REQUIRED_INCLUDES ${OPENSSL_INCLUDE_DIR})
- check_include_file("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
- check_include_file("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
- check_include_file("openssl/err.h" HAVE_OPENSSL_ERR_H)
- check_include_file("openssl/pem.h" HAVE_OPENSSL_PEM_H)
- check_include_file("openssl/pkcs12.h" HAVE_OPENSSL_PKCS12_H)
- check_include_file("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
- check_include_file("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
- check_include_file("openssl/x509.h" HAVE_OPENSSL_X509_H)
- check_include_file("openssl/rand.h" HAVE_OPENSSL_RAND_H)
+ check_include_file_concat("openssl/crypto.h" HAVE_OPENSSL_CRYPTO_H)
+ check_include_file_concat("openssl/engine.h" HAVE_OPENSSL_ENGINE_H)
+ check_include_file_concat("openssl/err.h" HAVE_OPENSSL_ERR_H)
+ check_include_file_concat("openssl/pem.h" HAVE_OPENSSL_PEM_H)
+ check_include_file_concat("openssl/pkcs12.h" HAVE_OPENSSL_PKCS12_H)
+ check_include_file_concat("openssl/rsa.h" HAVE_OPENSSL_RSA_H)
+ check_include_file_concat("openssl/ssl.h" HAVE_OPENSSL_SSL_H)
+ check_include_file_concat("openssl/x509.h" HAVE_OPENSSL_X509_H)
+ check_include_file_concat("openssl/rand.h" HAVE_OPENSSL_RAND_H)
endif()
endif()
if(NOT CURL_DISABLE_LDAP)
if(WIN32)
- option(USE_WIN32_LDAP "Use Windows LDAP implementation" ON)
- if(USE_WIN32_LDAP)
+ option(CURL_LDAP_WIN "Use Windows LDAP implementation" ON)
+ if(CURL_LDAP_WIN)
check_library_exists("wldap32" cldap_open "" HAVE_WLDAP32)
if(NOT HAVE_WLDAP32)
- set(USE_WIN32_LDAP OFF)
+ set(CURL_LDAP_WIN OFF)
endif()
endif()
endif()
@@ -340,12 +323,12 @@ if(NOT CURL_DISABLE_LDAP)
set(CMAKE_LDAP_LIB "ldap" CACHE STRING "Name or full path to ldap library")
set(CMAKE_LBER_LIB "lber" CACHE STRING "Name or full path to lber library")
- if(CMAKE_USE_OPENLDAP AND USE_WIN32_LDAP)
- message(FATAL_ERROR "Cannot use USE_WIN32_LDAP and CMAKE_USE_OPENLDAP at the same time")
+ if(CMAKE_USE_OPENLDAP AND CURL_LDAP_WIN)
+ message(FATAL_ERROR "Cannot use CURL_LDAP_WIN and CMAKE_USE_OPENLDAP at the same time")
endif()
# Now that we know, we're not using windows LDAP...
- if(NOT USE_WIN32_LDAP)
+ if(NOT CURL_LDAP_WIN)
# Check for LDAP
set(CMAKE_REQUIRED_LIBRARIES ${OPENSSL_LIBRARIES})
check_library_exists_concat(${CMAKE_LDAP_LIB} ldap_init HAVE_LIBLDAP)
@@ -401,7 +384,7 @@ if(NOT CURL_DISABLE_LDAP)
return 0;
}"
)
- set(CMAKE_REQUIRED_DEFINITIONS "${CMAKE_REQUIRED_DEFINITIONS} -DLDAP_DEPRECATED=1")
+ set(CMAKE_REQUIRED_DEFINITIONS "-DLDAP_DEPRECATED=1" "-DWIN32_LEAN_AND_MEAN")
list(APPEND CMAKE_REQUIRED_LIBRARIES ${CMAKE_LDAP_LIB})
if(HAVE_LIBLBER)
list(APPEND CMAKE_REQUIRED_LIBRARIES ${CMAKE_LBER_LIB})
@@ -491,7 +474,7 @@ mark_as_advanced(CMAKE_USE_GSSAPI)
if(CMAKE_USE_GSSAPI)
find_package(GSS)
- set(HAVE_GSSAPI ${GSS_FOUND})
+ set(HAVE_GSS_API ${GSS_FOUND})
if(GSS_FOUND)
message(STATUS "Found ${GSS_FLAVOUR} GSSAPI version: \"${GSS_VERSION}\"")
@@ -554,13 +537,15 @@ endif()
# Check for header files
if(NOT UNIX)
- check_include_file_concat("windows.h" HAVE_WINDOWS_H)
- check_include_file_concat("winsock.h" HAVE_WINSOCK_H)
check_include_file_concat("ws2tcpip.h" HAVE_WS2TCPIP_H)
check_include_file_concat("winsock2.h" HAVE_WINSOCK2_H)
endif(NOT UNIX)
-
check_include_file_concat("stdio.h" HAVE_STDIO_H)
+if(NOT UNIX)
+ check_include_file_concat("windows.h" HAVE_WINDOWS_H)
+ check_include_file_concat("winsock.h" HAVE_WINSOCK_H)
+endif(NOT UNIX)
+
check_include_file_concat("inttypes.h" HAVE_INTTYPES_H)
check_include_file_concat("sys/filio.h" HAVE_SYS_FILIO_H)
check_include_file_concat("sys/ioctl.h" HAVE_SYS_IOCTL_H)
@@ -752,6 +737,7 @@ if(CMAKE_USE_OPENSSL)
HAVE_CRYPTO_CLEANUP_ALL_EX_DATA)
if(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
set(USE_OPENSSL 1)
+ set(USE_SSLEAY 1)
endif(HAVE_LIBCRYPTO AND HAVE_LIBSSL)
endif(CMAKE_USE_OPENSSL)
check_symbol_exists(gmtime_r "${CURL_INCLUDES}" HAVE_GMTIME_R)
@@ -1046,12 +1032,12 @@ _add_if("AsynchDNS" USE_ARES OR USE_THREADS_POSIX)
_add_if("IDN" HAVE_LIBIDN)
# TODO SSP1 (WinSSL) check is missing
_add_if("SSPI" USE_WINDOWS_SSPI)
-_add_if("GSS-API" HAVE_GSSAPI)
+_add_if("GSS-API" HAVE_GSS_API)
# TODO SSP1 missing for SPNEGO
_add_if("SPNEGO" NOT CURL_DISABLE_CRYPTO_AUTH AND
- (HAVE_GSSAPI OR USE_WINDOWS_SSPI))
+ (HAVE_GSS_API OR USE_WINDOWS_SSPI))
_add_if("Kerberos" NOT CURL_DISABLE_CRYPTO_AUTH AND
- (HAVE_GSSAPI OR USE_WINDOWS_SSPI))
+ (HAVE_GSS_API OR USE_WINDOWS_SSPI))
# NTLM support requires crypto function adaptions from various SSL libs
# TODO alternative SSL libs tests for SSP1, GNUTLS, NSS, DARWINSSL
if(NOT CURL_DISABLE_CRYPTO_AUTH AND (USE_OPENSSL OR
diff --git a/MacOSX-Framework b/MacOSX-Framework
index 6251bff2e..9863b78ee 100755
--- a/MacOSX-Framework
+++ b/MacOSX-Framework
@@ -94,7 +94,7 @@ if test ! -z $SDK32; then
rm -r libcurl.framework
mkdir -p libcurl.framework/${FRAMEWORK_VERSION}/Resources
cp lib/.libs/libcurl.dylib libcurl.framework/${FRAMEWORK_VERSION}/libcurl
- install_name_tool -id @rpath/libcurl.framework/${FRAMEWORK_VERSION}/libcurl libcurl.framework/${FRAMEWORK_VERSION}/libcurl
+ install_name_tool -id @executable_path/../Frameworks/libcurl.framework/${FRAMEWORK_VERSION}/libcurl libcurl.framework/${FRAMEWORK_VERSION}/libcurl
/usr/bin/sed -e "s/7\.12\.3/$VERSION/" lib/libcurl.plist >libcurl.framework/${FRAMEWORK_VERSION}/Resources/Info.plist
mkdir -p libcurl.framework/${FRAMEWORK_VERSION}/Headers/curl
cp include/curl/*.h libcurl.framework/${FRAMEWORK_VERSION}/Headers/curl
@@ -121,7 +121,7 @@ if test ! -z $SDK32; then
echo "----Appending 64 bit framework to 32 bit framework..."
cp lib/.libs/libcurl.dylib libcurl.framework/${FRAMEWORK_VERSION}/libcurl64
- install_name_tool -id @rpath/libcurl.framework/${FRAMEWORK_VERSION}/libcurl libcurl.framework/${FRAMEWORK_VERSION}/libcurl64
+ install_name_tool -id @executable_path/../Frameworks/libcurl.framework/${FRAMEWORK_VERSION}/libcurl libcurl.framework/${FRAMEWORK_VERSION}/libcurl64
cp libcurl.framework/${FRAMEWORK_VERSION}/libcurl libcurl.framework/${FRAMEWORK_VERSION}/libcurl32
pwd
lipo libcurl.framework/${FRAMEWORK_VERSION}/libcurl32 libcurl.framework/${FRAMEWORK_VERSION}/libcurl64 -create -output libcurl.framework/${FRAMEWORK_VERSION}/libcurl
diff --git a/Makefile b/Makefile
index 393a09d47..f0f50d8cf 100644
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -566,17 +566,6 @@ src/Makefile.vc12: src/Makefile.vc6
@echo "generate $@"
@sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc12/g" -e "s/VC6/VC12/g" src/Makefile.vc6 > src/Makefile.vc12
-# VC14 makefiles are for use with VS2015
-vc14: lib/Makefile.vc14 src/Makefile.vc14
-
-lib/Makefile.vc14: lib/Makefile.vc6
- @echo "generate $@"
- @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc14/g" -e "s/VC6/VC14/g" lib/Makefile.vc6 > lib/Makefile.vc14
-
-src/Makefile.vc14: src/Makefile.vc6
- @echo "generate $@"
- @sed -e "s#/GX /DWIN32 /YX#/EHsc /DWIN32#" -e "s#/GZ#/RTC1#" -e "s/ws2_32.lib/ws2_32.lib/g" -e "s/vc6/vc14/g" -e "s/VC6/VC14/g" src/Makefile.vc6 > src/Makefile.vc14
-
ca-bundle: lib/mk-ca-bundle.pl
@echo "generate a fresh ca-bundle.crt"
@perl $< -b -l -u lib/ca-bundle.crt
diff --git a/Makefile.am b/Makefile.am
index 5f1c881bc..3b91e8303 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -30,113 +30,101 @@ CMAKE_DIST = CMakeLists.txt CMake/CMakeConfigurableFile.in \
include/curl/curlbuild.h.cmake CMake/Macros.cmake
VC6_LIBTMPL = projects/Windows/VC6/lib/libcurl.tmpl
-VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp.dist
+VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp
VC6_LIBDSP_DEPS = $(VC6_LIBTMPL) Makefile.am lib/Makefile.inc
-VC6_SRCTMPL = projects/Windows/VC6/src/curl.tmpl
-VC6_SRCDSP = projects/Windows/VC6/src/curl.dsp.dist
+VC6_SRCTMPL = projects/Windows/VC6/src/curlsrc.tmpl
+VC6_SRCDSP = projects/Windows/VC6/src/curlsrc.dsp
VC6_SRCDSP_DEPS = $(VC6_SRCTMPL) Makefile.am src/Makefile.inc
VC7_LIBTMPL = projects/Windows/VC7/lib/libcurl.tmpl
-VC7_LIBVCPROJ = projects/Windows/VC7/lib/libcurl.vcproj.dist
+VC7_LIBVCPROJ = projects/Windows/VC7/lib/libcurl.vcproj
VC7_LIBVCPROJ_DEPS = $(VC7_LIBTMPL) Makefile.am lib/Makefile.inc
-VC7_SRCTMPL = projects/Windows/VC7/src/curl.tmpl
-VC7_SRCVCPROJ = projects/Windows/VC7/src/curl.vcproj.dist
+VC7_SRCTMPL = projects/Windows/VC7/src/curlsrc.tmpl
+VC7_SRCVCPROJ = projects/Windows/VC7/src/curlsrc.vcproj
VC7_SRCVCPROJ_DEPS = $(VC7_SRCTMPL) Makefile.am src/Makefile.inc
VC71_LIBTMPL = projects/Windows/VC7.1/lib/libcurl.tmpl
-VC71_LIBVCPROJ = projects/Windows/VC7.1/lib/libcurl.vcproj.dist
+VC71_LIBVCPROJ = projects/Windows/VC7.1/lib/libcurl.vcproj
VC71_LIBVCPROJ_DEPS = $(VC71_LIBTMPL) Makefile.am lib/Makefile.inc
-VC71_SRCTMPL = projects/Windows/VC7.1/src/curl.tmpl
-VC71_SRCVCPROJ = projects/Windows/VC7.1/src/curl.vcproj.dist
+VC71_SRCTMPL = projects/Windows/VC7.1/src/curlsrc.tmpl
+VC71_SRCVCPROJ = projects/Windows/VC7.1/src/curlsrc.vcproj
VC71_SRCVCPROJ_DEPS = $(VC71_SRCTMPL) Makefile.am src/Makefile.inc
VC8_LIBTMPL = projects/Windows/VC8/lib/libcurl.tmpl
-VC8_LIBVCPROJ = projects/Windows/VC8/lib/libcurl.vcproj.dist
+VC8_LIBVCPROJ = projects/Windows/VC8/lib/libcurl.vcproj
VC8_LIBVCPROJ_DEPS = $(VC8_LIBTMPL) Makefile.am lib/Makefile.inc
-VC8_SRCTMPL = projects/Windows/VC8/src/curl.tmpl
-VC8_SRCVCPROJ = projects/Windows/VC8/src/curl.vcproj.dist
+VC8_SRCTMPL = projects/Windows/VC8/src/curlsrc.tmpl
+VC8_SRCVCPROJ = projects/Windows/VC8/src/curlsrc.vcproj
VC8_SRCVCPROJ_DEPS = $(VC8_SRCTMPL) Makefile.am src/Makefile.inc
VC9_LIBTMPL = projects/Windows/VC9/lib/libcurl.tmpl
-VC9_LIBVCPROJ = projects/Windows/VC9/lib/libcurl.vcproj.dist
+VC9_LIBVCPROJ = projects/Windows/VC9/lib/libcurl.vcproj
VC9_LIBVCPROJ_DEPS = $(VC9_LIBTMPL) Makefile.am lib/Makefile.inc
-VC9_SRCTMPL = projects/Windows/VC9/src/curl.tmpl
-VC9_SRCVCPROJ = projects/Windows/VC9/src/curl.vcproj.dist
+VC9_SRCTMPL = projects/Windows/VC9/src/curlsrc.tmpl
+VC9_SRCVCPROJ = projects/Windows/VC9/src/curlsrc.vcproj
VC9_SRCVCPROJ_DEPS = $(VC9_SRCTMPL) Makefile.am src/Makefile.inc
VC10_LIBTMPL = projects/Windows/VC10/lib/libcurl.tmpl
-VC10_LIBVCXPROJ = projects/Windows/VC10/lib/libcurl.vcxproj.dist
+VC10_LIBVCXPROJ = projects/Windows/VC10/lib/libcurl.vcxproj
VC10_LIBVCXPROJ_DEPS = $(VC10_LIBTMPL) Makefile.am lib/Makefile.inc
-VC10_SRCTMPL = projects/Windows/VC10/src/curl.tmpl
-VC10_SRCVCXPROJ = projects/Windows/VC10/src/curl.vcxproj.dist
+VC10_SRCTMPL = projects/Windows/VC10/src/curlsrc.tmpl
+VC10_SRCVCXPROJ = projects/Windows/VC10/src/curlsrc.vcxproj
VC10_SRCVCXPROJ_DEPS = $(VC10_SRCTMPL) Makefile.am src/Makefile.inc
VC11_LIBTMPL = projects/Windows/VC11/lib/libcurl.tmpl
-VC11_LIBVCXPROJ = projects/Windows/VC11/lib/libcurl.vcxproj.dist
+VC11_LIBVCXPROJ = projects/Windows/VC11/lib/libcurl.vcxproj
VC11_LIBVCXPROJ_DEPS = $(VC11_LIBTMPL) Makefile.am lib/Makefile.inc
-VC11_SRCTMPL = projects/Windows/VC11/src/curl.tmpl
-VC11_SRCVCXPROJ = projects/Windows/VC11/src/curl.vcxproj.dist
+VC11_SRCTMPL = projects/Windows/VC11/src/curlsrc.tmpl
+VC11_SRCVCXPROJ = projects/Windows/VC11/src/curlsrc.vcxproj
VC11_SRCVCXPROJ_DEPS = $(VC11_SRCTMPL) Makefile.am src/Makefile.inc
VC12_LIBTMPL = projects/Windows/VC12/lib/libcurl.tmpl
-VC12_LIBVCXPROJ = projects/Windows/VC12/lib/libcurl.vcxproj.dist
+VC12_LIBVCXPROJ = projects/Windows/VC12/lib/libcurl.vcxproj
VC12_LIBVCXPROJ_DEPS = $(VC12_LIBTMPL) Makefile.am lib/Makefile.inc
-VC12_SRCTMPL = projects/Windows/VC12/src/curl.tmpl
-VC12_SRCVCXPROJ = projects/Windows/VC12/src/curl.vcxproj.dist
+VC12_SRCTMPL = projects/Windows/VC12/src/curlsrc.tmpl
+VC12_SRCVCXPROJ = projects/Windows/VC12/src/curlsrc.vcxproj
VC12_SRCVCXPROJ_DEPS = $(VC12_SRCTMPL) Makefile.am src/Makefile.inc
-VC14_LIBTMPL = projects/Windows/VC14/lib/libcurl.tmpl
-VC14_LIBVCXPROJ = projects/Windows/VC14/lib/libcurl.vcxproj.dist
-VC14_LIBVCXPROJ_DEPS = $(VC14_LIBTMPL) Makefile.am lib/Makefile.inc
-VC14_SRCTMPL = projects/Windows/VC14/src/curl.tmpl
-VC14_SRCVCXPROJ = projects/Windows/VC14/src/curl.vcxproj.dist
-VC14_SRCVCXPROJ_DEPS = $(VC14_SRCTMPL) Makefile.am src/Makefile.inc
-
VC_DIST = projects/README \
projects/build-openssl.bat \
- projects/build-wolfssl.bat \
projects/checksrc.bat \
- projects/Windows/VC6/curl-all.dsw \
- projects/Windows/VC6/lib/libcurl.dsw \
- projects/Windows/VC6/src/curl.dsw \
- projects/Windows/VC7/curl-all.sln \
- projects/Windows/VC7/lib/libcurl.sln \
- projects/Windows/VC7/src/curl.sln \
- projects/Windows/VC7.1/curl-all.sln \
- projects/Windows/VC7.1/lib/libcurl.sln \
- projects/Windows/VC7.1/src/curl.sln \
- projects/Windows/VC8/curl-all.sln \
- projects/Windows/VC8/lib/libcurl.sln \
- projects/Windows/VC8/src/curl.sln \
- projects/Windows/VC9/curl-all.sln \
- projects/Windows/VC9/lib/libcurl.sln \
- projects/Windows/VC9/src/curl.sln \
- projects/Windows/VC10/curl-all.sln \
- projects/Windows/VC10/lib/libcurl.sln \
- projects/Windows/VC10/src/curl.sln \
- projects/Windows/VC11/curl-all.sln \
- projects/Windows/VC11/lib/libcurl.sln \
- projects/Windows/VC11/src/curl.sln \
- projects/Windows/VC12/curl-all.sln \
- projects/Windows/VC12/lib/libcurl.sln \
- projects/Windows/VC12/src/curl.sln \
- projects/Windows/VC14/curl-all.sln \
- projects/Windows/VC14/lib/libcurl.sln \
- projects/Windows/VC14/src/curl.sln
+ projects/Windows/VC6/curl.dsw \
+ projects/Windows/VC6/lib/libcurl.dsw $(VC6_LIBDSP) \
+ projects/Windows/VC6/src/curlsrc.dsw $(VC6_SRCDSP) \
+ projects/Windows/VC7/curl.sln \
+ projects/Windows/VC7/lib/libcurl.sln $(VC7_LIBVCPROJ) \
+ projects/Windows/VC7/src/curlsrc.sln $(VC7_SRCVCPROJ) \
+ projects/Windows/VC7.1/curl.sln \
+ projects/Windows/VC7.1/lib/libcurl.sln $(VC71_LIBVCPROJ) \
+ projects/Windows/VC7.1/src/curlsrc.sln $(VC71_SRCVCPROJ) \
+ projects/Windows/VC8/curl.sln \
+ projects/Windows/VC8/lib/libcurl.sln $(VC8_LIBVCPROJ) \
+ projects/Windows/VC8/src/curlsrc.sln $(VC8_SRCVCPROJ) \
+ projects/Windows/VC9/curl.sln \
+ projects/Windows/VC9/lib/libcurl.sln $(VC9_LIBVCPROJ) \
+ projects/Windows/VC9/src/curlsrc.sln $(VC9_SRCVCPROJ) \
+ projects/Windows/VC10/curl.sln \
+ projects/Windows/VC10/lib/libcurl.sln $(VC10_LIBVCXPROJ) \
+ projects/Windows/VC10/src/curlsrc.sln $(VC10_SRCVCXPROJ) \
+ projects/Windows/VC11/curl.sln \
+ projects/Windows/VC11/lib/libcurl.sln $(VC11_LIBVCXPROJ) \
+ projects/Windows/VC11/src/curlsrc.sln $(VC11_SRCVCXPROJ) \
+ projects/Windows/VC12/curl.sln \
+ projects/Windows/VC12/lib/libcurl.sln $(VC12_LIBVCXPROJ) \
+ projects/Windows/VC12/src/curlsrc.sln $(VC12_SRCVCXPROJ)
WINBUILD_DIST = winbuild/BUILD.WINDOWS.txt winbuild/gen_resp_file.bat \
winbuild/MakefileBuild.vc winbuild/Makefile.vc \
winbuild/Makefile.msvc.names
EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in \
- RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework scripts/zsh.pl \
+ RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework \
$(CMAKE_DIST) $(VC_DIST) $(WINBUILD_DIST) lib/libcurl.vers.in
CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \
$(VC71_LIBVCPROJ) $(VC71_SRCVCPROJ) $(VC8_LIBVCPROJ) $(VC8_SRCVCPROJ) \
$(VC9_LIBVCPROJ) $(VC9_SRCVCPROJ) $(VC10_LIBVCXPROJ) $(VC10_SRCVCXPROJ) \
- $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ) \
- $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ)
+ $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ)
bin_SCRIPTS = curl-config
@@ -165,7 +153,7 @@ html:
pdf:
cd docs; make pdf
-check: test examples check-docs
+check: test examples
if CROSSCOMPILING
test-full: test
@@ -193,9 +181,6 @@ endif
examples:
@(cd docs/examples; $(MAKE) check)
-check-docs:
- @(cd docs/libcurl; $(MAKE) check)
-
# This is a hook to have 'make clean' also clean up the docs and the tests
# dir. The extra check for the Makefiles being present is necessary because
# 'make distcheck' will make clean first in these directories _before_ it runs
@@ -281,7 +266,7 @@ vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \
$(VC8_LIBVCPROJ_DEPS) $(VC8_SRCVCPROJ_DEPS) $(VC9_LIBVCPROJ_DEPS) \
$(VC9_SRCVCPROJ_DEPS) $(VC10_LIBVCXPROJ_DEPS) $(VC10_SRCVCXPROJ_DEPS) \
$(VC11_LIBVCXPROJ_DEPS) $(VC11_SRCVCXPROJ_DEPS) $(VC12_LIBVCXPROJ_DEPS) \
- $(VC12_SRCVCXPROJ_DEPS) $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS)
+ $(VC12_SRCVCXPROJ_DEPS)
@(win32_lib_srcs='$(LIB_CFILES)'; \
win32_lib_hdrs='$(LIB_HFILES) config-win32.h'; \
win32_lib_rc='$(LIB_RCFILES)'; \
@@ -542,22 +527,4 @@ function gen_element(type, dir, file)\
-v src_rc="$$win32_src_rc" \
-v src_x_srcs="$$sorted_src_x_srcs" \
-v src_x_hdrs="$$sorted_src_x_hdrs" \
- "$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; }; \
- \
- echo "generating '$(VC14_LIBVCXPROJ)'"; \
- awk -v proj_type=vcxproj \
- -v lib_srcs="$$sorted_lib_srcs" \
- -v lib_hdrs="$$sorted_lib_hdrs" \
- -v lib_rc="$$win32_lib_rc" \
- -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \
- -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \
- "$$awk_code" $(srcdir)/$(VC14_LIBTMPL) > $(VC14_LIBVCXPROJ) || { exit 1; }; \
- \
- echo "generating '$(VC14_SRCVCXPROJ)'"; \
- awk -v proj_type=vcxproj \
- -v src_srcs="$$sorted_src_srcs" \
- -v src_hdrs="$$sorted_src_hdrs" \
- -v src_rc="$$win32_src_rc" \
- -v src_x_srcs="$$sorted_src_x_srcs" \
- -v src_x_hdrs="$$sorted_src_x_hdrs" \
- "$$awk_code" $(srcdir)/$(VC14_SRCTMPL) > $(VC14_SRCVCXPROJ) || { exit 1; };)
+ "$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; };)
diff --git a/Makefile.in b/Makefile.in
index a86901d51..51c490e9e 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -21,7 +21,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -43,7 +43,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -69,17 +69,7 @@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -142,6 +132,12 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+DIST_COMMON = $(srcdir)/lib/Makefile.inc $(srcdir)/src/Makefile.inc \
+ $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) mkinstalldirs \
+ $(srcdir)/curl-config.in $(srcdir)/libcurl.pc.in COPYING \
+ README compile config.guess config.sub depcomp install-sh \
+ missing ltmain.sh
subdir = .
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
@@ -163,11 +159,9 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
- $(am__configure_deps) $(am__DIST_COMMON)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
configure.lineno config.status.lineno
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES = curl-config libcurl.pc
@@ -257,10 +251,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
CSCOPE = cscope
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/curl-config.in \
- $(srcdir)/lib/Makefile.inc $(srcdir)/libcurl.pc.in \
- $(srcdir)/src/Makefile.inc COPYING README compile config.guess \
- config.sub depcomp install-sh ltmain.sh missing
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
distdir = $(PACKAGE)-$(VERSION)
top_distdir = $(distdir)
@@ -360,7 +350,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -413,7 +403,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -430,6 +419,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -497,104 +487,93 @@ CMAKE_DIST = CMakeLists.txt CMake/CMakeConfigurableFile.in \
include/curl/curlbuild.h.cmake CMake/Macros.cmake
VC6_LIBTMPL = projects/Windows/VC6/lib/libcurl.tmpl
-VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp.dist
+VC6_LIBDSP = projects/Windows/VC6/lib/libcurl.dsp
VC6_LIBDSP_DEPS = $(VC6_LIBTMPL) Makefile.am lib/Makefile.inc
-VC6_SRCTMPL = projects/Windows/VC6/src/curl.tmpl
-VC6_SRCDSP = projects/Windows/VC6/src/curl.dsp.dist
+VC6_SRCTMPL = projects/Windows/VC6/src/curlsrc.tmpl
+VC6_SRCDSP = projects/Windows/VC6/src/curlsrc.dsp
VC6_SRCDSP_DEPS = $(VC6_SRCTMPL) Makefile.am src/Makefile.inc
VC7_LIBTMPL = projects/Windows/VC7/lib/libcurl.tmpl
-VC7_LIBVCPROJ = projects/Windows/VC7/lib/libcurl.vcproj.dist
+VC7_LIBVCPROJ = projects/Windows/VC7/lib/libcurl.vcproj
VC7_LIBVCPROJ_DEPS = $(VC7_LIBTMPL) Makefile.am lib/Makefile.inc
-VC7_SRCTMPL = projects/Windows/VC7/src/curl.tmpl
-VC7_SRCVCPROJ = projects/Windows/VC7/src/curl.vcproj.dist
+VC7_SRCTMPL = projects/Windows/VC7/src/curlsrc.tmpl
+VC7_SRCVCPROJ = projects/Windows/VC7/src/curlsrc.vcproj
VC7_SRCVCPROJ_DEPS = $(VC7_SRCTMPL) Makefile.am src/Makefile.inc
VC71_LIBTMPL = projects/Windows/VC7.1/lib/libcurl.tmpl
-VC71_LIBVCPROJ = projects/Windows/VC7.1/lib/libcurl.vcproj.dist
+VC71_LIBVCPROJ = projects/Windows/VC7.1/lib/libcurl.vcproj
VC71_LIBVCPROJ_DEPS = $(VC71_LIBTMPL) Makefile.am lib/Makefile.inc
-VC71_SRCTMPL = projects/Windows/VC7.1/src/curl.tmpl
-VC71_SRCVCPROJ = projects/Windows/VC7.1/src/curl.vcproj.dist
+VC71_SRCTMPL = projects/Windows/VC7.1/src/curlsrc.tmpl
+VC71_SRCVCPROJ = projects/Windows/VC7.1/src/curlsrc.vcproj
VC71_SRCVCPROJ_DEPS = $(VC71_SRCTMPL) Makefile.am src/Makefile.inc
VC8_LIBTMPL = projects/Windows/VC8/lib/libcurl.tmpl
-VC8_LIBVCPROJ = projects/Windows/VC8/lib/libcurl.vcproj.dist
+VC8_LIBVCPROJ = projects/Windows/VC8/lib/libcurl.vcproj
VC8_LIBVCPROJ_DEPS = $(VC8_LIBTMPL) Makefile.am lib/Makefile.inc
-VC8_SRCTMPL = projects/Windows/VC8/src/curl.tmpl
-VC8_SRCVCPROJ = projects/Windows/VC8/src/curl.vcproj.dist
+VC8_SRCTMPL = projects/Windows/VC8/src/curlsrc.tmpl
+VC8_SRCVCPROJ = projects/Windows/VC8/src/curlsrc.vcproj
VC8_SRCVCPROJ_DEPS = $(VC8_SRCTMPL) Makefile.am src/Makefile.inc
VC9_LIBTMPL = projects/Windows/VC9/lib/libcurl.tmpl
-VC9_LIBVCPROJ = projects/Windows/VC9/lib/libcurl.vcproj.dist
+VC9_LIBVCPROJ = projects/Windows/VC9/lib/libcurl.vcproj
VC9_LIBVCPROJ_DEPS = $(VC9_LIBTMPL) Makefile.am lib/Makefile.inc
-VC9_SRCTMPL = projects/Windows/VC9/src/curl.tmpl
-VC9_SRCVCPROJ = projects/Windows/VC9/src/curl.vcproj.dist
+VC9_SRCTMPL = projects/Windows/VC9/src/curlsrc.tmpl
+VC9_SRCVCPROJ = projects/Windows/VC9/src/curlsrc.vcproj
VC9_SRCVCPROJ_DEPS = $(VC9_SRCTMPL) Makefile.am src/Makefile.inc
VC10_LIBTMPL = projects/Windows/VC10/lib/libcurl.tmpl
-VC10_LIBVCXPROJ = projects/Windows/VC10/lib/libcurl.vcxproj.dist
+VC10_LIBVCXPROJ = projects/Windows/VC10/lib/libcurl.vcxproj
VC10_LIBVCXPROJ_DEPS = $(VC10_LIBTMPL) Makefile.am lib/Makefile.inc
-VC10_SRCTMPL = projects/Windows/VC10/src/curl.tmpl
-VC10_SRCVCXPROJ = projects/Windows/VC10/src/curl.vcxproj.dist
+VC10_SRCTMPL = projects/Windows/VC10/src/curlsrc.tmpl
+VC10_SRCVCXPROJ = projects/Windows/VC10/src/curlsrc.vcxproj
VC10_SRCVCXPROJ_DEPS = $(VC10_SRCTMPL) Makefile.am src/Makefile.inc
VC11_LIBTMPL = projects/Windows/VC11/lib/libcurl.tmpl
-VC11_LIBVCXPROJ = projects/Windows/VC11/lib/libcurl.vcxproj.dist
+VC11_LIBVCXPROJ = projects/Windows/VC11/lib/libcurl.vcxproj
VC11_LIBVCXPROJ_DEPS = $(VC11_LIBTMPL) Makefile.am lib/Makefile.inc
-VC11_SRCTMPL = projects/Windows/VC11/src/curl.tmpl
-VC11_SRCVCXPROJ = projects/Windows/VC11/src/curl.vcxproj.dist
+VC11_SRCTMPL = projects/Windows/VC11/src/curlsrc.tmpl
+VC11_SRCVCXPROJ = projects/Windows/VC11/src/curlsrc.vcxproj
VC11_SRCVCXPROJ_DEPS = $(VC11_SRCTMPL) Makefile.am src/Makefile.inc
VC12_LIBTMPL = projects/Windows/VC12/lib/libcurl.tmpl
-VC12_LIBVCXPROJ = projects/Windows/VC12/lib/libcurl.vcxproj.dist
+VC12_LIBVCXPROJ = projects/Windows/VC12/lib/libcurl.vcxproj
VC12_LIBVCXPROJ_DEPS = $(VC12_LIBTMPL) Makefile.am lib/Makefile.inc
-VC12_SRCTMPL = projects/Windows/VC12/src/curl.tmpl
-VC12_SRCVCXPROJ = projects/Windows/VC12/src/curl.vcxproj.dist
+VC12_SRCTMPL = projects/Windows/VC12/src/curlsrc.tmpl
+VC12_SRCVCXPROJ = projects/Windows/VC12/src/curlsrc.vcxproj
VC12_SRCVCXPROJ_DEPS = $(VC12_SRCTMPL) Makefile.am src/Makefile.inc
-VC14_LIBTMPL = projects/Windows/VC14/lib/libcurl.tmpl
-VC14_LIBVCXPROJ = projects/Windows/VC14/lib/libcurl.vcxproj.dist
-VC14_LIBVCXPROJ_DEPS = $(VC14_LIBTMPL) Makefile.am lib/Makefile.inc
-VC14_SRCTMPL = projects/Windows/VC14/src/curl.tmpl
-VC14_SRCVCXPROJ = projects/Windows/VC14/src/curl.vcxproj.dist
-VC14_SRCVCXPROJ_DEPS = $(VC14_SRCTMPL) Makefile.am src/Makefile.inc
VC_DIST = projects/README \
projects/build-openssl.bat \
- projects/build-wolfssl.bat \
projects/checksrc.bat \
- projects/Windows/VC6/curl-all.dsw \
- projects/Windows/VC6/lib/libcurl.dsw \
- projects/Windows/VC6/src/curl.dsw \
- projects/Windows/VC7/curl-all.sln \
- projects/Windows/VC7/lib/libcurl.sln \
- projects/Windows/VC7/src/curl.sln \
- projects/Windows/VC7.1/curl-all.sln \
- projects/Windows/VC7.1/lib/libcurl.sln \
- projects/Windows/VC7.1/src/curl.sln \
- projects/Windows/VC8/curl-all.sln \
- projects/Windows/VC8/lib/libcurl.sln \
- projects/Windows/VC8/src/curl.sln \
- projects/Windows/VC9/curl-all.sln \
- projects/Windows/VC9/lib/libcurl.sln \
- projects/Windows/VC9/src/curl.sln \
- projects/Windows/VC10/curl-all.sln \
- projects/Windows/VC10/lib/libcurl.sln \
- projects/Windows/VC10/src/curl.sln \
- projects/Windows/VC11/curl-all.sln \
- projects/Windows/VC11/lib/libcurl.sln \
- projects/Windows/VC11/src/curl.sln \
- projects/Windows/VC12/curl-all.sln \
- projects/Windows/VC12/lib/libcurl.sln \
- projects/Windows/VC12/src/curl.sln \
- projects/Windows/VC14/curl-all.sln \
- projects/Windows/VC14/lib/libcurl.sln \
- projects/Windows/VC14/src/curl.sln
+ projects/Windows/VC6/curl.dsw \
+ projects/Windows/VC6/lib/libcurl.dsw $(VC6_LIBDSP) \
+ projects/Windows/VC6/src/curlsrc.dsw $(VC6_SRCDSP) \
+ projects/Windows/VC7/curl.sln \
+ projects/Windows/VC7/lib/libcurl.sln $(VC7_LIBVCPROJ) \
+ projects/Windows/VC7/src/curlsrc.sln $(VC7_SRCVCPROJ) \
+ projects/Windows/VC7.1/curl.sln \
+ projects/Windows/VC7.1/lib/libcurl.sln $(VC71_LIBVCPROJ) \
+ projects/Windows/VC7.1/src/curlsrc.sln $(VC71_SRCVCPROJ) \
+ projects/Windows/VC8/curl.sln \
+ projects/Windows/VC8/lib/libcurl.sln $(VC8_LIBVCPROJ) \
+ projects/Windows/VC8/src/curlsrc.sln $(VC8_SRCVCPROJ) \
+ projects/Windows/VC9/curl.sln \
+ projects/Windows/VC9/lib/libcurl.sln $(VC9_LIBVCPROJ) \
+ projects/Windows/VC9/src/curlsrc.sln $(VC9_SRCVCPROJ) \
+ projects/Windows/VC10/curl.sln \
+ projects/Windows/VC10/lib/libcurl.sln $(VC10_LIBVCXPROJ) \
+ projects/Windows/VC10/src/curlsrc.sln $(VC10_SRCVCXPROJ) \
+ projects/Windows/VC11/curl.sln \
+ projects/Windows/VC11/lib/libcurl.sln $(VC11_LIBVCXPROJ) \
+ projects/Windows/VC11/src/curlsrc.sln $(VC11_SRCVCXPROJ) \
+ projects/Windows/VC12/curl.sln \
+ projects/Windows/VC12/lib/libcurl.sln $(VC12_LIBVCXPROJ) \
+ projects/Windows/VC12/src/curlsrc.sln $(VC12_SRCVCXPROJ)
WINBUILD_DIST = winbuild/BUILD.WINDOWS.txt winbuild/gen_resp_file.bat \
winbuild/MakefileBuild.vc winbuild/Makefile.vc \
winbuild/Makefile.msvc.names
EXTRA_DIST = CHANGES COPYING maketgz Makefile.dist curl-config.in \
- RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework scripts/zsh.pl \
+ RELEASE-NOTES buildconf libcurl.pc.in MacOSX-Framework \
$(CMAKE_DIST) $(VC_DIST) $(WINBUILD_DIST) lib/libcurl.vers.in
CLEANFILES = $(VC6_LIBDSP) $(VC6_SRCDSP) $(VC7_LIBVCPROJ) $(VC7_SRCVCPROJ) \
$(VC71_LIBVCPROJ) $(VC71_SRCVCPROJ) $(VC8_LIBVCPROJ) $(VC8_SRCVCPROJ) \
$(VC9_LIBVCPROJ) $(VC9_SRCVCPROJ) $(VC10_LIBVCXPROJ) $(VC10_SRCVCXPROJ) \
- $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ) \
- $(VC14_LIBVCXPROJ) $(VC14_SRCVCXPROJ)
+ $(VC11_LIBVCXPROJ) $(VC11_SRCVCXPROJ) $(VC12_LIBVCXPROJ) $(VC12_SRCVCXPROJ)
bin_SCRIPTS = curl-config
SUBDIRS = lib src include
@@ -603,11 +582,11 @@ pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = libcurl.pc
LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \
vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c \
- vtls/cyassl.c vtls/schannel.c vtls/darwinssl.c vtls/gskit.c
+ vtls/cyassl.c vtls/curl_schannel.c vtls/curl_darwinssl.c vtls/gskit.c
LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h \
vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h \
- vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h
+ vtls/cyassl.h vtls/curl_schannel.h vtls/curl_darwinssl.h vtls/gskit.h
LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
@@ -625,9 +604,8 @@ LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
http_negotiate_sspi.c http_proxy.c non-ascii.c asyn-ares.c \
asyn-thread.c curl_gssapi.c curl_ntlm.c curl_ntlm_wb.c \
curl_ntlm_core.c curl_ntlm_msgs.c curl_sasl.c curl_multibyte.c \
- hostcheck.c conncache.c pipeline.c dotdot.c x509asn1.c \
- http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c \
- curl_des.c
+ hostcheck.c bundles.c conncache.c pipeline.c dotdot.c x509asn1.c \
+ http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c
LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h if2ip.h \
@@ -643,10 +621,9 @@ LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
rtsp.h curl_threads.h warnless.h curl_hmac.h curl_rtmp.h \
curl_gethostname.h gopher.h http_proxy.h non-ascii.h asyn.h \
curl_ntlm.h curl_gssapi.h curl_ntlm_wb.h curl_ntlm_core.h \
- curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h \
+ curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h bundles.h \
conncache.h curl_setup_once.h multihandle.h setup-vms.h pipeline.h \
- dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h curl_des.h \
- curl_printf.h
+ dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h
LIB_RCFILES = libcurl.rc
CSOURCES = $(LIB_CFILES) $(LIB_VTLS_CFILES)
@@ -772,6 +749,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/li
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -781,7 +759,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/lib/Makefile.inc $(srcdir)/src/Makefile.inc $(am__empty):
+$(srcdir)/lib/Makefile.inc $(srcdir)/src/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
$(SHELL) ./config.status --recheck
@@ -1051,15 +1029,15 @@ dist-xz: distdir
$(am__post_remove_distdir)
dist-tarZ: distdir
- @echo WARNING: "Support for distribution archives compressed with" \
- "legacy program 'compress' is deprecated." >&2
+ @echo WARNING: "Support for shar distribution archives is" \
+ "deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z
$(am__post_remove_distdir)
dist-shar: distdir
- @echo WARNING: "Support for shar distribution archives is" \
- "deprecated." >&2
+ @echo WARNING: "Support for distribution archives compressed with" \
+ "legacy program 'compress' is deprecated." >&2
@echo WARNING: "It will be removed altogether in Automake 2.0" >&2
shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz
$(am__post_remove_distdir)
@@ -1095,17 +1073,17 @@ distcheck: dist
esac
chmod -R a-w $(distdir)
chmod u+w $(distdir)
- mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst
+ mkdir $(distdir)/_build $(distdir)/_inst
chmod a-w $(distdir)
test -d $(distdir)/_build || exit 0; \
dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \
&& dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \
&& am__cwd=`pwd` \
- && $(am__cd) $(distdir)/_build/sub \
- && ../../configure \
+ && $(am__cd) $(distdir)/_build \
+ && ../configure \
$(AM_DISTCHECK_CONFIGURE_FLAGS) \
$(DISTCHECK_CONFIGURE_FLAGS) \
- --srcdir=../.. --prefix="$$dc_install_base" \
+ --srcdir=.. --prefix="$$dc_install_base" \
&& $(MAKE) $(AM_MAKEFLAGS) \
&& $(MAKE) $(AM_MAKEFLAGS) dvi \
&& $(MAKE) $(AM_MAKEFLAGS) check \
@@ -1287,8 +1265,6 @@ uninstall-am: uninstall-binSCRIPTS uninstall-pkgconfigDATA
uninstall-am uninstall-binSCRIPTS uninstall-hook \
uninstall-pkgconfigDATA
-.PRECIOUS: Makefile
-
# List of files required to generate VC IDE .dsp, .vcproj and .vcxproj files
@@ -1307,7 +1283,7 @@ html:
pdf:
cd docs; make pdf
-check: test examples check-docs
+check: test examples
@CROSSCOMPILING_TRUE@test-full: test
@CROSSCOMPILING_TRUE@test-torture: test
@@ -1330,9 +1306,6 @@ check: test examples check-docs
examples:
@(cd docs/examples; $(MAKE) check)
-check-docs:
- @(cd docs/libcurl; $(MAKE) check)
-
# This is a hook to have 'make clean' also clean up the docs and the tests
# dir. The extra check for the Makefiles being present is necessary because
# 'make distcheck' will make clean first in these directories _before_ it runs
@@ -1418,7 +1391,7 @@ vc-ide: $(VC6_LIBDSP_DEPS) $(VC6_SRCDSP_DEPS) $(VC7_LIBVCPROJ_DEPS) \
$(VC8_LIBVCPROJ_DEPS) $(VC8_SRCVCPROJ_DEPS) $(VC9_LIBVCPROJ_DEPS) \
$(VC9_SRCVCPROJ_DEPS) $(VC10_LIBVCXPROJ_DEPS) $(VC10_SRCVCXPROJ_DEPS) \
$(VC11_LIBVCXPROJ_DEPS) $(VC11_SRCVCXPROJ_DEPS) $(VC12_LIBVCXPROJ_DEPS) \
- $(VC12_SRCVCXPROJ_DEPS) $(VC14_LIBVCXPROJ_DEPS) $(VC14_SRCVCXPROJ_DEPS)
+ $(VC12_SRCVCXPROJ_DEPS)
@(win32_lib_srcs='$(LIB_CFILES)'; \
win32_lib_hdrs='$(LIB_HFILES) config-win32.h'; \
win32_lib_rc='$(LIB_RCFILES)'; \
@@ -1679,25 +1652,7 @@ function gen_element(type, dir, file)\
-v src_rc="$$win32_src_rc" \
-v src_x_srcs="$$sorted_src_x_srcs" \
-v src_x_hdrs="$$sorted_src_x_hdrs" \
- "$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; }; \
- \
- echo "generating '$(VC14_LIBVCXPROJ)'"; \
- awk -v proj_type=vcxproj \
- -v lib_srcs="$$sorted_lib_srcs" \
- -v lib_hdrs="$$sorted_lib_hdrs" \
- -v lib_rc="$$win32_lib_rc" \
- -v lib_vtls_srcs="$$sorted_lib_vtls_srcs" \
- -v lib_vtls_hdrs="$$sorted_lib_vtls_hdrs" \
- "$$awk_code" $(srcdir)/$(VC14_LIBTMPL) > $(VC14_LIBVCXPROJ) || { exit 1; }; \
- \
- echo "generating '$(VC14_SRCVCXPROJ)'"; \
- awk -v proj_type=vcxproj \
- -v src_srcs="$$sorted_src_srcs" \
- -v src_hdrs="$$sorted_src_hdrs" \
- -v src_rc="$$win32_src_rc" \
- -v src_x_srcs="$$sorted_src_x_srcs" \
- -v src_x_hdrs="$$sorted_src_x_hdrs" \
- "$$awk_code" $(srcdir)/$(VC14_SRCTMPL) > $(VC14_SRCVCXPROJ) || { exit 1; };)
+ "$$awk_code" $(srcdir)/$(VC12_SRCTMPL) > $(VC12_SRCVCXPROJ) || { exit 1; };)
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/README b/README
index d92c7f8bf..2ffacc32c 100644
--- a/README
+++ b/README
@@ -38,12 +38,12 @@ GIT
To download the very latest source off the GIT server do this:
- git clone https://github.com/bagder/curl.git
+ git clone git://github.com/bagder/curl.git
(you'll get a directory named curl created, filled with the source code)
NOTICE
Curl contains pieces of source code that is Copyright (c) 1998, 1999
- Kungliga Tekniska Högskolan. This notice is included here to comply with the
+ Kungliga Tekniska Högskolan. This notice is included here to comply with the
distribution terms.
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index f1229788c..123088f6c 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -1,81 +1,146 @@
-Curl and libcurl 7.44.0
+Curl and libcurl 7.40.0
- Public curl releases: 148
- Command line options: 176
- curl_easy_setopt() options: 219
+ Public curl releases: 143
+ Command line options: 162
+ curl_easy_setopt() options: 208
Public functions in libcurl: 58
- Contributors: 1291
+ Contributors: 1219
This release includes the following changes:
- o http2: added CURLMOPT_PUSHFUNCTION and CURLMOPT_PUSHDATA [6]
- o examples: added http2-serverpush.c [7]
- o http2: added curl_pushheader_byname() and curl_pushheader_bynum()
- o docs: added CODE_OF_CONDUCT.md [8]
- o curl: Add --ssl-no-revoke to disable certificate revocation checks [5]
- o libcurl: New value CURLSSLOPT_NO_REVOKE for CURLOPT_SSL_OPTIONS [9]
- o makefile: Added support for VC14
- o build: Added Visual Studio 2015 (VC14) project files
- o build: Added wolfSSL configurations to VC10+ project files [18]
+ o http_digest: Added support for Windows SSPI based authentication
+ o version info: Added Kerberos V5 to the supported features
+ o Makefile: Added VC targets for WinIDN
+ o config-win32: Introduce build targets for VS2012+
+ o SSL: Add PEM format support for public key pinning
+ o smtp: Added support for the conversion of Unix newlines during mail send [8]
+ o smb: Added initial support for the SMB/CIFS protocol
+ o Added support for HTTP over unix domain sockets, via
+ CURLOPT_UNIX_SOCKET_PATH and --unix-socket
+ o sasl: Added support for GSS-API based Kerberos V5 authentication
This release includes the following bugfixes:
- o FTP: fix HTTP CONNECT logic regression [1]
- o openssl: Fix build with openssl < ~ 0.9.8f
- o openssl: fix build with BoringSSL
- o curl_easy_setopt.3: option order doesn't matter
- o openssl: fix use of uninitialized buffer [2]
- o RTSP: removed dead code
- o Makefile.m32: add support for CURL_LDFLAG_EXTRAS
- o curl: always provide negotiate/kerberos options
- o cookie: Fix bug in export if any-domain cookie is present
- o curl_easy_setopt.3: mention CURLOPT_PIPEWAIT
- o INSTALL: Advise use of non-native SSL for Windows <= XP
- o tool_help: fix --tlsv1 help text to use >= for TLSv1
- o HTTP: POSTFIELDSIZE set after added to multi handle [3]
- o SSL-PROBLEMS: mention WinSSL problems in WinXP
- o setup-vms.h: Symbol case fixups
- o SSL: Pinned public key hash support
- o libtest: call PR_Cleanup() on exit if NSPR is used
- o ntlm_wb: Fix theoretical memory leak
- o runtests: Allow for spaces in curl custom path
- o http2: add stream != NULL checks for reliability
- o schannel: Replace deprecated GetVersion with VerifyVersionInfo
- o http2: verify success of strchr() in http2_send()
- o configure: add --disable-rt option
- o openssl: work around MSVC warning
- o HTTP: ignore "Content-Encoding: compress"
- o configure: check if OpenSSL linking wants -ldl
- o build-openssl.bat: Show syntax if required args are missing
- o test1902: attempt to make the test more reliable
- o libcurl-thread.3: Consolidate thread safety info
- o maketgz: Fixed some VC makefiles missing from the release tarball
- o libcurl-multi.3: mention curl_multi_wait [10]
- o ABI doc: use secure URL
- o http: move HTTP/2 cleanup code off http_disconnect() [11]
- o libcurl-thread.3: Warn memory functions must be thread safe [12]
- o curl_global_init_mem.3: Warn threaded resolver needs thread safe funcs [13]
- o docs: formpost needs the full size at start of upload [14]
- o curl_gssapi: remove 'const' to fix compiler warnings
- o SSH: three state machine fixups [15]
- o libcurl.3: fix a single typo [16]
- o generate.bat: Only clean prerequisite files when in ALL mode
- o curl_slist_append.3: add error checking to the example
- o buildconf.bat: Added support for file clean-up via -clean
- o generate.bat: Use buildconf.bat for prerequisite file clean-up
- o NTLM: handle auth for only a single request [17]
- o curl_multi_remove_handle.3: fix formatting [19]
- o checksrc.bat: Fixed error when [directory] isn't a curl source directory
- o checksrc.bat: Fixed error when missing *.c and *.h files
- o CURLOPT_RESOLVE.3: Note removal support was added in 7.42 [20]
- o test46: update cookie expire time
- o SFTP: fix range request off-by-one in size check [21]
- o CMake: fix GSSAPI builds [22]
- o build: refer to fixed libidn versions [4]
- o http2: discard frames with no SessionHandle [23]
- o curl_easy_recv.3: fix formatting
- o libcurl-tutorial.3: fix formatting [24]
- o curl_formget.3: correct return code [25]
+ o darwinssl: fix session ID keys to only reuse identical sessions [18]
+ o url-parsing: reject CRLFs within URLs [19]
+ o OS400: Adjust specific support to last release
+ o THANKS: Remove duplicate names
+ o url.c: Fixed compilation warning
+ o ssh: Fixed build on platforms where R_OK is not defined [1]
+ o tool_strdup.c: include the tool strdup.h
+ o build: Fixed Visual Studio project file generation of strdup.[c|h]
+ o curl_easy_setopt.3: add CURLOPT_PINNEDPUBLICKEY [2]
+ o curl.1: show zone index use in a URL
+ o mk-ca-bundle.vbs: switch to new certdata.txt url
+ o Makefile.dist: Added some missing SSPI configurations
+ o build: Fixed no NTLM support for email when CURL_DISABLE_HTTP is defined
+ o SSH: use the port number as well for known_known checks [3]
+ o libssh2: detect features based on version, not configure checks
+ o http2: Deal with HTTP/2 data inside Upgrade response header buffer [4]
+ o multi: removed Curl_multi_set_easy_connection
+ o symbol-scan.pl: do not require autotools
+ o cmake: add ENABLE_THREADED_RESOLVER, rename ARES
+ o cmake: build libhostname for test suite
+ o cmake: fix HAVE_GETHOSTNAME definition
+ o tests: fix libhostname visibility
+ o tests: fix memleak in server/resolve.c
+ o vtls.h: Fixed compiler warning when compiled without SSL
+ o CMake: Restore order-dependent header checks
+ o CMake: Restore order-dependent library checks
+ o tool: Removed krb4 from the supported features
+ o http2: Don't send Upgrade headers when we already do HTTP/2
+ o examples: Don't call select() to sleep on windows [6]
+ o win32: Updated some legacy APIs to use the newer extended versions [5]
+ o easy.c: Fixed compilation warning when no verbose string support
+ o connect.c: Fixed compilation warning when no verbose string support
+ o build: in Makefile.m32 pass -F flag to windres
+ o build: in Makefile.m32 add -m32 flag for 32bit
+ o multi: when leaving for timeout, close accordingly
+ o CMake: Simplify if() conditions on check result variables
+ o build: in Makefile.m32 try to detect 64bit target
+ o multi: inform about closed sockets before they are closed
+ o multi-uv.c: close the file handle after download
+ o examples: Wait recommended 100ms when no file descriptors are ready
+ o ntlm: Split the SSPI based messaging code from the native messaging code
+ o cmake: fix NTLM detection when CURL_DISABLE_HTTP defined
+ o cmake: add Kerberos to the supported feature
+ o CURLOPT_POSTFIELDS.3: mention the COPYPOSTFIELDS option
+ o http: Disable pipelining for HTTP/2 and upgraded connections
+ o ntlm: Fixed static'ness of local decode function
+ o sasl: Reduced the need for two sets of NTLM messaging functions
+ o multi.c: Fixed compilation warnings when no verbose string support
+ o select.c: fix compilation for VxWorks [7]
+ o multi-single.c: switch to use curl_multi_wait
+ o curl_multi_wait.3: clarify numfds being used if not NULL
+ o http.c: Fixed compilation warnings from features being disabled
+ o NSS: enable the CAPATH option [9]
+ o docs: Fix FAILONERROR typos
+ o HTTP: don't abort connections with pending Negotiate authentication
+ o HTTP: Free (proxy)userpwd for NTLM/Negotiate after sending a request
+ o http_perhapsrewind: don't abort CONNECT requests
+ o build: updated dependencies in makefiles
+ o multi.c: Fixed compilation warning
+ o ftp.c: Fixed compilation warnings when proxy support disabled
+ o get_url_file_name: Fixed crash on OOM on debug build
+ o cookie.c: Refactored cleanup code to simplify
+ o OS400: enable NTLM authentication
+ o ntlm: Use Windows Crypt API
+ o http2: avoid logging neg "failure" if h2 was not requested
+ o schannel_recv: return the correct code [10]
+ o VC build: added sspi define for winssl-zlib builds
+ o Curl_client_write(): chop long data, convert data only once
+ o openldap: do not ignore Curl_client_write() return code
+ o ldap: check Curl_client_write() return codes
+ o parsedate.c: Fixed compilation warning
+ o url.c: Fixed compilation warning when USE_NTLM is not defined
+ o ntlm_wb_response: fix "statement not reached" [11]
+ o telnet: fix "cast increases required alignment of target type"
+ o smtp: Fixed dot stuffing when EOL characters at end of input buffers [12]
+ o ntlm: Allow NTLM2Session messages when USE_NTRESPONSES manually defined
+ o ntlm: Disable NTLM v2 when 64-bit integers are not supported
+ o ntlm: Use short integer when decoding 16-bit values
+ o ftp.c: Fixed compilation warning when no verbose string support
+ o synctime.c: fixed timeserver URLs
+ o mk-ca-bundle.pl: restored forced run again
+ o ntlm: Fixed return code for bad type-2 Target Info
+ o curl_schannel.c: Data may be available before connection shutdown
+ o curl_schannel: Improvements to memory re-allocation strategy [13]
+ o darwinssl: aprintf() to allocate the session key
+ o tool_util.c: Use GetTickCount64 if it is available
+ o lib: Fixed multiple code analysis warnings if SAL are available
+ o tool_binmode.c: Explicitly ignore the return code of setmode
+ o tool_urlglob.c: Silence warning C6293: Ill-defined for-loop
+ o opts: Warn CURLOPT_TIMEOUT overrides when set after CURLOPT_TIMEOUT_MS
+ o SFTP: work-around servers that return zero size on STAT [14]
+ o connect: singleipconnect(): properly try other address families after failure
+ o IPV6: address scope != scope id [15]
+ o parseurlandfillconn(): fix improper non-numeric scope_id stripping [16]
+ o secureserver.pl: make OpenSSL CApath and cert absolute path values
+ o secureserver.pl: update Windows detection and fix path conversion
+ o secureserver.pl: clean up formatting of config and fix verbose output
+ o tests: Added Windows support using Cygwin-based OpenSSH
+ o sockfilt.c: use non-Ex functions that are available before WinXP
+ o VMS: Updates for 0740-0D1220
+ o openssl: warn for SRP set if SSLv3 is used, not for TLS version
+ o openssl: make it compile against openssl 1.1.0-DEV master branch
+ o openssl: fix SSL/TLS versions in verbose output
+ o curl: show size of inhibited data when using -v
+ o build: Removed WIN32 definition from the Visual Studio projects
+ o build: Removed WIN64 definition from the libcurl Visual Studio projects
+ o vtls: Use bool for Curl_ssl_getsessionid() return type
+ o sockfilt.c: Replace 100ms sleep with thread throttle
+ o sockfilt.c: Reduce the number of individual memory allocations
+ o vtls: Don't set cert info count until memory allocation is successful
+ o nss: Don't ignore Curl_ssl_init_certinfo() OOM failure
+ o nss: Don't ignore Curl_extract_certinfo() OOM failure
+ o vtls: Fixed compilation warning and an ignored return code
+ o sockfilt.c: Fixed compilation warnings
+ o darwinssl: Fixed compilation warning
+ o vtls: Use '(void) arg' for unused parameters
+ o sepheaders.c: Fixed resource leak on failure
+ o lib1900.c: Fixed cppcheck error [17]
+ o ldap: Fixed Unicode connection details in Win32 initialsation / bind calls
+ o ldap: Fixed Unicode DN, attributes and filter in Win32 search calls
This release includes the following known bugs:
@@ -84,41 +149,35 @@ This release includes the following known bugs:
This release would not have looked like this without help, code, reports and
advice from friends like these:
- Anders Bakken, Cédric Connes, Dan Fandrich, Daniel Stenberg, David Woodhouse,
- Eric Ridge, Feist Josselin, Gustavo Grieco, Inca R, Isaac Boukris,
- Jakub Zakrzewski, John E. Malmberg, Kamil Dudka, Lior Kaplan, Marcel Raad,
- Michael Kaufmann, Michał Fita, Patrick Monnerat, Paul Howarth, Ray Satiro,
- Roger Leigh, Stefan Bühler, Štefan Kremeň, Steve Holme, Svyatoslav Mishyn,
- Tatsuhiro Tsujikawa, Terri Oda, Tim Stack, TJ Saunders, Tomas Tomecek,
- Viktor Szakáts,
- (31 contributors)
+ Andrey Labunets, Anthon Pang, Bill Nagel, Brad Harder, Brad King, Carlo Wood,
+ Christian Hägele, Dan Fandrich, Daniel Stenberg, Dave Reisner, Frank Gevaerts,
+ Gisle Vanem, Guenter Knauf, Jan Ehrhardt, Johan Lantz, John E. Malmberg,
+ Jon Spencer, Julien Nabet, Kamil Dudka, Kyle J. McKay, Lucas Pardue,
+ Marc Hesse, Marc Hoersken, Marc Renault, Michael Osipov, Nick Zitzmann,
+ Nobuhiro Ban, Patrick Monnerat, Peter Wu, Ray Satiro, Sam Hurst,
+ Stefan Bühler, Stefan Neis, Steve Holme, Tae Hyoung Ahn, Tatsuhiro Tsujikawa,
+ Tomasz Kojm, Tor Arntsen, Waldek Kozba, Warren Menzer
Thanks! (and sorry if I forgot to mention someone)
References to bug reports and discussions on issues:
- [1] = https://github.com/bagder/curl/issues/278
- [2] = https://github.com/bagder/curl/issues/318
- [3] = http://curl.haxx.se/mail/lib-2015-06/0122.html
- [4] = http://curl.haxx.se/bug/?i=371
- [5] = https://github.com/bagder/curl/issues/264
- [6] = http://curl.haxx.se/libcurl/c/CURLMOPT_PUSHFUNCTION.html
- [7] = http://curl.haxx.se/libcurl/c/http2-serverpush.html
- [8] = https://github.com/bagder/curl/blob/master/docs/CODE_OF_CONDUCT.md
- [9] = http://curl.haxx.se/libcurl/c/CURLOPT_SSL_OPTIONS.html
- [10] = https://github.com/bagder/curl/issues/356
- [11] = https://bugzilla.redhat.com/1248389
- [12] = http://curl.haxx.se/mail/lib-2015-07/0149.html
- [13] = http://curl.haxx.se/mail/lib-2015-07/0149.html
- [14] = http://curl.haxx.se/bug/?i=360
- [15] = http://curl.haxx.se/bug/?i=357
- [16] = https://github.com/bagder/curl/issues/361
- [17] = https://github.com/bagder/curl/issues/363
- [18] = https://github.com/bagder/curl/pull/174
- [19] = https://github.com/bagder/curl/issues/366
- [20] = http://curl.haxx.se/mail/lib-2015-08/0019.html
- [21] = http://curl.haxx.se/bug/?i=359
- [22] = http://curl.haxx.se/bug/?i=370
- [23] = http://curl.haxx.se/bug/?i=372
- [24] = http://curl.haxx.se/bug/?i=374
- [25] = http://curl.haxx.se/bug/?i=375
+ [1] = http://curl.haxx.se/mail/lib-2014-11/0035.html
+ [2] = http://curl.haxx.se/mail/lib-2014-11/0078.html
+ [3] = http://curl.haxx.se/bug/view.cgi?id=1448
+ [4] = https://github.com/tatsuhiro-t/nghttp2/issues/103
+ [5] = http://sourceforge.net/p/curl/feature-requests/82/
+ [6] = http://curl.haxx.se/mail/lib-2014-11/0221.html
+ [7] = http://curl.haxx.se/bug/view.cgi?id=1455
+ [8] = http://curl.haxx.se/bug/view.cgi?id=1456
+ [9] = http://curl.haxx.se/bug/view.cgi?id=1457
+ [10] = http://curl.haxx.se/bug/view.cgi?id=1462
+ [11] = http://curl.haxx.se/mail/lib-2014-12/0089.html
+ [12] = http://curl.haxx.se/bug/view.cgi?id=1456
+ [13] = http://curl.haxx.se/bug/view.cgi?id=1450
+ [14] = http://curl.haxx.se/mail/lib-2014-12/0103.html
+ [15] = http://curl.haxx.se/bug/view.cgi?id=1451
+ [16] = http://curl.haxx.se/bug/view.cgi?id=1449
+ [17] = https://github.com/bagder/curl/pull/133
+ [18] = http://curl.haxx.se/docs/adv_20150108A.html
+ [19] = http://curl.haxx.se/docs/adv_20150108B.html
diff --git a/acinclude.m4 b/acinclude.m4
index 782f32d64..453358dc9 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -1851,10 +1851,8 @@ AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [
AC_REQUIRE([AC_HEADER_TIME])dnl
AC_CHECK_HEADERS(sys/types.h sys/time.h time.h)
AC_MSG_CHECKING([for monotonic clock_gettime])
- #
- if test "x$dontwant_rt" == "xno" ; then
- AC_COMPILE_IFELSE([
- AC_LANG_PROGRAM([[
+ AC_COMPILE_IFELSE([
+ AC_LANG_PROGRAM([[
#ifdef HAVE_SYS_TYPES_H
#include <sys/types.h>
#endif
@@ -1868,18 +1866,17 @@ AC_DEFUN([CURL_CHECK_FUNC_CLOCK_GETTIME_MONOTONIC], [
#include <time.h>
#endif
#endif
- ]],[[
- struct timespec ts;
- (void)clock_gettime(CLOCK_MONOTONIC, &ts);
- ]])
- ],[
- AC_MSG_RESULT([yes])
- ac_cv_func_clock_gettime="yes"
- ],[
- AC_MSG_RESULT([no])
- ac_cv_func_clock_gettime="no"
- ])
- fi
+ ]],[[
+ struct timespec ts;
+ (void)clock_gettime(CLOCK_MONOTONIC, &ts);
+ ]])
+ ],[
+ AC_MSG_RESULT([yes])
+ ac_cv_func_clock_gettime="yes"
+ ],[
+ AC_MSG_RESULT([no])
+ ac_cv_func_clock_gettime="no"
+ ])
dnl Definition of HAVE_CLOCK_GETTIME_MONOTONIC is intentionally postponed
dnl until library linking and run-time checks for clock_gettime succeed.
])
@@ -2455,6 +2452,23 @@ AC_DEFUN([CURL_CHECK_FUNC_SELECT], [
])
+# This is only a temporary fix. This macro is here to replace the broken one
+# delivered by the automake project (including the 1.9.6 release). As soon as
+# they ship a working version we SHOULD remove this work-around.
+
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} \"$am_aux_dir/missing\""
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+
dnl CURL_VERIFY_RUNTIMELIBS
dnl -------------------------------------------------
dnl Verify that the shared libs found so far can be used when running
@@ -2593,16 +2607,15 @@ AC_HELP_STRING([--without-ca-path], [Don't use a default CA path]),
if test "x$want_ca" != "xno" -a "x$want_ca" != "xunset" -a \
"x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
dnl both given
- ca="$want_ca"
- capath="$want_capath"
+ AC_MSG_ERROR([Can't specify both --with-ca-bundle and --with-ca-path.])
elif test "x$want_ca" != "xno" -a "x$want_ca" != "xunset"; then
dnl --with-ca-bundle given
ca="$want_ca"
capath="no"
elif test "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
dnl --with-ca-path given
- if test "x$OPENSSL_ENABLED" != "x1" -a "x$GNUTLS_ENABLED" != "x1" -a "x$POLARSSL_ENABLED" != "x1"; then
- AC_MSG_ERROR([--with-ca-path only works with OpenSSL, GnuTLS or PolarSSL])
+ if test "x$OPENSSL_ENABLED" != "x1" -a "x$POLARSSL_ENABLED" != "x1"; then
+ AC_MSG_ERROR([--with-ca-path only works with openSSL or PolarSSL])
fi
capath="$want_capath"
ca="no"
@@ -2656,13 +2669,11 @@ AC_HELP_STRING([--without-ca-path], [Don't use a default CA path]),
AC_DEFINE_UNQUOTED(CURL_CA_BUNDLE, "$ca", [Location of default ca bundle])
AC_SUBST(CURL_CA_BUNDLE)
AC_MSG_RESULT([$ca])
- fi
- if test "x$capath" != "xno"; then
+ elif test "x$capath" != "xno"; then
CURL_CA_PATH="\"$capath\""
AC_DEFINE_UNQUOTED(CURL_CA_PATH, "$capath", [Location of default ca path])
AC_MSG_RESULT([$capath (capath)])
- fi
- if test "x$ca" = "xno" && test "x$capath" = "xno"; then
+ else
AC_MSG_RESULT([no])
fi
])
diff --git a/aclocal.m4 b/aclocal.m4
index 32d8994d6..fd841cac6 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15 -*- Autoconf -*-
+# generated automatically by aclocal 1.14.1 -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -20,7 +20,7 @@ You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically 'autoreconf'.])])
-# Copyright (C) 2002-2014 Free Software Foundation, Inc.
+# Copyright (C) 2002-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -32,10 +32,10 @@ To do so, use the procedure documented by the package, typically 'autoreconf'.])
# generated from the m4 files accompanying Automake X.Y.
# (This private macro should not be called outside this file.)
AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.14'
dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
dnl require some minimum version. Point them to the right macro.
-m4_if([$1], [1.15], [],
+m4_if([$1], [1.14.1], [],
[AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
])
@@ -51,14 +51,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
# This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15])dnl
+[AM_AUTOMAKE_VERSION([1.14.1])dnl
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
# AM_AUX_DIR_EXPAND -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
# AM_CONDITIONAL -*- Autoconf -*-
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@ AC_CONFIG_COMMANDS_PRE(
Usually this means the macro was only invoked conditionally.]])
fi])])
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
# Generate code to set up dependency tracking. -*- Autoconf -*-
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -408,7 +408,7 @@ AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
# Do all the work for Automake. -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -498,8 +498,8 @@ AC_REQUIRE([AC_PROG_MKDIR_P])dnl
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
-# We need awk for the "check" target (and possibly the TAP driver). The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
AC_REQUIRE([AC_PROG_AWK])dnl
AC_REQUIRE([AC_PROG_MAKE_SET])dnl
AC_REQUIRE([AM_SET_LEADING_DOT])dnl
@@ -573,9 +573,6 @@ END
AC_MSG_ERROR([Your 'rm' program is bad, sorry.])
fi
fi
-dnl The trailing newline in this macro's definition is deliberate, for
-dnl backward compatibility and to allow trailing 'dnl'-style comments
-dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841.
])
dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not
@@ -605,7 +602,7 @@ for _am_header in $config_headers :; do
done
echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -616,7 +613,7 @@ echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_co
# Define $install_sh.
AC_DEFUN([AM_PROG_INSTALL_SH],
[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -626,7 +623,7 @@ if test x"${install_sh+set}" != xset; then
fi
AC_SUBST([install_sh])])
-# Copyright (C) 2003-2014 Free Software Foundation, Inc.
+# Copyright (C) 2003-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -648,7 +645,7 @@ AC_SUBST([am__leading_dot])])
# Add --enable-maintainer-mode option to configure. -*- Autoconf -*-
# From Jim Meyering
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -683,7 +680,7 @@ AC_MSG_CHECKING([whether to enable maintainer-specific portions of Makefiles])
# Check to see how 'make' treats includes. -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -733,7 +730,7 @@ rm -f confinc confmf
# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
-# Copyright (C) 1997-2014 Free Software Foundation, Inc.
+# Copyright (C) 1997-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -772,7 +769,7 @@ fi
# Helper functions for option handling. -*- Autoconf -*-
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -801,7 +798,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
AC_DEFUN([_AM_IF_OPTION],
[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -848,7 +845,7 @@ AC_LANG_POP([C])])
# For backward compatibility.
AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -867,7 +864,7 @@ AC_DEFUN([AM_RUN_LOG],
# Check to make sure that the build environment is sane. -*- Autoconf -*-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -948,7 +945,7 @@ AC_CONFIG_COMMANDS_PRE(
rm -f conftest.file
])
-# Copyright (C) 2009-2014 Free Software Foundation, Inc.
+# Copyright (C) 2009-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1008,7 +1005,7 @@ AC_SUBST([AM_BACKSLASH])dnl
_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
])
-# Copyright (C) 2001-2014 Free Software Foundation, Inc.
+# Copyright (C) 2001-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1036,7 +1033,7 @@ fi
INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
AC_SUBST([INSTALL_STRIP_PROGRAM])])
-# Copyright (C) 2006-2014 Free Software Foundation, Inc.
+# Copyright (C) 2006-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -1055,7 +1052,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)])
# Check how to create a tarball. -*- Autoconf -*-
-# Copyright (C) 2004-2014 Free Software Foundation, Inc.
+# Copyright (C) 2004-2013 Free Software Foundation, Inc.
#
# This file is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
diff --git a/buildconf b/buildconf
index 705f0d34e..f3f0bd54d 100755
--- a/buildconf
+++ b/buildconf
@@ -318,8 +318,6 @@ for fname in .deps \
ltsugar.m4 \
ltversion.m4 \
lt~obsolete.m4 \
- missing \
- install-sh \
stamp-h1 \
stamp-h2 \
stamp-h3 ; do
@@ -331,7 +329,7 @@ done
#
echo "buildconf: running libtoolize"
-${libtoolize} --copy --force || die "libtoolize command failed"
+${libtoolize} --copy --automake --force || die "libtoolize command failed"
# When using libtool 1.5.X (X < 26) we copy libtool.m4 to our local m4
# subdirectory and this local copy is patched to fix some warnings that
diff --git a/compile b/compile
index a85b723c7..531136b06 100755
--- a/compile
+++ b/compile
@@ -3,7 +3,7 @@
scriptversion=2012-10-14.11; # UTC
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
# Written by Tom Tromey <tromey@cygnus.com>.
#
# This program is free software; you can redistribute it and/or modify
diff --git a/configure b/configure
index 34cbe8c0f..bbdf84682 100755
--- a/configure
+++ b/configure
@@ -923,9 +923,9 @@ USE_POLARSSL
HAVE_GNUTLS_SRP
USE_GNUTLS_NETTLE
USE_GNUTLS
-HAVE_OPENSSL_SRP
+HAVE_SSLEAY_SRP
RANDOM_FILE
-SSL_LIBS
+USE_SSLEAY
PKGCONFIG
USE_DARWINSSL
USE_WINDOWS_SSPI
@@ -1105,7 +1105,6 @@ enable_curldebug
enable_symbol_hiding
enable_hidden_symbols
enable_ares
-enable_rt
enable_dependency_tracking
enable_silent_rules
enable_largefile
@@ -1817,7 +1816,6 @@ Optional Features:
To be deprecated, use --disable-symbol-hiding
--enable-ares[=PATH] Enable c-ares for DNS lookups
--disable-ares Disable c-ares for DNS lookups
- --disable-rt disable dependency on -lrt
--enable-dependency-tracking
do not reject slow dependency extractors
--disable-dependency-tracking
@@ -3261,38 +3259,6 @@ fi
$as_echo "$want_ares" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to disable dependency on -lrt" >&5
-$as_echo_n "checking whether to disable dependency on -lrt... " >&6; }
- OPT_RT="default"
- # Check whether --enable-rt was given.
-if test "${enable_rt+set}" = set; then :
- enableval=$enable_rt; OPT_RT=$enableval
-fi
-
- case "$OPT_RT" in
- no)
- dontwant_rt="yes"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- ;;
- default)
- dontwant_rt="no"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed no)
- ;;
- *" >&5
-$as_echo "(assumed no)
- ;;
- *" >&6; }
- dontwant_rt="no"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- ;;
- esac
- if test "$dontwant_rt" = "yes" && test "$want_thres" = "yes" ; then
- as_fn_error $? "options --disable-rt and --enable-thread-resolver are mutually exclusive, at most one can be selected." "$LINENO" 5
- fi
-
-
#
# Check that 'XC_CONFIGURE_PREAMBLE' has already run.
#
@@ -4892,7 +4858,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
-am__api_version='1.15'
+am__api_version='1.14'
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
$as_echo_n "checking whether build environment is sane... " >&6; }
@@ -4971,24 +4937,17 @@ test "$program_suffix" != NONE &&
ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
-if test x"${MISSING+set}" != xset; then
- case $am_aux_dir in
- *\ * | *\ *)
- MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;;
- *)
- MISSING="\${SHELL} $am_aux_dir/missing" ;;
- esac
-fi
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} \"$am_aux_dir/missing\""
# Use eval to expand $SHELL
-if eval "$MISSING --is-lightweight"; then
- am_missing_run="$MISSING "
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
else
am_missing_run=
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
+ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \`missing' script is too old or missing" >&5
+$as_echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
fi
-if test x"${install_sh+set}" != xset; then
+if test x"${install_sh}" != xset; then
case $am_aux_dir in
*\ * | *\ *)
install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;;
@@ -5383,8 +5342,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
mkdir_p='$(MKDIR_P)'
-# We need awk for the "check" target (and possibly the TAP driver). The
-# system "awk" is bad on some platforms.
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
# Always define AMTAR for backward compatibility. Yes, it's still used
# in the wild :-( We should find a proper way to deprecate it ...
AMTAR='$${TAR-tar}'
@@ -19970,9 +19929,7 @@ done
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for monotonic clock_gettime" >&5
$as_echo_n "checking for monotonic clock_gettime... " >&6; }
- #
- if test "x$dontwant_rt" == "xno" ; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
@@ -19993,8 +19950,8 @@ $as_echo_n "checking for monotonic clock_gettime... " >&6; }
int main (void)
{
- struct timespec ts;
- (void)clock_gettime(CLOCK_MONOTONIC, &ts);
+ struct timespec ts;
+ (void)clock_gettime(CLOCK_MONOTONIC, &ts);
;
return 0;
@@ -20003,19 +19960,18 @@ int main (void)
_ACEOF
if ac_fn_c_try_compile "$LINENO"; then :
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
$as_echo "yes" >&6; }
- ac_cv_func_clock_gettime="yes"
+ ac_cv_func_clock_gettime="yes"
else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
- ac_cv_func_clock_gettime="no"
+ ac_cv_func_clock_gettime="no"
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
- fi
#
@@ -20965,7 +20921,7 @@ done
if test "$LDAPLIBNAME" = "wldap32"; then
curl_ldap_msg="enabled (winldap)"
-$as_echo "#define USE_WIN32_LDAP 1" >>confdefs.h
+$as_echo "#define CURL_LDAP_WIN 1" >>confdefs.h
else
curl_ldap_msg="enabled (OpenLDAP)"
@@ -21161,8 +21117,6 @@ if test "${with_gssapi+set}" = set; then :
fi
-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
-
save_CPPFLAGS="$CPPFLAGS"
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if GSS-API support is requested" >&5
$as_echo_n "checking if GSS-API support is requested... " >&6; }
@@ -21173,8 +21127,8 @@ $as_echo "yes" >&6; }
if test -z "$GSSAPI_INCS"; then
if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
- elif test -f "$KRB5CONFIG"; then
- GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
+ elif test -f "$GSSAPI_ROOT/bin/krb5-config"; then
+ GSSAPI_INCS=`$GSSAPI_ROOT/bin/krb5-config --cflags gssapi`
elif test "$GSSAPI_ROOT" != "yes"; then
GSSAPI_INCS="-I$GSSAPI_ROOT/include"
fi
@@ -21318,8 +21272,8 @@ $as_echo "#define HAVE_GSSAPI 1" >>confdefs.h
if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
gss_libs=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --libs gssapi`
LIBS="$gss_libs $LIBS"
- elif test -f "$KRB5CONFIG"; then
- gss_libs=`$KRB5CONFIG --libs gssapi`
+ elif test -f "$GSSAPI_ROOT/bin/krb5-config"; then
+ gss_libs=`$GSSAPI_ROOT/bin/krb5-config --libs gssapi`
LIBS="$gss_libs $LIBS"
else
case $host in
@@ -21625,7 +21579,6 @@ $as_echo "found" >&6; }
fi
$PKGCONFIG --cflags-only-I openssl 2>/dev/null`
-
{ $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&5
$as_echo "$as_me: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&6;}
{ $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&5
@@ -21766,76 +21719,6 @@ fi
if test X"$HAVECRYPTO" = X"yes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking without -ldl" >&5
-$as_echo_n "checking OpenSSL linking without -ldl... " >&6; }
- saved_libs=$LIBS
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <openssl/evp.h>
-
-int main (void)
-{
-
- SSLeay_add_all_algorithms();
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- LIBS="$saved_libs"
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking with -ldl" >&5
-$as_echo_n "checking OpenSSL linking with -ldl... " >&6; }
- LIBS="-ldl $LIBS"
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
- #include <openssl/evp.h>
-
-int main (void)
-{
-
- SSLeay_add_all_algorithms();
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- LIBS="$saved_libs -ldl"
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- LIBS="$saved_libs"
-
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
-
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
-
- fi
-
- if test X"$HAVECRYPTO" = X"yes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
$as_echo_n "checking for SSL_connect in -lssl... " >&6; }
@@ -21982,6 +21865,10 @@ done
fi
if test X"$OPENSSL_ENABLED" = X"1"; then
+
+$as_echo "#define USE_SSLEAY 1" >>confdefs.h
+
+
for ac_header in openssl/pkcs12.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "openssl/pkcs12.h" "ac_cv_header_openssl_pkcs12_h" "$ac_includes_default"
@@ -21997,6 +21884,8 @@ done
else
LIBS="$CLEANLIBS"
fi
+ USE_SSLEAY="$OPENSSL_ENABLED"
+
if test X"$OPT_SSL" != Xoff &&
test "$OPENSSL_ENABLED" != "1"; then
@@ -22043,8 +21932,7 @@ fi
ENGINE_cleanup \
CRYPTO_cleanup_all_ex_data \
SSL_get_shutdown \
- SSLv2_client_method \
- DES_set_odd_parity
+ SSLv2_client_method
do :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
@@ -22057,33 +21945,23 @@ fi
done
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BoringSSL" >&5
-$as_echo_n "checking for BoringSSL... " >&6; }
- if test "x$ac_cv_func_DES_set_odd_parity" != "xyes"; then
- curl_ssl_msg="enabled (BoringSSL)"
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_BORINGSSL 1
-_ACEOF
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libressl" >&5
-$as_echo_n "checking for libressl... " >&6; }
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for yaSSL using OpenSSL compatibility mode" >&5
+$as_echo_n "checking for yaSSL using OpenSSL compatibility mode... " >&6; }
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-#include <openssl/opensslv.h>
+#include <openssl/ssl.h>
int main (void)
{
- int dummy = LIBRESSL_VERSION_NUMBER;
+#if defined(YASSL_VERSION) && defined(OPENSSL_VERSION_NUMBER)
+ int dummy = SSL_ERROR_NONE;
+#else
+ Not the yaSSL OpenSSL compatibility header.
+#endif
;
return 0;
@@ -22096,10 +21974,10 @@ if ac_fn_c_try_compile "$LINENO"; then :
$as_echo "yes" >&6; }
cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRESSL 1
+#define USE_YASSLEMUL 1
_ACEOF
- curl_ssl_msg="enabled (libressl)"
+ curl_ssl_msg="enabled (OpenSSL emulation by yaSSL)"
else
@@ -22194,7 +22072,6 @@ rm -f conftest.err conftest.i conftest.$ac_ext
esac
case $tst_api in
0x110) tst_show="1.1.0" ;;
- 0x102) tst_show="1.0.2" ;;
0x101) tst_show="1.0.1" ;;
0x100) tst_show="1.0.0" ;;
0x099) tst_show="0.9.9" ;;
@@ -22304,42 +22181,6 @@ rm -f core conftest.err conftest.$ac_objext \
/* end confdefs.h. */
-#define SSL_CONF_CTX_new innocuous_SSL_CONF_CTX_new
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
-#undef SSL_CONF_CTX_new
-#ifdef __cplusplus
-extern "C"
-#endif
-char SSL_CONF_CTX_new ();
-#if defined __stub_SSL_CONF_CTX_new || defined __stub___SSL_CONF_CTX_new
-choke me
-#endif
-
-int main (void)
-{
-return SSL_CONF_CTX_new ();
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- tst_api="0x102"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- fi
- if test "$tst_api" = "unknown"; then
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
#define SSL_renegotiate_abbreviated innocuous_SSL_renegotiate_abbreviated
#ifdef __STDC__
# include <limits.h>
@@ -22697,7 +22538,6 @@ rm -f core conftest.err conftest.$ac_objext \
fi
case $tst_api in
0x110) tst_show="1.1.0" ;;
- 0x102) tst_show="1.0.2" ;;
0x101) tst_show="1.0.1" ;;
0x100) tst_show="1.0.0" ;;
0x099) tst_show="0.9.9" ;;
@@ -22840,9 +22680,9 @@ $as_echo "$ac_cv_lib_crypto_SRP_Calc_client_key" >&6; }
if test "x$ac_cv_lib_crypto_SRP_Calc_client_key" = xyes; then :
-$as_echo "#define HAVE_OPENSSL_SRP 1" >>confdefs.h
+$as_echo "#define HAVE_SSLEAY_SRP 1" >>confdefs.h
- HAVE_OPENSSL_SRP=1
+ HAVE_SSLEAY_SRP=1
fi
@@ -23512,9 +23352,6 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
OPT_CYASSL=""
fi
-
- cyassllibname=cyassl
-
if test -z "$OPT_CYASSL" ; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for CyaSSL_Init in -lcyassl" >&5
@@ -23628,79 +23465,11 @@ else
CPPFLAGS=$_cppflags
LDFLAGS=$_ldflags
- cyassllib=""
fi
fi
- addld=""
- addlib=""
- addcflags=""
-
- if test "x$USE_CYASSL" != "xyes"; then
- addld=-L$OPT_CYASSL/lib$libsuff
- addcflags=-I$OPT_CYASSL/include
- cyassllib=$OPT_CYASSL/lib$libsuff
-
- LDFLAGS="$LDFLAGS $addld"
- if test "$addcflags" != "-I/usr/include"; then
- CPPFLAGS="$CPPFLAGS $addcflags"
- fi
-
- cyassllibname=wolfssl
- my_ac_save_LIBS="$LIBS"
- LIBS="-l$cyassllibname -lm $LIBS"
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CyaSSL_Init in -lwolfssl" >&5
-$as_echo_n "checking for CyaSSL_Init in -lwolfssl... " >&6; }
- cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h. */
-
-
-/* These aren't needed for detection and confuse WolfSSL.
- They are set up properly later if it is detected. */
-#undef SIZEOF_LONG
-#undef SIZEOF_LONG_LONG
-#include <cyassl/ssl.h>
-
-int main (void)
-{
-
- return CyaSSL_Init();
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-
-$as_echo "#define USE_CYASSL 1" >>confdefs.h
-
- USE_CYASSL=1
-
- CYASSL_ENABLED=1
- USE_CYASSL="yes"
- curl_ssl_msg="enabled (CyaSSL)"
-
-else
-
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- CPPFLAGS=$_cppflags
- LDFLAGS=$_ldflags
- cyassllib=""
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
- conftest$ac_exeext conftest.$ac_ext
- LIBS="$my_ac_save_LIBS"
- fi
-
if test "x$USE_CYASSL" = "xyes"; then
{ $as_echo "$as_me:${as_lineno-$LINENO}: detected CyaSSL" >&5
$as_echo "$as_me: detected CyaSSL" >&6;}
@@ -23739,19 +23508,6 @@ _ACEOF
- for ac_header in cyassl/options.h
-do :
- ac_fn_c_check_header_mongrel "$LINENO" "cyassl/options.h" "ac_cv_header_cyassl_options_h" "$ac_includes_default"
-if test "x$ac_cv_header_cyassl_options_h" = xyes; then :
- cat >>confdefs.h <<_ACEOF
-#define HAVE_CYASSL_OPTIONS_H 1
-_ACEOF
-
-fi
-
-done
-
-
for ac_header in cyassl/error-ssl.h
do :
ac_fn_c_check_header_mongrel "$LINENO" "cyassl/error-ssl.h" "ac_cv_header_cyassl_error_ssl_h" "$ac_includes_default"
@@ -23765,7 +23521,7 @@ fi
done
- LIBS="-l$cyassllibname -lm $LIBS"
+ LIBS="-lcyassl -lm $LIBS"
if test -n "$cyassllib"; then
if test "x$cross_compiling" != "xyes"; then
@@ -23949,190 +23705,24 @@ $as_echo "found" >&6; }
fi
fi
else
- NSS_PCDIR="$OPT_NSS/lib/pkgconfig"
- if test -f "$NSS_PCDIR/nss.pc"; then
-
-
- PKGCONFIG="no"
-
- if test -n "$ac_tool_prefix"; then
- # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
-set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $PKGCONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-PKGCONFIG=$ac_cv_path_PKGCONFIG
-if test -n "$PKGCONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
-
-fi
-if test -z "$ac_cv_path_PKGCONFIG"; then
- ac_pt_PKGCONFIG=$PKGCONFIG
- # Extract the first word of "pkg-config", so it can be a program name with args.
-set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
- $as_echo_n "(cached) " >&6
-else
- case $ac_pt_PKGCONFIG in
- [\\/]* | ?:[\\/]*)
- ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
- ;;
- *)
- as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-as_dummy="$PATH:/usr/bin:/usr/local/bin"
-for as_dir in $as_dummy
-do
- IFS=$as_save_IFS
- test -z "$as_dir" && as_dir=.
- for ac_exec_ext in '' $ac_executable_extensions; do
- if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
- ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
- $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
- break 2
- fi
-done
- done
-IFS=$as_save_IFS
-
- ;;
-esac
-fi
-ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
-if test -n "$ac_pt_PKGCONFIG"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
-else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-fi
-
- if test "x$ac_pt_PKGCONFIG" = x; then
- PKGCONFIG="no"
- else
- case $cross_compiling:$ac_tool_warned in
-yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
-ac_tool_warned=yes ;;
-esac
- PKGCONFIG=$ac_pt_PKGCONFIG
- fi
-else
- PKGCONFIG="$ac_cv_path_PKGCONFIG"
-fi
-
-
- if test x$PKGCONFIG != xno; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
-$as_echo_n "checking for nss options with pkg-config... " >&6; }
- itexists=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
+ # Without pkg-config, we'll kludge in some defaults
+ addlib="-L$OPT_NSS/lib -lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
+ addcflags="-I$OPT_NSS/include"
+ version="unknown"
+ nssprefix=$OPT_NSS
fi
- $PKGCONFIG --exists nss >/dev/null 2>&1 && echo 1`
- if test -z "$itexists"; then
- PKGCONFIG="no"
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
- else
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
- fi
- fi
-
- if test "$PKGCONFIG" != "no" ; then
- addld=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
- fi
- $PKGCONFIG --libs-only-L nss`
- addlib=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
- fi
- $PKGCONFIG --libs-only-l nss`
- addcflags=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
- fi
- $PKGCONFIG --cflags nss`
- version=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
- fi
- $PKGCONFIG --modversion nss`
- nssprefix=`
- if test -n "$NSS_PCDIR"; then
- PKG_CONFIG_LIBDIR="$NSS_PCDIR"
- export PKG_CONFIG_LIBDIR
- fi
- $PKGCONFIG --variable=prefix nss`
- fi
- fi
- fi
-
- if test -z "$addlib"; then
- # Without pkg-config, we'll kludge in some defaults
- { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Using hard-wired libraries and compilation flags for NSS." >&5
-$as_echo "$as_me: WARNING: Using hard-wired libraries and compilation flags for NSS." >&2;}
- addld="-L$OPT_NSS/lib"
- addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4"
- addcflags="-I$OPT_NSS/include"
- version="unknown"
- nssprefix=$OPT_NSS
- fi
+ if test -n "$addlib"; then
- CLEANLDFLAGS="$LDFLAGS"
- CLEANLIBS="$LIBS"
- CLEANCPPFLAGS="$CPPFLAGS"
+ CLEANLIBS="$LIBS"
+ CLEANCPPFLAGS="$CPPFLAGS"
- LDFLAGS="$addld $LDFLAGS"
- LIBS="$addlib $LIBS"
- if test "$addcflags" != "-I/usr/include"; then
- CPPFLAGS="$CPPFLAGS $addcflags"
- fi
+ LIBS="$addlib $LIBS"
+ if test "$addcflags" != "-I/usr/include"; then
+ CPPFLAGS="$CPPFLAGS $addcflags"
+ fi
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_VersionRangeSet in -lnss3" >&5
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_VersionRangeSet in -lnss3" >&5
$as_echo_n "checking for SSL_VersionRangeSet in -lnss3... " >&6; }
if ${ac_cv_lib_nss3_SSL_VersionRangeSet+:} false; then :
$as_echo_n "(cached) " >&6
@@ -24170,36 +23760,37 @@ if test "x$ac_cv_lib_nss3_SSL_VersionRangeSet" = xyes; then :
$as_echo "#define USE_NSS 1" >>confdefs.h
- USE_NSS=1
+ USE_NSS=1
- USE_NSS="yes"
- NSS_ENABLED=1
- curl_ssl_msg="enabled (NSS)"
+ USE_NSS="yes"
+ NSS_ENABLED=1
+ curl_ssl_msg="enabled (NSS)"
else
- LDFLAGS="$CLEANLDFLAGS"
- LIBS="$CLEANLIBS"
- CPPFLAGS="$CLEANCPPFLAGS"
+ LIBS="$CLEANLIBS"
+ CPPFLAGS="$CLEANCPPFLAGS"
fi
- if test "x$USE_NSS" = "xyes"; then
- { $as_echo "$as_me:${as_lineno-$LINENO}: detected NSS version $version" >&5
+ if test "x$USE_NSS" = "xyes"; then
+ { $as_echo "$as_me:${as_lineno-$LINENO}: detected NSS version $version" >&5
$as_echo "$as_me: detected NSS version $version" >&6;}
- NSS_LIBS=$addlib
+ NSS_LIBS=$addlib
- if test "x$cross_compiling" != "xyes"; then
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
- export LD_LIBRARY_PATH
- { $as_echo "$as_me:${as_lineno-$LINENO}: Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH" >&5
+ if test "x$cross_compiling" != "xyes"; then
+ LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
+ export LD_LIBRARY_PATH
+ { $as_echo "$as_me:${as_lineno-$LINENO}: Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH" >&5
$as_echo "$as_me: Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH" >&6;}
+ fi
fi
fi
+
fi
fi
OPT_AXTLS=off
@@ -24344,14 +23935,13 @@ fi
if test "x$want_ca" != "xno" -a "x$want_ca" != "xunset" -a \
"x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
- ca="$want_ca"
- capath="$want_capath"
+ as_fn_error $? "Can't specify both --with-ca-bundle and --with-ca-path." "$LINENO" 5
elif test "x$want_ca" != "xno" -a "x$want_ca" != "xunset"; then
ca="$want_ca"
capath="no"
elif test "x$want_capath" != "xno" -a "x$want_capath" != "xunset"; then
- if test "x$OPENSSL_ENABLED" != "x1" -a "x$GNUTLS_ENABLED" != "x1" -a "x$POLARSSL_ENABLED" != "x1"; then
- as_fn_error $? "--with-ca-path only works with OpenSSL, GnuTLS or PolarSSL" "$LINENO" 5
+ if test "x$OPENSSL_ENABLED" != "x1" -a "x$POLARSSL_ENABLED" != "x1"; then
+ as_fn_error $? "--with-ca-path only works with openSSL or PolarSSL" "$LINENO" 5
fi
capath="$want_capath"
ca="no"
@@ -24403,8 +23993,7 @@ _ACEOF
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ca" >&5
$as_echo "$ca" >&6; }
- fi
- if test "x$capath" != "xno"; then
+ elif test "x$capath" != "xno"; then
CURL_CA_PATH="\"$capath\""
cat >>confdefs.h <<_ACEOF
@@ -24413,8 +24002,7 @@ _ACEOF
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $capath (capath)" >&5
$as_echo "$capath (capath)" >&6; }
- fi
- if test "x$ca" = "xno" && test "x$capath" = "xno"; then
+ else
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
$as_echo "no" >&6; }
fi
@@ -26156,11 +25744,9 @@ $as_echo "$as_me: -L is $LD_H2" >&6;}
CPPFLAGS="$CPPFLAGS $CPP_H2"
LIBS="$LIB_H2 $LIBS"
- # use nghttp2_option_set_no_recv_client_magic to require nghttp2
- # >= 1.0.0
- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nghttp2_option_set_no_recv_client_magic in -lnghttp2" >&5
-$as_echo_n "checking for nghttp2_option_set_no_recv_client_magic in -lnghttp2... " >&6; }
-if ${ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic+:} false; then :
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nghttp2_session_callbacks_set_send_callback in -lnghttp2" >&5
+$as_echo_n "checking for nghttp2_session_callbacks_set_send_callback in -lnghttp2... " >&6; }
+if ${ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_check_lib_save_LIBS=$LIBS
@@ -26172,26 +25758,26 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext
#ifdef __cplusplus
extern "C"
#endif
-char nghttp2_option_set_no_recv_client_magic ();
+char nghttp2_session_callbacks_set_send_callback ();
int main (void)
{
-return nghttp2_option_set_no_recv_client_magic ();
+return nghttp2_session_callbacks_set_send_callback ();
;
return 0;
}
_ACEOF
if ac_fn_c_try_link "$LINENO"; then :
- ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic=yes
+ ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback=yes
else
- ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic=no
+ ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback=no
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext conftest.$ac_ext
LIBS=$ac_check_lib_save_LIBS
fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic" >&5
-$as_echo "$ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic" >&6; }
-if test "x$ac_cv_lib_nghttp2_nghttp2_option_set_no_recv_client_magic" = xyes; then :
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback" >&5
+$as_echo "$ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback" >&6; }
+if test "x$ac_cv_lib_nghttp2_nghttp2_session_callbacks_set_send_callback" = xyes; then :
for ac_header in nghttp2/nghttp2.h
do :
@@ -39172,7 +38758,7 @@ if test "x$want_thres" = xyes && test "x$want_ares" = xyes; then
as_fn_error $? "Options --enable-threaded-resolver and --enable-ares are mutually exclusive" "$LINENO" 5
fi
-if test "$want_thres" = "yes" && test "$dontwant_rt" = "no"; then
+if test "$want_thres" = "yes"; then
ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
if test "x$ac_cv_header_pthread_h" = xyes; then :
@@ -39412,7 +38998,7 @@ $as_echo "yes" >&6; }
fi
-if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_OPENSSL_SRP" = "x1") ; then
+if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_SSLEAY_SRP" = "x1") ; then
$as_echo "#define USE_TLS_SRP 1" >>confdefs.h
@@ -39578,7 +39164,7 @@ ENABLE_STATIC="$enable_static"
-if test "x$OPENSSL_ENABLED" = "x1"; then
+if test "x$USE_SSLEAY" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
elif test -n "$SSL_ENABLED"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
@@ -39617,7 +39203,7 @@ if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
fi
if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1"; then
- if test "x$OPENSSL_ENABLED" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
+ if test "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
-o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \
-o "x$DARWINSSL_ENABLED" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM"
@@ -39689,7 +39275,7 @@ if test "x$CURL_DISABLE_IMAP" != "x1"; then
fi
if test "x$CURL_DISABLE_SMB" != "x1" \
-a "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" \
- -a \( "x$OPENSSL_ENABLED" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
+ -a \( "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
-o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \
-o "x$DARWINSSL_ENABLED" = "x1" \); then
SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMB"
diff --git a/configure.ac b/configure.ac
index 683299d10..a1b560ceb 100644
--- a/configure.ac
+++ b/configure.ac
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -47,7 +47,6 @@ CURL_CHECK_OPTION_WERROR
CURL_CHECK_OPTION_CURLDEBUG
CURL_CHECK_OPTION_SYMBOL_HIDING
CURL_CHECK_OPTION_ARES
-CURL_CHECK_OPTION_RT
XC_CHECK_PATH_SEPARATOR
@@ -1047,7 +1046,7 @@ if test x$CURL_DISABLE_LDAP != x1 ; then
if test "$LDAPLIBNAME" = "wldap32"; then
curl_ldap_msg="enabled (winldap)"
- AC_DEFINE(USE_WIN32_LDAP, 1, [Use Windows LDAP implementation])
+ AC_DEFINE(CURL_LDAP_WIN, 1, [Use Windows LDAP implementation])
else
curl_ldap_msg="enabled (OpenLDAP)"
if test "x$ac_cv_func_ldap_init_fd" = "xyes"; then
@@ -1185,8 +1184,6 @@ AC_ARG_WITH(gssapi,
fi
])
-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
-
save_CPPFLAGS="$CPPFLAGS"
AC_MSG_CHECKING([if GSS-API support is requested])
if test x"$want_gss" = xyes; then
@@ -1195,8 +1192,8 @@ if test x"$want_gss" = xyes; then
if test -z "$GSSAPI_INCS"; then
if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
- elif test -f "$KRB5CONFIG"; then
- GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
+ elif test -f "$GSSAPI_ROOT/bin/krb5-config"; then
+ GSSAPI_INCS=`$GSSAPI_ROOT/bin/krb5-config --cflags gssapi`
elif test "$GSSAPI_ROOT" != "yes"; then
GSSAPI_INCS="-I$GSSAPI_ROOT/include"
fi
@@ -1286,10 +1283,10 @@ if test x"$want_gss" = xyes; then
dnl into LIBS
gss_libs=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --libs gssapi`
LIBS="$gss_libs $LIBS"
- elif test -f "$KRB5CONFIG"; then
+ elif test -f "$GSSAPI_ROOT/bin/krb5-config"; then
dnl krb5-config doesn't have --libs-only-L or similar, put everything
dnl into LIBS
- gss_libs=`$KRB5CONFIG --libs gssapi`
+ gss_libs=`$GSSAPI_ROOT/bin/krb5-config --libs gssapi`
LIBS="$gss_libs $LIBS"
else
case $host in
@@ -1454,7 +1451,6 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
SSL_CPPFLAGS=`CURL_EXPORT_PCDIR([$OPENSSL_PCDIR]) dnl
$PKGCONFIG --cflags-only-I openssl 2>/dev/null`
- AC_SUBST(SSL_LIBS)
AC_MSG_NOTICE([pkg-config: SSL_LIBS: "$SSL_LIBS"])
AC_MSG_NOTICE([pkg-config: SSL_LDFLAGS: "$SSL_LDFLAGS"])
AC_MSG_NOTICE([pkg-config: SSL_CPPFLAGS: "$SSL_CPPFLAGS"])
@@ -1510,46 +1506,6 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
if test X"$HAVECRYPTO" = X"yes"; then
- AC_MSG_CHECKING([OpenSSL linking without -ldl])
- saved_libs=$LIBS
- AC_TRY_LINK(
- [
- #include <openssl/evp.h>
- ],
- [
- SSLeay_add_all_algorithms();
- ],
- [
- AC_MSG_RESULT(yes)
- LIBS="$saved_libs"
- ],
- [
- AC_MSG_RESULT(no)
- AC_MSG_CHECKING([OpenSSL linking with -ldl])
- LIBS="-ldl $LIBS"
- AC_TRY_LINK(
- [
- #include <openssl/evp.h>
- ],
- [
- SSLeay_add_all_algorithms();
- ],
- [
- AC_MSG_RESULT(yes)
- LIBS="$saved_libs -ldl"
- ],
- [
- AC_MSG_RESULT(no)
- LIBS="$saved_libs"
- ]
- )
-
- ]
- )
-
- fi
-
- if test X"$HAVECRYPTO" = X"yes"; then
dnl This is only reasonable to do if crypto actually is there: check for
dnl SSL libs NOTE: it is important to do this AFTER the crypto lib
@@ -1571,7 +1527,7 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
else
- dnl Have the libraries--check for OpenSSL headers
+ dnl Have the libraries--check for SSLeay/OpenSSL headers
AC_CHECK_HEADERS(openssl/x509.h openssl/rsa.h openssl/crypto.h \
openssl/pem.h openssl/ssl.h openssl/err.h,
curl_ssl_msg="enabled (OpenSSL)"
@@ -1595,11 +1551,17 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
fi
if test X"$OPENSSL_ENABLED" = X"1"; then
+ AC_DEFINE(USE_SSLEAY, 1, [if SSL is enabled])
+
dnl is there a pkcs12.h header present?
AC_CHECK_HEADERS(openssl/pkcs12.h)
else
LIBS="$CLEANLIBS"
fi
+ dnl USE_SSLEAY is the historical name for what configure calls
+ dnl OPENSSL_ENABLED; the names should really be unified
+ USE_SSLEAY="$OPENSSL_ENABLED"
+ AC_SUBST(USE_SSLEAY)
if test X"$OPT_SSL" != Xoff &&
test "$OPENSSL_ENABLED" != "1"; then
@@ -1616,11 +1578,8 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
AC_CHECK_FUNCS( ENGINE_load_builtin_engines )
])
- dnl These can only exist if OpenSSL exists
- dnl Older versions of Cyassl (some time before 2.9.4) don't have
- dnl SSL_get_shutdown (but this check won't actually detect it there
- dnl as it's a macro that needs the header files be included)
- dnl BoringSSL doesn't have DES_set_odd_parity
+ dnl these can only exist if openssl exists
+ dnl yassl doesn't have SSL_get_shutdown
AC_CHECK_FUNCS( RAND_status \
RAND_screen \
@@ -1628,30 +1587,28 @@ if test "$curl_ssl_msg" = "$init_ssl_msg" && test X"$OPT_SSL" != Xno; then
ENGINE_cleanup \
CRYPTO_cleanup_all_ex_data \
SSL_get_shutdown \
- SSLv2_client_method \
- DES_set_odd_parity )
-
- AC_MSG_CHECKING([for BoringSSL])
- if test "x$ac_cv_func_DES_set_odd_parity" != "xyes"; then
- curl_ssl_msg="enabled (BoringSSL)"
- AC_DEFINE_UNQUOTED(HAVE_BORINGSSL, 1,
- [Define to 1 if using BoringSSL.])
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
- fi
- AC_MSG_CHECKING([for libressl])
+ SSLv2_client_method )
+
+ dnl Make an attempt to detect if this is actually yassl's headers and
+ dnl OpenSSL emulation layer. We still leave everything else believing
+ dnl and acting like OpenSSL.
+
+ AC_MSG_CHECKING([for yaSSL using OpenSSL compatibility mode])
AC_COMPILE_IFELSE([
AC_LANG_PROGRAM([[
-#include <openssl/opensslv.h>
+#include <openssl/ssl.h>
]],[[
- int dummy = LIBRESSL_VERSION_NUMBER;
+#if defined(YASSL_VERSION) && defined(OPENSSL_VERSION_NUMBER)
+ int dummy = SSL_ERROR_NONE;
+#else
+ Not the yaSSL OpenSSL compatibility header.
+#endif
]])
],[
AC_MSG_RESULT([yes])
- AC_DEFINE_UNQUOTED(HAVE_LIBRESSL, 1,
- [Define to 1 if using libressl.])
- curl_ssl_msg="enabled (libressl)"
+ AC_DEFINE_UNQUOTED(USE_YASSLEMUL, 1,
+ [Define to 1 if using yaSSL in OpenSSL compatibility mode.])
+ curl_ssl_msg="enabled (OpenSSL emulation by yaSSL)"
],[
AC_MSG_RESULT([no])
])
@@ -1715,8 +1672,8 @@ dnl ---
if test "$OPENSSL_ENABLED" = "1"; then
AC_CHECK_LIB(crypto, SRP_Calc_client_key,
[
- AC_DEFINE(HAVE_OPENSSL_SRP, 1, [if you have the function SRP_Calc_client_key])
- AC_SUBST(HAVE_OPENSSL_SRP, [1])
+ AC_DEFINE(HAVE_SSLEAY_SRP, 1, [if you have the function SRP_Calc_client_key])
+ AC_SUBST(HAVE_SSLEAY_SRP, [1])
])
fi
@@ -1986,10 +1943,6 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
OPT_CYASSL=""
fi
- dnl This should be reworked to use pkg-config instead
-
- cyassllibname=cyassl
-
if test -z "$OPT_CYASSL" ; then
dnl check for lib in system default first
@@ -2031,70 +1984,19 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
[
CPPFLAGS=$_cppflags
LDFLAGS=$_ldflags
- cyassllib=""
])
fi
- addld=""
- addlib=""
- addcflags=""
-
- if test "x$USE_CYASSL" != "xyes"; then
- dnl libcyassl renamed to libwolfssl as of 3.4.0
- addld=-L$OPT_CYASSL/lib$libsuff
- addcflags=-I$OPT_CYASSL/include
- cyassllib=$OPT_CYASSL/lib$libsuff
-
- LDFLAGS="$LDFLAGS $addld"
- if test "$addcflags" != "-I/usr/include"; then
- CPPFLAGS="$CPPFLAGS $addcflags"
- fi
-
- cyassllibname=wolfssl
- my_ac_save_LIBS="$LIBS"
- LIBS="-l$cyassllibname -lm $LIBS"
-
- AC_MSG_CHECKING([for CyaSSL_Init in -lwolfssl])
- AC_LINK_IFELSE([
- AC_LANG_PROGRAM([[
-/* These aren't needed for detection and confuse WolfSSL.
- They are set up properly later if it is detected. */
-#undef SIZEOF_LONG
-#undef SIZEOF_LONG_LONG
-#include <cyassl/ssl.h>
- ]],[[
- return CyaSSL_Init();
- ]])
- ],[
- AC_MSG_RESULT(yes)
- AC_DEFINE(USE_CYASSL, 1, [if CyaSSL is enabled])
- AC_SUBST(USE_CYASSL, [1])
- CYASSL_ENABLED=1
- USE_CYASSL="yes"
- curl_ssl_msg="enabled (CyaSSL)"
- ],
- [
- AC_MSG_RESULT(no)
- CPPFLAGS=$_cppflags
- LDFLAGS=$_ldflags
- cyassllib=""
- ])
- LIBS="$my_ac_save_LIBS"
- fi
-
if test "x$USE_CYASSL" = "xyes"; then
AC_MSG_NOTICE([detected CyaSSL])
dnl cyassl/ctaocrypt/types.h needs SIZEOF_LONG_LONG defined!
AC_CHECK_SIZEOF(long long)
- dnl Versions since at least 2.6.0 may have options.h
- AC_CHECK_HEADERS(cyassl/options.h)
-
dnl Versions since at least 2.9.4 renamed error.h to error-ssl.h
AC_CHECK_HEADERS(cyassl/error-ssl.h)
- LIBS="-l$cyassllibname -lm $LIBS"
+ LIBS="-lcyassl -lm $LIBS"
if test -n "$cyassllib"; then
dnl when shared libs were found in a path that the run-time
@@ -2161,72 +2063,56 @@ if test "$curl_ssl_msg" = "$init_ssl_msg"; then
fi
fi
else
- NSS_PCDIR="$OPT_NSS/lib/pkgconfig"
- if test -f "$NSS_PCDIR/nss.pc"; then
- CURL_CHECK_PKGCONFIG(nss, [$NSS_PCDIR])
- if test "$PKGCONFIG" != "no" ; then
- addld=`CURL_EXPORT_PCDIR([$NSS_PCDIR]) $PKGCONFIG --libs-only-L nss`
- addlib=`CURL_EXPORT_PCDIR([$NSS_PCDIR]) $PKGCONFIG --libs-only-l nss`
- addcflags=`CURL_EXPORT_PCDIR([$NSS_PCDIR]) $PKGCONFIG --cflags nss`
- version=`CURL_EXPORT_PCDIR([$NSS_PCDIR]) $PKGCONFIG --modversion nss`
- nssprefix=`CURL_EXPORT_PCDIR([$NSS_PCDIR]) $PKGCONFIG --variable=prefix nss`
- fi
- fi
+ # Without pkg-config, we'll kludge in some defaults
+ addlib="-L$OPT_NSS/lib -lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4 -lpthread -ldl"
+ addcflags="-I$OPT_NSS/include"
+ version="unknown"
+ nssprefix=$OPT_NSS
fi
- if test -z "$addlib"; then
- # Without pkg-config, we'll kludge in some defaults
- AC_MSG_WARN([Using hard-wired libraries and compilation flags for NSS.])
- addld="-L$OPT_NSS/lib"
- addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4"
- addcflags="-I$OPT_NSS/include"
- version="unknown"
- nssprefix=$OPT_NSS
- fi
+ if test -n "$addlib"; then
- CLEANLDFLAGS="$LDFLAGS"
- CLEANLIBS="$LIBS"
- CLEANCPPFLAGS="$CPPFLAGS"
+ CLEANLIBS="$LIBS"
+ CLEANCPPFLAGS="$CPPFLAGS"
- LDFLAGS="$addld $LDFLAGS"
- LIBS="$addlib $LIBS"
- if test "$addcflags" != "-I/usr/include"; then
- CPPFLAGS="$CPPFLAGS $addcflags"
- fi
+ LIBS="$addlib $LIBS"
+ if test "$addcflags" != "-I/usr/include"; then
+ CPPFLAGS="$CPPFLAGS $addcflags"
+ fi
- dnl The function SSL_VersionRangeSet() is needed to enable TLS > 1.0
- AC_CHECK_LIB(nss3, SSL_VersionRangeSet,
- [
- AC_DEFINE(USE_NSS, 1, [if NSS is enabled])
- AC_SUBST(USE_NSS, [1])
- USE_NSS="yes"
- NSS_ENABLED=1
- curl_ssl_msg="enabled (NSS)"
- ],
- [
- LDFLAGS="$CLEANLDFLAGS"
- LIBS="$CLEANLIBS"
- CPPFLAGS="$CLEANCPPFLAGS"
- ])
+ dnl The function SSL_VersionRangeSet() is needed to enable TLS > 1.0
+ AC_CHECK_LIB(nss3, SSL_VersionRangeSet,
+ [
+ AC_DEFINE(USE_NSS, 1, [if NSS is enabled])
+ AC_SUBST(USE_NSS, [1])
+ USE_NSS="yes"
+ NSS_ENABLED=1
+ curl_ssl_msg="enabled (NSS)"
+ ],
+ [
+ LIBS="$CLEANLIBS"
+ CPPFLAGS="$CLEANCPPFLAGS"
+ ])
- if test "x$USE_NSS" = "xyes"; then
- AC_MSG_NOTICE([detected NSS version $version])
+ if test "x$USE_NSS" = "xyes"; then
+ AC_MSG_NOTICE([detected NSS version $version])
- dnl needed when linking the curl tool without USE_EXPLICIT_LIB_DEPS
- NSS_LIBS=$addlib
- AC_SUBST([NSS_LIBS])
+ dnl needed when linking the curl tool without USE_EXPLICIT_LIB_DEPS
+ NSS_LIBS=$addlib
+ AC_SUBST([NSS_LIBS])
- dnl when shared libs were found in a path that the run-time
- dnl linker doesn't search through, we need to add it to
- dnl LD_LIBRARY_PATH to prevent further configure tests to fail
- dnl due to this
- if test "x$cross_compiling" != "xyes"; then
- LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
- export LD_LIBRARY_PATH
- AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH])
+ dnl when shared libs were found in a path that the run-time
+ dnl linker doesn't search through, we need to add it to
+ dnl LD_LIBRARY_PATH to prevent further configure tests to fail
+ dnl due to this
+ if test "x$cross_compiling" != "xyes"; then
+ LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$nssprefix/lib$libsuff"
+ export LD_LIBRARY_PATH
+ AC_MSG_NOTICE([Added $nssprefix/lib$libsuff to LD_LIBRARY_PATH])
+ fi
fi
- fi dnl NSS found
+ fi
fi dnl NSS not disabled
@@ -2882,9 +2768,7 @@ if test X"$want_h2" != Xno; then
CPPFLAGS="$CPPFLAGS $CPP_H2"
LIBS="$LIB_H2 $LIBS"
- # use nghttp2_option_set_no_recv_client_magic to require nghttp2
- # >= 1.0.0
- AC_CHECK_LIB(nghttp2, nghttp2_option_set_no_recv_client_magic,
+ AC_CHECK_LIB(nghttp2, nghttp2_session_callbacks_set_send_callback,
[
AC_CHECK_HEADERS(nghttp2/nghttp2.h,
curl_h2_msg="enabled (nghttp2)"
@@ -3258,7 +3142,7 @@ if test "x$want_thres" = xyes && test "x$want_ares" = xyes; then
[Options --enable-threaded-resolver and --enable-ares are mutually exclusive])
fi
-if test "$want_thres" = "yes" && test "$dontwant_rt" = "no"; then
+if test "$want_thres" = "yes"; then
AC_CHECK_HEADER(pthread.h,
[ AC_DEFINE(HAVE_PTHREAD_H, 1, [if you have <pthread.h>])
save_CFLAGS="$CFLAGS"
@@ -3384,7 +3268,7 @@ AC_HELP_STRING([--disable-tls-srp],[Disable TLS-SRP authentication]),
want_tls_srp=yes
)
-if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_OPENSSL_SRP" = "x1") ; then
+if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_SSLEAY_SRP" = "x1") ; then
AC_DEFINE(USE_TLS_SRP, 1, [Use TLS-SRP authentication])
USE_TLS_SRP=1
curl_tls_srp_msg="enabled"
@@ -3498,7 +3382,7 @@ dnl For keeping supported features and protocols also in pkg-config file
dnl since it is more cross-compile friendly than curl-config
dnl
-if test "x$OPENSSL_ENABLED" = "x1"; then
+if test "x$USE_SSLEAY" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
elif test -n "$SSL_ENABLED"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES SSL"
@@ -3537,7 +3421,7 @@ if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" -a \
fi
if test "x$CURL_DISABLE_CRYPTO_AUTH" != "x1"; then
- if test "x$OPENSSL_ENABLED" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
+ if test "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
-o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \
-o "x$DARWINSSL_ENABLED" = "x1"; then
SUPPORT_FEATURES="$SUPPORT_FEATURES NTLM"
@@ -3610,7 +3494,7 @@ if test "x$CURL_DISABLE_IMAP" != "x1"; then
fi
if test "x$CURL_DISABLE_SMB" != "x1" \
-a "x$CURL_DISABLE_CRYPTO_AUTH" != "x1" \
- -a \( "x$OPENSSL_ENABLED" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
+ -a \( "x$USE_SSLEAY" = "x1" -o "x$USE_WINDOWS_SSPI" = "x1" \
-o "x$GNUTLS_ENABLED" = "x1" -o "x$NSS_ENABLED" = "x1" \
-o "x$DARWINSSL_ENABLED" = "x1" \); then
SUPPORT_PROTOCOLS="$SUPPORT_PROTOCOLS SMB"
diff --git a/curl-config.in b/curl-config.in
index 939872241..1ddf4c2c7 100644
--- a/curl-config.in
+++ b/curl-config.in
@@ -71,7 +71,7 @@ while test $# -gt 0; do
;;
--ca)
- echo @CURL_CA_BUNDLE@
+ echo "@CURL_CA_BUNDLE@"
;;
--cc)
diff --git a/depcomp b/depcomp
index fc98710e2..4ebd5b3a2 100755
--- a/depcomp
+++ b/depcomp
@@ -3,7 +3,7 @@
scriptversion=2013-05-30.07; # UTC
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2013 Free Software Foundation, Inc.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
diff --git a/docs/BINDINGS b/docs/BINDINGS
index fed16e990..d4cf488d8 100644
--- a/docs/BINDINGS
+++ b/docs/BINDINGS
@@ -50,7 +50,7 @@ Cocoa
D
Written by Kenneth Bogert
- http://dlang.org/library/std/net/curl.html
+ http://curl.haxx.se/libcurl/d/
Dylan
@@ -60,7 +60,7 @@ Dylan
Eiffel
Written by Eiffel Software
- https://room.eiffel.com/library/curl
+ http://curl.haxx.se/libcurl/eiffel/
Euphoria
@@ -78,7 +78,7 @@ Ferite
Gambas
- http://gambas.sourceforge.net/
+ http://gambas.sourceforge.net
glib/GTK+
@@ -90,11 +90,6 @@ Guile:
Written by Michael L. Gran
http://www.lonelycactus.com/guile-curl.html
-Harbour
-
- Written by Viktor Szakáts
- https://github.com/vszakats/harbour-core/tree/master/contrib/hbcurl
-
Haskell
Written by Galois, Inc
@@ -102,7 +97,8 @@ Haskell
Java
- https://github.com/pjlegato/curl-java
+ Maintained by [blank]
+ http://curl.haxx.se/libcurl/java/
Julia
@@ -119,7 +115,7 @@ Lua
luacurl by Alexander Marinov
http://luacurl.luaforge.net/
- Lua-cURL by Jürgen Hötzel
+ Lua-cURL by Jürgen Hötzel
http://luaforge.net/projects/lua-curl/
Mono
@@ -130,7 +126,7 @@ Mono
.NET
libcurl-net by Jeffrey Phillips
- https://sourceforge.net/projects/libcurl-net/
+ http://sourceforge.net/projects/libcurl-net/
node.js
@@ -145,7 +141,7 @@ Object-Pascal
O'Caml
Written by Lars Nilsson
- https://sourceforge.net/projects/ocurl/
+ http://sourceforge.net/projects/ocurl/
Pascal
@@ -154,13 +150,13 @@ Pascal
Perl
- Maintained by Cris Bailiff and Bálint Szilakszi
- https://github.com/szbalint/WWW--Curl
+ Maintained by Cris Bailiff
+ http://curl.haxx.se/libcurl/perl/
PHP
Written by Sterling Hughes
- https://php.net/curl
+ http://curl.haxx.se/libcurl/php/
PostgreSQL
@@ -174,7 +170,8 @@ Python
R
- http://cran.r-project.org/package=curl
+ RCurl by Duncan Temple Lang
+ http://www.omegahat.org/RCurl/
Rexx
@@ -195,15 +192,10 @@ Ruby
ruby-curl-multi - written by Kristjan Petursson and Keith Rarick
http://curl-multi.rubyforge.org/
-Rust
-
- curl-rust - by Carl Lerche
- https://github.com/carllerche/curl-rust
-
Scheme
Bigloo binding by Kirill Lisovsky
- http://www.metapaper.net/lisovsky/web/curl/
+ http://curl.haxx.se/libcurl/scheme/
S-Lang
@@ -227,13 +219,13 @@ SPL
Tcl
- Tclcurl by Andrés García
- http://mirror.yellow5.com/tclcurl/
+ Tclcurl by Andrés García
+ http://personal1.iddeo.es/andresgarci/tclcurl/english/docs.html
Visual Basic
libcurl-vb by Jeffrey Phillips
- https://sourceforge.net/projects/libcurl-vb/
+ http://sourceforge.net/projects/libcurl-vb/
Visual Foxpro
@@ -253,8 +245,3 @@ XBLite
Written by David Szafranski
http://perso.wanadoo.fr/xblite/libraries.html
-
-Xojo
-
- Written by Andrew Lambert
- https://github.com/charonn0/RB-libcURL
diff --git a/docs/BUGS b/docs/BUGS
index 36686ef87..c0c6fa82a 100644
--- a/docs/BUGS
+++ b/docs/BUGS
@@ -35,9 +35,11 @@ BUGS
have a go at a solution. You can optionally also post your bug/problem at
curl's bug tracking system over at
- https://github.com/bagder/curl/issues
+ https://sourceforge.net/p/curl/bugs/
- Please read the rest of this document below first before doing that!
+ Please read the rest of this document below first before doing that! Also,
+ you need to login to your sourceforge account before being able to submit a
+ bug report (necessary evil done to avoid spam).
If you feel you need to ask around first, find a suitable mailing list and
post there. The lists are available on http://curl.haxx.se/mail/
diff --git a/docs/CODE_OF_CONDUCT.md b/docs/CODE_OF_CONDUCT.md
deleted file mode 100644
index 04ea66ed9..000000000
--- a/docs/CODE_OF_CONDUCT.md
+++ /dev/null
@@ -1,32 +0,0 @@
-Contributor Code of Conduct
-===========================
-
-As contributors and maintainers of this project, we pledge to respect all
-people who contribute through reporting issues, posting feature requests,
-updating documentation, submitting pull requests or patches, and other
-activities.
-
-We are committed to making participation in this project a harassment-free
-experience for everyone, regardless of level of experience, gender, gender
-identity and expression, sexual orientation, disability, personal appearance,
-body size, race, ethnicity, age, or religion.
-
-Examples of unacceptable behavior by participants include the use of sexual
-language or imagery, derogatory comments or personal attacks, trolling, public
-or private harassment, insults, or other unprofessional conduct.
-
-Project maintainers have the right and responsibility to remove, edit, or
-reject comments, commits, code, wiki edits, issues, and other contributions
-that are not aligned to this Code of Conduct. Project maintainers who do not
-follow the Code of Conduct may be removed from the project team.
-
-This code of conduct applies both within project spaces and in public spaces
-when an individual is representing the project or its community.
-
-Instances of abusive, harassing, or otherwise unacceptable behavior may be
-reported by opening an issue or contacting one or more of the project
-maintainers.
-
-This Code of Conduct is adapted from the [Contributor
-Covenant](http://contributor-covenant.org), version 1.1.0, available at
-[http://contributor-covenant.org/version/1/1/0/](http://contributor-covenant.org/version/1/1/0/)
diff --git a/docs/CONTRIBUTE b/docs/CONTRIBUTE
index c6ea9773f..83fa42099 100644
--- a/docs/CONTRIBUTE
+++ b/docs/CONTRIBUTE
@@ -34,7 +34,7 @@
3.3 How To Make a Patch without git
3.4 How to get your changes into the main sources
3.5 Write good commit messages
- 3.6 About pull requests
+ 3.6 Please don't send pull requests
==============================================================================
@@ -52,10 +52,6 @@
We also hang out on IRC in #curl on irc.freenode.net
- If you're at all interested in the code side of things, consider clicking
- 'watch' on the curl repo at github to get notified on pull requests and new
- issues posted there.
-
1.2. License
When contributing with code, you agree to put your changes and new code under
@@ -82,10 +78,10 @@
1.3 What To Read
- Source code, the man pages, the INTERNALS document, TODO, KNOWN_BUGS and the
- most recent changes in the git log. Just lurking on the curl-library mailing
- list is gonna give you a lot of insights on what's going on right now. Asking
- there is a good idea too.
+ Source code, the man pages, the INTERNALS document, TODO, KNOWN_BUGS, the
+ most recent CHANGES. Just lurking on the curl-library mailing list is gonna
+ give you a lot of insights on what's going on right now. Asking there is a
+ good idea too.
2. cURL Coding Standards
@@ -203,7 +199,7 @@
You need to first checkout the repository:
- git clone https://github.com/bagder/curl.git
+ git clone git://github.com/bagder/curl.git
You then proceed and edit all the files you like and you commit them to your
local repository:
@@ -245,8 +241,8 @@
For unix-like operating systems:
- https://savannah.gnu.org/projects/patch/
- https://www.gnu.org/software/diffutils/
+ http://www.gnu.org/software/patch/patch.html
+ http://www.gnu.org/directory/diffutils.html
For Windows:
@@ -292,15 +288,27 @@
and make sure that you have your own user and email setup correctly in git
before you commit
-3.6 About pull requests
+3.6 Please don't send pull requests
With git (and especially github) it is easy and tempting to send a pull
- request to the curl project to have changes merged this way instead of
- mailing patches to the curl-library mailing list.
+ request to one or more people in the curl project to have changes merged this
+ way instead of mailing patches to the curl-library mailing list.
+
+ We don't like that. We want them mailed for these reasons:
+
+ - Peer review. Anyone and everyone on the list can review, comment and
+ improve on the patch. Pull requests limit this ability.
+
+ - Anyone can merge the patch into their own trees for testing and those who
+ have push rights can push it to the main repo. It doesn't have to be anyone
+ the patch author knows beforehand.
+
+ - Commit messages can be tweaked and changed if merged locally instead of
+ using github. Merges directly on github requires the changes to be perfect
+ already, which they seldom are.
- We used to dislike this but we're trying to change that and accept that this
- is a frictionless way for people to contribute to the project. We now welcome
- pull requests!
+ - Merges on github prevents rebases and even enforces --no-ff which is a git
+ style we don't otherwise use in the project
- We will continue to avoid using github's merge tools to make the history
- linear and to make sure commits follow our style guidelines.
+ However: once patches have been reviewed and deemed fine on list they are
+ perfectly OK to be pulled from a published git tree.
diff --git a/docs/DISTRO-DILEMMA b/docs/DISTRO-DILEMMA
index 2d317fdb0..71186a268 100644
--- a/docs/DISTRO-DILEMMA
+++ b/docs/DISTRO-DILEMMA
@@ -112,7 +112,7 @@ The Better License, Original BSD, GPL or LGPL?
In Debian land, there seems to be a common opinion that LGPL is "maximally
compatible" with apps while Original BSD is not. Like this:
- https://lists.debian.org/debian-devel/2005/09/msg01417.html
+ http://lists.debian.org/debian-devel/2005/09/msg01417.html
More SSL Libraries
@@ -163,13 +163,13 @@ Distro Angle of this Problem
Footnotes
[1] = http://www.xfree86.org/3.3.6/COPYRIGHT2.html#6
- [2] = https://www.gnu.org/philosophy/bsd.html
- [3] = https://www.gnu.org/licenses/gpl.html
+ [2] = http://www.fsf.org/licensing/essays/bsd.html
+ [3] = http://www.fsf.org/licensing/licenses/gpl.html
[4] = http://curl.haxx.se/docs/copyright.html
- [5] = https://www.openssl.org/source/license.html
- [6] = https://www.gnu.org/licenses/gpl.html end of section 3
- [7] = https://www.gnu.org/licenses/lgpl.html
- [8] = https://en.wikipedia.org/wiki/OpenSSL_exception
+ [5] = http://www.openssl.org/source/license.html
+ [6] = http://www.fsf.org/licensing/licenses/gpl.html end of section 3
+ [7] = http://www.fsf.org/licensing/licenses/lgpl.html
+ [8] = http://en.wikipedia.org/wiki/OpenSSL_exception
Feedback/Updates provided by
diff --git a/docs/FAQ b/docs/FAQ
index 06a306d99..043b7bbc1 100644
--- a/docs/FAQ
+++ b/docs/FAQ
@@ -21,7 +21,6 @@ FAQ
1.12 I have a problem who can I chat with?
1.13 curl's ECCN number?
1.14 How do I submit my patch?
- 1.15 How do I port libcurl to my OS?
2. Install Related Problems
2.1 configure doesn't find OpenSSL even when it is installed
@@ -82,7 +81,6 @@ FAQ
4.18 file:// URLs containing drive letters (Windows, NetWare)
4.19 Why doesn't cURL return an error when the network cable is unplugged?
4.20 curl doesn't return error for HTTP non-200 responses!
- 4.21 Why is there a HTTP/1.1 in my HTTP/2 request?
5. libcurl Issues
5.1 Is libcurl thread-safe?
@@ -352,7 +350,7 @@ FAQ
cryptography. When doing so, the Export Control Classification Number (ECCN)
is used to identify the level of export control etc.
- ASF gives a good explanation at https://www.apache.org/dev/crypto.html
+ ASF gives a good explanation at http://www.apache.org/dev/crypto.html
We believe curl's number might be ECCN 5D002, another possibility is
5D992. It seems necessary to write them, asking to confirm.
@@ -381,19 +379,6 @@ FAQ
Lots of more details are found in the CONTRIBUTE and INTERNALS docs.
- 1.15 How do I port libcurl to my OS?
-
- Here's a rough step-by-step:
-
- 1. copy a suitable lib/config-*.h file as a start to lib/config-[youros].h
-
- 2. edit lib/config-[youros].h to match your OS and setup
-
- 3. edit lib/curl_setup.h to include config-[youros].h when your OS is
- detected by the preprocessor, in the style others already exist
-
- 4. compile lib/*.c and make them into a library
-
2. Install Related Problems
@@ -779,9 +764,8 @@ FAQ
request-body in a GET request with something like "curl -X GET -d data
[URL]"
- Note that -X doesn't actually change curl's behavior as it only modifies the
- actual string sent in the request, but that may of course trigger a
- different set of events.
+ Note that -X doesn't change curl's behavior. It only modifies the actual
+ string sent in the request.
Accordingly, by using -XPOST on a command line that for example would follow
a 303 redirect, you will effectively prevent curl from behaving
@@ -1042,7 +1026,7 @@ FAQ
timeout is set.
See option TcpMaxConnectRetransmissions on this page:
- https://support.microsoft.com/en-us/kb/175523/en-us
+ http://support.microsoft.com/?scid=kb%3Ben-us%3B175523&x=6&y=7
Also, even on non-Windows systems there may run a firewall or anti-virus
software or similar that accepts the connection but does not actually do
@@ -1059,7 +1043,7 @@ FAQ
You'll find that even if D:\blah.txt does exist, cURL returns a 'file
not found' error.
- According to RFC 1738 (https://www.ietf.org/rfc/rfc1738.txt),
+ According to RFC 1738 (http://www.faqs.org/rfcs/rfc1738.html),
file:// URLs must contain a host component, but it is ignored by
most implementations. In the above example, 'D:' is treated as the
host component, and is taken away. Thus, cURL tries to open '/blah.txt'.
@@ -1131,16 +1115,6 @@ FAQ
You can also use the -w option and the variable %{response_code} to extract
the exact response code that was return in the response.
- 4.21 Why is there a HTTP/1.1 in my HTTP/2 request?
-
- If you use verbose to see the HTTP request when you send off a HTTP/2
- request, it will still say 1.1.
-
- The reason for this is that we first generate the request to send using the
- old 1.1 style and show that request in the verbose output, and then we
- convert it over to the binary header-compressed HTTP/2 style. The actual
- "1.1" part from that request is then not actually used in the transfer. The
- binary HTTP/2 headers are not human readable.
5. libcurl Issues
@@ -1163,13 +1137,13 @@ FAQ
If you use a OpenSSL-powered libcurl in a multi-threaded environment, you
need to provide one or two locking functions:
- https://www.openssl.org/docs/crypto/threads.html
+ http://www.openssl.org/docs/crypto/threads.html
If you use a GnuTLS-powered libcurl in a multi-threaded environment, you
need to provide locking function(s) for libgcrypt (which is used by GnuTLS
for the crypto functions).
- https://web.archive.org/web/20111103083330/http://www.gnu.org/software/gnutls/manual/html_node/Multi_002dthreaded-applications.html
+ http://www.gnu.org/software/gnutls/manual/html_node/Multi_002dthreaded-applications.html
No special locking is needed with a NSS-powered libcurl. NSS is thread-safe.
@@ -1345,7 +1319,7 @@ FAQ
Also note that on many networks NATs or other IP-munging techniques are used
that makes you see and use a different IP address locally than what the
remote server will see you coming from. You may also consider using
- https://www.torproject.org/ .
+ http://www.torproject.org .
5.13 How do I stop an ongoing transfer?
diff --git a/docs/FEATURES b/docs/FEATURES
index 10fbdd570..a67400242 100644
--- a/docs/FEATURES
+++ b/docs/FEATURES
@@ -134,8 +134,8 @@ SMB
- authentication with NTLMv1
SMTP
- - authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9), Kerberos 5
- (*4) and External.
+ - authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9) and Kerberos 5
+ (*4)
- send e-mails
- mail from support
- mail size support
@@ -150,8 +150,8 @@ SMTPS (*1)
POP3
- authentication: Clear Text, APOP and SASL
- - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9),
- Kerberos 5 (*4) and External.
+ - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9) and
+ Kerberos 5 (*4)
- list e-mails
- retrieve e-mails
- enhanced command support for: CAPA, DELE, TOP, STAT, UIDL and NOOP via
@@ -165,8 +165,8 @@ POP3S (*1)
IMAP
- authentication: Clear Text and SASL
- - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9),
- Kerberos 5 (*4) and External.
+ - SASL based authentication: Plain, Login, CRAM-MD5, Digest-MD5, NTLM (*9) and
+ Kerberos 5 (*4)
- list the folders of a mailbox
- select a mailbox with support for verifying the UIDVALIDITY
- fetch e-mails with support for specifying the UID and SECTION
diff --git a/docs/HTTP-COOKIES b/docs/HTTP-COOKIES
index b5abddfa6..818e161ee 100644
--- a/docs/HTTP-COOKIES
+++ b/docs/HTTP-COOKIES
@@ -36,7 +36,7 @@ HTTP Cookies
For a very long time, the only spec explaining how to use cookies was the
original Netscape spec from 1994: http://curl.haxx.se/rfc/cookie_spec.html
- In 2011, RFC6265 (https://www.ietf.org/rfc/rfc6265.txt) was finally published
+ In 2011, RFC6265 (http://www.ietf.org/rfc/rfc6265.txt) was finally published
and details how cookies work within HTTP.
1.2 Cookies saved to disk
diff --git a/docs/HTTP2.md b/docs/HTTP2.md
deleted file mode 100644
index b4e2983bd..000000000
--- a/docs/HTTP2.md
+++ /dev/null
@@ -1,107 +0,0 @@
-HTTP/2 with curl
-================
-
-[HTTP/2 Spec](https://www.rfc-editor.org/rfc/rfc7540.txt)
-[http2 explained](http://daniel.haxx.se/http2/)
-
-Build prerequisites
--------------------
- - nghttp2
- - OpenSSL, NSS, GnutTLS or PolarSSL with a new enough version
-
-[nghttp2](https://nghttp2.org/)
--------------------------------
-
-libcurl uses this 3rd party library for the low level protocol handling
-parts. The reason for this is that HTTP/2 is much more complex at that layer
-than HTTP/1.1 (which we implement on our own) and that nghttp2 is an already
-existing and well functional library.
-
-We require at least version 1.0.0.
-
-Over an http:// URL
--------------------
-
-If `CURLOPT_HTTP_VERSION` is set to `CURL_HTTP_VERSION_2_0`, libcurl will
-include an upgrade header in the initial request to the host to allow
-upgrading to HTTP/2.
-
-Possibly we can later introduce an option that will cause libcurl to fail if
-not possible to upgrade. Possibly we introduce an option that makes libcurl
-use HTTP/2 at once over http://
-
-Over an https:// URL
---------------------
-
-If `CURLOPT_HTTP_VERSION` is set to `CURL_HTTP_VERSION_2_0`, libcurl will use
-ALPN (or NPN) to negotiate which protocol to continue with. Possibly introduce
-an option that will cause libcurl to fail if not possible to use HTTP/2.
-Consider options to explicitly disable ALPN and/or NPN.
-
-ALPN is the TLS extension that HTTP/2 is expected to use. The NPN extension is
-for a similar purpose, was made prior to ALPN and is used for SPDY so early
-HTTP/2 servers are implemented using NPN before ALPN support is widespread.
-
-SSL libs
---------
-
-The challenge is the ALPN and NPN support and all our different SSL
-backends. You may need a fairly updated SSL library version for it to
-provide the necessary TLS features. Right now we support:
-
- - OpenSSL: ALPN and NPN
- - NSS: ALPN and NPN
- - GnuTLS: ALPN
- - PolarSSL: ALPN
-
-Multiplexing
-------------
-
-Starting in 7.43.0, libcurl fully supports HTTP/2 multiplexing, which is the
-term for doing multiple independent transfers over the same physical TCP
-connection.
-
-To take advantage of multiplexing, you need to use the multi interface and set
-`CURLMOPT_PIPELINING` to `CURLPIPE_MULTIPLEX`. With that bit set, libcurl will
-attempt to re-use existing HTTP/2 connections and just add a new stream over
-that when doing subsequent parallel requests.
-
-While libcurl sets up a connection to a HTTP server there is a period during
-which it doesn't know if it can pipeline or do multiplexing and if you add new
-transfers in that period, libcurl will default to start new connections for
-those transfers. With the new option `CURLOPT_PIPEWAIT` (added in 7.43.0), you
-can ask that a transfer should rather wait and see in case there's a
-connection for the same host in progress that might end up being possible to
-multiplex on. It favours keeping the number of connections low to the cost of
-slightly longer time to first byte transferred.
-
-Applications
-------------
-
-We hide HTTP/2's binary nature and convert received HTTP/2 traffic to headers
-in HTTP 1.1 style. This allows applications to work unmodified.
-
-curl tool
----------
-
-curl offers the `--http2` command line option to enable use of HTTP/2
-
-HTTP Alternative Services
--------------------------
-
-Alt-Svc is a suggested extension with a corresponding frame (ALTSVC) in HTTP/2
-that tells the client about an alternative "route" to the same content for the
-same origin server that you get the response from. A browser or long-living
-client can use that hint to create a new connection asynchronously. For
-libcurl, we may introduce a way to bring such clues to the applicaton and/or
-let a subsequent request use the alternate route
-automatically. [Spec](https://tools.ietf.org/html/draft-ietf-httpbis-alt-svc-05)
-
-TODO
-----
-
- - Provide API to set priorities / dependencies of individual streams
-
- - Implement "prior-knowledge" HTTP/2 connecitons over clear text so that
- curl can connect with HTTP/2 at once without 1.1+Upgrade.
-
diff --git a/docs/INSTALL b/docs/INSTALL
index 67cd489da..30dec5343 100644
--- a/docs/INSTALL
+++ b/docs/INSTALL
@@ -173,13 +173,13 @@ Win32
advice given above.
KB94248 - How To Use the C Run-Time
- https://support.microsoft.com/kb/94248/en-us
+ http://support.microsoft.com/kb/94248/en-us
KB140584 - How to link with the correct C Run-Time (CRT) library
- https://support.microsoft.com/kb/140584/en-us
+ http://support.microsoft.com/kb/140584/en-us
KB190799 - Potential Errors Passing CRT Objects Across DLL Boundaries
- https://msdn.microsoft.com/en-us/library/ms235460
+ http://msdn.microsoft.com/en-us/library/ms235460
If your app is misbehaving in some strange way, or it is suffering
from memory corruption, before asking for further help, please try
@@ -209,8 +209,8 @@ Win32
environment variables, for example:
set ZLIB_PATH=c:\zlib-1.2.8
- set OPENSSL_PATH=c:\openssl-1.0.2c
- set LIBSSH2_PATH=c:\libssh2-1.6.0
+ set OPENSSL_PATH=c:\openssl-0.9.8zc
+ set LIBSSH2_PATH=c:\libssh2-1.4.3
ATTENTION: if you want to build with libssh2 support you have to use latest
version 0.17 - previous versions will NOT work with 7.17.0 and later!
@@ -232,7 +232,7 @@ Win32
- optional MingW32-built OpenLDAP SDK available from:
http://www.gknw.net/mirror/openldap/
- optional recent Novell CLDAP SDK available from:
- https://www.novell.com/developer/ndk/ldap_libraries_for_c.html
+ http://developer.novell.com/ndk/cldap.htm
Cygwin
------
@@ -254,7 +254,7 @@ Win32
If you use MSVC 6 it is required that you use the February 2003 edition of
the 'Platform SDK' which can be downloaded from:
- https://www.microsoft.com/en-us/download/details.aspx?id=12261
+ http://www.microsoft.com/en-us/download/details.aspx?id=12261
Building any software with MSVC 6 without having PSDK installed is just
asking for trouble down the road once you have released it, you might notice
@@ -263,7 +263,7 @@ Win32
software built in such way will at some point regret having done so.
If the compiler has been updated with the installation of a service pack as
- those mentioned in https://support.microsoft.com/kb/194022 the compiler can be
+ those mentioned in http://support.microsoft.com/kb/194022 the compiler can be
safely used to read source code, translate and make it object code.
But, even with the service packs mentioned above installed, the resulting
@@ -299,7 +299,7 @@ Win32
Then run 'nmake vc' in curl's root directory.
If you want to compile with zlib support, you will need to build
- zlib (http://www.zlib.net/) as well. Please read the zlib
+ zlib (http://www.gzip.org/zlib/) as well. Please read the zlib
documentation on how to compile zlib. Define the ZLIB_PATH environment
variable to the location of zlib.h and zlib.lib, for example:
@@ -471,15 +471,6 @@ Win32
add '-DCURL_STATICLIB' to your CFLAGS. Otherwise the linker will look for
dynamic import symbols.
- Legacy Windows and SSL
- ----------------------
-
- WinSSL (specifically SChannel from Windows SSPI), is the native SSL library
- in Windows. However, WinSSL in Windows <= XP is unable to connect to servers
- that no longer support the legacy handshakes and algorithms used by those
- versions. If you will be using curl in one of those earlier versions of
- Windows you should choose another SSL backend such as OpenSSL.
-
Apple iOS and Mac OS X
======================
@@ -674,10 +665,12 @@ NetWare
- gnu make and awk running on the platform you compile on;
native Win32 versions can be downloaded from:
http://www.gknw.net/development/prgtools/
- - recent Novell LibC or Novell CLib SDK available from:
- https://www.novell.com/developer/ndk/
+ - recent Novell LibC SDK available from:
+ http://developer.novell.com/ndk/libc.htm
+ - or recent Novell CLib SDK available from:
+ http://developer.novell.com/ndk/clib.htm
- optional recent Novell CLDAP SDK available from:
- https://www.novell.com/developer/ndk/ldap_libraries_for_c.html
+ http://developer.novell.com/ndk/cldap.htm
- optional zlib sources (static or dynamic linking with zlib.imp);
sources with NetWare Makefile can be obtained from:
http://www.gknw.net/mirror/zlib/
@@ -832,7 +825,7 @@ VxWorks
To build libcurl for VxWorks you need:
- - CYGWIN (free, https://cygwin.com/)
+ - CYGWIN (free, http://cygwin.com/)
- Wind River Workbench (commercial)
If you have CYGWIN and Workbench installed on you machine
@@ -1093,18 +1086,18 @@ Useful URLs
axTLS http://axtls.sourceforge.net/
c-ares http://c-ares.haxx.se/
-GNU GSS https://www.gnu.org/software/gss/
-GnuTLS https://www.gnu.org/software/gnutls/
-Heimdal http://www.h5l.org/
-libidn https://www.gnu.org/software/libidn/
+GNU GSS http://www.gnu.org/software/gss/
+GnuTLS http://www.gnu.org/software/gnutls/
+Heimdal http://www.pdc.kth.se/heimdal/
+libidn http://www.gnu.org/software/libidn/
libmetalink https://launchpad.net/libmetalink/
libssh2 http://www.libssh2.org/
MIT Kerberos http://web.mit.edu/kerberos/www/dist/
-NSS https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
+NSS http://www.mozilla.org/projects/security/pki/nss/
OpenLDAP http://www.openldap.org/
-OpenSSL https://www.openssl.org/
-PolarSSL https://tls.mbed.org/
-wolfSSL https://www.wolfssl.com/wolfSSL/
+OpenSSL http://www.openssl.org/
+PolarSSL http://polarssl.org/
+yassl http://www.yassl.com/
Zlib http://www.zlib.net/
MingW http://www.mingw.org/
diff --git a/docs/INSTALL.devcpp b/docs/INSTALL.devcpp
index ee2d7036f..46d1836af 100644
--- a/docs/INSTALL.devcpp
+++ b/docs/INSTALL.devcpp
@@ -95,7 +95,7 @@ install instructions may produce erratic behaviour in DevCpp. For further info
check the following sites
http://aditsu.freeunixhost.com/dev-cpp-faq.html
-https://sourceforge.net/p/dev-cpp/discussion/48211/thread/2a85ea46
+http://sourceforge.net/forum/message.php?msg_id=3252213
As I have mentioned before I will confine this to the SSL Library compilations
but the process is very similar for compilation of the executable - curl.exe;
diff --git a/docs/INTERNALS b/docs/INTERNALS
index 4cd63b4e2..f8b1b47b4 100644
--- a/docs/INTERNALS
+++ b/docs/INTERNALS
@@ -1,57 +1,18 @@
-Table of Contents
-=================
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
- - [Intro](#intro)
- - [git](#git)
- - [Portability](#Portability)
- - [Windows vs Unix](#winvsunix)
- - [Library](#Library)
- - [`Curl_connect`](#Curl_connect)
- - [`Curl_do`](#Curl_do)
- - [`Curl_readwrite`](#Curl_readwrite)
- - [`Curl_done`](#Curl_done)
- - [`Curl_disconnect`](#Curl_disconnect)
- - [HTTP(S)](#http)
- - [FTP](#ftp)
- - [Kerberos](#kerberos)
- - [TELNET](#telnet)
- - [FILE](#file)
- - [SMB](#smb)
- - [LDAP](#ldap)
- - [E-mail](#email)
- - [General](#general)
- - [Persistent Connections](#persistent)
- - [multi interface/non-blocking](#multi)
- - [SSL libraries](#ssl)
- - [Library Symbols](#symbols)
- - [Return Codes and Informationals](#returncodes)
- - [AP/ABI](#abi)
- - [Client](#client)
- - [Memory Debugging](#memorydebug)
- - [Test Suite](#test)
- - [Asynchronous name resolves](#asyncdns)
- - [c-ares](#cares)
- - [`curl_off_t`](#curl_off_t)
- - [curlx](#curlx)
- - [Content Encoding](#contentencoding)
- - [hostip.c explained](#hostip)
- - [Track Down Memory Leaks](#memoryleak)
- - [`multi_socket`](#multi_socket)
- - [Structs in libcurl](#structs)
-
-<a name="intro"></a>
-curl internals
-==============
-
- This project is split in two. The library and the client. The client part
- uses the library, but the library is designed to allow other applications to
- use it.
+INTERNALS
- The largest amount of code and complexity is in the library part.
+ The project is split in two. The library and the client. The client part uses
+ the library, but the library is designed to allow other applications to use
+ it.
+ The largest amount of code and complexity is in the library part.
-<a name="git"></a>
-git
+GIT
===
All changes to the sources are committed to the git repository as soon as
@@ -62,7 +23,6 @@ git
Tagging shall be used extensively, and by the time we release new archives we
should tag the sources with a name similar to the released version number.
-<a name="Portability"></a>
Portability
===========
@@ -74,55 +34,45 @@ Portability
want it to remain functional and buildable with these and later versions
(older versions may still work but is not what we work hard to maintain):
-Dependencies
-------------
-
- - OpenSSL 0.9.7
- - GnuTLS 1.2
- - zlib 1.1.4
- - libssh2 0.16
- - c-ares 1.6.0
- - libidn 0.4.1
- - cyassl 2.0.0
- - openldap 2.0
- - MIT Kerberos 1.2.4
- - GSKit V5R3M0
- - NSS 3.14.x
- - axTLS 1.2.7
- - PolarSSL 1.3.0
- - Heimdal ?
- - nghttp2 1.0.0
-
-Operating Systems
------------------
+ OpenSSL 0.9.7
+ GnuTLS 1.2
+ zlib 1.1.4
+ libssh2 0.16
+ c-ares 1.6.0
+ libidn 0.4.1
+ cyassl 2.0.0
+ openldap 2.0
+ MIT Kerberos 1.2.4
+ GSKit V5R3M0
+ NSS 3.14.x
+ axTLS 1.2.7
+ PolarSSL 1.3.0
+ Heimdal ?
+ nghttp2 0.6.0
On systems where configure runs, we aim at working on them all - if they have
a suitable C compiler. On systems that don't run configure, we strive to keep
curl running fine on:
- - Windows 98
- - AS/400 V5R3M0
- - Symbian 9.1
- - Windows CE ?
- - TPF ?
-
-Build tools
------------
+ Windows 98
+ AS/400 V5R3M0
+ Symbian 9.1
+ Windows CE ?
+ TPF ?
When writing code (mostly for generating stuff included in release tarballs)
we use a few "build tools" and we make sure that we remain functional with
these versions:
- - GNU Libtool 1.4.2
- - GNU Autoconf 2.57
- - GNU Automake 1.7
- - GNU M4 1.4
- - perl 5.004
- - roffit 0.5
- - groff ? (any version that supports "groff -Tps -man [in] [out]")
- - ps2pdf (gs) ?
+ GNU Libtool 1.4.2
+ GNU Autoconf 2.57
+ GNU Automake 1.7 (we currently avoid 1.10 due to Solaris-related bugs)
+ GNU M4 1.4
+ perl 5.004
+ roffit 0.5
+ groff ? (any version that supports "groff -Tps -man [in] [out]")
+ ps2pdf (gs) ?
-<a name="winvsunix"></a>
Windows vs Unix
===============
@@ -137,9 +87,8 @@ Windows vs Unix
2. Windows requires a couple of init calls for the socket stuff.
- That's taken care of by the `curl_global_init()` call, but if other libs
- also do it etc there might be reasons for applications to alter that
- behaviour.
+ That's taken care of by the curl_global_init() call, but if other libs also
+ do it etc there might be reasons for applications to alter that behaviour.
3. The file descriptors for network communication and file operations are
not easily interchangeable as in unix.
@@ -152,29 +101,28 @@ Windows vs Unix
We set stdout to binary under windows
- Inside the source code, We make an effort to avoid `#ifdef [Your OS]`. All
+ Inside the source code, We make an effort to avoid '#ifdef [Your OS]'. All
conditionals that deal with features *should* instead be in the format
- `#ifdef HAVE_THAT_WEIRD_FUNCTION`. Since Windows can't run configure scripts,
- we maintain a `curl_config-win32.h` file in lib directory that is supposed to
- look exactly as a `curl_config.h` file would have looked like on a Windows
+ '#ifdef HAVE_THAT_WEIRD_FUNCTION'. Since Windows can't run configure scripts,
+ we maintain a curl_config-win32.h file in lib directory that is supposed to
+ look exactly as a curl_config.h file would have looked like on a Windows
machine!
Generally speaking: always remember that this will be compiled on dozens of
operating systems. Don't walk on the edge.
-<a name="Library"></a>
Library
=======
- (See `LIBCURL-STRUCTS` for a separate document describing all major internal
+ (See LIBCURL-STRUCTS for a separate document describing all major internal
structs and their purposes.)
There are plenty of entry points to the library, namely each publicly defined
function that libcurl offers to applications. All of those functions are
- rather small and easy-to-follow. All the ones prefixed with `curl_easy` are
+ rather small and easy-to-follow. All the ones prefixed with 'curl_easy' are
put in the lib/easy.c file.
- `curl_global_init_()` and `curl_global_cleanup()` should be called by the
+ curl_global_init_() and curl_global_cleanup() should be called by the
application to initialize and clean up global stuff in the library. As of
today, it can handle the global SSL initing if SSL is enabled and it can init
the socket layer on windows machines. libcurl itself has no "global" scope.
@@ -182,56 +130,51 @@ Library
All printf()-style functions use the supplied clones in lib/mprintf.c. This
makes sure we stay absolutely platform independent.
- [ `curl_easy_init()`][2] allocates an internal struct and makes some
- initializations. The returned handle does not reveal internals. This is the
- 'SessionHandle' struct which works as an "anchor" struct for all `curl_easy`
- functions. All connections performed will get connect-specific data allocated
- that should be used for things related to particular connections/requests.
+ curl_easy_init() allocates an internal struct and makes some initializations.
+ The returned handle does not reveal internals. This is the 'SessionHandle'
+ struct which works as an "anchor" struct for all curl_easy functions. All
+ connections performed will get connect-specific data allocated that should be
+ used for things related to particular connections/requests.
- [`curl_easy_setopt()`][1] takes three arguments, where the option stuff must
- be passed in pairs: the parameter-ID and the parameter-value. The list of
+ curl_easy_setopt() takes three arguments, where the option stuff must be
+ passed in pairs: the parameter-ID and the parameter-value. The list of
options is documented in the man page. This function mainly sets things in
the 'SessionHandle' struct.
- `curl_easy_perform()` is just a wrapper function that makes use of the multi
- API. It basically calls `curl_multi_init()`, `curl_multi_add_handle()`,
- `curl_multi_wait()`, and `curl_multi_perform()` until the transfer is done
- and then returns.
+ curl_easy_perform() is just a wrapper function that makes use of the multi
+ API. It basically curl_multi_init(), curl_multi_add_handle(),
+ curl_multi_wait(), and curl_multi_perform() until the transfer is done and
+ then returns.
Some of the most important key functions in url.c are called from multi.c
when certain key steps are to be made in the transfer operation.
-<a name="Curl_connect"></a>
-Curl_connect()
---------------
+ o Curl_connect()
Analyzes the URL, it separates the different components and connects to the
remote host. This may involve using a proxy and/or using SSL. The
- `Curl_resolv()` function in lib/hostip.c is used for looking up host names
+ Curl_resolv() function in lib/hostip.c is used for looking up host names
(it does then use the proper underlying method, which may vary between
platforms and builds).
- When `Curl_connect` is done, we are connected to the remote site. Then it
- is time to tell the server to get a document/file. `Curl_do()` arranges
- this.
+ When Curl_connect is done, we are connected to the remote site. Then it is
+ time to tell the server to get a document/file. Curl_do() arranges this.
This function makes sure there's an allocated and initiated 'connectdata'
struct that is used for this particular connection only (although there may
be several requests performed on the same connect). A bunch of things are
inited/inherited from the SessionHandle struct.
-<a name="Curl_do"></a>
-Curl_do()
----------
+ o Curl_do()
- `Curl_do()` makes sure the proper protocol-specific function is called. The
+ Curl_do() makes sure the proper protocol-specific function is called. The
functions are named after the protocols they handle.
The protocol-specific functions of course deal with protocol-specific
- negotiations and setup. They have access to the `Curl_sendf()` (from
+ negotiations and setup. They have access to the Curl_sendf() (from
lib/sendf.c) function to send printf-style formatted data to the remote
host and when they're ready to make the actual file transfer they call the
- `Curl_Transfer()` function (in lib/transfer.c) to setup the transfer and
+ Curl_Transfer() function (in lib/transfer.c) to setup the transfer and
returns.
If this DO function fails and the connection is being re-used, libcurl will
@@ -240,13 +183,11 @@ Curl_do()
we have discovered a dead connection before the DO function and thus we
might wrongly be re-using a connection that was closed by the remote peer.
- Some time during the DO function, the `Curl_setup_transfer()` function must
+ Some time during the DO function, the Curl_setup_transfer() function must
be called with some basic info about the upcoming transfer: what socket(s)
to read/write and the expected file transfer sizes (if known).
-<a name="Curl_readwrite"></a>
-Curl_readwrite()
-----------------
+ o Curl_readwrite()
Called during the transfer of the actual protocol payload.
@@ -255,22 +196,18 @@ Curl_readwrite()
called). The speedcheck functions in lib/speedcheck.c are also used to
verify that the transfer is as fast as required.
-<a name="Curl_done"></a>
-Curl_done()
------------
+ o Curl_done()
Called after a transfer is done. This function takes care of everything
that has to be done after a transfer. This function attempts to leave
- matters in a state so that `Curl_do()` should be possible to call again on
+ matters in a state so that Curl_do() should be possible to call again on
the same connection (in a persistent connection case). It might also soon
- be closed with `Curl_disconnect()`.
+ be closed with Curl_disconnect().
-<a name="Curl_disconnect"></a>
-Curl_disconnect()
------------------
+ o Curl_disconnect()
When doing normal connections and transfers, no one ever tries to close any
- connections so this is not normally called when `curl_easy_perform()` is
+ connections so this is not normally called when curl_easy_perform() is
used. This function is only used when we are certain that no more transfers
is going to be made on the connection. It can be also closed by force, or
it can be called to make sure that libcurl doesn't keep too many
@@ -279,9 +216,8 @@ Curl_disconnect()
This function cleans up all resources that are associated with a single
connection.
-<a name="http"></a>
-HTTP(S)
-=======
+
+ HTTP(S)
HTTP offers a lot and is the protocol in curl that uses the most lines of
code. There is a special file (lib/formdata.c) that offers all the multipart
@@ -293,123 +229,100 @@ HTTP(S)
HTTPS uses in almost every means the same procedure as HTTP, with only two
exceptions: the connect procedure is different and the function used to read
or write from the socket is different, although the latter fact is hidden in
- the source by the use of `Curl_read()` for reading and `Curl_write()` for
- writing data to the remote server.
+ the source by the use of Curl_read() for reading and Curl_write() for writing
+ data to the remote server.
- `http_chunks.c` contains functions that understands HTTP 1.1 chunked transfer
+ http_chunks.c contains functions that understands HTTP 1.1 chunked transfer
encoding.
- An interesting detail with the HTTP(S) request, is the `Curl_add_buffer()`
+ An interesting detail with the HTTP(S) request, is the Curl_add_buffer()
series of functions we use. They append data to one single buffer, and when
the building is done the entire request is sent off in one single write. This
is done this way to overcome problems with flawed firewalls and lame servers.
-<a name="ftp"></a>
-FTP
-===
+ FTP
- The `Curl_if2ip()` function can be used for getting the IP number of a
+ The Curl_if2ip() function can be used for getting the IP number of a
specified network interface, and it resides in lib/if2ip.c.
- `Curl_ftpsendf()` is used for sending FTP commands to the remote server. It
- was made a separate function to prevent us programmers from forgetting that
- they must be CRLF terminated. They must also be sent in one single write() to
- make firewalls and similar happy.
+ Curl_ftpsendf() is used for sending FTP commands to the remote server. It was
+ made a separate function to prevent us programmers from forgetting that they
+ must be CRLF terminated. They must also be sent in one single write() to make
+ firewalls and similar happy.
-<a name="kerberos"></a>
-Kerberos
---------
+ Kerberos
Kerberos support is mainly in lib/krb5.c and lib/security.c but also
- `curl_sasl_sspi.c` and `curl_sasl_gssapi.c` for the email protocols and
- `socks_gssapi.c` and `socks_sspi.c` for SOCKS5 proxy specifics.
+ curl_sasl_sspi.c and curl_sasl_gssapi.c for the email protocols and
+ socks_gssapi.c & socks_sspi.c for SOCKS5 proxy specifics.
-<a name="telnet"></a>
-TELNET
-======
+ TELNET
Telnet is implemented in lib/telnet.c.
-<a name="file"></a>
-FILE
-====
+ FILE
The file:// protocol is dealt with in lib/file.c.
-<a name="smb"></a>
-SMB
-===
+ SMB
The smb:// protocol is dealt with in lib/smb.c.
-<a name="ldap"></a>
-LDAP
-====
+ LDAP
Everything LDAP is in lib/ldap.c and lib/openldap.c
-<a name="email"></a>
-E-mail
-======
+ E-mail
The e-mail related source code is in lib/imap.c, lib/pop3.c and lib/smtp.c.
-<a name="general"></a>
-General
-=======
+ GENERAL
URL encoding and decoding, called escaping and unescaping in the source code,
is found in lib/escape.c.
While transferring data in Transfer() a few functions might get used.
- `curl_getdate()` in lib/parsedate.c is for HTTP date comparisons (and more).
+ curl_getdate() in lib/parsedate.c is for HTTP date comparisons (and more).
- lib/getenv.c offers `curl_getenv()` which is for reading environment
- variables in a neat platform independent way. That's used in the client, but
- also in lib/url.c when checking the proxy environment variables. Note that
- contrary to the normal unix getenv(), this returns an allocated buffer that
- must be free()ed after use.
+ lib/getenv.c offers curl_getenv() which is for reading environment variables
+ in a neat platform independent way. That's used in the client, but also in
+ lib/url.c when checking the proxy environment variables. Note that contrary
+ to the normal unix getenv(), this returns an allocated buffer that must be
+ free()ed after use.
lib/netrc.c holds the .netrc parser
lib/timeval.c features replacement functions for systems that don't have
gettimeofday() and a few support functions for timeval conversions.
- A function named `curl_version()` that returns the full curl version string
- is found in lib/version.c.
+ A function named curl_version() that returns the full curl version string is
+ found in lib/version.c.
-<a name="persistent"></a>
Persistent Connections
======================
The persistent connection support in libcurl requires some considerations on
how to do things inside of the library.
- - The 'SessionHandle' struct returned in the [`curl_easy_init()`][2] call
- must never hold connection-oriented data. It is meant to hold the root data
- as well as all the options etc that the library-user may choose.
-
- - The 'SessionHandle' struct holds the "connection cache" (an array of
+ o The 'SessionHandle' struct returned in the curl_easy_init() call must never
+ hold connection-oriented data. It is meant to hold the root data as well as
+ all the options etc that the library-user may choose.
+ o The 'SessionHandle' struct holds the "connection cache" (an array of
pointers to 'connectdata' structs).
-
- - This enables the 'curl handle' to be reused on subsequent transfers.
-
- - When libcurl is told to perform a transfer, it first checks for an already
+ o This enables the 'curl handle' to be reused on subsequent transfers.
+ o When libcurl is told to perform a transfer, it first checks for an already
existing connection in the cache that we can use. Otherwise it creates a
new one and adds that the cache. If the cache is full already when a new
connection is added added, it will first close the oldest unused one.
-
- - When the transfer operation is complete, the connection is left
+ o When the transfer operation is complete, the connection is left
open. Particular options may tell libcurl not to, and protocols may signal
closure on connections and then they won't be kept open of course.
-
- - When `curl_easy_cleanup()` is called, we close all still opened connections,
+ o When curl_easy_cleanup() is called, we close all still opened connections,
unless of course the multi interface "owns" the connections.
The curl handle must be re-used in order for the persistent connections to
work.
-<a name="multi"></a>
multi interface/non-blocking
============================
@@ -428,7 +341,6 @@ multi interface/non-blocking
protocols are crappy examples and they are subject for rewrite in the future
to better fit the libcurl protocol family.
-<a name="ssl"></a>
SSL libraries
=============
@@ -438,39 +350,36 @@ SSL libraries
in future libcurl versions.
To deal with this internally in the best way possible, we have a generic SSL
- function API as provided by the vtls/vtls.[ch] system, and they are the only
- SSL functions we must use from within libcurl. vtls is then crafted to use
- the appropriate lower-level function calls to whatever SSL library that is in
+ function API as provided by the vtls.[ch] system, and they are the only SSL
+ functions we must use from within libcurl. vtls is then crafted to use the
+ appropriate lower-level function calls to whatever SSL library that is in
use. For example vtls/openssl.[ch] for the OpenSSL library.
-<a name="symbols"></a>
Library Symbols
===============
- All symbols used internally in libcurl must use a `Curl_` prefix if they're
+ All symbols used internally in libcurl must use a 'Curl_' prefix if they're
used in more than a single file. Single-file symbols must be made static.
- Public ("exported") symbols must use a `curl_` prefix. (There are exceptions,
+ Public ("exported") symbols must use a 'curl_' prefix. (There are exceptions,
but they are to be changed to follow this pattern in future versions.) Public
- API functions are marked with `CURL_EXTERN` in the public header files so
- that all others can be hidden on platforms where this is possible.
+ API functions are marked with CURL_EXTERN in the public header files so that
+ all others can be hidden on platforms where this is possible.
-<a name="returncodes"></a>
Return Codes and Informationals
===============================
I've made things simple. Almost every function in libcurl returns a CURLcode,
- that must be `CURLE_OK` if everything is OK or otherwise a suitable error
- code as the curl/curl.h include file defines. The very spot that detects an
- error must use the `Curl_failf()` function to set the human-readable error
+ that must be CURLE_OK if everything is OK or otherwise a suitable error code
+ as the curl/curl.h include file defines. The very spot that detects an error
+ must use the Curl_failf() function to set the human-readable error
description.
In aiding the user to understand what's happening and to debug curl usage, we
- must supply a fair amount of informational messages by using the
- `Curl_infof()` function. Those messages are only displayed when the user
- explicitly asks for them. They are best used when revealing information that
- isn't otherwise obvious.
+ must supply a fair amount of informational messages by using the Curl_infof()
+ function. Those messages are only displayed when the user explicitly asks for
+ them. They are best used when revealing information that isn't otherwise
+ obvious.
-<a name="abi"></a>
API/ABI
=======
@@ -478,31 +387,29 @@ API/ABI
that makes it easier to keep a solid API/ABI over time. See docs/libcurl/ABI
for our promise to users.
-<a name="client"></a>
Client
======
- main() resides in `src/tool_main.c`.
+ main() resides in src/tool_main.c.
- `src/tool_hugehelp.c` is automatically generated by the mkhelp.pl perl script
+ src/tool_hugehelp.c is automatically generated by the mkhelp.pl perl script
to display the complete "manual" and the src/tool_urlglob.c file holds the
functions used for the URL-"globbing" support. Globbing in the sense that the
{} and [] expansion stuff is there.
The client mostly messes around to setup its 'config' struct properly, then
- it calls the `curl_easy_*()` functions of the library and when it gets back
- control after the `curl_easy_perform()` it cleans up the library, checks
- status and exits.
+ it calls the curl_easy_*() functions of the library and when it gets back
+ control after the curl_easy_perform() it cleans up the library, checks status
+ and exits.
When the operation is done, the ourWriteOut() function in src/writeout.c may
be called to report about the operation. That function is using the
- `curl_easy_getinfo()` function to extract useful information from the curl
+ curl_easy_getinfo() function to extract useful information from the curl
session.
It may loop and do all this several times if many URLs were specified on the
command line or config file.
-<a name="memorydebug"></a>
Memory Debugging
================
@@ -532,7 +439,6 @@ Memory Debugging
the configure script. When --enable-debug is given both features will be
enabled, unless some restriction prevents memory tracking from being used.
-<a name="test"></a>
Test Suite
==========
@@ -550,546 +456,29 @@ Test Suite
The test suite automatically detects if curl was built with the memory
debugging enabled, and if it was it will detect memory leaks, too.
-<a name="asyncdns"></a>
-Asynchronous name resolves
-==========================
-
- libcurl can be built to do name resolves asynchronously, using either the
- normal resolver in a threaded manner or by using c-ares.
-
-<a name="cares"></a>
-[c-ares][3]
-------
-
-### Build libcurl to use a c-ares
-
-1. ./configure --enable-ares=/path/to/ares/install
-2. make
-
-### c-ares on win32
-
- First I compiled c-ares. I changed the default C runtime library to be the
- single-threaded rather than the multi-threaded (this seems to be required to
- prevent linking errors later on). Then I simply build the areslib project
- (the other projects adig/ahost seem to fail under MSVC).
-
- Next was libcurl. I opened lib/config-win32.h and I added a:
- `#define USE_ARES 1`
-
- Next thing I did was I added the path for the ares includes to the include
- path, and the libares.lib to the libraries.
-
- Lastly, I also changed libcurl to be single-threaded rather than
- multi-threaded, again this was to prevent some duplicate symbol errors. I'm
- not sure why I needed to change everything to single-threaded, but when I
- didn't I got redefinition errors for several CRT functions (malloc, stricmp,
- etc.)
-
-<a name="curl_off_t"></a>
-`curl_off_t`
-==========
-
- curl_off_t is a data type provided by the external libcurl include
- headers. It is the type meant to be used for the [`curl_easy_setopt()`][1]
- options that end with LARGE. The type is 64bit large on most modern
- platforms.
-
-curlx
-=====
-
- The libcurl source code offers a few functions by source only. They are not
- part of the official libcurl API, but the source files might be useful for
- others so apps can optionally compile/build with these sources to gain
- additional functions.
-
- We provide them through a single header file for easy access for apps:
- "curlx.h"
-
-`curlx_strtoofft()`
--------------------
- A macro that converts a string containing a number to a curl_off_t number.
- This might use the curlx_strtoll() function which is provided as source
- code in strtoofft.c. Note that the function is only provided if no
- strtoll() (or equivalent) function exist on your platform. If curl_off_t
- is only a 32 bit number on your platform, this macro uses strtol().
-
-`curlx_tvnow()`
----------------
- returns a struct timeval for the current time.
-
-`curlx_tvdiff()`
---------------
- returns the difference between two timeval structs, in number of
- milliseconds.
-
-`curlx_tvdiff_secs()`
----------------------
- returns the same as curlx_tvdiff but with full usec resolution (as a
- double)
-
-Future
-------
-
- Several functions will be removed from the public curl_ name space in a
- future libcurl release. They will then only become available as curlx_
- functions instead. To make the transition easier, we already today provide
- these functions with the curlx_ prefix to allow sources to get built properly
- with the new function names. The functions this concerns are:
-
- - `curlx_getenv`
- - `curlx_strequal`
- - `curlx_strnequal`
- - `curlx_mvsnprintf`
- - `curlx_msnprintf`
- - `curlx_maprintf`
- - `curlx_mvaprintf`
- - `curlx_msprintf`
- - `curlx_mprintf`
- - `curlx_mfprintf`
- - `curlx_mvsprintf`
- - `curlx_mvprintf`
- - `curlx_mvfprintf`
-
-<a name="contentencoding"></a>
-Content Encoding
-================
-
-## About content encodings
-
- [HTTP/1.1][4] specifies that a client may request that a server encode its
- response. This is usually used to compress a response using one of a set of
- commonly available compression techniques. These schemes are 'deflate' (the
- zlib algorithm), 'gzip' and 'compress'. A client requests that the sever
- perform an encoding by including an Accept-Encoding header in the request
- document. The value of the header should be one of the recognized tokens
- 'deflate', ... (there's a way to register new schemes/tokens, see sec 3.5 of
- the spec). A server MAY honor the client's encoding request. When a response
- is encoded, the server includes a Content-Encoding header in the
- response. The value of the Content-Encoding header indicates which scheme was
- used to encode the data.
-
- A client may tell a server that it can understand several different encoding
- schemes. In this case the server may choose any one of those and use it to
- encode the response (indicating which one using the Content-Encoding header).
- It's also possible for a client to attach priorities to different schemes so
- that the server knows which it prefers. See sec 14.3 of RFC 2616 for more
- information on the Accept-Encoding header.
-
-## Supported content encodings
-
- The 'deflate' and 'gzip' content encoding are supported by libcurl. Both
- regular and chunked transfers work fine. The zlib library is required for
- this feature.
-
-## The libcurl interface
-
- To cause libcurl to request a content encoding use:
-
- [`curl_easy_setopt`][1](curl, [`CURLOPT_ACCEPT_ENCODING`][5], string)
-
- where string is the intended value of the Accept-Encoding header.
-
- Currently, libcurl only understands how to process responses that use the
- "deflate" or "gzip" Content-Encoding, so the only values for
- [`CURLOPT_ACCEPT_ENCODING`][5] that will work (besides "identity," which does
- nothing) are "deflate" and "gzip" If a response is encoded using the
- "compress" or methods, libcurl will return an error indicating that the
- response could not be decoded. If <string> is NULL no Accept-Encoding header
- is generated. If <string> is a zero-length string, then an Accept-Encoding
- header containing all supported encodings will be generated.
-
- The [`CURLOPT_ACCEPT_ENCODING`][5] must be set to any non-NULL value for
- content to be automatically decoded. If it is not set and the server still
- sends encoded content (despite not having been asked), the data is returned
- in its raw form and the Content-Encoding type is not checked.
-
-## The curl interface
-
- Use the [--compressed][6] option with curl to cause it to ask servers to
- compress responses using any format supported by curl.
-
-<a name="hostip"></a>
-hostip.c explained
-==================
-
- The main compile-time defines to keep in mind when reading the host*.c source
- file are these:
-
-## `CURLRES_IPV6`
-
- this host has getaddrinfo() and family, and thus we use that. The host may
- not be able to resolve IPv6, but we don't really have to take that into
- account. Hosts that aren't IPv6-enabled have CURLRES_IPV4 defined.
-
-## `CURLRES_ARES`
-
- is defined if libcurl is built to use c-ares for asynchronous name
- resolves. This can be Windows or *nix.
-
-## `CURLRES_THREADED`
-
- is defined if libcurl is built to use threading for asynchronous name
- resolves. The name resolve will be done in a new thread, and the supported
- asynch API will be the same as for ares-builds. This is the default under
- (native) Windows.
-
- If any of the two previous are defined, `CURLRES_ASYNCH` is defined too. If
- libcurl is not built to use an asynchronous resolver, `CURLRES_SYNCH` is
- defined.
-
-## host*.c sources
-
- The host*.c sources files are split up like this:
-
- - hostip.c - method-independent resolver functions and utility functions
- - hostasyn.c - functions for asynchronous name resolves
- - hostsyn.c - functions for synchronous name resolves
- - asyn-ares.c - functions for asynchronous name resolves using c-ares
- - asyn-thread.c - functions for asynchronous name resolves using threads
- - hostip4.c - IPv4 specific functions
- - hostip6.c - IPv6 specific functions
-
- The hostip.h is the single united header file for all this. It defines the
- `CURLRES_*` defines based on the config*.h and curl_setup.h defines.
-
-<a name="memoryleak"></a>
-Track Down Memory Leaks
-=======================
-
-## Single-threaded
-
- Please note that this memory leak system is not adjusted to work in more
- than one thread. If you want/need to use it in a multi-threaded app. Please
- adjust accordingly.
-
-
-## Build
-
- Rebuild libcurl with -DCURLDEBUG (usually, rerunning configure with
- --enable-debug fixes this). 'make clean' first, then 'make' so that all
- files actually are rebuilt properly. It will also make sense to build
- libcurl with the debug option (usually -g to the compiler) so that debugging
- it will be easier if you actually do find a leak in the library.
-
- This will create a library that has memory debugging enabled.
-
-## Modify Your Application
-
- Add a line in your application code:
-
- `curl_memdebug("dump");`
-
- This will make the malloc debug system output a full trace of all resource
- using functions to the given file name. Make sure you rebuild your program
- and that you link with the same libcurl you built for this purpose as
- described above.
-
-## Run Your Application
-
- Run your program as usual. Watch the specified memory trace file grow.
-
- Make your program exit and use the proper libcurl cleanup functions etc. So
- that all non-leaks are returned/freed properly.
-
-## Analyze the Flow
-
- Use the tests/memanalyze.pl perl script to analyze the dump file:
-
- tests/memanalyze.pl dump
-
- This now outputs a report on what resources that were allocated but never
- freed etc. This report is very fine for posting to the list!
-
- If this doesn't produce any output, no leak was detected in libcurl. Then
- the leak is mostly likely to be in your code.
-
-<a name="multi_socket"></a>
-`multi_socket`
-==============
-
- Implementation of the `curl_multi_socket` API
-
- The main ideas of this API are simply:
-
- 1 - The application can use whatever event system it likes as it gets info
- from libcurl about what file descriptors libcurl waits for what action
- on. (The previous API returns `fd_sets` which is very select()-centric).
-
- 2 - When the application discovers action on a single socket, it calls
- libcurl and informs that there was action on this particular socket and
- libcurl can then act on that socket/transfer only and not care about
- any other transfers. (The previous API always had to scan through all
- the existing transfers.)
-
- The idea is that [`curl_multi_socket_action()`][7] calls a given callback
- with information about what socket to wait for what action on, and the
- callback only gets called if the status of that socket has changed.
-
- We also added a timer callback that makes libcurl call the application when
- the timeout value changes, and you set that with [`curl_multi_setopt()`][9]
- and the [`CURLMOPT_TIMERFUNCTION`][10] option. To get this to work,
- Internally, there's an added a struct to each easy handle in which we store
- an "expire time" (if any). The structs are then "splay sorted" so that we
- can add and remove times from the linked list and yet somewhat swiftly
- figure out both how long time there is until the next nearest timer expires
- and which timer (handle) we should take care of now. Of course, the upside
- of all this is that we get a [`curl_multi_timeout()`][8] that should also
- work with old-style applications that use [`curl_multi_perform()`][11].
-
- We created an internal "socket to easy handles" hash table that given
- a socket (file descriptor) return the easy handle that waits for action on
- that socket. This hash is made using the already existing hash code
- (previously only used for the DNS cache).
-
- To make libcurl able to report plain sockets in the socket callback, we had
- to re-organize the internals of the [`curl_multi_fdset()`][12] etc so that
- the conversion from sockets to `fd_sets` for that function is only done in
- the last step before the data is returned. I also had to extend c-ares to
- get a function that can return plain sockets, as that library too returned
- only `fd_sets` and that is no longer good enough. The changes done to c-ares
- are available in c-ares 1.3.1 and later.
-
-<a name="structs"></a>
-Structs in libcurl
-==================
-
-This section should cover 7.32.0 pretty accurately, but will make sense even
-for older and later versions as things don't change drastically that often.
-
-## SessionHandle
-
- The SessionHandle handle struct is the one returned to the outside in the
- external API as a "CURL *". This is usually known as an easy handle in API
- documentations and examples.
-
- Information and state that is related to the actual connection is in the
- 'connectdata' struct. When a transfer is about to be made, libcurl will
- either create a new connection or re-use an existing one. The particular
- connectdata that is used by this handle is pointed out by
- SessionHandle->easy_conn.
-
- Data and information that regard this particular single transfer is put in
- the SingleRequest sub-struct.
-
- When the SessionHandle struct is added to a multi handle, as it must be in
- order to do any transfer, the ->multi member will point to the `Curl_multi`
- struct it belongs to. The ->prev and ->next members will then be used by the
- multi code to keep a linked list of SessionHandle structs that are added to
- that same multi handle. libcurl always uses multi so ->multi *will* point to
- a `Curl_multi` when a transfer is in progress.
-
- ->mstate is the multi state of this particular SessionHandle. When
- `multi_runsingle()` is called, it will act on this handle according to which
- state it is in. The mstate is also what tells which sockets to return for a
- specific SessionHandle when [`curl_multi_fdset()`][12] is called etc.
-
- The libcurl source code generally use the name 'data' for the variable that
- points to the SessionHandle.
-
- When doing multiplexed HTTP/2 transfers, each SessionHandle is associated
- with an individual stream, sharing the same connectdata struct. Multiplexing
- makes it even more important to keep things associated with the right thing!
-
-## connectdata
-
- A general idea in libcurl is to keep connections around in a connection
- "cache" after they have been used in case they will be used again and then
- re-use an existing one instead of creating a new as it creates a significant
- performance boost.
-
- Each 'connectdata' identifies a single physical connection to a server. If
- the connection can't be kept alive, the connection will be closed after use
- and then this struct can be removed from the cache and freed.
-
- Thus, the same SessionHandle can be used multiple times and each time select
- another connectdata struct to use for the connection. Keep this in mind, as
- it is then important to consider if options or choices are based on the
- connection or the SessionHandle.
-
- Functions in libcurl will assume that connectdata->data points to the
- SessionHandle that uses this connection (for the moment).
-
- As a special complexity, some protocols supported by libcurl require a
- special disconnect procedure that is more than just shutting down the
- socket. It can involve sending one or more commands to the server before
- doing so. Since connections are kept in the connection cache after use, the
- original SessionHandle may no longer be around when the time comes to shut
- down a particular connection. For this purpose, libcurl holds a special
- dummy `closure_handle` SessionHandle in the `Curl_multi` struct to use when
- needed.
-
- FTP uses two TCP connections for a typical transfer but it keeps both in
- this single struct and thus can be considered a single connection for most
- internal concerns.
-
- The libcurl source code generally use the name 'conn' for the variable that
- points to the connectdata.
-
-## Curl_multi
-
- Internally, the easy interface is implemented as a wrapper around multi
- interface functions. This makes everything multi interface.
-
- `Curl_multi` is the multi handle struct exposed as "CURLM *" in external APIs.
-
- This struct holds a list of SessionHandle structs that have been added to
- this handle with [`curl_multi_add_handle()`][13]. The start of the list is
- ->easyp and ->num_easy is a counter of added SessionHandles.
-
- ->msglist is a linked list of messages to send back when
- [`curl_multi_info_read()`][14] is called. Basically a node is added to that
- list when an individual SessionHandle's transfer has completed.
-
- ->hostcache points to the name cache. It is a hash table for looking up name
- to IP. The nodes have a limited life time in there and this cache is meant
- to reduce the time for when the same name is wanted within a short period of
- time.
-
- ->timetree points to a tree of SessionHandles, sorted by the remaining time
- until it should be checked - normally some sort of timeout. Each
- SessionHandle has one node in the tree.
-
- ->sockhash is a hash table to allow fast lookups of socket descriptor to
- which SessionHandle that uses that descriptor. This is necessary for the
- `multi_socket` API.
-
- ->conn_cache points to the connection cache. It keeps track of all
- connections that are kept after use. The cache has a maximum size.
-
- ->closure_handle is described in the 'connectdata' section.
-
- The libcurl source code generally use the name 'multi' for the variable that
- points to the Curl_multi struct.
-
-## Curl_handler
-
- Each unique protocol that is supported by libcurl needs to provide at least
- one `Curl_handler` struct. It defines what the protocol is called and what
- functions the main code should call to deal with protocol specific issues.
- In general, there's a source file named [protocol].c in which there's a
- "struct `Curl_handler` `Curl_handler_[protocol]`" declared. In url.c there's
- then the main array with all individual `Curl_handler` structs pointed to
- from a single array which is scanned through when a URL is given to libcurl
- to work with.
-
- ->scheme is the URL scheme name, usually spelled out in uppercase. That's
- "HTTP" or "FTP" etc. SSL versions of the protcol need its own `Curl_handler`
- setup so HTTPS separate from HTTP.
-
- ->setup_connection is called to allow the protocol code to allocate protocol
- specific data that then gets associated with that SessionHandle for the rest
- of this transfer. It gets freed again at the end of the transfer. It will be
- called before the 'connectdata' for the transfer has been selected/created.
- Most protocols will allocate its private 'struct [PROTOCOL]' here and assign
- SessionHandle->req.protop to point to it.
-
- ->connect_it allows a protocol to do some specific actions after the TCP
- connect is done, that can still be considered part of the connection phase.
-
- Some protocols will alter the connectdata->recv[] and connectdata->send[]
- function pointers in this function.
-
- ->connecting is similarly a function that keeps getting called as long as the
- protocol considers itself still in the connecting phase.
-
- ->do_it is the function called to issue the transfer request. What we call
- the DO action internally. If the DO is not enough and things need to be kept
- getting done for the entire DO sequence to complete, ->doing is then usually
- also provided. Each protocol that needs to do multiple commands or similar
- for do/doing need to implement their own state machines (see SCP, SFTP,
- FTP). Some protocols (only FTP and only due to historical reasons) has a
- separate piece of the DO state called `DO_MORE`.
-
- ->doing keeps getting called while issuing the transfer request command(s)
-
- ->done gets called when the transfer is complete and DONE. That's after the
- main data has been transferred.
-
- ->do_more gets called during the `DO_MORE` state. The FTP protocol uses this
- state when setting up the second connection.
-
- ->`proto_getsock`
- ->`doing_getsock`
- ->`domore_getsock`
- ->`perform_getsock`
- Functions that return socket information. Which socket(s) to wait for which
- action(s) during the particular multi state.
-
- ->disconnect is called immediately before the TCP connection is shutdown.
-
- ->readwrite gets called during transfer to allow the protocol to do extra
- reads/writes
-
- ->defport is the default report TCP or UDP port this protocol uses
-
- ->protocol is one or more bits in the `CURLPROTO_*` set. The SSL versions
- have their "base" protocol set and then the SSL variation. Like
- "HTTP|HTTPS".
-
- ->flags is a bitmask with additional information about the protocol that will
- make it get treated differently by the generic engine:
-
- - `PROTOPT_SSL` - will make it connect and negotiate SSL
-
- - `PROTOPT_DUAL` - this protocol uses two connections
-
- - `PROTOPT_CLOSEACTION` - this protocol has actions to do before closing the
- connection. This flag is no longer used by code, yet still set for a bunch
- protocol handlers.
-
- - `PROTOPT_DIRLOCK` - "direction lock". The SSH protocols set this bit to
- limit which "direction" of socket actions that the main engine will
- concern itself about.
-
- - `PROTOPT_NONETWORK` - a protocol that doesn't use network (read file:)
-
- - `PROTOPT_NEEDSPWD` - this protocol needs a password and will use a default
- one unless one is provided
-
- - `PROTOPT_NOURLQUERY` - this protocol can't handle a query part on the URL
- (?foo=bar)
-
-## conncache
+Building Releases
+=================
- Is a hash table with connections for later re-use. Each SessionHandle has
- a pointer to its connection cache. Each multi handle sets up a connection
- cache that all added SessionHandles share by default.
+ There's no magic to this. When you consider everything stable enough to be
+ released, do this:
-## Curl_share
-
- The libcurl share API allocates a `Curl_share` struct, exposed to the
- external API as "CURLSH *".
+ 1. Tag the source code accordingly.
- The idea is that the struct can have a set of own versions of caches and
- pools and then by providing this struct in the `CURLOPT_SHARE` option, those
- specific SessionHandles will use the caches/pools that this share handle
- holds.
-
- Then individual SessionHandle structs can be made to share specific things
- that they otherwise wouldn't, such as cookies.
+ 2. run the 'maketgz' script (using 'make distcheck' will give you a pretty
+ good view on the status of the current sources). maketgz requires a
+ version number and creates the release archive. maketgz uses 'make dist'
+ for the actual archive building, why you need to fill in the Makefile.am
+ files properly for which files that should be included in the release
+ archives.
- The `Curl_share` struct can currently hold cookies, DNS cache and the SSL
- session cache.
+ 3. When that's complete, sign the output files.
-## CookieInfo
+ 4. Upload
- This is the main cookie struct. It holds all known cookies and related
- information. Each SessionHandle has its own private CookieInfo even when
- they are added to a multi handle. They can be made to share cookies by using
- the share API.
+ 5. Update web site and changelog on site
+ 6. Send announcement to the mailing lists
-[1]: http://curl.haxx.se/libcurl/c/curl_easy_setopt.html
-[2]: http://curl.haxx.se/libcurl/c/curl_easy_init.html
-[3]: http://c-ares.haxx.se/
-[4]: https://tools.ietf.org/html/rfc7230 "RFC 7230"
-[5]: http://curl.haxx.se/libcurl/c/CURLOPT_ACCEPT_ENCODING.html
-[6]: http://curl.haxx.se/docs/manpage.html#--compressed
-[7]: http://curl.haxx.se/libcurl/c/curl_multi_socket_action.html
-[8]: http://curl.haxx.se/libcurl/c/curl_multi_timeout.html
-[9]: http://curl.haxx.se/libcurl/c/curl_multi_setopt.html
-[10]: http://curl.haxx.se/libcurl/c/CURLMOPT_TIMERFUNCTION.html
-[11]: http://curl.haxx.se/libcurl/c/curl_multi_perform.html
-[12]: http://curl.haxx.se/libcurl/c/curl_multi_fdset.html
-[13]: http://curl.haxx.se/libcurl/c/curl_multi_add_handle.html
-[14]: http://curl.haxx.se/libcurl/c/curl_multi_info_read.html
+ NOTE: you must have curl checked out from git to be able to do a proper
+ release build. The release tarballs do not have everything setup in order to
+ do releases properly.
diff --git a/docs/KNOWN_BUGS b/docs/KNOWN_BUGS
index 345dc45d5..778856773 100644
--- a/docs/KNOWN_BUGS
+++ b/docs/KNOWN_BUGS
@@ -3,15 +3,6 @@ join in and help us correct one or more of these! Also be sure to check the
changelog of the current development status, as one or more of these problems
may have been fixed since this was written!
-90. IMAP "SEARCH ALL" truncates output on large boxes. "A quick search of the
- code reveals that pingpong.c contains some truncation code, at line 408,
- when it deems the server response to be too large truncating it to 40
- characters"
- http://curl.haxx.se/bug/view.cgi?id=1366
-
-89. Disabling HTTP Pipelining when there are ongoing transfers can lead to
- heap corruption and crash. http://curl.haxx.se/bug/view.cgi?id=1411
-
88. libcurl doesn't support CURLINFO_FILETIME for SFTP transfers and thus
curl's -R option also doesn't work then.
@@ -97,7 +88,7 @@ may have been fixed since this was written!
something beyond ascii but currently libcurl will only pass in the verbatim
string the app provides. There are several browsers that already do this
encoding. The key seems to be the updated draft to RFC2231:
- https://tools.ietf.org/html/draft-reschke-rfc2231-in-http-02
+ http://tools.ietf.org/html/draft-reschke-rfc2231-in-http-02
66. When using telnet, the time limitation options don't work.
http://curl.haxx.se/bug/view.cgi?id=846
diff --git a/docs/LIBCURL-STRUCTS b/docs/LIBCURL-STRUCTS
new file mode 100644
index 000000000..136d17ce7
--- /dev/null
+++ b/docs/LIBCURL-STRUCTS
@@ -0,0 +1,245 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+Structs in libcurl
+
+This document should cover 7.32.0 pretty accurately, but will make sense even
+for older and later versions as things don't change drastically that often.
+
+ 1. The main structs in libcurl
+ 1.1 SessionHandle
+ 1.2 connectdata
+ 1.3 Curl_multi
+ 1.4 Curl_handler
+ 1.5 conncache
+ 1.6 Curl_share
+ 1.7 CookieInfo
+
+==============================================================================
+
+1. The main structs in libcurl
+
+ 1.1 SessionHandle
+
+ The SessionHandle handle struct is the one returned to the outside in the
+ external API as a "CURL *". This is usually known as an easy handle in API
+ documentations and examples.
+
+ Information and state that is related to the actual connection is in the
+ 'connectdata' struct. When a transfer is about to be made, libcurl will
+ either create a new connection or re-use an existing one. The particular
+ connectdata that is used by this handle is pointed out by
+ SessionHandle->easy_conn.
+
+ Data and information that regard this particular single transfer is put in
+ the SingleRequest sub-struct.
+
+ When the SessionHandle struct is added to a multi handle, as it must be in
+ order to do any transfer, the ->multi member will point to the Curl_multi
+ struct it belongs to. The ->prev and ->next members will then be used by the
+ multi code to keep a linked list of SessionHandle structs that are added to
+ that same multi handle. libcurl always uses multi so ->multi *will* point to
+ a Curl_multi when a transfer is in progress.
+
+ ->mstate is the multi state of this particular SessionHandle. When
+ multi_runsingle() is called, it will act on this handle according to which
+ state it is in. The mstate is also what tells which sockets to return for a
+ specific SessionHandle when curl_multi_fdset() is called etc.
+
+ The libcurl source code generally use the name 'data' for the variable that
+ points to the SessionHandle.
+
+
+ 1.2 connectdata
+
+ A general idea in libcurl is to keep connections around in a connection
+ "cache" after they have been used in case they will be used again and then
+ re-use an existing one instead of creating a new as it creates a significant
+ performance boost.
+
+ Each 'connectdata' identifies a single physical connection to a server. If
+ the connection can't be kept alive, the connection will be closed after use
+ and then this struct can be removed from the cache and freed.
+
+ Thus, the same SessionHandle can be used multiple times and each time select
+ another connectdata struct to use for the connection. Keep this in mind, as
+ it is then important to consider if options or choices are based on the
+ connection or the SessionHandle.
+
+ Functions in libcurl will assume that connectdata->data points to the
+ SessionHandle that uses this connection.
+
+ As a special complexity, some protocols supported by libcurl require a
+ special disconnect procedure that is more than just shutting down the
+ socket. It can involve sending one or more commands to the server before
+ doing so. Since connections are kept in the connection cache after use, the
+ original SessionHandle may no longer be around when the time comes to shut
+ down a particular connection. For this purpose, libcurl holds a special
+ dummy 'closure_handle' SessionHandle in the Curl_multi struct to
+
+ FTP uses two TCP connections for a typical transfer but it keeps both in
+ this single struct and thus can be considered a single connection for most
+ internal concerns.
+
+ The libcurl source code generally use the name 'conn' for the variable that
+ points to the connectdata.
+
+
+ 1.3 Curl_multi
+
+ Internally, the easy interface is implemented as a wrapper around multi
+ interface functions. This makes everything multi interface.
+
+ Curl_multi is the multi handle struct exposed as "CURLM *" in external APIs.
+
+ This struct holds a list of SessionHandle structs that have been added to
+ this handle with curl_multi_add_handle(). The start of the list is ->easyp
+ and ->num_easy is a counter of added SessionHandles.
+
+ ->msglist is a linked list of messages to send back when
+ curl_multi_info_read() is called. Basically a node is added to that list
+ when an individual SessionHandle's transfer has completed.
+
+ ->hostcache points to the name cache. It is a hash table for looking up name
+ to IP. The nodes have a limited life time in there and this cache is meant
+ to reduce the time for when the same name is wanted within a short period of
+ time.
+
+ ->timetree points to a tree of SessionHandles, sorted by the remaining time
+ until it should be checked - normally some sort of timeout. Each
+ SessionHandle has one node in the tree.
+
+ ->sockhash is a hash table to allow fast lookups of socket descriptor to
+ which SessionHandle that uses that descriptor. This is necessary for the
+ multi_socket API.
+
+ ->conn_cache points to the connection cache. It keeps track of all
+ connections that are kept after use. The cache has a maximum size.
+
+ ->closure_handle is described in the 'connectdata' section.
+
+ The libcurl source code generally use the name 'multi' for the variable that
+ points to the Curl_multi struct.
+
+
+ 1.4 Curl_handler
+
+ Each unique protocol that is supported by libcurl needs to provide at least
+ one Curl_handler struct. It defines what the protocol is called and what
+ functions the main code should call to deal with protocol specific issues.
+ In general, there's a source file named [protocol].c in which there's a
+ "struct Curl_handler Curl_handler_[protocol]" declared. In url.c there's
+ then the main array with all individual Curl_handler structs pointed to from
+ a single array which is scanned through when a URL is given to libcurl to
+ work with.
+
+ ->scheme is the URL scheme name, usually spelled out in uppercase. That's
+ "HTTP" or "FTP" etc. SSL versions of the protcol need its own Curl_handler
+ setup so HTTPS separate from HTTP.
+
+ ->setup_connection is called to allow the protocol code to allocate protocol
+ specific data that then gets associated with that SessionHandle for the rest
+ of this transfer. It gets freed again at the end of the transfer. It will be
+ called before the 'connectdata' for the transfer has been selected/created.
+ Most protocols will allocate its private 'struct [PROTOCOL]' here and assign
+ SessionHandle->req.protop to point to it.
+
+ ->connect_it allows a protocol to do some specific actions after the TCP
+ connect is done, that can still be considered part of the connection phase.
+
+ Some protocols will alter the connectdata->recv[] and connectdata->send[]
+ function pointers in this function.
+
+ ->connecting is similarly a function that keeps getting called as long as the
+ protocol considers itself still in the connecting phase.
+
+ ->do_it is the function called to issue the transfer request. What we call
+ the DO action internally. If the DO is not enough and things need to be kept
+ getting done for the entire DO sequence to complete, ->doing is then usually
+ also provided. Each protocol that needs to do multiple commands or similar
+ for do/doing need to implement their own state machines (see SCP, SFTP,
+ FTP). Some protocols (only FTP and only due to historical reasons) has a
+ separate piece of the DO state called DO_MORE.
+
+ ->doing keeps getting called while issuing the transfer request command(s)
+
+ ->done gets called when the transfer is complete and DONE. That's after the
+ main data has been transferred.
+
+ ->do_more gets called during the DO_MORE state. The FTP protocol uses this
+ state when setting up the second connection.
+
+ ->proto_getsock
+ ->doing_getsock
+ ->domore_getsock
+ ->perform_getsock
+ Functions that return socket information. Which socket(s) to wait for which
+ action(s) during the particular multi state.
+
+ ->disconnect is called immediately before the TCP connection is shutdown.
+
+ ->readwrite gets called during transfer to allow the protocol to do extra
+ reads/writes
+
+ ->defport is the default report TCP or UDP port this protocol uses
+
+ ->protocol is one or more bits in the CURLPROTO_* set. The SSL versions have
+ their "base" protocol set and then the SSL variation. Like "HTTP|HTTPS".
+
+ ->flags is a bitmask with additional information about the protocol that will
+ make it get treated differently by the generic engine:
+
+ PROTOPT_SSL - will make it connect and negotiate SSL
+
+ PROTOPT_DUAL - this protocol uses two connections
+
+ PROTOPT_CLOSEACTION - this protocol has actions to do before closing the
+ connection. This flag is no longer used by code, yet still set for a bunch
+ protocol handlers.
+
+ PROTOPT_DIRLOCK - "direction lock". The SSH protocols set this bit to
+ limit which "direction" of socket actions that the main engine will
+ concern itself about.
+
+ PROTOPT_NONETWORK - a protocol that doesn't use network (read file:)
+
+ PROTOPT_NEEDSPWD - this protocol needs a password and will use a default
+ one unless one is provided
+
+ PROTOPT_NOURLQUERY - this protocol can't handle a query part on the URL
+ (?foo=bar)
+
+
+ 1.5 conncache
+
+ Is a hash table with connections for later re-use. Each SessionHandle has
+ a pointer to its connection cache. Each multi handle sets up a connection
+ cache that all added SessionHandles share by default.
+
+
+ 1.6 Curl_share
+
+ The libcurl share API allocates a Curl_share struct, exposed to the external
+ API as "CURLSH *".
+
+ The idea is that the struct can have a set of own versions of caches and
+ pools and then by providing this struct in the CURLOPT_SHARE option, those
+ specific SessionHandles will use the caches/pools that this share handle
+ holds.
+
+ Then individual SessionHandle structs can be made to share specific things
+ that they otherwise wouldn't, such as cookies.
+
+ The Curl_share struct can currently hold cookies, DNS cache and the SSL
+ session cache.
+
+
+ 1.7 CookieInfo
+
+ This is the main cookie struct. It holds all known cookies and related
+ information. Each SessionHandle has its own private CookieInfo even when
+ they are added to a multi handle. They can be made to share cookies by using
+ the share API.
diff --git a/docs/LICENSE-MIXING b/docs/LICENSE-MIXING
index ccb6ada32..a53835c4c 100644
--- a/docs/LICENSE-MIXING
+++ b/docs/LICENSE-MIXING
@@ -23,29 +23,29 @@ libcurl http://curl.haxx.se/docs/copyright.html
Uses an MIT (or Modified BSD)-style license that is as liberal as
possible.
-OpenSSL https://www.openssl.org/source/license.html
+OpenSSL http://www.openssl.org/source/license.html
(May be used for SSL/TLS support) Uses an Original BSD-style license
with an announcement clause that makes it "incompatible" with GPL. You
are not allowed to ship binaries that link with OpenSSL that includes
GPL code (unless that specific GPL code includes an exception for
OpenSSL - a habit that is growing more and more common). If OpenSSL's
- licensing is a problem for you, consider using another TLS library.
+ licensing is a problem for you, consider using GnuTLS or yassl
+ instead.
GnuTLS http://www.gnutls.org/
(May be used for SSL/TLS support) Uses the LGPL[3] license. If this is
- a problem for you, consider using another TLS library. Also note that
+ a problem for you, consider using OpenSSL instead. Also note that
GnuTLS itself depends on and uses other libs (libgcrypt and
libgpg-error) and they too are LGPL- or GPL-licensed.
-WolfSSL https://www.wolfssl.com/
+yassl http://www.yassl.com/
- (May be used for SSL/TLS support) Uses the GPL[1] license or a
- propietary license. If this is a problem for you, consider using
- another TLS library.
+ (May be used for SSL/TLS support) Uses the GPL[1] license. If this is
+ a problem for you, consider using OpenSSL or GnuTLS instead.
-NSS https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS
+NSS http://www.mozilla.org/projects/security/pki/nss/
(May be used for SSL/TLS support) Is covered by the MPL[4] license,
the GPL[1] license and the LGPL[3] license. You may choose to license
@@ -57,29 +57,13 @@ axTLS http://axtls.sourceforge.net/
(May be used for SSL/TLS support) Uses a Modified BSD-style license.
-mbedTLS https://tls.mbed.org/
-
- (May be used for SSL/TLS support) Uses the GPL[1] license or a
- propietary license. If this is a problem for you, consider using
- another TLS library.
-
-BoringSSL https://boringssl.googlesource.com/
-
- (May be used for SSL/TLS support) As an OpenSSL fork, it has the same
- license as that.
-
-libressl http://www.libressl.org/
-
- (May be used for SSL/TLS support) As an OpenSSL fork, it has the same
- license as that.
-
c-ares http://daniel.haxx.se/projects/c-ares/license.html
(Used for asynchronous name resolves) Uses an MIT license that is very
liberal and imposes no restrictions on any other library or part you
may link with.
-zlib http://www.zlib.net/zlib_license.html
+zlib http://www.gzip.org/zlib/zlib_license.html
(Used for compressed Transfer-Encoding support) Uses an MIT-style
license that shouldn't collide with any other library.
@@ -89,12 +73,12 @@ MIT Kerberos http://web.mit.edu/kerberos/www/dist/
(May be used for GSS support) MIT licensed, that shouldn't collide
with any other parts.
-Heimdal http://www.h5l.org
+Heimdal http://www.pdc.kth.se/heimdal/
(May be used for GSS support) Heimdal is Original BSD licensed with
the announcement clause.
-GNU GSS https://www.gnu.org/software/gss/
+GNU GSS http://www.gnu.org/software/gss/
(May be used for GSS support) GNU GSS is GPL licensed. Note that you
may not distribute binary curl packages that uses this if you build
@@ -121,10 +105,10 @@ libssh2 http://www.libssh2.org/
(Used for scp and sftp support) libssh2 uses a Modified BSD-style
license.
-[1] = GPL - GNU General Public License: https://www.gnu.org/licenses/gpl.html
-[2] = https://www.gnu.org/licenses/gpl-faq.html#GPLIncompatibleLibs details on
+[1] = GPL - GNU General Public License: http://www.gnu.org/licenses/gpl.html
+[2] = http://www.fsf.org/licenses/gpl-faq.html#GPLIncompatibleLibs details on
how to write such an exception to the GPL
[3] = LGPL - GNU Lesser General Public License:
- https://www.gnu.org/licenses/lgpl.html
+ http://www.gnu.org/licenses/lgpl.html
[4] = MPL - Mozilla Public License:
- https://www.mozilla.org/MPL/
+ http://www.mozilla.org/MPL/
diff --git a/docs/MAIL-ETIQUETTE b/docs/MAIL-ETIQUETTE
index b6c0f4521..fb503126a 100644
--- a/docs/MAIL-ETIQUETTE
+++ b/docs/MAIL-ETIQUETTE
@@ -230,7 +230,7 @@ MAIL ETIQUETTE
Quote as little as possible. Just enough to provide the context you cannot
leave out. A lengthy description can be found here:
- https://www.netmeister.org/news/learn2quote.html
+ http://www.netmeister.org/news/learn2quote.html
2.7 Digest
diff --git a/docs/MANUAL b/docs/MANUAL
index fb349485f..113df2016 100644
--- a/docs/MANUAL
+++ b/docs/MANUAL
@@ -470,8 +470,8 @@ COOKIES
stored cookies which match the request as it follows the location. The
file "empty.txt" may be a nonexistent file.
- To read and write cookies from a netscape cookie file, you can set both -b
- and -c to use the same file:
+ Alas, to both read and write cookies from a netscape cookie file, you can
+ set both -b and -c to use the same file:
curl -b cookies.txt -c cookies.txt www.example.com
diff --git a/docs/Makefile.am b/docs/Makefile.am
index cfef3e9ab..1f92911a4 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -37,8 +37,8 @@ EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS \
README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS \
KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL \
$(PDFPAGES) LICENSE-MIXING README.netware DISTRO-DILEMMA INSTALL.devcpp \
- MAIL-ETIQUETTE HTTP-COOKIES SECURITY RELEASE-PROCEDURE \
- SSL-PROBLEMS HTTP2.md ROADMAP.md CODE_OF_CONDUCT.md
+ MAIL-ETIQUETTE HTTP-COOKIES LIBCURL-STRUCTS SECURITY RELEASE-PROCEDURE \
+ SSL-PROBLEMS
MAN2HTML= roffit < $< >$@
diff --git a/docs/Makefile.in b/docs/Makefile.in
index 975026977..49f933894 100644
--- a/docs/Makefile.in
+++ b/docs/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -21,7 +21,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -36,17 +36,7 @@
#
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -110,6 +100,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = docs
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs INSTALL THANKS TODO
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -130,8 +122,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -223,7 +214,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in INSTALL THANKS TODO
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -307,7 +297,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -360,7 +350,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -377,6 +366,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -448,8 +438,8 @@ EXTRA_DIST = MANUAL BUGS CONTRIBUTE FAQ FEATURES INTERNALS SSLCERTS \
README.win32 RESOURCES TODO TheArtOfHttpScripting THANKS VERSIONS \
KNOWN_BUGS BINDINGS $(man_MANS) $(HTMLPAGES) HISTORY INSTALL \
$(PDFPAGES) LICENSE-MIXING README.netware DISTRO-DILEMMA INSTALL.devcpp \
- MAIL-ETIQUETTE HTTP-COOKIES SECURITY RELEASE-PROCEDURE \
- SSL-PROBLEMS HTTP2.md ROADMAP.md CODE_OF_CONDUCT.md
+ MAIL-ETIQUETTE HTTP-COOKIES LIBCURL-STRUCTS SECURITY RELEASE-PROCEDURE \
+ SSL-PROBLEMS
MAN2HTML = roffit < $< >$@
SUFFIXES = .1 .html .pdf
@@ -469,6 +459,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign docs/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -809,8 +800,6 @@ uninstall-man: uninstall-man1
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-man uninstall-man1
-.PRECIOUS: Makefile
-
html: $(HTMLPAGES)
cd libcurl; make html
diff --git a/docs/RELEASE-PROCEDURE b/docs/RELEASE-PROCEDURE
index fc31274e8..2f85b3fb7 100644
--- a/docs/RELEASE-PROCEDURE
+++ b/docs/RELEASE-PROCEDURE
@@ -1,3 +1,9 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
curl release procedure - how to do a release
============================================
@@ -78,12 +84,11 @@ Coming dates
Based on the description above, here are some planned release dates (at the
time of this writing):
-- June 17, 2015 (version 7.43.0)
+- November 5, 2014 (version 7.39.0)
+- December 31, 2014
+- February 25, 2015
+- April 22, 2015
+- June 17, 2015
- August 12, 2015
- October 7, 2015
- December 2, 2015
-- January 27, 2016
-- March 23, 2016
-- May 18, 2016
-- July 13, 2016
-- September 7, 2016
diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md
deleted file mode 100644
index eb52d1877..000000000
--- a/docs/ROADMAP.md
+++ /dev/null
@@ -1,139 +0,0 @@
-curl the next few years - perhaps
-=================================
-
-Roadmap of things Daniel Stenberg and Steve Holme want to work on next. It is
-intended to serve as a guideline for others for information, feedback and
-possible participation.
-
-HTTP/2
-------
-
-- test suite
-
- Base this on existing nghttp2 server to start with to make functional
- tests. Later on we can adopt that code or work with nghttp2 to provide ways
- to have the http2 server respond with broken responses to make sure we deal
- with that nicely as well.
-
- To decide: if we need to bundle parts of the nghttp2 stuff that probably
- won't be shipped by many distros.
-
-- stream properties API
-
- Provide options for setting priorities and dependencies among the streams
- (easy handles). They are mostly information set for the stream and sent to
- the server so we don't have to add much logic for this.
-
-- server push
-
- Not exactly clear exactly how to support this API-wise, but by adding
- handles without asking for a resource it could be a way to be prepared to
- receive pushes in case such are sent. We probably need it to still specify
- a URL with host name, port etc but we probably need a special option to
- tell libcurl it is for server push purposes.
-
-- provide option for HTTP/2 "prior knowledge" over clear text
-
- As it would avoid the roundtrip-heavy Upgrade: procedures when you _know_
- it speaks HTTP/2.
-
-- provide option to allow curl to default to HTTP/2 only when using HTTPS
-
- We could switch on HTTP/2 by-default for HTTPS quite easily and it
- shouldn't hurt anyone, while HTTP/2 for HTTP by default could introduce
- lots of Upgrade: roundtrips that users won't like. So a separated option
- alternative makes sense.
-
-SRV records
------------
-
-How to find services for specific domains/hosts.
-
-HTTPS to proxy
---------------
-
-To avoid network traffic to/from the proxy getting snooped on.
-
-curl_formadd()
---------------
-
-make sure there's an easy handle passed in to `curl_formadd()`,
-`curl_formget()` and `curl_formfree()` by adding replacement functions and
-deprecating the old ones to allow custom mallocs and more
-
-third-party SASL
-----------------
-
-add support for third-party SASL libraries such as Cyrus SASL - may need to
-move existing native and SSPI based authentication into vsasl folder after
-reworking HTTP and SASL code
-
-SASL authentication in LDAP
----------------------------
-
-...
-
-Simplify the SMTP email
------------------------
-
-Simplify the SMTP email interface so that programmers don't have to
-construct the body of an email that contains all the headers, alternative
-content, images and attachments - maintain raw interface so that
-programmers that want to do this can
-
-email capabilities
-------------------
-
-Allow the email protocols to return the capabilities before
-authenticating. This will allow an application to decide on the best
-authentication mechanism
-
-Win32 pthreads
---------------
-
-Allow Windows threading model to be replaced by Win32 pthreads port
-
-dynamic buffer size
--------------------
-
-Implement a dynamic buffer size to allow SFTP to use much larger buffers and
-possibly allow the size to be customizable by applications. Use less memory
-when handles are not in use?
-
-New stuff - curl
-----------------
-
-1. Embed a language interpreter (lua?). For that middle ground where curl
- isn’t enough and a libcurl binding feels “too muchâ€. Build-time conditional
- of course.
-
-2. Simplify the SMTP command line so that the headers and multi-part content
- don't have to be constructed before calling curl
-
-Improve
--------
-
-1. build for windows (considered hard by many users)
-
-2. curl -h output (considered overwhelming to users)
-
-3. we have > 160 command line options, is there a way to redo things to
- simplify or improve the situation as we are likely to keep adding
- features/options in the future too
-
-4. docs (considered "bad" by users but how do we make it better?)
-
- - split up curl.1
-
-5. authentication framework (consider merging HTTP and SASL authentication to
- give one API for protocols to call)
-
-6. Perform some of the clean up from the TODO document, removing old
- definitions and such like that are currently earmarked to be removed years
- ago
-
-Remove
-------
-
-1. makefile.vc files as there is no point in maintaining two sets of Windows
- makefiles. Note: These are currently being used by the Windows autobuilds
diff --git a/docs/SSL-PROBLEMS b/docs/SSL-PROBLEMS
index 45faa241c..7ee4d14ee 100644
--- a/docs/SSL-PROBLEMS
+++ b/docs/SSL-PROBLEMS
@@ -26,7 +26,7 @@ CA bundle missing intermediate certificates
problems if your CA cert does not have the certificates for the
intermediates in the whole trust chain.
-Protocol version
+SSL version
Some broken servers fail to support the protocol negotiation properly that
SSL servers are supposed to handle. This may cause the connection to fail
@@ -36,9 +36,7 @@ Protocol version
An additional complication can be that modern SSL libraries sometimes are
built with support for older SSL and TLS versions disabled!
- All versions of SSL are considered insecure and should be avoided. Use TLS.
-
-Ciphers
+SSL ciphers
Clients give servers a list of ciphers to select from. If the list doesn't
include any ciphers the server wants/can use, the connection handshake
@@ -53,13 +51,9 @@ Ciphers
Note that these weak ciphers are identified as flawed. For example, this
includes symmetric ciphers with less than 128 bit keys and RC4.
- WinSSL in Windows XP is not able to connect to servers that no longer
- support the legacy handshakes and algorithms used by those versions, so we
- advice against building curl to use WinSSL on really old Windows versions.
-
References:
- https://tools.ietf.org/html/draft-popov-tls-prohibiting-rc4-01
+ http://tools.ietf.org/html/draft-popov-tls-prohibiting-rc4-01
Allow BEAST
@@ -71,17 +65,3 @@ Allow BEAST
introduced. Exactly as it sounds, it re-introduces the BEAST vulnerability
but on the other hand it allows curl to connect to that kind of strange
servers.
-
-Disabling certificate revocation checks
-
- Some SSL backends may do certificate revocation checks (CRL, OCSP, etc)
- depending on the OS or build configuration. The --ssl-no-revoke option was
- introduced in 7.44.0 to disable revocation checking but currently is only
- supported for WinSSL (the native Windows SSL library), with an exception in
- the case of Windows' Untrusted Publishers blacklist which it seems can't be
- bypassed. This option may have broader support to accommodate other SSL
- backends in the future.
-
- References:
-
- http://curl.haxx.se/docs/ssl-compared.html
diff --git a/docs/THANKS b/docs/THANKS
index 89a738ddd..0887881ab 100644
--- a/docs/THANKS
+++ b/docs/THANKS
@@ -36,14 +36,10 @@ Alex Suykov
Alex Vinnik
Alex aka WindEagle
Alexander Beedie
-Alexander Dyagilev
-Alexander Elgert
Alexander Klauer
Alexander Kourakos
Alexander Krasnostavsky
Alexander Lazic
-Alexander Pepper
-Alexander Peslyak
Alexander Zhuravlev
Alexey Borzov
Alexey Pesternikov
@@ -56,7 +52,6 @@ Alona Rossen
Amol Pattekar
Amr Shahin
Anatoli Tubman
-Anders Bakken
Anders Gustafsson
Anders Havn
Andi Jahja
@@ -84,7 +79,6 @@ Andrew Kurushin
Andrew Moise
Andrew Wansink
Andrew de los Reyes
-Andrey Labunets
Andrii Moiseiev
Andrés García
Andy Cedilnik
@@ -92,7 +86,6 @@ Andy Serpa
Andy Tsouladze
Angus Mackay
Anthon Pang
-Anthony Avina
Anthony Bryan
Anthony G. Basile
Antoine Calando
@@ -107,7 +100,6 @@ Arnaud Ebalard
Arthur Murray
Arve Knudsen
Arvid Norberg
-Ashish Shukla
Ask Bjørn Hansen
Askar Safin
Ates Goral
@@ -120,7 +112,6 @@ Balint Szilakszi
Barry Abrahamson
Bart Whiteley
Bas Mevissen
-Ben Boeckel
Ben Darnell
Ben Greear
Ben Madsen
@@ -135,7 +126,6 @@ Benoit Neil
Benoit Sigoure
Bernard Leak
Bernhard Reutner-Fischer
-Bert Huijben
Bertrand Demiddelaer
Bill Doyle
Bill Egert
@@ -152,7 +142,6 @@ Bob Richmond
Bob Schader
Bogdan Nicula
Brad Burdick
-Brad Harder
Brad Hards
Brad King
Brad Spencer
@@ -162,10 +151,8 @@ Brandon Wang
Brendan Jurd
Brent Beardsley
Brian Akins
-Brian Chrisman
Brian Dessent
Brian J. Murrell
-Brian Prodoehl
Brian R Duffy
Brian Ulm
Brock Noland
@@ -185,11 +172,9 @@ Catalin Patulea
Chad Monroe
Chandrakant Bagul
Charles Kerr
-Charles Romestant
Chen Prog
Chih-Chung Chang
Chris "Bob Bob"
-Chris Araman
Chris Combes
Chris Conlon
Chris Deidun
@@ -236,7 +221,6 @@ Curt Bogmine
Cyrill Osterwalder
Cédric Deltheil
D. Flinkmann
-Da-Yoon Chung
Dag Ekengren
Dagobert Michelsen
Damian Dixon
@@ -253,7 +237,6 @@ Daniel Black
Daniel Cater
Daniel Egger
Daniel Johnson
-Daniel Melani
Daniel Mentz
Daniel Steinberg
Daniel Stenberg
@@ -315,7 +298,6 @@ Dirk Manske
Dmitri Shubin
Dmitriy Sergeyev
Dmitry Bartsevich
-Dmitry Eremin-Solenikov
Dmitry Falko
Dmitry Kurochkin
Dmitry Popov
@@ -331,7 +313,6 @@ Douglas Kilpatrick
Douglas R. Horner
Douglas Steinwand
Dov Murik
-Drake Arconis
Duane Cathey
Duncan Mac-Vicar Prett
Dustin Boswell
@@ -346,12 +327,10 @@ Edward Rudd
Edward Sheldrake
Eelco Dolstra
Eetu Ojanen
-Egon Eckert
Eldar Zaitov
Ellis Pritchard
Elmira A Semenova
Emanuele Bovisio
-Emil Lerner
Emil Romanus
Emiliano Ida
Enrico Scholz
@@ -402,7 +381,6 @@ François Charlier
Fred Machado
Fred New
Fred Noz
-Fred Stluka
Frederic Lepied
Fredrik Thulin
Gabriel Kuri
@@ -440,7 +418,6 @@ Glenn Sheridan
Gordon Marler
Gorilla Maguila
Grant Erickson
-Grant Pannell
Greg Hewgill
Greg Morse
Greg Onufer
@@ -459,7 +436,6 @@ Götz Babin-Ebell
Hamish Mackenzie
Hang Kin Lau
Hang Su
-Hanno Böck
Hanno Kranzhoff
Hans Steegers
Hans-Jurgen May
@@ -500,7 +476,6 @@ Immanuel Gregoire
Ingmar Runge
Ingo Ralf Blum
Ingo Wilken
-Isaac Boukris
Ishan SinghLevett
Ivo Bellin Salarin
Jack Zhang
@@ -541,7 +516,6 @@ Jaz Fresh
Jean Jacques Drouin
Jean-Claude Chauve
Jean-Francois Bertrand
-Jean-Francois Durand
Jean-Louis Lemaire
Jean-Marc Ranger
Jean-Noël Rouvignac
@@ -554,12 +528,10 @@ Jeff Lawson
Jeff Phillips
Jeff Pohlmeyer
Jeff Weber
-Jens Rantil
Jeremy Friesner
Jeremy Huddleston
Jeremy Lin
Jeroen Koekkoek
-Jeroen Ooms
Jerome Muffat-Meridol
Jerome Robert
Jerome Vouillon
@@ -573,7 +545,6 @@ Jim Drash
Jim Freeman
Jim Hollinger
Jim Meyering
-Jiri Dvorak
Jiri Hruska
Jiri Jaburek
Jiri Malak
@@ -582,10 +553,8 @@ Joe Halpin
Joe Malicki
Joe Mason
Joel Chen
-Joel Depooter
Jofell Gallardo
Johan Anderson
-Johan Lantz
Johan Nilsson
Johan van Selst
Johannes Bauer
@@ -603,7 +572,6 @@ John Kelly
John Lask
John Lightsey
John Marino
-John Marshall
John McGowan
John P. McCaskey
John Suprock
@@ -613,8 +581,6 @@ Johnny Luong
Jon Grubbs
Jon Nelson
Jon Sargeant
-Jon Seymour
-Jon Spencer
Jon Torrey
Jon Travis
Jon Turner
@@ -623,7 +589,6 @@ Jonas Schnelli
Jonatan Lander
Jonatan Vela
Jonathan Cardoso Machado
-Jonathan Cardoso Machado Machado
Jonathan Hseu
Jonathan Nieder
Jongki Suwandi
@@ -640,10 +605,8 @@ Judson Bishop
Juergen Wilke
Jukka Pihl
Julian Noble
-Julian Ospald
Julian Taylor
Julien Chaffraix
-Julien Nabet
Julien Royer
Jun-ichiro itojun Hagino
Jurij Smakov
@@ -689,7 +652,6 @@ Krishnendu Majumdar
Krister Johansen
Kristian Gunstone
Kristian Köhntopp
-Kyle J. McKay
Kyle L. Huff
Kyle Sallee
Lachlan O'Dea
@@ -708,7 +670,6 @@ Laurent Rabret
Legoff Vincent
Lehel Bernadt
Leif W
-Leith Bade
Len Krause
Lenaic Lefever
Lenny Rachitsky
@@ -721,7 +682,6 @@ Lindley French
Ling Thio
Linus Nielsen Feltzing
Lisa Xu
-Liviu Chircu
Liza Alenchery
Lluís Batlle i Rossell
Loic Dachary
@@ -749,10 +709,8 @@ Manuel Massing
Marc Boucher
Marc Deslauriers
Marc Doughty
-Marc Hesse
Marc Hoersken
Marc Kleine-Budde
-Marc Renault
Marcel Raad
Marcel Roelofs
Marcelo Juchem
@@ -775,7 +733,6 @@ Mark Salisbury
Mark Snelling
Mark Tully
Markus Duft
-Markus Elfring
Markus Koetter
Markus Moeller
Markus Oberhumer
@@ -804,7 +761,6 @@ Matt Wixson
Matteo Rocco
Matthew Blain
Matthew Clarke
-Matthew Hall
Matthias Bolte
Maurice Barnum
Mauro Iorio
@@ -825,19 +781,16 @@ Michael Day
Michael Goffioul
Michael Jahn
Michael Jerris
-Michael Kaufmann
Michael Mealling
Michael Mueller
Michael Osipov
Michael Smith
-Michael Stapelberg
Michael Stillwell
Michael Wallner
Michal Bonino
Michal Marek
Michał Górny
Michał Kowalczyk
-Michel Promonet
Michele Bini
Miguel Angel
Miguel Diaz
@@ -861,7 +814,6 @@ Mitz Wark
Mohamed Lrhazi
Mohammad AlSaleh
Mohun Biswas
-Mostyn Bramley-Moore
Myk Taylor
Nach M. S.
Nagai H
@@ -891,7 +843,6 @@ Nikos Mavrogiannopoulos
Ning Dong
Nir Soffer
Nis Jorgensen
-Nobuhiro Ban
Nodak Sodak
Norbert Frese
Norbert Novotny
@@ -903,9 +854,7 @@ Oliver Gondža
Oliver Kuckertz
Oliver Schindler
Olivier Berger
-Oren Souroujon
Oren Tirosh
-Orgad Shaneh
Ori Avtalion
Oscar Koeroo
Oscar Norlander
@@ -921,7 +870,6 @@ Patricia Muscalu
Patrick Bihan-Faou
Patrick McManus
Patrick Monnerat
-Patrick Rapin
Patrick Scott
Patrick Smith
Patrick Watson
@@ -934,7 +882,6 @@ Paul Marks
Paul Marquis
Paul Moore
Paul Nolan
-Paul Oliver
Paul Querna
Paul Saab
Pavel Cenek
@@ -951,7 +898,6 @@ Peter Heuchert
Peter Hjalmarsson
Peter Korsgaard
Peter Lamberg
-Peter Laser
Peter O'Gorman
Peter Pentchev
Peter Silva
@@ -992,7 +938,6 @@ Quinn Slack
Radu Simionescu
Rafa Muyo
Rafael Sagula
-Rafayel Mkrtchyan
Rafaël Carré
Rainer Canavan
Rainer Jung
@@ -1018,7 +963,6 @@ Rene Rebe
Reuven Wachtfogel
Reza Arbab
Ricardo Cadime
-Rich Burridge
Rich Gray
Rich Rauenzahn
Richard Archer
@@ -1077,8 +1021,6 @@ S. Moonesamy
Salvador Dávila
Salvatore Sorrentino
Sam Deane
-Sam Hurst
-Sam Schanken
Sampo Kellomaki
Samuel Díaz García
Samuel Listopad
@@ -1096,7 +1038,6 @@ Scott Barrett
Scott Cantor
Scott Davis
Scott McCreary
-Sean Boudreau
Sebastian Rasmussen
Senthil Raja Velu
Sergei Nikulov
@@ -1124,8 +1065,6 @@ Spork Schivago
Stadler Stephan
Stan van de Burgt
Stanislav Ivochkin
-Stefan Bühler
-Stefan Eissing
Stefan Esser
Stefan Krause
Stefan Neis
@@ -1140,7 +1079,6 @@ Stephen More
Sterling Hughes
Steve Green
Steve H Truong
-Steve Havelka
Steve Holme
Steve Lhomme
Steve Little
@@ -1161,7 +1099,6 @@ Symeon Paraschoudis
Sébastien Willemijns
T. Bharath
T. Yamada
-Tae Hyoung Ahn
Taneli Vahakangas
Tanguy Fautre
Tatsuhiro Tsujikawa
@@ -1171,7 +1108,6 @@ Thomas J. Moore
Thomas Klausner
Thomas L. Shinnick
Thomas Lopatic
-Thomas Ruecker
Thomas Schwinge
Thomas Tonino
Tiit Pikma
@@ -1191,7 +1127,6 @@ Timo Sirainen
Tinus van den Berg
Tobias Markus
Tobias Rundström
-Tobias Stoeckmann
Toby Peterson
Todd A Ouska
Todd Kulesza
@@ -1212,8 +1147,6 @@ Tomas Hoger
Tomas Mlcoch
Tomas Pospisek
Tomas Szepe
-Tomas Tomecek
-Tomasz Kojm
Tomasz Lacki
Tommie Gannert
Tommy Tam
@@ -1240,7 +1173,6 @@ Victor Snezhko
Vijay Panghal
Vikram Saxena
Viktor Szakáts
-Ville Skyttä
Vilmos Nebehaj
Vincent Bronner
Vincent Le Normand
@@ -1253,12 +1185,10 @@ Vladimir Grishchenko
Vladimir Lazarenko
Vojtech Janota
Vojtech Minarik
-Vojtěch Král
Vsevolod Novikov
Waldek Kozba
Walter J. Mack
Ward Willats
-Warren Menzer
Wayne Haigh
Werner Koch
Wesley Laxton
@@ -1273,7 +1203,6 @@ Wouter Van Rooy
Wu Yongzheng
Xavier Bouchoux
Yaakov Selkowitz
-Yamada Yasuharu
Yang Tse
Yarram Sunil
Yasuharu Yamada
@@ -1283,7 +1212,6 @@ Yi Huang
Yingwei Liu
Yousuke Kimoto
Yukihiro Kawada
-Yun SangHo
Yuriy Sosov
Yves Arrouye
Yves Lejeune
diff --git a/docs/TODO b/docs/TODO
index 9eb6b2682..2b5a4c273 100644
--- a/docs/TODO
+++ b/docs/TODO
@@ -9,11 +9,6 @@
Things to do in project cURL. Please tell us what you think, contribute and
send us patches that improve things!
- Be aware that these are things that we could do, or have once been considered
- things we could do. If you want to work on any of these areas, please
- consider bringing it up for discussions first on the mailing list so that we
- all agree it is still a good idea for the project!
-
All bugs documented in the KNOWN_BUGS document are subject for fixing!
1. libcurl
@@ -25,8 +20,6 @@
1.7 Detect when called from within callbacks
1.8 Allow SSL (HTTPS) to proxy
1.9 Cache negative name resolves
- 1.10 Support IDNA2008
- 1.11 minimize dependencies with dynamicly loaded modules
2. libcurl - multi interface
2.1 More non-blocking
@@ -51,7 +44,6 @@
5.3 Rearrange request header order
5.4 SPDY
5.5 auth= in URLs
- 5.6 Refuse "downgrade" redirects
6. TELNET
6.1 ditch stdin
@@ -73,75 +65,61 @@
10. LDAP
10.1 SASL based authentication mechanisms
- 11. SMB
- 11.1 File listing support
- 11.2 Honor file timestamps
- 11.3 Use NTLMv2
-
- 12. New protocols
- 12.1 RSYNC
-
- 13. SSL
- 13.1 Disable specific versions
- 13.2 Provide mutex locking API
- 13.3 Evaluate SSL patches
- 13.4 Cache OpenSSL contexts
- 13.5 Export session ids
- 13.6 Provide callback for cert verification
- 13.7 improve configure --with-ssl
- 13.8 Support DANE
-
- 14. GnuTLS
- 14.1 SSL engine stuff
- 14.2 check connection
-
- 15. WinSSL/SChannel
- 15.1 Add support for client certificate authentication
- 15.2 Add support for custom server certificate validation
- 15.3 Add support for the --ciphers option
-
- 16. SASL
- 16.1 Other authentication mechanisms
- 16.2 Add QOP support to GSSAPI authentication
+ 11. New protocols
+ 11.1 RSYNC
+
+ 12. SSL
+ 12.1 Disable specific versions
+ 12.2 Provide mutex locking API
+ 12.3 Evaluate SSL patches
+ 12.4 Cache OpenSSL contexts
+ 12.5 Export session ids
+ 12.6 Provide callback for cert verification
+ 12.7 improve configure --with-ssl
+ 12.8 Support DANE
+
+ 13. GnuTLS
+ 13.1 SSL engine stuff
+ 13.2 check connection
+
+ 14. SASL
+ 14.1 Other authentication mechanisms
+ 14.2 Add QOP support to GSSAPI authentication
- 17. Client
- 17.1 sync
- 17.2 glob posts
- 17.3 prevent file overwriting
- 17.4 simultaneous parallel transfers
- 17.5 provide formpost headers
- 17.6 warning when setting an option
- 17.7 warning when sending binary output to terminal
- 17.8 offer color-coded HTTP header output
- 17.9 Choose the name of file in braces for complex URLs
- 17.10 improve how curl works in a windows console window
-
- 18. Build
- 18.1 roffit
-
- 19. Test suite
- 19.1 SSL tunnel
- 19.2 nicer lacking perl message
- 19.3 more protocols supported
- 19.4 more platforms supported
- 19.5 Add support for concurrent connections
-
- 20. Next SONAME bump
- 20.1 http-style HEAD output for FTP
- 20.2 combine error codes
- 20.3 extend CURLOPT_SOCKOPTFUNCTION prototype
-
- 21. Next major release
- 21.1 cleanup return codes
- 21.2 remove obsolete defines
- 21.3 size_t
- 21.4 remove several functions
- 21.5 remove CURLOPT_FAILONERROR
- 21.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
- 21.7 remove progress meter from libcurl
- 21.8 remove 'curl_httppost' from public
- 21.9 have form functions use CURL handle argument
- 21.10 Add CURLOPT_MAIL_CLIENT option
+ 15. Client
+ 15.1 sync
+ 15.2 glob posts
+ 15.3 prevent file overwriting
+ 15.4 simultaneous parallel transfers
+ 15.5 provide formpost headers
+ 15.6 warning when setting an option
+
+ 16. Build
+ 16.1 roffit
+
+ 17. Test suite
+ 17.1 SSL tunnel
+ 17.2 nicer lacking perl message
+ 17.3 more protocols supported
+ 17.4 more platforms supported
+ 17.5 Add support for concurrent connections
+
+ 18. Next SONAME bump
+ 18.1 http-style HEAD output for FTP
+ 18.2 combine error codes
+ 18.3 extend CURLOPT_SOCKOPTFUNCTION prototype
+
+ 19. Next major release
+ 19.1 cleanup return codes
+ 19.2 remove obsolete defines
+ 19.3 size_t
+ 19.4 remove several functions
+ 19.5 remove CURLOPT_FAILONERROR
+ 19.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
+ 19.7 remove progress meter from libcurl
+ 19.8 remove 'curl_httppost' from public
+ 19.9 have form functions use CURL handle argument
+ 19.10 Add CURLOPT_MAIL_CLIENT option
==============================================================================
@@ -211,7 +189,7 @@
To prevent local users from snooping on your traffic to the proxy. Supported
by Chrome already:
- https://www.chromium.org/developers/design-documents/secure-web-proxy
+ http://www.chromium.org/developers/design-documents/secure-web-proxy
...and by Firefox soon:
https://bugzilla.mozilla.org/show_bug.cgi?id=378637
@@ -221,19 +199,6 @@
A name resolve that has failed is likely to fail when made again within a
short period of time. Currently we only cache positive responses.
-1.10 Support IDNA2008
-
- International Domain Names are supported in libcurl since years back, powered
- by libidn. libidn implements IDNA2003 which has been superseded by IDNA2008.
- libidn2 is an existing library offering support for IDNA2008.
-
-1.11 minimize dependencies with dynamicly loaded modules
-
- We can create a system with loadable modules/plug-ins, where these modules
- would be the ones that link to 3rd party libs. That would allow us to avoid
- having to load ALL dependencies since only the necessary ones for this
- app/invoke/used protocols would be necessary to load. See
- https://github.com/bagder/curl/issues/349
2. libcurl - multi interface
@@ -281,7 +246,7 @@
HOST is a command for a client to tell which host name to use, to offer FTP
servers named-based virtual hosting:
- https://tools.ietf.org/html/rfc7151
+ http://tools.ietf.org/html/rfc7151
4.2 Alter passive/active on failure and retry
@@ -365,14 +330,6 @@ This is not detailed in any FTP specification.
Additionally this should be implemented for proxy base URLs as well.
-5.6 Refuse "downgrade" redirects
-
- See https://github.com/bagder/curl/issues/226
-
- Consider a way to tell curl to refuse to "downgrade" protocol with a redirect
- and/or possibly a bit that refuses redirect to change protocol completely.
-
-
6. TELNET
6.1 ditch stdin
@@ -436,47 +393,32 @@ to provide the data to send.
be possible to use ldap_bind_s() instead specifying the security context
information ourselves.
-11. SMB
-
-11.1 File listing support
+11. New protocols
-Add support for listing the contents of a SMB share. The output should probably
-be the same as/similar to FTP.
-
-11.2 Honor file timestamps
-
-The timestamp of the transferred file should reflect that of the original file.
-
-11.3 Use NTLMv2
-
-Currently the SMB authentication uses NTLMv1.
-
-12. New protocols
-
-12.1 RSYNC
+11.1 RSYNC
There's no RFC for the protocol or an URI/URL format. An implementation
should most probably use an existing rsync library, such as librsync.
-13. SSL
+12. SSL
-13.1 Disable specific versions
+12.1 Disable specific versions
Provide an option that allows for disabling specific SSL versions, such as
SSLv2 http://curl.haxx.se/bug/feature.cgi?id=1767276
-13.2 Provide mutex locking API
+12.2 Provide mutex locking API
Provide a libcurl API for setting mutex callbacks in the underlying SSL
library, so that the same application code can use mutex-locking
independently of OpenSSL or GnutTLS being used.
-13.3 Evaluate SSL patches
+12.3 Evaluate SSL patches
Evaluate/apply Gertjan van Wingerde's SSL patches:
http://curl.haxx.se/mail/lib-2004-03/0087.html
-13.4 Cache OpenSSL contexts
+12.4 Cache OpenSSL contexts
"Look at SSL cafile - quick traces look to me like these are done on every
request as well, when they should only be necessary once per SSL context (or
@@ -486,7 +428,7 @@ Currently the SMB authentication uses NTLMv1.
style connections are re-used. It will make us use slightly more memory but
it will libcurl do less creations and deletions of SSL contexts.
-13.5 Export session ids
+12.5 Export session ids
Add an interface to libcurl that enables "session IDs" to get
exported/imported. Cris Bailiff said: "OpenSSL has functions which can
@@ -494,22 +436,22 @@ Currently the SMB authentication uses NTLMv1.
the state from such a buffer at a later date - this is used by mod_ssl for
apache to implement and SSL session ID cache".
-13.6 Provide callback for cert verification
+12.6 Provide callback for cert verification
OpenSSL supports a callback for customised verification of the peer
certificate, but this doesn't seem to be exposed in the libcurl APIs. Could
it be? There's so much that could be done if it were!
-13.7 improve configure --with-ssl
+12.7 improve configure --with-ssl
make the configure --with-ssl option first check for OpenSSL, then GnuTLS,
then NSS...
-13.8 Support DANE
+12.8 Support DANE
DNS-Based Authentication of Named Entities (DANE) is a way to provide SSL
keys and certs over DNS using DNSSEC as an alternative to the CA model.
- https://www.rfc-editor.org/rfc/rfc6698.txt
+ http://www.rfc-editor.org/rfc/rfc6698.txt
An initial patch was posted by Suresh Krishnaswamy on March 7th 2013
(http://curl.haxx.se/mail/lib-2013-03/0075.html) but it was a too simple
@@ -517,69 +459,34 @@ Currently the SMB authentication uses NTLMv1.
http://curl.haxx.se/mail/lib-2013-03/0103.html . libunbound may be the
correct library to base this development on.
-14. GnuTLS
+13. GnuTLS
-14.1 SSL engine stuff
+13.1 SSL engine stuff
Is this even possible?
-14.2 check connection
+13.2 check connection
Add a way to check if the connection seems to be alive, to correspond to the
SSL_peak() way we use with OpenSSL.
-15. WinSSL/SChannel
-
-15.1 Add support for client certificate authentication
-
- WinSSL/SChannel currently makes use of the OS-level system and user
- certificate and private key stores. This does not allow the application
- or the user to supply a custom client certificate using curl or libcurl.
-
- Therefore support for the existing -E/--cert and --key options should be
- implemented by supplying a custom certificate to the SChannel APIs, see:
- - Getting a Certificate for Schannel
- https://msdn.microsoft.com/en-us/library/windows/desktop/aa375447.aspx
+14. SASL
-15.2 Add support for custom server certificate validation
+14.1 Other authentication mechanisms
- WinSSL/SChannel currently makes use of the OS-level system and user
- certificate trust store. This does not allow the application or user to
- customize the server certificate validation process using curl or libcurl.
-
- Therefore support for the existing --cacert or --capath options should be
- implemented by supplying a custom certificate to the SChannel APIs, see:
- - Getting a Certificate for Schannel
- https://msdn.microsoft.com/en-us/library/windows/desktop/aa375447.aspx
-
-15.3 Add support for the --ciphers option
-
- The cipher suites used by WinSSL/SChannel are configured on an OS-level
- instead of an application-level. This does not allow the application or
- the user to customize the configured cipher suites using curl or libcurl.
-
- Therefore support for the existing --ciphers option should be implemented
- by mapping the OpenSSL/GnuTLS cipher suites to the SChannel APIs, see
- - Specifying Schannel Ciphers and Cipher Strengths
- https://msdn.microsoft.com/en-us/library/windows/desktop/aa380161.aspx
-
-16. SASL
-
-16.1 Other authentication mechanisms
-
- Add support for other authentication mechanisms such as OLP,
+ Add support for other authentication mechanisms such as EXTERNAL, OLP,
GSS-SPNEGO and others.
-16.2 Add QOP support to GSSAPI authentication
+14.2 Add QOP support to GSSAPI authentication
Currently the GSSAPI authentication only supports the default QOP of auth
(Authentication), whilst Kerberos V5 supports both auth-int (Authentication
with integrity protection) and auth-conf (Authentication with integrity and
privacy protection).
-17. Client
+15. Client
-17.1 sync
+15.1 sync
"curl --sync http://example.com/feed[1-100].rss" or
"curl --sync http://example.net/{index,calendar,history}.html"
@@ -588,12 +495,12 @@ Currently the SMB authentication uses NTLMv1.
remote file is newer than the local file. A Last-Modified HTTP date header
should also be used to set the mod date on the downloaded file.
-17.2 glob posts
+15.2 glob posts
Globbing support for -d and -F, as in 'curl -d "name=foo[0-9]" URL'.
This is easily scripted though.
-17.3 prevent file overwriting
+15.3 prevent file overwriting
Add an option that prevents cURL from overwriting existing local files. When
used, and there already is an existing file with the target file name
@@ -601,14 +508,14 @@ Currently the SMB authentication uses NTLMv1.
existing). So that index.html becomes first index.html.1 and then
index.html.2 etc.
-17.4 simultaneous parallel transfers
+15.4 simultaneous parallel transfers
The client could be told to use maximum N simultaneous parallel transfers and
then just make sure that happens. It should of course not make more than one
connection to the same remote host. This would require the client to use the
multi interface. http://curl.haxx.se/bug/feature.cgi?id=1558595
-17.5 provide formpost headers
+15.5 provide formpost headers
Extending the capabilities of the multipart formposting. How about leaving
the ';type=foo' syntax as it is and adding an extra tag (headers) which
@@ -622,73 +529,43 @@ Currently the SMB authentication uses NTLMv1.
which should overwrite the program reasonable defaults (plain/text,
8bit...)
-17.6 warning when setting an option
-
- Display a warning when libcurl returns an error when setting an option.
- This can be useful to tell when support for a particular feature hasn't been
- compiled into the library.
-
-17.7 warning when sending binary output to terminal
-
- Provide a way that prompts the user for confirmation before binary data is
- sent to the terminal, much in the style 'less' does it.
-
-17.8 offer color-coded HTTP header output
-
- By offering different color output on the header name and the header
- contents, they could be made more readable and thus help users working on
- HTTP services.
-
-17.9 Choose the name of file in braces for complex URLs
-
- When using braces to download a list of URLs and you use complicated names
- in the list of alternatives, it could be handy to allow curl to use other
- names when saving.
-
- Consider a way to offer that. Possibly like
- {partURL1:name1,partURL2:name2,partURL3:name3} where the name following the
- colon is the output name.
-
- See https://github.com/bagder/curl/issues/221
-
-17.10 improve how curl works in a windows console window
-
- If you pull the scrollbar when transferring with curl in a Windows console
- window, the transfer is interrupted and can get disconnected. This can
- probably be improved. See https://github.com/bagder/curl/issues/322
+15.6 warning when setting an option
+ Display a warning when libcurl returns an error when setting an option.
+ This can be useful to tell when support for a particular feature hasn't been
+ compiled into the library.
-18. Build
+16. Build
-18.1 roffit
+16.1 roffit
Consider extending 'roffit' to produce decent ASCII output, and use that
instead of (g)nroff when building src/tool_hugehelp.c
-19. Test suite
+17. Test suite
-19.1 SSL tunnel
+17.1 SSL tunnel
Make our own version of stunnel for simple port forwarding to enable HTTPS
and FTP-SSL tests without the stunnel dependency, and it could allow us to
provide test tools built with either OpenSSL or GnuTLS
-19.2 nicer lacking perl message
+17.2 nicer lacking perl message
If perl wasn't found by the configure script, don't attempt to run the tests
but explain something nice why it doesn't.
-19.3 more protocols supported
+17.3 more protocols supported
Extend the test suite to include more protocols. The telnet could just do FTP
or http operations (for which we have test servers).
-19.4 more platforms supported
+17.4 more platforms supported
Make the test suite work on more platforms. OpenBSD and Mac OS. Remove
fork()s and it should become even more portable.
-19.5 Add support for concurrent connections
+17.5 Add support for concurrent connections
Tests 836, 882 and 938 were designed to verify that separate connections aren't
used when using different login credentials in protocols that shouldn't re-use
@@ -702,14 +579,14 @@ Currently the SMB authentication uses NTLMv1.
and thus the wait for connections loop is never entered to receive the second
connection.
-20. Next SONAME bump
+18. Next SONAME bump
-20.1 http-style HEAD output for FTP
+18.1 http-style HEAD output for FTP
#undef CURL_FTP_HTTPSTYLE_HEAD in lib/ftp.c to remove the HTTP-style headers
from being output in NOBODY requests over FTP
-20.2 combine error codes
+18.2 combine error codes
Combine some of the error codes to remove duplicates. The original
numbering should not be changed, and the old identifiers would be
@@ -734,29 +611,29 @@ Currently the SMB authentication uses NTLMv1.
CURLE_TFTP_PERM => CURLE_REMOTE_ACCESS_DENIED
-20.3 extend CURLOPT_SOCKOPTFUNCTION prototype
+18.3 extend CURLOPT_SOCKOPTFUNCTION prototype
The current prototype only provides 'purpose' that tells what the
connection/socket is for, but not any protocol or similar. It makes it hard
for applications to differentiate on TCP vs UDP and even HTTP vs FTP and
similar.
-21. Next major release
+19. Next major release
-21.1 cleanup return codes
+19.1 cleanup return codes
curl_easy_cleanup() returns void, but curl_multi_cleanup() returns a
CURLMcode. These should be changed to be the same.
-21.2 remove obsolete defines
+19.2 remove obsolete defines
remove obsolete defines from curl/curl.h
-21.3 size_t
+19.3 size_t
make several functions use size_t instead of int in their APIs
-21.4 remove several functions
+19.4 remove several functions
remove the following functions from the public API:
@@ -777,18 +654,18 @@ Currently the SMB authentication uses NTLMv1.
curl_multi_socket_all
-21.5 remove CURLOPT_FAILONERROR
+19.5 remove CURLOPT_FAILONERROR
Remove support for CURLOPT_FAILONERROR, it has gotten too kludgy and weird
internally. Let the app judge success or not for itself.
-21.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
+19.6 remove CURLOPT_DNS_USE_GLOBAL_CACHE
Remove support for a global DNS cache. Anything global is silly, and we
already offer the share interface for the same functionality but done
"right".
-21.7 remove progress meter from libcurl
+19.7 remove progress meter from libcurl
The internally provided progress meter output doesn't belong in the library.
Basically no application wants it (apart from curl) but instead applications
@@ -798,7 +675,7 @@ Currently the SMB authentication uses NTLMv1.
variable types passed to it instead of doubles so that big files work
correctly.
-21.8 remove 'curl_httppost' from public
+19.8 remove 'curl_httppost' from public
curl_formadd() was made to fill in a public struct, but the fact that the
struct is public is never really used by application for their own advantage
@@ -807,7 +684,7 @@ Currently the SMB authentication uses NTLMv1.
Changing them to return a private handle will benefit the implementation and
allow us much greater freedoms while still maintaining a solid API and ABI.
-21.9 have form functions use CURL handle argument
+19.9 have form functions use CURL handle argument
curl_formadd() and curl_formget() both currently have no CURL handle
argument, but both can use a callback that is set in the easy handle, and
@@ -815,7 +692,7 @@ Currently the SMB authentication uses NTLMv1.
curl_easy_perform() (or similar) called - which is hard to grasp and a design
mistake.
-21.10 Add CURLOPT_MAIL_CLIENT option
+19.10 Add CURLOPT_MAIL_CLIENT option
Rather than use the URL to specify the mail client string to present in the
HELO and EHLO commands, libcurl should support a new CURLOPT specifically for
diff --git a/docs/TheArtOfHttpScripting b/docs/TheArtOfHttpScripting
index 76faee4a8..7235f12f9 100644
--- a/docs/TheArtOfHttpScripting
+++ b/docs/TheArtOfHttpScripting
@@ -1,3 +1,4 @@
+Updated: Dec 24, 2013 (http://curl.haxx.se/docs/httpscripting.html)
_ _ ____ _
___| | | | _ \| |
/ __| | | | |_) | |
@@ -22,8 +23,6 @@ The Art Of Scripting HTTP Requests Using Curl
3. Fetch a page
3.1 GET
3.2 HEAD
- 3.3 Multiple URLs in a single command line
- 3.4 Multiple HTTP methods in a single command line
4. HTML forms
4.1 Forms explained
4.2 GET
@@ -137,7 +136,7 @@ The Art Of Scripting HTTP Requests Using Curl
The Uniform Resource Locator format is how you specify the address of a
particular resource on the Internet. You know these, you've seen URLs like
http://curl.haxx.se or https://yourbank.com a million times. RFC 3986 is the
- canonical spec. And yeah, the formal name is not URL, it is URI.
+ canonical spec.
2.2 Host
@@ -194,6 +193,7 @@ The Art Of Scripting HTTP Requests Using Curl
the associated response. The path is what is to the right side of the slash
that follows the host name and possibly port number.
+
3. Fetch a page
3.1 GET
@@ -224,46 +224,6 @@ The Art Of Scripting HTTP Requests Using Curl
may see a Content-Length: in the response headers, but there must not be an
actual body in the HEAD response.
- 3.3 Multiple URLs in a single command line
-
- A single curl command line may involve one or many URLs. The most common case
- is probably to just use one, but you can specify any amount of URLs. Yes
- any. No limits. You'll then get requests repeated over and over for all the
- given URLs.
-
- Example, send two GETs:
-
- curl http://url1.example.com http://url2.example.com
-
- If you use --data to POST to the URL, using multiple URLs means that you send
- that same POST to all the given URLs.
-
- Example, send two POSTs:
-
- curl --data name=curl http://url1.example.com http://url2.example.com
-
-
- 3.4 Multiple HTTP methods in a single command line
-
- Sometimes you need to operate on several URLs in a single command line and do
- different HTTP methods on each. For this, you'll enjoy the --next option. It
- is basically a separator that separates a bunch of options from the next. All
- the URLs before --next will get the same method and will get all the POST
- data merged into one.
-
- When curl reaches the --next on the command line, it'll sort of reset the
- method and the POST data and allow a new set.
-
- Perhaps this is best shown with a few examples. To send first a HEAD and then
- a GET:
-
- curl -I http://example.com --next http://example.com
-
- To first send a POST and then a GET:
-
- curl -d score=10 http://example.com/post.cgi --next http://example.com/results.html
-
-
4. HTML forms
4.1 Forms explained
@@ -342,10 +302,6 @@ The Art Of Scripting HTTP Requests Using Curl
curl --data-urlencode "name=I am Daniel" http://www.example.com
- If you repeat --data several times on the command line, curl will
- concatenate all the given data pieces - and put a '&' symbol between each
- data segment.
-
4.4 File Upload POST
Back in late 1995 they defined an additional way to post data over HTTP. It
@@ -601,10 +557,8 @@ The Art Of Scripting HTTP Requests Using Curl
truckload of advanced features to allow all those encryptions and key
infrastructure mechanisms encrypted HTTP requires.
- Curl supports encrypted fetches when built to use a TLS library and it can be
- built to use one out of a fairly large set of libraries - "curl -V" will show
- which one your curl was built to use (if any!). To get a page from a HTTPS
- server, simply run curl like:
+ Curl supports encrypted fetches thanks to the freely available OpenSSL
+ libraries. To get a page from a HTTPS server, simply run curl like:
curl https://secure.example.com
@@ -630,12 +584,6 @@ The Art Of Scripting HTTP Requests Using Curl
http://curl.haxx.se/docs/sslcerts.html
- At times you may end up with your own CA cert store and then you can tell
- curl to use that to verify the server's certificate:
-
- curl --cacert ca-bundle.pem https://example.com/
-
-
11. Custom Request Elements
11.1 Modify method and headers
@@ -744,7 +692,7 @@ The Art Of Scripting HTTP Requests Using Curl
14.1 Standards
- RFC 7230 is a must to read if you want in-depth understanding of the HTTP
+ RFC 2616 is a must to read if you want in-depth understanding of the HTTP
protocol
RFC 3986 explains the URL syntax
diff --git a/docs/VERSIONS b/docs/VERSIONS
index 72a45474d..0670089bd 100644
--- a/docs/VERSIONS
+++ b/docs/VERSIONS
@@ -1,18 +1,22 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
Version Numbers and Releases
-============================
Curl is not only curl. Curl is also libcurl. They're actually individually
versioned, but they mostly follow each other rather closely.
The version numbering is always built up using the same system:
- X.Y.Z
-
- - X is main version number
- - Y is release number
- - Z is patch number
+ X.Y[.Z]
-## Bumping numbers
+ Where
+ X is main version number
+ Y is release number
+ Z is patch number
One of these numbers will get bumped in each new release. The numbers to the
right of a bumped number will be reset to zero. If Z is zero, it may not be
@@ -53,4 +57,4 @@ Version Numbers and Releases
release. It makes comparisons with greater than and less than work.
This number is also available as three separate defines:
- `LIBCURL_VERSION_MAJOR`, `LIBCURL_VERSION_MINOR` and `LIBCURL_VERSION_PATCH`.
+ LIBCURL_VERSION_MAJOR, LIBCURL_VERSION_MINOR and LIBCURL_VERSION_PATCH.
diff --git a/docs/curl-config.html b/docs/curl-config.html
index 015dae821..1563d548b 100644
--- a/docs/curl-config.html
+++ b/docs/curl-config.html
@@ -4,20 +4,15 @@
<title>curl-config man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/curl-config.pdf b/docs/curl-config.pdf
index e3abdea26..301530442 100644
--- a/docs/curl-config.pdf
+++ b/docs/curl-config.pdf
Binary files differ
diff --git a/docs/curl.1 b/docs/curl.1
index e3303a54f..0b9971cd2 100644
--- a/docs/curl.1
+++ b/docs/curl.1
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -39,7 +39,8 @@ resume, Metalink, and more. As you will see below, the number of features will
make your head spin!
curl is powered by libcurl for all transfer-related features. See
-\fIlibcurl(3)\fP for details.
+.BR libcurl (3)
+for details.
.SH URL
The URL syntax is protocol-dependent. You'll find a detailed description in
RFC 3986.
@@ -268,11 +269,11 @@ If this option is used several times, the last one will be used.
.IP "--ciphers <list of ciphers>"
(SSL) Specifies which ciphers to use in the connection. The list of ciphers
must specify valid ciphers. Read up on SSL cipher list details on this URL:
-\fIhttps://www.openssl.org/docs/apps/ciphers.html\fP
+\fIhttp://www.openssl.org/docs/apps/ciphers.html\fP
NSS ciphers are done differently than OpenSSL and GnuTLS. The full list of NSS
ciphers is in the NSSCipherSuite entry at this URL:
-\fIhttps://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives\fP
+\fIhttp://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives\fP
If this option is used several times, the last one will be used.
.IP "--compressed"
@@ -314,10 +315,9 @@ presses the submit button. This will cause curl to pass the data to the server
using the content-type application/x-www-form-urlencoded. Compare to
\fI-F, --form\fP.
-\fI-d, --data\fP is the same as \fI--data-ascii\fP. \fI--data-raw\fP is almost
-the same but does not have a special interpretation of the @ character. To
-post data purely binary, you should instead use the \fI--data-binary\fP option.
-To URL-encode the value of a form field you may use \fI--data-urlencode\fP.
+\fI-d, --data\fP is the same as \fI--data-ascii\fP. To post data purely binary,
+you should instead use the \fI--data-binary\fP option. To URL-encode the value
+of a form field you may use \fI--data-urlencode\fP.
If any of these options is used more than once on the same command line, the
data pieces specified will be merged together with a separating
@@ -329,8 +329,7 @@ read the data from, or - if you want curl to read the data from
stdin. Multiple files can also be specified. Posting data from a file
named 'foobar' would thus be done with \fI--data\fP @foobar. When --data is
told to read from a file like that, carriage returns and newlines will be
-stripped out. If you don't want the @ character to have a special
-interpretation use \fI--data-raw\fP instead.
+stripped out.
.IP "-D, --dump-header <file>"
Write the protocol headers to the specified file.
@@ -355,10 +354,6 @@ and carriage returns are preserved and conversions are never done.
If this option is used several times, the ones following the first will append
data as described in \fI-d, --data\fP.
-.IP "--data-raw <data>"
-(HTTP) This posts data similarly to \fI--data\fP but without the special
-interpretation of the @ character. See \fI-d, --data\fP.
-(Added in 7.43.0)
.IP "--data-urlencode <data>"
(HTTP) This posts data, similar to the other --data options with the exception
that this performs URL-encoding. (Added in 7.18.0)
@@ -544,42 +539,19 @@ OpenSSL-powered curl to make SSL-connections much more efficiently than using
If this option is set, the default capath value will be ignored, and if it is
used several times, the last one will be used.
-.IP "--pinnedpubkey <pinned public key (hashes)>"
-(SSL) Tells curl to use the specified public key file (or hashes) to verify the
-peer. This can be a path to a file which contains a single public key in PEM or
-DER format, or any number of base64 encoded sha256 hashes preceded by
-\'sha256//\' and seperated by \';\'
+.IP "--pinnedpubkey <pinned public key>"
+(SSL) Tells curl to use the specified public key file to verify the peer. The
+file must contain a single public key in PEM or DER format.
When negotiating a TLS or SSL connection, the server sends a certificate
indicating its identity. A public key is extracted from this certificate and
if it does not exactly match the public key provided to this option, curl will
abort the connection before sending or receiving any data.
-Added in 7.39.0 for OpenSSL, GnuTLS and GSKit. Added in 7.43.0 for NSS and
-wolfSSL/CyaSSL. sha256 support added in 7.44.0 for OpenSSL,
-GnuTLS, NSS and wolfSSL/CyaSSL. Other SSL backends not supported.
+This is currently only implemented in the OpenSSL, GnuTLS and GSKit backends.
If this option is used several times, the last one will be used.
-.IP "--cert-status"
-(SSL) Tells curl to verify the status of the server certificate by using the
-Certificate Status Request (aka. OCSP stapling) TLS extension.
-
-If this option is enabled and the server sends an invalid (e.g. expired)
-response, if the response suggests that the server certificate has been revoked,
-or no response at all is received, the verification fails.
-
-This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.
-(Added in 7.41.0)
-.IP "--false-start"
-
-(SSL) Tells curl to use false start during the TLS handshake. False start is a
-mode where a TLS client will start sending application data before verifying
-the server's Finished message, thus saving a round trip when performing a full
-handshake.
-
-This is currently only implemented in the NSS and Secure Transport (on iOS 7.0
-or later, or OS X 10.9 or later) backends.
-(Added in 7.42.0)
+(Added in 7.39.0)
.IP "-f, --fail"
(HTTP) Fail silently (no output at all) on server errors. This is mostly done
to better enable scripts etc to better deal with failed attempts. In normal
@@ -607,9 +579,7 @@ input:
\fBcurl\fP -F password=@/etc/passwd www.mypasswords.com
To read content from stdin instead of a file, use - as the filename. This goes
-for both @ and < constructs. Unfortunately it does not support reading the
-file from a named pipe or similar, as it needs the full size before the
-transfer starts.
+for both @ and < constructs.
You can also tell curl what Content-Type to use by using 'type=', in a manner
similar to:
@@ -671,7 +641,6 @@ curl does one CWD with the full target directory and then operates on the file
\&"normally" (like in the multicwd case). This is somewhat more standards
compliant than 'nocwd' but without the full penalty of 'multicwd'.
.RE
-.IP
(Added in 7.15.1)
.IP "--ftp-pasv"
(FTP) Use passive mode for the data connection. Passive is the internal default
@@ -764,12 +733,6 @@ Example:
\&# curl -H "X-First-Name: Joe" http://192.168.0.1/
-\fBWARNING\fP: headers set with this option will be set in all requests - even
-after redirects are followed, like when told with \fB-L, --location\fP. This
-can lead to the header being sent to other hosts than the original host, so
-sensitive headers should be used with caution combined with following
-redirects.
-
This option can be used multiple times to add/replace/remove multiple headers.
.IP "--hostpubmd5 <md5>"
(SCP/SFTP) Pass a string containing 32 hexadecimal digits. The string should
@@ -1064,10 +1027,13 @@ in Metalink file, hash check will fail.
Makes curl scan the \fI.netrc\fP (\fI_netrc\fP on Windows) file in the user's
home directory for login name and password. This is typically used for FTP on
Unix. If used with HTTP, curl will enable user authentication. See
-\fInetrc(5)\fP \fIftp(1)\fP for details on the file format. Curl will not
-complain if that file doesn't have the right permissions (it should not be
-either world- or group-readable). The environment variable "HOME" is used to
-find the home directory.
+.BR netrc(4)
+or
+.BR ftp(1)
+for details on the file format. Curl will not complain if that file
+doesn't have the right permissions (it should not be either world- or
+group-readable). The environment variable "HOME" is used to find the home
+directory.
A quick and very simple example of how to setup a \fI.netrc\fP to allow curl
to FTP to the machine host.domain.com with user name \&'myself' and password
@@ -1229,7 +1195,7 @@ i.e "my.host.domain" to specify the machine
make curl pick the same IP address that is already used for the control
connection
.RE
-.IP
+
If this option is used several times, the last one will be used. Disable the
use of PORT with \fI--ftp-pasv\fP. Disable the attempt to use the EPRT command
instead of PORT by using \fI--disable-eprt\fP. EPRT is really PORT++.
@@ -1243,12 +1209,6 @@ available.
(SSL/SSH) Passphrase for the private key
If this option is used several times, the last one will be used.
-.IP "--path-as-is"
-Tell curl to not handle sequences of /../ or /./ in the given URL
-path. Normally curl will squash or merge them according to standards but with
-this option set you tell it not to do that.
-
-(Added in 7.42.0)
.IP "--post301"
(HTTP) Tells curl to respect RFC 2616/10.3.2 and not convert POST requests
into GET requests when following a 301 redirection. The non-RFC behaviour is
@@ -1334,11 +1294,6 @@ with a remote host. (Added in 7.17.1)
.IP "--proxy-ntlm"
Tells curl to use HTTP NTLM authentication when communicating with the given
proxy. Use \fI--ntlm\fP for enabling NTLM with a remote host.
-.IP "--proxy-service-name <servicename>"
-This option allows you to change the service name for proxy negotiation.
-
-Examples: --proxy-negotiate proxy-name \fI--proxy-service-name\fP sockd would use
-sockd/proxy-name. (Added in 7.43.0).
.IP "--proxy1.0 <proxyhost[:port]>"
Use the specified HTTP 1.0 proxy. If the port number is not specified, it is
assumed at port 1080.
@@ -1436,7 +1391,7 @@ specifies 300 bytes from offset 500(H)
.B 100-199,500-599
specifies two separate 100-byte ranges(*)(H)
.RE
-.IP
+
(*) = NOTE that this will cause the server to reply with a multipart
response!
@@ -1520,11 +1475,6 @@ terminal/stdout unless you redirect it.
.IP "--sasl-ir"
Enable initial response in SASL authentication.
(Added in 7.31.0)
-.IP "--service-name <servicename>"
-This option allows you to change the service name for SPNEGO.
-
-Examples: --negotiate \fI--service-name\fP sockd would use
-sockd/server-name. (Added in 7.43.0).
.IP "-S, --show-error"
When used with \fI-s\fP it makes curl show an error message if it fails.
.IP "--ssl"
@@ -1547,10 +1497,6 @@ and TLS1.0 protocols known as BEAST. If this option isn't used, the SSL layer
may use workarounds known to cause interoperability problems with some older
SSL implementations. WARNING: this option loosens the SSL security, and by
using this flag you ask for exactly that. (Added in 7.25.0)
-.IP "--ssl-no-revoke"
-(WinSSL) This option tells curl to disable certificate revocation checks.
-WARNING: this option loosens the SSL security, and by using this flag you ask
-for exactly that. (Added in 7.44.0)
.IP "--socks4 <host[:port]>"
Use the specified SOCKS4 proxy. If the port number is not specified, it is
assumed at port 1080. (Added in 7.15.2)
@@ -1730,7 +1676,7 @@ impossible to use a colon in the user name with this option. The password can,
still.
When using Kerberos V5 with a Windows based server you should include the
-Windows domain name in the user name, in order for the server to successfully
+Windows domain name in the user name, in order for the server to succesfully
obtain a Kerberos Ticket. If you don't then the initial authentication
handshake may fail.
@@ -1904,7 +1850,7 @@ displayed with millisecond resolution.
The URL that was fetched last. This is most meaningful if you've told curl
to follow location: headers.
.RE
-.IP
+
If this option is used several times, the last one will be used.
.IP "-x, --proxy <[protocol://][user:password@]proxyhost[:port]>"
Use the specified proxy.
@@ -1938,7 +1884,7 @@ password.
If this option is used several times, the last one will be used.
.IP "-X, --request <command>"
(HTTP) Specifies a custom request method to use when communicating with the
-HTTP server. The specified request method will be used instead of the method
+HTTP server. The specified request will be used instead of the method
otherwise used (which defaults to GET). Read the HTTP 1.1 specification for
details and explanations. Common additional HTTP requests include PUT and
DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and
@@ -1952,11 +1898,6 @@ alter the way curl behaves. So for example if you want to make a proper HEAD
request, using -X HEAD will not suffice. You need to use the \fI-I, --head\fP
option.
-The method string you set with -X will be used for all requests, which if you
-for example use \fB-L, --location\fP may cause unintended side-effects when
-curl doesn't change request method according to the HTTP 30x response codes -
-and similar.
-
(FTP)
Specifies a custom FTP command to use instead of LIST when doing file lists
with FTP.
diff --git a/docs/curl.html b/docs/curl.html
index c8374c4ab..2a961b7fd 100644
--- a/docs/curl.html
+++ b/docs/curl.html
@@ -4,20 +4,15 @@
<title>curl man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -55,7 +50,7 @@ p.roffit {
<p class="level0"><span Class="bold">curl [options]</span> <a class="emphasis" href="#URL">[URL...]</a> <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0"><span Class="bold">curl</span> is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP). The command is designed to work without user interaction.
<p class="level0">curl offers a busload of useful tricks like proxy support, user authentication, FTP upload, HTTP post, SSL connections, cookies, file transfer resume, Metalink, and more. As you will see below, the number of features will make your head spin!
-<p class="level0">curl is powered by libcurl for all transfer-related features. See <span Class="emphasis">libcurl(3)</span> for details. <a name="URL"></a><h2 class="nroffsh">URL</h2>
+<p class="level0">curl is powered by libcurl for all transfer-related features. See <span Class="manpage">libcurl (3)</span> for details. <a name="URL"></a><h2 class="nroffsh">URL</h2>
<p class="level0">The URL syntax is protocol-dependent. You'll find a detailed description in <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a>.
<p class="level0">You can specify multiple URLs or parts of URLs by writing part sets within braces as in:
<p class="level0">&nbsp; <a href="http://site">http://site</a>.{one,two,three}.com
@@ -79,7 +74,7 @@ p.roffit {
<p class="level0">curl displays this data to the terminal by default, so if you invoke curl to do an operation and it is about to write data to the terminal, it <span Class="emphasis">disables</span> the progress meter as otherwise it would mess up the output mixing progress meter and response data.
<p class="level0">If you want a progress meter for HTTP POST or PUT requests, you need to redirect the response output to a file, using shell redirect (&gt;), -o [file] or similar.
<p class="level0">It is not the same case for FTP upload as that operation does not spit out any response data to the terminal.
-<p class="level0">If you prefer a progress "bar" instead of the regular meter, <span Class="emphasis">-&#35;</span> is your friend. <a name="OPTIONS"></a><h2 class="nroffsh">OPTIONS</h2>
+<p class="level0">If you prefer a progress "bar" instead of the regular meter, <a class="emphasis" href="#-">-#</a> is your friend. <a name="OPTIONS"></a><h2 class="nroffsh">OPTIONS</h2>
<p class="level0">Options start with one or two dashes. Many of the options require an additional value next to them.
<p class="level0">The short "single-dash" form of the options, -d for example, may be used with or without a space between it and its value, although a space is a recommended separator. The long "double-dash" form, --data for example, requires a space between it and its value.
<p class="level0">Short version options that don't need any additional values can be used immediately next to each other, like for example you can specify all the options -O, -L and -v at once as -OLv.
@@ -139,8 +134,8 @@ p.roffit {
<p class="level1">Use "-C -" to tell curl to automatically find out where/how to resume the transfer. It then uses the given output/input files to figure that out.
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="--ciphers"></a><span class="nroffip">--ciphers &lt;list of ciphers&gt;</span>
-<p class="level1">(SSL) Specifies which ciphers to use in the connection. The list of ciphers must specify valid ciphers. Read up on SSL cipher list details on this URL: <span Class="emphasis">https://www.openssl.org/docs/apps/ciphers.html</span>
-<p class="level1">NSS ciphers are done differently than OpenSSL and GnuTLS. The full list of NSS ciphers is in the NSSCipherSuite entry at this URL: <span Class="emphasis">https://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html&#35;Directives</span>
+<p class="level1">(SSL) Specifies which ciphers to use in the connection. The list of ciphers must specify valid ciphers. Read up on SSL cipher list details on this URL: <span Class="emphasis"><a href="http://www.openssl.org/docs/apps/ciphers.html">http://www.openssl.org/docs/apps/ciphers.html</a></span>
+<p class="level1">NSS ciphers are done differently than OpenSSL and GnuTLS. The full list of NSS ciphers is in the NSSCipherSuite entry at this URL: <span Class="emphasis"><a href="http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives">http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives</a></span>
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="--compressed"></a><span class="nroffip">--compressed</span>
<p class="level1">(HTTP) Request a compressed response using one of the algorithms curl supports, and save the uncompressed document. If this option is used and the server sends an unsupported encoding, curl will report an error.
@@ -160,9 +155,9 @@ p.roffit {
<p class="level1">(Added in 7.19.7)
<p class="level0"><a name="-d"></a><span class="nroffip">-d, --data &lt;data&gt;</span>
<p class="level1">(HTTP) Sends the specified data in a POST request to the HTTP server, in the same way that a browser does when a user has filled in an HTML form and presses the submit button. This will cause curl to pass the data to the server using the content-type application/x-www-form-urlencoded. Compare to <a class="emphasis" href="#-F">-F, --form</a>.
-<p class="level1"><a class="emphasis" href="#-d">-d, --data</a> is the same as <a class="emphasis" href="#--data-ascii">--data-ascii</a>. <a class="emphasis" href="#--data-raw">--data-raw</a> is almost the same but does not have a special interpretation of the @ character. To post data purely binary, you should instead use the <a class="emphasis" href="#--data-binary">--data-binary</a> option. To URL-encode the value of a form field you may use <a class="emphasis" href="#--data-urlencode">--data-urlencode</a>.
+<p class="level1"><a class="emphasis" href="#-d">-d, --data</a> is the same as <a class="emphasis" href="#--data-ascii">--data-ascii</a>. To post data purely binary, you should instead use the <a class="emphasis" href="#--data-binary">--data-binary</a> option. To URL-encode the value of a form field you may use <a class="emphasis" href="#--data-urlencode">--data-urlencode</a>.
<p class="level1">If any of these options is used more than once on the same command line, the data pieces specified will be merged together with a separating &-symbol. Thus, using '-d name=daniel -d skill=lousy' would generate a post chunk that looks like 'name=daniel&skill=lousy'.
-<p class="level1">If you start the data with the letter @, the rest should be a file name to read the data from, or - if you want curl to read the data from stdin. Multiple files can also be specified. Posting data from a file named 'foobar' would thus be done with <span Class="emphasis">--data</span> @foobar. When --data is told to read from a file like that, carriage returns and newlines will be stripped out. If you don't want the @ character to have a special interpretation use <a class="emphasis" href="#--data-raw">--data-raw</a> instead.
+<p class="level1">If you start the data with the letter @, the rest should be a file name to read the data from, or - if you want curl to read the data from stdin. Multiple files can also be specified. Posting data from a file named 'foobar' would thus be done with <span Class="emphasis">--data</span> @foobar. When --data is told to read from a file like that, carriage returns and newlines will be stripped out.
<p class="level0"><a name="-D"></a><span class="nroffip">-D, --dump-header &lt;file&gt;</span>
<p class="level1">Write the protocol headers to the specified file.
<p class="level1">This option is handy to use when you want to store the headers that an HTTP site sends to you. Cookies from the headers could then be read in a second curl invocation by using the <a class="emphasis" href="#-b">-b, --cookie</a> option! The <a class="emphasis" href="#-c">-c, --cookie-jar</a> option is a better way to store cookies.
@@ -174,8 +169,6 @@ p.roffit {
<p class="level1">(HTTP) This posts data exactly as specified with no extra processing whatsoever.
<p class="level1">If you start the data with the letter @, the rest should be a filename. Data is posted in a similar manner as <a class="emphasis" href="#--data-ascii">--data-ascii</a> does, except that newlines and carriage returns are preserved and conversions are never done.
<p class="level1">If this option is used several times, the ones following the first will append data as described in <a class="emphasis" href="#-d">-d, --data</a>.
-<p class="level0"><a name="--data-raw"></a><span class="nroffip">--data-raw &lt;data&gt;</span>
-<p class="level1">(HTTP) This posts data similarly to <span Class="emphasis">--data</span> but without the special interpretation of the @ character. See <a class="emphasis" href="#-d">-d, --data</a>. (Added in 7.43.0)
<p class="level0"><a name="--data-urlencode"></a><span class="nroffip">--data-urlencode &lt;data&gt;</span>
<p class="level1">(HTTP) This posts data, similar to the other --data options with the exception that this performs URL-encoding. (Added in 7.18.0)
<p class="level1">To be CGI-compliant, the &lt;data&gt; part should begin with a <span Class="emphasis">name</span> followed by a separator and a content specification. The &lt;data&gt; part can be passed to curl using one of the following syntaxes:
@@ -228,9 +221,9 @@ p.roffit {
<p class="level1">(HTTP) Sends the "Referrer Page" information to the HTTP server. This can also be set with the <a class="emphasis" href="#-H">-H, --header</a> flag of course. When used with <a class="emphasis" href="#-L">-L, --location</a> you can append ";auto" to the --referer URL to make curl automatically set the previous URL when it follows a Location: header. The ";auto" string can be used alone, even if you don't set an initial --referer.
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="-E"></a><span class="nroffip">-E, --cert &lt;certificate[:password]&gt;</span>
-<p class="level1">(SSL) Tells curl to use the specified client certificate file when getting a file with HTTPS, FTPS or another SSL-based protocol. The certificate must be in PKCS&#35;12 format if using Secure Transport, or PEM format if using any other engine. If the optional password isn't specified, it will be queried for on the terminal. Note that this option assumes a "certificate" file that is the private key and the private certificate concatenated! See <span Class="emphasis">--cert</span> and <a class="emphasis" href="#--key">--key</a> to specify them independently.
-<p class="level1">If curl is built against the NSS SSL library then this option can tell curl the nickname of the certificate to use within the NSS database defined by the environment variable SSL_DIR (or by default /etc/pki/nssdb). If the NSS PEM PKCS&#35;11 module (libnsspem.so) is available then PEM files may be loaded. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname. If the nickname contains ":", it needs to be preceded by "\" so that it is not recognized as password delimiter. If the nickname contains "\", it needs to be escaped as "\\" so that it is not recognized as an escape character.
-<p class="level1">(iOS and Mac OS X only) If curl is built against Secure Transport, then the certificate string can either be the name of a certificate/private key in the system or user keychain, or the path to a PKCS&#35;12-encoded certificate and private key. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname.
+<p class="level1">(SSL) Tells curl to use the specified client certificate file when getting a file with HTTPS, FTPS or another SSL-based protocol. The certificate must be in PKCS#12 format if using Secure Transport, or PEM format if using any other engine. If the optional password isn't specified, it will be queried for on the terminal. Note that this option assumes a "certificate" file that is the private key and the private certificate concatenated! See <span Class="emphasis">--cert</span> and <a class="emphasis" href="#--key">--key</a> to specify them independently.
+<p class="level1">If curl is built against the NSS SSL library then this option can tell curl the nickname of the certificate to use within the NSS database defined by the environment variable SSL_DIR (or by default /etc/pki/nssdb). If the NSS PEM PKCS#11 module (libnsspem.so) is available then PEM files may be loaded. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname. If the nickname contains ":", it needs to be preceded by "\" so that it is not recognized as password delimiter. If the nickname contains "\", it needs to be escaped as "\\" so that it is not recognized as an escape character.
+<p class="level1">(iOS and Mac OS X only) If curl is built against Secure Transport, then the certificate string can either be the name of a certificate/private key in the system or user keychain, or the path to a PKCS#12-encoded certificate and private key. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname.
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="--engine"></a><span class="nroffip">--engine &lt;name&gt;</span>
<p class="level1">Select the OpenSSL crypto engine to use for cipher operations. Use <a class="emphasis" href="#--engine">--engine list</a> to print a list of build-time supported engines. Note that not all (or none) of the engines may be available at run-time.
@@ -245,24 +238,16 @@ p.roffit {
<p class="level1">(SSL) Tells curl to use the specified certificate file to verify the peer. The file may contain multiple CA certificates. The certificate(s) must be in PEM format. Normally curl is built to use a default file for this, so this option is typically used to alter that default file.
<p class="level1">curl recognizes the environment variable named 'CURL_CA_BUNDLE' if it is set, and uses the given path as a path to a CA cert bundle. This option overrides that variable.
<p class="level1">The windows version of curl will automatically look for a CA certs file named &acute;curl-ca-bundle.crt&acute;, either in the same directory as curl.exe, or in the Current Working Directory, or in any folder along your PATH.
-<p class="level1">If curl is built against the NSS SSL library, the NSS PEM PKCS&#35;11 module (libnsspem.so) needs to be available for this option to work properly.
+<p class="level1">If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module (libnsspem.so) needs to be available for this option to work properly.
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="--capath"></a><span class="nroffip">--capath &lt;CA certificate directory&gt;</span>
<p class="level1">(SSL) Tells curl to use the specified certificate directory to verify the peer. Multiple paths can be provided by separating them with ":" (e.g. "path1:path2:path3"). The certificates must be in PEM format, and if curl is built against OpenSSL, the directory must have been processed using the c_rehash utility supplied with OpenSSL. Using <a class="emphasis" href="#--capath">--capath</a> can allow OpenSSL-powered curl to make SSL-connections much more efficiently than using <a class="emphasis" href="#--cacert">--cacert</a> if the <a class="emphasis" href="#--cacert">--cacert</a> file contains many CA certificates.
<p class="level1">If this option is set, the default capath value will be ignored, and if it is used several times, the last one will be used.
-<p class="level0"><a name="--pinnedpubkey"></a><span class="nroffip">--pinnedpubkey &lt;pinned public key (hashes)&gt;</span>
-<p class="level1">(SSL) Tells curl to use the specified public key file (or hashes) to verify the peer. This can be a path to a file which contains a single public key in PEM or DER format, or any number of base64 encoded sha256 hashes preceded by &acute;sha256//&acute; and seperated by &acute;;&acute;
+<p class="level0"><a name="--pinnedpubkey"></a><span class="nroffip">--pinnedpubkey &lt;pinned public key&gt;</span>
+<p class="level1">(SSL) Tells curl to use the specified public key file to verify the peer. The file must contain a single public key in PEM or DER format.
<p class="level1">When negotiating a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match the public key provided to this option, curl will abort the connection before sending or receiving any data.
-<p class="level1">Added in 7.39.0 for OpenSSL, GnuTLS and GSKit. Added in 7.43.0 for NSS and wolfSSL/CyaSSL. sha256 support added in 7.44.0 for OpenSSL, GnuTLS, NSS and wolfSSL/CyaSSL. Other SSL backends not supported.
-<p class="level1">If this option is used several times, the last one will be used.
-<p class="level0"><a name="--cert-status"></a><span class="nroffip">--cert-status</span>
-<p class="level1">(SSL) Tells curl to verify the status of the server certificate by using the Certificate Status Request (aka. OCSP stapling) TLS extension.
-<p class="level1">If this option is enabled and the server sends an invalid (e.g. expired) response, if the response suggests that the server certificate has been revoked, or no response at all is received, the verification fails.
-<p class="level1">This is currently only implemented in the OpenSSL, GnuTLS and NSS backends. (Added in 7.41.0)
-<p class="level0"><a name="--false-start"></a><span class="nroffip">--false-start</span>
-<p class="level1">
-<p class="level1">(SSL) Tells curl to use false start during the TLS handshake. False start is a mode where a TLS client will start sending application data before verifying the server's Finished message, thus saving a round trip when performing a full handshake.
-<p class="level1">This is currently only implemented in the NSS and Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) backends. (Added in 7.42.0)
+<p class="level1">This is currently only implemented in the OpenSSL, GnuTLS and GSKit backends.
+<p class="level1">If this option is used several times, the last one will be used. (Added in 7.39.0)
<p class="level0"><a name="-f"></a><span class="nroffip">-f, --fail</span>
<p class="level1">(HTTP) Fail silently (no output at all) on server errors. This is mostly done to better enable scripts etc to better deal with failed attempts. In normal cases when an HTTP server fails to deliver a document, it returns an HTML document stating so (which often also describes why and more). This flag will prevent curl from outputting that and return error 22.
<p class="level1">This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).
@@ -270,7 +255,7 @@ p.roffit {
<p class="level1">(HTTP) This lets curl emulate a filled-in form in which a user has pressed the submit button. This causes curl to POST data using the Content-Type multipart/form-data according to <a href="http://www.ietf.org/rfc/rfc2388.txt">RFC 2388</a>. This enables uploading of binary files etc. To force the 'content' part to be a file, prefix the file name with an @ sign. To just get the content part from a file, prefix the file name with the symbol &lt;. The difference between @ and &lt; is then that @ makes a file get attached in the post as a file upload, while the &lt; makes a text field and just get the contents for that text field from a file.
<p class="level1">Example, to send your password file to the server, where 'password' is the name of the form-field to which /etc/passwd will be the input:
<p class="level1"><span Class="bold">curl</span> -F password=@/etc/passwd www.mypasswords.com
-<p class="level1">To read content from stdin instead of a file, use - as the filename. This goes for both @ and &lt; constructs. Unfortunately it does not support reading the file from a named pipe or similar, as it needs the full size before the transfer starts.
+<p class="level1">To read content from stdin instead of a file, use - as the filename. This goes for both @ and &lt; constructs.
<p class="level1">You can also tell curl what Content-Type to use by using 'type=', in a manner similar to:
<p class="level1"><span Class="bold">curl</span> -F "web=@index.html;type=text/html" url.com
<p class="level1">or
@@ -300,8 +285,6 @@ p.roffit {
<p class="level2">curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full path to the server for all these commands. This is the fastest behavior.
<p class="level1"><a name="singlecwd"></a><span class="nroffip">singlecwd</span>
<p class="level2">curl does one CWD with the full target directory and then operates on the file "normally" (like in the multicwd case). This is somewhat more standards compliant than 'nocwd' but without the full penalty of 'multicwd'.
-<p class="level1">
-<p class="level0"><a name=""></a><span class="nroffip"></span>
<p class="level1">(Added in 7.15.1)
<p class="level0"><a name="--ftp-pasv"></a><span class="nroffip">--ftp-pasv</span>
<p class="level1">(FTP) Use passive mode for the data connection. Passive is the internal default behavior, but using this option can be used to override a previous <span Class="emphasis">-P/-ftp-port</span> option. (Added in 7.11.0)
@@ -332,8 +315,7 @@ p.roffit {
<p class="level1">See also the <a class="emphasis" href="#-A">-A, --user-agent</a> and <a class="emphasis" href="#-e">-e, --referer</a> options.
<p class="level1">Starting in 7.37.0, you need <a class="emphasis" href="#--proxy-header">--proxy-header</a> to send custom headers intended for a proxy.
<p class="level1">Example:
-<p class="level1">&#35; curl -H "X-First-Name: Joe" <a href="http://192.168.0.1/">http://192.168.0.1/</a>
-<p class="level1"><span Class="bold">WARNING</span>: headers set with this option will be set in all requests - even after redirects are followed, like when told with <a class="bold" href="#-L">-L, --location</a>. This can lead to the header being sent to other hosts than the original host, so sensitive headers should be used with caution combined with following redirects.
+<p class="level1"># curl -H "X-First-Name: Joe" <a href="http://192.168.0.1/">http://192.168.0.1/</a>
<p class="level1">This option can be used multiple times to add/replace/remove multiple headers.
<p class="level0"><a name="--hostpubmd5"></a><span class="nroffip">--hostpubmd5 &lt;md5&gt;</span>
<p class="level1">(SCP/SFTP) Pass a string containing 32 hexadecimal digits. The string should be the 128 bit MD5 checksum of the remote host's public key, curl will refuse the connection with the host unless the md5sums match. (Added in 7.17.1)
@@ -358,26 +340,25 @@ p.roffit {
<p class="level0"><a name="-K"></a><span class="nroffip">-K, --config &lt;config file&gt;</span>
<p class="level1">Specify which config file to read curl arguments from. The config file is a text file in which command line arguments can be written which then will be used as if they were written on the actual command line.
<p class="level1">Options and their parameters must be specified on the same config file line, separated by whitespace, colon, or the equals sign. Long option names can optionally be given in the config file without the initial double dashes and if so, the colon or equals characters can be used as separators. If the option is specified with one or two dashes, there can be no colon or equals character between the option and its parameter.
-<p class="level1">If the parameter is to contain whitespace, the parameter must be enclosed within quotes. Within double quotes, the following escape sequences are available: \\, \", \t, \n, \r and \v. A backslash preceding any other letter is ignored. If the first column of a config line is a '&#35;' character, the rest of the line will be treated as a comment. Only write one option per physical line in the config file.
+<p class="level1">If the parameter is to contain whitespace, the parameter must be enclosed within quotes. Within double quotes, the following escape sequences are available: \\, \", \t, \n, \r and \v. A backslash preceding any other letter is ignored. If the first column of a config line is a '#' character, the rest of the line will be treated as a comment. Only write one option per physical line in the config file.
<p class="level1">Specify the filename to -K, --config as '-' to make curl read the file from stdin.
<p class="level1">Note that to be able to specify a URL in the config file, you need to specify it using the <a class="emphasis" href="#--url">--url</a> option, and not by simply writing the URL on its own line. So, it could look similar to this:
<p class="level1">url = "<a href="http://curl.haxx.se/docs/">http://curl.haxx.se/docs/</a>"
<p class="level1">When curl is invoked, it always (unless <a class="emphasis" href="#-q">-q</a> is used) checks for a default config file and uses it if found. The default config file is checked for in the following places in this order:
<p class="level1">1) curl tries to find the "home dir": It first checks for the CURL_HOME and then the HOME environment variables. Failing that, it uses getpwuid() on Unix-like systems (which returns the home dir given the current user in your system). On Windows, it then checks for the APPDATA variable, or as a last resort the '%USERPROFILE%\Application Data'.
<p class="level1">2) On windows, if there is no _curlrc file in the home dir, it checks for one in the same dir the curl executable is placed. On Unix-like systems, it will simply try to load .curlrc from the determined home dir.
-<p class="level1"><pre class="level1">
-&#35; --- Example file ---
-&#35; this is a comment
-url = "curl.haxx.se"
-output = "curlhere.html"
-user-agent = "superagent/1.0"
-&nbsp;
-&#35; and fetch another URL too
-url = "curl.haxx.se/docs/manpage.html"
--O
-referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
-&#35; --- End of example file ---
-</pre>
+<p class="level1"><pre>
+<p class="level1"># --- Example file ---
+ # this is a comment
+ url = "curl.haxx.se"
+ output = "curlhere.html"
+ user-agent = "superagent/1.0"
+ <p class="level1"># and fetch another URL too
+ url = "curl.haxx.se/docs/manpage.html"
+ -O
+ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
+ # --- End of example file ---
+ </pre>
<p class="level1">
<p class="level1">This option can be used multiple times to load multiple config files.
@@ -449,7 +430,7 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">Please note that if FILE protocol is disabled, there is no way to use a local Metalink file at the time of this writing. Also note that if <a class="emphasis" href="#--metalink">--metalink</a> and <span Class="emphasis">--include</span> are used together, <span Class="emphasis">--include</span> will be ignored. This is because including headers in the response will break Metalink parser and if the headers are included in the file described in Metalink file, hash check will fail.
<p class="level1">(Added in 7.27.0, if built against the libmetalink library.)
<p class="level0"><a name="-n"></a><span class="nroffip">-n, --netrc</span>
-<p class="level1">Makes curl scan the <span Class="emphasis">.netrc</span> (<span Class="emphasis">_netrc</span> on Windows) file in the user's home directory for login name and password. This is typically used for FTP on Unix. If used with HTTP, curl will enable user authentication. See <span Class="emphasis">netrc(5)</span> <span Class="emphasis">ftp(1)</span> for details on the file format. Curl will not complain if that file doesn't have the right permissions (it should not be either world- or group-readable). The environment variable "HOME" is used to find the home directory.
+<p class="level1">Makes curl scan the <span Class="emphasis">.netrc</span> (<span Class="emphasis">_netrc</span> on Windows) file in the user's home directory for login name and password. This is typically used for FTP on Unix. If used with HTTP, curl will enable user authentication. See <span Class="manpage">netrc(4)</span> or <span Class="manpage">ftp(1)</span> for details on the file format. Curl will not complain if that file doesn't have the right permissions (it should not be either world- or group-readable). The environment variable "HOME" is used to find the home directory.
<p class="level1">A quick and very simple example of how to setup a <span Class="emphasis">.netrc</span> to allow curl to FTP to the machine host.domain.com with user name 'myself' and password 'secret' should look similar to:
<p class="level1"><span Class="bold">machine host.domain.com login myself password secret</span>
<p class="level0"><a name="-N"></a><span class="nroffip">-N, --no-buffer</span>
@@ -482,10 +463,10 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">This option requires a library built with SSL support. Use <a class="emphasis" href="#-V">-V, --version</a> to see if your curl supports NTLM.
<p class="level1">If this option is used several times, only the first one is used.
<p class="level0"><a name="-o"></a><span class="nroffip">-o, --output &lt;file&gt;</span>
-<p class="level1">Write output to &lt;file&gt; instead of stdout. If you are using {} or [] to fetch multiple documents, you can use '&#35;' followed by a number in the &lt;file&gt; specifier. That variable will be replaced with the current string for the URL being fetched. Like in:
-<p class="level1">&nbsp; curl http://{one,two}.site.com -o "file_&#35;1.txt"
+<p class="level1">Write output to &lt;file&gt; instead of stdout. If you are using {} or [] to fetch multiple documents, you can use '#' followed by a number in the &lt;file&gt; specifier. That variable will be replaced with the current string for the URL being fetched. Like in:
+<p class="level1">&nbsp; curl http://{one,two}.site.com -o "file_#1.txt"
<p class="level1">or use several variables like:
-<p class="level1">&nbsp; curl http://{site,host}.host[1-5].com -o "&#35;1_&#35;2"
+<p class="level1">&nbsp; curl http://{site,host}.host[1-5].com -o "#1_#2"
<p class="level1">You may use this option as many times as the number of URLs you have.
<p class="level1">See also the <a class="emphasis" href="#--create-dirs">--create-dirs</a> option to create the local directories dynamically. Specifying the output as '-' (a single dash) will force the output to be done to stdout.
<p class="level0"><a name="-O"></a><span class="nroffip">-O, --remote-name</span>
@@ -518,15 +499,11 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1"><a name="-"></a><span class="nroffip">-</span>
<p class="level2">make curl pick the same IP address that is already used for the control connection
<p class="level1">
-<p class="level0"><a name=""></a><span class="nroffip"></span>
<p class="level1">If this option is used several times, the last one will be used. Disable the use of PORT with <a class="emphasis" href="#--ftp-pasv">--ftp-pasv</a>. Disable the attempt to use the EPRT command instead of PORT by using <a class="emphasis" href="#--disable-eprt">--disable-eprt</a>. EPRT is really PORT++.
<p class="level1">Starting in 7.19.5, you can append ":[start]-[end]" to the right of the address, to tell curl what TCP port range to use. That means you specify a port range, from a lower to a higher number. A single number works as well, but do note that it increases the risk of failure since the port may not be available.
<p class="level0"><a name="--pass"></a><span class="nroffip">--pass &lt;phrase&gt;</span>
<p class="level1">(SSL/SSH) Passphrase for the private key
<p class="level1">If this option is used several times, the last one will be used.
-<p class="level0"><a name="--path-as-is"></a><span class="nroffip">--path-as-is</span>
-<p class="level1">Tell curl to not handle sequences of /../ or /./ in the given URL path. Normally curl will squash or merge them according to standards but with this option set you tell it not to do that.
-<p class="level1">(Added in 7.42.0)
<p class="level0"><a name="--post301"></a><span class="nroffip">--post301</span>
<p class="level1">(HTTP) Tells curl to respect <a href="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616</a>/10.3.2 and not convert POST requests into GET requests when following a 301 redirection. The non-RFC behaviour is ubiquitous in web browsers, so curl does the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when using <a class="emphasis" href="#-L">-L, --location</a> (Added in 7.17.1)
<p class="level0"><a name="--post302"></a><span class="nroffip">--post302</span>
@@ -564,9 +541,6 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating with the given proxy. Use <a class="emphasis" href="#--negotiate">--negotiate</a> for enabling HTTP Negotiate (SPNEGO) with a remote host. (Added in 7.17.1)
<p class="level0"><a name="--proxy-ntlm"></a><span class="nroffip">--proxy-ntlm</span>
<p class="level1">Tells curl to use HTTP NTLM authentication when communicating with the given proxy. Use <a class="emphasis" href="#--ntlm">--ntlm</a> for enabling NTLM with a remote host.
-<p class="level0"><a name="--proxy-service-name"></a><span class="nroffip">--proxy-service-name &lt;servicename&gt;</span>
-<p class="level1">This option allows you to change the service name for proxy negotiation.
-<p class="level1">Examples: --proxy-negotiate proxy-name <a class="emphasis" href="#--proxy-service-name">--proxy-service-name</a> sockd would use sockd/proxy-name. (Added in 7.43.0).
<p class="level0"><a name="--proxy10"></a><span class="nroffip">--proxy1.0 &lt;proxyhost[:port]&gt;</span>
<p class="level1">Use the specified HTTP 1.0 proxy. If the port number is not specified, it is assumed at port 1080.
<p class="level1">The only difference between this and the HTTP proxy option (<a class="emphasis" href="#-x">-x, --proxy</a>), is that attempts to use CONNECT through the proxy will specify an HTTP 1.0 protocol instead of the default HTTP 1.1.
@@ -612,7 +586,6 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level2"><span Class="bold">500-700,600-799</span> specifies 300 bytes from offset 500(H)
<p class="level2"><span Class="bold">100-199,500-599</span> specifies two separate 100-byte ranges(*)(H)
<p class="level1">
-<p class="level0"><a name=""></a><span class="nroffip"></span>
<p class="level1">(*) = NOTE that this will cause the server to reply with a multipart response!
<p class="level1">Only digit characters (0-9) are valid in the 'start' and 'stop' fields of the 'start-stop' range syntax. If a non-digit character is given in the range, the server's response will be unspecified, depending on the server's configuration.
<p class="level1">You should also be aware that many HTTP/1.1 servers do not have this feature enabled, so that when you attempt to get a range, you'll instead get the whole document.
@@ -644,9 +617,6 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">Silent or quiet mode. Don't show progress meter or error messages. Makes Curl mute. It will still output the data you ask for, potentially even to the terminal/stdout unless you redirect it.
<p class="level0"><a name="--sasl-ir"></a><span class="nroffip">--sasl-ir</span>
<p class="level1">Enable initial response in SASL authentication. (Added in 7.31.0)
-<p class="level0"><a name="--service-name"></a><span class="nroffip">--service-name &lt;servicename&gt;</span>
-<p class="level1">This option allows you to change the service name for SPNEGO.
-<p class="level1">Examples: --negotiate <a class="emphasis" href="#--service-name">--service-name</a> sockd would use sockd/server-name. (Added in 7.43.0).
<p class="level0"><a name="-S"></a><span class="nroffip">-S, --show-error</span>
<p class="level1">When used with <a class="emphasis" href="#-s">-s</a> it makes curl show an error message if it fails.
<p class="level0"><a name="--ssl"></a><span class="nroffip">--ssl</span>
@@ -657,8 +627,6 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">This option was formerly known as <span Class="emphasis">--ftp-ssl-reqd</span> (added in 7.15.5). That option name can still be used but will be removed in a future version.
<p class="level0"><a name="--ssl-allow-beast"></a><span class="nroffip">--ssl-allow-beast</span>
<p class="level1">(SSL) This option tells curl to not work around a security flaw in the SSL3 and TLS1.0 protocols known as BEAST. If this option isn't used, the SSL layer may use workarounds known to cause interoperability problems with some older SSL implementations. WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that. (Added in 7.25.0)
-<p class="level0"><a name="--ssl-no-revoke"></a><span class="nroffip">--ssl-no-revoke</span>
-<p class="level1">(WinSSL) This option tells curl to disable certificate revocation checks. WARNING: this option loosens the SSL security, and by using this flag you ask for exactly that. (Added in 7.44.0)
<p class="level0"><a name="--socks4"></a><span class="nroffip">--socks4 &lt;host[:port]&gt;</span>
<p class="level1">Use the specified SOCKS4 proxy. If the port number is not specified, it is assumed at port 1080. (Added in 7.15.2)
<p class="level1">This option overrides any previous use of <a class="emphasis" href="#-x">-x, --proxy</a>, as they are mutually exclusive.
@@ -738,7 +706,7 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">Specify the user name and password to use for server authentication. Overrides <a class="emphasis" href="#-n">-n, --netrc</a> and <a class="emphasis" href="#--netrc-optional">--netrc-optional</a>.
<p class="level1">If you simply specify the user name, curl will prompt for a password.
<p class="level1">The user name and passwords are split up on the first colon, which makes it impossible to use a colon in the user name with this option. The password can, still.
-<p class="level1">When using Kerberos V5 with a Windows based server you should include the Windows domain name in the user name, in order for the server to successfully obtain a Kerberos Ticket. If you don't then the initial authentication handshake may fail.
+<p class="level1">When using Kerberos V5 with a Windows based server you should include the Windows domain name in the user name, in order for the server to succesfully obtain a Kerberos Ticket. If you don't then the initial authentication handshake may fail.
<p class="level1">When using NTLM, the user name can be specified simply as the user name, without the domain, if there is a single domain and forest in your setup for example.
<p class="level1">To specify the domain name use either Down-Level Logon Name or UPN (User Principal Name) formats. For example, EXAMPLE\user and user@example.com respectively.
<p class="level1">If you use a Windows SSPI-enabled curl binary and perform Kerberos V5, Negotiate, NTLM or Digest authentication then you can tell curl to select the user name and password from your environment by specifying a single colon with this option: "-u :".
@@ -790,7 +758,6 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level2"><span Class="bold">time_total</span> The total time, in seconds, that the full operation lasted. The time will be displayed with millisecond resolution.
<p class="level2"><span Class="bold">url_effective</span> The URL that was fetched last. This is most meaningful if you've told curl to follow location: headers.
<p class="level1">
-<p class="level0"><a name=""></a><span class="nroffip"></span>
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="-x"></a><span class="nroffip">-x, --proxy &lt;[protocol://][user:password@]proxyhost[:port]&gt;</span>
<p class="level1">Use the specified proxy.
@@ -802,10 +769,9 @@ referer = "<a href="http://nowhereatall.com/">http://nowhereatall.com/</a>"
<p class="level1">The proxy host can be specified the exact same way as the proxy environment variables, including the protocol prefix (http://) and the embedded user + password.
<p class="level1">If this option is used several times, the last one will be used.
<p class="level0"><a name="-X"></a><span class="nroffip">-X, --request &lt;command&gt;</span>
-<p class="level1">(HTTP) Specifies a custom request method to use when communicating with the HTTP server. The specified request method will be used instead of the method otherwise used (which defaults to GET). Read the HTTP 1.1 specification for details and explanations. Common additional HTTP requests include PUT and DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and more.
+<p class="level1">(HTTP) Specifies a custom request method to use when communicating with the HTTP server. The specified request will be used instead of the method otherwise used (which defaults to GET). Read the HTTP 1.1 specification for details and explanations. Common additional HTTP requests include PUT and DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and more.
<p class="level1">Normally you don't need this option. All sorts of GET, HEAD, POST and PUT requests are rather invoked by using dedicated command line options.
<p class="level1">This option only changes the actual word used in the HTTP request, it does not alter the way curl behaves. So for example if you want to make a proper HEAD request, using -X HEAD will not suffice. You need to use the <a class="emphasis" href="#-I">-I, --head</a> option.
-<p class="level1">The method string you set with -X will be used for all requests, which if you for example use <a class="bold" href="#-L">-L, --location</a> may cause unintended side-effects when curl doesn't change request method according to the HTTP 30x response codes - and similar.
<p class="level1">(FTP) Specifies a custom FTP command to use instead of LIST when doing file lists with FTP.
<p class="level1">(POP3) Specifies a custom POP3 command to use instead of LIST or RETR. (Added in 7.26.0)
<p class="level1">(IMAP) Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)
diff --git a/docs/curl.pdf b/docs/curl.pdf
index 5e838d848..630cfdb30 100644
--- a/docs/curl.pdf
+++ b/docs/curl.pdf
Binary files differ
diff --git a/docs/examples/10-at-a-time.c b/docs/examples/10-at-a-time.c
index f43dc75e0..5d95a8a89 100644
--- a/docs/examples/10-at-a-time.c
+++ b/docs/examples/10-at-a-time.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,9 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Source code using the multi interface to download many
- * files, with a capped maximum amount of simultaneous transfers.
- * </DESC>
+/* Example application source code using the multi interface to download many
+ * files, but with a capped maximum amount of simultaneous transfers.
+ *
* Written by Michael Wallner
*/
diff --git a/docs/examples/Makefile.in b/docs/examples/Makefile.in
index 0b8c786c1..554c405b2 100644
--- a/docs/examples/Makefile.in
+++ b/docs/examples/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -43,7 +43,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -58,17 +58,7 @@
#
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -132,6 +122,9 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_1 = -DCURL_STATICLIB
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs \
+ $(top_srcdir)/depcomp README
check_PROGRAMS = 10-at-a-time$(EXEEXT) anyauthput$(EXEEXT) \
cookie_interface$(EXEEXT) debug$(EXEEXT) fileupload$(EXEEXT) \
fopen$(EXEEXT) ftpget$(EXEEXT) ftpgetresp$(EXEEXT) \
@@ -156,9 +149,7 @@ check_PROGRAMS = 10-at-a-time$(EXEEXT) anyauthput$(EXEEXT) \
imap-search$(EXEEXT) imap-create$(EXEEXT) imap-delete$(EXEEXT) \
imap-copy$(EXEEXT) imap-noop$(EXEEXT) imap-ssl$(EXEEXT) \
imap-tls$(EXEEXT) imap-multi$(EXEEXT) url2file$(EXEEXT) \
- sftpget$(EXEEXT) ftpsget$(EXEEXT) postinmemory$(EXEEXT) \
- http2-download$(EXEEXT) http2-upload$(EXEEXT) \
- http2-serverpush$(EXEEXT)
+ sftpget$(EXEEXT) ftpsget$(EXEEXT) postinmemory$(EXEEXT)
subdir = docs/examples
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
@@ -180,8 +171,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -314,27 +304,6 @@ http_post_LDADD = $(LDADD)
@USE_EXPLICIT_LIB_DEPS_FALSE@ $(LIBDIR)/libcurl.la
@USE_EXPLICIT_LIB_DEPS_TRUE@http_post_DEPENDENCIES = \
@USE_EXPLICIT_LIB_DEPS_TRUE@ $(LIBDIR)/libcurl.la
-http2_download_SOURCES = http2-download.c
-http2_download_OBJECTS = http2-download.$(OBJEXT)
-http2_download_LDADD = $(LDADD)
-@USE_EXPLICIT_LIB_DEPS_FALSE@http2_download_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_FALSE@ $(LIBDIR)/libcurl.la
-@USE_EXPLICIT_LIB_DEPS_TRUE@http2_download_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_TRUE@ $(LIBDIR)/libcurl.la
-http2_serverpush_SOURCES = http2-serverpush.c
-http2_serverpush_OBJECTS = http2-serverpush.$(OBJEXT)
-http2_serverpush_LDADD = $(LDADD)
-@USE_EXPLICIT_LIB_DEPS_FALSE@http2_serverpush_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_FALSE@ $(LIBDIR)/libcurl.la
-@USE_EXPLICIT_LIB_DEPS_TRUE@http2_serverpush_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_TRUE@ $(LIBDIR)/libcurl.la
-http2_upload_SOURCES = http2-upload.c
-http2_upload_OBJECTS = http2-upload.$(OBJEXT)
-http2_upload_LDADD = $(LDADD)
-@USE_EXPLICIT_LIB_DEPS_FALSE@http2_upload_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_FALSE@ $(LIBDIR)/libcurl.la
-@USE_EXPLICIT_LIB_DEPS_TRUE@http2_upload_DEPENDENCIES = \
-@USE_EXPLICIT_LIB_DEPS_TRUE@ $(LIBDIR)/libcurl.la
httpcustomheader_SOURCES = httpcustomheader.c
httpcustomheader_OBJECTS = httpcustomheader.$(OBJEXT)
httpcustomheader_LDADD = $(LDADD)
@@ -734,7 +703,6 @@ SOURCES = 10-at-a-time.c anyauthput.c certinfo.c chkspeed.c \
cookie_interface.c debug.c externalsocket.c fileupload.c \
fopen.c ftp-wildcard.c ftpget.c ftpgetinfo.c ftpgetresp.c \
ftpsget.c ftpupload.c getinfo.c getinmemory.c http-post.c \
- http2-download.c http2-serverpush.c http2-upload.c \
httpcustomheader.c httpput.c https.c imap-append.c imap-copy.c \
imap-create.c imap-delete.c imap-examine.c imap-fetch.c \
imap-list.c imap-lsub.c imap-multi.c imap-noop.c imap-search.c \
@@ -751,7 +719,6 @@ DIST_SOURCES = 10-at-a-time.c anyauthput.c certinfo.c chkspeed.c \
cookie_interface.c debug.c externalsocket.c fileupload.c \
fopen.c ftp-wildcard.c ftpget.c ftpgetinfo.c ftpgetresp.c \
ftpsget.c ftpupload.c getinfo.c getinmemory.c http-post.c \
- http2-download.c http2-serverpush.c http2-upload.c \
httpcustomheader.c httpput.c https.c imap-append.c imap-copy.c \
imap-create.c imap-delete.c imap-examine.c imap-fetch.c \
imap-list.c imap-lsub.c imap-multi.c imap-noop.c imap-search.c \
@@ -788,8 +755,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(top_srcdir)/depcomp README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -848,7 +813,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -903,7 +868,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -920,6 +884,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -1026,6 +991,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/examples/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign docs/examples/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -1034,7 +1000,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -1126,18 +1092,6 @@ http-post$(EXEEXT): $(http_post_OBJECTS) $(http_post_DEPENDENCIES) $(EXTRA_http_
@rm -f http-post$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(http_post_OBJECTS) $(http_post_LDADD) $(LIBS)
-http2-download$(EXEEXT): $(http2_download_OBJECTS) $(http2_download_DEPENDENCIES) $(EXTRA_http2_download_DEPENDENCIES)
- @rm -f http2-download$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(http2_download_OBJECTS) $(http2_download_LDADD) $(LIBS)
-
-http2-serverpush$(EXEEXT): $(http2_serverpush_OBJECTS) $(http2_serverpush_DEPENDENCIES) $(EXTRA_http2_serverpush_DEPENDENCIES)
- @rm -f http2-serverpush$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(http2_serverpush_OBJECTS) $(http2_serverpush_LDADD) $(LIBS)
-
-http2-upload$(EXEEXT): $(http2_upload_OBJECTS) $(http2_upload_DEPENDENCIES) $(EXTRA_http2_upload_DEPENDENCIES)
- @rm -f http2-upload$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(http2_upload_OBJECTS) $(http2_upload_LDADD) $(LIBS)
-
httpcustomheader$(EXEEXT): $(httpcustomheader_OBJECTS) $(httpcustomheader_DEPENDENCIES) $(EXTRA_httpcustomheader_DEPENDENCIES)
@rm -f httpcustomheader$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(httpcustomheader_OBJECTS) $(httpcustomheader_LDADD) $(LIBS)
@@ -1370,9 +1324,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getinfo.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getinmemory.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http-post.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http2-download.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http2-serverpush.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/http2-upload.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/httpcustomheader.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/httpput.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/https.Po@am__quote@
@@ -1660,8 +1611,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Makefile.inc provides the check_PROGRAMS and COMPLICATED_EXAMPLES defines
diff --git a/docs/examples/Makefile.inc b/docs/examples/Makefile.inc
index b2161300b..6c8df8e2e 100644
--- a/docs/examples/Makefile.inc
+++ b/docs/examples/Makefile.inc
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -31,8 +31,7 @@ check_PROGRAMS = 10-at-a-time anyauthput cookie_interface debug fileupload \
pop3-dele pop3-top pop3-stat pop3-noop pop3-ssl pop3-tls pop3-multi \
imap-list imap-lsub imap-fetch imap-store imap-append imap-examine \
imap-search imap-create imap-delete imap-copy imap-noop imap-ssl \
- imap-tls imap-multi url2file sftpget ftpsget postinmemory http2-download \
- http2-upload http2-serverpush
+ imap-tls imap-multi url2file sftpget ftpsget postinmemory
# These examples require external dependencies that may not be commonly
# available on POSIX systems, so don't bother attempting to compile them here.
diff --git a/docs/examples/Makefile.m32 b/docs/examples/Makefile.m32
index 7be640c1e..f607013c2 100644
--- a/docs/examples/Makefile.m32
+++ b/docs/examples/Makefile.m32
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2011, 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
@@ -21,7 +21,7 @@
###########################################################################
#
## Makefile for building curl examples with MingW (GCC-3.2 or later)
-## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4)
+## and optionally OpenSSL (0.9.8), libssh2 (1.3), zlib (1.2.5), librtmp (2.3)
##
## Usage: mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...]
## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-spi-winidn
@@ -38,23 +38,23 @@ ZLIB_PATH = ../../../zlib-1.2.8
endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../../openssl-1.0.2a
+OPENSSL_PATH = ../../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../../libssh2-1.5.0
+LIBSSH2_PATH = ../../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your librtmp package.
ifndef LIBRTMP_PATH
-LIBRTMP_PATH = ../../../librtmp-2.4
+LIBRTMP_PATH = ../../../librtmp-2.3
endif
# Edit the path below to point to the base of your libidn package.
ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../../libidn-1.32
+LIBIDN_PATH = ../../../libidn-1.18
endif
# Edit the path below to point to the base of your MS IDN package.
# Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1
-# https://www.microsoft.com/en-us/download/details.aspx?id=734
+# http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ad6158d7-ddba-416a-9109-07607425a815
ifndef WINIDN_PATH
WINIDN_PATH = ../../../Microsoft IDN Mitigation APIs
endif
@@ -62,10 +62,6 @@ endif
ifndef LDAP_SDK
LDAP_SDK = c:/novell/ndk/cldapsdk/win32
endif
-# Edit the path below to point to the base of your nghttp2 package.
-ifndef NGHTTP2_PATH
-NGHTTP2_PATH = ../../../nghttp2-1.0.0
-endif
PROOT = ../..
@@ -76,24 +72,14 @@ endif
# Edit the var below to set to your architecture or set environment var.
ifndef ARCH
-ifeq ($(findstring x86_64,$(shell $(CC) -dumpmachine)),x86_64)
-ARCH = w64
-else
-ARCH = w32
-endif
+ARCH = w32
endif
CC = $(CROSSPREFIX)gcc
CFLAGS = -g -O2 -Wall
CFLAGS += -fno-strict-aliasing
ifeq ($(ARCH),w64)
-CFLAGS += -m64 -D_AMD64_
-LDFLAGS += -m64
-RCFLAGS += -F pe-x86-64
-else
-CFLAGS += -m32
-LDFLAGS += -m32
-RCFLAGS += -F pe-i386
+CFLAGS += -D_AMD64_
endif
# comment LDFLAGS below to keep debug info
LDFLAGS = -s
@@ -172,12 +158,9 @@ ifeq ($(findstring -metalink,$(CFG)),-metalink)
METALINK = 1
endif
ifeq ($(findstring -winssl,$(CFG)),-winssl)
-WINSSL = 1
+SCHANNEL = 1
SSPI = 1
endif
-ifeq ($(findstring -nghttp2,$(CFG)),-nghttp2)
-NGHTTP2 = 1
-endif
INCLUDES = -I. -I$(PROOT) -I$(PROOT)/include -I$(PROOT)/lib
@@ -201,10 +184,6 @@ ifdef RTMP
CFLAGS += -DUSE_LIBRTMP
curl_LDADD += -L"$(LIBRTMP_PATH)/librtmp" -lrtmp -lwinmm
endif
-ifdef NGHTTP2
- CFLAGS += -DUSE_NGHTTP2
- curl_LDADD += -L"$(NGHTTP2_PATH)/lib" -lnghttp2
-endif
ifdef SSH2
CFLAGS += -DUSE_LIBSSH2 -DHAVE_LIBSSH2_H
curl_LDADD += -L"$(LIBSSH2_PATH)/win32" -lssh2
@@ -225,7 +204,7 @@ ifdef SSL
ifndef DYN
OPENSSL_LIBS += -lgdi32 -lcrypt32
endif
- CFLAGS += -DUSE_OPENSSL
+ CFLAGS += -DUSE_SSLEAY
curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
endif
ifdef ZLIB
@@ -244,7 +223,7 @@ endif
endif
ifdef SSPI
CFLAGS += -DUSE_WINDOWS_SSPI
- ifdef WINSSL
+ ifdef SCHANNEL
CFLAGS += -DUSE_SCHANNEL
endif
endif
diff --git a/docs/examples/Makefile.netware b/docs/examples/Makefile.netware
index 2d85e736a..3fd6b3e77 100644
--- a/docs/examples/Makefile.netware
+++ b/docs/examples/Makefile.netware
@@ -19,12 +19,12 @@ endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../../openssl-1.0.2a
+OPENSSL_PATH = ../../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../../libssh2-1.5.0
+LIBSSH2_PATH = ../../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your axTLS package.
@@ -34,12 +34,12 @@ endif
# Edit the path below to point to the base of your libidn package.
ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../../libidn-1.32
+LIBIDN_PATH = ../../../libidn-1.18
endif
# Edit the path below to point to the base of your librtmp package.
ifndef LIBRTMP_PATH
-LIBRTMP_PATH = ../../../librtmp-2.4
+LIBRTMP_PATH = ../../../librtmp-2.3
endif
# Edit the path below to point to the base of your fbopenssl package.
diff --git a/docs/examples/anyauthput.c b/docs/examples/anyauthput.c
index 2962645b9..b89dca2e1 100644
--- a/docs/examples/anyauthput.c
+++ b/docs/examples/anyauthput.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -19,11 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * HTTP PUT upload with authentiction using "any" method. libcurl picks the
- * one the server supports/wants.
- * </DESC>
- */
#include <stdio.h>
#include <fcntl.h>
#ifdef WIN32
diff --git a/docs/examples/asiohiper.cpp b/docs/examples/asiohiper.cpp
index ff4134856..eb5cd0386 100644
--- a/docs/examples/asiohiper.cpp
+++ b/docs/examples/asiohiper.cpp
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -20,11 +20,11 @@
*
***************************************************************************/
-/* <DESC>
- * demonstrate the use of multi socket interface with boost::asio
- * </DESC>
- */
/*
+ * file: asiohiper.cpp
+ * Example program to demonstrate the use of multi socket interface
+ * with boost::asio
+ *
* This program is in c++ and uses boost::asio instead of libevent/libev.
* Requires boost::asio, boost::bind and boost::system
*
diff --git a/docs/examples/cacertinmem.c b/docs/examples/cacertinmem.c
index 67fd382b1..30a5153a8 100644
--- a/docs/examples/cacertinmem.c
+++ b/docs/examples/cacertinmem.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,11 +19,17 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * CA cert in memory with OpenSSL to get a HTTPS page.
- * </DESC>
+/* Example using a "in core" PEM certificate to retrieve a https page.
+ * Written by Theo Borm
*/
+/* on a netBSD system with OPENSSL& LIBCURL installed from
+ * pkgsrc (using default paths) this program can be compiled using:
+ * gcc -I/usr/pkg/include -L/usr/pkg/lib -lcurl -Wl,-R/usr/pkg/lib -lssl
+ * -lcrypto -lz -o curlcacerttest curlcacerttest.c
+ * on other operating systems you may want to change paths to headers
+ * and libraries
+*/
#include <openssl/ssl.h>
#include <curl/curl.h>
#include <stdio.h>
diff --git a/docs/examples/certinfo.c b/docs/examples/certinfo.c
index 7ec70ee1c..ac0109b07 100644
--- a/docs/examples/certinfo.c
+++ b/docs/examples/certinfo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Extract lots of TLS certificate info.
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
diff --git a/docs/examples/chkspeed.c b/docs/examples/chkspeed.c
index bae8ea6b8..31949b892 100644
--- a/docs/examples/chkspeed.c
+++ b/docs/examples/chkspeed.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Show transfer timing info after download completes.
- * </DESC>
- */
/* Example source code to show how the callback function can be used to
* download data into a chunk of memory instead of storing it in a file.
* After successful download we use curl_easy_getinfo() calls to get the
diff --git a/docs/examples/cookie_interface.c b/docs/examples/cookie_interface.c
index b67051c79..2e7c66db2 100644
--- a/docs/examples/cookie_interface.c
+++ b/docs/examples/cookie_interface.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -19,10 +19,7 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Import and export cookies with COOKIELIST.
- * </DESC>
- */
+/* This example shows usage of simple cookie interface. */
#include <stdio.h>
#include <string.h>
@@ -99,12 +96,7 @@ main(void)
return 1;
}
- /* HTTP-header style cookie. If you use the Set-Cookie format and don't
- specify a domain then the cookie is sent for any domain and will not be
- modified, likely not what you intended. Starting in 7.43.0 any-domain
- cookies will not be exported either. For more information refer to the
- CURLOPT_COOKIELIST documentation.
- */
+ /* HTTP-header style cookie */
snprintf(nline, sizeof(nline),
"Set-Cookie: OLD_PREF=3d141414bf4209321; "
"expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com");
diff --git a/docs/examples/curlgtk.c b/docs/examples/curlgtk.c
index df6b419f2..8cb9914c6 100644
--- a/docs/examples/curlgtk.c
+++ b/docs/examples/curlgtk.c
@@ -5,12 +5,9 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (c) 2000 David Odin (aka DindinX) for MandrakeSoft
- */
-/* <DESC>
- * use the libcurl in a gtk-threaded application
- * </DESC>
*/
+/* Copyright (c) 2000 David Odin (aka DindinX) for MandrakeSoft */
+/* an attempt to use the curl library in concert with a gtk-threaded application */
#include <stdio.h>
#include <gtk/gtk.h>
diff --git a/docs/examples/curlx.c b/docs/examples/curlx.c
index 9bfb0cbd8..89d5f407b 100644
--- a/docs/examples/curlx.c
+++ b/docs/examples/curlx.c
@@ -9,10 +9,7 @@
certificate presented during ssl session establishment.
*/
-/* <DESC>
- * demonstrates use of SSL context callback, requires OpenSSL
- * </DESC>
- */
+
/*
* Copyright (c) 2003 The OpenEvidence Project. All rights reserved.
@@ -493,7 +490,7 @@ int main(int argc, char **argv) {
BIO_printf(p.errorbio,"the response has a correct mimetype : %s\n",
response);
else
- BIO_printf(p.errorbio,"the response doesn\'t have an acceptable "
+ BIO_printf(p.errorbio,"the reponse doesn\'t has an acceptable "
"mime type, it is %s instead of %s\n",
response,mimetypeaccept);
}
diff --git a/docs/examples/debug.c b/docs/examples/debug.c
index 6baab4405..36dd80d70 100644
--- a/docs/examples/debug.c
+++ b/docs/examples/debug.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Show how CURLOPT_DEBUGFUNCTION can be used.
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
diff --git a/docs/examples/evhiperfifo.c b/docs/examples/evhiperfifo.c
index 5a60c8d2c..e03801d8c 100644
--- a/docs/examples/evhiperfifo.c
+++ b/docs/examples/evhiperfifo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * multi socket interface together with libev
- * </DESC>
- */
/* Example application source code using the multi socket interface to
* download many files at once.
*
diff --git a/docs/examples/externalsocket.c b/docs/examples/externalsocket.c
index cae5ccc72..5486d1255 100644
--- a/docs/examples/externalsocket.c
+++ b/docs/examples/externalsocket.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,9 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * An example demonstrating how an application can pass in a custom
+/*
+ * This is an example demonstrating how an application can pass in a custom
* socket to libcurl to use. This example also handles the connect itself.
- * </DESC>
*/
#include <stdio.h>
#include <string.h>
diff --git a/docs/examples/fileupload.c b/docs/examples/fileupload.c
index b695a2a61..665eca0af 100644
--- a/docs/examples/fileupload.c
+++ b/docs/examples/fileupload.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Upload to a file:// URL
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
#include <sys/stat.h>
diff --git a/docs/examples/fopen.c b/docs/examples/fopen.c
index de9ce19a6..3d2a81773 100644
--- a/docs/examples/fopen.c
+++ b/docs/examples/fopen.c
@@ -42,10 +42,6 @@
*
* This example requires libcurl 7.9.7 or later.
*/
-/* <DESC>
- * implements an fopen() abstraction allowing reading from URLs
- * </DESC>
- */
#include <stdio.h>
#include <string.h>
@@ -112,7 +108,7 @@ static size_t write_callback(char *buffer,
size=rembuff;
}
else {
- /* realloc succeeded increase buffer size*/
+ /* realloc suceeded increase buffer size*/
url->buffer_len+=size - rembuff;
url->buffer=newbuff;
}
@@ -135,7 +131,7 @@ static int fill_buffer(URL_FILE *file, size_t want)
CURLMcode mc; /* curl_multi_fdset() return code */
/* only attempt to fill buffer if transactions still running and buffer
- * doesn't exceed required size already
+ * doesnt exceed required size already
*/
if((!file->still_running) || (file->buffer_pos > want))
return 0;
@@ -209,12 +205,14 @@ static int fill_buffer(URL_FILE *file, size_t want)
}
/* use to remove want bytes from the front of a files buffer */
-static int use_buffer(URL_FILE *file, size_t want)
+static int use_buffer(URL_FILE *file,int want)
{
/* sort out buffer */
if((file->buffer_pos - want) <=0) {
/* ditch buffer - write will recreate */
- free(file->buffer);
+ if(file->buffer)
+ free(file->buffer);
+
file->buffer=NULL;
file->buffer_pos=0;
file->buffer_len=0;
@@ -233,7 +231,7 @@ static int use_buffer(URL_FILE *file, size_t want)
URL_FILE *url_fopen(const char *url,const char *operation)
{
/* this code could check for URLs or types in the 'url' and
- basically use the real fopen() for standard files */
+ basicly use the real fopen() for standard files */
URL_FILE *file;
(void)operation;
@@ -304,7 +302,9 @@ int url_fclose(URL_FILE *file)
break;
}
- free(file->buffer);/* free any allocated buffer space */
+ if(file->buffer)
+ free(file->buffer);/* free any allocated buffer space */
+
free(file);
return ret;
@@ -379,7 +379,7 @@ char *url_fgets(char *ptr, size_t size, URL_FILE *file)
switch(file->type) {
case CFTYPE_FILE:
- ptr = fgets(ptr, (int)size, file->handle.file);
+ ptr = fgets(ptr,size,file->handle.file);
break;
case CFTYPE_CURL:
@@ -435,7 +435,9 @@ void url_rewind(URL_FILE *file)
curl_multi_add_handle(multi_handle, file->handle.curl);
/* ditch buffer - write will recreate - resets stream pos*/
- free(file->buffer);
+ if(file->buffer)
+ free(file->buffer);
+
file->buffer=NULL;
file->buffer_pos=0;
file->buffer_len=0;
@@ -455,7 +457,7 @@ int main(int argc, char *argv[])
URL_FILE *handle;
FILE *outf;
- size_t nread;
+ int nread;
char buffer[256];
const char *url;
@@ -503,7 +505,7 @@ int main(int argc, char *argv[])
}
do {
- nread = url_fread(buffer, 1, sizeof(buffer), handle);
+ nread = url_fread(buffer, 1,sizeof(buffer), handle);
fwrite(buffer,1,nread,outf);
} while(nread);
diff --git a/docs/examples/ftp-wildcard.c b/docs/examples/ftp-wildcard.c
index ae0855cb8..d175ddfdc 100644
--- a/docs/examples/ftp-wildcard.c
+++ b/docs/examples/ftp-wildcard.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * FTP wildcard pattern matching
- * </DESC>
- */
#include <curl/curl.h>
#include <stdio.h>
diff --git a/docs/examples/ftpget.c b/docs/examples/ftpget.c
index 8ec7d7336..bcb42bb30 100644
--- a/docs/examples/ftpget.c
+++ b/docs/examples/ftpget.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -23,9 +23,11 @@
#include <curl/curl.h>
-/* <DESC>
- * Get a single file from an FTP server.
- * </DESC>
+/*
+ * This is an example showing how to get a single file from an FTP server.
+ * It delays the actual destination file creation until the first write
+ * callback so that it won't create an empty file in case the remote file
+ * doesn't exist or something else fails.
*/
struct FtpFile {
@@ -51,7 +53,7 @@ int main(void)
CURL *curl;
CURLcode res;
struct FtpFile ftpfile={
- "curl.tar.gz", /* name to store the file as if successful */
+ "curl.tar.gz", /* name to store the file as if succesful */
NULL
};
diff --git a/docs/examples/ftpgetinfo.c b/docs/examples/ftpgetinfo.c
index baea7d8e1..dfdcf78b7 100644
--- a/docs/examples/ftpgetinfo.c
+++ b/docs/examples/ftpgetinfo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -24,9 +24,9 @@
#include <curl/curl.h>
-/* <DESC>
- * Checks a single file's size and mtime from an FTP server.
- * </DESC>
+/*
+ * This is an example showing how to check a single file's size and mtime
+ * from an FTP server.
*/
static size_t throw_away(void *ptr, size_t size, size_t nmemb, void *data)
diff --git a/docs/examples/ftpgetresp.c b/docs/examples/ftpgetresp.c
index 76c512bb3..dcb296adf 100644
--- a/docs/examples/ftpgetresp.c
+++ b/docs/examples/ftpgetresp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -23,11 +23,13 @@
#include <curl/curl.h>
-/* <DESC>
- * Similar to ftpget.c but also stores the received response-lines
+/*
+ * Similar to ftpget.c but this also stores the received response-lines
* in a separate file using our own callback!
- * </DESC>
+ *
+ * This functionality was introduced in libcurl 7.9.3.
*/
+
static size_t
write_response(void *ptr, size_t size, size_t nmemb, void *data)
{
diff --git a/docs/examples/ftpsget.c b/docs/examples/ftpsget.c
index 2c1fd3e99..0cfe32024 100644
--- a/docs/examples/ftpsget.c
+++ b/docs/examples/ftpsget.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -24,9 +24,11 @@
#include <curl/curl.h>
-/* <DESC>
- * Get a single file from an FTPS server.
- * </DESC>
+/*
+ * This is an example showing how to get a single file from an FTPS server.
+ * It delays the actual destination file creation until the first write
+ * callback so that it won't create an empty file in case the remote file
+ * doesn't exist or something else fails.
*/
struct FtpFile {
@@ -53,7 +55,7 @@ int main(void)
CURL *curl;
CURLcode res;
struct FtpFile ftpfile={
- "yourfile.bin", /* name to store the file as if successful */
+ "yourfile.bin", /* name to store the file as if succesful */
NULL
};
diff --git a/docs/examples/ftpupload.c b/docs/examples/ftpupload.c
index b4fc79f99..e79f8d842 100644
--- a/docs/examples/ftpupload.c
+++ b/docs/examples/ftpupload.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -33,10 +33,11 @@
#include <unistd.h>
#endif
-/* <DESC>
- * Performs an FTP upload and renames the file just after a successful
- * transfer.
- * </DESC>
+/*
+ * This example shows an FTP upload, with a rename of the file just after
+ * a successful upload.
+ *
+ * Example based on source code provided by Erick Nuwendam. Thanks!
*/
#define LOCAL_FILE "/tmp/uploadthis.txt"
diff --git a/docs/examples/ftpuploadresume.c b/docs/examples/ftpuploadresume.c
index 1a24f7cbd..55b8986c7 100644
--- a/docs/examples/ftpuploadresume.c
+++ b/docs/examples/ftpuploadresume.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,9 +19,13 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Upload to FTP, resuming failed transfers.
- * </DESC>
+/* Upload to FTP, resuming failed transfers
+ *
+ * Compile for MinGW like this:
+ * gcc -Wall -pedantic -std=c99 ftpuploadwithresume.c -o ftpuploadresume.exe
+ * -lcurl -lmsvcr70
+ *
+ * Written by Philip Bock
*/
#include <stdlib.h>
diff --git a/docs/examples/getinfo.c b/docs/examples/getinfo.c
index 7f578df43..acbe1e1af 100644
--- a/docs/examples/getinfo.c
+++ b/docs/examples/getinfo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Use getinfo to get content-type after completed transfer.
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
@@ -31,14 +27,18 @@ int main(void)
CURL *curl;
CURLcode res;
+ /* http://curl.haxx.se/libcurl/c/curl_easy_init.html */
curl = curl_easy_init();
if(curl) {
+ /* http://curl.haxx.se/libcurl/c/curl_easy_setopt.html#CURLOPTURL */
curl_easy_setopt(curl, CURLOPT_URL, "http://www.example.com/");
+ /* http://curl.haxx.se/libcurl/c/curl_easy_perform.html */
res = curl_easy_perform(curl);
if(CURLE_OK == res) {
char *ct;
/* ask for the content-type */
+ /* http://curl.haxx.se/libcurl/c/curl_easy_getinfo.html */
res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct);
if((CURLE_OK == res) && ct)
@@ -46,6 +46,7 @@ int main(void)
}
/* always cleanup */
+ /* http://curl.haxx.se/libcurl/c/curl_easy_cleanup.html */
curl_easy_cleanup(curl);
}
return 0;
diff --git a/docs/examples/getinmemory.c b/docs/examples/getinmemory.c
index 2cf201e96..1608ec551 100644
--- a/docs/examples/getinmemory.c
+++ b/docs/examples/getinmemory.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -19,10 +19,8 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Shows how the write callback function can be used to download data into a
- * chunk of memory instead of storing it in a file.
- * </DESC>
+/* Example source code to show how the callback function can be used to
+ * download data into a chunk of memory instead of storing it in a file.
*/
#include <stdio.h>
@@ -36,6 +34,7 @@ struct MemoryStruct {
size_t size;
};
+
static size_t
WriteMemoryCallback(void *contents, size_t size, size_t nmemb, void *userp)
{
@@ -56,6 +55,7 @@ WriteMemoryCallback(void *contents, size_t size, size_t nmemb, void *userp)
return realsize;
}
+
int main(void)
{
CURL *curl_handle;
@@ -106,7 +106,8 @@ int main(void)
/* cleanup curl stuff */
curl_easy_cleanup(curl_handle);
- free(chunk.memory);
+ if(chunk.memory)
+ free(chunk.memory);
/* we're done with libcurl, so clean it up */
curl_global_cleanup();
diff --git a/docs/examples/ghiper.c b/docs/examples/ghiper.c
index 0621d3eef..7571ffa3d 100644
--- a/docs/examples/ghiper.c
+++ b/docs/examples/ghiper.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * multi socket API usage together with with glib2
- * </DESC>
- */
/* Example application source code using the multi socket interface to
* download many files at once.
*
diff --git a/docs/examples/hiperfifo.c b/docs/examples/hiperfifo.c
index 63614f7d4..84035aa2c 100644
--- a/docs/examples/hiperfifo.c
+++ b/docs/examples/hiperfifo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * multi socket API usage with libevent 2
- * </DESC>
- */
/* Example application source code using the multi socket interface to
download many files at once.
diff --git a/docs/examples/href_extractor.c b/docs/examples/href_extractor.c
index f2c324e3c..c11325d2e 100644
--- a/docs/examples/href_extractor.c
+++ b/docs/examples/href_extractor.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012, 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
@@ -20,13 +20,13 @@
*
***************************************************************************/
-/* <DESC>
- * Uses the "Streaming HTML parser" to extract the href pieces in a streaming
- * manner from a downloaded HTML.
- * </DESC>
- */
/*
- * The HTML parser is found at http://code.google.com/p/htmlstreamparser/
+ * This example uses the "Streaming HTML parser" to extract the href pieces in
+ * a streaming manner from a downloaded HTML. Kindly donated by Michał
+ * Kowalczyk.
+ *
+ * The parser is found at
+ * http://code.google.com/p/htmlstreamparser/
*/
#include <stdio.h>
diff --git a/docs/examples/htmltidy.c b/docs/examples/htmltidy.c
index c1d9508da..a36e331bf 100644
--- a/docs/examples/htmltidy.c
+++ b/docs/examples/htmltidy.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,12 +19,13 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Download a document and use libtidy to parse the HTML.
- * </DESC>
- */
-/*
+/* Download a document and use libtidy to parse the HTML.
+ * Written by Jeff Pohlmeyer
+ *
* LibTidy => http://tidy.sourceforge.net
+ *
+ * gcc -Wall -I/usr/local/include tidycurl.c -lcurl -ltidy -o tidycurl
+ *
*/
#include <stdio.h>
diff --git a/docs/examples/htmltitle.cpp b/docs/examples/htmltitle.cpp
index d91b505aa..ab89bb6a7 100644
--- a/docs/examples/htmltitle.cpp
+++ b/docs/examples/htmltitle.cpp
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,8 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Get a web page, extract the title with libxml.
- * </DESC>
- */
+// Get a web page, parse it with libxml.
+//
// Written by Lars Nilsson
//
// GNU C++ compile command line suggestion (edit paths accordingly):
diff --git a/docs/examples/http-post.c b/docs/examples/http-post.c
index a213c398f..f1975b1ec 100644
--- a/docs/examples/http-post.c
+++ b/docs/examples/http-post.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * simple HTTP POST using the easy interface
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
diff --git a/docs/examples/http2-download.c b/docs/examples/http2-download.c
deleted file mode 100644
index 8b0650734..000000000
--- a/docs/examples/http2-download.c
+++ /dev/null
@@ -1,292 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-/* <DESC>
- * Multiplexed HTTP/2 downloads over a single connection
- * </DESC>
- */
-#include <stdio.h>
-#include <stdlib.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-#ifndef CURLPIPE_MULTIPLEX
-/* This little trick will just make sure that we don't enable pipelining for
- libcurls old enough to not have this symbol. It is _not_ defined to zero in
- a recent libcurl header. */
-#define CURLPIPE_MULTIPLEX 0
-#endif
-
-#define NUM_HANDLES 1000
-
-void *curl_hnd[NUM_HANDLES];
-int num_transfers;
-
-/* a handle to number lookup, highly ineffective when we do many
- transfers... */
-static int hnd2num(CURL *hnd)
-{
- int i;
- for(i=0; i< num_transfers; i++) {
- if(curl_hnd[i] == hnd)
- return i;
- }
- return 0; /* weird, but just a fail-safe */
-}
-
-static
-void dump(const char *text, int num, unsigned char *ptr, size_t size,
- char nohex)
-{
- size_t i;
- size_t c;
-
- unsigned int width=0x10;
-
- if(nohex)
- /* without the hex output, we can fit more on screen */
- width = 0x40;
-
- fprintf(stderr, "%d %s, %ld bytes (0x%lx)\n",
- num, text, (long)size, (long)size);
-
- for(i=0; i<size; i+= width) {
-
- fprintf(stderr, "%4.4lx: ", (long)i);
-
- if(!nohex) {
- /* hex not disabled, show it */
- for(c = 0; c < width; c++)
- if(i+c < size)
- fprintf(stderr, "%02x ", ptr[i+c]);
- else
- fputs(" ", stderr);
- }
-
- for(c = 0; (c < width) && (i+c < size); c++) {
- /* check for 0D0A; if found, skip past and start a new line of output */
- if (nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
- i+=(c+2-width);
- break;
- }
- fprintf(stderr, "%c",
- (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
- /* check again for 0D0A, to avoid an extra \n if it's at width */
- if (nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
- i+=(c+3-width);
- break;
- }
- }
- fputc('\n', stderr); /* newline */
- }
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
- char *data, size_t size,
- void *userp)
-{
- const char *text;
- int num = hnd2num(handle);
- (void)handle; /* prevent compiler warning */
- (void)userp;
- switch (type) {
- case CURLINFO_TEXT:
- fprintf(stderr, "== %d Info: %s", num, data);
- default: /* in case a new one is introduced to shock us */
- return 0;
-
- case CURLINFO_HEADER_OUT:
- text = "=> Send header";
- break;
- case CURLINFO_DATA_OUT:
- text = "=> Send data";
- break;
- case CURLINFO_SSL_DATA_OUT:
- text = "=> Send SSL data";
- break;
- case CURLINFO_HEADER_IN:
- text = "<= Recv header";
- break;
- case CURLINFO_DATA_IN:
- text = "<= Recv data";
- break;
- case CURLINFO_SSL_DATA_IN:
- text = "<= Recv SSL data";
- break;
- }
-
- dump(text, num, (unsigned char *)data, size, 1);
- return 0;
-}
-
-static void setup(CURL *hnd, int num)
-{
- FILE *out;
- char filename[128];
-
- sprintf(filename, "dl-%d", num);
-
- out = fopen(filename, "wb");
-
- /* write to this file */
- curl_easy_setopt(hnd, CURLOPT_WRITEDATA, out);
-
- /* set the same URL */
- curl_easy_setopt(hnd, CURLOPT_URL, "https://localhost:8443/index.html");
-
- /* send it verbose for max debuggaility */
- curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
- curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace);
-
- /* HTTP/2 please */
- curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0);
-
- /* we use a self-signed test server, skip verification during debugging */
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L);
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L);
-
-#if (CURLPIPE_MULTIPLEX > 0)
- /* wait for pipe connection to confirm */
- curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L);
-#endif
-
- curl_hnd[num] = hnd;
-}
-
-/*
- * Simply download two files over HTTP/2, using the same physical connection!
- */
-int main(int argc, char **argv)
-{
- CURL *easy[NUM_HANDLES];
- CURLM *multi_handle;
- int i;
- int still_running; /* keep number of running handles */
-
- if(argc > 1)
- /* if given a number, do that many transfers */
- num_transfers = atoi(argv[1]);
-
- if(!num_transfers || (num_transfers > NUM_HANDLES))
- num_transfers = 3; /* a suitable low default */
-
- /* init a multi stack */
- multi_handle = curl_multi_init();
-
- for(i=0; i<num_transfers; i++) {
- easy[i] = curl_easy_init();
- /* set options */
- setup(easy[i], i);
-
- /* add the individual transfer */
- curl_multi_add_handle(multi_handle, easy[i]);
- }
-
- curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX);
-
- /* we start some action by calling perform right away */
- curl_multi_perform(multi_handle, &still_running);
-
- do {
- struct timeval timeout;
- int rc; /* select() return code */
- CURLMcode mc; /* curl_multi_fdset() return code */
-
- fd_set fdread;
- fd_set fdwrite;
- fd_set fdexcep;
- int maxfd = -1;
-
- long curl_timeo = -1;
-
- FD_ZERO(&fdread);
- FD_ZERO(&fdwrite);
- FD_ZERO(&fdexcep);
-
- /* set a suitable timeout to play around with */
- timeout.tv_sec = 1;
- timeout.tv_usec = 0;
-
- curl_multi_timeout(multi_handle, &curl_timeo);
- if(curl_timeo >= 0) {
- timeout.tv_sec = curl_timeo / 1000;
- if(timeout.tv_sec > 1)
- timeout.tv_sec = 1;
- else
- timeout.tv_usec = (curl_timeo % 1000) * 1000;
- }
-
- /* get file descriptors from the transfers */
- mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
- if(mc != CURLM_OK)
- {
- fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
- break;
- }
-
- /* On success the value of maxfd is guaranteed to be >= -1. We call
- select(maxfd + 1, ...); specially in case of (maxfd == -1) there are
- no fds ready yet so we call select(0, ...) --or Sleep() on Windows--
- to sleep 100ms, which is the minimum suggested value in the
- curl_multi_fdset() doc. */
-
- if(maxfd == -1) {
-#ifdef _WIN32
- Sleep(100);
- rc = 0;
-#else
- /* Portable sleep for platforms other than Windows. */
- struct timeval wait = { 0, 100 * 1000 }; /* 100ms */
- rc = select(0, NULL, NULL, NULL, &wait);
-#endif
- }
- else {
- /* Note that on some platforms 'timeout' may be modified by select().
- If you need access to the original value save a copy beforehand. */
- rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
- }
-
- switch(rc) {
- case -1:
- /* select error */
- break;
- case 0:
- default:
- /* timeout or readable/writable sockets */
- curl_multi_perform(multi_handle, &still_running);
- break;
- }
- } while(still_running);
-
- curl_multi_cleanup(multi_handle);
-
- for(i=0; i<num_transfers; i++)
- curl_easy_cleanup(easy[i]);
-
- return 0;
-}
diff --git a/docs/examples/http2-serverpush.c b/docs/examples/http2-serverpush.c
deleted file mode 100644
index 53c491b3a..000000000
--- a/docs/examples/http2-serverpush.c
+++ /dev/null
@@ -1,317 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-/* <DESC>
- * HTTP/2 server push
- * </DESC>
- */
-#include <stdio.h>
-#include <stdlib.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-#ifndef CURLPIPE_MULTIPLEX
-#error "too old libcurl, can't do HTTP/2 server push!"
-#endif
-
-static
-void dump(const char *text, unsigned char *ptr, size_t size,
- char nohex)
-{
- size_t i;
- size_t c;
-
- unsigned int width=0x10;
-
- if(nohex)
- /* without the hex output, we can fit more on screen */
- width = 0x40;
-
- fprintf(stderr, "%s, %ld bytes (0x%lx)\n",
- text, (long)size, (long)size);
-
- for(i=0; i<size; i+= width) {
-
- fprintf(stderr, "%4.4lx: ", (long)i);
-
- if(!nohex) {
- /* hex not disabled, show it */
- for(c = 0; c < width; c++)
- if(i+c < size)
- fprintf(stderr, "%02x ", ptr[i+c]);
- else
- fputs(" ", stderr);
- }
-
- for(c = 0; (c < width) && (i+c < size); c++) {
- /* check for 0D0A; if found, skip past and start a new line of output */
- if (nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
- i+=(c+2-width);
- break;
- }
- fprintf(stderr, "%c",
- (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
- /* check again for 0D0A, to avoid an extra \n if it's at width */
- if (nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
- i+=(c+3-width);
- break;
- }
- }
- fputc('\n', stderr); /* newline */
- }
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
- char *data, size_t size,
- void *userp)
-{
- const char *text;
- (void)handle; /* prevent compiler warning */
- (void)userp;
- switch (type) {
- case CURLINFO_TEXT:
- fprintf(stderr, "== Info: %s", data);
- default: /* in case a new one is introduced to shock us */
- return 0;
-
- case CURLINFO_HEADER_OUT:
- text = "=> Send header";
- break;
- case CURLINFO_DATA_OUT:
- text = "=> Send data";
- break;
- case CURLINFO_SSL_DATA_OUT:
- text = "=> Send SSL data";
- break;
- case CURLINFO_HEADER_IN:
- text = "<= Recv header";
- break;
- case CURLINFO_DATA_IN:
- text = "<= Recv data";
- break;
- case CURLINFO_SSL_DATA_IN:
- text = "<= Recv SSL data";
- break;
- }
-
- dump(text, (unsigned char *)data, size, 1);
- return 0;
-}
-
-static void setup(CURL *hnd)
-{
- FILE *out = fopen("dl", "wb");
-
- /* write to this file */
- curl_easy_setopt(hnd, CURLOPT_WRITEDATA, out);
-
- /* set the same URL */
- curl_easy_setopt(hnd, CURLOPT_URL, "https://localhost:8443/index.html");
-
- /* send it verbose for max debuggaility */
- curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
- curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace);
-
- /* HTTP/2 please */
- curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0);
-
- /* we use a self-signed test server, skip verification during debugging */
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L);
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L);
-
-#if (CURLPIPE_MULTIPLEX > 0)
- /* wait for pipe connection to confirm */
- curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L);
-#endif
-
-}
-
-/* called when there's an incoming push */
-static int server_push_callback(CURL *parent,
- CURL *easy,
- size_t num_headers,
- struct curl_pushheaders *headers,
- void *userp)
-{
- char *headp;
- size_t i;
- int *transfers = (int *)userp;
- char filename[128];
- FILE *out;
- static unsigned int count = 0;
-
- (void)parent; /* we have no use for this */
-
- sprintf(filename, "push%u", count++);
-
- /* here's a new stream, save it in a new file for each new push */
- out = fopen(filename, "wb");
-
- /* write to this file */
- curl_easy_setopt(easy, CURLOPT_WRITEDATA, out);
-
- fprintf(stderr, "**** push callback approves stream %u, got %d headers!\n",
- count, (int)num_headers);
-
- for(i=0; i<num_headers; i++) {
- headp = curl_pushheader_bynum(headers, i);
- fprintf(stderr, "**** header %u: %s\n", (int)i, headp);
- }
-
- headp = curl_pushheader_byname(headers, ":path");
- if(headp) {
- fprintf(stderr, "**** The PATH is %s\n", headp /* skip :path + colon */ );
- }
-
- (*transfers)++; /* one more */
- return CURL_PUSH_OK;
-}
-
-
-/*
- * Download a file over HTTP/2, take care of server push.
- */
-int main(void)
-{
- CURL *easy;
- CURLM *multi_handle;
- int still_running; /* keep number of running handles */
- int transfers=1; /* we start with one */
- struct CURLMsg *m;
-
- /* init a multi stack */
- multi_handle = curl_multi_init();
-
- easy = curl_easy_init();
-
- /* set options */
- setup(easy);
-
- /* add the easy transfer */
- curl_multi_add_handle(multi_handle, easy);
-
- curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX);
- curl_multi_setopt(multi_handle, CURLMOPT_PUSHFUNCTION, server_push_callback);
- curl_multi_setopt(multi_handle, CURLMOPT_PUSHDATA, &transfers);
-
- /* we start some action by calling perform right away */
- curl_multi_perform(multi_handle, &still_running);
-
- do {
- struct timeval timeout;
- int rc; /* select() return code */
- CURLMcode mc; /* curl_multi_fdset() return code */
-
- fd_set fdread;
- fd_set fdwrite;
- fd_set fdexcep;
- int maxfd = -1;
-
- long curl_timeo = -1;
-
- FD_ZERO(&fdread);
- FD_ZERO(&fdwrite);
- FD_ZERO(&fdexcep);
-
- /* set a suitable timeout to play around with */
- timeout.tv_sec = 1;
- timeout.tv_usec = 0;
-
- curl_multi_timeout(multi_handle, &curl_timeo);
- if(curl_timeo >= 0) {
- timeout.tv_sec = curl_timeo / 1000;
- if(timeout.tv_sec > 1)
- timeout.tv_sec = 1;
- else
- timeout.tv_usec = (curl_timeo % 1000) * 1000;
- }
-
- /* get file descriptors from the transfers */
- mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
- if(mc != CURLM_OK) {
- fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
- break;
- }
-
- /* On success the value of maxfd is guaranteed to be >= -1. We call
- select(maxfd + 1, ...); specially in case of (maxfd == -1) there are
- no fds ready yet so we call select(0, ...) --or Sleep() on Windows--
- to sleep 100ms, which is the minimum suggested value in the
- curl_multi_fdset() doc. */
-
- if(maxfd == -1) {
-#ifdef _WIN32
- Sleep(100);
- rc = 0;
-#else
- /* Portable sleep for platforms other than Windows. */
- struct timeval wait = { 0, 100 * 1000 }; /* 100ms */
- rc = select(0, NULL, NULL, NULL, &wait);
-#endif
- }
- else {
- /* Note that on some platforms 'timeout' may be modified by select().
- If you need access to the original value save a copy beforehand. */
- rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
- }
-
- switch(rc) {
- case -1:
- /* select error */
- break;
- case 0:
- default:
- /* timeout or readable/writable sockets */
- curl_multi_perform(multi_handle, &still_running);
- break;
- }
-
- /*
- * A little caution when doing server push is that libcurl itself has
- * created and added one or more easy handles but we need to clean them up
- * when we are done.
- */
-
- do {
- int msgq = 0;;
- m = curl_multi_info_read(multi_handle, &msgq);
- if(m && (m->msg == CURLMSG_DONE)) {
- CURL *e = m->easy_handle;
- transfers--;
- curl_multi_remove_handle(multi_handle, e);
- curl_easy_cleanup(e);
- }
- } while(m);
-
- } while(transfers); /* as long as we have transfers going */
-
- curl_multi_cleanup(multi_handle);
-
-
- return 0;
-}
diff --git a/docs/examples/http2-upload.c b/docs/examples/http2-upload.c
deleted file mode 100644
index 2ec55059a..000000000
--- a/docs/examples/http2-upload.c
+++ /dev/null
@@ -1,356 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-/* <DESC>
- * Multiplexed HTTP/2 uploads over a single connection
- * </DESC>
- */
-#include <stdio.h>
-#include <stdlib.h>
-#include <fcntl.h>
-#include <sys/stat.h>
-
-/* somewhat unix-specific */
-#include <sys/time.h>
-#include <unistd.h>
-
-/* curl stuff */
-#include <curl/curl.h>
-
-#ifndef CURLPIPE_MULTIPLEX
-/* This little trick will just make sure that we don't enable pipelining for
- libcurls old enough to not have this symbol. It is _not_ defined to zero in
- a recent libcurl header. */
-#define CURLPIPE_MULTIPLEX 0
-#endif
-
-#define NUM_HANDLES 1000
-
-void *curl_hnd[NUM_HANDLES];
-int num_transfers;
-
-/* a handle to number lookup, highly ineffective when we do many
- transfers... */
-static int hnd2num(CURL *hnd)
-{
- int i;
- for(i=0; i< num_transfers; i++) {
- if(curl_hnd[i] == hnd)
- return i;
- }
- return 0; /* weird, but just a fail-safe */
-}
-
-static
-void dump(const char *text, int num, unsigned char *ptr, size_t size,
- char nohex)
-{
- size_t i;
- size_t c;
- unsigned int width=0x10;
-
- if(nohex)
- /* without the hex output, we can fit more on screen */
- width = 0x40;
-
- fprintf(stderr, "%d %s, %ld bytes (0x%lx)\n",
- num, text, (long)size, (long)size);
-
- for(i=0; i<size; i+= width) {
-
- fprintf(stderr, "%4.4lx: ", (long)i);
-
- if(!nohex) {
- /* hex not disabled, show it */
- for(c = 0; c < width; c++)
- if(i+c < size)
- fprintf(stderr, "%02x ", ptr[i+c]);
- else
- fputs(" ", stderr);
- }
-
- for(c = 0; (c < width) && (i+c < size); c++) {
- /* check for 0D0A; if found, skip past and start a new line of output */
- if (nohex && (i+c+1 < size) && ptr[i+c]==0x0D && ptr[i+c+1]==0x0A) {
- i+=(c+2-width);
- break;
- }
- fprintf(stderr, "%c",
- (ptr[i+c]>=0x20) && (ptr[i+c]<0x80)?ptr[i+c]:'.');
- /* check again for 0D0A, to avoid an extra \n if it's at width */
- if (nohex && (i+c+2 < size) && ptr[i+c+1]==0x0D && ptr[i+c+2]==0x0A) {
- i+=(c+3-width);
- break;
- }
- }
- fputc('\n', stderr); /* newline */
- }
-}
-
-static
-int my_trace(CURL *handle, curl_infotype type,
- char *data, size_t size,
- void *userp)
-{
- char timebuf[20];
- const char *text;
- int num = hnd2num(handle);
- static time_t epoch_offset;
- static int known_offset;
- struct timeval tv;
- time_t secs;
- struct tm *now;
-
- (void)handle; /* prevent compiler warning */
- (void)userp;
-
- gettimeofday(&tv, NULL);
- if(!known_offset) {
- epoch_offset = time(NULL) - tv.tv_sec;
- known_offset = 1;
- }
- secs = epoch_offset + tv.tv_sec;
- now = localtime(&secs); /* not thread safe but we don't care */
- snprintf(timebuf, sizeof(timebuf), "%02d:%02d:%02d.%06ld",
- now->tm_hour, now->tm_min, now->tm_sec, (long)tv.tv_usec);
-
- switch (type) {
- case CURLINFO_TEXT:
- fprintf(stderr, "%s [%d] Info: %s", timebuf, num, data);
- default: /* in case a new one is introduced to shock us */
- return 0;
-
- case CURLINFO_HEADER_OUT:
- text = "=> Send header";
- break;
- case CURLINFO_DATA_OUT:
- text = "=> Send data";
- break;
- case CURLINFO_SSL_DATA_OUT:
- text = "=> Send SSL data";
- break;
- case CURLINFO_HEADER_IN:
- text = "<= Recv header";
- break;
- case CURLINFO_DATA_IN:
- text = "<= Recv data";
- break;
- case CURLINFO_SSL_DATA_IN:
- text = "<= Recv SSL data";
- break;
- }
-
- dump(text, num, (unsigned char *)data, size, 1);
- return 0;
-}
-
-struct input {
- FILE *in;
- size_t bytes_read; /* count up */
- CURL *hnd;
-};
-
-static size_t read_callback(void *ptr, size_t size, size_t nmemb, void *userp)
-{
- struct input *i = userp;
- size_t retcode = fread(ptr, size, nmemb, i->in);
- i->bytes_read += retcode;
- return retcode;
-}
-
-struct input indata[NUM_HANDLES];
-
-static void setup(CURL *hnd, int num, const char *upload)
-{
- FILE *out;
- char url[256];
- char filename[128];
- struct stat file_info;
- curl_off_t uploadsize;
-
- sprintf(filename, "dl-%d", num);
- out = fopen(filename, "wb");
-
- sprintf(url, "https://localhost:8443/upload-%d", num);
-
- /* get the file size of the local file */
- stat(upload, &file_info);
- uploadsize = file_info.st_size;
-
- indata[num].in = fopen(upload, "rb");
- indata[num].hnd = hnd;
-
- /* write to this file */
- curl_easy_setopt(hnd, CURLOPT_WRITEDATA, out);
-
- /* we want to use our own read function */
- curl_easy_setopt(hnd, CURLOPT_READFUNCTION, read_callback);
- /* read from this file */
- curl_easy_setopt(hnd, CURLOPT_READDATA, &indata[num]);
- /* provide the size of the upload */
- curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, uploadsize);
-
- /* send in the URL to store the upload as */
- curl_easy_setopt(hnd, CURLOPT_URL, url);
-
- /* upload please */
- curl_easy_setopt(hnd, CURLOPT_UPLOAD, 1L);
-
- /* send it verbose for max debuggaility */
- curl_easy_setopt(hnd, CURLOPT_VERBOSE, 1L);
- curl_easy_setopt(hnd, CURLOPT_DEBUGFUNCTION, my_trace);
-
- /* HTTP/2 please */
- curl_easy_setopt(hnd, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2_0);
-
- /* we use a self-signed test server, skip verification during debugging */
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYPEER, 0L);
- curl_easy_setopt(hnd, CURLOPT_SSL_VERIFYHOST, 0L);
-
-#if (CURLPIPE_MULTIPLEX > 0)
- /* wait for pipe connection to confirm */
- curl_easy_setopt(hnd, CURLOPT_PIPEWAIT, 1L);
-#endif
-
- curl_hnd[num] = hnd;
-}
-
-/*
- * Upload all files over HTTP/2, using the same physical connection!
- */
-int main(int argc, char **argv)
-{
- CURL *easy[NUM_HANDLES];
- CURLM *multi_handle;
- int i;
- int still_running; /* keep number of running handles */
- const char *filename = "index.html";
-
- if(argc > 1)
- /* if given a number, do that many transfers */
- num_transfers = atoi(argv[1]);
-
- if(argc > 2)
- /* if given a file name, upload this! */
- filename = argv[2];
-
- if(!num_transfers || (num_transfers > NUM_HANDLES))
- num_transfers = 3; /* a suitable low default */
-
- /* init a multi stack */
- multi_handle = curl_multi_init();
-
- for(i=0; i<num_transfers; i++) {
- easy[i] = curl_easy_init();
- /* set options */
- setup(easy[i], i, filename);
-
- /* add the individual transfer */
- curl_multi_add_handle(multi_handle, easy[i]);
- }
-
- curl_multi_setopt(multi_handle, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX);
-
- /* We do HTTP/2 so let's stick to one connection per host */
- curl_multi_setopt(multi_handle, CURLMOPT_MAX_HOST_CONNECTIONS, 1L);
-
- /* we start some action by calling perform right away */
- curl_multi_perform(multi_handle, &still_running);
-
- do {
- struct timeval timeout;
- int rc; /* select() return code */
- CURLMcode mc; /* curl_multi_fdset() return code */
-
- fd_set fdread;
- fd_set fdwrite;
- fd_set fdexcep;
- int maxfd = -1;
-
- long curl_timeo = -1;
-
- FD_ZERO(&fdread);
- FD_ZERO(&fdwrite);
- FD_ZERO(&fdexcep);
-
- /* set a suitable timeout to play around with */
- timeout.tv_sec = 1;
- timeout.tv_usec = 0;
-
- curl_multi_timeout(multi_handle, &curl_timeo);
- if(curl_timeo >= 0) {
- timeout.tv_sec = curl_timeo / 1000;
- if(timeout.tv_sec > 1)
- timeout.tv_sec = 1;
- else
- timeout.tv_usec = (curl_timeo % 1000) * 1000;
- }
-
- /* get file descriptors from the transfers */
- mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
- if(mc != CURLM_OK)
- {
- fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
- break;
- }
-
- /* On success the value of maxfd is guaranteed to be >= -1. We call
- select(maxfd + 1, ...); specially in case of (maxfd == -1) there are
- no fds ready yet so we call select(0, ...) --or Sleep() on Windows--
- to sleep 100ms, which is the minimum suggested value in the
- curl_multi_fdset() doc. */
-
- if(maxfd == -1) {
-#ifdef _WIN32
- Sleep(100);
- rc = 0;
-#else
- /* Portable sleep for platforms other than Windows. */
- struct timeval wait = { 0, 100 * 1000 }; /* 100ms */
- rc = select(0, NULL, NULL, NULL, &wait);
-#endif
- }
- else {
- /* Note that on some platforms 'timeout' may be modified by select().
- If you need access to the original value save a copy beforehand. */
- rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
- }
-
- switch(rc) {
- case -1:
- /* select error */
- break;
- case 0:
- default:
- /* timeout or readable/writable sockets */
- curl_multi_perform(multi_handle, &still_running);
- break;
- }
- } while(still_running);
-
- curl_multi_cleanup(multi_handle);
-
- for(i=0; i<num_transfers; i++)
- curl_easy_cleanup(easy[i]);
-
- return 0;
-}
diff --git a/docs/examples/httpcustomheader.c b/docs/examples/httpcustomheader.c
index e742db969..8542ead53 100644
--- a/docs/examples/httpcustomheader.c
+++ b/docs/examples/httpcustomheader.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * HTTP request with custom modified, removed and added headers
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
diff --git a/docs/examples/httpput.c b/docs/examples/httpput.c
index 71191164f..2e9dc2170 100644
--- a/docs/examples/httpput.c
+++ b/docs/examples/httpput.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * HTTP PUT with easy interface and read callback
- * </DESC>
- */
#include <stdio.h>
#include <fcntl.h>
#include <sys/stat.h>
diff --git a/docs/examples/https.c b/docs/examples/https.c
index 2d5909eaa..bd9a33ba6 100644
--- a/docs/examples/https.c
+++ b/docs/examples/https.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Simple HTTPS GET
- * </DESC>
- */
#include <stdio.h>
#include <curl/curl.h>
diff --git a/docs/examples/imap-append.c b/docs/examples/imap-append.c
index fb58b4b23..fa531a8c5 100644
--- a/docs/examples/imap-append.c
+++ b/docs/examples/imap-append.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * Simple IMAP APPEND use
- * </DESC>
- */
#include <stdio.h>
#include <string.h>
#include <curl/curl.h>
diff --git a/docs/examples/imap-ssl.c b/docs/examples/imap-ssl.c
index eec9b0e31..e42ff3922 100644
--- a/docs/examples/imap-ssl.c
+++ b/docs/examples/imap-ssl.c
@@ -60,7 +60,7 @@ int main(void)
* they have mentioned in their server certificate's commonName (or
* subjectAltName) fields, libcurl will refuse to connect. You can skip
* this check, but this will make the connection less secure. */
-#ifdef SKIP_HOSTNAME_VERIFICATION
+#ifdef SKIP_HOSTNAME_VERFICATION
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
#endif
diff --git a/docs/examples/multi-debugcallback.c b/docs/examples/multi-debugcallback.c
index 6769024ac..5fb86bea1 100644
--- a/docs/examples/multi-debugcallback.c
+++ b/docs/examples/multi-debugcallback.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,7 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * multi interface and debug callback
- * </DESC>
- */
+/* This is an example showing the multi interface and the debug callback. */
#include <stdio.h>
#include <string.h>
diff --git a/docs/examples/multi-double.c b/docs/examples/multi-double.c
index d652e7ca8..0d8d0de4f 100644
--- a/docs/examples/multi-double.c
+++ b/docs/examples/multi-double.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * multi interface code doing two parallel HTTP transfers
- * </DESC>
- */
#include <stdio.h>
#include <string.h>
diff --git a/docs/examples/multi-post.c b/docs/examples/multi-post.c
index 115dc0ceb..f511d66fd 100644
--- a/docs/examples/multi-post.c
+++ b/docs/examples/multi-post.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,11 +19,8 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * using the multi interface to do a multipart formpost without blocking
- * </DESC>
- */
-
+/* This is an example application source code using the multi interface
+ * to do a multipart formpost without "blocking". */
#include <stdio.h>
#include <string.h>
#include <sys/time.h>
@@ -67,7 +64,7 @@ int main(void)
curl = curl_easy_init();
multi_handle = curl_multi_init();
- /* initialize custom header list (stating that Expect: 100-continue is not
+ /* initalize custom header list (stating that Expect: 100-continue is not
wanted */
headerlist = curl_slist_append(headerlist, buf);
if(curl && multi_handle) {
diff --git a/docs/examples/multi-single.c b/docs/examples/multi-single.c
index 1df944427..47e23f5a9 100644
--- a/docs/examples/multi-single.c
+++ b/docs/examples/multi-single.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -19,10 +19,7 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * using the multi interface to do a single download
- * </DESC>
- */
+/* This is a very simple example using the multi interface. */
#include <stdio.h>
#include <string.h>
@@ -79,12 +76,12 @@ int main(void)
if(mc != CURLM_OK)
{
- fprintf(stderr, "curl_multi_wait() failed, code %d.\n", mc);
+ fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
break;
}
/* 'numfds' being zero means either a timeout or no file descriptors to
- wait for. Try timeout on first occurrence, then assume no file
+ wait for. Try timeout on first occurance, then assume no file
descriptors and no file descriptors to wait for means wait for 100
milliseconds. */
diff --git a/docs/examples/multi-uv.c b/docs/examples/multi-uv.c
index 3d6e6de72..0c0f8a2b9 100644
--- a/docs/examples/multi-uv.c
+++ b/docs/examples/multi-uv.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -20,10 +20,6 @@
*
***************************************************************************/
-/* <DESC>
- * multi_socket API using libuv
- * </DESC>
- */
/* Example application code using the multi socket interface to download
multiple files at once, but instead of using curl_multi_perform and
curl_multi_wait, which uses select(), we use libuv.
diff --git a/docs/examples/multithread.c b/docs/examples/multithread.c
index 23d5d8aad..831a07467 100644
--- a/docs/examples/multithread.c
+++ b/docs/examples/multithread.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,8 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * A multi-threaded example that uses pthreads to fetch several files at once
- * </DESC>
- */
+/* A multi-threaded example that uses pthreads extensively to fetch
+ * X remote files at once */
#include <stdio.h>
#include <pthread.h>
diff --git a/docs/examples/opensslthreadlock.c b/docs/examples/opensslthreadlock.c
index 03ec1f29b..ad54f08ea 100644
--- a/docs/examples/opensslthreadlock.c
+++ b/docs/examples/opensslthreadlock.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,17 +19,16 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * one way to set the necessary OpenSSL locking callbacks if you want to do
- * multi-threaded transfers with HTTPS/FTPS with libcurl built to use OpenSSL.
- * </DESC>
- */
-/*
+/* Example source code to show one way to set the necessary OpenSSL locking
+ * callbacks if you want to do multi-threaded transfers with HTTPS/FTPS with
+ * libcurl built to use OpenSSL.
+ *
* This is not a complete stand-alone example.
*
* Author: Jeremy Brown
*/
+
#include <stdio.h>
#include <pthread.h>
#include <openssl/err.h>
diff --git a/docs/examples/persistant.c b/docs/examples/persistant.c
index 3e6af18f2..0917dfdb8 100644
--- a/docs/examples/persistant.c
+++ b/docs/examples/persistant.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -19,10 +19,6 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * re-using handles to do HTTP persistent connections
- * </DESC>
- */
#include <stdio.h>
#include <unistd.h>
#include <curl/curl.h>
diff --git a/docs/examples/pop3-multi.c b/docs/examples/pop3-multi.c
index 6df09a263..435308623 100644
--- a/docs/examples/pop3-multi.c
+++ b/docs/examples/pop3-multi.c
@@ -69,7 +69,7 @@ int main(void)
curl_easy_setopt(curl, CURLOPT_USERNAME, "user");
curl_easy_setopt(curl, CURLOPT_PASSWORD, "secret");
- /* This will retrieve message 1 from the user's mailbox */
+ /* This will retreive message 1 from the user's mailbox */
curl_easy_setopt(curl, CURLOPT_URL, "pop3://pop.example.com/1");
/* Tell the multi stack about our easy handle */
diff --git a/docs/examples/pop3-retr.c b/docs/examples/pop3-retr.c
index b5113fa99..e5a50f22d 100644
--- a/docs/examples/pop3-retr.c
+++ b/docs/examples/pop3-retr.c
@@ -39,7 +39,7 @@ int main(void)
curl_easy_setopt(curl, CURLOPT_USERNAME, "user");
curl_easy_setopt(curl, CURLOPT_PASSWORD, "secret");
- /* This will retrieve message 1 from the user's mailbox */
+ /* This will retreive message 1 from the user's mailbox */
curl_easy_setopt(curl, CURLOPT_URL, "pop3://pop.example.com/1");
/* Perform the retr */
diff --git a/docs/examples/pop3-ssl.c b/docs/examples/pop3-ssl.c
index 0bbec8d9d..45e0054b6 100644
--- a/docs/examples/pop3-ssl.c
+++ b/docs/examples/pop3-ssl.c
@@ -40,7 +40,7 @@ int main(void)
curl_easy_setopt(curl, CURLOPT_USERNAME, "user");
curl_easy_setopt(curl, CURLOPT_PASSWORD, "secret");
- /* This will retrieve message 1 from the user's mailbox. Note the use of
+ /* This will retreive message 1 from the user's mailbox. Note the use of
* pop3s:// rather than pop3:// to request a SSL based connection. */
curl_easy_setopt(curl, CURLOPT_URL, "pop3s://pop.example.com/1");
@@ -60,7 +60,7 @@ int main(void)
* they have mentioned in their server certificate's commonName (or
* subjectAltName) fields, libcurl will refuse to connect. You can skip
* this check, but this will make the connection less secure. */
-#ifdef SKIP_HOSTNAME_VERIFICATION
+#ifdef SKIP_HOSTNAME_VERFICATION
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
#endif
diff --git a/docs/examples/pop3-tls.c b/docs/examples/pop3-tls.c
index 58278a1e2..812d89b8b 100644
--- a/docs/examples/pop3-tls.c
+++ b/docs/examples/pop3-tls.c
@@ -40,7 +40,7 @@ int main(void)
curl_easy_setopt(curl, CURLOPT_USERNAME, "user");
curl_easy_setopt(curl, CURLOPT_PASSWORD, "secret");
- /* This will retrieve message 1 from the user's mailbox */
+ /* This will retreive message 1 from the user's mailbox */
curl_easy_setopt(curl, CURLOPT_URL, "pop3://pop.example.com/1");
/* In this example, we'll start with a plain text connection, and upgrade
diff --git a/docs/examples/post-callback.c b/docs/examples/post-callback.c
index a2f0427fe..3e1cfb060 100644
--- a/docs/examples/post-callback.c
+++ b/docs/examples/post-callback.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -19,10 +19,8 @@
* KIND, either express or implied.
*
***************************************************************************/
-/* <DESC>
- * An example source code that issues a HTTP POST and we provide the actual
+/* An example source code that issues a HTTP POST and we provide the actual
* data through a read callback.
- * </DESC>
*/
#include <stdio.h>
#include <string.h>
diff --git a/docs/examples/postinmemory.c b/docs/examples/postinmemory.c
index 3afac4b2f..cd2bd13fb 100644
--- a/docs/examples/postinmemory.c
+++ b/docs/examples/postinmemory.c
@@ -101,7 +101,8 @@ int main(void)
/* always cleanup */
curl_easy_cleanup(curl);
- free(chunk.memory);
+ if(chunk.memory)
+ free(chunk.memory);
/* we're done with libcurl, so clean it up */
curl_global_cleanup();
diff --git a/docs/examples/postit2.c b/docs/examples/postit2.c
index 88ea78c86..67dcc1330 100644
--- a/docs/examples/postit2.c
+++ b/docs/examples/postit2.c
@@ -73,7 +73,7 @@ int main(int argc, char *argv[])
CURLFORM_END);
curl = curl_easy_init();
- /* initialize custom header list (stating that Expect: 100-continue is not
+ /* initalize custom header list (stating that Expect: 100-continue is not
wanted */
headerlist = curl_slist_append(headerlist, buf);
if(curl) {
diff --git a/docs/examples/sftpget.c b/docs/examples/sftpget.c
index 434299dc0..8317462e9 100644
--- a/docs/examples/sftpget.c
+++ b/docs/examples/sftpget.c
@@ -58,7 +58,7 @@ int main(void)
CURL *curl;
CURLcode res;
struct FtpFile ftpfile={
- "yourfile.bin", /* name to store the file as if successful */
+ "yourfile.bin", /* name to store the file as if succesful */
NULL
};
diff --git a/docs/examples/smtp-mail.c b/docs/examples/smtp-mail.c
index eea90b8a8..af4d1b65b 100644
--- a/docs/examples/smtp-mail.c
+++ b/docs/examples/smtp-mail.c
@@ -24,7 +24,7 @@
#include <curl/curl.h>
/* This is a simple example showing how to send mail using libcurl's SMTP
- * capabilities. For an example of using the multi interface please see
+ * capabilities. For an exmaple of using the multi interface please see
* smtp-multi.c.
*
* Note that this example requires libcurl 7.20.0 or above.
diff --git a/docs/examples/smtp-ssl.c b/docs/examples/smtp-ssl.c
index a774403fc..9a68a7ff9 100644
--- a/docs/examples/smtp-ssl.c
+++ b/docs/examples/smtp-ssl.c
@@ -111,7 +111,7 @@ int main(void)
* they have mentioned in their server certificate's commonName (or
* subjectAltName) fields, libcurl will refuse to connect. You can skip
* this check, but this will make the connection less secure. */
-#ifdef SKIP_HOSTNAME_VERIFICATION
+#ifdef SKIP_HOSTNAME_VERFICATION
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
#endif
diff --git a/docs/examples/xmlstream.c b/docs/examples/xmlstream.c
index 819344502..4d67f98eb 100644
--- a/docs/examples/xmlstream.c
+++ b/docs/examples/xmlstream.c
@@ -120,7 +120,7 @@ int main(void)
XML_SetElementHandler(parser, startElement, endElement);
XML_SetCharacterDataHandler(parser, characterDataHandler);
- /* Initialize a libcurl handle. */
+ /* Initalize a libcurl handle. */
curl_global_init(CURL_GLOBAL_ALL ^ CURL_GLOBAL_SSL);
curl_handle = curl_easy_init();
curl_easy_setopt(curl_handle, CURLOPT_URL, "http://www.w3schools.com/xml/simple.xml");
diff --git a/docs/libcurl/ABI b/docs/libcurl/ABI
index c7c914202..ef0caa6f2 100644
--- a/docs/libcurl/ABI
+++ b/docs/libcurl/ABI
@@ -1,55 +1,63 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ libcurl's binary interface
+
ABI - Application Binary Interface
-==================================
+----------------------------------
- "ABI" describes the low-level interface between an application program and a
- library. Calling conventions, function arguments, return values, struct
- sizes/defines and more.
+ "ABI" describes the low-level interface between an application program and a
+ library. Calling conventions, function arguments, return values, struct
+ sizes/defines and more.
- [Wikipedia has a longer description](https://en.wikipedia.org/wiki/Application_binary_interface)
+ [Wikipedia has a longer description](http://en.wikipedia.org/wiki/Application_binary_interface)
Upgrades
--------
- In the vast majority of all cases, a typical libcurl upgrade does not break
- the ABI at all. Your application can remain using libcurl just as before,
- only with less bugs and possibly with added new features. You need to read
- the release notes, and if they mention an ABI break/soname bump, you may have
- to verify that your application still builds fine and uses libcurl as it now
- is defined to work.
+ In the vast majority of all cases, a typical libcurl upgrade does not break
+ the ABI at all. Your application can remain using libcurl just as before,
+ only with less bugs and possibly with added new features. You need to read
+ the release notes, and if they mention an ABI break/soname bump, you may
+ have to verify that your application still builds fine and uses libcurl as
+ it now is defined to work.
Version Numbers
---------------
- In libcurl land, you really can't tell by the libcurl version number if that
- libcurl is binary compatible or not with another libcurl version.
+ In libcurl land, you really can't tell by the libcurl version number if that
+ libcurl is binary compatible or not with another libcurl version.
Soname Bumps
------------
- Whenever there are changes done to the library that will cause an ABI
- breakage, that may require your application to get attention or possibly be
- changed to adhere to new things, we will bump the soname. Then the library
- will get a different output name and thus can in fact be installed in
- parallel with an older installed lib (on most systems). Thus, old
- applications built against the previous ABI version will remain working and
- using the older lib, while newer applications build and use the newer one.
+ Whenever there are changes done to the library that will cause an ABI
+ breakage, that may require your application to get attention or possibly be
+ changed to adhere to new things, we will bump the soname. Then the library
+ will get a different output name and thus can in fact be installed in
+ parallel with an older installed lib (on most systems). Thus, old
+ applications built against the previous ABI version will remain working and
+ using the older lib, while newer applications build and use the newer one.
- During the first seven years of libcurl releases, there have only been four
- ABI breakages.
+ During the first seven years of libcurl releases, there have only been four
+ ABI breakages.
- We are determined to bump the SONAME as rarely as possible. Ideally, we
- never do it again.
+ We are determined to bump the SONAME as rarely as possible. Ideally, we
+ never do it again.
Downgrades
----------
- Going to an older libcurl version from one you're currently using can be a
- tricky thing. Mostly we add features and options to newer libcurls as that
- won't break ABI or hamper existing applications. This has the implication
- that going backwards may get you in a situation where you pick a libcurl that
- doesn't support the options your application needs. Or possibly you even
- downgrade so far so you cross an ABI break border and thus a different
- soname, and then your application may need to adapt to the modified ABI.
+ Going to an older libcurl version from one you're currently using can be a
+ tricky thing. Mostly we add features and options to newer libcurls as that
+ won't break ABI or hamper existing applications. This has the implication
+ that going backwards may get you in a situation where you pick a libcurl
+ that doesn't support the options your application needs. Or possibly you
+ even downgrade so far so you cross an ABI break border and thus a different
+ soname, and then your application may need to adapt to the modified ABI.
History
-------
diff --git a/docs/libcurl/Makefile.am b/docs/libcurl/Makefile.am
index 5456ee418..c47678b43 100644
--- a/docs/libcurl/Makefile.am
+++ b/docs/libcurl/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -29,19 +29,18 @@ man_MANS = curl_easy_cleanup.3 curl_easy_getinfo.3 curl_easy_init.3 \
curl_formadd.3 curl_formfree.3 curl_getdate.3 curl_getenv.3 \
curl_slist_append.3 curl_slist_free_all.3 curl_version.3 \
curl_version_info.3 curl_escape.3 curl_unescape.3 curl_free.3 \
- curl_strequal.3 curl_mprintf.3 curl_global_init.3 \
- curl_global_cleanup.3 curl_multi_add_handle.3 curl_multi_cleanup.3 \
- curl_multi_fdset.3 curl_multi_info_read.3 curl_multi_init.3 \
- curl_multi_perform.3 curl_multi_remove_handle.3 curl_share_cleanup.3 \
- curl_share_init.3 curl_share_setopt.3 libcurl.3 libcurl-easy.3 \
- libcurl-multi.3 libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3 \
+ curl_strequal.3 curl_mprintf.3 curl_global_init.3 curl_global_cleanup.3 \
+ curl_multi_add_handle.3 curl_multi_cleanup.3 curl_multi_fdset.3 \
+ curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3 \
+ curl_multi_remove_handle.3 curl_share_cleanup.3 curl_share_init.3 \
+ curl_share_setopt.3 libcurl.3 libcurl-easy.3 libcurl-multi.3 \
+ libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3 \
curl_multi_strerror.3 curl_share_strerror.3 curl_global_init_mem.3 \
libcurl-tutorial.3 curl_easy_reset.3 curl_easy_escape.3 \
curl_easy_unescape.3 curl_multi_setopt.3 curl_multi_socket.3 \
curl_multi_timeout.3 curl_formget.3 curl_multi_assign.3 \
curl_easy_pause.3 curl_easy_recv.3 curl_easy_send.3 \
- curl_multi_socket_action.3 curl_multi_wait.3 libcurl-symbols.3 \
- libcurl-thread.3
+ curl_multi_socket_action.3 curl_multi_wait.3
HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html \
curl_easy_init.html curl_easy_perform.html curl_easy_setopt.html \
@@ -61,43 +60,38 @@ HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html \
curl_easy_unescape.html curl_multi_setopt.html curl_multi_socket.html \
curl_multi_timeout.html curl_formget.html curl_multi_assign.html \
curl_easy_pause.html curl_easy_recv.html curl_easy_send.html \
- curl_multi_socket_action.html curl_multi_wait.html \
- libcurl-symbols.html libcurl-thread.html
+ curl_multi_socket_action.html curl_multi_wait.html
PDFPAGES = curl_easy_cleanup.pdf curl_easy_getinfo.pdf \
curl_easy_init.pdf curl_easy_perform.pdf curl_easy_setopt.pdf \
curl_easy_duphandle.pdf curl_formadd.pdf curl_formfree.pdf \
- curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf \
- curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf \
+ curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf \
+ curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf \
curl_escape.pdf curl_unescape.pdf curl_free.pdf curl_strequal.pdf \
curl_mprintf.pdf curl_global_init.pdf curl_global_cleanup.pdf \
curl_multi_add_handle.pdf curl_multi_cleanup.pdf curl_multi_fdset.pdf \
curl_multi_info_read.pdf curl_multi_init.pdf curl_multi_perform.pdf \
- curl_multi_remove_handle.pdf curl_share_cleanup.pdf \
- curl_share_init.pdf curl_share_setopt.pdf libcurl.pdf \
- libcurl-multi.pdf libcurl-easy.pdf libcurl-share.pdf \
- libcurl-errors.pdf curl_easy_strerror.pdf curl_multi_strerror.pdf \
- curl_share_strerror.pdf curl_global_init_mem.pdf libcurl-tutorial.pdf \
- curl_easy_reset.pdf curl_easy_escape.pdf curl_easy_unescape.pdf \
- curl_multi_setopt.pdf curl_multi_socket.pdf curl_multi_timeout.pdf \
- curl_formget.pdf curl_multi_assign.pdf curl_easy_pause.pdf \
- curl_easy_recv.pdf curl_easy_send.pdf curl_multi_socket_action.pdf \
- curl_multi_wait.pdf libcurl-symbols.pdf libcurl-thread.pdf
+ curl_multi_remove_handle.pdf curl_share_cleanup.pdf curl_share_init.pdf \
+ curl_share_setopt.pdf libcurl.pdf libcurl-multi.pdf libcurl-easy.pdf \
+ libcurl-share.pdf libcurl-errors.pdf curl_easy_strerror.pdf \
+ curl_multi_strerror.pdf curl_share_strerror.pdf \
+ curl_global_init_mem.pdf libcurl-tutorial.pdf curl_easy_reset.pdf \
+ curl_easy_escape.pdf curl_easy_unescape.pdf curl_multi_setopt.pdf \
+ curl_multi_socket.pdf curl_multi_timeout.pdf curl_formget.pdf \
+ curl_multi_assign.pdf curl_easy_pause.pdf curl_easy_recv.pdf \
+ curl_easy_send.pdf curl_multi_socket_action.pdf curl_multi_wait.pdf
m4macrodir = $(datadir)/aclocal
dist_m4macro_DATA = libcurl.m4
-CLEANFILES = $(HTMLPAGES) $(PDFPAGES) $(TESTS) libcurl-symbols.3
+CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
EXTRA_DIST = $(man_MANS) $(HTMLPAGES) index.html $(PDFPAGES) ABI \
- symbols-in-versions symbols.pl mksymbolsmanpage.pl
+ symbols-in-versions symbols.pl
MAN2HTML= roffit --mandir=. < $< >$@
SUFFIXES = .3 .html
-libcurl-symbols.3: $(srcdir)/symbols-in-versions $(srcdir)/mksymbolsmanpage.pl
- perl $(srcdir)/mksymbolsmanpage.pl < $(srcdir)/symbols-in-versions > $@
-
html: $(HTMLPAGES)
cd opts; make html
@@ -113,17 +107,3 @@ pdf: $(PDFPAGES)
ps2pdf $$foo.ps $@; \
rm $$foo.ps; \
echo "converted $< to $@")
-
-# Make sure each option man page is referenced in the main man page
-TESTS = check-easy check-multi
-LOG_COMPILER = $(PERL)
-# The test fails if the log file contains any text
-AM_LOG_FLAGS = -p -e 'die "$$_" if ($$_);'
-
-check-easy: $(srcdir)/curl_easy_setopt.3 $(srcdir)/opts/CURLOPT*.3
- OPTS="$$(ls $(srcdir)/opts/CURLOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
- for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_easy_setopt.3 >/dev/null || echo Missing $$opt; done > $@
-
-check-multi: $(srcdir)/curl_multi_setopt.3 $(srcdir)/opts/CURLMOPT*.3
- OPTS="$$(ls $(srcdir)/opts/CURLMOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
- for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_multi_setopt.3 >/dev/null || echo Missing $$opt; done > $@
diff --git a/docs/libcurl/Makefile.in b/docs/libcurl/Makefile.in
index 26b036cd5..7430e8194 100644
--- a/docs/libcurl/Makefile.in
+++ b/docs/libcurl/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -21,7 +21,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -37,17 +37,7 @@
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -111,6 +101,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = docs/libcurl
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs $(dist_m4macro_DATA)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -131,9 +123,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(dist_m4macro_DATA) \
- $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -205,7 +195,7 @@ am__recursive_targets = \
$(RECURSIVE_CLEAN_TARGETS) \
$(am__extra_recursive_targets)
AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
- check recheck distdir
+ distdir
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
# Read a list of newline-separated strings from the standard input,
# and print each of them once, without duplicates. Input order is
@@ -225,184 +215,7 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__tty_colors_dummy = \
- mgn= red= grn= lgn= blu= brg= std=; \
- am__color_tests=no
-am__tty_colors = { \
- $(am__tty_colors_dummy); \
- if test "X$(AM_COLOR_TESTS)" = Xno; then \
- am__color_tests=no; \
- elif test "X$(AM_COLOR_TESTS)" = Xalways; then \
- am__color_tests=yes; \
- elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \
- am__color_tests=yes; \
- fi; \
- if test $$am__color_tests = yes; then \
- red=''; \
- grn=''; \
- lgn=''; \
- blu=''; \
- mgn=''; \
- brg=''; \
- std=''; \
- fi; \
-}
-am__recheck_rx = ^[ ]*:recheck:[ ]*
-am__global_test_result_rx = ^[ ]*:global-test-result:[ ]*
-am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]*
-# A command that, given a newline-separated list of test names on the
-# standard input, print the name of the tests that are to be re-run
-# upon "make recheck".
-am__list_recheck_tests = $(AWK) '{ \
- recheck = 1; \
- while ((rc = (getline line < ($$0 ".trs"))) != 0) \
- { \
- if (rc < 0) \
- { \
- if ((getline line2 < ($$0 ".log")) < 0) \
- recheck = 0; \
- break; \
- } \
- else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \
- { \
- recheck = 0; \
- break; \
- } \
- else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \
- { \
- break; \
- } \
- }; \
- if (recheck) \
- print $$0; \
- close ($$0 ".trs"); \
- close ($$0 ".log"); \
-}'
-# A command that, given a newline-separated list of test names on the
-# standard input, create the global log from their .trs and .log files.
-am__create_global_log = $(AWK) ' \
-function fatal(msg) \
-{ \
- print "fatal: making $@: " msg | "cat >&2"; \
- exit 1; \
-} \
-function rst_section(header) \
-{ \
- print header; \
- len = length(header); \
- for (i = 1; i <= len; i = i + 1) \
- printf "="; \
- printf "\n\n"; \
-} \
-{ \
- copy_in_global_log = 1; \
- global_test_result = "RUN"; \
- while ((rc = (getline line < ($$0 ".trs"))) != 0) \
- { \
- if (rc < 0) \
- fatal("failed to read from " $$0 ".trs"); \
- if (line ~ /$(am__global_test_result_rx)/) \
- { \
- sub("$(am__global_test_result_rx)", "", line); \
- sub("[ ]*$$", "", line); \
- global_test_result = line; \
- } \
- else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \
- copy_in_global_log = 0; \
- }; \
- if (copy_in_global_log) \
- { \
- rst_section(global_test_result ": " $$0); \
- while ((rc = (getline line < ($$0 ".log"))) != 0) \
- { \
- if (rc < 0) \
- fatal("failed to read from " $$0 ".log"); \
- print line; \
- }; \
- printf "\n"; \
- }; \
- close ($$0 ".trs"); \
- close ($$0 ".log"); \
-}'
-# Restructured Text title.
-am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; }
-# Solaris 10 'make', and several other traditional 'make' implementations,
-# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it
-# by disabling -e (using the XSI extension "set +e") if it's set.
-am__sh_e_setup = case $$- in *e*) set +e;; esac
-# Default flags passed to test drivers.
-am__common_driver_flags = \
- --color-tests "$$am__color_tests" \
- --enable-hard-errors "$$am__enable_hard_errors" \
- --expect-failure "$$am__expect_failure"
-# To be inserted before the command running the test. Creates the
-# directory for the log if needed. Stores in $dir the directory
-# containing $f, in $tst the test, in $log the log. Executes the
-# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and
-# passes TESTS_ENVIRONMENT. Set up options for the wrapper that
-# will run the test scripts (or their associated LOG_COMPILER, if
-# thy have one).
-am__check_pre = \
-$(am__sh_e_setup); \
-$(am__vpath_adj_setup) $(am__vpath_adj) \
-$(am__tty_colors); \
-srcdir=$(srcdir); export srcdir; \
-case "$@" in \
- */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \
- *) am__odir=.;; \
-esac; \
-test "x$$am__odir" = x"." || test -d "$$am__odir" \
- || $(MKDIR_P) "$$am__odir" || exit $$?; \
-if test -f "./$$f"; then dir=./; \
-elif test -f "$$f"; then dir=; \
-else dir="$(srcdir)/"; fi; \
-tst=$$dir$$f; log='$@'; \
-if test -n '$(DISABLE_HARD_ERRORS)'; then \
- am__enable_hard_errors=no; \
-else \
- am__enable_hard_errors=yes; \
-fi; \
-case " $(XFAIL_TESTS) " in \
- *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \
- am__expect_failure=yes;; \
- *) \
- am__expect_failure=no;; \
-esac; \
-$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT)
-# A shell command to get the names of the tests scripts with any registered
-# extension removed (i.e., equivalently, the names of the test logs, with
-# the '.log' extension removed). The result is saved in the shell variable
-# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly,
-# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)",
-# since that might cause problem with VPATH rewrites for suffix-less tests.
-# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'.
-am__set_TESTS_bases = \
- bases='$(TEST_LOGS)'; \
- bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \
- bases=`echo $$bases`
-RECHECK_LOGS = $(TEST_LOGS)
-TEST_SUITE_LOG = test-suite.log
-TEST_EXTENSIONS = @EXEEXT@ .test
-LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
-LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS)
-am__set_b = \
- case '$@' in \
- */*) \
- case '$*' in \
- */*) b='$*';; \
- *) b=`echo '$@' | sed 's/\.log$$//'`; \
- esac;; \
- *) \
- b='$*';; \
- esac
-am__test_logs1 = $(TESTS:=.log)
-am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log)
-TEST_LOGS = $(am__test_logs2:.test.log=.log)
-TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver
-TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \
- $(TEST_LOG_FLAGS)
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/test-driver
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -486,7 +299,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -539,7 +352,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -556,6 +368,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -622,19 +435,18 @@ man_MANS = curl_easy_cleanup.3 curl_easy_getinfo.3 curl_easy_init.3 \
curl_formadd.3 curl_formfree.3 curl_getdate.3 curl_getenv.3 \
curl_slist_append.3 curl_slist_free_all.3 curl_version.3 \
curl_version_info.3 curl_escape.3 curl_unescape.3 curl_free.3 \
- curl_strequal.3 curl_mprintf.3 curl_global_init.3 \
- curl_global_cleanup.3 curl_multi_add_handle.3 curl_multi_cleanup.3 \
- curl_multi_fdset.3 curl_multi_info_read.3 curl_multi_init.3 \
- curl_multi_perform.3 curl_multi_remove_handle.3 curl_share_cleanup.3 \
- curl_share_init.3 curl_share_setopt.3 libcurl.3 libcurl-easy.3 \
- libcurl-multi.3 libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3 \
+ curl_strequal.3 curl_mprintf.3 curl_global_init.3 curl_global_cleanup.3 \
+ curl_multi_add_handle.3 curl_multi_cleanup.3 curl_multi_fdset.3 \
+ curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3 \
+ curl_multi_remove_handle.3 curl_share_cleanup.3 curl_share_init.3 \
+ curl_share_setopt.3 libcurl.3 libcurl-easy.3 libcurl-multi.3 \
+ libcurl-share.3 libcurl-errors.3 curl_easy_strerror.3 \
curl_multi_strerror.3 curl_share_strerror.3 curl_global_init_mem.3 \
libcurl-tutorial.3 curl_easy_reset.3 curl_easy_escape.3 \
curl_easy_unescape.3 curl_multi_setopt.3 curl_multi_socket.3 \
curl_multi_timeout.3 curl_formget.3 curl_multi_assign.3 \
curl_easy_pause.3 curl_easy_recv.3 curl_easy_send.3 \
- curl_multi_socket_action.3 curl_multi_wait.3 libcurl-symbols.3 \
- libcurl-thread.3
+ curl_multi_socket_action.3 curl_multi_wait.3
HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html \
curl_easy_init.html curl_easy_perform.html curl_easy_setopt.html \
@@ -654,47 +466,39 @@ HTMLPAGES = curl_easy_cleanup.html curl_easy_getinfo.html \
curl_easy_unescape.html curl_multi_setopt.html curl_multi_socket.html \
curl_multi_timeout.html curl_formget.html curl_multi_assign.html \
curl_easy_pause.html curl_easy_recv.html curl_easy_send.html \
- curl_multi_socket_action.html curl_multi_wait.html \
- libcurl-symbols.html libcurl-thread.html
+ curl_multi_socket_action.html curl_multi_wait.html
PDFPAGES = curl_easy_cleanup.pdf curl_easy_getinfo.pdf \
curl_easy_init.pdf curl_easy_perform.pdf curl_easy_setopt.pdf \
curl_easy_duphandle.pdf curl_formadd.pdf curl_formfree.pdf \
- curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf \
- curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf \
+ curl_getdate.pdf curl_getenv.pdf curl_slist_append.pdf \
+ curl_slist_free_all.pdf curl_version.pdf curl_version_info.pdf \
curl_escape.pdf curl_unescape.pdf curl_free.pdf curl_strequal.pdf \
curl_mprintf.pdf curl_global_init.pdf curl_global_cleanup.pdf \
curl_multi_add_handle.pdf curl_multi_cleanup.pdf curl_multi_fdset.pdf \
curl_multi_info_read.pdf curl_multi_init.pdf curl_multi_perform.pdf \
- curl_multi_remove_handle.pdf curl_share_cleanup.pdf \
- curl_share_init.pdf curl_share_setopt.pdf libcurl.pdf \
- libcurl-multi.pdf libcurl-easy.pdf libcurl-share.pdf \
- libcurl-errors.pdf curl_easy_strerror.pdf curl_multi_strerror.pdf \
- curl_share_strerror.pdf curl_global_init_mem.pdf libcurl-tutorial.pdf \
- curl_easy_reset.pdf curl_easy_escape.pdf curl_easy_unescape.pdf \
- curl_multi_setopt.pdf curl_multi_socket.pdf curl_multi_timeout.pdf \
- curl_formget.pdf curl_multi_assign.pdf curl_easy_pause.pdf \
- curl_easy_recv.pdf curl_easy_send.pdf curl_multi_socket_action.pdf \
- curl_multi_wait.pdf libcurl-symbols.pdf libcurl-thread.pdf
+ curl_multi_remove_handle.pdf curl_share_cleanup.pdf curl_share_init.pdf \
+ curl_share_setopt.pdf libcurl.pdf libcurl-multi.pdf libcurl-easy.pdf \
+ libcurl-share.pdf libcurl-errors.pdf curl_easy_strerror.pdf \
+ curl_multi_strerror.pdf curl_share_strerror.pdf \
+ curl_global_init_mem.pdf libcurl-tutorial.pdf curl_easy_reset.pdf \
+ curl_easy_escape.pdf curl_easy_unescape.pdf curl_multi_setopt.pdf \
+ curl_multi_socket.pdf curl_multi_timeout.pdf curl_formget.pdf \
+ curl_multi_assign.pdf curl_easy_pause.pdf curl_easy_recv.pdf \
+ curl_easy_send.pdf curl_multi_socket_action.pdf curl_multi_wait.pdf
m4macrodir = $(datadir)/aclocal
dist_m4macro_DATA = libcurl.m4
-CLEANFILES = $(HTMLPAGES) $(PDFPAGES) $(TESTS) libcurl-symbols.3
+CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
EXTRA_DIST = $(man_MANS) $(HTMLPAGES) index.html $(PDFPAGES) ABI \
- symbols-in-versions symbols.pl mksymbolsmanpage.pl
+ symbols-in-versions symbols.pl
MAN2HTML = roffit --mandir=. < $< >$@
SUFFIXES = .3 .html
-
-# Make sure each option man page is referenced in the main man page
-TESTS = check-easy check-multi
-LOG_COMPILER = $(PERL)
-# The test fails if the log file contains any text
-AM_LOG_FLAGS = -p -e 'die "$$_" if ($$_);'
all: all-recursive
.SUFFIXES:
-.SUFFIXES: .3 .html .log .pdf .test .test$(EXEEXT) .trs
+.SUFFIXES: .3 .html .pdf
$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps)
@for dep in $?; do \
case '$(am__configure_deps)' in \
@@ -707,6 +511,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/libcurl/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign docs/libcurl/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -894,176 +699,6 @@ cscopelist-am: $(am__tagged_files)
distclean-tags:
-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
-# Recover from deleted '.trs' file; this should ensure that
-# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create
-# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells
-# to avoid problems with "make -n".
-.log.trs:
- rm -f $< $@
- $(MAKE) $(AM_MAKEFLAGS) $<
-
-# Leading 'am--fnord' is there to ensure the list of targets does not
-# expand to empty, as could happen e.g. with make check TESTS=''.
-am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck)
-am--force-recheck:
- @:
-
-$(TEST_SUITE_LOG): $(TEST_LOGS)
- @$(am__set_TESTS_bases); \
- am__f_ok () { test -f "$$1" && test -r "$$1"; }; \
- redo_bases=`for i in $$bases; do \
- am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \
- done`; \
- if test -n "$$redo_bases"; then \
- redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \
- redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \
- if $(am__make_dryrun); then :; else \
- rm -f $$redo_logs && rm -f $$redo_results || exit 1; \
- fi; \
- fi; \
- if test -n "$$am__remaking_logs"; then \
- echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \
- "recursion detected" >&2; \
- elif test -n "$$redo_logs"; then \
- am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \
- fi; \
- if $(am__make_dryrun); then :; else \
- st=0; \
- errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \
- for i in $$redo_bases; do \
- test -f $$i.trs && test -r $$i.trs \
- || { echo "$$errmsg $$i.trs" >&2; st=1; }; \
- test -f $$i.log && test -r $$i.log \
- || { echo "$$errmsg $$i.log" >&2; st=1; }; \
- done; \
- test $$st -eq 0 || exit 1; \
- fi
- @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \
- ws='[ ]'; \
- results=`for b in $$bases; do echo $$b.trs; done`; \
- test -n "$$results" || results=/dev/null; \
- all=` grep "^$$ws*:test-result:" $$results | wc -l`; \
- pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \
- fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \
- skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \
- xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \
- xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \
- error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \
- if test `expr $$fail + $$xpass + $$error` -eq 0; then \
- success=true; \
- else \
- success=false; \
- fi; \
- br='==================='; br=$$br$$br$$br$$br; \
- result_count () \
- { \
- if test x"$$1" = x"--maybe-color"; then \
- maybe_colorize=yes; \
- elif test x"$$1" = x"--no-color"; then \
- maybe_colorize=no; \
- else \
- echo "$@: invalid 'result_count' usage" >&2; exit 4; \
- fi; \
- shift; \
- desc=$$1 count=$$2; \
- if test $$maybe_colorize = yes && test $$count -gt 0; then \
- color_start=$$3 color_end=$$std; \
- else \
- color_start= color_end=; \
- fi; \
- echo "$${color_start}# $$desc $$count$${color_end}"; \
- }; \
- create_testsuite_report () \
- { \
- result_count $$1 "TOTAL:" $$all "$$brg"; \
- result_count $$1 "PASS: " $$pass "$$grn"; \
- result_count $$1 "SKIP: " $$skip "$$blu"; \
- result_count $$1 "XFAIL:" $$xfail "$$lgn"; \
- result_count $$1 "FAIL: " $$fail "$$red"; \
- result_count $$1 "XPASS:" $$xpass "$$red"; \
- result_count $$1 "ERROR:" $$error "$$mgn"; \
- }; \
- { \
- echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \
- $(am__rst_title); \
- create_testsuite_report --no-color; \
- echo; \
- echo ".. contents:: :depth: 2"; \
- echo; \
- for b in $$bases; do echo $$b; done \
- | $(am__create_global_log); \
- } >$(TEST_SUITE_LOG).tmp || exit 1; \
- mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \
- if $$success; then \
- col="$$grn"; \
- else \
- col="$$red"; \
- test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \
- fi; \
- echo "$${col}$$br$${std}"; \
- echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \
- echo "$${col}$$br$${std}"; \
- create_testsuite_report --maybe-color; \
- echo "$$col$$br$$std"; \
- if $$success; then :; else \
- echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \
- if test -n "$(PACKAGE_BUGREPORT)"; then \
- echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \
- fi; \
- echo "$$col$$br$$std"; \
- fi; \
- $$success || exit 1
-
-check-TESTS:
- @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list
- @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list
- @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
- @set +e; $(am__set_TESTS_bases); \
- log_list=`for i in $$bases; do echo $$i.log; done`; \
- trs_list=`for i in $$bases; do echo $$i.trs; done`; \
- log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \
- $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \
- exit $$?;
-recheck: all
- @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
- @set +e; $(am__set_TESTS_bases); \
- bases=`for i in $$bases; do echo $$i; done \
- | $(am__list_recheck_tests)` || exit 1; \
- log_list=`for i in $$bases; do echo $$i.log; done`; \
- log_list=`echo $$log_list`; \
- $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \
- am__force_recheck=am--force-recheck \
- TEST_LOGS="$$log_list"; \
- exit $$?
-check-easy.log: check-easy
- @p='check-easy'; \
- b='check-easy'; \
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
-check-multi.log: check-multi
- @p='check-multi'; \
- b='check-multi'; \
- $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
-.test.log:
- @p='$<'; \
- $(am__set_b); \
- $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
- --log-file $$b.log --trs-file $$b.trs \
- $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
- "$$tst" $(AM_TESTS_FD_REDIRECT)
-@am__EXEEXT_TRUE@.test$(EXEEXT).log:
-@am__EXEEXT_TRUE@ @p='$<'; \
-@am__EXEEXT_TRUE@ $(am__set_b); \
-@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \
-@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \
-@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \
-@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT)
-
distdir: $(DISTFILES)
@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
@@ -1120,7 +755,6 @@ distdir: $(DISTFILES)
fi; \
done
check-am: all-am
- $(MAKE) $(AM_MAKEFLAGS) check-TESTS
check: check-recursive
all-am: Makefile $(MANS) $(DATA)
installdirs: installdirs-recursive
@@ -1148,9 +782,6 @@ install-strip:
"INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
fi
mostlyclean-generic:
- -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS)
- -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs)
- -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG)
clean-generic:
-test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
@@ -1226,29 +857,23 @@ uninstall-am: uninstall-dist_m4macroDATA uninstall-man
uninstall-man: uninstall-man3
-.MAKE: $(am__recursive_targets) check-am install-am install-strip
+.MAKE: $(am__recursive_targets) install-am install-strip
.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \
- check-TESTS check-am clean clean-generic clean-libtool \
- cscopelist-am ctags ctags-am distclean distclean-generic \
- distclean-libtool distclean-tags distdir dvi dvi-am html \
- html-am info info-am install install-am install-data \
- install-data-am install-dist_m4macroDATA install-dvi \
- install-dvi-am install-exec install-exec-am install-html \
- install-html-am install-info install-info-am install-man \
- install-man3 install-pdf install-pdf-am install-ps \
- install-ps-am install-strip installcheck installcheck-am \
- installdirs installdirs-am maintainer-clean \
- maintainer-clean-generic mostlyclean mostlyclean-generic \
- mostlyclean-libtool pdf pdf-am ps ps-am recheck tags tags-am \
- uninstall uninstall-am uninstall-dist_m4macroDATA \
- uninstall-man uninstall-man3
+ check-am clean clean-generic clean-libtool cscopelist-am ctags \
+ ctags-am distclean distclean-generic distclean-libtool \
+ distclean-tags distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am \
+ install-dist_m4macroDATA install-dvi install-dvi-am \
+ install-exec install-exec-am install-html install-html-am \
+ install-info install-info-am install-man install-man3 \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
+ ps ps-am tags tags-am uninstall uninstall-am \
+ uninstall-dist_m4macroDATA uninstall-man uninstall-man3
-.PRECIOUS: Makefile
-
-
-libcurl-symbols.3: $(srcdir)/symbols-in-versions $(srcdir)/mksymbolsmanpage.pl
- perl $(srcdir)/mksymbolsmanpage.pl < $(srcdir)/symbols-in-versions > $@
html: $(HTMLPAGES)
cd opts; make html
@@ -1266,14 +891,6 @@ pdf: $(PDFPAGES)
rm $$foo.ps; \
echo "converted $< to $@")
-check-easy: $(srcdir)/curl_easy_setopt.3 $(srcdir)/opts/CURLOPT*.3
- OPTS="$$(ls $(srcdir)/opts/CURLOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
- for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_easy_setopt.3 >/dev/null || echo Missing $$opt; done > $@
-
-check-multi: $(srcdir)/curl_multi_setopt.3 $(srcdir)/opts/CURLMOPT*.3
- OPTS="$$(ls $(srcdir)/opts/CURLMOPT*.3 | $(SED) -e 's,^.*/,,' -e 's,\.3$$,,')" && \
- for opt in $$OPTS; do grep "^\.IP $$opt$$" $(srcdir)/curl_multi_setopt.3 >/dev/null || echo Missing $$opt; done > $@
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
.NOEXPORT:
diff --git a/docs/libcurl/curl_easy_cleanup.3 b/docs/libcurl/curl_easy_cleanup.3
index e8cd55095..403bfd35a 100644
--- a/docs/libcurl/curl_easy_cleanup.3
+++ b/docs/libcurl/curl_easy_cleanup.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -63,6 +63,5 @@ if(curl) {
}
.fi
.SH "SEE ALSO"
-.BR curl_easy_init "(3), " curl_easy_duphandle "(3), "
-.BR curl_easy_reset "(3), "
-.BR curl_multi_cleanup "(3), " curl_multi_remove_handle "(3) "
+.BR curl_easy_init "(3), "
+
diff --git a/docs/libcurl/curl_easy_cleanup.html b/docs/libcurl/curl_easy_cleanup.html
index 5255119ec..752461e1d 100644
--- a/docs/libcurl/curl_easy_cleanup.html
+++ b/docs/libcurl/curl_easy_cleanup.html
@@ -4,20 +4,15 @@
<title>curl_easy_cleanup man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -60,17 +55,18 @@ p.roffit {
<p class="level0">Any use of the <span Class="bold">handle</span> after this function has been called and have returned, is illegal. <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a> kills the handle and all memory associated with it!
<p class="level0">For libcurl versions before 7.17,: after you've called this function, you can safely remove all the strings you've previously told libcurl to use, as it won't use them anymore now. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">None <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; CURLcode res;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp; curl_easy_cleanup(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; CURLcode res;
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ &nbsp; curl_easy_cleanup(curl);
+ }
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <a Class="manpage" href="./curl_easy_duphandle.html">curl_easy_duphandle</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_easy_reset.html">curl_easy_reset</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>, <a Class="manpage" href="./curl_multi_remove_handle.html">curl_multi_remove_handle</a>, <p class="roffit">
+<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <span Class="manpage"> </span>
+<p class="level0"><p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/curl_easy_cleanup.pdf b/docs/libcurl/curl_easy_cleanup.pdf
index 1ec0302fc..7e22eed66 100644
--- a/docs/libcurl/curl_easy_cleanup.pdf
+++ b/docs/libcurl/curl_easy_cleanup.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_duphandle.3 b/docs/libcurl/curl_easy_duphandle.3
index 34cba58c4..080723a1b 100644
--- a/docs/libcurl/curl_easy_duphandle.3
+++ b/docs/libcurl/curl_easy_duphandle.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -47,6 +47,4 @@ in a synchronous way, the input handle may not be in use when cloned.
If this function returns NULL, something went wrong and no valid handle was
returned.
.SH "SEE ALSO"
-.BR curl_easy_init "(3)," curl_easy_cleanup "(3)," curl_easy_reset "(3),"
-.BR curl_global_init "(3)"
-
+.BR curl_easy_init "(3)," curl_easy_cleanup "(3)," curl_global_init "(3)"
diff --git a/docs/libcurl/curl_easy_duphandle.html b/docs/libcurl/curl_easy_duphandle.html
index 34c5ec83b..19b1f6ff6 100644
--- a/docs/libcurl/curl_easy_duphandle.html
+++ b/docs/libcurl/curl_easy_duphandle.html
@@ -4,20 +4,15 @@
<title>curl_easy_duphandle man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -60,7 +55,6 @@ p.roffit {
<p class="level0">The new handle will <span Class="bold">not</span> inherit any state information, no connections, no SSL sessions and no cookies.
<p class="level0"><span Class="bold">Note</span> that even in multi-threaded programs, this function must be called in a synchronous way, the input handle may not be in use when cloned. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">If this function returns NULL, something went wrong and no valid handle was returned. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <a Class="manpage" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>, <a Class="manpage" href="./curl_easy_reset.html">curl_easy_reset</a>, <a Class="manpage" href="./curl_global_init.html">curl_global_init</a>,
-<p class="level0"><p class="roffit">
+<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <a Class="manpage" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>, <a Class="manpage" href="./curl_global_init.html">curl_global_init</a>, <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/curl_easy_duphandle.pdf b/docs/libcurl/curl_easy_duphandle.pdf
index c0c0b62c1..b0fadf1c0 100644
--- a/docs/libcurl/curl_easy_duphandle.pdf
+++ b/docs/libcurl/curl_easy_duphandle.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_escape.3 b/docs/libcurl/curl_easy_escape.3
index da2b38221..7c8c658d2 100644
--- a/docs/libcurl/curl_easy_escape.3
+++ b/docs/libcurl/curl_easy_escape.3
@@ -29,13 +29,13 @@ curl_easy_escape - URL encodes the given string
.BI "char *curl_easy_escape( CURL *" curl ", char *" string ", int "length " );"
.ad
.SH DESCRIPTION
-This function converts the given input \fIstring\fP to a URL encoded string
+This function converts the given input \fBstring\fP to an URL encoded string
and returns that as a new allocated string. All input characters that are not
a-z, A-Z, 0-9, '-', '.', '_' or '~' are converted to their "URL escaped"
version (%NN where NN is a two-digit hexadecimal number).
-If \fIlength\fP is set to 0 (zero), \fIcurl_easy_escape(3)\fP uses strlen() on
-the input \fIstring\fP to find out the size.
+If the \fBlength\fP argument is set to 0 (zero), \fIcurl_easy_escape(3)\fP
+uses strlen() on the input \fBurl\fP to find out the size.
You must \fIcurl_free(3)\fP the returned string when you're done with it.
.SH AVAILABILITY
diff --git a/docs/libcurl/curl_easy_escape.html b/docs/libcurl/curl_easy_escape.html
index 88929411e..1852342e9 100644
--- a/docs/libcurl/curl_easy_escape.html
+++ b/docs/libcurl/curl_easy_escape.html
@@ -4,20 +4,15 @@
<title>curl_easy_escape man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -55,21 +50,21 @@ p.roffit {
<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span>
<p class="level0"><span Class="bold">char *curl_easy_escape( CURL * curl , char * string , int length );</span>
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">This function converts the given input <span Class="emphasis">string</span> to a URL encoded string and returns that as a new allocated string. All input characters that are not a-z, A-Z, 0-9, '-', '.', '_' or '~' are converted to their "URL escaped" version (%NN where NN is a two-digit hexadecimal number).
-<p class="level0">If <span Class="emphasis">length</span> is set to 0 (zero), <a Class="emphasis" href="./curl_easy_escape.html">curl_easy_escape</a> uses strlen() on the input <span Class="emphasis">string</span> to find out the size.
+<p class="level0">This function converts the given input <span Class="bold">string</span> to an URL encoded string and returns that as a new allocated string. All input characters that are not a-z, A-Z, 0-9, '-', '.', '_' or '~' are converted to their "URL escaped" version (%NN where NN is a two-digit hexadecimal number).
+<p class="level0">If the <span Class="bold">length</span> argument is set to 0 (zero), <a Class="emphasis" href="./curl_easy_escape.html">curl_easy_escape</a> uses strlen() on the input <span Class="bold">url</span> to find out the size.
<p class="level0">You must <a Class="emphasis" href="./curl_free.html">curl_free</a> the returned string when you're done with it. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.15.4 and replaces the old <a Class="emphasis" href="./curl_escape.html">curl_escape</a> function. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">A pointer to a zero terminated string or NULL if it failed. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; char *output = curl_easy_escape(curl, "data to convert", 15);
-&nbsp; if(output) {
-&nbsp; printf("Encoded: %sn", output);
-&nbsp; curl_free(output);
-&nbsp; }
-}}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; char *output = curl_easy_escape(curl, "data to convert", 15);
+ &nbsp; if(output) {
+ &nbsp; printf("Encoded: %sn", output);
+ &nbsp; curl_free(output);
+ &nbsp; }
+ }}
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_easy_unescape.html">curl_easy_unescape</a>, <a Class="manpage" href="./curl_free.html">curl_free</a>, <span Class="manpage"> <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a></span> <p class="roffit">
diff --git a/docs/libcurl/curl_easy_escape.pdf b/docs/libcurl/curl_easy_escape.pdf
index a642be88b..d6ca4c26c 100644
--- a/docs/libcurl/curl_easy_escape.pdf
+++ b/docs/libcurl/curl_easy_escape.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_getinfo.3 b/docs/libcurl/curl_easy_getinfo.3
index d48ca04c9..0f0fd2e41 100644
--- a/docs/libcurl/curl_easy_getinfo.3
+++ b/docs/libcurl/curl_easy_getinfo.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -236,26 +236,6 @@ option may not be available for all SSL backends; unsupported SSL backends
will return 'CURLSSLBACKEND_NONE' to indicate that they are not supported;
this does not mean that no SSL backend was used. (Added in 7.34.0)
-.nf
-struct curl_tlssessioninfo {
- curl_sslbackend backend;
- void *internals;
-};
-.fi
-
-The \fIinternals\fP struct member will point to a TLS library specific pointer
-with the following underlying types:
-.RS
-.IP OpenSSL
-SSL_CTX *
-.IP GnuTLS
-gnutls_session_t
-.IP NSS
-PRFileDesc *
-.IP gskit
-gsk_handle
-.RE
-
.IP CURLINFO_CONDITION_UNMET
Pass a pointer to a long to receive the number 1 if the condition provided in
the previous request didn't match (see \fICURLOPT_TIMECONDITION(3)\fP). Alas,
diff --git a/docs/libcurl/curl_easy_getinfo.html b/docs/libcurl/curl_easy_getinfo.html
index 3113bff41..af26a2f83 100644
--- a/docs/libcurl/curl_easy_getinfo.html
+++ b/docs/libcurl/curl_easy_getinfo.html
@@ -4,20 +4,15 @@
<title>curl_easy_getinfo man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -138,25 +133,6 @@ p.roffit {
<p class="level0"><a name="CURLINFOTLSSESSION"></a><span class="nroffip">CURLINFO_TLS_SESSION</span>
<p class="level1">Pass a pointer to a 'struct curl_tlssessioninfo *'. The pointer will be initialized to refer to a 'struct curl_tlssessioninfo *' that will contain an enum indicating the SSL library used for the handshake and the respective internal TLS session structure of this underlying SSL library.
<p class="level1">This may then be used to extract certificate information in a format convenient for further processing, such as manual validation. NOTE: this option may not be available for all SSL backends; unsupported SSL backends will return 'CURLSSLBACKEND_NONE' to indicate that they are not supported; this does not mean that no SSL backend was used. (Added in 7.34.0)
-<p class="level1"><pre class="level1">
-struct curl_tlssessioninfo {
-&nbsp; curl_sslbackend backend;
-&nbsp; void *internals;
-};
-</pre>
-
-<p class="level1">
-<p class="level1">The <span Class="emphasis">internals</span> struct member will point to a TLS library specific pointer with the following underlying types:
-<p class="level2">
-<p class="level1"><a name="OpenSSL"></a><span class="nroffip">OpenSSL</span>
-<p class="level2">SSL_CTX *
-<p class="level1"><a name="GnuTLS"></a><span class="nroffip">GnuTLS</span>
-<p class="level2">gnutls_session_t
-<p class="level1"><a name="NSS"></a><span class="nroffip">NSS</span>
-<p class="level2">PRFileDesc *
-<p class="level1"><a name="gskit"></a><span class="nroffip">gskit</span>
-<p class="level2">gsk_handle
-<p class="level1">
<p class="level1">
<p class="level0"><a name="CURLINFOCONDITIONUNMET"></a><span class="nroffip">CURLINFO_CONDITION_UNMET</span>
<p class="level1">Pass a pointer to a long to receive the number 1 if the condition provided in the previous request didn't match (see <span Class="emphasis">CURLOPT_TIMECONDITION(3)</span>). Alas, if this returns a 1 you know that the reason you didn't get data in return is because it didn't fulfill the condition. The long ths argument points to will get a zero stored if the condition instead was met. (Added in 7.19.4)
@@ -171,19 +147,18 @@ struct curl_tlssessioninfo {
<p class="level1">Applications wishing to resume an RTSP session on another connection should retrieve this info before closing the active connection.
<p class="level0"><a name="CURLINFORTSPCSEQRECV"></a><span class="nroffip">CURLINFO_RTSP_CSEQ_RECV</span>
<p class="level1">Pass a pointer to a long to receive the most recently received CSeq from the server. If your application encounters a <span Class="emphasis">CURLE_RTSP_CSEQ_ERROR</span> then you may wish to troubleshoot and/or fix the CSeq mismatch by peeking at this value. <a name="TIMES"></a><h2 class="nroffsh">TIMES</h2>
-<p class="level0"><pre class="level0">
-An overview of the six time values available from curl_easy_getinfo()
-&nbsp;
-curl_easy_perform()
-&nbsp; |
-&nbsp; |--NAMELOOKUP
-&nbsp; |--|--CONNECT
-&nbsp; |--|--|--APPCONNECT
-&nbsp; |--|--|--|--PRETRANSFER
-&nbsp; |--|--|--|--|--STARTTRANSFER
-&nbsp; |--|--|--|--|--|--TOTAL
-&nbsp; |--|--|--|--|--|--REDIRECT
-</pre>
+<p class="level0"><pre>
+<p class="level0">An overview of the six time values available from curl_easy_getinfo()
+ <p class="level0">curl_easy_perform()
+ &nbsp; |
+ &nbsp; |--NAMELOOKUP
+ &nbsp; |--|--CONNECT
+ &nbsp; |--|--|--APPCONNECT
+ &nbsp; |--|--|--|--PRETRANSFER
+ &nbsp; |--|--|--|--|--STARTTRANSFER
+ &nbsp; |--|--|--|--|--|--TOTAL
+ &nbsp; |--|--|--|--|--|--REDIRECT
+ </pre>
<p class="level0">
<p class="level0"><a name="NAMELOOKUP"></a><span class="nroffip">NAMELOOKUP</span>
diff --git a/docs/libcurl/curl_easy_getinfo.pdf b/docs/libcurl/curl_easy_getinfo.pdf
index 009c5890e..9801b97f0 100644
--- a/docs/libcurl/curl_easy_getinfo.pdf
+++ b/docs/libcurl/curl_easy_getinfo.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_init.html b/docs/libcurl/curl_easy_init.html
index 6dd0aead0..28ec0356e 100644
--- a/docs/libcurl/curl_easy_init.html
+++ b/docs/libcurl/curl_easy_init.html
@@ -4,20 +4,15 @@
<title>curl_easy_init man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -58,15 +53,15 @@ p.roffit {
<p class="level0">If you did not already call <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a>, <a Class="emphasis" href="./curl_easy_init.html">curl_easy_init</a> does it automatically. This may be lethal in multi-threaded cases, since <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a> is not thread-safe, and it may result in resource problems because there is no corresponding cleanup.
<p class="level0">You are strongly advised to not allow this automatic behaviour, by calling <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a> yourself properly. See the description in <span Class="bold">libcurl</span>(3) of global environment requirements for details of how to use this function. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">If this function returns NULL, something went wrong and you cannot use the other curl functions. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; CURLcode res;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp; curl_easy_cleanup(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; CURLcode res;
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ &nbsp; curl_easy_cleanup(curl);
+ }
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>, <a Class="manpage" href="./curl_global_init.html">curl_global_init</a>, <a Class="manpage" href="./curl_easy_reset.html">curl_easy_reset</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_easy_perform.html">curl_easy_perform</a>, <p class="roffit">
diff --git a/docs/libcurl/curl_easy_init.pdf b/docs/libcurl/curl_easy_init.pdf
index c74dfa73c..faa85c129 100644
--- a/docs/libcurl/curl_easy_init.pdf
+++ b/docs/libcurl/curl_easy_init.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_pause.html b/docs/libcurl/curl_easy_pause.html
index b8dbe40bd..bb646e58e 100644
--- a/docs/libcurl/curl_easy_pause.html
+++ b/docs/libcurl/curl_easy_pause.html
@@ -4,20 +4,15 @@
<title>curl_easy_pause man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_easy_pause.pdf b/docs/libcurl/curl_easy_pause.pdf
index a11498713..1ce558fac 100644
--- a/docs/libcurl/curl_easy_pause.pdf
+++ b/docs/libcurl/curl_easy_pause.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_perform.3 b/docs/libcurl/curl_easy_perform.3
index fc8c59e57..e40c1e444 100644
--- a/docs/libcurl/curl_easy_perform.3
+++ b/docs/libcurl/curl_easy_perform.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -66,7 +66,7 @@ if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
-}
+}}
.fi
.SH "SEE ALSO"
.BR curl_easy_init "(3), " curl_easy_setopt "(3), "
diff --git a/docs/libcurl/curl_easy_perform.html b/docs/libcurl/curl_easy_perform.html
index d76edd3d6..c5b90b2b6 100644
--- a/docs/libcurl/curl_easy_perform.html
+++ b/docs/libcurl/curl_easy_perform.html
@@ -4,20 +4,15 @@
<title>curl_easy_perform man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -61,15 +56,15 @@ p.roffit {
<p class="level0">You must never call this function simultaneously from two places using the same <span Class="bold">easy_handle</span>. Let the function return first before invoking it another time. If you want parallel transfers, you must use several curl easy_handles.
<p class="level0">While the <span Class="bold">easy_handle</span> is added to a multi handle, it cannot be used by <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a>. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">CURLE_OK (0) means everything was ok, non-zero means an error occurred as <span Class="emphasis">&lt;curl/curl.h&gt;</span> defines - see <a Class="emphasis" href="./libcurl-errors.html">libcurl-errors</a>. If the <span Class="bold">CURLOPT_ERRORBUFFER(3)</span> was set with <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> there will be a readable error message in the error buffer when non-zero is returned. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; CURLcode res;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp; curl_easy_cleanup(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; CURLcode res;
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ &nbsp; curl_easy_cleanup(curl);
+ }}
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <a Class="manpage" href="./curl_easy_setopt.html">curl_easy_setopt</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_multi_add_handle.html">curl_multi_add_handle</a>, <a Class="manpage" href="./curl_multi_perform.html">curl_multi_perform</a>, <span Class="manpage"> </span> <a Class="manpage" href="./libcurl-errors.html">libcurl-errors</a>, <span Class="manpage"> </span>
diff --git a/docs/libcurl/curl_easy_perform.pdf b/docs/libcurl/curl_easy_perform.pdf
index 490486b2b..2f47acbff 100644
--- a/docs/libcurl/curl_easy_perform.pdf
+++ b/docs/libcurl/curl_easy_perform.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_recv.3 b/docs/libcurl/curl_easy_recv.3
index d425fe2b4..c661f4b32 100644
--- a/docs/libcurl/curl_easy_recv.3
+++ b/docs/libcurl/curl_easy_recv.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -42,9 +42,8 @@ buffer. The variable \fBn\fP points to will receive the number of received
bytes.
To establish the connection, set \fBCURLOPT_CONNECT_ONLY(3)\fP option before
-calling \fIcurl_easy_perform(3)\fP or \fIcurl_multi_perform(3)\fP. Note that
-\fIcurl_easy_recv(3)\fP does not work on connections that were created without
-this option.
+calling \fIcurl_easy_perform(3)\fP. Note that \fIcurl_easy_recv(3)\fP does not
+work on connections that were created without this option.
You must ensure that the socket has data to read before calling
\fIcurl_easy_recv(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
diff --git a/docs/libcurl/curl_easy_recv.html b/docs/libcurl/curl_easy_recv.html
index e38a7e882..1eb253438 100644
--- a/docs/libcurl/curl_easy_recv.html
+++ b/docs/libcurl/curl_easy_recv.html
@@ -4,20 +4,15 @@
<title>curl_easy_recv man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -57,7 +52,7 @@ p.roffit {
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function receives raw data from the established connection. You may use it together with <a Class="emphasis" href="./curl_easy_send.html">curl_easy_send</a> to implement custom protocols using libcurl. This functionality can be particularly useful if you use proxies and/or SSL encryption: libcurl will take care of proxy negotiation and connection set-up.
<p class="level0"><span Class="bold">buffer</span> is a pointer to your buffer that will get the received data. <span Class="bold">buflen</span> is the maximum amount of data you can get in that buffer. The variable <span Class="bold">n</span> points to will receive the number of received bytes.
-<p class="level0">To establish the connection, set <span Class="bold">CURLOPT_CONNECT_ONLY(3)</span> option before calling <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> or <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a>. Note that <a Class="emphasis" href="./curl_easy_recv.html">curl_easy_recv</a> does not work on connections that were created without this option.
+<p class="level0">To establish the connection, set <span Class="bold">CURLOPT_CONNECT_ONLY(3)</span> option before calling <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a>. Note that <a Class="emphasis" href="./curl_easy_recv.html">curl_easy_recv</a> does not work on connections that were created without this option.
<p class="level0">You must ensure that the socket has data to read before calling <a Class="emphasis" href="./curl_easy_recv.html">curl_easy_recv</a>, otherwise the call will return <span Class="bold">CURLE_AGAIN</span> - the socket is used in non-blocking mode internally. Use <a Class="emphasis" href="./curl_easy_getinfo.html">curl_easy_getinfo</a> with <span Class="bold">CURLINFO_LASTSOCKET</span> to obtain the socket; use your operating system facilities like <span Class="emphasis">select(2)</span> to check if it has any data you can read. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.18.2. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">On success, returns <span Class="bold">CURLE_OK</span>, stores the received data into <span Class="bold">buffer</span>, and the number of bytes it actually read into <span Class="bold">*n</span>.
diff --git a/docs/libcurl/curl_easy_recv.pdf b/docs/libcurl/curl_easy_recv.pdf
index e445f9a80..afdd743be 100644
--- a/docs/libcurl/curl_easy_recv.pdf
+++ b/docs/libcurl/curl_easy_recv.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_reset.html b/docs/libcurl/curl_easy_reset.html
index 033f1e289..6a290fb86 100644
--- a/docs/libcurl/curl_easy_reset.html
+++ b/docs/libcurl/curl_easy_reset.html
@@ -4,20 +4,15 @@
<title>curl_easy_reset man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_easy_reset.pdf b/docs/libcurl/curl_easy_reset.pdf
index 6defb7b4d..58ce522d1 100644
--- a/docs/libcurl/curl_easy_reset.pdf
+++ b/docs/libcurl/curl_easy_reset.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_send.3 b/docs/libcurl/curl_easy_send.3
index 6f5a6eaf7..28e88663e 100644
--- a/docs/libcurl/curl_easy_send.3
+++ b/docs/libcurl/curl_easy_send.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -40,9 +40,8 @@ connection set-up.
The variable \fBn\fP points to will receive the number of sent bytes.
To establish the connection, set \fBCURLOPT_CONNECT_ONLY(3)\fP option before
-calling \fIcurl_easy_perform(3)\fP or \fIcurl_multi_perform()\fP. Note that
-\fIcurl_easy_send(3)\fP will not work on connections that were created without
-this option.
+calling \fIcurl_easy_perform(3)\fP. Note that \fIcurl_easy_send(3)\fP will not
+work on connections that were created without this option.
You must ensure that the socket is writable before calling
\fIcurl_easy_send(3)\fP, otherwise the call will return \fBCURLE_AGAIN\fP -
diff --git a/docs/libcurl/curl_easy_send.html b/docs/libcurl/curl_easy_send.html
index 6f2f498c2..4d52db58e 100644
--- a/docs/libcurl/curl_easy_send.html
+++ b/docs/libcurl/curl_easy_send.html
@@ -4,20 +4,15 @@
<title>curl_easy_send man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -57,7 +52,7 @@ p.roffit {
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function sends arbitrary data over the established connection. You may use it together with <a Class="emphasis" href="./curl_easy_recv.html">curl_easy_recv</a> to implement custom protocols using libcurl. This functionality can be particularly useful if you use proxies and/or SSL encryption: libcurl will take care of proxy negotiation and connection set-up.
<p class="level0"><span Class="bold">buffer</span> is a pointer to the data of length <span Class="bold">buflen</span> that you want sent. The variable <span Class="bold">n</span> points to will receive the number of sent bytes.
-<p class="level0">To establish the connection, set <span Class="bold">CURLOPT_CONNECT_ONLY(3)</span> option before calling <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> or <span Class="emphasis">curl_multi_perform()</span>. Note that <a Class="emphasis" href="./curl_easy_send.html">curl_easy_send</a> will not work on connections that were created without this option.
+<p class="level0">To establish the connection, set <span Class="bold">CURLOPT_CONNECT_ONLY(3)</span> option before calling <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a>. Note that <a Class="emphasis" href="./curl_easy_send.html">curl_easy_send</a> will not work on connections that were created without this option.
<p class="level0">You must ensure that the socket is writable before calling <a Class="emphasis" href="./curl_easy_send.html">curl_easy_send</a>, otherwise the call will return <span Class="bold">CURLE_AGAIN</span> - the socket is used in non-blocking mode internally. Use <a Class="emphasis" href="./curl_easy_getinfo.html">curl_easy_getinfo</a> with <span Class="bold">CURLINFO_LASTSOCKET</span> to obtain the socket; use your operating system facilities like <span Class="emphasis">select(2)</span> to check if it can be written to. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.18.2. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">On success, returns <span Class="bold">CURLE_OK</span> and stores the number of bytes actually sent into <span Class="bold">*n</span>. Note that this may very well be less than the amount you wanted to send.
diff --git a/docs/libcurl/curl_easy_send.pdf b/docs/libcurl/curl_easy_send.pdf
index a9474480d..32e30a17a 100644
--- a/docs/libcurl/curl_easy_send.pdf
+++ b/docs/libcurl/curl_easy_send.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_setopt.3 b/docs/libcurl/curl_easy_setopt.3
index a9a6230f2..ecfa38f39 100644
--- a/docs/libcurl/curl_easy_setopt.3
+++ b/docs/libcurl/curl_easy_setopt.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -50,8 +50,6 @@ really \fICURLOPT_POSTFIELDS(3)\fP, but the alternative that copies the string
\fICURLOPT_COPYPOSTFIELDS(3)\fP has some usage characteristics you need to
read up on.
-The order in which the options are set does not matter.
-
Before version 7.17.0, strings were not copied. Instead the user was forced
keep them available until libcurl no longer needed them.
@@ -147,8 +145,6 @@ Fail on HTTP 4xx errors. \fICURLOPT_FAILONERROR(3)\fP
.SH NETWORK OPTIONS
.IP CURLOPT_URL
URL to work on. See \fICURLOPT_URL(3)\fP
-.IP CURLOPT_PATH_AS_IS
-Disable squashing /../ and /./ sequences in the path. See \fICURLOPT_PATH_AS_IS(3)\fP
.IP CURLOPT_PROTOCOLS
Allowed protocols. See \fICURLOPT_PROTOCOLS(3)\fP
.IP CURLOPT_REDIR_PROTOCOLS
@@ -167,10 +163,6 @@ Tunnel through the HTTP proxy. \fICURLOPT_HTTPPROXYTUNNEL(3)\fP
Socks5 GSSAPI service name. \fICURLOPT_SOCKS5_GSSAPI_SERVICE(3)\fP
.IP CURLOPT_SOCKS5_GSSAPI_NEC
Socks5 GSSAPI NEC mode. See \fICURLOPT_SOCKS5_GSSAPI_NEC(3)\fP
-.IP CURLOPT_PROXY_SERVICE_NAME
-Proxy service name. \fICURLOPT_PROXY_SERVICE_NAME(3)\fP
-.IP CURLOPT_SERVICE_NAME
-SPNEGO service name. \fICURLOPT_SERVICE_NAME(3)\fP
.IP CURLOPT_INTERFACE
Bind connection locally to this. See \fICURLOPT_INTERFACE(3)\fP
.IP CURLOPT_LOCALPORT
@@ -222,8 +214,6 @@ HTTP server authentication methods. See \fICURLOPT_HTTPAUTH(3)\fP
TLS authentication user name. See \fICURLOPT_TLSAUTH_USERNAME(3)\fP
.IP CURLOPT_TLSAUTH_PASSWORD
TLS authentication password. See \fICURLOPT_TLSAUTH_PASSWORD(3)\fP
-.IP CURLOPT_TLSAUTH_TYPE
-TLS authentication methods. See \fICURLOPT_TLSAUTH_TYPE(3)\fP
.IP CURLOPT_PROXYAUTH
HTTP proxy authentication methods. See \fICURLOPT_PROXYAUTH(3)\fP
.IP CURLOPT_SASL_IR
@@ -293,8 +283,6 @@ Disable Content decoding. See \fICURLOPT_HTTP_CONTENT_DECODING(3)\fP
Disable Transfer decoding. See \fICURLOPT_HTTP_TRANSFER_DECODING(3)\fP
.IP CURLOPT_EXPECT_100_TIMEOUT_MS
100-continue timeout. See \fICURLOPT_EXPECT_100_TIMEOUT_MS(3)\fP
-.IP CURLOPT_PIPEWAIT
-Wait on connection to pipeline on it. See \fICURLOPT_PIPEWAIT(3)\fP
.SH SMTP OPTIONS
.IP CURLOPT_MAIL_FROM
Address of the sender. See \fICURLOPT_MAIL_FROM(3)\fP
@@ -423,8 +411,6 @@ Bind name resolves to this interface. See \fICURLOPT_DNS_INTERFACE(3)\fP
Bind name resolves to this IP4 address. See \fICURLOPT_DNS_LOCAL_IP4(3)\fP
.IP CURLOPT_DNS_LOCAL_IP6
Bind name resolves to this IP6 address. See \fICURLOPT_DNS_LOCAL_IP6(3)\fP
-.IP CURLOPT_DNS_SERVERS
-Preferred DNS servers. See \fICURLOPT_DNS_SERVERS(3)\fP
.IP CURLOPT_ACCEPTTIMEOUT_MS
Timeout for waiting for the server's connect back to be accepted. See \fICURLOPT_ACCEPTTIMEOUT_MS(3)\fP
.SH SSL and SECURITY OPTIONS
@@ -446,16 +432,10 @@ Enable use of NPN. See \fICURLOPT_SSL_ENABLE_NPN(3)\fP
Use identifier with SSL engine. See \fICURLOPT_SSLENGINE(3)\fP
.IP CURLOPT_SSLENGINE_DEFAULT
Default SSL engine. See \fICURLOPT_SSLENGINE_DEFAULT(3)\fP
-.IP CURLOPT_SSL_FALSESTART
-Enable TLS False Start. See \fICURLOPT_SSL_FALSESTART(3)\fP
.IP CURLOPT_SSLVERSION
SSL version to use. See \fICURLOPT_SSLVERSION(3)\fP
-.IP CURLOPT_SSL_VERIFYHOST
-Verify the host name in the SSL certificate. See \fICURLOPT_SSL_VERIFYHOST(3)\fP
.IP CURLOPT_SSL_VERIFYPEER
Verify the SSL certificate. See \fICURLOPT_SSL_VERIFYPEER(3)\fP
-.IP CURLOPT_SSL_VERIFYSTATUS
-Verify the SSL certificate's status. See \fICURLOPT_SSL_VERIFYSTATUS(3)\fP
.IP CURLOPT_CAINFO
CA cert bundle. See \fICURLOPT_CAINFO(3)\fP
.IP CURLOPT_ISSUERCERT
@@ -464,6 +444,8 @@ Issuer certificate. See \fICURLOPT_ISSUERCERT(3)\fP
Path to CA cert bundle. See \fICURLOPT_CAPATH(3)\fP
.IP CURLOPT_CRLFILE
Certificate Revocation List. See \fICURLOPT_CRLFILE(3)\fP
+.IP CURLOPT_SSL_VERIFYHOST
+Verify the host name in the SSL certificate. See \fICURLOPT_SSL_VERIFYHOST(3)\fP
.IP CURLOPT_CERTINFO
Extract certificate info. See \fICURLOPT_CERTINFO(3)\fP
.IP CURLOPT_PINNEDPUBLICKEY
diff --git a/docs/libcurl/curl_easy_setopt.html b/docs/libcurl/curl_easy_setopt.html
index 890097c30..43e0b437b 100644
--- a/docs/libcurl/curl_easy_setopt.html
+++ b/docs/libcurl/curl_easy_setopt.html
@@ -4,20 +4,15 @@
<title>curl_easy_setopt man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_easy_setopt - set options for a curl easy handle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLoption option, parameter); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0"><a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> is used to tell libcurl how to behave. By setting the appropriate options, the application can change libcurl's behavior. All options are set with an <span Class="emphasis">option</span> followed by a <span Class="emphasis">parameter</span>. That parameter can be a <span Class="bold">long</span>, a <span Class="bold">function pointer</span>, an <span class="bold">object pointer</span> or a <span Class="bold">curl_off_t</span>, depending on what the specific option expects. Read this manual carefully as bad input values may cause libcurl to behave badly! You can only set one option in each function call. A typical application uses many <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> calls in the setup phase.
<p class="level0">Options set with this function call are valid for all forthcoming transfers performed using this <span Class="emphasis">handle</span>. The options are not in any way reset between transfers, so if you want subsequent transfers with different options, you must change them between the transfers. You can optionally reset all options back to internal default with <a Class="emphasis" href="./curl_easy_reset.html">curl_easy_reset</a>.
<p class="level0">Strings passed to libcurl as 'char *' arguments, are copied by the library; thus the string storage associated to the pointer argument may be overwritten after <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> returns. The only exception to this rule is really <span Class="emphasis">CURLOPT_POSTFIELDS(3)</span>, but the alternative that copies the string <span Class="emphasis">CURLOPT_COPYPOSTFIELDS(3)</span> has some usage characteristics you need to read up on.
-<p class="level0">The order in which the options are set does not matter.
<p class="level0">Before version 7.17.0, strings were not copied. Instead the user was forced keep them available until libcurl no longer needed them.
<p class="level0">The <span Class="emphasis">handle</span> is the return code from a <a Class="emphasis" href="./curl_easy_init.html">curl_easy_init</a> or <a Class="emphasis" href="./curl_easy_duphandle.html">curl_easy_duphandle</a> call. <a name="BEHAVIOR"></a><h2 class="nroffsh">BEHAVIOR OPTIONS</h2>
<p class="level0">
@@ -150,8 +144,6 @@ p.roffit {
<p class="level0">
<p class="level0"><a name="CURLOPTURL"></a><span class="nroffip">CURLOPT_URL</span>
<p class="level1">URL to work on. See <span Class="emphasis">CURLOPT_URL(3)</span>
-<p class="level0"><a name="CURLOPTPATHASIS"></a><span class="nroffip">CURLOPT_PATH_AS_IS</span>
-<p class="level1">Disable squashing /../ and /./ sequences in the path. See <span Class="emphasis">CURLOPT_PATH_AS_IS(3)</span>
<p class="level0"><a name="CURLOPTPROTOCOLS"></a><span class="nroffip">CURLOPT_PROTOCOLS</span>
<p class="level1">Allowed protocols. See <span Class="emphasis">CURLOPT_PROTOCOLS(3)</span>
<p class="level0"><a name="CURLOPTREDIRPROTOCOLS"></a><span class="nroffip">CURLOPT_REDIR_PROTOCOLS</span>
@@ -170,10 +162,6 @@ p.roffit {
<p class="level1">Socks5 GSSAPI service name. <span Class="emphasis">CURLOPT_SOCKS5_GSSAPI_SERVICE(3)</span>
<p class="level0"><a name="CURLOPTSOCKS5GSSAPINEC"></a><span class="nroffip">CURLOPT_SOCKS5_GSSAPI_NEC</span>
<p class="level1">Socks5 GSSAPI NEC mode. See <span Class="emphasis">CURLOPT_SOCKS5_GSSAPI_NEC(3)</span>
-<p class="level0"><a name="CURLOPTPROXYSERVICENAME"></a><span class="nroffip">CURLOPT_PROXY_SERVICE_NAME</span>
-<p class="level1">Proxy service name. <span Class="emphasis">CURLOPT_PROXY_SERVICE_NAME(3)</span>
-<p class="level0"><a name="CURLOPTSERVICENAME"></a><span class="nroffip">CURLOPT_SERVICE_NAME</span>
-<p class="level1">SPNEGO service name. <span Class="emphasis">CURLOPT_SERVICE_NAME(3)</span>
<p class="level0"><a name="CURLOPTINTERFACE"></a><span class="nroffip">CURLOPT_INTERFACE</span>
<p class="level1">Bind connection locally to this. See <span Class="emphasis">CURLOPT_INTERFACE(3)</span>
<p class="level0"><a name="CURLOPTLOCALPORT"></a><span class="nroffip">CURLOPT_LOCALPORT</span>
@@ -225,8 +213,6 @@ p.roffit {
<p class="level1">TLS authentication user name. See <span Class="emphasis">CURLOPT_TLSAUTH_USERNAME(3)</span>
<p class="level0"><a name="CURLOPTTLSAUTHPASSWORD"></a><span class="nroffip">CURLOPT_TLSAUTH_PASSWORD</span>
<p class="level1">TLS authentication password. See <span Class="emphasis">CURLOPT_TLSAUTH_PASSWORD(3)</span>
-<p class="level0"><a name="CURLOPTTLSAUTHTYPE"></a><span class="nroffip">CURLOPT_TLSAUTH_TYPE</span>
-<p class="level1">TLS authentication methods. See <span Class="emphasis">CURLOPT_TLSAUTH_TYPE(3)</span>
<p class="level0"><a name="CURLOPTPROXYAUTH"></a><span class="nroffip">CURLOPT_PROXYAUTH</span>
<p class="level1">HTTP proxy authentication methods. See <span Class="emphasis">CURLOPT_PROXYAUTH(3)</span>
<p class="level0"><a name="CURLOPTSASLIR"></a><span class="nroffip">CURLOPT_SASL_IR</span>
@@ -295,9 +281,7 @@ p.roffit {
<p class="level0"><a name="CURLOPTHTTPTRANSFERDECODING"></a><span class="nroffip">CURLOPT_HTTP_TRANSFER_DECODING</span>
<p class="level1">Disable Transfer decoding. See <span Class="emphasis">CURLOPT_HTTP_TRANSFER_DECODING(3)</span>
<p class="level0"><a name="CURLOPTEXPECT100TIMEOUTMS"></a><span class="nroffip">CURLOPT_EXPECT_100_TIMEOUT_MS</span>
-<p class="level1">100-continue timeout. See <span Class="emphasis">CURLOPT_EXPECT_100_TIMEOUT_MS(3)</span>
-<p class="level0"><a name="CURLOPTPIPEWAIT"></a><span class="nroffip">CURLOPT_PIPEWAIT</span>
-<p class="level1">Wait on connection to pipeline on it. See <span Class="emphasis">CURLOPT_PIPEWAIT(3)</span> <a name="SMTP"></a><h2 class="nroffsh">SMTP OPTIONS</h2>
+<p class="level1">100-continue timeout. See <span Class="emphasis">CURLOPT_EXPECT_100_TIMEOUT_MS(3)</span> <a name="SMTP"></a><h2 class="nroffsh">SMTP OPTIONS</h2>
<p class="level0">
<p class="level0"><a name="CURLOPTMAILFROM"></a><span class="nroffip">CURLOPT_MAIL_FROM</span>
<p class="level1">Address of the sender. See <span Class="emphasis">CURLOPT_MAIL_FROM(3)</span>
@@ -426,8 +410,6 @@ p.roffit {
<p class="level1">Bind name resolves to this IP4 address. See <span Class="emphasis">CURLOPT_DNS_LOCAL_IP4(3)</span>
<p class="level0"><a name="CURLOPTDNSLOCALIP6"></a><span class="nroffip">CURLOPT_DNS_LOCAL_IP6</span>
<p class="level1">Bind name resolves to this IP6 address. See <span Class="emphasis">CURLOPT_DNS_LOCAL_IP6(3)</span>
-<p class="level0"><a name="CURLOPTDNSSERVERS"></a><span class="nroffip">CURLOPT_DNS_SERVERS</span>
-<p class="level1">Preferred DNS servers. See <span Class="emphasis">CURLOPT_DNS_SERVERS(3)</span>
<p class="level0"><a name="CURLOPTACCEPTTIMEOUTMS"></a><span class="nroffip">CURLOPT_ACCEPTTIMEOUT_MS</span>
<p class="level1">Timeout for waiting for the server's connect back to be accepted. See <span Class="emphasis">CURLOPT_ACCEPTTIMEOUT_MS(3)</span> <a name="SSL"></a><h2 class="nroffsh">SSL and SECURITY OPTIONS</h2>
<p class="level0">
@@ -449,16 +431,10 @@ p.roffit {
<p class="level1">Use identifier with SSL engine. See <span Class="emphasis">CURLOPT_SSLENGINE(3)</span>
<p class="level0"><a name="CURLOPTSSLENGINEDEFAULT"></a><span class="nroffip">CURLOPT_SSLENGINE_DEFAULT</span>
<p class="level1">Default SSL engine. See <span Class="emphasis">CURLOPT_SSLENGINE_DEFAULT(3)</span>
-<p class="level0"><a name="CURLOPTSSLFALSESTART"></a><span class="nroffip">CURLOPT_SSL_FALSESTART</span>
-<p class="level1">Enable TLS False Start. See <span Class="emphasis">CURLOPT_SSL_FALSESTART(3)</span>
<p class="level0"><a name="CURLOPTSSLVERSION"></a><span class="nroffip">CURLOPT_SSLVERSION</span>
<p class="level1">SSL version to use. See <span Class="emphasis">CURLOPT_SSLVERSION(3)</span>
-<p class="level0"><a name="CURLOPTSSLVERIFYHOST"></a><span class="nroffip">CURLOPT_SSL_VERIFYHOST</span>
-<p class="level1">Verify the host name in the SSL certificate. See <span Class="emphasis">CURLOPT_SSL_VERIFYHOST(3)</span>
<p class="level0"><a name="CURLOPTSSLVERIFYPEER"></a><span class="nroffip">CURLOPT_SSL_VERIFYPEER</span>
<p class="level1">Verify the SSL certificate. See <span Class="emphasis">CURLOPT_SSL_VERIFYPEER(3)</span>
-<p class="level0"><a name="CURLOPTSSLVERIFYSTATUS"></a><span class="nroffip">CURLOPT_SSL_VERIFYSTATUS</span>
-<p class="level1">Verify the SSL certificate's status. See <span Class="emphasis">CURLOPT_SSL_VERIFYSTATUS(3)</span>
<p class="level0"><a name="CURLOPTCAINFO"></a><span class="nroffip">CURLOPT_CAINFO</span>
<p class="level1">CA cert bundle. See <span Class="emphasis">CURLOPT_CAINFO(3)</span>
<p class="level0"><a name="CURLOPTISSUERCERT"></a><span class="nroffip">CURLOPT_ISSUERCERT</span>
@@ -467,6 +443,8 @@ p.roffit {
<p class="level1">Path to CA cert bundle. See <span Class="emphasis">CURLOPT_CAPATH(3)</span>
<p class="level0"><a name="CURLOPTCRLFILE"></a><span class="nroffip">CURLOPT_CRLFILE</span>
<p class="level1">Certificate Revocation List. See <span Class="emphasis">CURLOPT_CRLFILE(3)</span>
+<p class="level0"><a name="CURLOPTSSLVERIFYHOST"></a><span class="nroffip">CURLOPT_SSL_VERIFYHOST</span>
+<p class="level1">Verify the host name in the SSL certificate. See <span Class="emphasis">CURLOPT_SSL_VERIFYHOST(3)</span>
<p class="level0"><a name="CURLOPTCERTINFO"></a><span class="nroffip">CURLOPT_CERTINFO</span>
<p class="level1">Extract certificate info. See <span Class="emphasis">CURLOPT_CERTINFO(3)</span>
<p class="level0"><a name="CURLOPTPINNEDPUBLICKEY"></a><span class="nroffip">CURLOPT_PINNEDPUBLICKEY</span>
@@ -514,15 +492,15 @@ p.roffit {
<p class="level1">TELNET options. See <span Class="emphasis">CURLOPT_TELNETOPTIONS(3)</span> <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0"><span Class="emphasis">CURLE_OK</span> (zero) means that the option was set properly, non-zero means an error occurred as <span Class="emphasis">&lt;curl/curl.h&gt;</span> defines. See the <a Class="emphasis" href="./libcurl-errors.html">libcurl-errors</a> man page for the full list with descriptions.
<p class="level0">If you try to set an option that libcurl doesn't know about, perhaps because the library is too old to support it or the option was removed in a recent version, this function will return <span Class="emphasis">CURLE_UNKNOWN_OPTION</span>. If support for the option was disabled at compile-time, it will return <span Class="emphasis">CURLE_NOT_BUILT_IN</span>. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; CURLcode res;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp; curl_easy_cleanup(curl);
-}}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; CURLcode res;
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ &nbsp; curl_easy_cleanup(curl);
+ }}
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_easy_init.html">curl_easy_init</a>, <a Class="manpage" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>, <a Class="manpage" href="./curl_easy_reset.html">curl_easy_reset</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_multi_setopt.html">curl_multi_setopt</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/curl_easy_setopt.pdf b/docs/libcurl/curl_easy_setopt.pdf
index 9e2eff067..4f2c948c0 100644
--- a/docs/libcurl/curl_easy_setopt.pdf
+++ b/docs/libcurl/curl_easy_setopt.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_strerror.html b/docs/libcurl/curl_easy_strerror.html
index 0cb4e9900..e279cb6c1 100644
--- a/docs/libcurl/curl_easy_strerror.html
+++ b/docs/libcurl/curl_easy_strerror.html
@@ -4,20 +4,15 @@
<title>curl_easy_strerror man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_easy_strerror - return string describing error code <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">const char *curl_easy_strerror(CURLcode errornum); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">The <a Class="emphasis" href="./curl_easy_strerror.html">curl_easy_strerror</a> function returns a string describing the CURLcode error code passed in the argument <span Class="emphasis">errornum</span>.
<p class="level0">Typically applications also appreciate <span Class="emphasis">CURLOPT_ERRORBUFFER(3)</span> for more specific error descriptions generated at run-time. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/curl_easy_strerror.pdf b/docs/libcurl/curl_easy_strerror.pdf
index 633eb3236..5997bebd2 100644
--- a/docs/libcurl/curl_easy_strerror.pdf
+++ b/docs/libcurl/curl_easy_strerror.pdf
Binary files differ
diff --git a/docs/libcurl/curl_easy_unescape.3 b/docs/libcurl/curl_easy_unescape.3
index 23ce9c3c2..357ad23cf 100644
--- a/docs/libcurl/curl_easy_unescape.3
+++ b/docs/libcurl/curl_easy_unescape.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -48,4 +48,4 @@ Added in 7.15.4 and replaces the old \fIcurl_unescape(3)\fP function.
.SH RETURN VALUE
A pointer to a zero terminated string or NULL if it failed.
.SH "SEE ALSO"
-.BR curl_easy_escape "(3), " curl_free "(3)," RFC 3986
+.BR curl_easy_escape "(3), " curl_free "(3)," RFC 2396
diff --git a/docs/libcurl/curl_easy_unescape.html b/docs/libcurl/curl_easy_unescape.html
index 686ecc314..a2538ad4e 100644
--- a/docs/libcurl/curl_easy_unescape.html
+++ b/docs/libcurl/curl_easy_unescape.html
@@ -4,20 +4,15 @@
<title>curl_easy_unescape man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -61,6 +56,6 @@ p.roffit {
<p class="level0">You must <a Class="emphasis" href="./curl_free.html">curl_free</a> the returned string when you're done with it. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.15.4 and replaces the old <a Class="emphasis" href="./curl_unescape.html">curl_unescape</a> function. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">A pointer to a zero terminated string or NULL if it failed. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./curl_easy_escape.html">curl_easy_escape</a>, <a Class="manpage" href="./curl_free.html">curl_free</a>, <span Class="manpage"> <a href="http://www.ietf.org/rfc/rfc3986.txt">RFC 3986</a></span> <p class="roffit">
+<p class="level0"><a Class="manpage" href="./curl_easy_escape.html">curl_easy_escape</a>, <a Class="manpage" href="./curl_free.html">curl_free</a>, <span Class="manpage"> <a href="http://www.ietf.org/rfc/rfc2396.txt">RFC 2396</a></span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/curl_easy_unescape.pdf b/docs/libcurl/curl_easy_unescape.pdf
index b04a49414..e7880c2c5 100644
--- a/docs/libcurl/curl_easy_unescape.pdf
+++ b/docs/libcurl/curl_easy_unescape.pdf
Binary files differ
diff --git a/docs/libcurl/curl_escape.html b/docs/libcurl/curl_escape.html
index c838c522a..2178839dd 100644
--- a/docs/libcurl/curl_escape.html
+++ b/docs/libcurl/curl_escape.html
@@ -4,20 +4,15 @@
<title>curl_escape man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_escape.pdf b/docs/libcurl/curl_escape.pdf
index 271e5bc06..3c9fea2c3 100644
--- a/docs/libcurl/curl_escape.pdf
+++ b/docs/libcurl/curl_escape.pdf
Binary files differ
diff --git a/docs/libcurl/curl_formadd.3 b/docs/libcurl/curl_formadd.3
index cdae51be2..3e48149ef 100644
--- a/docs/libcurl/curl_formadd.3
+++ b/docs/libcurl/curl_formadd.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -103,9 +103,6 @@ given file match one of the internally known file extensions. For
providing multiple \fBCURLFORM_FILE\fP arguments each followed by the filename
(and each \fICURLFORM_FILE\fP is allowed to have a
\fICURLFORM_CONTENTTYPE\fP).
-
-The given upload file has to exist in its full in the file system already when
-the upload starts, as libcurl needs to read the correct file size beforehand.
.IP CURLFORM_CONTENTTYPE
is used in combination with \fICURLFORM_FILE\fP. Followed by a pointer to a
string which provides the content-type for this part, possibly instead of an
diff --git a/docs/libcurl/curl_formadd.html b/docs/libcurl/curl_formadd.html
index d0b9e2986..dbf8a8041 100644
--- a/docs/libcurl/curl_formadd.html
+++ b/docs/libcurl/curl_formadd.html
@@ -4,20 +4,15 @@
<title>curl_formadd man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -77,7 +72,6 @@ p.roffit {
<p class="level1">followed by a filename, causes that file to be read and its contents used as data in this part. This part does <span Class="emphasis">not</span> automatically become a file upload part simply because its data was read from a file.
<p class="level0"><a name="CURLFORMFILE"></a><span class="nroffip">CURLFORM_FILE</span>
<p class="level1">followed by a filename, makes this part a file upload part. It sets the <span Class="emphasis">filename</span> field to the basename of the provided filename, it reads the contents of the file and passes them as data and sets the content-type if the given file match one of the internally known file extensions. For <a class="bold" href="#CURLFORMFILE">CURLFORM_FILE</a> the user may send one or more files in one part by providing multiple <a class="bold" href="#CURLFORMFILE">CURLFORM_FILE</a> arguments each followed by the filename (and each <a class="emphasis" href="#CURLFORMFILE">CURLFORM_FILE</a> is allowed to have a <a class="emphasis" href="#CURLFORMCONTENTTYPE">CURLFORM_CONTENTTYPE</a>).
-<p class="level1">The given upload file has to exist in its full in the file system already when the upload starts, as libcurl needs to read the correct file size beforehand.
<p class="level0"><a name="CURLFORMCONTENTTYPE"></a><span class="nroffip">CURLFORM_CONTENTTYPE</span>
<p class="level1">is used in combination with <a class="emphasis" href="#CURLFORMFILE">CURLFORM_FILE</a>. Followed by a pointer to a string which provides the content-type for this part, possibly instead of an internally chosen one.
<p class="level0"><a name="CURLFORMFILENAME"></a><span class="nroffip">CURLFORM_FILENAME</span>
@@ -97,86 +91,73 @@ p.roffit {
<p class="level1">When you've passed the HttpPost pointer to <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> (using the <span Class="emphasis">CURLOPT_HTTPPOST(3)</span> option), you must not free the list until after you've called <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a> for the curl handle.
<p class="level1">See example below. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">0 means everything was ok, non-zero means an error occurred corresponding to a CURL_FORMADD_* constant defined in <span Class="emphasis">&lt;curl/curl.h&gt;</span> <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&nbsp;
-&nbsp;struct curl_httppost* post = NULL;
-&nbsp;struct curl_httppost* last = NULL;
-&nbsp;char namebuffer[] = "name buffer";
-&nbsp;long namelength = strlen(namebuffer);
-&nbsp;char buffer[] = "test buffer";
-&nbsp;char htmlbuffer[] = "&lt;HTML&gt;test buffer&lt;/HTML&gt;";
-&nbsp;long htmlbufferlength = strlen(htmlbuffer);
-&nbsp;struct curl_forms forms[3];
-&nbsp;char file1[] = "my-face.jpg";
-&nbsp;char file2[] = "your-face.jpg";
-&nbsp;/* add null character into htmlbuffer, to demonstrate that
-&nbsp; transfers of buffers containing null characters actually work
-&nbsp;*/
-&nbsp;htmlbuffer[8] = '\0';
-&nbsp;
-&nbsp;/* Add simple name/content section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "name",
-&nbsp; CURLFORM_COPYCONTENTS, "content", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add simple name/content/contenttype section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "htmlcode",
-&nbsp; CURLFORM_COPYCONTENTS, "&lt;HTML&gt;&lt;/HTML&gt;",
-&nbsp; CURLFORM_CONTENTTYPE, "text/html", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add name/ptrcontent section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "name_for_ptrcontent",
-&nbsp; CURLFORM_PTRCONTENTS, buffer, CURLFORM_END);
-&nbsp;
-&nbsp;/* Add ptrname/ptrcontent section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_PTRNAME, namebuffer,
-&nbsp; CURLFORM_PTRCONTENTS, buffer, CURLFORM_NAMELENGTH,
-&nbsp; namelength, CURLFORM_END);
-&nbsp;
-&nbsp;/* Add name/ptrcontent/contenttype section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "html_code_with_hole",
-&nbsp; CURLFORM_PTRCONTENTS, htmlbuffer,
-&nbsp; CURLFORM_CONTENTSLENGTH, htmlbufferlength,
-&nbsp; CURLFORM_CONTENTTYPE, "text/html", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add simple file section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "picture",
-&nbsp; CURLFORM_FILE, "my-face.jpg", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add file/contenttype section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "picture",
-&nbsp; CURLFORM_FILE, "my-face.jpg",
-&nbsp; CURLFORM_CONTENTTYPE, "image/jpeg", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add two file section */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "pictures",
-&nbsp; CURLFORM_FILE, "my-face.jpg",
-&nbsp; CURLFORM_FILE, "your-face.jpg", CURLFORM_END);
-&nbsp;
-&nbsp;/* Add two file section using CURLFORM_ARRAY */
-&nbsp;forms[0].option = CURLFORM_FILE;
-&nbsp;forms[0].value = file1;
-&nbsp;forms[1].option = CURLFORM_FILE;
-&nbsp;forms[1].value = file2;
-&nbsp;forms[2].option = CURLFORM_END;
-&nbsp;
-&nbsp;/* Add a buffer to upload */
-&nbsp;curl_formadd(&post, &last,
-&nbsp; CURLFORM_COPYNAME, "name",
-&nbsp; CURLFORM_BUFFER, "data",
-&nbsp; CURLFORM_BUFFERPTR, record,
-&nbsp; CURLFORM_BUFFERLENGTH, record_length,
-&nbsp; CURLFORM_END);
-&nbsp;
-&nbsp;/* no option needed for the end marker */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "pictures",
-&nbsp; CURLFORM_ARRAY, forms, CURLFORM_END);
-&nbsp;/* Add the content of a file as a normal post text value */
-&nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "filecontent",
-&nbsp; CURLFORM_FILECONTENT, ".bashrc", CURLFORM_END);
-&nbsp;/* Set the form info */
-&nbsp;curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);
-&nbsp;
-</pre>
+<p class="level0"><pre>
+<p class="level0"><p class="level0">&nbsp;struct curl_httppost* post = NULL;
+ &nbsp;struct curl_httppost* last = NULL;
+ &nbsp;char namebuffer[] = "name buffer";
+ &nbsp;long namelength = strlen(namebuffer);
+ &nbsp;char buffer[] = "test buffer";
+ &nbsp;char htmlbuffer[] = "&lt;HTML&gt;test buffer&lt;/HTML&gt;";
+ &nbsp;long htmlbufferlength = strlen(htmlbuffer);
+ &nbsp;struct curl_forms forms[3];
+ &nbsp;char file1[] = "my-face.jpg";
+ &nbsp;char file2[] = "your-face.jpg";
+ &nbsp;/* add null character into htmlbuffer, to demonstrate that
+ &nbsp; transfers of buffers containing null characters actually work
+ &nbsp;*/
+ &nbsp;htmlbuffer[8] = '\0';
+ <p class="level0">&nbsp;/* Add simple name/content section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "name",
+ &nbsp; CURLFORM_COPYCONTENTS, "content", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add simple name/content/contenttype section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "htmlcode",
+ &nbsp; CURLFORM_COPYCONTENTS, "&lt;HTML&gt;&lt;/HTML&gt;",
+ &nbsp; CURLFORM_CONTENTTYPE, "text/html", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add name/ptrcontent section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "name_for_ptrcontent",
+ &nbsp; CURLFORM_PTRCONTENTS, buffer, CURLFORM_END);
+ <p class="level0">&nbsp;/* Add ptrname/ptrcontent section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_PTRNAME, namebuffer,
+ &nbsp; CURLFORM_PTRCONTENTS, buffer, CURLFORM_NAMELENGTH,
+ &nbsp; namelength, CURLFORM_END);
+ <p class="level0">&nbsp;/* Add name/ptrcontent/contenttype section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "html_code_with_hole",
+ &nbsp; CURLFORM_PTRCONTENTS, htmlbuffer,
+ &nbsp; CURLFORM_CONTENTSLENGTH, htmlbufferlength,
+ &nbsp; CURLFORM_CONTENTTYPE, "text/html", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add simple file section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "picture",
+ &nbsp; CURLFORM_FILE, "my-face.jpg", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add file/contenttype section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "picture",
+ &nbsp; CURLFORM_FILE, "my-face.jpg",
+ &nbsp; CURLFORM_CONTENTTYPE, "image/jpeg", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add two file section */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "pictures",
+ &nbsp; CURLFORM_FILE, "my-face.jpg",
+ &nbsp; CURLFORM_FILE, "your-face.jpg", CURLFORM_END);
+ <p class="level0">&nbsp;/* Add two file section using CURLFORM_ARRAY */
+ &nbsp;forms[0].option = CURLFORM_FILE;
+ &nbsp;forms[0].value = file1;
+ &nbsp;forms[1].option = CURLFORM_FILE;
+ &nbsp;forms[1].value = file2;
+ &nbsp;forms[2].option = CURLFORM_END;
+ <p class="level0">&nbsp;/* Add a buffer to upload */
+ &nbsp;curl_formadd(&post, &last,
+ &nbsp; CURLFORM_COPYNAME, "name",
+ &nbsp; CURLFORM_BUFFER, "data",
+ &nbsp; CURLFORM_BUFFERPTR, record,
+ &nbsp; CURLFORM_BUFFERLENGTH, record_length,
+ &nbsp; CURLFORM_END);
+ <p class="level0">&nbsp;/* no option needed for the end marker */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "pictures",
+ &nbsp; CURLFORM_ARRAY, forms, CURLFORM_END);
+ &nbsp;/* Add the content of a file as a normal post text value */
+ &nbsp;curl_formadd(&post, &last, CURLFORM_COPYNAME, "filecontent",
+ &nbsp; CURLFORM_FILECONTENT, ".bashrc", CURLFORM_END);
+ &nbsp;/* Set the form info */
+ &nbsp;curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);
+ <p class="level0"></pre>
<a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_easy_setopt.html">curl_easy_setopt</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_formfree.html">curl_formfree</a>, <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/curl_formadd.pdf b/docs/libcurl/curl_formadd.pdf
index 27bdeda80..50f2a7c52 100644
--- a/docs/libcurl/curl_formadd.pdf
+++ b/docs/libcurl/curl_formadd.pdf
Binary files differ
diff --git a/docs/libcurl/curl_formfree.html b/docs/libcurl/curl_formfree.html
index 4ee26bb7c..620220e39 100644
--- a/docs/libcurl/curl_formfree.html
+++ b/docs/libcurl/curl_formfree.html
@@ -4,20 +4,15 @@
<title>curl_formfree man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_formfree.pdf b/docs/libcurl/curl_formfree.pdf
index b713cc634..3182daa3b 100644
--- a/docs/libcurl/curl_formfree.pdf
+++ b/docs/libcurl/curl_formfree.pdf
Binary files differ
diff --git a/docs/libcurl/curl_formget.3 b/docs/libcurl/curl_formget.3
index 5781bce12..b52622136 100644
--- a/docs/libcurl/curl_formget.3
+++ b/docs/libcurl/curl_formget.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2011, 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
@@ -26,7 +26,7 @@ curl_formget - serialize a previously built multipart/formdata HTTP POST chain
.nf
.B #include <curl/curl.h>
-int curl_formget(struct curl_httppost * form, void *userp,
+void curl_formget(struct curl_httppost * form, void *userp,
curl_formget_callback append );
.SH DESCRIPTION
curl_formget() is used to serialize data previously built/appended with
diff --git a/docs/libcurl/curl_formget.html b/docs/libcurl/curl_formget.html
index c4e40aa91..29c08687a 100644
--- a/docs/libcurl/curl_formget.html
+++ b/docs/libcurl/curl_formget.html
@@ -4,20 +4,15 @@
<title>curl_formget man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,36 +47,33 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_formget - serialize a previously built multipart/formdata HTTP POST chain <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-<span Class="bold">#include &lt;curl/curl.h&gt;</span>
-&nbsp;
-int curl_formget(struct curl_httppost * form, void *userp,
-&nbsp; curl_formget_callback append );
-</pre>
+<p class="level0"><pre>
+<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span>
+<p class="level0">void curl_formget(struct curl_httppost * form, void *userp,
+ &nbsp; curl_formget_callback append );
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">curl_formget() is used to serialize data previously built/appended with <a Class="emphasis" href="./curl_formadd.html">curl_formadd</a>. Accepts a void pointer as second argument named <span Class="emphasis">userp</span> which will be passed as the first argument to the curl_formget_callback function.
<p class="level0"><span Class="bold">typedef size_t (*curl_formget_callback)(void * userp, const char * buf,</span> <span Class="bold"> size_t len );</span>
<p class="level0">The curl_formget_callback will be executed for each part of the HTTP POST chain. The character buffer passed to the callback must not be freed. The callback should return the buffer length passed to it on success.
<p class="level0">If the <span Class="bold">CURLFORM_STREAM</span> option is used in the formpost, it will prevent <a Class="emphasis" href="./curl_formget.html">curl_formget</a> from working until you've performed the actual HTTP request as only then will libcurl get the actual read callback to use! <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">0 means everything was ok, non-zero means an error occurred <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&nbsp;
-&nbsp;size_t print_httppost_callback(void *arg, const char *buf, size_t len)
-&nbsp;{
-&nbsp; fwrite(buf, len, 1, stdout);
-&nbsp; (*(size_t *) arg) += len;
-&nbsp; return len;
-&nbsp;}
-&nbsp;
-&nbsp;size_t print_httppost(struct curl_httppost *post)
-&nbsp;{
-&nbsp; size_t total_size = 0;
-&nbsp; if(curl_formget(post, &total_size, print_httppost_callback)) {
-&nbsp; return (size_t) -1;
-&nbsp; }
-&nbsp; return total_size;
-&nbsp;}
-</pre>
+<p class="level0"><pre>
+<p class="level0"><p class="level0">&nbsp;size_t print_httppost_callback(void *arg, const char *buf, size_t len)
+ &nbsp;{
+ &nbsp; fwrite(buf, len, 1, stdout);
+ &nbsp; (*(size_t *) arg) += len;
+ &nbsp; return len;
+ &nbsp;}
+ <p class="level0">&nbsp;size_t print_httppost(struct curl_httppost *post)
+ &nbsp;{
+ &nbsp; size_t total_size = 0;
+ &nbsp; if(curl_formget(post, &total_size, print_httppost_callback)) {
+ &nbsp; return (size_t) -1;
+ &nbsp; }
+ &nbsp; return total_size;
+ &nbsp;}
+ </pre>
<a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">This function was added in libcurl 7.15.5 <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_formadd.html">curl_formadd</a>, <p class="roffit">
diff --git a/docs/libcurl/curl_formget.pdf b/docs/libcurl/curl_formget.pdf
index 62e679b7c..6b50dc588 100644
--- a/docs/libcurl/curl_formget.pdf
+++ b/docs/libcurl/curl_formget.pdf
Binary files differ
diff --git a/docs/libcurl/curl_free.html b/docs/libcurl/curl_free.html
index e5eaa6690..87fd07113 100644
--- a/docs/libcurl/curl_free.html
+++ b/docs/libcurl/curl_free.html
@@ -4,20 +4,15 @@
<title>curl_free man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_free.pdf b/docs/libcurl/curl_free.pdf
index 8df5481d6..20e226cc5 100644
--- a/docs/libcurl/curl_free.pdf
+++ b/docs/libcurl/curl_free.pdf
Binary files differ
diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3
index 2e7d7aa7f..ff31ac7c7 100644
--- a/docs/libcurl/curl_getdate.3
+++ b/docs/libcurl/curl_getdate.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -91,7 +91,7 @@ Sat, 11 Sep 2004 21:32:11 +0200
This parser was written to handle date formats specified in RFC 822 (including
the update in RFC 1123) using time zone name or time zone delta and RFC 850
(obsoleted by RFC 1036) and ANSI C's asctime() format. These formats are the
-only ones RFC 7231 says HTTP applications may use.
+only ones RFC2616 says HTTP applications may use.
.SH RETURN VALUE
This function returns -1 when it fails to parse the date string. Otherwise it
returns the number of seconds as described.
diff --git a/docs/libcurl/curl_getdate.html b/docs/libcurl/curl_getdate.html
index 1391898a8..53cd9bb51 100644
--- a/docs/libcurl/curl_getdate.html
+++ b/docs/libcurl/curl_getdate.html
@@ -4,20 +4,15 @@
<title>curl_getdate man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -63,33 +58,33 @@ p.roffit {
<p class="level0"><span Class="bold">day of the week items</span> Specifies a day of the week. Days of the week may be spelled out in full (using english): `Sunday', `Monday', etc or they may be abbreviated to their first three letters. This is usually not info that adds anything.
<p class="level0"><span Class="bold">pure numbers</span> If a decimal number of the form YYYYMMDD appears, then YYYY is read as the year, MM as the month number and DD as the day of the month, for the specified calendar date.
<p class="level0"><a name="EXAMPLES"></a><h2 class="nroffsh">EXAMPLES</h2>
-<p class="level0"><pre class="level0">
-Sun, 06 Nov 1994 08:49:37 GMT
-Sunday, 06-Nov-94 08:49:37 GMT
-Sun Nov 6 08:49:37 1994
-06 Nov 1994 08:49:37 GMT
-06-Nov-94 08:49:37 GMT
-Nov 6 08:49:37 1994
-06 Nov 1994 08:49:37
-06-Nov-94 08:49:37
-1994 Nov 6 08:49:37
-GMT 08:49:37 06-Nov-94 Sunday
-94 6 Nov 08:49:37
-1994 Nov 6
-06-Nov-94
-Sun Nov 6 94
-1994.Nov.6
-Sun/Nov/6/94/GMT
-Sun, 06 Nov 1994 08:49:37 CET
-06 Nov 1994 08:49:37 EST
-Sun, 12 Sep 2004 15:05:58 -0700
-Sat, 11 Sep 2004 21:32:11 +0200
-20040912 15:05:58 -0700
-20040911 +0200
-</pre>
+<p class="level0"><pre>
+<p class="level0">Sun, 06 Nov 1994 08:49:37 GMT
+ Sunday, 06-Nov-94 08:49:37 GMT
+ Sun Nov 6 08:49:37 1994
+ 06 Nov 1994 08:49:37 GMT
+ 06-Nov-94 08:49:37 GMT
+ Nov 6 08:49:37 1994
+ 06 Nov 1994 08:49:37
+ 06-Nov-94 08:49:37
+ 1994 Nov 6 08:49:37
+ GMT 08:49:37 06-Nov-94 Sunday
+ 94 6 Nov 08:49:37
+ 1994 Nov 6
+ 06-Nov-94
+ Sun Nov 6 94
+ 1994.Nov.6
+ Sun/Nov/6/94/GMT
+ Sun, 06 Nov 1994 08:49:37 CET
+ 06 Nov 1994 08:49:37 EST
+ Sun, 12 Sep 2004 15:05:58 -0700
+ Sat, 11 Sep 2004 21:32:11 +0200
+ 20040912 15:05:58 -0700
+ 20040911 +0200
+ </pre>
<p class="level0"><a name="STANDARDS"></a><h2 class="nroffsh">STANDARDS</h2>
-<p class="level0">This parser was written to handle date formats specified in <a href="http://www.ietf.org/rfc/rfc822.txt">RFC 822</a> (including the update in <a href="http://www.ietf.org/rfc/rfc1123.txt">RFC 1123</a>) using time zone name or time zone delta and RFC 850 (obsoleted by <a href="http://www.ietf.org/rfc/rfc1036.txt">RFC 1036</a>) and ANSI C's asctime() format. These formats are the only ones <a href="http://www.ietf.org/rfc/rfc7231.txt">RFC 7231</a> says HTTP applications may use. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">This parser was written to handle date formats specified in <a href="http://www.ietf.org/rfc/rfc822.txt">RFC 822</a> (including the update in <a href="http://www.ietf.org/rfc/rfc1123.txt">RFC 1123</a>) using time zone name or time zone delta and RFC 850 (obsoleted by <a href="http://www.ietf.org/rfc/rfc1036.txt">RFC 1036</a>) and ANSI C's asctime() format. These formats are the only ones <a href="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616</a> says HTTP applications may use. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">This function returns -1 when it fails to parse the date string. Otherwise it returns the number of seconds as described.
<p class="level0">If the year is larger than 2037 on systems with 32 bit time_t, this function will return 0x7fffffff (since that is the largest possible signed 32 bit number).
<p class="level0">Having a 64 bit time_t is not a guarantee that dates beyond 03:14:07 UTC, January 19, 2038 will work fine. On systems with a 64 bit time_t but with a crippled mktime(), <a Class="emphasis" href="./curl_getdate.html">curl_getdate</a> will return -1 in this case. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
diff --git a/docs/libcurl/curl_getdate.pdf b/docs/libcurl/curl_getdate.pdf
index 36c7c7abd..c004c5a13 100644
--- a/docs/libcurl/curl_getdate.pdf
+++ b/docs/libcurl/curl_getdate.pdf
Binary files differ
diff --git a/docs/libcurl/curl_getenv.html b/docs/libcurl/curl_getenv.html
index d73a0afc3..0cb0c3824 100644
--- a/docs/libcurl/curl_getenv.html
+++ b/docs/libcurl/curl_getenv.html
@@ -4,20 +4,15 @@
<title>curl_getenv man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_getenv.pdf b/docs/libcurl/curl_getenv.pdf
index 16beec2e1..fe807fa9f 100644
--- a/docs/libcurl/curl_getenv.pdf
+++ b/docs/libcurl/curl_getenv.pdf
Binary files differ
diff --git a/docs/libcurl/curl_global_cleanup.html b/docs/libcurl/curl_global_cleanup.html
index 1f798d850..f46b0091f 100644
--- a/docs/libcurl/curl_global_cleanup.html
+++ b/docs/libcurl/curl_global_cleanup.html
@@ -4,20 +4,15 @@
<title>curl_global_cleanup man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_global_cleanup.pdf b/docs/libcurl/curl_global_cleanup.pdf
index 1de52a547..2fcac63ae 100644
--- a/docs/libcurl/curl_global_cleanup.pdf
+++ b/docs/libcurl/curl_global_cleanup.pdf
Binary files differ
diff --git a/docs/libcurl/curl_global_init.html b/docs/libcurl/curl_global_init.html
index 7a8ca60ed..1552321d5 100644
--- a/docs/libcurl/curl_global_init.html
+++ b/docs/libcurl/curl_global_init.html
@@ -4,20 +4,15 @@
<title>curl_global_init man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_global_init.pdf b/docs/libcurl/curl_global_init.pdf
index 6d234fd2e..f10df0d1c 100644
--- a/docs/libcurl/curl_global_init.pdf
+++ b/docs/libcurl/curl_global_init.pdf
Binary files differ
diff --git a/docs/libcurl/curl_global_init_mem.3 b/docs/libcurl/curl_global_init_mem.3
index a21e63d8b..9cddef7c3 100644
--- a/docs/libcurl/curl_global_init_mem.3
+++ b/docs/libcurl/curl_global_init_mem.3
@@ -36,10 +36,9 @@ This function works exactly as \fIcurl_global_init(3)\fP with one addition: it
allows the application to set callbacks to replace the otherwise used internal
memory functions.
-When you use this function, all callback arguments must be set to valid
-function pointers. \fBIf you are using libcurl from multiple threads or with
-the threaded resolver (the default in Windows) the callback replacement
-functions must be thread safe.\fP
+This man page only adds documentation for the callbacks, see the
+\fIcurl_global_init(3)\fP man page for all the rest. When you use this
+function, all callback arguments must be set to valid function pointers.
The prototypes for the given callbacks should match these:
.IP "void *malloc_callback(size_t size);"
@@ -52,9 +51,6 @@ To replace realloc()
To replace strdup()
.IP "void *calloc_callback(size_t nmemb, size_t size);"
To replace calloc()
-.RE
-This function is otherwise the same as \fIcurl_global_init(3)\fP, please refer
-to that man page for documentation.
.SH "CAUTION"
Manipulating these gives considerable powers to the application to severely
screw things up for libcurl. Take care!
diff --git a/docs/libcurl/curl_global_init_mem.html b/docs/libcurl/curl_global_init_mem.html
index b8c4bcd26..883277cfe 100644
--- a/docs/libcurl/curl_global_init_mem.html
+++ b/docs/libcurl/curl_global_init_mem.html
@@ -4,20 +4,15 @@
<title>curl_global_init_mem man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,8 +47,8 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_global_init_mem - Global libcurl initialisation with memory callbacks <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span> <pre class="level0">
-<span Class="bold">CURLcode curl_global_init_mem(long flags,</span>
+<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span> <pre>
+<p class="level0"><span Class="bold">CURLcode curl_global_init_mem(long flags,</span>
<span Class="bold"> curl_malloc_callback m,</span>
<span Class="bold"> curl_free_callback f,</span>
<span Class="bold"> curl_realloc_callback r,</span>
@@ -62,7 +57,7 @@ p.roffit {
</pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function works exactly as <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a> with one addition: it allows the application to set callbacks to replace the otherwise used internal memory functions.
-<p class="level0">When you use this function, all callback arguments must be set to valid function pointers. <span class="bold">If you are using libcurl from multiple threads or with the threaded resolver (the default in Windows) the callback replacement functions must be thread safe.</span>
+<p class="level0">This man page only adds documentation for the callbacks, see the <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a> man page for all the rest. When you use this function, all callback arguments must be set to valid function pointers.
<p class="level0">The prototypes for the given callbacks should match these:
<p class="level0"><a name="void"></a><span class="nroffip">void *malloc_callback(size_t size);</span>
<p class="level1">To replace malloc()
@@ -73,8 +68,7 @@ p.roffit {
<p class="level0"><a name="char"></a><span class="nroffip">char *strdup_callback(const char *str);</span>
<p class="level1">To replace strdup()
<p class="level0"><a name="void"></a><span class="nroffip">void *calloc_callback(size_t nmemb, size_t size);</span>
-<p class="level1">To replace calloc()
-<p class="level0">This function is otherwise the same as <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a>, please refer to that man page for documentation. <a name="CAUTION"></a><h2 class="nroffsh">CAUTION</h2>
+<p class="level1">To replace calloc() <a name="CAUTION"></a><h2 class="nroffsh">CAUTION</h2>
<p class="level0">Manipulating these gives considerable powers to the application to severely screw things up for libcurl. Take care! <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_global_init.html">curl_global_init</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_global_cleanup.html">curl_global_cleanup</a>, <span Class="manpage"> </span>
<p class="level0"><p class="roffit">
diff --git a/docs/libcurl/curl_global_init_mem.pdf b/docs/libcurl/curl_global_init_mem.pdf
index 1d98c6837..fb9b1643b 100644
--- a/docs/libcurl/curl_global_init_mem.pdf
+++ b/docs/libcurl/curl_global_init_mem.pdf
Binary files differ
diff --git a/docs/libcurl/curl_mprintf.html b/docs/libcurl/curl_mprintf.html
index 6db77f3ea..9bc97908b 100644
--- a/docs/libcurl/curl_mprintf.html
+++ b/docs/libcurl/curl_mprintf.html
@@ -4,20 +4,15 @@
<title>curl_printf man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -68,7 +63,7 @@ p.roffit {
<p class="level1"><span Class="bold">curl_maprintf()</span> Like printf() but returns the output string as a malloc()ed string. The returned string must be free()ed by the receiver.
<p class="level1"><span Class="bold">curl_mvaprintf()</span> Like curl_maprintf() but takes a va_list pointer argument instead of a variable amount of arguments.
<p class="level0">
-<p class="level0">To easily use all these cloned functions instead of the normal ones, &#35;define _MPRINTF_REPLACE before you include the &lt;curl/mprintf.h&gt; file. Then all the normal names like printf, fprintf, sprintf etc will use the curl-functions instead. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">To easily use all these cloned functions instead of the normal ones, #define _MPRINTF_REPLACE before you include the &lt;curl/mprintf.h&gt; file. Then all the normal names like printf, fprintf, sprintf etc will use the curl-functions instead. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">These function will be removed from the public libcurl API in a near future. They will instead be made "available" by source code access only, and then as curlx_-prefixed functions. See lib/README.curlx for further details. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">The <span Class="bold">curl_maprintf</span> and <span Class="bold">curl_mvaprintf</span> functions return a pointer to a newly allocated string, or NULL if it failed.
<p class="level0">All other functions return the number of characters they actually outputted. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
diff --git a/docs/libcurl/curl_mprintf.pdf b/docs/libcurl/curl_mprintf.pdf
index ac74bc42e..37c754ab3 100644
--- a/docs/libcurl/curl_mprintf.pdf
+++ b/docs/libcurl/curl_mprintf.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_add_handle.html b/docs/libcurl/curl_multi_add_handle.html
index 2929a1cfd..a0f2ae2cd 100644
--- a/docs/libcurl/curl_multi_add_handle.html
+++ b/docs/libcurl/curl_multi_add_handle.html
@@ -4,20 +4,15 @@
<title>curl_multi_add_handle man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_add_handle - add an easy handle to a multi session <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_add_handle(CURLM *multi_handle, CURL *easy_handle);
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Adds a standard easy handle to the multi stack. This function call will make this <span Class="emphasis">multi_handle</span> control the specified <span Class="emphasis">easy_handle</span>.
diff --git a/docs/libcurl/curl_multi_add_handle.pdf b/docs/libcurl/curl_multi_add_handle.pdf
index f9ec56671..c5fa51ba4 100644
--- a/docs/libcurl/curl_multi_add_handle.pdf
+++ b/docs/libcurl/curl_multi_add_handle.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_assign.html b/docs/libcurl/curl_multi_assign.html
index ade4a7f74..64a7da43f 100644
--- a/docs/libcurl/curl_multi_assign.html
+++ b/docs/libcurl/curl_multi_assign.html
@@ -4,20 +4,15 @@
<title>curl_multi_assign man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_assign - set data to associate with an internal socket <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_assign(CURLM *multi_handle, curl_socket_t sockfd, &nbsp; void *sockptr); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function creates an association in the multi handle between the given socket and a private pointer of the application. This is designed for <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> uses.
<p class="level0">When set, the <span Class="emphasis">sockptr</span> pointer will be passed to all future socket callbacks for the specific <span Class="emphasis">sockfd</span> socket.
diff --git a/docs/libcurl/curl_multi_assign.pdf b/docs/libcurl/curl_multi_assign.pdf
index a3f1e269e..4ec8b3e95 100644
--- a/docs/libcurl/curl_multi_assign.pdf
+++ b/docs/libcurl/curl_multi_assign.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_cleanup.html b/docs/libcurl/curl_multi_cleanup.html
index 95aa4f905..b0a52bfba 100644
--- a/docs/libcurl/curl_multi_cleanup.html
+++ b/docs/libcurl/curl_multi_cleanup.html
@@ -4,20 +4,15 @@
<title>curl_multi_cleanup man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_multi_cleanup.pdf b/docs/libcurl/curl_multi_cleanup.pdf
index 8204aee89..6db40f0e4 100644
--- a/docs/libcurl/curl_multi_cleanup.pdf
+++ b/docs/libcurl/curl_multi_cleanup.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_fdset.html b/docs/libcurl/curl_multi_fdset.html
index 3a48bbc7a..64678bd6b 100644
--- a/docs/libcurl/curl_multi_fdset.html
+++ b/docs/libcurl/curl_multi_fdset.html
@@ -4,20 +4,15 @@
<title>curl_multi_fdset man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,15 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_fdset - extracts file descriptor information from a multi handle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_fdset(CURLM *multi_handle,
-&nbsp; fd_set *read_fd_set,
-&nbsp; fd_set *write_fd_set,
-&nbsp; fd_set *exc_fd_set,
-&nbsp; int *max_fd);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLMcode curl_multi_fdset(CURLM *multi_handle,
+ &nbsp; fd_set *read_fd_set,
+ &nbsp; fd_set *write_fd_set,
+ &nbsp; fd_set *exc_fd_set,
+ &nbsp; int *max_fd);
+ <p class="level0"></pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function extracts file descriptor information from a given multi_handle. libcurl returns its fd_set sets. The application can use these to select() on, but be sure to FD_ZERO them before calling this function as <a Class="emphasis" href="./curl_multi_fdset.html">curl_multi_fdset</a> only adds its own descriptors, it doesn't zero or otherwise remove any others. The <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> function should be called as soon as one of them is ready to be read from or written to.
<p class="level0">If the <span Class="emphasis">read_fd_set</span> argument is not a null pointer, it points to an object of type fd_set that on returns specifies the file descriptors to be checked for being ready to read.
diff --git a/docs/libcurl/curl_multi_fdset.pdf b/docs/libcurl/curl_multi_fdset.pdf
index 5b83a0e43..9333266f1 100644
--- a/docs/libcurl/curl_multi_fdset.pdf
+++ b/docs/libcurl/curl_multi_fdset.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_info_read.3 b/docs/libcurl/curl_multi_info_read.3
index 03be341b2..875176486 100644
--- a/docs/libcurl/curl_multi_info_read.3
+++ b/docs/libcurl/curl_multi_info_read.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2011, 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
@@ -49,8 +49,8 @@ calling \fIcurl_multi_cleanup(3)\fP, \fIcurl_multi_remove_handle(3)\fP or
\fIcurl_easy_cleanup(3)\fP.
The 'CURLMsg' struct is very simple and only contains very basic information.
-If more involved information is wanted, the particular "easy handle" is
-present in that struct and can be used in subsequent regular
+If more involved information is wanted, the particular "easy handle" in
+present in that struct and can thus be used in subsequent regular
\fIcurl_easy_getinfo(3)\fP calls (or similar):
.nf
@@ -68,24 +68,6 @@ is done, and then \fBresult\fP contains the return code for the easy handle
that just completed.
At this point, there are no other \fBmsg\fP types defined.
-.SH EXAMPLE
-.nf
-struct CURLMsg *m;
-
-/* call curl_multi_perform or curl_multi_socket_action first, then loop
- through and check if there are any transfers that have completed */
-
-do {
- int msgq = 0;
- m = curl_multi_info_read(multi_handle, &msgq);
- if(m && (m->msg == CURLMSG_DONE)) {
- CURL *e = m->easy_handle;
- transfers--;
- curl_multi_remove_handle(multi_handle, e);
- curl_easy_cleanup(e);
- }
-} while(m);
-.fi
.SH "RETURN VALUE"
A pointer to a filled-in struct, or NULL if it failed or ran out of
structs. It also writes the number of messages left in the queue (after this
diff --git a/docs/libcurl/curl_multi_info_read.html b/docs/libcurl/curl_multi_info_read.html
index f83ed9ea9..816f55b52 100644
--- a/docs/libcurl/curl_multi_info_read.html
+++ b/docs/libcurl/curl_multi_info_read.html
@@ -4,20 +4,15 @@
<title>curl_multi_info_read man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,46 +47,27 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_info_read - read multi stack informationals <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMsg *curl_multi_info_read( CURLM *multi_handle, &nbsp; int *msgs_in_queue);
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Ask the multi handle if there are any messages/informationals from the individual transfers. Messages may include informationals such as an error code from the transfer or just the fact that a transfer is completed. More details on these should be written down as well.
<p class="level0">Repeated calls to this function will return a new struct each time, until a NULL is returned as a signal that there is no more to get at this point. The integer pointed to with <span Class="emphasis">msgs_in_queue</span> will contain the number of remaining messages after this function was called.
<p class="level0">When you fetch a message using this function, it is removed from the internal queue so calling this function again will not return the same message again. It will instead return new messages at each new invoke until the queue is emptied.
<p class="level0"><span Class="bold">WARNING:</span> The data the returned pointer points to will not survive calling <a Class="emphasis" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>, <a Class="emphasis" href="./curl_multi_remove_handle.html">curl_multi_remove_handle</a> or <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>.
-<p class="level0">The 'CURLMsg' struct is very simple and only contains very basic information. If more involved information is wanted, the particular "easy handle" is present in that struct and can be used in subsequent regular <a Class="emphasis" href="./curl_easy_getinfo.html">curl_easy_getinfo</a> calls (or similar):
-<p class="level0"><pre class="level0">
-&nbsp;struct CURLMsg {
-&nbsp; CURLMSG msg; /* what this message means */
-&nbsp; CURL *easy_handle; /* the handle it concerns */
-&nbsp; union {
-&nbsp; void *whatever; /* message-specific data */
-&nbsp; CURLcode result; /* return code for transfer */
-&nbsp; } data;
-&nbsp;};
-</pre>
+<p class="level0">The 'CURLMsg' struct is very simple and only contains very basic information. If more involved information is wanted, the particular "easy handle" in present in that struct and can thus be used in subsequent regular <a Class="emphasis" href="./curl_easy_getinfo.html">curl_easy_getinfo</a> calls (or similar):
+<p class="level0"><pre>
+<p class="level0">&nbsp;struct CURLMsg {
+ &nbsp; CURLMSG msg; /* what this message means */
+ &nbsp; CURL *easy_handle; /* the handle it concerns */
+ &nbsp; union {
+ &nbsp; void *whatever; /* message-specific data */
+ &nbsp; CURLcode result; /* return code for transfer */
+ &nbsp; } data;
+ &nbsp;};
+ </pre>
<p class="level0">When <span Class="bold">msg</span> is <span Class="emphasis">CURLMSG_DONE</span>, the message identifies a transfer that is done, and then <span Class="bold">result</span> contains the return code for the easy handle that just completed.
-<p class="level0">At this point, there are no other <span Class="bold">msg</span> types defined. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-struct CURLMsg *m;
-&nbsp;
-/* call curl_multi_perform or curl_multi_socket_action first, then loop
-&nbsp; through and check if there are any transfers that have completed */
-&nbsp;
-do {
-&nbsp; int msgq = 0;
-&nbsp; m = curl_multi_info_read(multi_handle, &msgq);
-&nbsp; if(m && (m-&gt;msg == CURLMSG_DONE)) {
-&nbsp; CURL *e = m-&gt;easy_handle;
-&nbsp; transfers--;
-&nbsp; curl_multi_remove_handle(multi_handle, e);
-&nbsp; curl_easy_cleanup(e);
-&nbsp; }
-} while(m);
-</pre>
-
-<p class="level0"><a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">At this point, there are no other <span Class="bold">msg</span> types defined. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">A pointer to a filled-in struct, or NULL if it failed or ran out of structs. It also writes the number of messages left in the queue (after this read) in the integer the second argument points to. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>, <a Class="manpage" href="./curl_multi_init.html">curl_multi_init</a>, <a Class="manpage" href="./curl_multi_perform.html">curl_multi_perform</a>, <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/curl_multi_info_read.pdf b/docs/libcurl/curl_multi_info_read.pdf
index 9fe52da72..569c045dc 100644
--- a/docs/libcurl/curl_multi_info_read.pdf
+++ b/docs/libcurl/curl_multi_info_read.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_init.html b/docs/libcurl/curl_multi_init.html
index fbad8e4f7..9fe752d56 100644
--- a/docs/libcurl/curl_multi_init.html
+++ b/docs/libcurl/curl_multi_init.html
@@ -4,20 +4,15 @@
<title>curl_multi_init man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_multi_init.pdf b/docs/libcurl/curl_multi_init.pdf
index 168a740c3..68ed8731b 100644
--- a/docs/libcurl/curl_multi_init.pdf
+++ b/docs/libcurl/curl_multi_init.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_perform.3 b/docs/libcurl/curl_multi_perform.3
index 3ec1fadec..e0e5b02d8 100644
--- a/docs/libcurl/curl_multi_perform.3
+++ b/docs/libcurl/curl_multi_perform.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -49,55 +49,6 @@ added handle fails very quickly, it may never be counted as a running_handle.
When \fIrunning_handles\fP is set to zero (0) on the return of this function,
there is no longer any transfers in progress.
-.SH EXAMPLE
-.nf
-#ifdef _WIN32
-#define SHORT_SLEEP Sleep(100)
-#else
-#define SHORT_SLEEP usleep(100000)
-#endif
-
-fd_set fdread;
-fd_set fdwrite;
-fd_set fdexcep;
-int maxfd = -1;
-
-long curl_timeo;
-
-curl_multi_timeout(multi_handle, &curl_timeo);
-if(curl_timeo < 0)
- curl_timeo = 1000;
-
-timeout.tv_sec = curl_timeo / 1000;
-timeout.tv_usec = (curl_timeo % 1000) * 1000;
-
-FD_ZERO(&fdread);
-FD_ZERO(&fdwrite);
-FD_ZERO(&fdexcep);
-
-/* get file descriptors from the transfers */
-mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-if(maxfd == -1) {
- SHORT_SLEEP;
- rc = 0;
-}
-else
- rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-switch(rc) {
-case -1:
- /* select error */
- break;
-case 0:
-default:
- /* timeout or readable/writable sockets */
- curl_multi_perform(multi_handle, &still_running);
- break;
-}
-
-/* if there are still transfers, loop! */
-.fi
.SH "RETURN VALUE"
CURLMcode type, general libcurl multi interface error code.
diff --git a/docs/libcurl/curl_multi_perform.html b/docs/libcurl/curl_multi_perform.html
index bf68abdaf..27c3cbb39 100644
--- a/docs/libcurl/curl_multi_perform.html
+++ b/docs/libcurl/curl_multi_perform.html
@@ -4,20 +4,15 @@
<title>curl_multi_perform man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,63 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_perform - reads/writes available data from each easy handle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_perform(CURLM *multi_handle, int *running_handles);
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This function handles transfers on all the added handles that need attention in an non-blocking fashion.
<p class="level0">When an application has found out there's data available for the multi_handle or a timeout has elapsed, the application should call this function to read/write whatever there is to read or write right now etc. <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> returns as soon as the reads/writes are done. This function does not require that there actually is any data available for reading or that data can be written, it can be called just in case. It will write the number of handles that still transfer data in the second argument's integer-pointer.
<p class="level0">If the amount of <span Class="emphasis">running_handles</span> is changed from the previous call (or is less than the amount of easy handles you've added to the multi handle), you know that there is one or more transfers less "running". You can then call <a Class="emphasis" href="./curl_multi_info_read.html">curl_multi_info_read</a> to get information about each individual completed transfer, and that returned info includes CURLcode and more. If an added handle fails very quickly, it may never be counted as a running_handle.
-<p class="level0">When <span Class="emphasis">running_handles</span> is set to zero (0) on the return of this function, there is no longer any transfers in progress. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&#35;ifdef _WIN32
-&#35;define SHORT_SLEEP Sleep(100)
-&#35;else
-&#35;define SHORT_SLEEP usleep(100000)
-&#35;endif
-&nbsp;
-fd_set fdread;
-fd_set fdwrite;
-fd_set fdexcep;
-int maxfd = -1;
-&nbsp;
-long curl_timeo;
-&nbsp;
-curl_multi_timeout(multi_handle, &curl_timeo);
-if(curl_timeo &lt; 0)
-&nbsp; curl_timeo = 1000;
-&nbsp;
-timeout.tv_sec = curl_timeo / 1000;
-timeout.tv_usec = (curl_timeo % 1000) * 1000;
-&nbsp;
-FD_ZERO(&fdread);
-FD_ZERO(&fdwrite);
-FD_ZERO(&fdexcep);
-&nbsp;
-/* get file descriptors from the transfers */
-mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-&nbsp;
-if(maxfd == -1) {
-&nbsp; SHORT_SLEEP;
-&nbsp; rc = 0;
-}
-else
-&nbsp; rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-&nbsp;
-switch(rc) {
-case -1:
-&nbsp; /* select error */
-&nbsp; break;
-case 0:
-default:
-&nbsp; /* timeout or readable/writable sockets */
-&nbsp; curl_multi_perform(multi_handle, &still_running);
-&nbsp; break;
-}
-&nbsp;
-/* if there are still transfers, loop! */
-</pre>
-
-<p class="level0"><a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">When <span Class="emphasis">running_handles</span> is set to zero (0) on the return of this function, there is no longer any transfers in progress. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">CURLMcode type, general libcurl multi interface error code.
<p class="level0">Before version 7.20.0: If you receive <span Class="emphasis">CURLM_CALL_MULTI_PERFORM</span>, this basically means that you should call <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> again, before you select() on more actions. You don't have to do it immediately, but the return code means that libcurl may have more data available to return or that there may be more data to send off before it is "satisfied". Do note that <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> will return <span Class="emphasis">CURLM_CALL_MULTI_PERFORM</span> only when it wants to be called again <span Class="bold">immediately</span>. When things are fine and there is nothing immediate it wants done, it'll return <span Class="emphasis">CURLM_OK</span> and you need to wait for "action" and then call this function again.
<p class="level0">This function only returns errors etc regarding the whole multi stack. Problems still might have occurred on individual transfers even when this function returns <span Class="emphasis">CURLM_OK</span>. Use <a Class="emphasis" href="./curl_multi_info_read.html">curl_multi_info_read</a> to figure out how individual transfers did. <a name="TYPICAL"></a><h2 class="nroffsh">TYPICAL USAGE</h2>
diff --git a/docs/libcurl/curl_multi_perform.pdf b/docs/libcurl/curl_multi_perform.pdf
index d3803f640..eeb7ea3d2 100644
--- a/docs/libcurl/curl_multi_perform.pdf
+++ b/docs/libcurl/curl_multi_perform.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_remove_handle.3 b/docs/libcurl/curl_multi_remove_handle.3
index c819fc9e2..1c2165b63 100644
--- a/docs/libcurl/curl_multi_remove_handle.3
+++ b/docs/libcurl/curl_multi_remove_handle.3
@@ -28,7 +28,7 @@ curl_multi_remove_handle - remove an easy handle from a multi session
CURLMcode curl_multi_remove_handle(CURLM *multi_handle, CURL *easy_handle);
.ad
.SH DESCRIPTION
-Removes a given \fIeasy_handle\fP from the \fImulti_handle\fP. This will make
+Removes a given \fIeasy_handle\fI from the \fImulti_handle\fI. This will make
the specified easy handle be removed from this multi handle's control.
When the easy handle has been removed from a multi stack, it is again
diff --git a/docs/libcurl/curl_multi_remove_handle.html b/docs/libcurl/curl_multi_remove_handle.html
index df13ac78a..aff0d601e 100644
--- a/docs/libcurl/curl_multi_remove_handle.html
+++ b/docs/libcurl/curl_multi_remove_handle.html
@@ -4,20 +4,15 @@
<title>curl_multi_remove_handle man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,10 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_remove_handle - remove an easy handle from a multi session <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_remove_handle(CURLM *multi_handle, CURL *easy_handle);
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Removes a given <span Class="emphasis">easy_handle</span> from the <span Class="emphasis">multi_handle</span>. This will make the specified easy handle be removed from this multi handle's control.
+<p class="level0">Removes a given <span class="emphasis">easy_handle<span class="emphasis"> from the <span class="emphasis">multi_handle<span class="emphasis">. This will make the specified easy handle be removed from this multi handle's control.
<p class="level0">When the easy handle has been removed from a multi stack, it is again perfectly legal to invoke <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> on this easy handle.
<p class="level0">Removing an easy handle while being used is perfectly legal and will effectively halt the transfer in progress involving that easy handle. All other easy handles and transfers will remain unaffected. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">CURLMcode type, general libcurl multi interface error code. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
diff --git a/docs/libcurl/curl_multi_remove_handle.pdf b/docs/libcurl/curl_multi_remove_handle.pdf
index 36bafde80..8aeff5f7d 100644
--- a/docs/libcurl/curl_multi_remove_handle.pdf
+++ b/docs/libcurl/curl_multi_remove_handle.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_setopt.3 b/docs/libcurl/curl_multi_setopt.3
index 956519323..4cd40756e 100644
--- a/docs/libcurl/curl_multi_setopt.3
+++ b/docs/libcurl/curl_multi_setopt.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -37,36 +37,30 @@ expects. Read this manual carefully as bad input values may cause libcurl to
behave badly! You can only set one option in each function call.
.SH OPTIONS
-.IP CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE
-See \fICURLMOPT_CHUNK_LENGTH_PENALTY_SIZE(3)\fP
-.IP CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE
-See \fICURLMOPT_CONTENT_LENGTH_PENALTY_SIZE(3)\fP
-.IP CURLMOPT_MAX_HOST_CONNECTIONS
-See \fICURLMOPT_MAX_HOST_CONNECTIONS(3)\fP
-.IP CURLMOPT_MAX_PIPELINE_LENGTH
-See \fICURLMOPT_MAX_PIPELINE_LENGTH(3)\fP
-.IP CURLMOPT_MAX_TOTAL_CONNECTIONS
-See \fICURLMOPT_MAX_TOTAL_CONNECTIONS(3)\fP
-.IP CURLMOPT_MAXCONNECTS
-See \fICURLMOPT_MAXCONNECTS(3)\fP
-.IP CURLMOPT_PIPELINING
-See \fICURLMOPT_PIPELINING(3)\fP
-.IP CURLMOPT_PIPELINING_SITE_BL
-See \fICURLMOPT_PIPELINING_SITE_BL(3)\fP
-.IP CURLMOPT_PIPELINING_SERVER_BL
-See \fICURLMOPT_PIPELINING_SERVER_BL(3)\fP
-.IP CURLMOPT_PUSHFUNCTION
-See \fICURLMOPT_PUSHFUNCTION(3)\fP
-.IP CURLMOPT_PUSHDATA
-See \fICURLMOPT_PUSHDATA(3)\fP
.IP CURLMOPT_SOCKETFUNCTION
See \fICURLMOPT_SOCKETFUNCTION(3)\fP
.IP CURLMOPT_SOCKETDATA
See \fICURLMOPT_SOCKETDATA(3)\fP
+.IP CURLMOPT_PIPELINING
+See \fICURLMOPT_PIPELINING(3)\fP
.IP CURLMOPT_TIMERFUNCTION
See \fICURLMOPT_TIMERFUNCTION(3)\fP
.IP CURLMOPT_TIMERDATA
See \fICURLMOPT_TIMERDATA(3)\fP
+.IP CURLMOPT_MAX_HOST_CONNECTIONS
+See \fICURLMOPT_MAX_HOST_CONNECTIONS(3)\fP
+.IP CURLMOPT_MAX_PIPELINE_LENGTH
+See \fICURLMOPT_MAX_PIPELINE_LENGTH(3)\fP
+.IP CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE
+See \fICURLMOPT_CONTENT_LENGTH_PENALTY_SIZE(3)\fP
+.IP CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE
+See \fICURLMOPT_CHUNK_LENGTH_PENALTY_SIZE(3)\fP
+.IP CURLMOPT_PIPELINING_SITE_BL
+See \fICURLMOPT_PIPELINING_SITE_BL(3)\fP
+.IP CURLMOPT_PIPELINING_SERVER_BL
+See \fICURLMOPT_PIPELINING_SERVER_BL(3)\fP
+.IP CURLMOPT_MAX_TOTAL_CONNECTIONS
+See \fICURLMOPT_MAX_TOTAL_CONNECTIONS(3)\fP
.SH RETURNS
The standard CURLMcode for multi interface error codes. Note that it returns a
CURLM_UNKNOWN_OPTION if you try setting an option that this version of libcurl
diff --git a/docs/libcurl/curl_multi_setopt.html b/docs/libcurl/curl_multi_setopt.html
index 3edcf2409..55d4208c7 100644
--- a/docs/libcurl/curl_multi_setopt.html
+++ b/docs/libcurl/curl_multi_setopt.html
@@ -4,20 +4,15 @@
<title>curl_multi_setopt man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,41 +47,35 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_setopt - set options for a curl multi handle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM * multi_handle, CURLMoption option, param); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0"><a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a> is used to tell a libcurl multi handle how to behave. By using the appropriate options to <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a>, you can change libcurl's behaviour when using that multi handle. All options are set with the <span Class="emphasis">option</span> followed by the parameter <span Class="emphasis">param</span>. That parameter can be a <span Class="bold">long</span>, a <span Class="bold">function pointer</span>, an <span class="bold">object pointer</span> or a <span Class="bold">curl_off_t</span> type, depending on what the specific option expects. Read this manual carefully as bad input values may cause libcurl to behave badly! You can only set one option in each function call.
<p class="level0"><a name="OPTIONS"></a><h2 class="nroffsh">OPTIONS</h2>
<p class="level0">
-<p class="level0"><a name="CURLMOPTCHUNKLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE(3)</span>
-<p class="level0"><a name="CURLMOPTCONTENTLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE(3)</span>
+<p class="level0"><a name="CURLMOPTSOCKETFUNCTION"></a><span class="nroffip">CURLMOPT_SOCKETFUNCTION</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_SOCKETFUNCTION(3)</span>
+<p class="level0"><a name="CURLMOPTSOCKETDATA"></a><span class="nroffip">CURLMOPT_SOCKETDATA</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_SOCKETDATA(3)</span>
+<p class="level0"><a name="CURLMOPTPIPELINING"></a><span class="nroffip">CURLMOPT_PIPELINING</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_PIPELINING(3)</span>
+<p class="level0"><a name="CURLMOPTTIMERFUNCTION"></a><span class="nroffip">CURLMOPT_TIMERFUNCTION</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_TIMERFUNCTION(3)</span>
+<p class="level0"><a name="CURLMOPTTIMERDATA"></a><span class="nroffip">CURLMOPT_TIMERDATA</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_TIMERDATA(3)</span>
<p class="level0"><a name="CURLMOPTMAXHOSTCONNECTIONS"></a><span class="nroffip">CURLMOPT_MAX_HOST_CONNECTIONS</span>
<p class="level1">See <span Class="emphasis">CURLMOPT_MAX_HOST_CONNECTIONS(3)</span>
<p class="level0"><a name="CURLMOPTMAXPIPELINELENGTH"></a><span class="nroffip">CURLMOPT_MAX_PIPELINE_LENGTH</span>
<p class="level1">See <span Class="emphasis">CURLMOPT_MAX_PIPELINE_LENGTH(3)</span>
-<p class="level0"><a name="CURLMOPTMAXTOTALCONNECTIONS"></a><span class="nroffip">CURLMOPT_MAX_TOTAL_CONNECTIONS</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_MAX_TOTAL_CONNECTIONS(3)</span>
-<p class="level0"><a name="CURLMOPTMAXCONNECTS"></a><span class="nroffip">CURLMOPT_MAXCONNECTS</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_MAXCONNECTS(3)</span>
-<p class="level0"><a name="CURLMOPTPIPELINING"></a><span class="nroffip">CURLMOPT_PIPELINING</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_PIPELINING(3)</span>
+<p class="level0"><a name="CURLMOPTCONTENTLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE(3)</span>
+<p class="level0"><a name="CURLMOPTCHUNKLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE(3)</span>
<p class="level0"><a name="CURLMOPTPIPELININGSITEBL"></a><span class="nroffip">CURLMOPT_PIPELINING_SITE_BL</span>
<p class="level1">See <span Class="emphasis">CURLMOPT_PIPELINING_SITE_BL(3)</span>
<p class="level0"><a name="CURLMOPTPIPELININGSERVERBL"></a><span class="nroffip">CURLMOPT_PIPELINING_SERVER_BL</span>
<p class="level1">See <span Class="emphasis">CURLMOPT_PIPELINING_SERVER_BL(3)</span>
-<p class="level0"><a name="CURLMOPTPUSHFUNCTION"></a><span class="nroffip">CURLMOPT_PUSHFUNCTION</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_PUSHFUNCTION(3)</span>
-<p class="level0"><a name="CURLMOPTPUSHDATA"></a><span class="nroffip">CURLMOPT_PUSHDATA</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_PUSHDATA(3)</span>
-<p class="level0"><a name="CURLMOPTSOCKETFUNCTION"></a><span class="nroffip">CURLMOPT_SOCKETFUNCTION</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_SOCKETFUNCTION(3)</span>
-<p class="level0"><a name="CURLMOPTSOCKETDATA"></a><span class="nroffip">CURLMOPT_SOCKETDATA</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_SOCKETDATA(3)</span>
-<p class="level0"><a name="CURLMOPTTIMERFUNCTION"></a><span class="nroffip">CURLMOPT_TIMERFUNCTION</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_TIMERFUNCTION(3)</span>
-<p class="level0"><a name="CURLMOPTTIMERDATA"></a><span class="nroffip">CURLMOPT_TIMERDATA</span>
-<p class="level1">See <span Class="emphasis">CURLMOPT_TIMERDATA(3)</span> <a name="RETURNS"></a><h2 class="nroffsh">RETURNS</h2>
+<p class="level0"><a name="CURLMOPTMAXTOTALCONNECTIONS"></a><span class="nroffip">CURLMOPT_MAX_TOTAL_CONNECTIONS</span>
+<p class="level1">See <span Class="emphasis">CURLMOPT_MAX_TOTAL_CONNECTIONS(3)</span> <a name="RETURNS"></a><h2 class="nroffsh">RETURNS</h2>
<p class="level0">The standard CURLMcode for multi interface error codes. Note that it returns a CURLM_UNKNOWN_OPTION if you try setting an option that this version of libcurl doesn't know of. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">This function was added in libcurl 7.15.4. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>, <a Class="manpage" href="./curl_multi_init.html">curl_multi_init</a>, <span Class="manpage"> </span> <a Class="manpage" href="./curl_multi_socket.html">curl_multi_socket</a>, <a Class="manpage" href="./curl_multi_info_read.html">curl_multi_info_read</a>, <p class="roffit">
diff --git a/docs/libcurl/curl_multi_setopt.pdf b/docs/libcurl/curl_multi_setopt.pdf
index 3e2ccaf74..3f45250ba 100644
--- a/docs/libcurl/curl_multi_setopt.pdf
+++ b/docs/libcurl/curl_multi_setopt.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_socket.html b/docs/libcurl/curl_multi_socket.html
index 1b73518f5..3cc80c727 100644
--- a/docs/libcurl/curl_multi_socket.html
+++ b/docs/libcurl/curl_multi_socket.html
@@ -4,20 +4,15 @@
<title>curl_multi_socket man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_socket - reads/writes available data <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-CURLMcode curl_multi_socket(CURLM * multi_handle, curl_socket_t sockfd,
-&nbsp; int *running_handles);
-&nbsp;
-CURLMcode curl_multi_socket_all(CURLM *multi_handle,
-&nbsp; int *running_handles);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ CURLMcode curl_multi_socket(CURLM * multi_handle, curl_socket_t sockfd,
+ &nbsp; int *running_handles);
+ <p class="level0">CURLMcode curl_multi_socket_all(CURLM *multi_handle,
+ &nbsp; int *running_handles);
+ </pre>
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">These functions are deprecated. Do not use! See <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> instead!
@@ -69,15 +63,13 @@ CURLMcode curl_multi_socket_all(CURLM *multi_handle,
<p class="level0">Usage of <a Class="emphasis" href="./curl_multi_socket.html">curl_multi_socket</a> is deprecated, whereas the function is equivalent to <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> with <span Class="bold">ev_bitmask</span> set to 0.
<p class="level0">Force libcurl to (re-)check all its internal sockets and transfers instead of just a single one by calling <a Class="bold" href="./curl_multi_socket_all.html">curl_multi_socket_all</a>. Note that there should not be any reason to use this function! <a name="CALLBACK"></a><h2 class="nroffsh">CALLBACK DETAILS</h2>
<p class="level0">
-<p class="level0">The socket <span Class="bold">callback</span> function uses a prototype like this <pre class="level0">
-&nbsp;
-&nbsp; int curl_socket_callback(CURL *easy, /* easy handle */
-&nbsp; curl_socket_t s, /* socket */
-&nbsp; int action, /* see values below */
-&nbsp; void *userp, /* private callback pointer */
-&nbsp; void *socketp); /* private socket pointer */
-&nbsp;
-</pre>
+<p class="level0">The socket <span Class="bold">callback</span> function uses a prototype like this <pre>
+<p class="level0"><p class="level0">&nbsp; int curl_socket_callback(CURL *easy, /* easy handle */
+ &nbsp; curl_socket_t s, /* socket */
+ &nbsp; int action, /* see values below */
+ &nbsp; void *userp, /* private callback pointer */
+ &nbsp; void *socketp); /* private socket pointer */
+ <p class="level0"></pre>
<p class="level0">The callback MUST return 0.
<p class="level0">The <span Class="emphasis">easy</span> argument is a pointer to the easy handle that deals with this particular socket. Note that a single handle may work with several sockets simultaneously.
diff --git a/docs/libcurl/curl_multi_socket.pdf b/docs/libcurl/curl_multi_socket.pdf
index 6fbf18734..a40cb23e4 100644
--- a/docs/libcurl/curl_multi_socket.pdf
+++ b/docs/libcurl/curl_multi_socket.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_socket_action.html b/docs/libcurl/curl_multi_socket_action.html
index 5d01486bb..319754b82 100644
--- a/docs/libcurl/curl_multi_socket_action.html
+++ b/docs/libcurl/curl_multi_socket_action.html
@@ -4,20 +4,15 @@
<title>curl_multi_socket_action man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,13 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_socket_action - reads/writes available data given an action <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_socket_action(CURLM * multi_handle,
-&nbsp; curl_socket_t sockfd, int ev_bitmask,
-&nbsp; int *running_handles);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLMcode curl_multi_socket_action(CURLM * multi_handle,
+ &nbsp; curl_socket_t sockfd, int ev_bitmask,
+ &nbsp; int *running_handles);
+ </pre>
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">When the application has detected action on a socket handled by libcurl, it should call <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> with the <span Class="bold">sockfd</span> argument set to the socket with the action. When the events on a socket are known, they can be passed as an events bitmask <span Class="bold">ev_bitmask</span> by first setting <span Class="bold">ev_bitmask</span> to 0, and then adding using bitwise OR (|) any combination of events to be chosen from CURL_CSELECT_IN, CURL_CSELECT_OUT or CURL_CSELECT_ERR. When the events on a socket are unknown, pass 0 instead, and libcurl will test the descriptor internally. It is also permissible to pass CURL_SOCKET_TIMEOUT to the <span Class="bold">sockfd</span> parameter in order to initiate the whole process or when a timeout occurs.
@@ -66,18 +60,16 @@ CURLMcode curl_multi_socket_action(CURLM * multi_handle,
<p class="level0">The <a Class="bold" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> functions inform the application about updates in the socket (file descriptor) status by doing none, one, or multiple calls to the socket callback function set with the CURLMOPT_SOCKETFUNCTION option to <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a>. They update the status with changes since the previous time the callback was called.
<p class="level0">Get the timeout time by setting the <span Class="emphasis">CURLMOPT_TIMERFUNCTION</span> option with <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a>. Your application will then get called with information on how long to wait for socket actions at most before doing the timeout action: call the <a Class="bold" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> function with the <span Class="bold">sockfd</span> argument set to CURL_SOCKET_TIMEOUT. You can also use the <a Class="emphasis" href="./curl_multi_timeout.html">curl_multi_timeout</a> function to poll the value at any given time, but for an event-based system using the callback is far better than relying on polling the timeout value. <a name="CALLBACK"></a><h2 class="nroffsh">CALLBACK DETAILS</h2>
<p class="level0">
-<p class="level0">The socket <span Class="bold">callback</span> function uses a prototype like this <pre class="level0">
-&nbsp;
-&nbsp; int curl_socket_callback(CURL *easy, /* easy handle */
-&nbsp; curl_socket_t s, /* socket */
-&nbsp; int action, /* see values below */
-&nbsp; void *userp, /* private callback pointer */
-&nbsp; void *socketp); /* private socket pointer,
-&nbsp; <span Class="bold">NULL</span> if not
-&nbsp; previously assigned with
-&nbsp; <a Class="bold" href="./curl_multi_assign.html">curl_multi_assign</a> */
-&nbsp;
-</pre>
+<p class="level0">The socket <span Class="bold">callback</span> function uses a prototype like this <pre>
+<p class="level0"><p class="level0">&nbsp; int curl_socket_callback(CURL *easy, /* easy handle */
+ &nbsp; curl_socket_t s, /* socket */
+ &nbsp; int action, /* see values below */
+ &nbsp; void *userp, /* private callback pointer */
+ &nbsp; void *socketp); /* private socket pointer,
+ &nbsp; <span Class="bold">NULL</span> if not
+ &nbsp; previously assigned with
+ &nbsp; <a Class="bold" href="./curl_multi_assign.html">curl_multi_assign</a> */
+ <p class="level0"></pre>
<p class="level0">The callback MUST return 0.
<p class="level0">The <span Class="emphasis">easy</span> argument is a pointer to the easy handle that deals with this particular socket. Note that a single handle may work with several sockets simultaneously.
diff --git a/docs/libcurl/curl_multi_socket_action.pdf b/docs/libcurl/curl_multi_socket_action.pdf
index 6ef1a4875..a49223831 100644
--- a/docs/libcurl/curl_multi_socket_action.pdf
+++ b/docs/libcurl/curl_multi_socket_action.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_strerror.html b/docs/libcurl/curl_multi_strerror.html
index 58f11935e..34b20a9a0 100644
--- a/docs/libcurl/curl_multi_strerror.html
+++ b/docs/libcurl/curl_multi_strerror.html
@@ -4,20 +4,15 @@
<title>curl_multi_strerror man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,8 +47,8 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_strerror - return string describing error code <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-<span Class="bold">#include &lt;curl/curl.h&gt;</span>
+<p class="level0"><pre>
+<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span>
<span Class="bold">const char *curl_multi_strerror(CURLMcode errornum );</span>
</pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
diff --git a/docs/libcurl/curl_multi_strerror.pdf b/docs/libcurl/curl_multi_strerror.pdf
index 41c7ec019..a9c4d8910 100644
--- a/docs/libcurl/curl_multi_strerror.pdf
+++ b/docs/libcurl/curl_multi_strerror.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_timeout.3 b/docs/libcurl/curl_multi_timeout.3
index f0c907966..e18b935cc 100644
--- a/docs/libcurl/curl_multi_timeout.3
+++ b/docs/libcurl/curl_multi_timeout.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2011, 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
@@ -49,22 +49,6 @@ SHOULD instead use \fIcurl_multi_setopt(3)\fP and its
Note: if libcurl returns a -1 timeout here, it just means that libcurl
currently has no stored timeout value. You must not wait too long (more than a
few seconds perhaps) before you call curl_multi_perform() again.
-.SH EXAMPLE
-.nf
-struct timeval timeout;
-long timeo;
-
-curl_multi_timeout(multi_handle, &timeo);
-if(timeo < 0)
- /* no set timeout, use a default */
- timeo = 980;
-
-timeout.tv_sec = timeo / 1000;
-timeout.tv_usec = (timeo % 1000) * 1000;
-
-/* wait for activities no longer than the set timeout */
-select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-.fi
.SH "RETURN VALUE"
The standard CURLMcode for multi interface error codes.
.SH "TYPICAL USAGE"
diff --git a/docs/libcurl/curl_multi_timeout.html b/docs/libcurl/curl_multi_timeout.html
index 84161c830..952a6ff8c 100644
--- a/docs/libcurl/curl_multi_timeout.html
+++ b/docs/libcurl/curl_multi_timeout.html
@@ -4,20 +4,15 @@
<title>curl_multi_timeout man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,31 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_timeout - how long to wait for action before proceeding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_timeout(CURLM *multi_handle, long *timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">
<p class="level0">An application using the libcurl multi interface should call <a Class="bold" href="./curl_multi_timeout.html">curl_multi_timeout</a> to figure out how long it should wait for socket actions - at most - before proceeding.
<p class="level0">Proceeding means either doing the socket-style timeout action: call the <a Class="bold" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> function with the <span Class="bold">sockfd</span> argument set to CURL_SOCKET_TIMEOUT, or call <a Class="bold" href="./curl_multi_perform.html">curl_multi_perform</a> if you're using the simpler and older multi interface approach.
<p class="level0">The timeout value returned in the long <span Class="bold">timeout</span> points to, is in number of milliseconds at this very moment. If 0, it means you should proceed immediately without waiting for anything. If it returns -1, there's no timeout at all set.
<p class="level0">An application that uses the multi_socket API SHOULD NOT use this function, but SHOULD instead use <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a> and its </span>CURLMOPT_TIMERFUNCTION</span> option for proper and desired behavior.
-<p class="level0">Note: if libcurl returns a -1 timeout here, it just means that libcurl currently has no stored timeout value. You must not wait too long (more than a few seconds perhaps) before you call curl_multi_perform() again. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-struct timeval timeout;
-long timeo;
-&nbsp;
-curl_multi_timeout(multi_handle, &timeo);
-if(timeo &lt; 0)
-&nbsp; /* no set timeout, use a default */
-&nbsp; timeo = 980;
-&nbsp;
-timeout.tv_sec = timeo / 1000;
-timeout.tv_usec = (timeo % 1000) * 1000;
-&nbsp;
-/* wait for activities no longer than the set timeout */
-select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-</pre>
-
-<p class="level0"><a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Note: if libcurl returns a -1 timeout here, it just means that libcurl currently has no stored timeout value. You must not wait too long (more than a few seconds perhaps) before you call curl_multi_perform() again. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">The standard CURLMcode for multi interface error codes. <a name="TYPICAL"></a><h2 class="nroffsh">TYPICAL USAGE</h2>
<p class="level0">Call <a Class="bold" href="./curl_multi_timeout.html">curl_multi_timeout</a>, then wait for action on the sockets. You figure out which sockets to wait for by calling <a Class="bold" href="./curl_multi_fdset.html">curl_multi_fdset</a> or by a previous call to <a Class="bold" href="./curl_multi_socket.html">curl_multi_socket</a>. <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">This function was added in libcurl 7.15.4. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
diff --git a/docs/libcurl/curl_multi_timeout.pdf b/docs/libcurl/curl_multi_timeout.pdf
index bd5b983a3..b5d550164 100644
--- a/docs/libcurl/curl_multi_timeout.pdf
+++ b/docs/libcurl/curl_multi_timeout.pdf
Binary files differ
diff --git a/docs/libcurl/curl_multi_wait.3 b/docs/libcurl/curl_multi_wait.3
index 45c2e8c95..a76fba360 100644
--- a/docs/libcurl/curl_multi_wait.3
+++ b/docs/libcurl/curl_multi_wait.3
@@ -44,7 +44,7 @@ The calling application may pass additional curl_waitfd structures which are
similar to \fIpoll(2)\fP's pollfd structure to be waited on in the same call.
On completion, if \fInumfds\fP is non-NULL, it will be populated with the
-total number of file descriptors on which interesting events occurred. This
+total number of file descriptors on which interesting events occured. This
number can include both libcurl internal descriptors as well as descriptors
provided in \fIextra_fds\fP.
diff --git a/docs/libcurl/curl_multi_wait.html b/docs/libcurl/curl_multi_wait.html
index 9e85816b1..fa10dee72 100644
--- a/docs/libcurl/curl_multi_wait.html
+++ b/docs/libcurl/curl_multi_wait.html
@@ -4,20 +4,15 @@
<title>curl_multi_wait man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,28 +47,27 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_multi_wait - polls on all easy handles in a multi handle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_wait(CURLM *multi_handle,
-&nbsp; struct curl_waitfd extra_fds[],
-&nbsp; unsigned int extra_nfds,
-&nbsp; int timeout_ms,
-&nbsp; int *numfds);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLMcode curl_multi_wait(CURLM *multi_handle,
+ &nbsp; struct curl_waitfd extra_fds[],
+ &nbsp; unsigned int extra_nfds,
+ &nbsp; int timeout_ms,
+ &nbsp; int *numfds);
+ <p class="level0"></pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0"><a Class="emphasis" href="./curl_multi_wait.html">curl_multi_wait</a> polls all file descriptors used by the curl easy handles contained in the given multi handle set. It will block until activity is detected on at least one of the handles or <span Class="emphasis">timeout_ms</span> has passed. Alternatively, if the multi handle has a pending internal timeout that has a shorter expiry time than <span Class="emphasis">timeout_ms</span>, that shorter time will be used instead to make sure timeout accuracy is reasonably kept.
<p class="level0">The calling application may pass additional curl_waitfd structures which are similar to <span Class="emphasis">poll(2)</span>'s pollfd structure to be waited on in the same call.
-<p class="level0">On completion, if <span Class="emphasis">numfds</span> is non-NULL, it will be populated with the total number of file descriptors on which interesting events occurred. This number can include both libcurl internal descriptors as well as descriptors provided in <span Class="emphasis">extra_fds</span>.
+<p class="level0">On completion, if <span Class="emphasis">numfds</span> is non-NULL, it will be populated with the total number of file descriptors on which interesting events occured. This number can include both libcurl internal descriptors as well as descriptors provided in <span Class="emphasis">extra_fds</span>.
<p class="level0">If no extra file descriptors are provided and libcurl has no file descriptor to offer to wait for, this function will return immediately.
<p class="level0">This function is encouraged to be used instead of select(3) when using the multi interface to allow applications to easier circumvent the common problem with 1024 maximum file descriptors. <a name="curlwaitfd"></a><h2 class="nroffsh">curl_waitfd</h2>
-<p class="level0"><pre class="level0">
-struct curl_waitfd {
-&nbsp; curl_socket_t fd;
-&nbsp; short events;
-&nbsp; short revents;
-};
-</pre>
+<p class="level0"><pre>
+<p class="level0">struct curl_waitfd {
+ &nbsp; curl_socket_t fd;
+ &nbsp; short events;
+ &nbsp; short revents;
+ };
+ </pre>
<p class="level0">
<p class="level0"><a name="CURLWAITPOLLIN"></a><span class="nroffip">CURL_WAIT_POLLIN</span>
diff --git a/docs/libcurl/curl_multi_wait.pdf b/docs/libcurl/curl_multi_wait.pdf
index 3fe2fd007..1c65e52af 100644
--- a/docs/libcurl/curl_multi_wait.pdf
+++ b/docs/libcurl/curl_multi_wait.pdf
Binary files differ
diff --git a/docs/libcurl/curl_share_cleanup.html b/docs/libcurl/curl_share_cleanup.html
index 5c8d071e8..55d71742d 100644
--- a/docs/libcurl/curl_share_cleanup.html
+++ b/docs/libcurl/curl_share_cleanup.html
@@ -4,20 +4,15 @@
<title>curl_share_cleanup man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_share_cleanup.pdf b/docs/libcurl/curl_share_cleanup.pdf
index ce11d4bca..8aa84336f 100644
--- a/docs/libcurl/curl_share_cleanup.pdf
+++ b/docs/libcurl/curl_share_cleanup.pdf
Binary files differ
diff --git a/docs/libcurl/curl_share_init.html b/docs/libcurl/curl_share_init.html
index d1018149b..aa7f54cef 100644
--- a/docs/libcurl/curl_share_init.html
+++ b/docs/libcurl/curl_share_init.html
@@ -4,20 +4,15 @@
<title>curl_share_init man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_share_init.pdf b/docs/libcurl/curl_share_init.pdf
index c922db596..026cc7170 100644
--- a/docs/libcurl/curl_share_init.pdf
+++ b/docs/libcurl/curl_share_init.pdf
Binary files differ
diff --git a/docs/libcurl/curl_share_setopt.html b/docs/libcurl/curl_share_setopt.html
index b410010bc..9b36241c4 100644
--- a/docs/libcurl/curl_share_setopt.html
+++ b/docs/libcurl/curl_share_setopt.html
@@ -4,20 +4,15 @@
<title>curl_share_setopt man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_share_setopt.pdf b/docs/libcurl/curl_share_setopt.pdf
index a6798b69e..dfa711b3b 100644
--- a/docs/libcurl/curl_share_setopt.pdf
+++ b/docs/libcurl/curl_share_setopt.pdf
Binary files differ
diff --git a/docs/libcurl/curl_share_strerror.html b/docs/libcurl/curl_share_strerror.html
index 4d0245e50..7dc54235a 100644
--- a/docs/libcurl/curl_share_strerror.html
+++ b/docs/libcurl/curl_share_strerror.html
@@ -4,20 +4,15 @@
<title>curl_share_strerror man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,8 +47,8 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">curl_share_strerror - return string describing error code <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-<span Class="bold">#include &lt;curl/curl.h&gt;</span>
+<p class="level0"><pre>
+<p class="level0"><span Class="bold">#include &lt;curl/curl.h&gt;</span>
<span Class="bold">const char *curl_share_strerror(CURLSHcode errornum );</span>
</pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
diff --git a/docs/libcurl/curl_share_strerror.pdf b/docs/libcurl/curl_share_strerror.pdf
index 536ea8a80..99d3c2e44 100644
--- a/docs/libcurl/curl_share_strerror.pdf
+++ b/docs/libcurl/curl_share_strerror.pdf
Binary files differ
diff --git a/docs/libcurl/curl_slist_append.3 b/docs/libcurl/curl_slist_append.3
index 1a0a65796..529560e8a 100644
--- a/docs/libcurl/curl_slist_append.3
+++ b/docs/libcurl/curl_slist_append.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2011, 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
@@ -46,10 +46,6 @@ pointer is returned.
struct curl_slist *slist=NULL;
slist = curl_slist_append(slist, "pragma:");
-
- if (slist == NULL)
- return -1;
-
curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);
curl_easy_perform(handle);
diff --git a/docs/libcurl/curl_slist_append.html b/docs/libcurl/curl_slist_append.html
index 3d7b0575c..413477709 100644
--- a/docs/libcurl/curl_slist_append.html
+++ b/docs/libcurl/curl_slist_append.html
@@ -4,20 +4,15 @@
<title>curl_slist_append man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -58,21 +53,14 @@ p.roffit {
<p class="level0">curl_slist_append() appends a specified string to a linked list of strings. The existing <span Class="emphasis">list</span> should be passed as the first argument while the new list is returned from this function. The specified <span Class="emphasis">string</span> has been appended when this function returns. curl_slist_append() copies the string.
<p class="level0">The list should be freed again (after usage) with <a Class="bold" href="./curl_slist_free_all.html">curl_slist_free_all</a>. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">A null pointer is returned if anything went wrong, otherwise the new list pointer is returned. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&nbsp;CURL handle;
-&nbsp;struct curl_slist *slist=NULL;
-&nbsp;
-&nbsp;slist = curl_slist_append(slist, "pragma:");
-&nbsp;
-&nbsp;if (slist == NULL)
-&nbsp; return -1;
-&nbsp;
-&nbsp;curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);
-&nbsp;
-&nbsp;curl_easy_perform(handle);
-&nbsp;
-&nbsp;curl_slist_free_all(slist); /* free the list again */
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;CURL handle;
+ &nbsp;struct curl_slist *slist=NULL;
+ <p class="level0">&nbsp;slist = curl_slist_append(slist, "pragma:");
+ &nbsp;curl_easy_setopt(handle, CURLOPT_HTTPHEADER, slist);
+ <p class="level0">&nbsp;curl_easy_perform(handle);
+ <p class="level0">&nbsp;curl_slist_free_all(slist); /* free the list again */
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./curl_slist_free_all.html">curl_slist_free_all</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/curl_slist_append.pdf b/docs/libcurl/curl_slist_append.pdf
index fc2963868..740f9a294 100644
--- a/docs/libcurl/curl_slist_append.pdf
+++ b/docs/libcurl/curl_slist_append.pdf
Binary files differ
diff --git a/docs/libcurl/curl_slist_free_all.html b/docs/libcurl/curl_slist_free_all.html
index d6fc3ffaa..f2f4084f1 100644
--- a/docs/libcurl/curl_slist_free_all.html
+++ b/docs/libcurl/curl_slist_free_all.html
@@ -4,20 +4,15 @@
<title>curl_slist_free_all man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_slist_free_all.pdf b/docs/libcurl/curl_slist_free_all.pdf
index 469e9bb91..f7cf88bca 100644
--- a/docs/libcurl/curl_slist_free_all.pdf
+++ b/docs/libcurl/curl_slist_free_all.pdf
@@ -62,12 +62,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:7592967e-78d5-11f0-0000-224f381b10d2' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:7592967e-78d5-11f0-0000-224f381b10d2' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:03+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:03+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6013794a-cf2b-11ef-0000-224f381b10d2' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6013794a-cf2b-11ef-0000-224f381b10d2' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:17:46+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:17:46+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:7592967e-78d5-11f0-0000-224f381b10d2' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:7592967e-78d5-11f0-0000-224f381b10d2'/>
-<rdf:Description rdf:about='uuid:7592967e-78d5-11f0-0000-224f381b10d2' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6013794a-cf2b-11ef-0000-224f381b10d2' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6013794a-cf2b-11ef-0000-224f381b10d2'/>
+<rdf:Description rdf:about='uuid:6013794a-cf2b-11ef-0000-224f381b10d2' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -76,9 +76,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081103+02'00')
-/ModDate(D:20150812081103+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091746+01'00')
+/ModDate(D:20150108091746+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 14
@@ -98,7 +98,7 @@ xref
0000001254 00000 n
trailer
<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<D9B4DC6DEE3C38505572D5178C4C423B><D9B4DC6DEE3C38505572D5178C4C423B>]
+/ID [<DB6875C734A7401EEB3BB1ED327E3A46><DB6875C734A7401EEB3BB1ED327E3A46>]
>>
startxref
2831
diff --git a/docs/libcurl/curl_strequal.html b/docs/libcurl/curl_strequal.html
index 86f9a363b..c4f6b550e 100644
--- a/docs/libcurl/curl_strequal.html
+++ b/docs/libcurl/curl_strequal.html
@@ -4,20 +4,15 @@
<title>curl_strequal man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_strequal.pdf b/docs/libcurl/curl_strequal.pdf
index 4a9e5ed85..9618b8e40 100644
--- a/docs/libcurl/curl_strequal.pdf
+++ b/docs/libcurl/curl_strequal.pdf
Binary files differ
diff --git a/docs/libcurl/curl_unescape.html b/docs/libcurl/curl_unescape.html
index f1e4ff0d1..e8180b28a 100644
--- a/docs/libcurl/curl_unescape.html
+++ b/docs/libcurl/curl_unescape.html
@@ -4,20 +4,15 @@
<title>curl_unescape man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_unescape.pdf b/docs/libcurl/curl_unescape.pdf
index 648ff3f01..d3f74c13c 100644
--- a/docs/libcurl/curl_unescape.pdf
+++ b/docs/libcurl/curl_unescape.pdf
Binary files differ
diff --git a/docs/libcurl/curl_version.html b/docs/libcurl/curl_version.html
index 354bf9298..ab308d04b 100644
--- a/docs/libcurl/curl_version.html
+++ b/docs/libcurl/curl_version.html
@@ -4,20 +4,15 @@
<title>curl_version man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/curl_version.pdf b/docs/libcurl/curl_version.pdf
index e57c8cca8..81f0d9c45 100644
--- a/docs/libcurl/curl_version.pdf
+++ b/docs/libcurl/curl_version.pdf
Binary files differ
diff --git a/docs/libcurl/curl_version_info.3 b/docs/libcurl/curl_version_info.3
index e9d5ab704..1b8f9c119 100644
--- a/docs/libcurl/curl_version_info.3
+++ b/docs/libcurl/curl_version_info.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -57,7 +57,7 @@ typedef struct {
char *ssl_version; /* human readable string */
long ssl_version_num; /* not used, always zero */
const char *libz_version; /* human readable string */
- const char * const *protocols; /* protocols */
+ const char **protocols; /* list of protocols */
/* when 'age' is 1 or higher, the members below also exist: */
const char *ares; /* human readable string */
diff --git a/docs/libcurl/curl_version_info.html b/docs/libcurl/curl_version_info.html
index 4c39887ea..793fc2ac7 100644
--- a/docs/libcurl/curl_version_info.html
+++ b/docs/libcurl/curl_version_info.html
@@ -4,20 +4,15 @@
<title>curl_version_info man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -59,35 +54,29 @@ p.roffit {
<p class="level0">&nbsp; data = curl_version_info(CURLVERSION_NOW);
<p class="level0">Applications should use this information to judge if things are possible to do or not, instead of using compile-time checks, as dynamic/DLL libraries can be changed independent of applications.
<p class="level0">The curl_version_info_data struct looks like this
-<p class="level0"><pre class="level0">
-typedef struct {
-&nbsp; CURLversion age; /* see description below */
-&nbsp;
-&nbsp; /* when 'age' is 0 or higher, the members below also exist: */
-&nbsp; const char *version; /* human readable string */
-&nbsp; unsigned int version_num; /* numeric representation */
-&nbsp; const char *host; /* human readable string */
-&nbsp; int features; /* bitmask, see below */
-&nbsp; char *ssl_version; /* human readable string */
-&nbsp; long ssl_version_num; /* not used, always zero */
-&nbsp; const char *libz_version; /* human readable string */
-&nbsp; const char * const *protocols; /* protocols */
-&nbsp;
-&nbsp; /* when 'age' is 1 or higher, the members below also exist: */
-&nbsp; const char *ares; /* human readable string */
-&nbsp; int ares_num; /* number */
-&nbsp;
-&nbsp; /* when 'age' is 2 or higher, the member below also exists: */
-&nbsp; const char *libidn; /* human readable string */
-&nbsp;
-&nbsp; /* when 'age' is 3 or higher (7.16.1 or later), the members below also
-&nbsp; exist */
-&nbsp; int iconv_ver_num; /* '_libiconv_version' if iconv support enabled */
-&nbsp;
-&nbsp; const char *libssh_version; /* human readable string */
-&nbsp;
-} curl_version_info_data;
-</pre>
+<p class="level0"><pre>
+<p class="level0">typedef struct {
+ &nbsp; CURLversion age; /* see description below */
+ <p class="level0">&nbsp; /* when 'age' is 0 or higher, the members below also exist: */
+ &nbsp; const char *version; /* human readable string */
+ &nbsp; unsigned int version_num; /* numeric representation */
+ &nbsp; const char *host; /* human readable string */
+ &nbsp; int features; /* bitmask, see below */
+ &nbsp; char *ssl_version; /* human readable string */
+ &nbsp; long ssl_version_num; /* not used, always zero */
+ &nbsp; const char *libz_version; /* human readable string */
+ &nbsp; const char **protocols; /* list of protocols */
+ <p class="level0">&nbsp; /* when 'age' is 1 or higher, the members below also exist: */
+ &nbsp; const char *ares; /* human readable string */
+ &nbsp; int ares_num; /* number */
+ <p class="level0">&nbsp; /* when 'age' is 2 or higher, the member below also exists: */
+ &nbsp; const char *libidn; /* human readable string */
+ <p class="level0">&nbsp; /* when 'age' is 3 or higher (7.16.1 or later), the members below also
+ &nbsp; exist */
+ &nbsp; int iconv_ver_num; /* '_libiconv_version' if iconv support enabled */
+ <p class="level0">&nbsp; const char *libssh_version; /* human readable string */
+ <p class="level0">} curl_version_info_data;
+ </pre>
<p class="level0">
<p class="level0"><span Class="emphasis">age</span> describes what the age of this struct is. The number depends on how new the libcurl you're using is. You are however guaranteed to get a struct that you have a matching struct for in the header, as you tell libcurl your "age" with the input argument.
diff --git a/docs/libcurl/curl_version_info.pdf b/docs/libcurl/curl_version_info.pdf
index 832e238b2..2f9b24fe0 100644
--- a/docs/libcurl/curl_version_info.pdf
+++ b/docs/libcurl/curl_version_info.pdf
Binary files differ
diff --git a/docs/libcurl/index.html b/docs/libcurl/index.html
index f46cc85f7..ca773135b 100644
--- a/docs/libcurl/index.html
+++ b/docs/libcurl/index.html
@@ -17,7 +17,6 @@
<br><a href="libcurl-share.html">libcurl-share</a>
<br><a href="libcurl-errors.html">libcurl-errors</a>
<br><a href="libcurl-tutorial.html">libcurl-tutorial</a>
-<br><a href="libcurl-thread.html">libcurl-thread</a>
<H2>Library Functions (A-Z)</H2>
<a href="curl_easy_cleanup.html">curl_easy_cleanup</A>
diff --git a/docs/libcurl/libcurl-easy.html b/docs/libcurl/libcurl-easy.html
index 20b4600d7..fb1de25df 100644
--- a/docs/libcurl/libcurl-easy.html
+++ b/docs/libcurl/libcurl-easy.html
@@ -4,20 +4,15 @@
<title>libcurl man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/libcurl-easy.pdf b/docs/libcurl/libcurl-easy.pdf
index 2e0ad80fc..1539974df 100644
--- a/docs/libcurl/libcurl-easy.pdf
+++ b/docs/libcurl/libcurl-easy.pdf
Binary files differ
diff --git a/docs/libcurl/libcurl-errors.3 b/docs/libcurl/libcurl-errors.3
index 3828996f8..07091b5e5 100644
--- a/docs/libcurl/libcurl-errors.3
+++ b/docs/libcurl/libcurl-errors.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -74,7 +74,7 @@ After having sent the FTP password to the server, libcurl expects a proper
reply. This error code indicates that an unexpected code was returned.
.IP "CURLE_FTP_ACCEPT_TIMEOUT (12)"
During an active FTP session while waiting for the server to connect, the
-\fICURLOPT_ACCEPTTIMEOUT_MS(3)\fP (or the internal default) timeout expired.
+\fICURLOPT_ACCEPTTIMOUT_MS(3)\fP (or the internal default) timeout expired.
.IP "CURLE_FTP_WEIRD_PASV_REPLY (13)"
libcurl failed to get a sensible result back from the server as a response to
either a PASV or a EPSV command. The server is flawed.
diff --git a/docs/libcurl/libcurl-errors.html b/docs/libcurl/libcurl-errors.html
index e6cb9ea23..8c9f47b6e 100644
--- a/docs/libcurl/libcurl-errors.html
+++ b/docs/libcurl/libcurl-errors.html
@@ -4,20 +4,15 @@
<title>libcurl-errors man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -80,7 +75,7 @@ p.roffit {
<p class="level0"><a name="CURLEFTPWEIRDPASSREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_PASS_REPLY (11)</span>
<p class="level1">After having sent the FTP password to the server, libcurl expects a proper reply. This error code indicates that an unexpected code was returned.
<p class="level0"><a name="CURLEFTPACCEPTTIMEOUT"></a><span class="nroffip">CURLE_FTP_ACCEPT_TIMEOUT (12)</span>
-<p class="level1">During an active FTP session while waiting for the server to connect, the <span Class="emphasis">CURLOPT_ACCEPTTIMEOUT_MS(3)</span> (or the internal default) timeout expired.
+<p class="level1">During an active FTP session while waiting for the server to connect, the <span Class="emphasis">CURLOPT_ACCEPTTIMOUT_MS(3)</span> (or the internal default) timeout expired.
<p class="level0"><a name="CURLEFTPWEIRDPASVREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_PASV_REPLY (13)</span>
<p class="level1">libcurl failed to get a sensible result back from the server as a response to either a PASV or a EPSV command. The server is flawed.
<p class="level0"><a name="CURLEFTPWEIRD227FORMAT"></a><span class="nroffip">CURLE_FTP_WEIRD_227_FORMAT (14)</span>
diff --git a/docs/libcurl/libcurl-errors.pdf b/docs/libcurl/libcurl-errors.pdf
index 08d2554d6..351c1b8cd 100644
--- a/docs/libcurl/libcurl-errors.pdf
+++ b/docs/libcurl/libcurl-errors.pdf
Binary files differ
diff --git a/docs/libcurl/libcurl-multi.3 b/docs/libcurl/libcurl-multi.3
index b745b7234..770d4a561 100644
--- a/docs/libcurl/libcurl-multi.3
+++ b/docs/libcurl/libcurl-multi.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -51,27 +51,28 @@ To use the multi interface, you must first create a 'multi handle' with
\fIcurl_multi_init(3)\fP. This handle is then used as input to all further
curl_multi_* functions.
-With a multi handle and the multi interface you can do several simultaneous
-transfers in parallel. Each single transfer is built up around an easy
-handle. You create all the easy handles you need, and setup the appropriate
-options for each easy handle using \fIcurl_easy_setopt(3)\fP.
+With a multi handle and the multi interface you can do any amount of
+simultaneous transfers in parallel. Each single transfer is built up around an
+easy handle. You must create the easy handles you need, and setup the
+appropriate options for each easy handle, as outlined in the \fIlibcurl(3)\fP
+man page, using \fIcurl_easy_setopt(3)\fP.
There are two flavours of the multi interface, the select() oriented one and
-the event based one we call multi_socket. You will benefit from reading
-through the description of both versions to fully understand how they work and
+the event based one we called multi_socket. You will benefit from reading
+through the description of both versions to full understand how they work and
differentiate. We start out with the select() oriented version.
-When an easy handle is setup and ready for transfer, then instead of using
+When an easy handle is setup for a transfer, then instead of using
\fIcurl_easy_perform(3)\fP like when using the easy interface for transfers,
you should add the easy handle to the multi handle with
-\fIcurl_multi_add_handle(3)\fP. You can add more easy handles to a multi
-handle at any point, even if other transfers are already running.
+\fIcurl_multi_add_handle(3)\fP. The multi handle is sometimes referred to as a
+\'multi stack\' because of the fact that it may hold a large amount of easy
+handles.
Should you change your mind, the easy handle is again removed from the multi
stack using \fIcurl_multi_remove_handle(3)\fP. Once removed from the multi
handle, you can again use other easy interface functions like
-\fIcurl_easy_perform(3)\fP on the handle or whatever you think is
-necessary. You can remove handles at any point in time during transfers.
+\fIcurl_easy_perform(3)\fP on the handle or whatever you think is necessary.
Adding the easy handle to the multi handle does not start the transfer.
Remember that one of the main ideas with this interface is to let your
@@ -83,16 +84,16 @@ current transfers in the multi stack that are ready to transfer anything. It
may be all, it may be none. When there's nothing more to do for now, it
returns back to the calling application.
-Your application extracts info from libcurl about when it would like to get
-invoked to transfer data or do other work. The most convenient way is to use
-\fIcurl_multi_wait(3)\fP that will help you wait until the application should
-call libcurl again. The older API to accomplish the same thing is
-\fIcurl_multi_fdset(3)\fP that extracts fd_sets from libcurl to use in
-select() or poll() calls in order to get to know when the transfers in the
-multi stack might need attention. Both these APIs allow for your program to
-wait for input on your own private file descriptors at the same time
-\fIcurl_multi_timeout(3)\fP also helps you with providing a suitable timeout
-period for your select() calls.
+Your application can acquire knowledge from libcurl when it would like to get
+invoked to transfer data, so that you don't have to busy-loop and call that
+\fIcurl_multi_perform(3)\fP like crazy. \fIcurl_multi_fdset(3)\fP offers an
+interface using which you can extract fd_sets from libcurl to use in select()
+or poll() calls in order to get to know when the transfers in the multi stack
+might need attention. This also makes it very easy for your program to wait
+for input on your own private file descriptors at the same time or perhaps
+timeout every now and then, should you want that. \fIcurl_multi_timeout(3)\fP
+also helps you with providing a suitable timeout period for your select()
+call.
\fIcurl_multi_perform(3)\fP stores the number of still running transfers in
one of its input arguments, and by reading that you can figure out when all
@@ -113,9 +114,9 @@ the multi stack. You need to first remove the easy handle with
\fIcurl_easy_cleanup(3)\fP, or possibly set new options to it and add it again
with \fIcurl_multi_add_handle(3)\fP to start another transfer.
-When all transfers in the multi stack are done, close the multi handle with
+When all transfers in the multi stack are done, cleanup the multi handle with
\fIcurl_multi_cleanup(3)\fP. Be careful and please note that you \fBMUST\fP
-invoke separate \fIcurl_easy_cleanup(3)\fP calls for every single easy handle
+invoke separate \fIcurl_easy_cleanup(3)\fP calls on every single easy handle
to clean them up properly.
If you want to re-use an easy handle that was added to the multi handle for
@@ -135,7 +136,7 @@ normal multi interface. Then you also set two callbacks with the
CURLMOPT_SOCKETFUNCTION and CURLMOPT_TIMERFUNCTION options to
\fIcurl_multi_setopt(3)\fP. They are two callback functions that libcurl will
call with information about what sockets to wait for, and for what activity,
-and what the current timeout time is - if that expires libcurl should be
+and what the curret timeout time is - if that expires libcurl should be
notified.
The multi_socket API is designed to inform your application about which
diff --git a/docs/libcurl/libcurl-multi.html b/docs/libcurl/libcurl-multi.html
index 6aad3b83a..a16f3e6a3 100644
--- a/docs/libcurl/libcurl-multi.html
+++ b/docs/libcurl/libcurl-multi.html
@@ -4,20 +4,15 @@
<title>libcurl-multi man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -60,20 +55,20 @@ p.roffit {
<p class="level0">3. Enable the application to wait for action on its own file descriptors and curl's file descriptors simultaneous easily.
<p class="level0">4. Enable event-based handling and scaling transfers up to and beyond thousands of parallel connections. <a name="ONE"></a><h2 class="nroffsh">ONE MULTI HANDLE MANY EASY HANDLES</h2>
<p class="level0">To use the multi interface, you must first create a 'multi handle' with <a Class="emphasis" href="./curl_multi_init.html">curl_multi_init</a>. This handle is then used as input to all further curl_multi_* functions.
-<p class="level0">With a multi handle and the multi interface you can do several simultaneous transfers in parallel. Each single transfer is built up around an easy handle. You create all the easy handles you need, and setup the appropriate options for each easy handle using <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a>.
-<p class="level0">There are two flavours of the multi interface, the select() oriented one and the event based one we call multi_socket. You will benefit from reading through the description of both versions to fully understand how they work and differentiate. We start out with the select() oriented version.
-<p class="level0">When an easy handle is setup and ready for transfer, then instead of using <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> like when using the easy interface for transfers, you should add the easy handle to the multi handle with <a Class="emphasis" href="./curl_multi_add_handle.html">curl_multi_add_handle</a>. You can add more easy handles to a multi handle at any point, even if other transfers are already running.
-<p class="level0">Should you change your mind, the easy handle is again removed from the multi stack using <a Class="emphasis" href="./curl_multi_remove_handle.html">curl_multi_remove_handle</a>. Once removed from the multi handle, you can again use other easy interface functions like <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> on the handle or whatever you think is necessary. You can remove handles at any point in time during transfers.
+<p class="level0">With a multi handle and the multi interface you can do any amount of simultaneous transfers in parallel. Each single transfer is built up around an easy handle. You must create the easy handles you need, and setup the appropriate options for each easy handle, as outlined in the <a Class="emphasis" href="./libcurl.html">libcurl</a> man page, using <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a>.
+<p class="level0">There are two flavours of the multi interface, the select() oriented one and the event based one we called multi_socket. You will benefit from reading through the description of both versions to full understand how they work and differentiate. We start out with the select() oriented version.
+<p class="level0">When an easy handle is setup for a transfer, then instead of using <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> like when using the easy interface for transfers, you should add the easy handle to the multi handle with <a Class="emphasis" href="./curl_multi_add_handle.html">curl_multi_add_handle</a>. The multi handle is sometimes referred to as a &acute;multi stack&acute; because of the fact that it may hold a large amount of easy handles.
+<p class="level0">Should you change your mind, the easy handle is again removed from the multi stack using <a Class="emphasis" href="./curl_multi_remove_handle.html">curl_multi_remove_handle</a>. Once removed from the multi handle, you can again use other easy interface functions like <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> on the handle or whatever you think is necessary.
<p class="level0">Adding the easy handle to the multi handle does not start the transfer. Remember that one of the main ideas with this interface is to let your application drive. You drive the transfers by invoking <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a>. libcurl will then transfer data if there is anything available to transfer. It'll use the callbacks and everything else you have setup in the individual easy handles. It'll transfer data on all current transfers in the multi stack that are ready to transfer anything. It may be all, it may be none. When there's nothing more to do for now, it returns back to the calling application.
-<p class="level0">Your application extracts info from libcurl about when it would like to get invoked to transfer data or do other work. The most convenient way is to use <a Class="emphasis" href="./curl_multi_wait.html">curl_multi_wait</a> that will help you wait until the application should call libcurl again. The older API to accomplish the same thing is <a Class="emphasis" href="./curl_multi_fdset.html">curl_multi_fdset</a> that extracts fd_sets from libcurl to use in select() or poll() calls in order to get to know when the transfers in the multi stack might need attention. Both these APIs allow for your program to wait for input on your own private file descriptors at the same time <a Class="emphasis" href="./curl_multi_timeout.html">curl_multi_timeout</a> also helps you with providing a suitable timeout period for your select() calls.
+<p class="level0">Your application can acquire knowledge from libcurl when it would like to get invoked to transfer data, so that you don't have to busy-loop and call that <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> like crazy. <a Class="emphasis" href="./curl_multi_fdset.html">curl_multi_fdset</a> offers an interface using which you can extract fd_sets from libcurl to use in select() or poll() calls in order to get to know when the transfers in the multi stack might need attention. This also makes it very easy for your program to wait for input on your own private file descriptors at the same time or perhaps timeout every now and then, should you want that. <a Class="emphasis" href="./curl_multi_timeout.html">curl_multi_timeout</a> also helps you with providing a suitable timeout period for your select() call.
<p class="level0"><a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> stores the number of still running transfers in one of its input arguments, and by reading that you can figure out when all the transfers in the multi handles are done. 'done' does not mean successful. One or more of the transfers may have failed. Tracking when this number changes, you know when one or more transfers are done.
<p class="level0">To get information about completed transfers, to figure out success or not and similar, <a Class="emphasis" href="./curl_multi_info_read.html">curl_multi_info_read</a> should be called. It can return a message about a current or previous transfer. Repeated invokes of the function get more messages until the message queue is empty. The information you receive there includes an easy handle pointer which you may use to identify which easy handle the information regards.
<p class="level0">When a single transfer is completed, the easy handle is still left added to the multi stack. You need to first remove the easy handle with <a Class="emphasis" href="./curl_multi_remove_handle.html">curl_multi_remove_handle</a> and then close it with <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a>, or possibly set new options to it and add it again with <a Class="emphasis" href="./curl_multi_add_handle.html">curl_multi_add_handle</a> to start another transfer.
-<p class="level0">When all transfers in the multi stack are done, close the multi handle with <a Class="emphasis" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>. Be careful and please note that you <span Class="bold">MUST</span> invoke separate <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a> calls for every single easy handle to clean them up properly.
+<p class="level0">When all transfers in the multi stack are done, cleanup the multi handle with <a Class="emphasis" href="./curl_multi_cleanup.html">curl_multi_cleanup</a>. Be careful and please note that you <span Class="bold">MUST</span> invoke separate <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a> calls on every single easy handle to clean them up properly.
<p class="level0">If you want to re-use an easy handle that was added to the multi handle for transfer, you must first remove it from the multi stack and then re-add it again (possibly after having altered some options at your own choice). <a name="MULTISOCKET"></a><h2 class="nroffsh">MULTI_SOCKET</h2>
<p class="level0"><a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> function offers a way for applications to not only avoid being forced to use select(), but it also offers a much more high-performance API that will make a significant difference for applications using large numbers of simultaneous connections.
<p class="level0"><a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> is then used instead of <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a>.
-<p class="level0">When using this API, you add easy handles to the multi handle just as with the normal multi interface. Then you also set two callbacks with the CURLMOPT_SOCKETFUNCTION and CURLMOPT_TIMERFUNCTION options to <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a>. They are two callback functions that libcurl will call with information about what sockets to wait for, and for what activity, and what the current timeout time is - if that expires libcurl should be notified.
+<p class="level0">When using this API, you add easy handles to the multi handle just as with the normal multi interface. Then you also set two callbacks with the CURLMOPT_SOCKETFUNCTION and CURLMOPT_TIMERFUNCTION options to <a Class="emphasis" href="./curl_multi_setopt.html">curl_multi_setopt</a>. They are two callback functions that libcurl will call with information about what sockets to wait for, and for what activity, and what the curret timeout time is - if that expires libcurl should be notified.
<p class="level0">The multi_socket API is designed to inform your application about which sockets libcurl is currently using and for what activities (read and/or write) on those sockets your application is expected to wait for.
<p class="level0">Your application must make sure to receive all sockets informed about in the CURLMOPT_SOCKETFUNCTION callback and make sure it reacts on the given activity on them. When a socket has the given activity, you call <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> specifying which socket and action there are.
<p class="level0">The CURLMOPT_TIMERFUNCTION callback is called to set a timeout. When that timeout expires, your application should call the <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> function saying it was due to a timeout.
@@ -81,14 +76,14 @@ p.roffit {
<p class="level0">When you've added your initial set of handles, you call <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> with CURL_SOCKET_TIMEOUT set in the sockfd argument, and you'll get callbacks call that sets you up and you then continue to call <a Class="emphasis" href="./curl_multi_socket_action.html">curl_multi_socket_action</a> accordingly when you get activity on the sockets you've been asked to wait on, or if the timeout timer expires.
<p class="level0">You can poll <a Class="emphasis" href="./curl_multi_info_read.html">curl_multi_info_read</a> to see if any transfer has completed, as it then has a message saying so. <a name="BLOCKING"></a><h2 class="nroffsh">BLOCKING</h2>
<p class="level0">A few areas in the code are still using blocking code, even when used from the multi interface. While we certainly want and intend for these to get fixed in the future, you should be aware of the following current restrictions:
-<p class="level0"><pre class="level0">
-&nbsp;- Name resolves unless the c-ares or threaded-resolver backends are used
-&nbsp;- NSS SSL connections
-&nbsp;- HTTP proxy CONNECT operations
-&nbsp;- SOCKS proxy handshakes
-&nbsp;- file:// transfers
-&nbsp;- TELNET transfers
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;- Name resolves unless the c-ares or threaded-resolver backends are used
+ &nbsp;- NSS SSL connections
+ &nbsp;- HTTP proxy CONNECT operations
+ &nbsp;- SOCKS proxy handshakes
+ &nbsp;- file:// transfers
+ &nbsp;- TELNET transfers
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./libcurl-errors.html">libcurl-errors</a>, <a Class="manpage" href="./libcurl-easy.html">libcurl-easy</a>, <a Class="manpage" href="./libcurl.html">libcurl</a>, <p class="roffit">
diff --git a/docs/libcurl/libcurl-multi.pdf b/docs/libcurl/libcurl-multi.pdf
index 2acd7efde..ac6bb1f06 100644
--- a/docs/libcurl/libcurl-multi.pdf
+++ b/docs/libcurl/libcurl-multi.pdf
Binary files differ
diff --git a/docs/libcurl/libcurl-share.html b/docs/libcurl/libcurl-share.html
index 448d8bb35..6aa66c8e9 100644
--- a/docs/libcurl/libcurl-share.html
+++ b/docs/libcurl/libcurl-share.html
@@ -4,20 +4,15 @@
<title>libcurl-share man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/docs/libcurl/libcurl-share.pdf b/docs/libcurl/libcurl-share.pdf
index 5544639de..f7bde5414 100644
--- a/docs/libcurl/libcurl-share.pdf
+++ b/docs/libcurl/libcurl-share.pdf
Binary files differ
diff --git a/docs/libcurl/libcurl-symbols.3 b/docs/libcurl/libcurl-symbols.3
deleted file mode 100644
index b7097e5d8..000000000
--- a/docs/libcurl/libcurl-symbols.3
+++ /dev/null
@@ -1,1616 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.TH libcurl-symbols 3 "Aug 12, 2015" "libcurl 7.41.0" "libcurl symbols"
-.SH NAME
-libcurl-symbols \- libcurl symbol version information
-.SH "libcurl symbols"
-This man page details version information for public symbols provided in the
-libcurl header files. This lists the first version in which the symbol was
-introduced and for some symbols two additional information pieces:
-
-The first version in which the symbol is marked "deprecated" - meaning that
-since that version no new code should be written to use the symbol as it is
-marked for getting removed in a future.
-
-The last version that featured the specific symbol. Using the symbol in source
-code will make it no longer compile error-free after that specified version.
-
-This man page is automatically generated from the symbols-in-versions file.
-.IP CURLAUTH_ANY
-Introduced in 7.10.6
-.IP CURLAUTH_ANYSAFE
-Introduced in 7.10.6
-.IP CURLAUTH_BASIC
-Introduced in 7.10.6
-.IP CURLAUTH_DIGEST
-Introduced in 7.10.6
-.IP CURLAUTH_DIGEST_IE
-Introduced in 7.19.3
-.IP CURLAUTH_GSSNEGOTIATE
-Introduced in 7.10.6
-Deprecated since 7.38.0
-.IP CURLAUTH_NEGOTIATE
-Introduced in 7.38.0
-.IP CURLAUTH_NONE
-Introduced in 7.10.6
-.IP CURLAUTH_NTLM
-Introduced in 7.10.6
-.IP CURLAUTH_NTLM_WB
-Introduced in 7.22.0
-.IP CURLAUTH_ONLY
-Introduced in 7.21.3
-.IP CURLCLOSEPOLICY_CALLBACK
-Introduced in 7.7
-.IP CURLCLOSEPOLICY_LEAST_RECENTLY_USED
-Introduced in 7.7
-.IP CURLCLOSEPOLICY_LEAST_TRAFFIC
-Introduced in 7.7
-.IP CURLCLOSEPOLICY_NONE
-Introduced in 7.7
-.IP CURLCLOSEPOLICY_OLDEST
-Introduced in 7.7
-.IP CURLCLOSEPOLICY_SLOWEST
-Introduced in 7.7
-.IP CURLE_ABORTED_BY_CALLBACK
-Introduced in 7.1
-.IP CURLE_AGAIN
-Introduced in 7.18.2
-.IP CURLE_ALREADY_COMPLETE
-Introduced in 7.7.2
-.IP CURLE_BAD_CALLING_ORDER
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_BAD_CONTENT_ENCODING
-Introduced in 7.10
-.IP CURLE_BAD_DOWNLOAD_RESUME
-Introduced in 7.10
-.IP CURLE_BAD_FUNCTION_ARGUMENT
-Introduced in 7.1
-.IP CURLE_BAD_PASSWORD_ENTERED
-Introduced in 7.4.2
-Deprecated since 7.17.0
-.IP CURLE_CHUNK_FAILED
-Introduced in 7.21.0
-.IP CURLE_CONV_FAILED
-Introduced in 7.15.4
-.IP CURLE_CONV_REQD
-Introduced in 7.15.4
-.IP CURLE_COULDNT_CONNECT
-Introduced in 7.1
-.IP CURLE_COULDNT_RESOLVE_HOST
-Introduced in 7.1
-.IP CURLE_COULDNT_RESOLVE_PROXY
-Introduced in 7.1
-.IP CURLE_FAILED_INIT
-Introduced in 7.1
-.IP CURLE_FILESIZE_EXCEEDED
-Introduced in 7.10.8
-.IP CURLE_FILE_COULDNT_READ_FILE
-Introduced in 7.1
-.IP CURLE_FTP_ACCEPT_FAILED
-Introduced in 7.24.0
-.IP CURLE_FTP_ACCEPT_TIMEOUT
-Introduced in 7.24.0
-.IP CURLE_FTP_ACCESS_DENIED
-Introduced in 7.1
-.IP CURLE_FTP_BAD_DOWNLOAD_RESUME
-Introduced in 7.1
-Deprecated since 7.1
-.IP CURLE_FTP_BAD_FILE_LIST
-Introduced in 7.21.0
-.IP CURLE_FTP_CANT_GET_HOST
-Introduced in 7.1
-.IP CURLE_FTP_CANT_RECONNECT
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_COULDNT_GET_SIZE
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_COULDNT_RETR_FILE
-Introduced in 7.1
-.IP CURLE_FTP_COULDNT_SET_ASCII
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_COULDNT_SET_BINARY
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_COULDNT_SET_TYPE
-Introduced in 7.17.0
-.IP CURLE_FTP_COULDNT_STOR_FILE
-Introduced in 7.1
-.IP CURLE_FTP_COULDNT_USE_REST
-Introduced in 7.1
-.IP CURLE_FTP_PARTIAL_FILE
-Introduced in 7.1
-Deprecated since 7.1
-.IP CURLE_FTP_PORT_FAILED
-Introduced in 7.1
-.IP CURLE_FTP_PRET_FAILED
-Introduced in 7.20.0
-.IP CURLE_FTP_QUOTE_ERROR
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_SSL_FAILED
-Introduced in 7.11.0
-Deprecated since 7.17.0
-.IP CURLE_FTP_USER_PASSWORD_INCORRECT
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_WEIRD_227_FORMAT
-Introduced in 7.1
-.IP CURLE_FTP_WEIRD_PASS_REPLY
-Introduced in 7.1
-.IP CURLE_FTP_WEIRD_PASV_REPLY
-Introduced in 7.1
-.IP CURLE_FTP_WEIRD_SERVER_REPLY
-Introduced in 7.1
-.IP CURLE_FTP_WEIRD_USER_REPLY
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FTP_WRITE_ERROR
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_FUNCTION_NOT_FOUND
-Introduced in 7.1
-.IP CURLE_GOT_NOTHING
-Introduced in 7.9.1
-.IP CURLE_HTTP2
-Introduced in 7.38.0
-.IP CURLE_HTTP_NOT_FOUND
-Introduced in 7.1
-.IP CURLE_HTTP_PORT_FAILED
-Introduced in 7.3
-Deprecated since 7.12.0
-.IP CURLE_HTTP_POST_ERROR
-Introduced in 7.1
-.IP CURLE_HTTP_RANGE_ERROR
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_HTTP_RETURNED_ERROR
-Introduced in 7.10.3
-.IP CURLE_INTERFACE_FAILED
-Introduced in 7.12.0
-.IP CURLE_LDAP_CANNOT_BIND
-Introduced in 7.1
-.IP CURLE_LDAP_INVALID_URL
-Introduced in 7.10.8
-.IP CURLE_LDAP_SEARCH_FAILED
-Introduced in 7.1
-.IP CURLE_LIBRARY_NOT_FOUND
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_LOGIN_DENIED
-Introduced in 7.13.1
-.IP CURLE_MALFORMAT_USER
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_NOT_BUILT_IN
-Introduced in 7.21.5
-.IP CURLE_NO_CONNECTION_AVAILABLE
-Introduced in 7.30.0
-.IP CURLE_OK
-Introduced in 7.1
-.IP CURLE_OPERATION_TIMEDOUT
-Introduced in 7.10.2
-.IP CURLE_OPERATION_TIMEOUTED
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_OUT_OF_MEMORY
-Introduced in 7.1
-.IP CURLE_PARTIAL_FILE
-Introduced in 7.1
-.IP CURLE_PEER_FAILED_VERIFICATION
-Introduced in 7.17.1
-.IP CURLE_QUOTE_ERROR
-Introduced in 7.17.0
-.IP CURLE_RANGE_ERROR
-Introduced in 7.17.0
-.IP CURLE_READ_ERROR
-Introduced in 7.1
-.IP CURLE_RECV_ERROR
-Introduced in 7.10
-.IP CURLE_REMOTE_ACCESS_DENIED
-Introduced in 7.17.0
-.IP CURLE_REMOTE_DISK_FULL
-Introduced in 7.17.0
-.IP CURLE_REMOTE_FILE_EXISTS
-Introduced in 7.17.0
-.IP CURLE_REMOTE_FILE_NOT_FOUND
-Introduced in 7.16.1
-.IP CURLE_RTSP_CSEQ_ERROR
-Introduced in 7.20.0
-.IP CURLE_RTSP_SESSION_ERROR
-Introduced in 7.20.0
-.IP CURLE_SEND_ERROR
-Introduced in 7.10
-.IP CURLE_SEND_FAIL_REWIND
-Introduced in 7.12.3
-.IP CURLE_SHARE_IN_USE
-Introduced in 7.9.6
-Deprecated since 7.17.0
-.IP CURLE_SSH
-Introduced in 7.16.1
-.IP CURLE_SSL_CACERT
-Introduced in 7.10
-.IP CURLE_SSL_CACERT_BADFILE
-Introduced in 7.16.0
-.IP CURLE_SSL_CERTPROBLEM
-Introduced in 7.10
-.IP CURLE_SSL_CIPHER
-Introduced in 7.10
-.IP CURLE_SSL_CONNECT_ERROR
-Introduced in 7.1
-.IP CURLE_SSL_CRL_BADFILE
-Introduced in 7.19.0
-.IP CURLE_SSL_ENGINE_INITFAILED
-Introduced in 7.12.3
-.IP CURLE_SSL_ENGINE_NOTFOUND
-Introduced in 7.9.3
-.IP CURLE_SSL_ENGINE_SETFAILED
-Introduced in 7.9.3
-.IP CURLE_SSL_INVALIDCERTSTATUS
-Introduced in 7.41.0
-.IP CURLE_SSL_ISSUER_ERROR
-Introduced in 7.19.0
-.IP CURLE_SSL_PEER_CERTIFICATE
-Introduced in 7.8
-Deprecated since 7.17.1
-.IP CURLE_SSL_PINNEDPUBKEYNOTMATCH
-Introduced in 7.39.0
-.IP CURLE_SSL_SHUTDOWN_FAILED
-Introduced in 7.16.1
-.IP CURLE_TELNET_OPTION_SYNTAX
-Introduced in 7.7
-.IP CURLE_TFTP_DISKFULL
-Introduced in 7.15.0
-Deprecated since 7.17.0
-.IP CURLE_TFTP_EXISTS
-Introduced in 7.15.0
-Deprecated since 7.17.0
-.IP CURLE_TFTP_ILLEGAL
-Introduced in 7.15.0
-.IP CURLE_TFTP_NOSUCHUSER
-Introduced in 7.15.0
-.IP CURLE_TFTP_NOTFOUND
-Introduced in 7.15.0
-.IP CURLE_TFTP_PERM
-Introduced in 7.15.0
-.IP CURLE_TFTP_UNKNOWNID
-Introduced in 7.15.0
-.IP CURLE_TOO_MANY_REDIRECTS
-Introduced in 7.5
-.IP CURLE_UNKNOWN_OPTION
-Introduced in 7.21.5
-.IP CURLE_UNKNOWN_TELNET_OPTION
-Introduced in 7.7
-.IP CURLE_UNSUPPORTED_PROTOCOL
-Introduced in 7.1
-.IP CURLE_UPLOAD_FAILED
-Introduced in 7.16.3
-.IP CURLE_URL_MALFORMAT
-Introduced in 7.1
-.IP CURLE_URL_MALFORMAT_USER
-Introduced in 7.1
-Deprecated since 7.17.0
-.IP CURLE_USE_SSL_FAILED
-Introduced in 7.17.0
-.IP CURLE_WRITE_ERROR
-Introduced in 7.1
-.IP CURLFILETYPE_DEVICE_BLOCK
-Introduced in 7.21.0
-.IP CURLFILETYPE_DEVICE_CHAR
-Introduced in 7.21.0
-.IP CURLFILETYPE_DIRECTORY
-Introduced in 7.21.0
-.IP CURLFILETYPE_DOOR
-Introduced in 7.21.0
-.IP CURLFILETYPE_FILE
-Introduced in 7.21.0
-.IP CURLFILETYPE_NAMEDPIPE
-Introduced in 7.21.0
-.IP CURLFILETYPE_SOCKET
-Introduced in 7.21.0
-.IP CURLFILETYPE_SYMLINK
-Introduced in 7.21.0
-.IP CURLFILETYPE_UNKNOWN
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_FILENAME
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_FILETYPE
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_GID
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_HLINKCOUNT
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_PERM
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_SIZE
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_TIME
-Introduced in 7.21.0
-.IP CURLFINFOFLAG_KNOWN_UID
-Introduced in 7.21.0
-.IP CURLFORM_ARRAY
-Introduced in 7.9.1
-.IP CURLFORM_ARRAY_END
-Introduced in 7.9.1
-Deprecated since 7.9.5
-Last used in 7.9.5
-.IP CURLFORM_ARRAY_START
-Introduced in 7.9.1
-Deprecated since 7.9.5
-Last used in 7.9.5
-.IP CURLFORM_BUFFER
-Introduced in 7.9.8
-.IP CURLFORM_BUFFERLENGTH
-Introduced in 7.9.8
-.IP CURLFORM_BUFFERPTR
-Introduced in 7.9.8
-.IP CURLFORM_CONTENTHEADER
-Introduced in 7.9.3
-.IP CURLFORM_CONTENTSLENGTH
-Introduced in 7.9
-.IP CURLFORM_CONTENTTYPE
-Introduced in 7.9
-.IP CURLFORM_COPYCONTENTS
-Introduced in 7.9
-.IP CURLFORM_COPYNAME
-Introduced in 7.9
-.IP CURLFORM_END
-Introduced in 7.9
-.IP CURLFORM_FILE
-Introduced in 7.9
-.IP CURLFORM_FILECONTENT
-Introduced in 7.9.1
-.IP CURLFORM_FILENAME
-Introduced in 7.9.6
-.IP CURLFORM_NAMELENGTH
-Introduced in 7.9
-.IP CURLFORM_NOTHING
-Introduced in 7.9
-.IP CURLFORM_PTRCONTENTS
-Introduced in 7.9
-.IP CURLFORM_PTRNAME
-Introduced in 7.9
-.IP CURLFORM_STREAM
-Introduced in 7.18.2
-.IP CURLFTPAUTH_DEFAULT
-Introduced in 7.12.2
-.IP CURLFTPAUTH_SSL
-Introduced in 7.12.2
-.IP CURLFTPAUTH_TLS
-Introduced in 7.12.2
-.IP CURLFTPMETHOD_DEFAULT
-Introduced in 7.15.3
-.IP CURLFTPMETHOD_MULTICWD
-Introduced in 7.15.3
-.IP CURLFTPMETHOD_NOCWD
-Introduced in 7.15.3
-.IP CURLFTPMETHOD_SINGLECWD
-Introduced in 7.15.3
-.IP CURLFTPSSL_ALL
-Introduced in 7.11.0
-Deprecated since 7.17.0
-.IP CURLFTPSSL_CCC_ACTIVE
-Introduced in 7.16.2
-.IP CURLFTPSSL_CCC_NONE
-Introduced in 7.16.2
-.IP CURLFTPSSL_CCC_PASSIVE
-Introduced in 7.16.1
-.IP CURLFTPSSL_CONTROL
-Introduced in 7.11.0
-Deprecated since 7.17.0
-.IP CURLFTPSSL_NONE
-Introduced in 7.11.0
-Deprecated since 7.17.0
-.IP CURLFTPSSL_TRY
-Introduced in 7.11.0
-Deprecated since 7.17.0
-.IP CURLFTP_CREATE_DIR
-Introduced in 7.19.4
-.IP CURLFTP_CREATE_DIR_NONE
-Introduced in 7.19.4
-.IP CURLFTP_CREATE_DIR_RETRY
-Introduced in 7.19.4
-.IP CURLGSSAPI_DELEGATION_FLAG
-Introduced in 7.22.0
-.IP CURLGSSAPI_DELEGATION_NONE
-Introduced in 7.22.0
-.IP CURLGSSAPI_DELEGATION_POLICY_FLAG
-Introduced in 7.22.0
-.IP CURLHEADER_SEPARATE
-Introduced in 7.37.0
-.IP CURLHEADER_UNIFIED
-Introduced in 7.37.0
-.IP CURLINFO_APPCONNECT_TIME
-Introduced in 7.19.0
-.IP CURLINFO_CERTINFO
-Introduced in 7.19.1
-.IP CURLINFO_CONDITION_UNMET
-Introduced in 7.19.4
-.IP CURLINFO_CONNECT_TIME
-Introduced in 7.4.1
-.IP CURLINFO_CONTENT_LENGTH_DOWNLOAD
-Introduced in 7.6.1
-.IP CURLINFO_CONTENT_LENGTH_UPLOAD
-Introduced in 7.6.1
-.IP CURLINFO_CONTENT_TYPE
-Introduced in 7.9.4
-.IP CURLINFO_COOKIELIST
-Introduced in 7.14.1
-.IP CURLINFO_DATA_IN
-Introduced in 7.9.6
-.IP CURLINFO_DATA_OUT
-Introduced in 7.9.6
-.IP CURLINFO_DOUBLE
-Introduced in 7.4.1
-.IP CURLINFO_EFFECTIVE_URL
-Introduced in 7.4
-.IP CURLINFO_END
-Introduced in 7.9.6
-.IP CURLINFO_FILETIME
-Introduced in 7.5
-.IP CURLINFO_FTP_ENTRY_PATH
-Introduced in 7.15.4
-.IP CURLINFO_HEADER_IN
-Introduced in 7.9.6
-.IP CURLINFO_HEADER_OUT
-Introduced in 7.9.6
-.IP CURLINFO_HEADER_SIZE
-Introduced in 7.4.1
-.IP CURLINFO_HTTPAUTH_AVAIL
-Introduced in 7.10.8
-.IP CURLINFO_HTTP_CODE
-Introduced in 7.4.1
-Deprecated since 7.10.8
-.IP CURLINFO_HTTP_CONNECTCODE
-Introduced in 7.10.7
-.IP CURLINFO_LASTONE
-Introduced in 7.4.1
-.IP CURLINFO_LASTSOCKET
-Introduced in 7.15.2
-.IP CURLINFO_LOCAL_IP
-Introduced in 7.21.0
-.IP CURLINFO_LOCAL_PORT
-Introduced in 7.21.0
-.IP CURLINFO_LONG
-Introduced in 7.4.1
-.IP CURLINFO_MASK
-Introduced in 7.4.1
-.IP CURLINFO_NAMELOOKUP_TIME
-Introduced in 7.4.1
-.IP CURLINFO_NONE
-Introduced in 7.4.1
-.IP CURLINFO_NUM_CONNECTS
-Introduced in 7.12.3
-.IP CURLINFO_OS_ERRNO
-Introduced in 7.12.2
-.IP CURLINFO_PRETRANSFER_TIME
-Introduced in 7.4.1
-.IP CURLINFO_PRIMARY_IP
-Introduced in 7.19.0
-.IP CURLINFO_PRIMARY_PORT
-Introduced in 7.21.0
-.IP CURLINFO_PRIVATE
-Introduced in 7.10.3
-.IP CURLINFO_PROXYAUTH_AVAIL
-Introduced in 7.10.8
-.IP CURLINFO_REDIRECT_COUNT
-Introduced in 7.9.7
-.IP CURLINFO_REDIRECT_TIME
-Introduced in 7.9.7
-.IP CURLINFO_REDIRECT_URL
-Introduced in 7.18.2
-.IP CURLINFO_REQUEST_SIZE
-Introduced in 7.4.1
-.IP CURLINFO_RESPONSE_CODE
-Introduced in 7.10.8
-.IP CURLINFO_RTSP_CLIENT_CSEQ
-Introduced in 7.20.0
-.IP CURLINFO_RTSP_CSEQ_RECV
-Introduced in 7.20.0
-.IP CURLINFO_RTSP_SERVER_CSEQ
-Introduced in 7.20.0
-.IP CURLINFO_RTSP_SESSION_ID
-Introduced in 7.20.0
-.IP CURLINFO_SIZE_DOWNLOAD
-Introduced in 7.4.1
-.IP CURLINFO_SIZE_UPLOAD
-Introduced in 7.4.1
-.IP CURLINFO_SLIST
-Introduced in 7.12.3
-.IP CURLINFO_SPEED_DOWNLOAD
-Introduced in 7.4.1
-.IP CURLINFO_SPEED_UPLOAD
-Introduced in 7.4.1
-.IP CURLINFO_SSL_DATA_IN
-Introduced in 7.12.1
-.IP CURLINFO_SSL_DATA_OUT
-Introduced in 7.12.1
-.IP CURLINFO_SSL_ENGINES
-Introduced in 7.12.3
-.IP CURLINFO_SSL_VERIFYRESULT
-Introduced in 7.5
-.IP CURLINFO_STARTTRANSFER_TIME
-Introduced in 7.9.2
-.IP CURLINFO_STRING
-Introduced in 7.4.1
-.IP CURLINFO_TEXT
-Introduced in 7.9.6
-.IP CURLINFO_TLS_SESSION
-Introduced in 7.34.0
-.IP CURLINFO_TOTAL_TIME
-Introduced in 7.4.1
-.IP CURLINFO_TYPEMASK
-Introduced in 7.4.1
-.IP CURLIOCMD_NOP
-Introduced in 7.12.3
-.IP CURLIOCMD_RESTARTREAD
-Introduced in 7.12.3
-.IP CURLIOE_FAILRESTART
-Introduced in 7.12.3
-.IP CURLIOE_OK
-Introduced in 7.12.3
-.IP CURLIOE_UNKNOWNCMD
-Introduced in 7.12.3
-.IP CURLKHMATCH_MISMATCH
-Introduced in 7.19.6
-.IP CURLKHMATCH_MISSING
-Introduced in 7.19.6
-.IP CURLKHMATCH_OK
-Introduced in 7.19.6
-.IP CURLKHSTAT_DEFER
-Introduced in 7.19.6
-.IP CURLKHSTAT_FINE
-Introduced in 7.19.6
-.IP CURLKHSTAT_FINE_ADD_TO_FILE
-Introduced in 7.19.6
-.IP CURLKHSTAT_REJECT
-Introduced in 7.19.6
-.IP CURLKHTYPE_DSS
-Introduced in 7.19.6
-.IP CURLKHTYPE_RSA
-Introduced in 7.19.6
-.IP CURLKHTYPE_RSA1
-Introduced in 7.19.6
-.IP CURLKHTYPE_UNKNOWN
-Introduced in 7.19.6
-.IP CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE
-Introduced in 7.30.0
-.IP CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE
-Introduced in 7.30.0
-.IP CURLMOPT_MAXCONNECTS
-Introduced in 7.16.3
-.IP CURLMOPT_MAX_HOST_CONNECTIONS
-Introduced in 7.30.0
-.IP CURLMOPT_MAX_PIPELINE_LENGTH
-Introduced in 7.30.0
-.IP CURLMOPT_MAX_TOTAL_CONNECTIONS
-Introduced in 7.30.0
-.IP CURLMOPT_PIPELINING
-Introduced in 7.16.0
-.IP CURLMOPT_PIPELINING_SERVER_BL
-Introduced in 7.30.0
-.IP CURLMOPT_PIPELINING_SITE_BL
-Introduced in 7.30.0
-.IP CURLMOPT_PUSHDATA
-Introduced in 7.44.0
-.IP CURLMOPT_PUSHFUNCTION
-Introduced in 7.44.0
-.IP CURLMOPT_SOCKETDATA
-Introduced in 7.15.4
-.IP CURLMOPT_SOCKETFUNCTION
-Introduced in 7.15.4
-.IP CURLMOPT_TIMERDATA
-Introduced in 7.16.0
-.IP CURLMOPT_TIMERFUNCTION
-Introduced in 7.16.0
-.IP CURLMSG_DONE
-Introduced in 7.9.6
-.IP CURLMSG_NONE
-Introduced in 7.9.6
-.IP CURLM_ADDED_ALREADY
-Introduced in 7.32.1
-.IP CURLM_BAD_EASY_HANDLE
-Introduced in 7.9.6
-.IP CURLM_BAD_HANDLE
-Introduced in 7.9.6
-.IP CURLM_BAD_SOCKET
-Introduced in 7.15.4
-.IP CURLM_CALL_MULTI_PERFORM
-Introduced in 7.9.6
-.IP CURLM_CALL_MULTI_SOCKET
-Introduced in 7.15.5
-.IP CURLM_INTERNAL_ERROR
-Introduced in 7.9.6
-.IP CURLM_OK
-Introduced in 7.9.6
-.IP CURLM_OUT_OF_MEMORY
-Introduced in 7.9.6
-.IP CURLM_UNKNOWN_OPTION
-Introduced in 7.15.4
-.IP CURLOPTTYPE_FUNCTIONPOINT
-Introduced in 7.1
-.IP CURLOPTTYPE_LONG
-Introduced in 7.1
-.IP CURLOPTTYPE_OBJECTPOINT
-Introduced in 7.1
-.IP CURLOPTTYPE_OFF_T
-Introduced in 7.11.0
-.IP CURLOPT_ACCEPTTIMEOUT_MS
-Introduced in 7.24.0
-.IP CURLOPT_ACCEPT_ENCODING
-Introduced in 7.21.6
-.IP CURLOPT_ADDRESS_SCOPE
-Introduced in 7.19.0
-.IP CURLOPT_APPEND
-Introduced in 7.17.0
-.IP CURLOPT_AUTOREFERER
-Introduced in 7.1
-.IP CURLOPT_BUFFERSIZE
-Introduced in 7.10
-.IP CURLOPT_CAINFO
-Introduced in 7.4.2
-.IP CURLOPT_CAPATH
-Introduced in 7.9.8
-.IP CURLOPT_CERTINFO
-Introduced in 7.19.1
-.IP CURLOPT_CHUNK_BGN_FUNCTION
-Introduced in 7.21.0
-.IP CURLOPT_CHUNK_DATA
-Introduced in 7.21.0
-.IP CURLOPT_CHUNK_END_FUNCTION
-Introduced in 7.21.0
-.IP CURLOPT_CLOSEFUNCTION
-Introduced in 7.7
-Deprecated since 7.11.1
-Last used in 7.11.1
-.IP CURLOPT_CLOSEPOLICY
-Introduced in 7.7
-Deprecated since 7.16.1
-.IP CURLOPT_CLOSESOCKETDATA
-Introduced in 7.21.7
-.IP CURLOPT_CLOSESOCKETFUNCTION
-Introduced in 7.21.7
-.IP CURLOPT_CONNECTTIMEOUT
-Introduced in 7.7
-.IP CURLOPT_CONNECTTIMEOUT_MS
-Introduced in 7.16.2
-.IP CURLOPT_CONNECT_ONLY
-Introduced in 7.15.2
-.IP CURLOPT_CONV_FROM_NETWORK_FUNCTION
-Introduced in 7.15.4
-.IP CURLOPT_CONV_FROM_UTF8_FUNCTION
-Introduced in 7.15.4
-.IP CURLOPT_CONV_TO_NETWORK_FUNCTION
-Introduced in 7.15.4
-.IP CURLOPT_COOKIE
-Introduced in 7.1
-.IP CURLOPT_COOKIEFILE
-Introduced in 7.1
-.IP CURLOPT_COOKIEJAR
-Introduced in 7.9
-.IP CURLOPT_COOKIELIST
-Introduced in 7.14.1
-.IP CURLOPT_COOKIESESSION
-Introduced in 7.9.7
-.IP CURLOPT_COPYPOSTFIELDS
-Introduced in 7.17.1
-.IP CURLOPT_CRLF
-Introduced in 7.1
-.IP CURLOPT_CRLFILE
-Introduced in 7.19.0
-.IP CURLOPT_CUSTOMREQUEST
-Introduced in 7.1
-.IP CURLOPT_DEBUGDATA
-Introduced in 7.9.6
-.IP CURLOPT_DEBUGFUNCTION
-Introduced in 7.9.6
-.IP CURLOPT_DIRLISTONLY
-Introduced in 7.17.0
-.IP CURLOPT_DNS_CACHE_TIMEOUT
-Introduced in 7.9.3
-.IP CURLOPT_DNS_INTERFACE
-Introduced in 7.33.0
-.IP CURLOPT_DNS_LOCAL_IP4
-Introduced in 7.33.0
-.IP CURLOPT_DNS_LOCAL_IP6
-Introduced in 7.33.0
-.IP CURLOPT_DNS_SERVERS
-Introduced in 7.24.0
-.IP CURLOPT_DNS_USE_GLOBAL_CACHE
-Introduced in 7.9.3
-Deprecated since 7.11.1
-.IP CURLOPT_EGDSOCKET
-Introduced in 7.7
-.IP CURLOPT_ENCODING
-Introduced in 7.10
-.IP CURLOPT_ERRORBUFFER
-Introduced in 7.1
-.IP CURLOPT_EXPECT_100_TIMEOUT_MS
-Introduced in 7.36.0
-.IP CURLOPT_FAILONERROR
-Introduced in 7.1
-.IP CURLOPT_FILE
-Introduced in 7.1
-Deprecated since 7.9.7
-.IP CURLOPT_FILETIME
-Introduced in 7.5
-.IP CURLOPT_FNMATCH_DATA
-Introduced in 7.21.0
-.IP CURLOPT_FNMATCH_FUNCTION
-Introduced in 7.21.0
-.IP CURLOPT_FOLLOWLOCATION
-Introduced in 7.1
-.IP CURLOPT_FORBID_REUSE
-Introduced in 7.7
-.IP CURLOPT_FRESH_CONNECT
-Introduced in 7.7
-.IP CURLOPT_FTPAPPEND
-Introduced in 7.1
-Deprecated since 7.16.4
-.IP CURLOPT_FTPASCII
-Introduced in 7.1
-Deprecated since 7.11.1
-Last used in 7.11.1
-.IP CURLOPT_FTPLISTONLY
-Introduced in 7.1
-Deprecated since 7.16.4
-.IP CURLOPT_FTPPORT
-Introduced in 7.1
-.IP CURLOPT_FTPSSLAUTH
-Introduced in 7.12.2
-.IP CURLOPT_FTP_ACCOUNT
-Introduced in 7.13.0
-.IP CURLOPT_FTP_ALTERNATIVE_TO_USER
-Introduced in 7.15.5
-.IP CURLOPT_FTP_CREATE_MISSING_DIRS
-Introduced in 7.10.7
-.IP CURLOPT_FTP_FILEMETHOD
-Introduced in 7.15.1
-.IP CURLOPT_FTP_RESPONSE_TIMEOUT
-Introduced in 7.10.8
-.IP CURLOPT_FTP_SKIP_PASV_IP
-Introduced in 7.15.0
-.IP CURLOPT_FTP_SSL
-Introduced in 7.11.0
-Deprecated since 7.16.4
-.IP CURLOPT_FTP_SSL_CCC
-Introduced in 7.16.1
-.IP CURLOPT_FTP_USE_EPRT
-Introduced in 7.10.5
-.IP CURLOPT_FTP_USE_EPSV
-Introduced in 7.9.2
-.IP CURLOPT_FTP_USE_PRET
-Introduced in 7.20.0
-.IP CURLOPT_GSSAPI_DELEGATION
-Introduced in 7.22.0
-.IP CURLOPT_HEADER
-Introduced in 7.1
-.IP CURLOPT_HEADERDATA
-Introduced in 7.10
-.IP CURLOPT_HEADERFUNCTION
-Introduced in 7.7.2
-.IP CURLOPT_HEADEROPT
-Introduced in 7.37.0
-.IP CURLOPT_HTTP200ALIASES
-Introduced in 7.10.3
-.IP CURLOPT_HTTPAUTH
-Introduced in 7.10.6
-.IP CURLOPT_HTTPGET
-Introduced in 7.8.1
-.IP CURLOPT_HTTPHEADER
-Introduced in 7.1
-.IP CURLOPT_HTTPPOST
-Introduced in 7.1
-.IP CURLOPT_HTTPPROXYTUNNEL
-Introduced in 7.3
-.IP CURLOPT_HTTPREQUEST
-Introduced in 7.1
-.IP CURLOPT_HTTP_CONTENT_DECODING
-Introduced in 7.16.2
-.IP CURLOPT_HTTP_TRANSFER_DECODING
-Introduced in 7.16.2
-.IP CURLOPT_HTTP_VERSION
-Introduced in 7.9.1
-.IP CURLOPT_IGNORE_CONTENT_LENGTH
-Introduced in 7.14.1
-.IP CURLOPT_INFILE
-Introduced in 7.1
-Deprecated since 7.9.7
-.IP CURLOPT_INFILESIZE
-Introduced in 7.1
-.IP CURLOPT_INFILESIZE_LARGE
-Introduced in 7.11.0
-.IP CURLOPT_INTERFACE
-Introduced in 7.3
-.IP CURLOPT_INTERLEAVEDATA
-Introduced in 7.20.0
-.IP CURLOPT_INTERLEAVEFUNCTION
-Introduced in 7.20.0
-.IP CURLOPT_IOCTLDATA
-Introduced in 7.12.3
-.IP CURLOPT_IOCTLFUNCTION
-Introduced in 7.12.3
-.IP CURLOPT_IPRESOLVE
-Introduced in 7.10.8
-.IP CURLOPT_ISSUERCERT
-Introduced in 7.19.0
-.IP CURLOPT_KEYPASSWD
-Introduced in 7.17.0
-.IP CURLOPT_KRB4LEVEL
-Introduced in 7.3
-Deprecated since 7.17.0
-.IP CURLOPT_KRBLEVEL
-Introduced in 7.16.4
-.IP CURLOPT_LOCALPORT
-Introduced in 7.15.2
-.IP CURLOPT_LOCALPORTRANGE
-Introduced in 7.15.2
-.IP CURLOPT_LOGIN_OPTIONS
-Introduced in 7.34.0
-.IP CURLOPT_LOW_SPEED_LIMIT
-Introduced in 7.1
-.IP CURLOPT_LOW_SPEED_TIME
-Introduced in 7.1
-.IP CURLOPT_MAIL_AUTH
-Introduced in 7.25.0
-.IP CURLOPT_MAIL_FROM
-Introduced in 7.20.0
-.IP CURLOPT_MAIL_RCPT
-Introduced in 7.20.0
-.IP CURLOPT_MAXCONNECTS
-Introduced in 7.7
-.IP CURLOPT_MAXFILESIZE
-Introduced in 7.10.8
-.IP CURLOPT_MAXFILESIZE_LARGE
-Introduced in 7.11.0
-.IP CURLOPT_MAXREDIRS
-Introduced in 7.5
-.IP CURLOPT_MAX_RECV_SPEED_LARGE
-Introduced in 7.15.5
-.IP CURLOPT_MAX_SEND_SPEED_LARGE
-Introduced in 7.15.5
-.IP CURLOPT_MUTE
-Introduced in 7.1
-Deprecated since 7.8
-Last used in 7.8
-.IP CURLOPT_NETRC
-Introduced in 7.1
-.IP CURLOPT_NETRC_FILE
-Introduced in 7.11.0
-.IP CURLOPT_NEW_DIRECTORY_PERMS
-Introduced in 7.16.4
-.IP CURLOPT_NEW_FILE_PERMS
-Introduced in 7.16.4
-.IP CURLOPT_NOBODY
-Introduced in 7.1
-.IP CURLOPT_NOPROGRESS
-Introduced in 7.1
-.IP CURLOPT_NOPROXY
-Introduced in 7.19.4
-.IP CURLOPT_NOSIGNAL
-Introduced in 7.10
-.IP CURLOPT_NOTHING
-Introduced in 7.1.1
-Deprecated since 7.11.1
-Last used in 7.11.1
-.IP CURLOPT_OPENSOCKETDATA
-Introduced in 7.17.1
-.IP CURLOPT_OPENSOCKETFUNCTION
-Introduced in 7.17.1
-.IP CURLOPT_PASSWDDATA
-Introduced in 7.4.2
-Deprecated since 7.11.1
-Last used in 7.11.1
-.IP CURLOPT_PASSWDFUNCTION
-Introduced in 7.4.2
-Deprecated since 7.11.1
-Last used in 7.11.1
-.IP CURLOPT_PASSWORD
-Introduced in 7.19.1
-.IP CURLOPT_PASV_HOST
-Introduced in 7.12.1
-Deprecated since 7.16.0
-Last used in 7.16.0
-.IP CURLOPT_PATH_AS_IS
-Introduced in 7.42.0
-.IP CURLOPT_PINNEDPUBLICKEY
-Introduced in 7.39.0
-.IP CURLOPT_PIPEWAIT
-Introduced in 7.43.0
-.IP CURLOPT_PORT
-Introduced in 7.1
-.IP CURLOPT_POST
-Introduced in 7.1
-.IP CURLOPT_POST301
-Introduced in 7.17.1
-Deprecated since 7.19.1
-.IP CURLOPT_POSTFIELDS
-Introduced in 7.1
-.IP CURLOPT_POSTFIELDSIZE
-Introduced in 7.2
-.IP CURLOPT_POSTFIELDSIZE_LARGE
-Introduced in 7.11.1
-.IP CURLOPT_POSTQUOTE
-Introduced in 7.1
-.IP CURLOPT_POSTREDIR
-Introduced in 7.19.1
-.IP CURLOPT_PREQUOTE
-Introduced in 7.9.5
-.IP CURLOPT_PRIVATE
-Introduced in 7.10.3
-.IP CURLOPT_PROGRESSDATA
-Introduced in 7.1
-.IP CURLOPT_PROGRESSFUNCTION
-Introduced in 7.1
-Deprecated since 7.32.0
-.IP CURLOPT_PROTOCOLS
-Introduced in 7.19.4
-.IP CURLOPT_PROXY
-Introduced in 7.1
-.IP CURLOPT_PROXYAUTH
-Introduced in 7.10.7
-.IP CURLOPT_PROXYHEADER
-Introduced in 7.37.0
-.IP CURLOPT_PROXYPASSWORD
-Introduced in 7.19.1
-.IP CURLOPT_PROXYPORT
-Introduced in 7.1
-.IP CURLOPT_PROXYTYPE
-Introduced in 7.10
-.IP CURLOPT_PROXYUSERNAME
-Introduced in 7.19.1
-.IP CURLOPT_PROXYUSERPWD
-Introduced in 7.1
-.IP CURLOPT_PROXY_SERVICE_NAME
-Introduced in 7.43.0
-.IP CURLOPT_PROXY_TRANSFER_MODE
-Introduced in 7.18.0
-.IP CURLOPT_PUT
-Introduced in 7.1
-.IP CURLOPT_QUOTE
-Introduced in 7.1
-.IP CURLOPT_RANDOM_FILE
-Introduced in 7.7
-.IP CURLOPT_RANGE
-Introduced in 7.1
-.IP CURLOPT_READDATA
-Introduced in 7.9.7
-.IP CURLOPT_READFUNCTION
-Introduced in 7.1
-.IP CURLOPT_REDIR_PROTOCOLS
-Introduced in 7.19.4
-.IP CURLOPT_REFERER
-Introduced in 7.1
-.IP CURLOPT_RESOLVE
-Introduced in 7.21.3
-.IP CURLOPT_RESUME_FROM
-Introduced in 7.1
-.IP CURLOPT_RESUME_FROM_LARGE
-Introduced in 7.11.0
-.IP CURLOPT_RTSPHEADER
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_CLIENT_CSEQ
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_REQUEST
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_SERVER_CSEQ
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_SESSION_ID
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_STREAM_URI
-Introduced in 7.20.0
-.IP CURLOPT_RTSP_TRANSPORT
-Introduced in 7.20.0
-.IP CURLOPT_SASL_IR
-Introduced in 7.31.0
-.IP CURLOPT_SEEKDATA
-Introduced in 7.18.0
-.IP CURLOPT_SEEKFUNCTION
-Introduced in 7.18.0
-.IP CURLOPT_SERVER_RESPONSE_TIMEOUT
-Introduced in 7.20.0
-.IP CURLOPT_SERVICE_NAME
-Introduced in 7.43.0
-.IP CURLOPT_SHARE
-Introduced in 7.10
-.IP CURLOPT_SOCKOPTDATA
-Introduced in 7.16.0
-.IP CURLOPT_SOCKOPTFUNCTION
-Introduced in 7.16.0
-.IP CURLOPT_SOCKS5_GSSAPI_NEC
-Introduced in 7.19.4
-.IP CURLOPT_SOCKS5_GSSAPI_SERVICE
-Introduced in 7.19.4
-.IP CURLOPT_SOURCE_HOST
-Introduced in 7.12.1
-.IP CURLOPT_SOURCE_PATH
-Introduced in 7.12.1
-.IP CURLOPT_SOURCE_PORT
-Introduced in 7.12.1
-.IP CURLOPT_SOURCE_POSTQUOTE
-Introduced in 7.12.1
-.IP CURLOPT_SOURCE_PREQUOTE
-Introduced in 7.12.1
-.IP CURLOPT_SOURCE_QUOTE
-Introduced in 7.13.0
-.IP CURLOPT_SOURCE_URL
-Introduced in 7.13.0
-.IP CURLOPT_SOURCE_USERPWD
-Introduced in 7.12.1
-.IP CURLOPT_SSH_AUTH_TYPES
-Introduced in 7.16.1
-.IP CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
-Introduced in 7.17.1
-.IP CURLOPT_SSH_KEYDATA
-Introduced in 7.19.6
-.IP CURLOPT_SSH_KEYFUNCTION
-Introduced in 7.19.6
-.IP CURLOPT_SSH_KNOWNHOSTS
-Introduced in 7.19.6
-.IP CURLOPT_SSH_PRIVATE_KEYFILE
-Introduced in 7.16.1
-.IP CURLOPT_SSH_PUBLIC_KEYFILE
-Introduced in 7.16.1
-.IP CURLOPT_SSLCERT
-Introduced in 7.1
-.IP CURLOPT_SSLCERTPASSWD
-Introduced in 7.1.1
-Deprecated since 7.17.0
-.IP CURLOPT_SSLCERTTYPE
-Introduced in 7.9.3
-.IP CURLOPT_SSLENGINE
-Introduced in 7.9.3
-.IP CURLOPT_SSLENGINE_DEFAULT
-Introduced in 7.9.3
-.IP CURLOPT_SSLKEY
-Introduced in 7.9.3
-.IP CURLOPT_SSLKEYPASSWD
-Introduced in 7.9.3
-Deprecated since 7.17.0
-.IP CURLOPT_SSLKEYTYPE
-Introduced in 7.9.3
-.IP CURLOPT_SSLVERSION
-Introduced in 7.1
-.IP CURLOPT_SSL_CIPHER_LIST
-Introduced in 7.9
-.IP CURLOPT_SSL_CTX_DATA
-Introduced in 7.10.6
-.IP CURLOPT_SSL_CTX_FUNCTION
-Introduced in 7.10.6
-.IP CURLOPT_SSL_ENABLE_ALPN
-Introduced in 7.36.0
-.IP CURLOPT_SSL_ENABLE_NPN
-Introduced in 7.36.0
-.IP CURLOPT_SSL_FALSESTART
-Introduced in 7.42.0
-.IP CURLOPT_SSL_OPTIONS
-Introduced in 7.25.0
-.IP CURLOPT_SSL_SESSIONID_CACHE
-Introduced in 7.16.0
-.IP CURLOPT_SSL_VERIFYHOST
-Introduced in 7.8.1
-.IP CURLOPT_SSL_VERIFYPEER
-Introduced in 7.4.2
-.IP CURLOPT_SSL_VERIFYSTATUS
-Introduced in 7.41.0
-.IP CURLOPT_STDERR
-Introduced in 7.1
-.IP CURLOPT_TCP_KEEPALIVE
-Introduced in 7.25.0
-.IP CURLOPT_TCP_KEEPIDLE
-Introduced in 7.25.0
-.IP CURLOPT_TCP_KEEPINTVL
-Introduced in 7.25.0
-.IP CURLOPT_TCP_NODELAY
-Introduced in 7.11.2
-.IP CURLOPT_TELNETOPTIONS
-Introduced in 7.7
-.IP CURLOPT_TFTP_BLKSIZE
-Introduced in 7.19.4
-.IP CURLOPT_TIMECONDITION
-Introduced in 7.1
-.IP CURLOPT_TIMEOUT
-Introduced in 7.1
-.IP CURLOPT_TIMEOUT_MS
-Introduced in 7.16.2
-.IP CURLOPT_TIMEVALUE
-Introduced in 7.1
-.IP CURLOPT_TLSAUTH_PASSWORD
-Introduced in 7.21.4
-.IP CURLOPT_TLSAUTH_TYPE
-Introduced in 7.21.4
-.IP CURLOPT_TLSAUTH_USERNAME
-Introduced in 7.21.4
-.IP CURLOPT_TRANSFERTEXT
-Introduced in 7.1.1
-.IP CURLOPT_TRANSFER_ENCODING
-Introduced in 7.21.6
-.IP CURLOPT_UNIX_SOCKET_PATH
-Introduced in 7.40.0
-.IP CURLOPT_UNRESTRICTED_AUTH
-Introduced in 7.10.4
-.IP CURLOPT_UPLOAD
-Introduced in 7.1
-.IP CURLOPT_URL
-Introduced in 7.1
-.IP CURLOPT_USERAGENT
-Introduced in 7.1
-.IP CURLOPT_USERNAME
-Introduced in 7.19.1
-.IP CURLOPT_USERPWD
-Introduced in 7.1
-.IP CURLOPT_USE_SSL
-Introduced in 7.17.0
-.IP CURLOPT_VERBOSE
-Introduced in 7.1
-.IP CURLOPT_WILDCARDMATCH
-Introduced in 7.21.0
-.IP CURLOPT_WRITEDATA
-Introduced in 7.9.7
-.IP CURLOPT_WRITEFUNCTION
-Introduced in 7.1
-.IP CURLOPT_WRITEHEADER
-Introduced in 7.1
-.IP CURLOPT_WRITEINFO
-Introduced in 7.1
-.IP CURLOPT_XFERINFODATA
-Introduced in 7.32.0
-.IP CURLOPT_XFERINFOFUNCTION
-Introduced in 7.32.0
-.IP CURLOPT_XOAUTH2_BEARER
-Introduced in 7.33.0
-.IP CURLPAUSE_ALL
-Introduced in 7.18.0
-.IP CURLPAUSE_CONT
-Introduced in 7.18.0
-.IP CURLPAUSE_RECV
-Introduced in 7.18.0
-.IP CURLPAUSE_RECV_CONT
-Introduced in 7.18.0
-.IP CURLPAUSE_SEND
-Introduced in 7.18.0
-.IP CURLPAUSE_SEND_CONT
-Introduced in 7.18.0
-.IP CURLPIPE_HTTP1
-Introduced in 7.43.0
-.IP CURLPIPE_MULTIPLEX
-Introduced in 7.43.0
-.IP CURLPIPE_NOTHING
-Introduced in 7.43.0
-.IP CURLPROTO_ALL
-Introduced in 7.19.4
-.IP CURLPROTO_DICT
-Introduced in 7.19.4
-.IP CURLPROTO_FILE
-Introduced in 7.19.4
-.IP CURLPROTO_FTP
-Introduced in 7.19.4
-.IP CURLPROTO_FTPS
-Introduced in 7.19.4
-.IP CURLPROTO_GOPHER
-Introduced in 7.21.2
-.IP CURLPROTO_HTTP
-Introduced in 7.19.4
-.IP CURLPROTO_HTTPS
-Introduced in 7.19.4
-.IP CURLPROTO_IMAP
-Introduced in 7.20.0
-.IP CURLPROTO_IMAPS
-Introduced in 7.20.0
-.IP CURLPROTO_LDAP
-Introduced in 7.19.4
-.IP CURLPROTO_LDAPS
-Introduced in 7.19.4
-.IP CURLPROTO_POP3
-Introduced in 7.20.0
-.IP CURLPROTO_POP3S
-Introduced in 7.20.0
-.IP CURLPROTO_RTMP
-Introduced in 7.21.0
-.IP CURLPROTO_RTMPE
-Introduced in 7.21.0
-.IP CURLPROTO_RTMPS
-Introduced in 7.21.0
-.IP CURLPROTO_RTMPT
-Introduced in 7.21.0
-.IP CURLPROTO_RTMPTE
-Introduced in 7.21.0
-.IP CURLPROTO_RTMPTS
-Introduced in 7.21.0
-.IP CURLPROTO_RTSP
-Introduced in 7.20.0
-.IP CURLPROTO_SCP
-Introduced in 7.19.4
-.IP CURLPROTO_SFTP
-Introduced in 7.19.4
-.IP CURLPROTO_SMB
-Introduced in 7.40.0
-.IP CURLPROTO_SMBS
-Introduced in 7.40.0
-.IP CURLPROTO_SMTP
-Introduced in 7.20.0
-.IP CURLPROTO_SMTPS
-Introduced in 7.20.0
-.IP CURLPROTO_TELNET
-Introduced in 7.19.4
-.IP CURLPROTO_TFTP
-Introduced in 7.19.4
-.IP CURLPROXY_HTTP
-Introduced in 7.10
-.IP CURLPROXY_HTTP_1_0
-Introduced in 7.19.4
-.IP CURLPROXY_SOCKS4
-Introduced in 7.10
-.IP CURLPROXY_SOCKS4A
-Introduced in 7.18.0
-.IP CURLPROXY_SOCKS5
-Introduced in 7.10
-.IP CURLPROXY_SOCKS5_HOSTNAME
-Introduced in 7.18.0
-.IP CURLSHE_BAD_OPTION
-Introduced in 7.10.3
-.IP CURLSHE_INVALID
-Introduced in 7.10.3
-.IP CURLSHE_IN_USE
-Introduced in 7.10.3
-.IP CURLSHE_NOMEM
-Introduced in 7.12.0
-.IP CURLSHE_NOT_BUILT_IN
-Introduced in 7.23.0
-.IP CURLSHE_OK
-Introduced in 7.10.3
-.IP CURLSHOPT_LOCKFUNC
-Introduced in 7.10.3
-.IP CURLSHOPT_NONE
-Introduced in 7.10.3
-.IP CURLSHOPT_SHARE
-Introduced in 7.10.3
-.IP CURLSHOPT_UNLOCKFUNC
-Introduced in 7.10.3
-.IP CURLSHOPT_UNSHARE
-Introduced in 7.10.3
-.IP CURLSHOPT_USERDATA
-Introduced in 7.10.3
-.IP CURLSOCKTYPE_ACCEPT
-Introduced in 7.28.0
-.IP CURLSOCKTYPE_IPCXN
-Introduced in 7.16.0
-.IP CURLSSH_AUTH_AGENT
-Introduced in 7.28.0
-.IP CURLSSH_AUTH_ANY
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_DEFAULT
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_HOST
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_KEYBOARD
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_NONE
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_PASSWORD
-Introduced in 7.16.1
-.IP CURLSSH_AUTH_PUBLICKEY
-Introduced in 7.16.1
-.IP CURLSSLBACKEND_AXTLS
-Introduced in 7.38.0
-.IP CURLSSLBACKEND_CYASSL
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_DARWINSSL
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_GNUTLS
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_GSKIT
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_NONE
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_NSS
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_OPENSSL
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_POLARSSL
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_QSOSSL
-Introduced in 7.34.0
-.IP CURLSSLBACKEND_SCHANNEL
-Introduced in 7.34.0
-.IP CURLSSLOPT_ALLOW_BEAST
-Introduced in 7.25.0
-.IP CURLSSLOPT_NO_REVOKE
-Introduced in 7.44.0
-.IP CURLUSESSL_ALL
-Introduced in 7.17.0
-.IP CURLUSESSL_CONTROL
-Introduced in 7.17.0
-.IP CURLUSESSL_NONE
-Introduced in 7.17.0
-.IP CURLUSESSL_TRY
-Introduced in 7.17.0
-.IP CURLVERSION_FIRST
-Introduced in 7.10
-.IP CURLVERSION_FOURTH
-Introduced in 7.16.1
-.IP CURLVERSION_NOW
-Introduced in 7.10
-.IP CURLVERSION_SECOND
-Introduced in 7.11.1
-.IP CURLVERSION_THIRD
-Introduced in 7.12.0
-.IP CURL_CHUNK_BGN_FUNC_FAIL
-Introduced in 7.21.0
-.IP CURL_CHUNK_BGN_FUNC_OK
-Introduced in 7.21.0
-.IP CURL_CHUNK_BGN_FUNC_SKIP
-Introduced in 7.21.0
-.IP CURL_CHUNK_END_FUNC_FAIL
-Introduced in 7.21.0
-.IP CURL_CHUNK_END_FUNC_OK
-Introduced in 7.21.0
-.IP CURL_CSELECT_ERR
-Introduced in 7.16.3
-.IP CURL_CSELECT_IN
-Introduced in 7.16.3
-.IP CURL_CSELECT_OUT
-Introduced in 7.16.3
-.IP CURL_EASY_NONE
-Introduced in 7.14.0
-.IP CURL_EASY_TIMEOUT
-Introduced in 7.14.0
-.IP CURL_ERROR_SIZE
-Introduced in 7.1
-.IP CURL_FNMATCHFUNC_FAIL
-Introduced in 7.21.0
-.IP CURL_FNMATCHFUNC_MATCH
-Introduced in 7.21.0
-.IP CURL_FNMATCHFUNC_NOMATCH
-Introduced in 7.21.0
-.IP CURL_FORMADD_DISABLED
-Introduced in 7.12.1
-.IP CURL_FORMADD_ILLEGAL_ARRAY
-Introduced in 7.9.8
-.IP CURL_FORMADD_INCOMPLETE
-Introduced in 7.9.8
-.IP CURL_FORMADD_MEMORY
-Introduced in 7.9.8
-.IP CURL_FORMADD_NULL
-Introduced in 7.9.8
-.IP CURL_FORMADD_OK
-Introduced in 7.9.8
-.IP CURL_FORMADD_OPTION_TWICE
-Introduced in 7.9.8
-.IP CURL_FORMADD_UNKNOWN_OPTION
-Introduced in 7.9.8
-.IP CURL_GLOBAL_ACK_EINTR
-Introduced in 7.30.0
-.IP CURL_GLOBAL_ALL
-Introduced in 7.8
-.IP CURL_GLOBAL_DEFAULT
-Introduced in 7.8
-.IP CURL_GLOBAL_NOTHING
-Introduced in 7.8
-.IP CURL_GLOBAL_SSL
-Introduced in 7.8
-.IP CURL_GLOBAL_WIN32
-Introduced in 7.8.1
-.IP CURL_HTTP_VERSION_1_0
-Introduced in 7.9.1
-.IP CURL_HTTP_VERSION_1_1
-Introduced in 7.9.1
-.IP CURL_HTTP_VERSION_2_0
-Introduced in 7.33.0
-.IP CURL_HTTP_VERSION_2
-Introduced in 7.43.0
-.IP CURL_HTTP_VERSION_NONE
-Introduced in 7.9.1
-.IP CURL_IPRESOLVE_V4
-Introduced in 7.10.8
-.IP CURL_IPRESOLVE_V6
-Introduced in 7.10.8
-.IP CURL_IPRESOLVE_WHATEVER
-Introduced in 7.10.8
-.IP CURL_LOCK_ACCESS_NONE
-Introduced in 7.10.3
-.IP CURL_LOCK_ACCESS_SHARED
-Introduced in 7.10.3
-.IP CURL_LOCK_ACCESS_SINGLE
-Introduced in 7.10.3
-.IP CURL_LOCK_DATA_CONNECT
-Introduced in 7.10.3
-.IP CURL_LOCK_DATA_COOKIE
-Introduced in 7.10.3
-.IP CURL_LOCK_DATA_DNS
-Introduced in 7.10.3
-.IP CURL_LOCK_DATA_NONE
-Introduced in 7.10.3
-.IP CURL_LOCK_DATA_SHARE
-Introduced in 7.10.4
-.IP CURL_LOCK_DATA_SSL_SESSION
-Introduced in 7.10.3
-.IP CURL_LOCK_TYPE_CONNECT
-Introduced in 7.10
-.IP CURL_LOCK_TYPE_COOKIE
-Introduced in 7.10
-.IP CURL_LOCK_TYPE_DNS
-Introduced in 7.10
-.IP CURL_LOCK_TYPE_NONE
-Introduced in 7.10
-.IP CURL_LOCK_TYPE_SSL_SESSION
-Introduced in 7.10
-.IP CURL_MAX_HTTP_HEADER
-Introduced in 7.19.7
-.IP CURL_MAX_WRITE_SIZE
-Introduced in 7.9.7
-.IP CURL_NETRC_IGNORED
-Introduced in 7.9.8
-.IP CURL_NETRC_OPTIONAL
-Introduced in 7.9.8
-.IP CURL_NETRC_REQUIRED
-Introduced in 7.9.8
-.IP CURL_POLL_IN
-Introduced in 7.14.0
-.IP CURL_POLL_INOUT
-Introduced in 7.14.0
-.IP CURL_POLL_NONE
-Introduced in 7.14.0
-.IP CURL_POLL_OUT
-Introduced in 7.14.0
-.IP CURL_POLL_REMOVE
-Introduced in 7.14.0
-.IP CURL_PROGRESS_BAR
-Introduced in 7.1.1
-.IP CURL_PROGRESS_STATS
-Introduced in 7.1.1
-.IP CURL_PUSH_DENY
-Introduced in 7.44.0
-.IP CURL_PUSH_OK
-Introduced in 7.44.0
-.IP CURL_READFUNC_ABORT
-Introduced in 7.12.1
-.IP CURL_READFUNC_PAUSE
-Introduced in 7.18.0
-.IP CURL_REDIR_GET_ALL
-Introduced in 7.19.1
-.IP CURL_REDIR_POST_301
-Introduced in 7.19.1
-.IP CURL_REDIR_POST_302
-Introduced in 7.19.1
-.IP CURL_REDIR_POST_303
-Introduced in 7.25.1
-.IP CURL_REDIR_POST_ALL
-Introduced in 7.19.1
-.IP CURL_RTSPREQ_ANNOUNCE
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_DESCRIBE
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_GET_PARAMETER
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_NONE
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_OPTIONS
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_PAUSE
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_PLAY
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_RECEIVE
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_RECORD
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_SETUP
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_SET_PARAMETER
-Introduced in 7.20.0
-.IP CURL_RTSPREQ_TEARDOWN
-Introduced in 7.20.0
-.IP CURL_SEEKFUNC_CANTSEEK
-Introduced in 7.19.5
-.IP CURL_SEEKFUNC_FAIL
-Introduced in 7.19.5
-.IP CURL_SEEKFUNC_OK
-Introduced in 7.19.5
-.IP CURL_SOCKET_BAD
-Introduced in 7.14.0
-.IP CURL_SOCKET_TIMEOUT
-Introduced in 7.14.0
-.IP CURL_SOCKOPT_ALREADY_CONNECTED
-Introduced in 7.21.5
-.IP CURL_SOCKOPT_ERROR
-Introduced in 7.21.5
-.IP CURL_SOCKOPT_OK
-Introduced in 7.21.5
-.IP CURL_SSLVERSION_DEFAULT
-Introduced in 7.9.2
-.IP CURL_SSLVERSION_SSL
-Introduced in
-.IP CURL_SSLVERSION_SSL
-Introduced in
-.IP CURL_SSLVERSION_TLS
-Introduced in
-.IP CURL_SSLVERSION_TLS
-Introduced in
-.IP CURL_SSLVERSION_TLS
-Introduced in
-.IP CURL_SSLVERSION_TLS
-Introduced in
-.IP CURL_TIMECOND_IFMODSINCE
-Introduced in 7.9.7
-.IP CURL_TIMECOND_IFUNMODSINCE
-Introduced in 7.9.7
-.IP CURL_TIMECOND_LASTMOD
-Introduced in 7.9.7
-.IP CURL_TIMECOND_NONE
-Introduced in 7.9.7
-.IP CURL_TLSAUTH_NONE
-Introduced in 7.21.4
-.IP CURL_TLSAUTH_SRP
-Introduced in 7.21.4
-.IP CURL_VERSION_ASYNCHDNS
-Introduced in 7.10.7
-.IP CURL_VERSION_CONV
-Introduced in 7.15.4
-.IP CURL_VERSION_CURLDEBUG
-Introduced in 7.19.6
-.IP CURL_VERSION_DEBUG
-Introduced in 7.10.6
-.IP CURL_VERSION_GSSAPI
-Introduced in 7.38.0
-.IP CURL_VERSION_GSSNEGOTIATE
-Introduced in 7.10.6
-Deprecated since 7.38.0
-.IP CURL_VERSION_HTTP2
-Introduced in 7.33.0
-.IP CURL_VERSION_IDN
-Introduced in 7.12.0
-.IP CURL_VERSION_IPV6
-Introduced in 7.10
-.IP CURL_VERSION_KERBEROS4
-Introduced in 7.10
-Deprecated since 7.33.0
-.IP CURL_VERSION_KERBEROS5
-Introduced in 7.40.0
-.IP CURL_VERSION_LARGEFILE
-Introduced in 7.11.1
-.IP CURL_VERSION_LIBZ
-Introduced in 7.10
-.IP CURL_VERSION_NTLM
-Introduced in 7.10.6
-.IP CURL_VERSION_NTLM_WB
-Introduced in 7.22.0
-.IP CURL_VERSION_SPNEGO
-Introduced in 7.10.8
-.IP CURL_VERSION_SSL
-Introduced in 7.10
-.IP CURL_VERSION_SSPI
-Introduced in 7.13.2
-.IP CURL_VERSION_TLSAUTH_SRP
-Introduced in 7.21.4
-.IP CURL_VERSION_UNIX_SOCKETS
-Introduced in 7.40.0
-.IP CURL_WAIT_POLLIN
-Introduced in 7.28.0
-.IP CURL_WAIT_POLLOUT
-Introduced in 7.28.0
-.IP CURL_WAIT_POLLPRI
-Introduced in 7.28.0
-.IP CURL_WRITEFUNC_PAUSE
-Introduced in 7.18.0
diff --git a/docs/libcurl/libcurl-symbols.html b/docs/libcurl/libcurl-symbols.html
deleted file mode 100644
index 1dba7e76a..000000000
--- a/docs/libcurl/libcurl-symbols.html
+++ /dev/null
@@ -1,1578 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>libcurl-symbols man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">libcurl-symbols - libcurl symbol version information <a name="libcurl"></a><h2 class="nroffsh">libcurl symbols</h2>
-<p class="level0">This man page details version information for public symbols provided in the libcurl header files. This lists the first version in which the symbol was introduced and for some symbols two additional information pieces:
-<p class="level0">The first version in which the symbol is marked "deprecated" - meaning that since that version no new code should be written to use the symbol as it is marked for getting removed in a future.
-<p class="level0">The last version that featured the specific symbol. Using the symbol in source code will make it no longer compile error-free after that specified version.
-<p class="level0">This man page is automatically generated from the symbols-in-versions file.
-<p class="level0"><a name="CURLAUTHANY"></a><span class="nroffip">CURLAUTH_ANY</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHANYSAFE"></a><span class="nroffip">CURLAUTH_ANYSAFE</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHBASIC"></a><span class="nroffip">CURLAUTH_BASIC</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHDIGEST"></a><span class="nroffip">CURLAUTH_DIGEST</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHDIGESTIE"></a><span class="nroffip">CURLAUTH_DIGEST_IE</span>
-<p class="level1">Introduced in 7.19.3
-<p class="level0"><a name="CURLAUTHGSSNEGOTIATE"></a><span class="nroffip">CURLAUTH_GSSNEGOTIATE</span>
-<p class="level1">Introduced in 7.10.6 Deprecated since 7.38.0
-<p class="level0"><a name="CURLAUTHNEGOTIATE"></a><span class="nroffip">CURLAUTH_NEGOTIATE</span>
-<p class="level1">Introduced in 7.38.0
-<p class="level0"><a name="CURLAUTHNONE"></a><span class="nroffip">CURLAUTH_NONE</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHNTLM"></a><span class="nroffip">CURLAUTH_NTLM</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLAUTHNTLMWB"></a><span class="nroffip">CURLAUTH_NTLM_WB</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLAUTHONLY"></a><span class="nroffip">CURLAUTH_ONLY</span>
-<p class="level1">Introduced in 7.21.3
-<p class="level0"><a name="CURLCLOSEPOLICYCALLBACK"></a><span class="nroffip">CURLCLOSEPOLICY_CALLBACK</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLCLOSEPOLICYLEASTRECENTLYUSED"></a><span class="nroffip">CURLCLOSEPOLICY_LEAST_RECENTLY_USED</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLCLOSEPOLICYLEASTTRAFFIC"></a><span class="nroffip">CURLCLOSEPOLICY_LEAST_TRAFFIC</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLCLOSEPOLICYNONE"></a><span class="nroffip">CURLCLOSEPOLICY_NONE</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLCLOSEPOLICYOLDEST"></a><span class="nroffip">CURLCLOSEPOLICY_OLDEST</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLCLOSEPOLICYSLOWEST"></a><span class="nroffip">CURLCLOSEPOLICY_SLOWEST</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLEABORTEDBYCALLBACK"></a><span class="nroffip">CURLE_ABORTED_BY_CALLBACK</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEAGAIN"></a><span class="nroffip">CURLE_AGAIN</span>
-<p class="level1">Introduced in 7.18.2
-<p class="level0"><a name="CURLEALREADYCOMPLETE"></a><span class="nroffip">CURLE_ALREADY_COMPLETE</span>
-<p class="level1">Introduced in 7.7.2
-<p class="level0"><a name="CURLEBADCALLINGORDER"></a><span class="nroffip">CURLE_BAD_CALLING_ORDER</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEBADCONTENTENCODING"></a><span class="nroffip">CURLE_BAD_CONTENT_ENCODING</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLEBADDOWNLOADRESUME"></a><span class="nroffip">CURLE_BAD_DOWNLOAD_RESUME</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLEBADFUNCTIONARGUMENT"></a><span class="nroffip">CURLE_BAD_FUNCTION_ARGUMENT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEBADPASSWORDENTERED"></a><span class="nroffip">CURLE_BAD_PASSWORD_ENTERED</span>
-<p class="level1">Introduced in 7.4.2 Deprecated since 7.17.0
-<p class="level0"><a name="CURLECHUNKFAILED"></a><span class="nroffip">CURLE_CHUNK_FAILED</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLECONVFAILED"></a><span class="nroffip">CURLE_CONV_FAILED</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLECONVREQD"></a><span class="nroffip">CURLE_CONV_REQD</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLECOULDNTCONNECT"></a><span class="nroffip">CURLE_COULDNT_CONNECT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLECOULDNTRESOLVEHOST"></a><span class="nroffip">CURLE_COULDNT_RESOLVE_HOST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLECOULDNTRESOLVEPROXY"></a><span class="nroffip">CURLE_COULDNT_RESOLVE_PROXY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFAILEDINIT"></a><span class="nroffip">CURLE_FAILED_INIT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFILESIZEEXCEEDED"></a><span class="nroffip">CURLE_FILESIZE_EXCEEDED</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLEFILECOULDNTREADFILE"></a><span class="nroffip">CURLE_FILE_COULDNT_READ_FILE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPACCEPTFAILED"></a><span class="nroffip">CURLE_FTP_ACCEPT_FAILED</span>
-<p class="level1">Introduced in 7.24.0
-<p class="level0"><a name="CURLEFTPACCEPTTIMEOUT"></a><span class="nroffip">CURLE_FTP_ACCEPT_TIMEOUT</span>
-<p class="level1">Introduced in 7.24.0
-<p class="level0"><a name="CURLEFTPACCESSDENIED"></a><span class="nroffip">CURLE_FTP_ACCESS_DENIED</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPBADDOWNLOADRESUME"></a><span class="nroffip">CURLE_FTP_BAD_DOWNLOAD_RESUME</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.1
-<p class="level0"><a name="CURLEFTPBADFILELIST"></a><span class="nroffip">CURLE_FTP_BAD_FILE_LIST</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLEFTPCANTGETHOST"></a><span class="nroffip">CURLE_FTP_CANT_GET_HOST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPCANTRECONNECT"></a><span class="nroffip">CURLE_FTP_CANT_RECONNECT</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPCOULDNTGETSIZE"></a><span class="nroffip">CURLE_FTP_COULDNT_GET_SIZE</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPCOULDNTRETRFILE"></a><span class="nroffip">CURLE_FTP_COULDNT_RETR_FILE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPCOULDNTSETASCII"></a><span class="nroffip">CURLE_FTP_COULDNT_SET_ASCII</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPCOULDNTSETBINARY"></a><span class="nroffip">CURLE_FTP_COULDNT_SET_BINARY</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPCOULDNTSETTYPE"></a><span class="nroffip">CURLE_FTP_COULDNT_SET_TYPE</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEFTPCOULDNTSTORFILE"></a><span class="nroffip">CURLE_FTP_COULDNT_STOR_FILE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPCOULDNTUSEREST"></a><span class="nroffip">CURLE_FTP_COULDNT_USE_REST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPPARTIALFILE"></a><span class="nroffip">CURLE_FTP_PARTIAL_FILE</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.1
-<p class="level0"><a name="CURLEFTPPORTFAILED"></a><span class="nroffip">CURLE_FTP_PORT_FAILED</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPPRETFAILED"></a><span class="nroffip">CURLE_FTP_PRET_FAILED</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLEFTPQUOTEERROR"></a><span class="nroffip">CURLE_FTP_QUOTE_ERROR</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPSSLFAILED"></a><span class="nroffip">CURLE_FTP_SSL_FAILED</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPUSERPASSWORDINCORRECT"></a><span class="nroffip">CURLE_FTP_USER_PASSWORD_INCORRECT</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPWEIRD227FORMAT"></a><span class="nroffip">CURLE_FTP_WEIRD_227_FORMAT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPWEIRDPASSREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_PASS_REPLY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPWEIRDPASVREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_PASV_REPLY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPWEIRDSERVERREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_SERVER_REPLY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEFTPWEIRDUSERREPLY"></a><span class="nroffip">CURLE_FTP_WEIRD_USER_REPLY</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFTPWRITEERROR"></a><span class="nroffip">CURLE_FTP_WRITE_ERROR</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEFUNCTIONNOTFOUND"></a><span class="nroffip">CURLE_FUNCTION_NOT_FOUND</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEGOTNOTHING"></a><span class="nroffip">CURLE_GOT_NOTHING</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLEHTTP2"></a><span class="nroffip">CURLE_HTTP2</span>
-<p class="level1">Introduced in 7.38.0
-<p class="level0"><a name="CURLEHTTPNOTFOUND"></a><span class="nroffip">CURLE_HTTP_NOT_FOUND</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEHTTPPORTFAILED"></a><span class="nroffip">CURLE_HTTP_PORT_FAILED</span>
-<p class="level1">Introduced in 7.3 Deprecated since 7.12.0
-<p class="level0"><a name="CURLEHTTPPOSTERROR"></a><span class="nroffip">CURLE_HTTP_POST_ERROR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEHTTPRANGEERROR"></a><span class="nroffip">CURLE_HTTP_RANGE_ERROR</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEHTTPRETURNEDERROR"></a><span class="nroffip">CURLE_HTTP_RETURNED_ERROR</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLEINTERFACEFAILED"></a><span class="nroffip">CURLE_INTERFACE_FAILED</span>
-<p class="level1">Introduced in 7.12.0
-<p class="level0"><a name="CURLELDAPCANNOTBIND"></a><span class="nroffip">CURLE_LDAP_CANNOT_BIND</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLELDAPINVALIDURL"></a><span class="nroffip">CURLE_LDAP_INVALID_URL</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLELDAPSEARCHFAILED"></a><span class="nroffip">CURLE_LDAP_SEARCH_FAILED</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLELIBRARYNOTFOUND"></a><span class="nroffip">CURLE_LIBRARY_NOT_FOUND</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLELOGINDENIED"></a><span class="nroffip">CURLE_LOGIN_DENIED</span>
-<p class="level1">Introduced in 7.13.1
-<p class="level0"><a name="CURLEMALFORMATUSER"></a><span class="nroffip">CURLE_MALFORMAT_USER</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLENOTBUILTIN"></a><span class="nroffip">CURLE_NOT_BUILT_IN</span>
-<p class="level1">Introduced in 7.21.5
-<p class="level0"><a name="CURLENOCONNECTIONAVAILABLE"></a><span class="nroffip">CURLE_NO_CONNECTION_AVAILABLE</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLEOK"></a><span class="nroffip">CURLE_OK</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEOPERATIONTIMEDOUT"></a><span class="nroffip">CURLE_OPERATION_TIMEDOUT</span>
-<p class="level1">Introduced in 7.10.2
-<p class="level0"><a name="CURLEOPERATIONTIMEOUTED"></a><span class="nroffip">CURLE_OPERATION_TIMEOUTED</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEOUTOFMEMORY"></a><span class="nroffip">CURLE_OUT_OF_MEMORY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEPARTIALFILE"></a><span class="nroffip">CURLE_PARTIAL_FILE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEPEERFAILEDVERIFICATION"></a><span class="nroffip">CURLE_PEER_FAILED_VERIFICATION</span>
-<p class="level1">Introduced in 7.17.1
-<p class="level0"><a name="CURLEQUOTEERROR"></a><span class="nroffip">CURLE_QUOTE_ERROR</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLERANGEERROR"></a><span class="nroffip">CURLE_RANGE_ERROR</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEREADERROR"></a><span class="nroffip">CURLE_READ_ERROR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLERECVERROR"></a><span class="nroffip">CURLE_RECV_ERROR</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLEREMOTEACCESSDENIED"></a><span class="nroffip">CURLE_REMOTE_ACCESS_DENIED</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEREMOTEDISKFULL"></a><span class="nroffip">CURLE_REMOTE_DISK_FULL</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEREMOTEFILEEXISTS"></a><span class="nroffip">CURLE_REMOTE_FILE_EXISTS</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEREMOTEFILENOTFOUND"></a><span class="nroffip">CURLE_REMOTE_FILE_NOT_FOUND</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLERTSPCSEQERROR"></a><span class="nroffip">CURLE_RTSP_CSEQ_ERROR</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLERTSPSESSIONERROR"></a><span class="nroffip">CURLE_RTSP_SESSION_ERROR</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLESENDERROR"></a><span class="nroffip">CURLE_SEND_ERROR</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLESENDFAILREWIND"></a><span class="nroffip">CURLE_SEND_FAIL_REWIND</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLESHAREINUSE"></a><span class="nroffip">CURLE_SHARE_IN_USE</span>
-<p class="level1">Introduced in 7.9.6 Deprecated since 7.17.0
-<p class="level0"><a name="CURLESSH"></a><span class="nroffip">CURLE_SSH</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLESSLCACERT"></a><span class="nroffip">CURLE_SSL_CACERT</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLESSLCACERTBADFILE"></a><span class="nroffip">CURLE_SSL_CACERT_BADFILE</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLESSLCERTPROBLEM"></a><span class="nroffip">CURLE_SSL_CERTPROBLEM</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLESSLCIPHER"></a><span class="nroffip">CURLE_SSL_CIPHER</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLESSLCONNECTERROR"></a><span class="nroffip">CURLE_SSL_CONNECT_ERROR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLESSLCRLBADFILE"></a><span class="nroffip">CURLE_SSL_CRL_BADFILE</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLESSLENGINEINITFAILED"></a><span class="nroffip">CURLE_SSL_ENGINE_INITFAILED</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLESSLENGINENOTFOUND"></a><span class="nroffip">CURLE_SSL_ENGINE_NOTFOUND</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLESSLENGINESETFAILED"></a><span class="nroffip">CURLE_SSL_ENGINE_SETFAILED</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLESSLINVALIDCERTSTATUS"></a><span class="nroffip">CURLE_SSL_INVALIDCERTSTATUS</span>
-<p class="level1">Introduced in 7.41.0
-<p class="level0"><a name="CURLESSLISSUERERROR"></a><span class="nroffip">CURLE_SSL_ISSUER_ERROR</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLESSLPEERCERTIFICATE"></a><span class="nroffip">CURLE_SSL_PEER_CERTIFICATE</span>
-<p class="level1">Introduced in 7.8 Deprecated since 7.17.1
-<p class="level0"><a name="CURLESSLPINNEDPUBKEYNOTMATCH"></a><span class="nroffip">CURLE_SSL_PINNEDPUBKEYNOTMATCH</span>
-<p class="level1">Introduced in 7.39.0
-<p class="level0"><a name="CURLESSLSHUTDOWNFAILED"></a><span class="nroffip">CURLE_SSL_SHUTDOWN_FAILED</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLETELNETOPTIONSYNTAX"></a><span class="nroffip">CURLE_TELNET_OPTION_SYNTAX</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLETFTPDISKFULL"></a><span class="nroffip">CURLE_TFTP_DISKFULL</span>
-<p class="level1">Introduced in 7.15.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLETFTPEXISTS"></a><span class="nroffip">CURLE_TFTP_EXISTS</span>
-<p class="level1">Introduced in 7.15.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLETFTPILLEGAL"></a><span class="nroffip">CURLE_TFTP_ILLEGAL</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLETFTPNOSUCHUSER"></a><span class="nroffip">CURLE_TFTP_NOSUCHUSER</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLETFTPNOTFOUND"></a><span class="nroffip">CURLE_TFTP_NOTFOUND</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLETFTPPERM"></a><span class="nroffip">CURLE_TFTP_PERM</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLETFTPUNKNOWNID"></a><span class="nroffip">CURLE_TFTP_UNKNOWNID</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLETOOMANYREDIRECTS"></a><span class="nroffip">CURLE_TOO_MANY_REDIRECTS</span>
-<p class="level1">Introduced in 7.5
-<p class="level0"><a name="CURLEUNKNOWNOPTION"></a><span class="nroffip">CURLE_UNKNOWN_OPTION</span>
-<p class="level1">Introduced in 7.21.5
-<p class="level0"><a name="CURLEUNKNOWNTELNETOPTION"></a><span class="nroffip">CURLE_UNKNOWN_TELNET_OPTION</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLEUNSUPPORTEDPROTOCOL"></a><span class="nroffip">CURLE_UNSUPPORTED_PROTOCOL</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEUPLOADFAILED"></a><span class="nroffip">CURLE_UPLOAD_FAILED</span>
-<p class="level1">Introduced in 7.16.3
-<p class="level0"><a name="CURLEURLMALFORMAT"></a><span class="nroffip">CURLE_URL_MALFORMAT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLEURLMALFORMATUSER"></a><span class="nroffip">CURLE_URL_MALFORMAT_USER</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLEUSESSLFAILED"></a><span class="nroffip">CURLE_USE_SSL_FAILED</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLEWRITEERROR"></a><span class="nroffip">CURLE_WRITE_ERROR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLFILETYPEDEVICEBLOCK"></a><span class="nroffip">CURLFILETYPE_DEVICE_BLOCK</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPEDEVICECHAR"></a><span class="nroffip">CURLFILETYPE_DEVICE_CHAR</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPEDIRECTORY"></a><span class="nroffip">CURLFILETYPE_DIRECTORY</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPEDOOR"></a><span class="nroffip">CURLFILETYPE_DOOR</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPEFILE"></a><span class="nroffip">CURLFILETYPE_FILE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPENAMEDPIPE"></a><span class="nroffip">CURLFILETYPE_NAMEDPIPE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPESOCKET"></a><span class="nroffip">CURLFILETYPE_SOCKET</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPESYMLINK"></a><span class="nroffip">CURLFILETYPE_SYMLINK</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFILETYPEUNKNOWN"></a><span class="nroffip">CURLFILETYPE_UNKNOWN</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNFILENAME"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_FILENAME</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNFILETYPE"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_FILETYPE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNGID"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_GID</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNHLINKCOUNT"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_HLINKCOUNT</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNPERM"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_PERM</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNSIZE"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_SIZE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNTIME"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_TIME</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFINFOFLAGKNOWNUID"></a><span class="nroffip">CURLFINFOFLAG_KNOWN_UID</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFORMARRAY"></a><span class="nroffip">CURLFORM_ARRAY</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLFORMARRAYEND"></a><span class="nroffip">CURLFORM_ARRAY_END</span>
-<p class="level1">Introduced in 7.9.1 Deprecated since 7.9.5 Last used in 7.9.5
-<p class="level0"><a name="CURLFORMARRAYSTART"></a><span class="nroffip">CURLFORM_ARRAY_START</span>
-<p class="level1">Introduced in 7.9.1 Deprecated since 7.9.5 Last used in 7.9.5
-<p class="level0"><a name="CURLFORMBUFFER"></a><span class="nroffip">CURLFORM_BUFFER</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMBUFFERLENGTH"></a><span class="nroffip">CURLFORM_BUFFERLENGTH</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMBUFFERPTR"></a><span class="nroffip">CURLFORM_BUFFERPTR</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMCONTENTHEADER"></a><span class="nroffip">CURLFORM_CONTENTHEADER</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLFORMCONTENTSLENGTH"></a><span class="nroffip">CURLFORM_CONTENTSLENGTH</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMCONTENTTYPE"></a><span class="nroffip">CURLFORM_CONTENTTYPE</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMCOPYCONTENTS"></a><span class="nroffip">CURLFORM_COPYCONTENTS</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMCOPYNAME"></a><span class="nroffip">CURLFORM_COPYNAME</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMEND"></a><span class="nroffip">CURLFORM_END</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMFILE"></a><span class="nroffip">CURLFORM_FILE</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMFILECONTENT"></a><span class="nroffip">CURLFORM_FILECONTENT</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLFORMFILENAME"></a><span class="nroffip">CURLFORM_FILENAME</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLFORMNAMELENGTH"></a><span class="nroffip">CURLFORM_NAMELENGTH</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMNOTHING"></a><span class="nroffip">CURLFORM_NOTHING</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMPTRCONTENTS"></a><span class="nroffip">CURLFORM_PTRCONTENTS</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMPTRNAME"></a><span class="nroffip">CURLFORM_PTRNAME</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLFORMSTREAM"></a><span class="nroffip">CURLFORM_STREAM</span>
-<p class="level1">Introduced in 7.18.2
-<p class="level0"><a name="CURLFTPAUTHDEFAULT"></a><span class="nroffip">CURLFTPAUTH_DEFAULT</span>
-<p class="level1">Introduced in 7.12.2
-<p class="level0"><a name="CURLFTPAUTHSSL"></a><span class="nroffip">CURLFTPAUTH_SSL</span>
-<p class="level1">Introduced in 7.12.2
-<p class="level0"><a name="CURLFTPAUTHTLS"></a><span class="nroffip">CURLFTPAUTH_TLS</span>
-<p class="level1">Introduced in 7.12.2
-<p class="level0"><a name="CURLFTPMETHODDEFAULT"></a><span class="nroffip">CURLFTPMETHOD_DEFAULT</span>
-<p class="level1">Introduced in 7.15.3
-<p class="level0"><a name="CURLFTPMETHODMULTICWD"></a><span class="nroffip">CURLFTPMETHOD_MULTICWD</span>
-<p class="level1">Introduced in 7.15.3
-<p class="level0"><a name="CURLFTPMETHODNOCWD"></a><span class="nroffip">CURLFTPMETHOD_NOCWD</span>
-<p class="level1">Introduced in 7.15.3
-<p class="level0"><a name="CURLFTPMETHODSINGLECWD"></a><span class="nroffip">CURLFTPMETHOD_SINGLECWD</span>
-<p class="level1">Introduced in 7.15.3
-<p class="level0"><a name="CURLFTPSSLALL"></a><span class="nroffip">CURLFTPSSL_ALL</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLFTPSSLCCCACTIVE"></a><span class="nroffip">CURLFTPSSL_CCC_ACTIVE</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLFTPSSLCCCNONE"></a><span class="nroffip">CURLFTPSSL_CCC_NONE</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLFTPSSLCCCPASSIVE"></a><span class="nroffip">CURLFTPSSL_CCC_PASSIVE</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLFTPSSLCONTROL"></a><span class="nroffip">CURLFTPSSL_CONTROL</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLFTPSSLNONE"></a><span class="nroffip">CURLFTPSSL_NONE</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLFTPSSLTRY"></a><span class="nroffip">CURLFTPSSL_TRY</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.17.0
-<p class="level0"><a name="CURLFTPCREATEDIR"></a><span class="nroffip">CURLFTP_CREATE_DIR</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLFTPCREATEDIRNONE"></a><span class="nroffip">CURLFTP_CREATE_DIR_NONE</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLFTPCREATEDIRRETRY"></a><span class="nroffip">CURLFTP_CREATE_DIR_RETRY</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLGSSAPIDELEGATIONFLAG"></a><span class="nroffip">CURLGSSAPI_DELEGATION_FLAG</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLGSSAPIDELEGATIONNONE"></a><span class="nroffip">CURLGSSAPI_DELEGATION_NONE</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLGSSAPIDELEGATIONPOLICYFLAG"></a><span class="nroffip">CURLGSSAPI_DELEGATION_POLICY_FLAG</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLHEADERSEPARATE"></a><span class="nroffip">CURLHEADER_SEPARATE</span>
-<p class="level1">Introduced in 7.37.0
-<p class="level0"><a name="CURLHEADERUNIFIED"></a><span class="nroffip">CURLHEADER_UNIFIED</span>
-<p class="level1">Introduced in 7.37.0
-<p class="level0"><a name="CURLINFOAPPCONNECTTIME"></a><span class="nroffip">CURLINFO_APPCONNECT_TIME</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLINFOCERTINFO"></a><span class="nroffip">CURLINFO_CERTINFO</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLINFOCONDITIONUNMET"></a><span class="nroffip">CURLINFO_CONDITION_UNMET</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLINFOCONNECTTIME"></a><span class="nroffip">CURLINFO_CONNECT_TIME</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOCONTENTLENGTHDOWNLOAD"></a><span class="nroffip">CURLINFO_CONTENT_LENGTH_DOWNLOAD</span>
-<p class="level1">Introduced in 7.6.1
-<p class="level0"><a name="CURLINFOCONTENTLENGTHUPLOAD"></a><span class="nroffip">CURLINFO_CONTENT_LENGTH_UPLOAD</span>
-<p class="level1">Introduced in 7.6.1
-<p class="level0"><a name="CURLINFOCONTENTTYPE"></a><span class="nroffip">CURLINFO_CONTENT_TYPE</span>
-<p class="level1">Introduced in 7.9.4
-<p class="level0"><a name="CURLINFOCOOKIELIST"></a><span class="nroffip">CURLINFO_COOKIELIST</span>
-<p class="level1">Introduced in 7.14.1
-<p class="level0"><a name="CURLINFODATAIN"></a><span class="nroffip">CURLINFO_DATA_IN</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFODATAOUT"></a><span class="nroffip">CURLINFO_DATA_OUT</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFODOUBLE"></a><span class="nroffip">CURLINFO_DOUBLE</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOEFFECTIVEURL"></a><span class="nroffip">CURLINFO_EFFECTIVE_URL</span>
-<p class="level1">Introduced in 7.4
-<p class="level0"><a name="CURLINFOEND"></a><span class="nroffip">CURLINFO_END</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFOFILETIME"></a><span class="nroffip">CURLINFO_FILETIME</span>
-<p class="level1">Introduced in 7.5
-<p class="level0"><a name="CURLINFOFTPENTRYPATH"></a><span class="nroffip">CURLINFO_FTP_ENTRY_PATH</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLINFOHEADERIN"></a><span class="nroffip">CURLINFO_HEADER_IN</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFOHEADEROUT"></a><span class="nroffip">CURLINFO_HEADER_OUT</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFOHEADERSIZE"></a><span class="nroffip">CURLINFO_HEADER_SIZE</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOHTTPAUTHAVAIL"></a><span class="nroffip">CURLINFO_HTTPAUTH_AVAIL</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLINFOHTTPCODE"></a><span class="nroffip">CURLINFO_HTTP_CODE</span>
-<p class="level1">Introduced in 7.4.1 Deprecated since 7.10.8
-<p class="level0"><a name="CURLINFOHTTPCONNECTCODE"></a><span class="nroffip">CURLINFO_HTTP_CONNECTCODE</span>
-<p class="level1">Introduced in 7.10.7
-<p class="level0"><a name="CURLINFOLASTONE"></a><span class="nroffip">CURLINFO_LASTONE</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOLASTSOCKET"></a><span class="nroffip">CURLINFO_LASTSOCKET</span>
-<p class="level1">Introduced in 7.15.2
-<p class="level0"><a name="CURLINFOLOCALIP"></a><span class="nroffip">CURLINFO_LOCAL_IP</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLINFOLOCALPORT"></a><span class="nroffip">CURLINFO_LOCAL_PORT</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLINFOLONG"></a><span class="nroffip">CURLINFO_LONG</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOMASK"></a><span class="nroffip">CURLINFO_MASK</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFONAMELOOKUPTIME"></a><span class="nroffip">CURLINFO_NAMELOOKUP_TIME</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFONONE"></a><span class="nroffip">CURLINFO_NONE</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFONUMCONNECTS"></a><span class="nroffip">CURLINFO_NUM_CONNECTS</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLINFOOSERRNO"></a><span class="nroffip">CURLINFO_OS_ERRNO</span>
-<p class="level1">Introduced in 7.12.2
-<p class="level0"><a name="CURLINFOPRETRANSFERTIME"></a><span class="nroffip">CURLINFO_PRETRANSFER_TIME</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOPRIMARYIP"></a><span class="nroffip">CURLINFO_PRIMARY_IP</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLINFOPRIMARYPORT"></a><span class="nroffip">CURLINFO_PRIMARY_PORT</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLINFOPRIVATE"></a><span class="nroffip">CURLINFO_PRIVATE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLINFOPROXYAUTHAVAIL"></a><span class="nroffip">CURLINFO_PROXYAUTH_AVAIL</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLINFOREDIRECTCOUNT"></a><span class="nroffip">CURLINFO_REDIRECT_COUNT</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLINFOREDIRECTTIME"></a><span class="nroffip">CURLINFO_REDIRECT_TIME</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLINFOREDIRECTURL"></a><span class="nroffip">CURLINFO_REDIRECT_URL</span>
-<p class="level1">Introduced in 7.18.2
-<p class="level0"><a name="CURLINFOREQUESTSIZE"></a><span class="nroffip">CURLINFO_REQUEST_SIZE</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFORESPONSECODE"></a><span class="nroffip">CURLINFO_RESPONSE_CODE</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLINFORTSPCLIENTCSEQ"></a><span class="nroffip">CURLINFO_RTSP_CLIENT_CSEQ</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLINFORTSPCSEQRECV"></a><span class="nroffip">CURLINFO_RTSP_CSEQ_RECV</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLINFORTSPSERVERCSEQ"></a><span class="nroffip">CURLINFO_RTSP_SERVER_CSEQ</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLINFORTSPSESSIONID"></a><span class="nroffip">CURLINFO_RTSP_SESSION_ID</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLINFOSIZEDOWNLOAD"></a><span class="nroffip">CURLINFO_SIZE_DOWNLOAD</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOSIZEUPLOAD"></a><span class="nroffip">CURLINFO_SIZE_UPLOAD</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOSLIST"></a><span class="nroffip">CURLINFO_SLIST</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLINFOSPEEDDOWNLOAD"></a><span class="nroffip">CURLINFO_SPEED_DOWNLOAD</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOSPEEDUPLOAD"></a><span class="nroffip">CURLINFO_SPEED_UPLOAD</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOSSLDATAIN"></a><span class="nroffip">CURLINFO_SSL_DATA_IN</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLINFOSSLDATAOUT"></a><span class="nroffip">CURLINFO_SSL_DATA_OUT</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLINFOSSLENGINES"></a><span class="nroffip">CURLINFO_SSL_ENGINES</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLINFOSSLVERIFYRESULT"></a><span class="nroffip">CURLINFO_SSL_VERIFYRESULT</span>
-<p class="level1">Introduced in 7.5
-<p class="level0"><a name="CURLINFOSTARTTRANSFERTIME"></a><span class="nroffip">CURLINFO_STARTTRANSFER_TIME</span>
-<p class="level1">Introduced in 7.9.2
-<p class="level0"><a name="CURLINFOSTRING"></a><span class="nroffip">CURLINFO_STRING</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOTEXT"></a><span class="nroffip">CURLINFO_TEXT</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLINFOTLSSESSION"></a><span class="nroffip">CURLINFO_TLS_SESSION</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLINFOTOTALTIME"></a><span class="nroffip">CURLINFO_TOTAL_TIME</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLINFOTYPEMASK"></a><span class="nroffip">CURLINFO_TYPEMASK</span>
-<p class="level1">Introduced in 7.4.1
-<p class="level0"><a name="CURLIOCMDNOP"></a><span class="nroffip">CURLIOCMD_NOP</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLIOCMDRESTARTREAD"></a><span class="nroffip">CURLIOCMD_RESTARTREAD</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLIOEFAILRESTART"></a><span class="nroffip">CURLIOE_FAILRESTART</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLIOEOK"></a><span class="nroffip">CURLIOE_OK</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLIOEUNKNOWNCMD"></a><span class="nroffip">CURLIOE_UNKNOWNCMD</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLKHMATCHMISMATCH"></a><span class="nroffip">CURLKHMATCH_MISMATCH</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHMATCHMISSING"></a><span class="nroffip">CURLKHMATCH_MISSING</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHMATCHOK"></a><span class="nroffip">CURLKHMATCH_OK</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHSTATDEFER"></a><span class="nroffip">CURLKHSTAT_DEFER</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHSTATFINE"></a><span class="nroffip">CURLKHSTAT_FINE</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHSTATFINEADDTOFILE"></a><span class="nroffip">CURLKHSTAT_FINE_ADD_TO_FILE</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHSTATREJECT"></a><span class="nroffip">CURLKHSTAT_REJECT</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHTYPEDSS"></a><span class="nroffip">CURLKHTYPE_DSS</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHTYPERSA"></a><span class="nroffip">CURLKHTYPE_RSA</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHTYPERSA1"></a><span class="nroffip">CURLKHTYPE_RSA1</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLKHTYPEUNKNOWN"></a><span class="nroffip">CURLKHTYPE_UNKNOWN</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLMOPTCHUNKLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTCONTENTLENGTHPENALTYSIZE"></a><span class="nroffip">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTMAXCONNECTS"></a><span class="nroffip">CURLMOPT_MAXCONNECTS</span>
-<p class="level1">Introduced in 7.16.3
-<p class="level0"><a name="CURLMOPTMAXHOSTCONNECTIONS"></a><span class="nroffip">CURLMOPT_MAX_HOST_CONNECTIONS</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTMAXPIPELINELENGTH"></a><span class="nroffip">CURLMOPT_MAX_PIPELINE_LENGTH</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTMAXTOTALCONNECTIONS"></a><span class="nroffip">CURLMOPT_MAX_TOTAL_CONNECTIONS</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTPIPELINING"></a><span class="nroffip">CURLMOPT_PIPELINING</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLMOPTPIPELININGSERVERBL"></a><span class="nroffip">CURLMOPT_PIPELINING_SERVER_BL</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTPIPELININGSITEBL"></a><span class="nroffip">CURLMOPT_PIPELINING_SITE_BL</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLMOPTPUSHDATA"></a><span class="nroffip">CURLMOPT_PUSHDATA</span>
-<p class="level1">Introduced in 7.44.0
-<p class="level0"><a name="CURLMOPTPUSHFUNCTION"></a><span class="nroffip">CURLMOPT_PUSHFUNCTION</span>
-<p class="level1">Introduced in 7.44.0
-<p class="level0"><a name="CURLMOPTSOCKETDATA"></a><span class="nroffip">CURLMOPT_SOCKETDATA</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLMOPTSOCKETFUNCTION"></a><span class="nroffip">CURLMOPT_SOCKETFUNCTION</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLMOPTTIMERDATA"></a><span class="nroffip">CURLMOPT_TIMERDATA</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLMOPTTIMERFUNCTION"></a><span class="nroffip">CURLMOPT_TIMERFUNCTION</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLMSGDONE"></a><span class="nroffip">CURLMSG_DONE</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMSGNONE"></a><span class="nroffip">CURLMSG_NONE</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMADDEDALREADY"></a><span class="nroffip">CURLM_ADDED_ALREADY</span>
-<p class="level1">Introduced in 7.32.1
-<p class="level0"><a name="CURLMBADEASYHANDLE"></a><span class="nroffip">CURLM_BAD_EASY_HANDLE</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMBADHANDLE"></a><span class="nroffip">CURLM_BAD_HANDLE</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMBADSOCKET"></a><span class="nroffip">CURLM_BAD_SOCKET</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLMCALLMULTIPERFORM"></a><span class="nroffip">CURLM_CALL_MULTI_PERFORM</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMCALLMULTISOCKET"></a><span class="nroffip">CURLM_CALL_MULTI_SOCKET</span>
-<p class="level1">Introduced in 7.15.5
-<p class="level0"><a name="CURLMINTERNALERROR"></a><span class="nroffip">CURLM_INTERNAL_ERROR</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMOK"></a><span class="nroffip">CURLM_OK</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMOUTOFMEMORY"></a><span class="nroffip">CURLM_OUT_OF_MEMORY</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLMUNKNOWNOPTION"></a><span class="nroffip">CURLM_UNKNOWN_OPTION</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLOPTTYPEFUNCTIONPOINT"></a><span class="nroffip">CURLOPTTYPE_FUNCTIONPOINT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTYPELONG"></a><span class="nroffip">CURLOPTTYPE_LONG</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTYPEOBJECTPOINT"></a><span class="nroffip">CURLOPTTYPE_OBJECTPOINT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTYPEOFFT"></a><span class="nroffip">CURLOPTTYPE_OFF_T</span>
-<p class="level1">Introduced in 7.11.0
-<p class="level0"><a name="CURLOPTACCEPTTIMEOUTMS"></a><span class="nroffip">CURLOPT_ACCEPTTIMEOUT_MS</span>
-<p class="level1">Introduced in 7.24.0
-<p class="level0"><a name="CURLOPTACCEPTENCODING"></a><span class="nroffip">CURLOPT_ACCEPT_ENCODING</span>
-<p class="level1">Introduced in 7.21.6
-<p class="level0"><a name="CURLOPTADDRESSSCOPE"></a><span class="nroffip">CURLOPT_ADDRESS_SCOPE</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLOPTAPPEND"></a><span class="nroffip">CURLOPT_APPEND</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLOPTAUTOREFERER"></a><span class="nroffip">CURLOPT_AUTOREFERER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTBUFFERSIZE"></a><span class="nroffip">CURLOPT_BUFFERSIZE</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTCAINFO"></a><span class="nroffip">CURLOPT_CAINFO</span>
-<p class="level1">Introduced in 7.4.2
-<p class="level0"><a name="CURLOPTCAPATH"></a><span class="nroffip">CURLOPT_CAPATH</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLOPTCERTINFO"></a><span class="nroffip">CURLOPT_CERTINFO</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTCHUNKBGNFUNCTION"></a><span class="nroffip">CURLOPT_CHUNK_BGN_FUNCTION</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTCHUNKDATA"></a><span class="nroffip">CURLOPT_CHUNK_DATA</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTCHUNKENDFUNCTION"></a><span class="nroffip">CURLOPT_CHUNK_END_FUNCTION</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTCLOSEFUNCTION"></a><span class="nroffip">CURLOPT_CLOSEFUNCTION</span>
-<p class="level1">Introduced in 7.7 Deprecated since 7.11.1 Last used in 7.11.1
-<p class="level0"><a name="CURLOPTCLOSEPOLICY"></a><span class="nroffip">CURLOPT_CLOSEPOLICY</span>
-<p class="level1">Introduced in 7.7 Deprecated since 7.16.1
-<p class="level0"><a name="CURLOPTCLOSESOCKETDATA"></a><span class="nroffip">CURLOPT_CLOSESOCKETDATA</span>
-<p class="level1">Introduced in 7.21.7
-<p class="level0"><a name="CURLOPTCLOSESOCKETFUNCTION"></a><span class="nroffip">CURLOPT_CLOSESOCKETFUNCTION</span>
-<p class="level1">Introduced in 7.21.7
-<p class="level0"><a name="CURLOPTCONNECTTIMEOUT"></a><span class="nroffip">CURLOPT_CONNECTTIMEOUT</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTCONNECTTIMEOUTMS"></a><span class="nroffip">CURLOPT_CONNECTTIMEOUT_MS</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLOPTCONNECTONLY"></a><span class="nroffip">CURLOPT_CONNECT_ONLY</span>
-<p class="level1">Introduced in 7.15.2
-<p class="level0"><a name="CURLOPTCONVFROMNETWORKFUNCTION"></a><span class="nroffip">CURLOPT_CONV_FROM_NETWORK_FUNCTION</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLOPTCONVFROMUTF8FUNCTION"></a><span class="nroffip">CURLOPT_CONV_FROM_UTF8_FUNCTION</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLOPTCONVTONETWORKFUNCTION"></a><span class="nroffip">CURLOPT_CONV_TO_NETWORK_FUNCTION</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLOPTCOOKIE"></a><span class="nroffip">CURLOPT_COOKIE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTCOOKIEFILE"></a><span class="nroffip">CURLOPT_COOKIEFILE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTCOOKIEJAR"></a><span class="nroffip">CURLOPT_COOKIEJAR</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLOPTCOOKIELIST"></a><span class="nroffip">CURLOPT_COOKIELIST</span>
-<p class="level1">Introduced in 7.14.1
-<p class="level0"><a name="CURLOPTCOOKIESESSION"></a><span class="nroffip">CURLOPT_COOKIESESSION</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLOPTCOPYPOSTFIELDS"></a><span class="nroffip">CURLOPT_COPYPOSTFIELDS</span>
-<p class="level1">Introduced in 7.17.1
-<p class="level0"><a name="CURLOPTCRLF"></a><span class="nroffip">CURLOPT_CRLF</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTCRLFILE"></a><span class="nroffip">CURLOPT_CRLFILE</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLOPTCUSTOMREQUEST"></a><span class="nroffip">CURLOPT_CUSTOMREQUEST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTDEBUGDATA"></a><span class="nroffip">CURLOPT_DEBUGDATA</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLOPTDEBUGFUNCTION"></a><span class="nroffip">CURLOPT_DEBUGFUNCTION</span>
-<p class="level1">Introduced in 7.9.6
-<p class="level0"><a name="CURLOPTDIRLISTONLY"></a><span class="nroffip">CURLOPT_DIRLISTONLY</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLOPTDNSCACHETIMEOUT"></a><span class="nroffip">CURLOPT_DNS_CACHE_TIMEOUT</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTDNSINTERFACE"></a><span class="nroffip">CURLOPT_DNS_INTERFACE</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLOPTDNSLOCALIP4"></a><span class="nroffip">CURLOPT_DNS_LOCAL_IP4</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLOPTDNSLOCALIP6"></a><span class="nroffip">CURLOPT_DNS_LOCAL_IP6</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLOPTDNSSERVERS"></a><span class="nroffip">CURLOPT_DNS_SERVERS</span>
-<p class="level1">Introduced in 7.24.0
-<p class="level0"><a name="CURLOPTDNSUSEGLOBALCACHE"></a><span class="nroffip">CURLOPT_DNS_USE_GLOBAL_CACHE</span>
-<p class="level1">Introduced in 7.9.3 Deprecated since 7.11.1
-<p class="level0"><a name="CURLOPTEGDSOCKET"></a><span class="nroffip">CURLOPT_EGDSOCKET</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTENCODING"></a><span class="nroffip">CURLOPT_ENCODING</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTERRORBUFFER"></a><span class="nroffip">CURLOPT_ERRORBUFFER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTEXPECT100TIMEOUTMS"></a><span class="nroffip">CURLOPT_EXPECT_100_TIMEOUT_MS</span>
-<p class="level1">Introduced in 7.36.0
-<p class="level0"><a name="CURLOPTFAILONERROR"></a><span class="nroffip">CURLOPT_FAILONERROR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTFILE"></a><span class="nroffip">CURLOPT_FILE</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.9.7
-<p class="level0"><a name="CURLOPTFILETIME"></a><span class="nroffip">CURLOPT_FILETIME</span>
-<p class="level1">Introduced in 7.5
-<p class="level0"><a name="CURLOPTFNMATCHDATA"></a><span class="nroffip">CURLOPT_FNMATCH_DATA</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTFNMATCHFUNCTION"></a><span class="nroffip">CURLOPT_FNMATCH_FUNCTION</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTFOLLOWLOCATION"></a><span class="nroffip">CURLOPT_FOLLOWLOCATION</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTFORBIDREUSE"></a><span class="nroffip">CURLOPT_FORBID_REUSE</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTFRESHCONNECT"></a><span class="nroffip">CURLOPT_FRESH_CONNECT</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTFTPAPPEND"></a><span class="nroffip">CURLOPT_FTPAPPEND</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.16.4
-<p class="level0"><a name="CURLOPTFTPASCII"></a><span class="nroffip">CURLOPT_FTPASCII</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.11.1 Last used in 7.11.1
-<p class="level0"><a name="CURLOPTFTPLISTONLY"></a><span class="nroffip">CURLOPT_FTPLISTONLY</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.16.4
-<p class="level0"><a name="CURLOPTFTPPORT"></a><span class="nroffip">CURLOPT_FTPPORT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTFTPSSLAUTH"></a><span class="nroffip">CURLOPT_FTPSSLAUTH</span>
-<p class="level1">Introduced in 7.12.2
-<p class="level0"><a name="CURLOPTFTPACCOUNT"></a><span class="nroffip">CURLOPT_FTP_ACCOUNT</span>
-<p class="level1">Introduced in 7.13.0
-<p class="level0"><a name="CURLOPTFTPALTERNATIVETOUSER"></a><span class="nroffip">CURLOPT_FTP_ALTERNATIVE_TO_USER</span>
-<p class="level1">Introduced in 7.15.5
-<p class="level0"><a name="CURLOPTFTPCREATEMISSINGDIRS"></a><span class="nroffip">CURLOPT_FTP_CREATE_MISSING_DIRS</span>
-<p class="level1">Introduced in 7.10.7
-<p class="level0"><a name="CURLOPTFTPFILEMETHOD"></a><span class="nroffip">CURLOPT_FTP_FILEMETHOD</span>
-<p class="level1">Introduced in 7.15.1
-<p class="level0"><a name="CURLOPTFTPRESPONSETIMEOUT"></a><span class="nroffip">CURLOPT_FTP_RESPONSE_TIMEOUT</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLOPTFTPSKIPPASVIP"></a><span class="nroffip">CURLOPT_FTP_SKIP_PASV_IP</span>
-<p class="level1">Introduced in 7.15.0
-<p class="level0"><a name="CURLOPTFTPSSL"></a><span class="nroffip">CURLOPT_FTP_SSL</span>
-<p class="level1">Introduced in 7.11.0 Deprecated since 7.16.4
-<p class="level0"><a name="CURLOPTFTPSSLCCC"></a><span class="nroffip">CURLOPT_FTP_SSL_CCC</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLOPTFTPUSEEPRT"></a><span class="nroffip">CURLOPT_FTP_USE_EPRT</span>
-<p class="level1">Introduced in 7.10.5
-<p class="level0"><a name="CURLOPTFTPUSEEPSV"></a><span class="nroffip">CURLOPT_FTP_USE_EPSV</span>
-<p class="level1">Introduced in 7.9.2
-<p class="level0"><a name="CURLOPTFTPUSEPRET"></a><span class="nroffip">CURLOPT_FTP_USE_PRET</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTGSSAPIDELEGATION"></a><span class="nroffip">CURLOPT_GSSAPI_DELEGATION</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLOPTHEADER"></a><span class="nroffip">CURLOPT_HEADER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTHEADERDATA"></a><span class="nroffip">CURLOPT_HEADERDATA</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTHEADERFUNCTION"></a><span class="nroffip">CURLOPT_HEADERFUNCTION</span>
-<p class="level1">Introduced in 7.7.2
-<p class="level0"><a name="CURLOPTHEADEROPT"></a><span class="nroffip">CURLOPT_HEADEROPT</span>
-<p class="level1">Introduced in 7.37.0
-<p class="level0"><a name="CURLOPTHTTP200ALIASES"></a><span class="nroffip">CURLOPT_HTTP200ALIASES</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLOPTHTTPAUTH"></a><span class="nroffip">CURLOPT_HTTPAUTH</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLOPTHTTPGET"></a><span class="nroffip">CURLOPT_HTTPGET</span>
-<p class="level1">Introduced in 7.8.1
-<p class="level0"><a name="CURLOPTHTTPHEADER"></a><span class="nroffip">CURLOPT_HTTPHEADER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTHTTPPOST"></a><span class="nroffip">CURLOPT_HTTPPOST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTHTTPPROXYTUNNEL"></a><span class="nroffip">CURLOPT_HTTPPROXYTUNNEL</span>
-<p class="level1">Introduced in 7.3
-<p class="level0"><a name="CURLOPTHTTPREQUEST"></a><span class="nroffip">CURLOPT_HTTPREQUEST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTHTTPCONTENTDECODING"></a><span class="nroffip">CURLOPT_HTTP_CONTENT_DECODING</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLOPTHTTPTRANSFERDECODING"></a><span class="nroffip">CURLOPT_HTTP_TRANSFER_DECODING</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLOPTHTTPVERSION"></a><span class="nroffip">CURLOPT_HTTP_VERSION</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLOPTIGNORECONTENTLENGTH"></a><span class="nroffip">CURLOPT_IGNORE_CONTENT_LENGTH</span>
-<p class="level1">Introduced in 7.14.1
-<p class="level0"><a name="CURLOPTINFILE"></a><span class="nroffip">CURLOPT_INFILE</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.9.7
-<p class="level0"><a name="CURLOPTINFILESIZE"></a><span class="nroffip">CURLOPT_INFILESIZE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTINFILESIZELARGE"></a><span class="nroffip">CURLOPT_INFILESIZE_LARGE</span>
-<p class="level1">Introduced in 7.11.0
-<p class="level0"><a name="CURLOPTINTERFACE"></a><span class="nroffip">CURLOPT_INTERFACE</span>
-<p class="level1">Introduced in 7.3
-<p class="level0"><a name="CURLOPTINTERLEAVEDATA"></a><span class="nroffip">CURLOPT_INTERLEAVEDATA</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTINTERLEAVEFUNCTION"></a><span class="nroffip">CURLOPT_INTERLEAVEFUNCTION</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTIOCTLDATA"></a><span class="nroffip">CURLOPT_IOCTLDATA</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLOPTIOCTLFUNCTION"></a><span class="nroffip">CURLOPT_IOCTLFUNCTION</span>
-<p class="level1">Introduced in 7.12.3
-<p class="level0"><a name="CURLOPTIPRESOLVE"></a><span class="nroffip">CURLOPT_IPRESOLVE</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLOPTISSUERCERT"></a><span class="nroffip">CURLOPT_ISSUERCERT</span>
-<p class="level1">Introduced in 7.19.0
-<p class="level0"><a name="CURLOPTKEYPASSWD"></a><span class="nroffip">CURLOPT_KEYPASSWD</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLOPTKRB4LEVEL"></a><span class="nroffip">CURLOPT_KRB4LEVEL</span>
-<p class="level1">Introduced in 7.3 Deprecated since 7.17.0
-<p class="level0"><a name="CURLOPTKRBLEVEL"></a><span class="nroffip">CURLOPT_KRBLEVEL</span>
-<p class="level1">Introduced in 7.16.4
-<p class="level0"><a name="CURLOPTLOCALPORT"></a><span class="nroffip">CURLOPT_LOCALPORT</span>
-<p class="level1">Introduced in 7.15.2
-<p class="level0"><a name="CURLOPTLOCALPORTRANGE"></a><span class="nroffip">CURLOPT_LOCALPORTRANGE</span>
-<p class="level1">Introduced in 7.15.2
-<p class="level0"><a name="CURLOPTLOGINOPTIONS"></a><span class="nroffip">CURLOPT_LOGIN_OPTIONS</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLOPTLOWSPEEDLIMIT"></a><span class="nroffip">CURLOPT_LOW_SPEED_LIMIT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTLOWSPEEDTIME"></a><span class="nroffip">CURLOPT_LOW_SPEED_TIME</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTMAILAUTH"></a><span class="nroffip">CURLOPT_MAIL_AUTH</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLOPTMAILFROM"></a><span class="nroffip">CURLOPT_MAIL_FROM</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTMAILRCPT"></a><span class="nroffip">CURLOPT_MAIL_RCPT</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTMAXCONNECTS"></a><span class="nroffip">CURLOPT_MAXCONNECTS</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTMAXFILESIZE"></a><span class="nroffip">CURLOPT_MAXFILESIZE</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLOPTMAXFILESIZELARGE"></a><span class="nroffip">CURLOPT_MAXFILESIZE_LARGE</span>
-<p class="level1">Introduced in 7.11.0
-<p class="level0"><a name="CURLOPTMAXREDIRS"></a><span class="nroffip">CURLOPT_MAXREDIRS</span>
-<p class="level1">Introduced in 7.5
-<p class="level0"><a name="CURLOPTMAXRECVSPEEDLARGE"></a><span class="nroffip">CURLOPT_MAX_RECV_SPEED_LARGE</span>
-<p class="level1">Introduced in 7.15.5
-<p class="level0"><a name="CURLOPTMAXSENDSPEEDLARGE"></a><span class="nroffip">CURLOPT_MAX_SEND_SPEED_LARGE</span>
-<p class="level1">Introduced in 7.15.5
-<p class="level0"><a name="CURLOPTMUTE"></a><span class="nroffip">CURLOPT_MUTE</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.8 Last used in 7.8
-<p class="level0"><a name="CURLOPTNETRC"></a><span class="nroffip">CURLOPT_NETRC</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTNETRCFILE"></a><span class="nroffip">CURLOPT_NETRC_FILE</span>
-<p class="level1">Introduced in 7.11.0
-<p class="level0"><a name="CURLOPTNEWDIRECTORYPERMS"></a><span class="nroffip">CURLOPT_NEW_DIRECTORY_PERMS</span>
-<p class="level1">Introduced in 7.16.4
-<p class="level0"><a name="CURLOPTNEWFILEPERMS"></a><span class="nroffip">CURLOPT_NEW_FILE_PERMS</span>
-<p class="level1">Introduced in 7.16.4
-<p class="level0"><a name="CURLOPTNOBODY"></a><span class="nroffip">CURLOPT_NOBODY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTNOPROGRESS"></a><span class="nroffip">CURLOPT_NOPROGRESS</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTNOPROXY"></a><span class="nroffip">CURLOPT_NOPROXY</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTNOSIGNAL"></a><span class="nroffip">CURLOPT_NOSIGNAL</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTNOTHING"></a><span class="nroffip">CURLOPT_NOTHING</span>
-<p class="level1">Introduced in 7.1.1 Deprecated since 7.11.1 Last used in 7.11.1
-<p class="level0"><a name="CURLOPTOPENSOCKETDATA"></a><span class="nroffip">CURLOPT_OPENSOCKETDATA</span>
-<p class="level1">Introduced in 7.17.1
-<p class="level0"><a name="CURLOPTOPENSOCKETFUNCTION"></a><span class="nroffip">CURLOPT_OPENSOCKETFUNCTION</span>
-<p class="level1">Introduced in 7.17.1
-<p class="level0"><a name="CURLOPTPASSWDDATA"></a><span class="nroffip">CURLOPT_PASSWDDATA</span>
-<p class="level1">Introduced in 7.4.2 Deprecated since 7.11.1 Last used in 7.11.1
-<p class="level0"><a name="CURLOPTPASSWDFUNCTION"></a><span class="nroffip">CURLOPT_PASSWDFUNCTION</span>
-<p class="level1">Introduced in 7.4.2 Deprecated since 7.11.1 Last used in 7.11.1
-<p class="level0"><a name="CURLOPTPASSWORD"></a><span class="nroffip">CURLOPT_PASSWORD</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTPASVHOST"></a><span class="nroffip">CURLOPT_PASV_HOST</span>
-<p class="level1">Introduced in 7.12.1 Deprecated since 7.16.0 Last used in 7.16.0
-<p class="level0"><a name="CURLOPTPATHASIS"></a><span class="nroffip">CURLOPT_PATH_AS_IS</span>
-<p class="level1">Introduced in 7.42.0
-<p class="level0"><a name="CURLOPTPINNEDPUBLICKEY"></a><span class="nroffip">CURLOPT_PINNEDPUBLICKEY</span>
-<p class="level1">Introduced in 7.39.0
-<p class="level0"><a name="CURLOPTPIPEWAIT"></a><span class="nroffip">CURLOPT_PIPEWAIT</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLOPTPORT"></a><span class="nroffip">CURLOPT_PORT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPOST"></a><span class="nroffip">CURLOPT_POST</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPOST301"></a><span class="nroffip">CURLOPT_POST301</span>
-<p class="level1">Introduced in 7.17.1 Deprecated since 7.19.1
-<p class="level0"><a name="CURLOPTPOSTFIELDS"></a><span class="nroffip">CURLOPT_POSTFIELDS</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPOSTFIELDSIZE"></a><span class="nroffip">CURLOPT_POSTFIELDSIZE</span>
-<p class="level1">Introduced in 7.2
-<p class="level0"><a name="CURLOPTPOSTFIELDSIZELARGE"></a><span class="nroffip">CURLOPT_POSTFIELDSIZE_LARGE</span>
-<p class="level1">Introduced in 7.11.1
-<p class="level0"><a name="CURLOPTPOSTQUOTE"></a><span class="nroffip">CURLOPT_POSTQUOTE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPOSTREDIR"></a><span class="nroffip">CURLOPT_POSTREDIR</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTPREQUOTE"></a><span class="nroffip">CURLOPT_PREQUOTE</span>
-<p class="level1">Introduced in 7.9.5
-<p class="level0"><a name="CURLOPTPRIVATE"></a><span class="nroffip">CURLOPT_PRIVATE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLOPTPROGRESSDATA"></a><span class="nroffip">CURLOPT_PROGRESSDATA</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPROGRESSFUNCTION"></a><span class="nroffip">CURLOPT_PROGRESSFUNCTION</span>
-<p class="level1">Introduced in 7.1 Deprecated since 7.32.0
-<p class="level0"><a name="CURLOPTPROTOCOLS"></a><span class="nroffip">CURLOPT_PROTOCOLS</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTPROXY"></a><span class="nroffip">CURLOPT_PROXY</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPROXYAUTH"></a><span class="nroffip">CURLOPT_PROXYAUTH</span>
-<p class="level1">Introduced in 7.10.7
-<p class="level0"><a name="CURLOPTPROXYHEADER"></a><span class="nroffip">CURLOPT_PROXYHEADER</span>
-<p class="level1">Introduced in 7.37.0
-<p class="level0"><a name="CURLOPTPROXYPASSWORD"></a><span class="nroffip">CURLOPT_PROXYPASSWORD</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTPROXYPORT"></a><span class="nroffip">CURLOPT_PROXYPORT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPROXYTYPE"></a><span class="nroffip">CURLOPT_PROXYTYPE</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTPROXYUSERNAME"></a><span class="nroffip">CURLOPT_PROXYUSERNAME</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTPROXYUSERPWD"></a><span class="nroffip">CURLOPT_PROXYUSERPWD</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTPROXYSERVICENAME"></a><span class="nroffip">CURLOPT_PROXY_SERVICE_NAME</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLOPTPROXYTRANSFERMODE"></a><span class="nroffip">CURLOPT_PROXY_TRANSFER_MODE</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLOPTPUT"></a><span class="nroffip">CURLOPT_PUT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTQUOTE"></a><span class="nroffip">CURLOPT_QUOTE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTRANDOMFILE"></a><span class="nroffip">CURLOPT_RANDOM_FILE</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTRANGE"></a><span class="nroffip">CURLOPT_RANGE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTREADDATA"></a><span class="nroffip">CURLOPT_READDATA</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLOPTREADFUNCTION"></a><span class="nroffip">CURLOPT_READFUNCTION</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTREDIRPROTOCOLS"></a><span class="nroffip">CURLOPT_REDIR_PROTOCOLS</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTREFERER"></a><span class="nroffip">CURLOPT_REFERER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTRESOLVE"></a><span class="nroffip">CURLOPT_RESOLVE</span>
-<p class="level1">Introduced in 7.21.3
-<p class="level0"><a name="CURLOPTRESUMEFROM"></a><span class="nroffip">CURLOPT_RESUME_FROM</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTRESUMEFROMLARGE"></a><span class="nroffip">CURLOPT_RESUME_FROM_LARGE</span>
-<p class="level1">Introduced in 7.11.0
-<p class="level0"><a name="CURLOPTRTSPHEADER"></a><span class="nroffip">CURLOPT_RTSPHEADER</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPCLIENTCSEQ"></a><span class="nroffip">CURLOPT_RTSP_CLIENT_CSEQ</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPREQUEST"></a><span class="nroffip">CURLOPT_RTSP_REQUEST</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPSERVERCSEQ"></a><span class="nroffip">CURLOPT_RTSP_SERVER_CSEQ</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPSESSIONID"></a><span class="nroffip">CURLOPT_RTSP_SESSION_ID</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPSTREAMURI"></a><span class="nroffip">CURLOPT_RTSP_STREAM_URI</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTRTSPTRANSPORT"></a><span class="nroffip">CURLOPT_RTSP_TRANSPORT</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTSASLIR"></a><span class="nroffip">CURLOPT_SASL_IR</span>
-<p class="level1">Introduced in 7.31.0
-<p class="level0"><a name="CURLOPTSEEKDATA"></a><span class="nroffip">CURLOPT_SEEKDATA</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLOPTSEEKFUNCTION"></a><span class="nroffip">CURLOPT_SEEKFUNCTION</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLOPTSERVERRESPONSETIMEOUT"></a><span class="nroffip">CURLOPT_SERVER_RESPONSE_TIMEOUT</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLOPTSERVICENAME"></a><span class="nroffip">CURLOPT_SERVICE_NAME</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLOPTSHARE"></a><span class="nroffip">CURLOPT_SHARE</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLOPTSOCKOPTDATA"></a><span class="nroffip">CURLOPT_SOCKOPTDATA</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLOPTSOCKOPTFUNCTION"></a><span class="nroffip">CURLOPT_SOCKOPTFUNCTION</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLOPTSOCKS5GSSAPINEC"></a><span class="nroffip">CURLOPT_SOCKS5_GSSAPI_NEC</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTSOCKS5GSSAPISERVICE"></a><span class="nroffip">CURLOPT_SOCKS5_GSSAPI_SERVICE</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTSOURCEHOST"></a><span class="nroffip">CURLOPT_SOURCE_HOST</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSOURCEPATH"></a><span class="nroffip">CURLOPT_SOURCE_PATH</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSOURCEPORT"></a><span class="nroffip">CURLOPT_SOURCE_PORT</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSOURCEPOSTQUOTE"></a><span class="nroffip">CURLOPT_SOURCE_POSTQUOTE</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSOURCEPREQUOTE"></a><span class="nroffip">CURLOPT_SOURCE_PREQUOTE</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSOURCEQUOTE"></a><span class="nroffip">CURLOPT_SOURCE_QUOTE</span>
-<p class="level1">Introduced in 7.13.0
-<p class="level0"><a name="CURLOPTSOURCEURL"></a><span class="nroffip">CURLOPT_SOURCE_URL</span>
-<p class="level1">Introduced in 7.13.0
-<p class="level0"><a name="CURLOPTSOURCEUSERPWD"></a><span class="nroffip">CURLOPT_SOURCE_USERPWD</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLOPTSSHAUTHTYPES"></a><span class="nroffip">CURLOPT_SSH_AUTH_TYPES</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLOPTSSHHOSTPUBLICKEYMD5"></a><span class="nroffip">CURLOPT_SSH_HOST_PUBLIC_KEY_MD5</span>
-<p class="level1">Introduced in 7.17.1
-<p class="level0"><a name="CURLOPTSSHKEYDATA"></a><span class="nroffip">CURLOPT_SSH_KEYDATA</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLOPTSSHKEYFUNCTION"></a><span class="nroffip">CURLOPT_SSH_KEYFUNCTION</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLOPTSSHKNOWNHOSTS"></a><span class="nroffip">CURLOPT_SSH_KNOWNHOSTS</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLOPTSSHPRIVATEKEYFILE"></a><span class="nroffip">CURLOPT_SSH_PRIVATE_KEYFILE</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLOPTSSHPUBLICKEYFILE"></a><span class="nroffip">CURLOPT_SSH_PUBLIC_KEYFILE</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLOPTSSLCERT"></a><span class="nroffip">CURLOPT_SSLCERT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTSSLCERTPASSWD"></a><span class="nroffip">CURLOPT_SSLCERTPASSWD</span>
-<p class="level1">Introduced in 7.1.1 Deprecated since 7.17.0
-<p class="level0"><a name="CURLOPTSSLCERTTYPE"></a><span class="nroffip">CURLOPT_SSLCERTTYPE</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTSSLENGINE"></a><span class="nroffip">CURLOPT_SSLENGINE</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTSSLENGINEDEFAULT"></a><span class="nroffip">CURLOPT_SSLENGINE_DEFAULT</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTSSLKEY"></a><span class="nroffip">CURLOPT_SSLKEY</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTSSLKEYPASSWD"></a><span class="nroffip">CURLOPT_SSLKEYPASSWD</span>
-<p class="level1">Introduced in 7.9.3 Deprecated since 7.17.0
-<p class="level0"><a name="CURLOPTSSLKEYTYPE"></a><span class="nroffip">CURLOPT_SSLKEYTYPE</span>
-<p class="level1">Introduced in 7.9.3
-<p class="level0"><a name="CURLOPTSSLVERSION"></a><span class="nroffip">CURLOPT_SSLVERSION</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTSSLCIPHERLIST"></a><span class="nroffip">CURLOPT_SSL_CIPHER_LIST</span>
-<p class="level1">Introduced in 7.9
-<p class="level0"><a name="CURLOPTSSLCTXDATA"></a><span class="nroffip">CURLOPT_SSL_CTX_DATA</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLOPTSSLCTXFUNCTION"></a><span class="nroffip">CURLOPT_SSL_CTX_FUNCTION</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLOPTSSLENABLEALPN"></a><span class="nroffip">CURLOPT_SSL_ENABLE_ALPN</span>
-<p class="level1">Introduced in 7.36.0
-<p class="level0"><a name="CURLOPTSSLENABLENPN"></a><span class="nroffip">CURLOPT_SSL_ENABLE_NPN</span>
-<p class="level1">Introduced in 7.36.0
-<p class="level0"><a name="CURLOPTSSLFALSESTART"></a><span class="nroffip">CURLOPT_SSL_FALSESTART</span>
-<p class="level1">Introduced in 7.42.0
-<p class="level0"><a name="CURLOPTSSLOPTIONS"></a><span class="nroffip">CURLOPT_SSL_OPTIONS</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLOPTSSLSESSIONIDCACHE"></a><span class="nroffip">CURLOPT_SSL_SESSIONID_CACHE</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLOPTSSLVERIFYHOST"></a><span class="nroffip">CURLOPT_SSL_VERIFYHOST</span>
-<p class="level1">Introduced in 7.8.1
-<p class="level0"><a name="CURLOPTSSLVERIFYPEER"></a><span class="nroffip">CURLOPT_SSL_VERIFYPEER</span>
-<p class="level1">Introduced in 7.4.2
-<p class="level0"><a name="CURLOPTSSLVERIFYSTATUS"></a><span class="nroffip">CURLOPT_SSL_VERIFYSTATUS</span>
-<p class="level1">Introduced in 7.41.0
-<p class="level0"><a name="CURLOPTSTDERR"></a><span class="nroffip">CURLOPT_STDERR</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTCPKEEPALIVE"></a><span class="nroffip">CURLOPT_TCP_KEEPALIVE</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLOPTTCPKEEPIDLE"></a><span class="nroffip">CURLOPT_TCP_KEEPIDLE</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLOPTTCPKEEPINTVL"></a><span class="nroffip">CURLOPT_TCP_KEEPINTVL</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLOPTTCPNODELAY"></a><span class="nroffip">CURLOPT_TCP_NODELAY</span>
-<p class="level1">Introduced in 7.11.2
-<p class="level0"><a name="CURLOPTTELNETOPTIONS"></a><span class="nroffip">CURLOPT_TELNETOPTIONS</span>
-<p class="level1">Introduced in 7.7
-<p class="level0"><a name="CURLOPTTFTPBLKSIZE"></a><span class="nroffip">CURLOPT_TFTP_BLKSIZE</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLOPTTIMECONDITION"></a><span class="nroffip">CURLOPT_TIMECONDITION</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTIMEOUT"></a><span class="nroffip">CURLOPT_TIMEOUT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTIMEOUTMS"></a><span class="nroffip">CURLOPT_TIMEOUT_MS</span>
-<p class="level1">Introduced in 7.16.2
-<p class="level0"><a name="CURLOPTTIMEVALUE"></a><span class="nroffip">CURLOPT_TIMEVALUE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTTLSAUTHPASSWORD"></a><span class="nroffip">CURLOPT_TLSAUTH_PASSWORD</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLOPTTLSAUTHTYPE"></a><span class="nroffip">CURLOPT_TLSAUTH_TYPE</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLOPTTLSAUTHUSERNAME"></a><span class="nroffip">CURLOPT_TLSAUTH_USERNAME</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLOPTTRANSFERTEXT"></a><span class="nroffip">CURLOPT_TRANSFERTEXT</span>
-<p class="level1">Introduced in 7.1.1
-<p class="level0"><a name="CURLOPTTRANSFERENCODING"></a><span class="nroffip">CURLOPT_TRANSFER_ENCODING</span>
-<p class="level1">Introduced in 7.21.6
-<p class="level0"><a name="CURLOPTUNIXSOCKETPATH"></a><span class="nroffip">CURLOPT_UNIX_SOCKET_PATH</span>
-<p class="level1">Introduced in 7.40.0
-<p class="level0"><a name="CURLOPTUNRESTRICTEDAUTH"></a><span class="nroffip">CURLOPT_UNRESTRICTED_AUTH</span>
-<p class="level1">Introduced in 7.10.4
-<p class="level0"><a name="CURLOPTUPLOAD"></a><span class="nroffip">CURLOPT_UPLOAD</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTURL"></a><span class="nroffip">CURLOPT_URL</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTUSERAGENT"></a><span class="nroffip">CURLOPT_USERAGENT</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTUSERNAME"></a><span class="nroffip">CURLOPT_USERNAME</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLOPTUSERPWD"></a><span class="nroffip">CURLOPT_USERPWD</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTUSESSL"></a><span class="nroffip">CURLOPT_USE_SSL</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLOPTVERBOSE"></a><span class="nroffip">CURLOPT_VERBOSE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTWILDCARDMATCH"></a><span class="nroffip">CURLOPT_WILDCARDMATCH</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLOPTWRITEDATA"></a><span class="nroffip">CURLOPT_WRITEDATA</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLOPTWRITEFUNCTION"></a><span class="nroffip">CURLOPT_WRITEFUNCTION</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTWRITEHEADER"></a><span class="nroffip">CURLOPT_WRITEHEADER</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTWRITEINFO"></a><span class="nroffip">CURLOPT_WRITEINFO</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLOPTXFERINFODATA"></a><span class="nroffip">CURLOPT_XFERINFODATA</span>
-<p class="level1">Introduced in 7.32.0
-<p class="level0"><a name="CURLOPTXFERINFOFUNCTION"></a><span class="nroffip">CURLOPT_XFERINFOFUNCTION</span>
-<p class="level1">Introduced in 7.32.0
-<p class="level0"><a name="CURLOPTXOAUTH2BEARER"></a><span class="nroffip">CURLOPT_XOAUTH2_BEARER</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLPAUSEALL"></a><span class="nroffip">CURLPAUSE_ALL</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPAUSECONT"></a><span class="nroffip">CURLPAUSE_CONT</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPAUSERECV"></a><span class="nroffip">CURLPAUSE_RECV</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPAUSERECVCONT"></a><span class="nroffip">CURLPAUSE_RECV_CONT</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPAUSESEND"></a><span class="nroffip">CURLPAUSE_SEND</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPAUSESENDCONT"></a><span class="nroffip">CURLPAUSE_SEND_CONT</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPIPEHTTP1"></a><span class="nroffip">CURLPIPE_HTTP1</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLPIPEMULTIPLEX"></a><span class="nroffip">CURLPIPE_MULTIPLEX</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLPIPENOTHING"></a><span class="nroffip">CURLPIPE_NOTHING</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLPROTOALL"></a><span class="nroffip">CURLPROTO_ALL</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTODICT"></a><span class="nroffip">CURLPROTO_DICT</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOFILE"></a><span class="nroffip">CURLPROTO_FILE</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOFTP"></a><span class="nroffip">CURLPROTO_FTP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOFTPS"></a><span class="nroffip">CURLPROTO_FTPS</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOGOPHER"></a><span class="nroffip">CURLPROTO_GOPHER</span>
-<p class="level1">Introduced in 7.21.2
-<p class="level0"><a name="CURLPROTOHTTP"></a><span class="nroffip">CURLPROTO_HTTP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOHTTPS"></a><span class="nroffip">CURLPROTO_HTTPS</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOIMAP"></a><span class="nroffip">CURLPROTO_IMAP</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOIMAPS"></a><span class="nroffip">CURLPROTO_IMAPS</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOLDAP"></a><span class="nroffip">CURLPROTO_LDAP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOLDAPS"></a><span class="nroffip">CURLPROTO_LDAPS</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOPOP3"></a><span class="nroffip">CURLPROTO_POP3</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOPOP3S"></a><span class="nroffip">CURLPROTO_POP3S</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTORTMP"></a><span class="nroffip">CURLPROTO_RTMP</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTMPE"></a><span class="nroffip">CURLPROTO_RTMPE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTMPS"></a><span class="nroffip">CURLPROTO_RTMPS</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTMPT"></a><span class="nroffip">CURLPROTO_RTMPT</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTMPTE"></a><span class="nroffip">CURLPROTO_RTMPTE</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTMPTS"></a><span class="nroffip">CURLPROTO_RTMPTS</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLPROTORTSP"></a><span class="nroffip">CURLPROTO_RTSP</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOSCP"></a><span class="nroffip">CURLPROTO_SCP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOSFTP"></a><span class="nroffip">CURLPROTO_SFTP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOSMB"></a><span class="nroffip">CURLPROTO_SMB</span>
-<p class="level1">Introduced in 7.40.0
-<p class="level0"><a name="CURLPROTOSMBS"></a><span class="nroffip">CURLPROTO_SMBS</span>
-<p class="level1">Introduced in 7.40.0
-<p class="level0"><a name="CURLPROTOSMTP"></a><span class="nroffip">CURLPROTO_SMTP</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOSMTPS"></a><span class="nroffip">CURLPROTO_SMTPS</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLPROTOTELNET"></a><span class="nroffip">CURLPROTO_TELNET</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROTOTFTP"></a><span class="nroffip">CURLPROTO_TFTP</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROXYHTTP"></a><span class="nroffip">CURLPROXY_HTTP</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLPROXYHTTP10"></a><span class="nroffip">CURLPROXY_HTTP_1_0</span>
-<p class="level1">Introduced in 7.19.4
-<p class="level0"><a name="CURLPROXYSOCKS4"></a><span class="nroffip">CURLPROXY_SOCKS4</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLPROXYSOCKS4A"></a><span class="nroffip">CURLPROXY_SOCKS4A</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLPROXYSOCKS5"></a><span class="nroffip">CURLPROXY_SOCKS5</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLPROXYSOCKS5HOSTNAME"></a><span class="nroffip">CURLPROXY_SOCKS5_HOSTNAME</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLSHEBADOPTION"></a><span class="nroffip">CURLSHE_BAD_OPTION</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHEINVALID"></a><span class="nroffip">CURLSHE_INVALID</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHEINUSE"></a><span class="nroffip">CURLSHE_IN_USE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHENOMEM"></a><span class="nroffip">CURLSHE_NOMEM</span>
-<p class="level1">Introduced in 7.12.0
-<p class="level0"><a name="CURLSHENOTBUILTIN"></a><span class="nroffip">CURLSHE_NOT_BUILT_IN</span>
-<p class="level1">Introduced in 7.23.0
-<p class="level0"><a name="CURLSHEOK"></a><span class="nroffip">CURLSHE_OK</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTLOCKFUNC"></a><span class="nroffip">CURLSHOPT_LOCKFUNC</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTNONE"></a><span class="nroffip">CURLSHOPT_NONE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTSHARE"></a><span class="nroffip">CURLSHOPT_SHARE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTUNLOCKFUNC"></a><span class="nroffip">CURLSHOPT_UNLOCKFUNC</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTUNSHARE"></a><span class="nroffip">CURLSHOPT_UNSHARE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSHOPTUSERDATA"></a><span class="nroffip">CURLSHOPT_USERDATA</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLSOCKTYPEACCEPT"></a><span class="nroffip">CURLSOCKTYPE_ACCEPT</span>
-<p class="level1">Introduced in 7.28.0
-<p class="level0"><a name="CURLSOCKTYPEIPCXN"></a><span class="nroffip">CURLSOCKTYPE_IPCXN</span>
-<p class="level1">Introduced in 7.16.0
-<p class="level0"><a name="CURLSSHAUTHAGENT"></a><span class="nroffip">CURLSSH_AUTH_AGENT</span>
-<p class="level1">Introduced in 7.28.0
-<p class="level0"><a name="CURLSSHAUTHANY"></a><span class="nroffip">CURLSSH_AUTH_ANY</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHDEFAULT"></a><span class="nroffip">CURLSSH_AUTH_DEFAULT</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHHOST"></a><span class="nroffip">CURLSSH_AUTH_HOST</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHKEYBOARD"></a><span class="nroffip">CURLSSH_AUTH_KEYBOARD</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHNONE"></a><span class="nroffip">CURLSSH_AUTH_NONE</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHPASSWORD"></a><span class="nroffip">CURLSSH_AUTH_PASSWORD</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSHAUTHPUBLICKEY"></a><span class="nroffip">CURLSSH_AUTH_PUBLICKEY</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLSSLBACKENDAXTLS"></a><span class="nroffip">CURLSSLBACKEND_AXTLS</span>
-<p class="level1">Introduced in 7.38.0
-<p class="level0"><a name="CURLSSLBACKENDCYASSL"></a><span class="nroffip">CURLSSLBACKEND_CYASSL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDDARWINSSL"></a><span class="nroffip">CURLSSLBACKEND_DARWINSSL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDGNUTLS"></a><span class="nroffip">CURLSSLBACKEND_GNUTLS</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDGSKIT"></a><span class="nroffip">CURLSSLBACKEND_GSKIT</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDNONE"></a><span class="nroffip">CURLSSLBACKEND_NONE</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDNSS"></a><span class="nroffip">CURLSSLBACKEND_NSS</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDOPENSSL"></a><span class="nroffip">CURLSSLBACKEND_OPENSSL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDPOLARSSL"></a><span class="nroffip">CURLSSLBACKEND_POLARSSL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDQSOSSL"></a><span class="nroffip">CURLSSLBACKEND_QSOSSL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLBACKENDSCHANNEL"></a><span class="nroffip">CURLSSLBACKEND_SCHANNEL</span>
-<p class="level1">Introduced in 7.34.0
-<p class="level0"><a name="CURLSSLOPTALLOWBEAST"></a><span class="nroffip">CURLSSLOPT_ALLOW_BEAST</span>
-<p class="level1">Introduced in 7.25.0
-<p class="level0"><a name="CURLSSLOPTNOREVOKE"></a><span class="nroffip">CURLSSLOPT_NO_REVOKE</span>
-<p class="level1">Introduced in 7.44.0
-<p class="level0"><a name="CURLUSESSLALL"></a><span class="nroffip">CURLUSESSL_ALL</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLUSESSLCONTROL"></a><span class="nroffip">CURLUSESSL_CONTROL</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLUSESSLNONE"></a><span class="nroffip">CURLUSESSL_NONE</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLUSESSLTRY"></a><span class="nroffip">CURLUSESSL_TRY</span>
-<p class="level1">Introduced in 7.17.0
-<p class="level0"><a name="CURLVERSIONFIRST"></a><span class="nroffip">CURLVERSION_FIRST</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLVERSIONFOURTH"></a><span class="nroffip">CURLVERSION_FOURTH</span>
-<p class="level1">Introduced in 7.16.1
-<p class="level0"><a name="CURLVERSIONNOW"></a><span class="nroffip">CURLVERSION_NOW</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLVERSIONSECOND"></a><span class="nroffip">CURLVERSION_SECOND</span>
-<p class="level1">Introduced in 7.11.1
-<p class="level0"><a name="CURLVERSIONTHIRD"></a><span class="nroffip">CURLVERSION_THIRD</span>
-<p class="level1">Introduced in 7.12.0
-<p class="level0"><a name="CURLCHUNKBGNFUNCFAIL"></a><span class="nroffip">CURL_CHUNK_BGN_FUNC_FAIL</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLCHUNKBGNFUNCOK"></a><span class="nroffip">CURL_CHUNK_BGN_FUNC_OK</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLCHUNKBGNFUNCSKIP"></a><span class="nroffip">CURL_CHUNK_BGN_FUNC_SKIP</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLCHUNKENDFUNCFAIL"></a><span class="nroffip">CURL_CHUNK_END_FUNC_FAIL</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLCHUNKENDFUNCOK"></a><span class="nroffip">CURL_CHUNK_END_FUNC_OK</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLCSELECTERR"></a><span class="nroffip">CURL_CSELECT_ERR</span>
-<p class="level1">Introduced in 7.16.3
-<p class="level0"><a name="CURLCSELECTIN"></a><span class="nroffip">CURL_CSELECT_IN</span>
-<p class="level1">Introduced in 7.16.3
-<p class="level0"><a name="CURLCSELECTOUT"></a><span class="nroffip">CURL_CSELECT_OUT</span>
-<p class="level1">Introduced in 7.16.3
-<p class="level0"><a name="CURLEASYNONE"></a><span class="nroffip">CURL_EASY_NONE</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLEASYTIMEOUT"></a><span class="nroffip">CURL_EASY_TIMEOUT</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLERRORSIZE"></a><span class="nroffip">CURL_ERROR_SIZE</span>
-<p class="level1">Introduced in 7.1
-<p class="level0"><a name="CURLFNMATCHFUNCFAIL"></a><span class="nroffip">CURL_FNMATCHFUNC_FAIL</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFNMATCHFUNCMATCH"></a><span class="nroffip">CURL_FNMATCHFUNC_MATCH</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFNMATCHFUNCNOMATCH"></a><span class="nroffip">CURL_FNMATCHFUNC_NOMATCH</span>
-<p class="level1">Introduced in 7.21.0
-<p class="level0"><a name="CURLFORMADDDISABLED"></a><span class="nroffip">CURL_FORMADD_DISABLED</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLFORMADDILLEGALARRAY"></a><span class="nroffip">CURL_FORMADD_ILLEGAL_ARRAY</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDINCOMPLETE"></a><span class="nroffip">CURL_FORMADD_INCOMPLETE</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDMEMORY"></a><span class="nroffip">CURL_FORMADD_MEMORY</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDNULL"></a><span class="nroffip">CURL_FORMADD_NULL</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDOK"></a><span class="nroffip">CURL_FORMADD_OK</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDOPTIONTWICE"></a><span class="nroffip">CURL_FORMADD_OPTION_TWICE</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLFORMADDUNKNOWNOPTION"></a><span class="nroffip">CURL_FORMADD_UNKNOWN_OPTION</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLGLOBALACKEINTR"></a><span class="nroffip">CURL_GLOBAL_ACK_EINTR</span>
-<p class="level1">Introduced in 7.30.0
-<p class="level0"><a name="CURLGLOBALALL"></a><span class="nroffip">CURL_GLOBAL_ALL</span>
-<p class="level1">Introduced in 7.8
-<p class="level0"><a name="CURLGLOBALDEFAULT"></a><span class="nroffip">CURL_GLOBAL_DEFAULT</span>
-<p class="level1">Introduced in 7.8
-<p class="level0"><a name="CURLGLOBALNOTHING"></a><span class="nroffip">CURL_GLOBAL_NOTHING</span>
-<p class="level1">Introduced in 7.8
-<p class="level0"><a name="CURLGLOBALSSL"></a><span class="nroffip">CURL_GLOBAL_SSL</span>
-<p class="level1">Introduced in 7.8
-<p class="level0"><a name="CURLGLOBALWIN32"></a><span class="nroffip">CURL_GLOBAL_WIN32</span>
-<p class="level1">Introduced in 7.8.1
-<p class="level0"><a name="CURLHTTPVERSION10"></a><span class="nroffip">CURL_HTTP_VERSION_1_0</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLHTTPVERSION11"></a><span class="nroffip">CURL_HTTP_VERSION_1_1</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLHTTPVERSION20"></a><span class="nroffip">CURL_HTTP_VERSION_2_0</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLHTTPVERSION2"></a><span class="nroffip">CURL_HTTP_VERSION_2</span>
-<p class="level1">Introduced in 7.43.0
-<p class="level0"><a name="CURLHTTPVERSIONNONE"></a><span class="nroffip">CURL_HTTP_VERSION_NONE</span>
-<p class="level1">Introduced in 7.9.1
-<p class="level0"><a name="CURLIPRESOLVEV4"></a><span class="nroffip">CURL_IPRESOLVE_V4</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLIPRESOLVEV6"></a><span class="nroffip">CURL_IPRESOLVE_V6</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLIPRESOLVEWHATEVER"></a><span class="nroffip">CURL_IPRESOLVE_WHATEVER</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLLOCKACCESSNONE"></a><span class="nroffip">CURL_LOCK_ACCESS_NONE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKACCESSSHARED"></a><span class="nroffip">CURL_LOCK_ACCESS_SHARED</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKACCESSSINGLE"></a><span class="nroffip">CURL_LOCK_ACCESS_SINGLE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKDATACONNECT"></a><span class="nroffip">CURL_LOCK_DATA_CONNECT</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKDATACOOKIE"></a><span class="nroffip">CURL_LOCK_DATA_COOKIE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKDATADNS"></a><span class="nroffip">CURL_LOCK_DATA_DNS</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKDATANONE"></a><span class="nroffip">CURL_LOCK_DATA_NONE</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKDATASHARE"></a><span class="nroffip">CURL_LOCK_DATA_SHARE</span>
-<p class="level1">Introduced in 7.10.4
-<p class="level0"><a name="CURLLOCKDATASSLSESSION"></a><span class="nroffip">CURL_LOCK_DATA_SSL_SESSION</span>
-<p class="level1">Introduced in 7.10.3
-<p class="level0"><a name="CURLLOCKTYPECONNECT"></a><span class="nroffip">CURL_LOCK_TYPE_CONNECT</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLLOCKTYPECOOKIE"></a><span class="nroffip">CURL_LOCK_TYPE_COOKIE</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLLOCKTYPEDNS"></a><span class="nroffip">CURL_LOCK_TYPE_DNS</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLLOCKTYPENONE"></a><span class="nroffip">CURL_LOCK_TYPE_NONE</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLLOCKTYPESSLSESSION"></a><span class="nroffip">CURL_LOCK_TYPE_SSL_SESSION</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLMAXHTTPHEADER"></a><span class="nroffip">CURL_MAX_HTTP_HEADER</span>
-<p class="level1">Introduced in 7.19.7
-<p class="level0"><a name="CURLMAXWRITESIZE"></a><span class="nroffip">CURL_MAX_WRITE_SIZE</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLNETRCIGNORED"></a><span class="nroffip">CURL_NETRC_IGNORED</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLNETRCOPTIONAL"></a><span class="nroffip">CURL_NETRC_OPTIONAL</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLNETRCREQUIRED"></a><span class="nroffip">CURL_NETRC_REQUIRED</span>
-<p class="level1">Introduced in 7.9.8
-<p class="level0"><a name="CURLPOLLIN"></a><span class="nroffip">CURL_POLL_IN</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLPOLLINOUT"></a><span class="nroffip">CURL_POLL_INOUT</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLPOLLNONE"></a><span class="nroffip">CURL_POLL_NONE</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLPOLLOUT"></a><span class="nroffip">CURL_POLL_OUT</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLPOLLREMOVE"></a><span class="nroffip">CURL_POLL_REMOVE</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLPROGRESSBAR"></a><span class="nroffip">CURL_PROGRESS_BAR</span>
-<p class="level1">Introduced in 7.1.1
-<p class="level0"><a name="CURLPROGRESSSTATS"></a><span class="nroffip">CURL_PROGRESS_STATS</span>
-<p class="level1">Introduced in 7.1.1
-<p class="level0"><a name="CURLPUSHDENY"></a><span class="nroffip">CURL_PUSH_DENY</span>
-<p class="level1">Introduced in 7.44.0
-<p class="level0"><a name="CURLPUSHOK"></a><span class="nroffip">CURL_PUSH_OK</span>
-<p class="level1">Introduced in 7.44.0
-<p class="level0"><a name="CURLREADFUNCABORT"></a><span class="nroffip">CURL_READFUNC_ABORT</span>
-<p class="level1">Introduced in 7.12.1
-<p class="level0"><a name="CURLREADFUNCPAUSE"></a><span class="nroffip">CURL_READFUNC_PAUSE</span>
-<p class="level1">Introduced in 7.18.0
-<p class="level0"><a name="CURLREDIRGETALL"></a><span class="nroffip">CURL_REDIR_GET_ALL</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLREDIRPOST301"></a><span class="nroffip">CURL_REDIR_POST_301</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLREDIRPOST302"></a><span class="nroffip">CURL_REDIR_POST_302</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLREDIRPOST303"></a><span class="nroffip">CURL_REDIR_POST_303</span>
-<p class="level1">Introduced in 7.25.1
-<p class="level0"><a name="CURLREDIRPOSTALL"></a><span class="nroffip">CURL_REDIR_POST_ALL</span>
-<p class="level1">Introduced in 7.19.1
-<p class="level0"><a name="CURLRTSPREQANNOUNCE"></a><span class="nroffip">CURL_RTSPREQ_ANNOUNCE</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQDESCRIBE"></a><span class="nroffip">CURL_RTSPREQ_DESCRIBE</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQGETPARAMETER"></a><span class="nroffip">CURL_RTSPREQ_GET_PARAMETER</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQNONE"></a><span class="nroffip">CURL_RTSPREQ_NONE</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQOPTIONS"></a><span class="nroffip">CURL_RTSPREQ_OPTIONS</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQPAUSE"></a><span class="nroffip">CURL_RTSPREQ_PAUSE</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQPLAY"></a><span class="nroffip">CURL_RTSPREQ_PLAY</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQRECEIVE"></a><span class="nroffip">CURL_RTSPREQ_RECEIVE</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQRECORD"></a><span class="nroffip">CURL_RTSPREQ_RECORD</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQSETUP"></a><span class="nroffip">CURL_RTSPREQ_SETUP</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQSETPARAMETER"></a><span class="nroffip">CURL_RTSPREQ_SET_PARAMETER</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLRTSPREQTEARDOWN"></a><span class="nroffip">CURL_RTSPREQ_TEARDOWN</span>
-<p class="level1">Introduced in 7.20.0
-<p class="level0"><a name="CURLSEEKFUNCCANTSEEK"></a><span class="nroffip">CURL_SEEKFUNC_CANTSEEK</span>
-<p class="level1">Introduced in 7.19.5
-<p class="level0"><a name="CURLSEEKFUNCFAIL"></a><span class="nroffip">CURL_SEEKFUNC_FAIL</span>
-<p class="level1">Introduced in 7.19.5
-<p class="level0"><a name="CURLSEEKFUNCOK"></a><span class="nroffip">CURL_SEEKFUNC_OK</span>
-<p class="level1">Introduced in 7.19.5
-<p class="level0"><a name="CURLSOCKETBAD"></a><span class="nroffip">CURL_SOCKET_BAD</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLSOCKETTIMEOUT"></a><span class="nroffip">CURL_SOCKET_TIMEOUT</span>
-<p class="level1">Introduced in 7.14.0
-<p class="level0"><a name="CURLSOCKOPTALREADYCONNECTED"></a><span class="nroffip">CURL_SOCKOPT_ALREADY_CONNECTED</span>
-<p class="level1">Introduced in 7.21.5
-<p class="level0"><a name="CURLSOCKOPTERROR"></a><span class="nroffip">CURL_SOCKOPT_ERROR</span>
-<p class="level1">Introduced in 7.21.5
-<p class="level0"><a name="CURLSOCKOPTOK"></a><span class="nroffip">CURL_SOCKOPT_OK</span>
-<p class="level1">Introduced in 7.21.5
-<p class="level0"><a name="CURLSSLVERSIONDEFAULT"></a><span class="nroffip">CURL_SSLVERSION_DEFAULT</span>
-<p class="level1">Introduced in 7.9.2
-<p class="level0"><a name="CURLSSLVERSIONSSL"></a><span class="nroffip">CURL_SSLVERSION_SSL</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLSSLVERSIONSSL"></a><span class="nroffip">CURL_SSLVERSION_SSL</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLSSLVERSIONTLS"></a><span class="nroffip">CURL_SSLVERSION_TLS</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLSSLVERSIONTLS"></a><span class="nroffip">CURL_SSLVERSION_TLS</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLSSLVERSIONTLS"></a><span class="nroffip">CURL_SSLVERSION_TLS</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLSSLVERSIONTLS"></a><span class="nroffip">CURL_SSLVERSION_TLS</span>
-<p class="level1">Introduced in
-<p class="level0"><a name="CURLTIMECONDIFMODSINCE"></a><span class="nroffip">CURL_TIMECOND_IFMODSINCE</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLTIMECONDIFUNMODSINCE"></a><span class="nroffip">CURL_TIMECOND_IFUNMODSINCE</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLTIMECONDLASTMOD"></a><span class="nroffip">CURL_TIMECOND_LASTMOD</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLTIMECONDNONE"></a><span class="nroffip">CURL_TIMECOND_NONE</span>
-<p class="level1">Introduced in 7.9.7
-<p class="level0"><a name="CURLTLSAUTHNONE"></a><span class="nroffip">CURL_TLSAUTH_NONE</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLTLSAUTHSRP"></a><span class="nroffip">CURL_TLSAUTH_SRP</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLVERSIONASYNCHDNS"></a><span class="nroffip">CURL_VERSION_ASYNCHDNS</span>
-<p class="level1">Introduced in 7.10.7
-<p class="level0"><a name="CURLVERSIONCONV"></a><span class="nroffip">CURL_VERSION_CONV</span>
-<p class="level1">Introduced in 7.15.4
-<p class="level0"><a name="CURLVERSIONCURLDEBUG"></a><span class="nroffip">CURL_VERSION_CURLDEBUG</span>
-<p class="level1">Introduced in 7.19.6
-<p class="level0"><a name="CURLVERSIONDEBUG"></a><span class="nroffip">CURL_VERSION_DEBUG</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLVERSIONGSSAPI"></a><span class="nroffip">CURL_VERSION_GSSAPI</span>
-<p class="level1">Introduced in 7.38.0
-<p class="level0"><a name="CURLVERSIONGSSNEGOTIATE"></a><span class="nroffip">CURL_VERSION_GSSNEGOTIATE</span>
-<p class="level1">Introduced in 7.10.6 Deprecated since 7.38.0
-<p class="level0"><a name="CURLVERSIONHTTP2"></a><span class="nroffip">CURL_VERSION_HTTP2</span>
-<p class="level1">Introduced in 7.33.0
-<p class="level0"><a name="CURLVERSIONIDN"></a><span class="nroffip">CURL_VERSION_IDN</span>
-<p class="level1">Introduced in 7.12.0
-<p class="level0"><a name="CURLVERSIONIPV6"></a><span class="nroffip">CURL_VERSION_IPV6</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLVERSIONKERBEROS4"></a><span class="nroffip">CURL_VERSION_KERBEROS4</span>
-<p class="level1">Introduced in 7.10 Deprecated since 7.33.0
-<p class="level0"><a name="CURLVERSIONKERBEROS5"></a><span class="nroffip">CURL_VERSION_KERBEROS5</span>
-<p class="level1">Introduced in 7.40.0
-<p class="level0"><a name="CURLVERSIONLARGEFILE"></a><span class="nroffip">CURL_VERSION_LARGEFILE</span>
-<p class="level1">Introduced in 7.11.1
-<p class="level0"><a name="CURLVERSIONLIBZ"></a><span class="nroffip">CURL_VERSION_LIBZ</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLVERSIONNTLM"></a><span class="nroffip">CURL_VERSION_NTLM</span>
-<p class="level1">Introduced in 7.10.6
-<p class="level0"><a name="CURLVERSIONNTLMWB"></a><span class="nroffip">CURL_VERSION_NTLM_WB</span>
-<p class="level1">Introduced in 7.22.0
-<p class="level0"><a name="CURLVERSIONSPNEGO"></a><span class="nroffip">CURL_VERSION_SPNEGO</span>
-<p class="level1">Introduced in 7.10.8
-<p class="level0"><a name="CURLVERSIONSSL"></a><span class="nroffip">CURL_VERSION_SSL</span>
-<p class="level1">Introduced in 7.10
-<p class="level0"><a name="CURLVERSIONSSPI"></a><span class="nroffip">CURL_VERSION_SSPI</span>
-<p class="level1">Introduced in 7.13.2
-<p class="level0"><a name="CURLVERSIONTLSAUTHSRP"></a><span class="nroffip">CURL_VERSION_TLSAUTH_SRP</span>
-<p class="level1">Introduced in 7.21.4
-<p class="level0"><a name="CURLVERSIONUNIXSOCKETS"></a><span class="nroffip">CURL_VERSION_UNIX_SOCKETS</span>
-<p class="level1">Introduced in 7.40.0
-<p class="level0"><a name="CURLWAITPOLLIN"></a><span class="nroffip">CURL_WAIT_POLLIN</span>
-<p class="level1">Introduced in 7.28.0
-<p class="level0"><a name="CURLWAITPOLLOUT"></a><span class="nroffip">CURL_WAIT_POLLOUT</span>
-<p class="level1">Introduced in 7.28.0
-<p class="level0"><a name="CURLWAITPOLLPRI"></a><span class="nroffip">CURL_WAIT_POLLPRI</span>
-<p class="level1">Introduced in 7.28.0
-<p class="level0"><a name="CURLWRITEFUNCPAUSE"></a><span class="nroffip">CURL_WRITEFUNC_PAUSE</span>
-<p class="level1">Introduced in 7.18.0 <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/libcurl-symbols.pdf b/docs/libcurl/libcurl-symbols.pdf
deleted file mode 100644
index c353e1f57..000000000
--- a/docs/libcurl/libcurl-symbols.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/libcurl-thread.3 b/docs/libcurl/libcurl-thread.3
deleted file mode 100644
index fd5b0e423..000000000
--- a/docs/libcurl/libcurl-thread.3
+++ /dev/null
@@ -1,95 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH libcurl-thread 3 "13 Jul 2015" "libcurl" "libcurl thread safety"
-.SH NAME
-libcurl-thread \- libcurl thread safety
-.SH "Multi-threading with libcurl"
-libcurl is thread safe but has no internal thread synchronization. You may have
-to provide your own locking should you meet any of the thread safety exceptions
-below.
-
-\fBHandles.\fP You must \fBnever\fP share the same handle in multiple threads.
-You can pass the handles around among threads, but you must never use a single
-handle from more than one thread at any given time.
-
-\fBShared objects.\fP You can share certain data between multiple handles by
-using the share interface but you must provide your own locking and set
-\fIcurl_share_setopt(3)\fP CURLSHOPT_LOCKFUNC and CURLSHOPT_UNLOCKFUNC.
-.SH TLS
-If you are accessing HTTPS or FTPS URLs in a multi-threaded manner, you are
-then of course using the underlying SSL library multi-threaded and those libs
-might have their own requirements on this issue. You may need to provide one
-or two functions to allow it to function properly:
-.IP OpenSSL
-http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION
-
-http://curl.haxx.se/libcurl/c/opensslthreadlock.html
-.IP GnuTLS
-http://gnutls.org/manual/html_node/Thread-safety.html
-.IP NSS
-thread-safe already without anything required.
-.IP PolarSSL
-Required actions unknown.
-.IP yassl
-Required actions unknown.
-.IP axTLS
-Required actions unknown.
-.IP Secure-Transport
-The engine is used by libcurl in a way that is fully thread-safe.
-.IP WinSSL
-The engine is used by libcurl in a way that is fully thread-safe.
-.IP wolfSSL
-The engine is used by libcurl in a way that is fully thread-safe.
-.SH "Other areas of caution"
-.IP Signals
-Signals are used for timing out name resolves (during DNS lookup) - when built
-without using either the c-ares or threaded resolver backends. When using
-multiple threads you should set the \fICURLOPT_NOSIGNAL(3)\fP option to 1L for
-all handles. Everything will or might work fine except that timeouts are not
-honored during the DNS lookup - which you can work around by building libcurl
-with c-ares support. c-ares is a library that provides asynchronous name
-resolves. On some platforms, libcurl simply will not function properly
-multi-threaded unless this option is set.
-.IP "Name resolving"
-\fBgethostby* functions and other system calls.\fP These functions, provided
-by your operating system, must be thread safe. It is very important that
-libcurl can find and use thread safe versions of these and other system calls,
-as otherwise it can't function fully thread safe. Some operating systems are
-known to have faulty thread implementations. We have previously received
-problem reports on *BSD (at least in the past, they may be working fine these
-days). Some operating systems that are known to have solid and working thread
-support are Linux, Solaris and Windows.
-.IP "curl_global_* functions"
-These functions are not thread safe. If you are using libcurl with multiple
-threads it is especially important that before use you call
-\fIcurl_global_init(3)\fP or \fIcurl_global_init_mem(3)\fP to explicitly
-initialize the library and its dependents, rather than rely on the "lazy"
-fail-safe initialization that takes place the first time
-\fIcurl_easy_init(3)\fP is called. For an in-depth explanation refer to
-\fIlibcurl(3)\fP section \fBGLOBAL CONSTANTS\fP.
-.IP "Memory functions"
-These functions, provided either by your operating system or your own
-replacements, must be thread safe. You can use \fIcurl_global_init_mem(3)\fP
-to set your own replacement memory functions.
-.IP Non-safe functions
-\fICURLOPT_DNS_USE_GLOBAL_CACHE(3)\fP is not thread-safe.
diff --git a/docs/libcurl/libcurl-thread.html b/docs/libcurl/libcurl-thread.html
deleted file mode 100644
index 9690babf3..000000000
--- a/docs/libcurl/libcurl-thread.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>libcurl-thread man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">libcurl-thread - libcurl thread safety <a name="Multi-threading"></a><h2 class="nroffsh">Multi-threading with libcurl</h2>
-<p class="level0">libcurl is thread safe but has no internal thread synchronization. You may have to provide your own locking should you meet any of the thread safety exceptions below.
-<p class="level0"><span Class="bold">Handles.</span> You must <span Class="bold">never</span> share the same handle in multiple threads. You can pass the handles around among threads, but you must never use a single handle from more than one thread at any given time.
-<p class="level0"><span Class="bold">Shared objects.</span> You can share certain data between multiple handles by using the share interface but you must provide your own locking and set <a Class="emphasis" href="./curl_share_setopt.html">curl_share_setopt</a> CURLSHOPT_LOCKFUNC and CURLSHOPT_UNLOCKFUNC. <a name="TLS"></a><h2 class="nroffsh">TLS</h2>
-<p class="level0">If you are accessing HTTPS or FTPS URLs in a multi-threaded manner, you are then of course using the underlying SSL library multi-threaded and those libs might have their own requirements on this issue. You may need to provide one or two functions to allow it to function properly:
-<p class="level0"><a name="OpenSSL"></a><span class="nroffip">OpenSSL</span>
-<p class="level1"><a href="http://www.openssl.org/docs/crypto/threads.html">http://www.openssl.org/docs/crypto/threads.html</a>&#35;DESCRIPTION
-<p class="level1"><a href="http://curl.haxx.se/libcurl/c/opensslthreadlock.html">http://curl.haxx.se/libcurl/c/opensslthreadlock.html</a>
-<p class="level0"><a name="GnuTLS"></a><span class="nroffip">GnuTLS</span>
-<p class="level1"><a href="http://gnutls.org/manual/html_node/Thread-safety.html">http://gnutls.org/manual/html_node/Thread-safety.html</a>
-<p class="level0"><a name="NSS"></a><span class="nroffip">NSS</span>
-<p class="level1">thread-safe already without anything required.
-<p class="level0"><a name="PolarSSL"></a><span class="nroffip">PolarSSL</span>
-<p class="level1">Required actions unknown.
-<p class="level0"><a name="yassl"></a><span class="nroffip">yassl</span>
-<p class="level1">Required actions unknown.
-<p class="level0"><a name="axTLS"></a><span class="nroffip">axTLS</span>
-<p class="level1">Required actions unknown.
-<p class="level0"><a name="Secure-Transport"></a><span class="nroffip">Secure-Transport</span>
-<p class="level1">The engine is used by libcurl in a way that is fully thread-safe.
-<p class="level0"><a name="WinSSL"></a><span class="nroffip">WinSSL</span>
-<p class="level1">The engine is used by libcurl in a way that is fully thread-safe.
-<p class="level0"><a name="wolfSSL"></a><span class="nroffip">wolfSSL</span>
-<p class="level1">The engine is used by libcurl in a way that is fully thread-safe. <a name="Other"></a><h2 class="nroffsh">Other areas of caution</h2>
-<p class="level0">
-<p class="level0"><a name="Signals"></a><span class="nroffip">Signals</span>
-<p class="level1">Signals are used for timing out name resolves (during DNS lookup) - when built without using either the c-ares or threaded resolver backends. When using multiple threads you should set the <span Class="emphasis">CURLOPT_NOSIGNAL(3)</span> option to 1L for all handles. Everything will or might work fine except that timeouts are not honored during the DNS lookup - which you can work around by building libcurl with c-ares support. c-ares is a library that provides asynchronous name resolves. On some platforms, libcurl simply will not function properly multi-threaded unless this option is set.
-<p class="level0"><a name="Name"></a><span class="nroffip">Name resolving</span>
-<p class="level1"><span Class="bold">gethostby* functions and other system calls.</span> These functions, provided by your operating system, must be thread safe. It is very important that libcurl can find and use thread safe versions of these and other system calls, as otherwise it can't function fully thread safe. Some operating systems are known to have faulty thread implementations. We have previously received problem reports on *BSD (at least in the past, they may be working fine these days). Some operating systems that are known to have solid and working thread support are Linux, Solaris and Windows.
-<p class="level0"><a name="curlglobal"></a><span class="nroffip">curl_global_* functions</span>
-<p class="level1">These functions are not thread safe. If you are using libcurl with multiple threads it is especially important that before use you call <a Class="emphasis" href="./curl_global_init.html">curl_global_init</a> or <a Class="emphasis" href="./curl_global_init_mem.html">curl_global_init_mem</a> to explicitly initialize the library and its dependents, rather than rely on the "lazy" fail-safe initialization that takes place the first time <a Class="emphasis" href="./curl_easy_init.html">curl_easy_init</a> is called. For an in-depth explanation refer to <a Class="emphasis" href="./libcurl.html">libcurl</a> section <span Class="bold">GLOBAL CONSTANTS</span>.
-<p class="level0"><a name="Memory"></a><span class="nroffip">Memory functions</span>
-<p class="level1">These functions, provided either by your operating system or your own replacements, must be thread safe. You can use <a Class="emphasis" href="./curl_global_init_mem.html">curl_global_init_mem</a> to set your own replacement memory functions.
-<p class="level0"><a name="Non-safe"></a><span class="nroffip">Non-safe functions</span>
-<p class="level1"><span Class="emphasis">CURLOPT_DNS_USE_GLOBAL_CACHE(3)</span> is not thread-safe. <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/libcurl-thread.pdf b/docs/libcurl/libcurl-thread.pdf
deleted file mode 100644
index 8656f21cc..000000000
--- a/docs/libcurl/libcurl-thread.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/libcurl-tutorial.3 b/docs/libcurl/libcurl-tutorial.3
index 558652c21..11b019011 100644
--- a/docs/libcurl/libcurl-tutorial.3
+++ b/docs/libcurl/libcurl-tutorial.3
@@ -256,8 +256,58 @@ complication for you. Given simply the URL to a file, libcurl will take care
of all the details needed to get the file moved from one machine to another.
.SH "Multi-threading Issues"
-libcurl is thread safe but there are a few exceptions. Refer to
-\fIlibcurl-thread(3)\fP for more information.
+The first basic rule is that you must \fBnever\fP simultaneously share a
+libcurl handle (be it easy or multi or whatever) between multiple
+threads. Only use one handle in one thread at any time. You can pass the
+handles around among threads, but you must never use a single handle from more
+than one thread at any given time.
+
+libcurl is completely thread safe, except for two issues: signals and SSL/TLS
+handlers. Signals are used for timing out name resolves (during DNS lookup) -
+when built without using either the c-ares or threaded resolver backends.
+
+If you are accessing HTTPS or FTPS URLs in a multi-threaded manner, you are
+then of course using the underlying SSL library multi-threaded and those libs
+might have their own requirements on this issue. Basically, you need to
+provide one or two functions to allow it to function properly. For all
+details, see this:
+
+OpenSSL
+
+ http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION
+
+GnuTLS
+
+ http://gnutls.org/manual/html_node/Thread-safety.html
+
+NSS
+
+ is claimed to be thread-safe already without anything required.
+
+PolarSSL
+
+ Required actions unknown.
+
+yassl
+
+ Required actions unknown.
+
+axTLS
+
+ Required actions unknown.
+
+Secure Transport
+
+ The engine is fully thread-safe, and no additional steps are required.
+
+When using multiple threads you should set the \fICURLOPT_NOSIGNAL(3)\fP
+option to 1 for all handles. Everything will or might work fine except that
+timeouts are not honored during the DNS lookup - which you can work around by
+building libcurl with c-ares support. c-ares is a library that provides
+asynchronous name resolves. On some platforms, libcurl simply will not
+function properly multi-threaded unless this option is set.
+
+Also, note that \fICURLOPT_DNS_USE_GLOBAL_CACHE(3)\fP is not thread-safe.
.SH "When It Doesn't Work"
There will always be times when the transfer fails for some reason. You might
@@ -955,7 +1005,7 @@ or understand incoming cookies and they will just be ignored. However, when
the parser is enabled the cookies will be understood and the cookies will be
kept in memory and used properly in subsequent requests when the same handle
is used. Many times this is enough, and you may not have to save the cookies
-to disk at all. Note that the file you specify to \fICURLOPT_COOKIEFILE(3)\fP
+to disk at all. Note that the file you specify to \ICURLOPT_COOKIEFILE(3)\fP
doesn't have to exist to enable the parser, so a common way to just enable the
parser and not read any cookies is to use the name of a file you know doesn't
exist.
diff --git a/docs/libcurl/libcurl-tutorial.html b/docs/libcurl/libcurl-tutorial.html
index 70e34aaa9..43bfc249f 100644
--- a/docs/libcurl/libcurl-tutorial.html
+++ b/docs/libcurl/libcurl-tutorial.html
@@ -4,20 +4,15 @@
<title>libcurl-tutorial man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -101,9 +96,9 @@ p.roffit {
<p class="level0">If you at any point would like to blank all previously set options for a single easy handle, you can call <a Class="emphasis" href="./curl_easy_reset.html">curl_easy_reset</a> and you can also make a clone of an easy handle (with all its set options) using <a Class="emphasis" href="./curl_easy_duphandle.html">curl_easy_duphandle</a>.
<p class="level0">Many of the options you set in libcurl are "strings", pointers to data terminated with a zero byte. When you set strings with <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a>, libcurl makes its own copy so that they don't need to be kept around in your application after being set[4].
<p class="level0">One of the most basic properties to set in the handle is the URL. You set your preferred URL to transfer with <span Class="emphasis">CURLOPT_URL(3)</span> in a manner similar to:
-<p class="level0"><pre class="level0">
-&nbsp;curl_easy_setopt(handle, CURLOPT_URL, "<a href="http://domain.com/">http://domain.com/</a>");
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;curl_easy_setopt(handle, CURLOPT_URL, "<a href="http://domain.com/">http://domain.com/</a>");
+ </pre>
<p class="level0">
<p class="level0">Let's assume for a while that you want to receive data as the URL identifies a remote resource you want to get here. Since you write a sort of application that needs this transfer, I assume that you would like to get the data passed to you directly instead of simply getting it passed to stdout. So, you write your own function that matches this prototype:
@@ -124,7 +119,25 @@ p.roffit {
<p class="level0">If you then want to transfer another file, the handle is ready to be used again. Mind you, it is even preferred that you re-use an existing handle if you intend to make another transfer. libcurl will then attempt to re-use the previous connection.
<p class="level0">For some protocols, downloading a file can involve a complicated process of logging in, setting the transfer mode, changing the current directory and finally transferring the file data. libcurl takes care of all that complication for you. Given simply the URL to a file, libcurl will take care of all the details needed to get the file moved from one machine to another.
<p class="level0"><a name="Multi-threading"></a><h2 class="nroffsh">Multi-threading Issues</h2>
-<p class="level0">libcurl is thread safe but there are a few exceptions. Refer to <a Class="emphasis" href="./libcurl-thread.html">libcurl-thread</a> for more information.
+<p class="level0">The first basic rule is that you must <span Class="bold">never</span> simultaneously share a libcurl handle (be it easy or multi or whatever) between multiple threads. Only use one handle in one thread at any time. You can pass the handles around among threads, but you must never use a single handle from more than one thread at any given time.
+<p class="level0">libcurl is completely thread safe, except for two issues: signals and SSL/TLS handlers. Signals are used for timing out name resolves (during DNS lookup) - when built without using either the c-ares or threaded resolver backends.
+<p class="level0">If you are accessing HTTPS or FTPS URLs in a multi-threaded manner, you are then of course using the underlying SSL library multi-threaded and those libs might have their own requirements on this issue. Basically, you need to provide one or two functions to allow it to function properly. For all details, see this:
+<p class="level0">OpenSSL
+<p class="level0">&nbsp;<a href="http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION">http://www.openssl.org/docs/crypto/threads.html#DESCRIPTION</a>
+<p class="level0">GnuTLS
+<p class="level0">&nbsp;<a href="http://gnutls.org/manual/html_node/Thread-safety.html">http://gnutls.org/manual/html_node/Thread-safety.html</a>
+<p class="level0">NSS
+<p class="level0">&nbsp;is claimed to be thread-safe already without anything required.
+<p class="level0">PolarSSL
+<p class="level0">&nbsp;Required actions unknown.
+<p class="level0">yassl
+<p class="level0">&nbsp;Required actions unknown.
+<p class="level0">axTLS
+<p class="level0">&nbsp;Required actions unknown.
+<p class="level0">Secure Transport
+<p class="level0">&nbsp;The engine is fully thread-safe, and no additional steps are required.
+<p class="level0">When using multiple threads you should set the <span Class="emphasis">CURLOPT_NOSIGNAL(3)</span> option to 1 for all handles. Everything will or might work fine except that timeouts are not honored during the DNS lookup - which you can work around by building libcurl with c-ares support. c-ares is a library that provides asynchronous name resolves. On some platforms, libcurl simply will not function properly multi-threaded unless this option is set.
+<p class="level0">Also, note that <span Class="emphasis">CURLOPT_DNS_USE_GLOBAL_CACHE(3)</span> is not thread-safe.
<p class="level0"><a name="When"></a><h2 class="nroffsh">When It Doesn't Work</h2>
<p class="level0">There will always be times when the transfer fails for some reason. You might have set the wrong libcurl option or misunderstood what the libcurl option actually does, or the remote server might return non-standard replies that confuse the library which then confuses your program.
<p class="level0">There's one golden rule when these things occur: set the <span Class="emphasis">CURLOPT_VERBOSE(3)</span> option to 1. It'll cause the library to spew out the entire protocol details it sends, some internal info and some received protocol data as well (especially when using FTP). If you're using HTTP, adding the headers in the received output to study is also a clever way to get a better understanding why the server behaves the way it does. Include headers in the normal body output with <span Class="emphasis">CURLOPT_HEADER(3)</span> set 1.
@@ -142,10 +155,10 @@ p.roffit {
<p class="level0">Tell libcurl that we want to upload:
<p class="level0">&nbsp;curl_easy_setopt(easyhandle, CURLOPT_UPLOAD, 1L);
<p class="level0">A few protocols won't behave properly when uploads are done without any prior knowledge of the expected file size. So, set the upload file size using the <span Class="emphasis">CURLOPT_INFILESIZE_LARGE(3)</span> for all known file sizes like this[1]:
-<p class="level0"><pre class="level0">
-&nbsp;/* in this example, file_size must be an curl_off_t variable */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_INFILESIZE_LARGE, file_size);
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;/* in this example, file_size must be an curl_off_t variable */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_INFILESIZE_LARGE, file_size);
+ </pre>
<p class="level0">
<p class="level0">When you call <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> this time, it'll perform all the necessary operations and when it has invoked the upload it'll call your supplied callback to get the data to upload. The program should return as much data as possible in every invoke, as that is likely to make the upload perform as fast as possible. The callback should return the number of bytes it wrote in the buffer. Returning 0 will signal the end of the upload.
@@ -161,11 +174,11 @@ p.roffit {
<p class="level0">There's a long time Unix "standard" way of storing FTP user names and passwords, namely in the $HOME/.netrc file. The file should be made private so that only the user may read it (see also the "Security Considerations" chapter), as it might contain the password in plain text. libcurl has the ability to use this file to figure out what set of user name and password to use for a particular host. As an extension to the normal functionality, libcurl also supports this file for non-FTP protocols such as HTTP. To make curl use this file, use the <span Class="emphasis">CURLOPT_NETRC(3)</span> option:
<p class="level0">&nbsp;curl_easy_setopt(easyhandle, CURLOPT_NETRC, 1L);
<p class="level0">And a very basic example of how such a .netrc file may look like:
-<p class="level0"><pre class="level0">
-&nbsp;machine myhost.mydomain.com
-&nbsp;login userlogin
-&nbsp;password secretword
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;machine myhost.mydomain.com
+ &nbsp;login userlogin
+ &nbsp;password secretword
+ </pre>
<p class="level0">
<p class="level0">All these examples have been cases where the password has been optional, or at least you could leave it out and have libcurl attempt to do its job without it. There are times when the password isn't optional, like when you're using an SSL private key for secure transfers.
@@ -184,77 +197,65 @@ p.roffit {
<p class="level0"><a name="HTTP"></a><h2 class="nroffsh">HTTP POSTing</h2>
<p class="level0">We get many questions regarding how to issue HTTP POSTs with libcurl the proper way. This chapter will thus include examples using both different versions of HTTP POST that libcurl supports.
<p class="level0">The first version is the simple POST, the most common version, that most HTML pages using the &lt;form&gt; tag uses. We provide a pointer to the data and tell libcurl to post it all to the remote site:
-<p class="level0"><pre class="level0">
-&nbsp; char *data="name=daniel&project=curl";
-&nbsp; curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, data);
-&nbsp; curl_easy_setopt(easyhandle, CURLOPT_URL, "<a href="http://posthere.com/">http://posthere.com/</a>");
-&nbsp;
-&nbsp; curl_easy_perform(easyhandle); /* post away! */
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; char *data="name=daniel&project=curl";
+ &nbsp; curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, data);
+ &nbsp; curl_easy_setopt(easyhandle, CURLOPT_URL, "<a href="http://posthere.com/">http://posthere.com/</a>");
+ <p class="level0">&nbsp; curl_easy_perform(easyhandle); /* post away! */
+ </pre>
<p class="level0">
<p class="level0">Simple enough, huh? Since you set the POST options with the <span Class="emphasis">CURLOPT_POSTFIELDS(3)</span>, this automatically switches the handle to use POST in the upcoming request.
<p class="level0">Ok, so what if you want to post binary data that also requires you to set the Content-Type: header of the post? Well, binary posts prevent libcurl from being able to do strlen() on the data to figure out the size, so therefore we must tell libcurl the size of the post data. Setting headers in libcurl requests are done in a generic way, by building a list of our own headers and then passing that list to libcurl.
-<p class="level0"><pre class="level0">
-&nbsp;struct curl_slist *headers=NULL;
-&nbsp;headers = curl_slist_append(headers, "Content-Type: text/xml");
-&nbsp;
-&nbsp;/* post binary data */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, binaryptr);
-&nbsp;
-&nbsp;/* set the size of the postfields data */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDSIZE, 23L);
-&nbsp;
-&nbsp;/* pass our list of custom made headers */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER, headers);
-&nbsp;
-&nbsp;curl_easy_perform(easyhandle); /* post away! */
-&nbsp;
-&nbsp;curl_slist_free_all(headers); /* free the header list */
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;struct curl_slist *headers=NULL;
+ &nbsp;headers = curl_slist_append(headers, "Content-Type: text/xml");
+ <p class="level0">&nbsp;/* post binary data */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDS, binaryptr);
+ <p class="level0">&nbsp;/* set the size of the postfields data */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_POSTFIELDSIZE, 23L);
+ <p class="level0">&nbsp;/* pass our list of custom made headers */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER, headers);
+ <p class="level0">&nbsp;curl_easy_perform(easyhandle); /* post away! */
+ <p class="level0">&nbsp;curl_slist_free_all(headers); /* free the header list */
+ </pre>
<p class="level0">
<p class="level0">While the simple examples above cover the majority of all cases where HTTP POST operations are required, they don't do multi-part formposts. Multi-part formposts were introduced as a better way to post (possibly large) binary data and were first documented in the <a href="http://www.ietf.org/rfc/rfc1867.txt">RFC 1867</a> (updated in RFC2388). They're called multi-part because they're built by a chain of parts, each part being a single unit of data. Each part has its own name and contents. You can in fact create and post a multi-part formpost with the regular libcurl POST support described above, but that would require that you build a formpost yourself and provide to libcurl. To make that easier, libcurl provides <a Class="emphasis" href="./curl_formadd.html">curl_formadd</a>. Using this function, you add parts to the form. When you're done adding parts, you post the whole form.
<p class="level0">The following example sets two simple text parts with plain textual contents, and then a file with binary contents and uploads the whole thing.
-<p class="level0"><pre class="level0">
-&nbsp;struct curl_httppost *post=NULL;
-&nbsp;struct curl_httppost *last=NULL;
-&nbsp;curl_formadd(&post, &last,
-&nbsp; CURLFORM_COPYNAME, "name",
-&nbsp; CURLFORM_COPYCONTENTS, "daniel", CURLFORM_END);
-&nbsp;curl_formadd(&post, &last,
-&nbsp; CURLFORM_COPYNAME, "project",
-&nbsp; CURLFORM_COPYCONTENTS, "curl", CURLFORM_END);
-&nbsp;curl_formadd(&post, &last,
-&nbsp; CURLFORM_COPYNAME, "logotype-image",
-&nbsp; CURLFORM_FILECONTENT, "curl.png", CURLFORM_END);
-&nbsp;
-&nbsp;/* Set the form info */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPPOST, post);
-&nbsp;
-&nbsp;curl_easy_perform(easyhandle); /* post away! */
-&nbsp;
-&nbsp;/* free the post data again */
-&nbsp;curl_formfree(post);
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;struct curl_httppost *post=NULL;
+ &nbsp;struct curl_httppost *last=NULL;
+ &nbsp;curl_formadd(&post, &last,
+ &nbsp; CURLFORM_COPYNAME, "name",
+ &nbsp; CURLFORM_COPYCONTENTS, "daniel", CURLFORM_END);
+ &nbsp;curl_formadd(&post, &last,
+ &nbsp; CURLFORM_COPYNAME, "project",
+ &nbsp; CURLFORM_COPYCONTENTS, "curl", CURLFORM_END);
+ &nbsp;curl_formadd(&post, &last,
+ &nbsp; CURLFORM_COPYNAME, "logotype-image",
+ &nbsp; CURLFORM_FILECONTENT, "curl.png", CURLFORM_END);
+ <p class="level0">&nbsp;/* Set the form info */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPPOST, post);
+ <p class="level0">&nbsp;curl_easy_perform(easyhandle); /* post away! */
+ <p class="level0">&nbsp;/* free the post data again */
+ &nbsp;curl_formfree(post);
+ </pre>
<p class="level0">
<p class="level0">Multipart formposts are chains of parts using MIME-style separators and headers. It means that each one of these separate parts get a few headers set that describe the individual content-type, size etc. To enable your application to handicraft this formpost even more, libcurl allows you to supply your own set of custom headers to such an individual form part. You can of course supply headers to as many parts as you like, but this little example will show how you set headers to one specific part when you add that to the post handle:
-<p class="level0"><pre class="level0">
-&nbsp;struct curl_slist *headers=NULL;
-&nbsp;headers = curl_slist_append(headers, "Content-Type: text/xml");
-&nbsp;
-&nbsp;curl_formadd(&post, &last,
-&nbsp; CURLFORM_COPYNAME, "logotype-image",
-&nbsp; CURLFORM_FILECONTENT, "curl.xml",
-&nbsp; CURLFORM_CONTENTHEADER, headers,
-&nbsp; CURLFORM_END);
-&nbsp;
-&nbsp;curl_easy_perform(easyhandle); /* post away! */
-&nbsp;
-&nbsp;curl_formfree(post); /* free post */
-&nbsp;curl_slist_free_all(headers); /* free custom header list */
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;struct curl_slist *headers=NULL;
+ &nbsp;headers = curl_slist_append(headers, "Content-Type: text/xml");
+ <p class="level0">&nbsp;curl_formadd(&post, &last,
+ &nbsp; CURLFORM_COPYNAME, "logotype-image",
+ &nbsp; CURLFORM_FILECONTENT, "curl.xml",
+ &nbsp; CURLFORM_CONTENTHEADER, headers,
+ &nbsp; CURLFORM_END);
+ <p class="level0">&nbsp;curl_easy_perform(easyhandle); /* post away! */
+ <p class="level0">&nbsp;curl_formfree(post); /* free post */
+ &nbsp;curl_slist_free_all(headers); /* free custom header list */
+ </pre>
<p class="level0">
<p class="level0">Since all options on an easyhandle are "sticky", they remain the same until changed even if you do call <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a>, you may need to tell curl to go back to a plain GET request if you intend to do one as your next request. You force an easyhandle to go back to GET by using the <span Class="emphasis">CURLOPT_HTTPGET(3)</span> option:
@@ -266,13 +267,13 @@ p.roffit {
<p class="level0">Switch on the progress meter by, oddly enough, setting <span Class="emphasis">CURLOPT_NOPROGRESS(3)</span> to zero. This option is set to 1 by default.
<p class="level0">For most applications however, the built-in progress meter is useless and what instead is interesting is the ability to specify a progress callback. The function pointer you pass to libcurl will then be called on irregular intervals with information about the current transfer.
<p class="level0">Set the progress callback by using <span Class="emphasis">CURLOPT_PROGRESSFUNCTION(3)</span>. And pass a pointer to a function that matches this prototype:
-<p class="level0"><pre class="level0">
-&nbsp;int progress_callback(void *clientp,
-&nbsp; double dltotal,
-&nbsp; double dlnow,
-&nbsp; double ultotal,
-&nbsp; double ulnow);
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp;int progress_callback(void *clientp,
+ &nbsp; double dltotal,
+ &nbsp; double dlnow,
+ &nbsp; double ultotal,
+ &nbsp; double ulnow);
+ </pre>
<p class="level0">
<p class="level0">If any of the input arguments is unknown, a 0 will be passed. The first argument, the 'clientp' is the pointer you pass to libcurl with <span Class="emphasis">CURLOPT_PROGRESSDATA(3)</span>. libcurl won't touch it.
@@ -281,15 +282,15 @@ p.roffit {
<p class="level0">There's basically only one thing to keep in mind when using C++ instead of C when interfacing libcurl:
<p class="level0">The callbacks CANNOT be non-static class member functions
<p class="level0">Example C++ code:
-<p class="level0"><pre class="level0">
-class AClass {
-&nbsp; static size_t write_data(void *ptr, size_t size, size_t nmemb,
-&nbsp; void *ourpointer)
-&nbsp; {
-&nbsp; /* do what you want with the data */
-&nbsp; }
-&nbsp;}
-</pre>
+<p class="level0"><pre>
+<p class="level0">class AClass {
+ &nbsp; static size_t write_data(void *ptr, size_t size, size_t nmemb,
+ &nbsp; void *ourpointer)
+ &nbsp; {
+ &nbsp; /* do what you want with the data */
+ &nbsp; }
+ &nbsp;}
+ </pre>
<p class="level0">
<p class="level0"><a name="Proxies"></a><h2 class="nroffsh">Proxies</h2>
@@ -372,26 +373,22 @@ class AClass {
<p class="level1">
<p class="level0"><a name="Modify"></a><span class="nroffip">Modify Headers</span>
<p class="level1">HTTP-like protocols pass a series of headers to the server when doing the request, and you're free to pass any amount of extra headers that you think fit. Adding headers is this easy:
-<p class="level1"><pre class="level1">
-&nbsp;struct curl_slist *headers=NULL; /* init to NULL is important */
-&nbsp;
-&nbsp;headers = curl_slist_append(headers, "Hey-server-hey: how are you?");
-&nbsp;headers = curl_slist_append(headers, "X-silly-content: yes");
-&nbsp;
-&nbsp;/* pass our list of custom made headers */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER, headers);
-&nbsp;
-&nbsp;curl_easy_perform(easyhandle); /* transfer http */
-&nbsp;
-&nbsp;curl_slist_free_all(headers); /* free the header list */
-</pre>
+<p class="level1"><pre>
+<p class="level1">&nbsp;struct curl_slist *headers=NULL; /* init to NULL is important */
+ <p class="level1">&nbsp;headers = curl_slist_append(headers, "Hey-server-hey: how are you?");
+ &nbsp;headers = curl_slist_append(headers, "X-silly-content: yes");
+ <p class="level1">&nbsp;/* pass our list of custom made headers */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_HTTPHEADER, headers);
+ <p class="level1">&nbsp;curl_easy_perform(easyhandle); /* transfer http */
+ <p class="level1">&nbsp;curl_slist_free_all(headers); /* free the header list */
+ </pre>
<p class="level1">
<p class="level1">... and if you think some of the internally generated headers, such as Accept: or Host: don't contain the data you want them to contain, you can replace them by simply setting them too:
-<p class="level1"><pre class="level1">
-&nbsp;headers = curl_slist_append(headers, "Accept: Agent-007");
-&nbsp;headers = curl_slist_append(headers, "Host: munged.host.line");
-</pre>
+<p class="level1"><pre>
+<p class="level1">&nbsp;headers = curl_slist_append(headers, "Accept: Agent-007");
+ &nbsp;headers = curl_slist_append(headers, "Host: munged.host.line");
+ </pre>
<p class="level1">
<p class="level1">
@@ -414,16 +411,13 @@ class AClass {
<p class="level1">Not all protocols are HTTP-like, and thus the above may not help you when you want to make, for example, your FTP transfers to behave differently.
<p class="level1">Sending custom commands to a FTP server means that you need to send the commands exactly as the FTP server expects them (<a href="http://www.ietf.org/rfc/rfc959.txt">RFC 959</a> is a good guide here), and you can only use commands that work on the control-connection alone. All kinds of commands that require data interchange and thus need a data-connection must be left to libcurl's own judgement. Also be aware that libcurl will do its very best to change directory to the target directory before doing any transfer, so if you change directory (with CWD or similar) you might confuse libcurl and then it might not attempt to transfer the file in the correct remote directory.
<p class="level1">A little example that deletes a given file before an operation:
-<p class="level1"><pre class="level1">
-&nbsp;headers = curl_slist_append(headers, "DELE file-to-remove");
-&nbsp;
-&nbsp;/* pass the list of custom commands to the handle */
-&nbsp;curl_easy_setopt(easyhandle, CURLOPT_QUOTE, headers);
-&nbsp;
-&nbsp;curl_easy_perform(easyhandle); /* transfer ftp data! */
-&nbsp;
-&nbsp;curl_slist_free_all(headers); /* free the header list */
-</pre>
+<p class="level1"><pre>
+<p class="level1">&nbsp;headers = curl_slist_append(headers, "DELE file-to-remove");
+ <p class="level1">&nbsp;/* pass the list of custom commands to the handle */
+ &nbsp;curl_easy_setopt(easyhandle, CURLOPT_QUOTE, headers);
+ <p class="level1">&nbsp;curl_easy_perform(easyhandle); /* transfer ftp data! */
+ <p class="level1">&nbsp;curl_slist_free_all(headers); /* free the header list */
+ </pre>
<p class="level1">
<p class="level1">If you would instead want this operation (or chain of operations) to happen _after_ the data transfer took place the option to <a Class="emphasis" href="./curl_easy_setopt.html">curl_easy_setopt</a> would instead be called <span Class="emphasis">CURLOPT_POSTQUOTE(3)</span> and used the exact same way.
@@ -441,7 +435,7 @@ class AClass {
<p class="level0">&nbsp;curl_easy_setopt(easyhandle, CURLOPT_COOKIE, "name1=var1; name2=var2;");
<p class="level0">In many cases, that is not enough. You might want to dynamically save whatever cookies the remote server passes to you, and make sure those cookies are then used accordingly on later requests.
<p class="level0">One way to do this, is to save all headers you receive in a plain file and when you make a request, you tell libcurl to read the previous headers to figure out which cookies to use. Set the header file to read cookies from with <span Class="emphasis">CURLOPT_COOKIEFILE(3)</span>.
-<p class="level0">The <span Class="emphasis">CURLOPT_COOKIEFILE(3)</span> option also automatically enables the cookie parser in libcurl. Until the cookie parser is enabled, libcurl will not parse or understand incoming cookies and they will just be ignored. However, when the parser is enabled the cookies will be understood and the cookies will be kept in memory and used properly in subsequent requests when the same handle is used. Many times this is enough, and you may not have to save the cookies to disk at all. Note that the file you specify to <span Class="emphasis">CURLOPT_COOKIEFILE(3)</span> doesn't have to exist to enable the parser, so a common way to just enable the parser and not read any cookies is to use the name of a file you know doesn't exist.
+<p class="level0">The <span Class="emphasis">CURLOPT_COOKIEFILE(3)</span> option also automatically enables the cookie parser in libcurl. Until the cookie parser is enabled, libcurl will not parse or understand incoming cookies and they will just be ignored. However, when the parser is enabled the cookies will be understood and the cookies will be kept in memory and used properly in subsequent requests when the same handle is used. Many times this is enough, and you may not have to save the cookies to disk at all. Note that the file you specify to ICURLOPT_COOKIEFILE(3)</span> doesn't have to exist to enable the parser, so a common way to just enable the parser and not read any cookies is to use the name of a file you know doesn't exist.
<p class="level0">If you would rather use existing cookies that you've previously received with your Netscape or Mozilla browsers, you can make libcurl use that cookie file as input. The <span Class="emphasis">CURLOPT_COOKIEFILE(3)</span> is used for that too, as libcurl will automatically find out what kind of file it is and act accordingly.
<p class="level0">Perhaps the most advanced cookie operation libcurl offers, is saving the entire internal cookie state back into a Netscape/Mozilla formatted cookie file. We call that the cookie-jar. When you set a file name with <span Class="emphasis">CURLOPT_COOKIEJAR(3)</span>, that file name will be created and all received cookies will be stored in it when <a Class="emphasis" href="./curl_easy_cleanup.html">curl_easy_cleanup</a> is called. This enables cookies to get passed on properly between multiple handles without any information getting lost.
<p class="level0"><a name="FTP"></a><h2 class="nroffsh">FTP Peculiarities We Need</h2>
diff --git a/docs/libcurl/libcurl-tutorial.pdf b/docs/libcurl/libcurl-tutorial.pdf
index f93ccab96..564b139bf 100644
--- a/docs/libcurl/libcurl-tutorial.pdf
+++ b/docs/libcurl/libcurl-tutorial.pdf
Binary files differ
diff --git a/docs/libcurl/libcurl.3 b/docs/libcurl/libcurl.3
index 05034c98e..39bcccd43 100644
--- a/docs/libcurl/libcurl.3
+++ b/docs/libcurl/libcurl.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -97,8 +97,8 @@ Unix-like operating system that ship libcurl as part of their distributions
often don't provide the curl-config tool, but simply install the library and
headers in the common path for this purpose.
-Many Linux and similar systems use pkg-config to provide build and link
-options about libraries and libcurl supports that as well.
+Many Linux and similar sytems use pkg-config to provide build and link options
+about libraries and libcurl supports that as well.
.SH "LIBCURL SYMBOL NAMES"
All public functions in the libcurl interface are prefixed with 'curl_' (with
a lowercase c). You can find other functions in the library source code, but
@@ -111,8 +111,13 @@ libcurl works
.B exactly
the same, on any of the platforms it compiles and builds on.
.SH "THREADS"
-libcurl is thread safe but there are a few exceptions. Refer to
-\fIlibcurl-thread(3)\fP for more information.
+Never ever call curl-functions simultaneously using the same handle from
+several threads. libcurl is thread-safe and can be used in any number of
+threads, but you must use separate curl handles if you want to use libcurl in
+more than one thread simultaneously.
+
+The global environment functions are not thread-safe. See \fBGLOBAL
+CONSTANTS\fP below for details.
.SH "PERSISTENT CONNECTIONS"
Persistent connections means that libcurl can re-use the same connection for
diff --git a/docs/libcurl/libcurl.html b/docs/libcurl/libcurl.html
index 6c4f902b8..c836e8a1a 100644
--- a/docs/libcurl/libcurl.html
+++ b/docs/libcurl/libcurl.html
@@ -4,20 +4,15 @@
<title>libcurl man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -82,11 +77,12 @@ p.roffit {
<p class="level0">curl-config is added to make it easier for applications to link with libcurl and developers to learn about libcurl and how to use it.
<p class="level0">Run 'curl-config --libs' to get the (additional) linker options you need to link with the particular version of libcurl you've installed. See the <span Class="emphasis">curl-config(1)</span> man page for further details.
<p class="level0">Unix-like operating system that ship libcurl as part of their distributions often don't provide the curl-config tool, but simply install the library and headers in the common path for this purpose.
-<p class="level0">Many Linux and similar systems use pkg-config to provide build and link options about libraries and libcurl supports that as well. <a name="LIBCURL"></a><h2 class="nroffsh">LIBCURL SYMBOL NAMES</h2>
+<p class="level0">Many Linux and similar sytems use pkg-config to provide build and link options about libraries and libcurl supports that as well. <a name="LIBCURL"></a><h2 class="nroffsh">LIBCURL SYMBOL NAMES</h2>
<p class="level0">All public functions in the libcurl interface are prefixed with 'curl_' (with a lowercase c). You can find other functions in the library source code, but other prefixes indicate that the functions are private and may change without further notice in the next release.
<p class="level0">Only use documented functions and functionality! <a name="PORTABILITY"></a><h2 class="nroffsh">PORTABILITY</h2>
<p class="level0">libcurl works <span Class="bold">exactly</span> the same, on any of the platforms it compiles and builds on. <a name="THREADS"></a><h2 class="nroffsh">THREADS</h2>
-<p class="level0">libcurl is thread safe but there are a few exceptions. Refer to <a Class="emphasis" href="./libcurl-thread.html">libcurl-thread</a> for more information.
+<p class="level0">Never ever call curl-functions simultaneously using the same handle from several threads. libcurl is thread-safe and can be used in any number of threads, but you must use separate curl handles if you want to use libcurl in more than one thread simultaneously.
+<p class="level0">The global environment functions are not thread-safe. See <span class="bold">GLOBAL CONSTANTS</span> below for details.
<p class="level0"><a name="PERSISTENT"></a><h2 class="nroffsh">PERSISTENT CONNECTIONS</h2>
<p class="level0">Persistent connections means that libcurl can re-use the same connection for several transfers, if the conditions are right.
<p class="level0">libcurl will <span Class="bold">always</span> attempt to use persistent connections. Whenever you use <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> or <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a> etc, libcurl will attempt to use an existing connection to do the transfer, and if none exists it'll open a new one that will be subject for re-use on a possible following call to <a Class="emphasis" href="./curl_easy_perform.html">curl_easy_perform</a> or <a Class="emphasis" href="./curl_multi_perform.html">curl_multi_perform</a>.
diff --git a/docs/libcurl/libcurl.pdf b/docs/libcurl/libcurl.pdf
index 46c77107b..387509809 100644
--- a/docs/libcurl/libcurl.pdf
+++ b/docs/libcurl/libcurl.pdf
Binary files differ
diff --git a/docs/libcurl/mksymbolsmanpage.pl b/docs/libcurl/mksymbolsmanpage.pl
deleted file mode 100644
index 1bca4d071..000000000
--- a/docs/libcurl/mksymbolsmanpage.pl
+++ /dev/null
@@ -1,93 +0,0 @@
-#!/usr/bin/perl
-# ***************************************************************************
-# * _ _ ____ _
-# * Project ___| | | | _ \| |
-# * / __| | | | |_) | |
-# * | (__| |_| | _ <| |___
-# * \___|\___/|_| \_\_____|
-# *
-# * Copyright (C) 2015, 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 http://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.
-# *
-# ***************************************************************************
-
-my $version="7.41.0";
-
-use POSIX qw(strftime);
-my $date = strftime "%b %e, %Y", localtime;
-my $year = strftime "%Y", localtime;
-
-print <<HEADER
-.\\" **************************************************************************
-.\\" * _ _ ____ _
-.\\" * Project ___| | | | _ \\| |
-.\\" * / __| | | | |_) | |
-.\\" * | (__| |_| | _ <| |___
-.\\" * \\___|\\___/|_| \\_\\_____|
-.\\" *
-.\\" * Copyright (C) 1998 - $year, 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 http://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.
-.\\" *
-.\\" **************************************************************************
-.TH libcurl-symbols 3 "$date" "libcurl $version" "libcurl symbols"
-.SH NAME
-libcurl-symbols \\- libcurl symbol version information
-.SH "libcurl symbols"
-This man page details version information for public symbols provided in the
-libcurl header files. This lists the first version in which the symbol was
-introduced and for some symbols two additional information pieces:
-
-The first version in which the symbol is marked "deprecated" - meaning that
-since that version no new code should be written to use the symbol as it is
-marked for getting removed in a future.
-
-The last version that featured the specific symbol. Using the symbol in source
-code will make it no longer compile error-free after that specified version.
-
-This man page is automatically generated from the symbols-in-versions file.
-HEADER
- ;
-
-while(<STDIN>) {
- if($_ =~ /^(CURL[A-Z0-9_.]*) *(.*)/) {
- my ($symbol, $rest)=($1,$2);
- my ($intro, $dep, $rem);
- if($rest =~ s/^([0-9.]*) *//) {
- $intro = $1;
- }
- if($rest =~ s/^([0-9.]*) *//) {
- $dep = $1;
- }
- if($rest =~ s/^([0-9.]*) *//) {
- $rem = $1;
- }
- print ".IP $symbol\nIntroduced in $intro\n";
- if($dep) {
- print "Deprecated since $dep\n";
- }
- if($rem) {
- print "Last used in $dep\n";
- }
- }
-
-}
diff --git a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html
index c7accdc18..7650c0016 100644
--- a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html
+++ b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE - chunk length threshold for pipelining <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE, long size); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long with a <span Class="bold">size</span> in bytes. If a pipelined connection is currently processing a chunked (Transfer-encoding: chunked) request with a current chunk length larger than <a Class="emphasis" href="./CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</a>, that pipeline will not be considered for additional requests, even if it is shorter than <a Class="emphasis" href="./CURLMOPT_MAX_PIPELINE_LENGTH.html">CURLMOPT_MAX_PIPELINE_LENGTH</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value is 0, which means that the penalization is inactive. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf
index a722e09d7..8584f68be 100644
--- a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf
+++ b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html
index e5edaaf2c..b4881909e 100644
--- a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html
+++ b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE - size threshold for pipelining penalty <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE, long size); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long with a <span Class="bold">size</span> in bytes. If a pipelined connection is currently processing a request with a Content-Length larger than this <a Class="emphasis" href="./CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</a>, that pipeline will then not be considered for additional requests, even if it is shorter than <a Class="emphasis" href="./CURLMOPT_MAX_PIPELINE_LENGTH.html">CURLMOPT_MAX_PIPELINE_LENGTH</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value is 0, which means that the size penalization is inactive. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf
index 9d4bf169f..3740c06a5 100644
--- a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf
+++ b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.html b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.html
index cf82800ce..aa7bfba2c 100644
--- a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.html
+++ b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_MAXCONNECTS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_MAXCONNECTS - set size of connection cache <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAXCONNECTS, long max); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long indicating the <span Class="bold">max</span>. The set number will be used as the maximum amount of simultaneously open connections that libcurl may keep in its connection cache after completed use. By default libcurl will enlarge the size for each added easy handle to make it fit 4 times the number of added easy handles.
<p class="level0">By setting this option, you can prevent the cache size from growing beyond the limit set by you.
diff --git a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.pdf b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.pdf
index e68667b53..75fab1e03 100644
--- a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.pdf
+++ b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3 b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
index 7522d4375..778934737 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -29,9 +29,8 @@ CURLMOPT_MAX_HOST_CONNECTIONS \- set max number of connections to a single host
CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_HOST_CONNECTIONS, long max);
.SH DESCRIPTION
Pass a long to indicate \fBmax\fP. The set number will be used as the maximum
-amount of simultaneously open connections to a single host (a host being the
-same as a host name + port number pair). For each new session to a host,
-libcurl will open a new connection up to the limit set by
+amount of simultaneously open connections to a single host. For each new
+session to a host, libcurl will open a new connection up to the limit set by
\fICURLMOPT_MAX_HOST_CONNECTIONS(3)\fP. When the limit is reached, the
sessions will be pending until a connection becomes available. If
\fICURLMOPT_PIPELINING(3)\fP is enabled, libcurl will try to pipeline if the
@@ -41,9 +40,6 @@ The default \fBmax\fP value is 0, unlimited. However, for backwards
compatibility, setting it to 0 when \fICURLMOPT_PIPELINING(3)\fP is 1 will not
be treated as unlimited. Instead it will open only 1 connection and try to
pipeline on it.
-
-This set limit is also used for proxy connections, and then the proxy is
-considered to be the host for which this limit counts.
.SH DEFAULT
0
.SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.html b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.html
index 5c6d85cb5..ddcb77eb7 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.html
+++ b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_MAX_HOST_CONNECTIONS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,11 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_MAX_HOST_CONNECTIONS - set max number of connections to a single host <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_HOST_CONNECTIONS, long max); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a long to indicate <span Class="bold">max</span>. The set number will be used as the maximum amount of simultaneously open connections to a single host (a host being the same as a host name + port number pair). For each new session to a host, libcurl will open a new connection up to the limit set by <a Class="emphasis" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>. When the limit is reached, the sessions will be pending until a connection becomes available. If <a Class="emphasis" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a> is enabled, libcurl will try to pipeline if the host is capable of it.
-<p class="level0">The default <span Class="bold">max</span> value is 0, unlimited. However, for backwards compatibility, setting it to 0 when <a Class="emphasis" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a> is 1 will not be treated as unlimited. Instead it will open only 1 connection and try to pipeline on it.
-<p class="level0">This set limit is also used for proxy connections, and then the proxy is considered to be the host for which this limit counts. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">Pass a long to indicate <span Class="bold">max</span>. The set number will be used as the maximum amount of simultaneously open connections to a single host. For each new session to a host, libcurl will open a new connection up to the limit set by <a Class="emphasis" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>. When the limit is reached, the sessions will be pending until a connection becomes available. If <a Class="emphasis" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a> is enabled, libcurl will try to pipeline if the host is capable of it.
+<p class="level0">The default <span Class="bold">max</span> value is 0, unlimited. However, for backwards compatibility, setting it to 0 when <a Class="emphasis" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a> is 1 will not be treated as unlimited. Instead it will open only 1 connection and try to pipeline on it. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.pdf b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.pdf
index 1a5f3fb79..1b1dbd314 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.pdf
+++ b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.html b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.html
index d2fb91d38..f54311279 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.html
+++ b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_MAX_PIPELINE_LENGTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_MAX_PIPELINE_LENGTH - maximum number of requests in a pipeline <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_PIPELINE_LENGTH, long max); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. The set <span Class="bold">max</span> number will be used as the maximum amount of outstanding requests in a pipelined connection. Only used if pipelining is enabled.
<p class="level0">When this limit is reached, libcurl will use another connection to the same host (see <a Class="emphasis" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>), or queue the request until one of the pipelines to the host is ready to accept a request. Thus, the total number of requests in-flight is <a Class="emphasis" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a> * <a Class="emphasis" href="./CURLMOPT_MAX_PIPELINE_LENGTH.html">CURLMOPT_MAX_PIPELINE_LENGTH</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.pdf b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.pdf
index f94595454..08373e297 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.pdf
+++ b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.pdf
@@ -67,12 +67,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:893dfcfe-78d5-11f0-0000-e44c0fe5a109' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:893dfcfe-78d5-11f0-0000-e44c0fe5a109' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:36+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:36+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:702b58ca-cf2b-11ef-0000-e44c0fe5a109' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:702b58ca-cf2b-11ef-0000-e44c0fe5a109' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:13+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:13+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:893dfcfe-78d5-11f0-0000-e44c0fe5a109' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:893dfcfe-78d5-11f0-0000-e44c0fe5a109'/>
-<rdf:Description rdf:about='uuid:893dfcfe-78d5-11f0-0000-e44c0fe5a109' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:702b58ca-cf2b-11ef-0000-e44c0fe5a109' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:702b58ca-cf2b-11ef-0000-e44c0fe5a109'/>
+<rdf:Description rdf:about='uuid:702b58ca-cf2b-11ef-0000-e44c0fe5a109' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -81,9 +81,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081136+02'00')
-/ModDate(D:20150812081136+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091813+01'00')
+/ModDate(D:20150108091813+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -104,7 +104,7 @@ xref
0000001892 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<250AB0EF71AFA2B0149496D7C068D77D><250AB0EF71AFA2B0149496D7C068D77D>]
+/ID [<4EDD1116ACCC9D1C522F25B0E47AB18F><4EDD1116ACCC9D1C522F25B0E47AB18F>]
>>
startxref
3469
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.html b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.html
index 32955acb5..317a962f3 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.html
+++ b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_MAX_TOTAL_CONNECTIONS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_MAX_TOTAL_CONNECTIONS - max simultaneously open connections <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_MAX_TOTAL_CONNECTIONS, long amount); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long for the <span Class="bold">amount</span>. The set number will be used as the maximum number of simultaneously open connections in total using this multi handle. For each new session, libcurl will open a new connection up to the limit set by <a Class="emphasis" href="./CURLMOPT_MAX_TOTAL_CONNECTIONS.html">CURLMOPT_MAX_TOTAL_CONNECTIONS</a>. When the limit is reached, the sessions will be pending until there are available connections. If <a Class="emphasis" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a> is enabled, libcurl will try to pipeline if the host is capable of it. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value is 0, which means that there is no limit. It is then simply controlled by the number of easy handles added. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf
index 0d516dc95..56dfdf4d2 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf
+++ b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING.3
index c795c48ec..c1df1d560 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -26,28 +26,17 @@ CURLMOPT_PIPELINING \- enable/disable HTTP pipelining
.SH SYNOPSIS
#include <curl/curl.h>
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING, long bits);
+CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING, bool onoff);
.SH DESCRIPTION
-Set the \fBbits\fP parameter to 1 to make libcurl use HTTP pipelining for
-HTTP/1.1 transfers done using this multi handle, as far as possible. This
-means that if you add a second request that can use an already existing
-connection, the second request will be \&"piped" on the same connection rather
-than being executed in parallel.
+Set the \fBonoff\fP parameter to 1 to make libcurl use HTTP pipelining for
+HTTP transfers done using this multi handle, as far as possible. This means
+that if you add a second request that can use an already existing connection,
+the second request will be \&"piped" on the same connection rather than being
+executed in parallel.
When using pipelining, there are also several other related options that are
interesting to tweak and adjust to alter how libcurl spreads out requests on
different connections or not etc.
-
-Starting in 7.43.0, the \fBbits\fP parameter's bit 1 also has a meaning and
-libcurl is now offering symbol names for the bits:
-.IP CURLPIPE_NOTHING (0)
-Default, which means doing no attempts at pipelining or multiplexing.
-.IP CURLPIPE_HTTP1 (1)
-If this bit is set, libcurl will try to pipeline HTTP/1.1 requests on
-connections that are already established and in use to hosts.
-.IP CURLPIPE_MULTIPLEX (2)
-If this bit is set, libcurl will try to multiplex the new transfer over an
-existing connection if possible. This requires HTTP/2.
.SH DEFAULT
0 (off)
.SH PROTOCOLS
@@ -55,7 +44,7 @@ HTTP(S)
.SH EXAMPLE
TODO
.SH AVAILABILITY
-Added in 7.16.0. Multiplex support bit added in 7.43.0.
+Added in 7.16.0
.SH RETURN VALUE
Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING.html b/docs/libcurl/opts/CURLMOPT_PIPELINING.html
index 20682a751..c56205cb5 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING.html
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_PIPELINING man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,21 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_PIPELINING - enable/disable HTTP pipelining <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING, long bits); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Set the <span Class="bold">bits</span> parameter to 1 to make libcurl use HTTP pipelining for HTTP/1.1 transfers done using this multi handle, as far as possible. This means that if you add a second request that can use an already existing connection, the second request will be "piped" on the same connection rather than being executed in parallel.
-<p class="level0">When using pipelining, there are also several other related options that are interesting to tweak and adjust to alter how libcurl spreads out requests on different connections or not etc.
-<p class="level0">Starting in 7.43.0, the <span Class="bold">bits</span> parameter's bit 1 also has a meaning and libcurl is now offering symbol names for the bits:
-<p class="level0"><a name="CURLPIPENOTHING"></a><span class="nroffip">CURLPIPE_NOTHING (0)</span>
-<p class="level1">Default, which means doing no attempts at pipelining or multiplexing.
-<p class="level0"><a name="CURLPIPEHTTP1"></a><span class="nroffip">CURLPIPE_HTTP1 (1)</span>
-<p class="level1">If this bit is set, libcurl will try to pipeline HTTP/1.1 requests on connections that are already established and in use to hosts.
-<p class="level0"><a name="CURLPIPEMULTIPLEX"></a><span class="nroffip">CURLPIPE_MULTIPLEX (2)</span>
-<p class="level1">If this bit is set, libcurl will try to multiplex the new transfer over an existing connection if possible. This requires HTTP/2. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">#include &lt;curl/curl.h&gt;
+<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING, bool onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
+<p class="level0">Set the <span Class="bold">onoff</span> parameter to 1 to make libcurl use HTTP pipelining for HTTP transfers done using this multi handle, as far as possible. This means that if you add a second request that can use an already existing connection, the second request will be "piped" on the same connection rather than being executed in parallel.
+<p class="level0">When using pipelining, there are also several other related options that are interesting to tweak and adjust to alter how libcurl spreads out requests on different connections or not etc. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 (off) <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.16.0. Multiplex support bit added in 7.43.0. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Added in 7.16.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLMOPT_MAX_PIPELINE_LENGTH.html">CURLMOPT_MAX_PIPELINE_LENGTH</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_PIPELINING_SITE_BL.html">CURLMOPT_PIPELINING_SITE_BL</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.html">CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.html">CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_MAXCONNECTS.html">CURLMOPT_MAXCONNECTS</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING.pdf b/docs/libcurl/opts/CURLMOPT_PIPELINING.pdf
index 9f93dbcfa..2166f2d40 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING.pdf
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
index e3ea4b1ad..ae393121e 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
@@ -50,7 +50,7 @@ The default value is NULL, which means that there is no blacklist.
NULL
};
- curl_multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blacklist);
+ curl_multi_setopt(m, CURLMOPT_PIPELINE_SERVER_BL, server_blacklist);
.fi
.SH AVAILABILITY
Added in 7.30.0
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.html b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.html
index 50c3a8964..2193b7db0 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.html
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_PIPELINING_SERVER_BL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,23 +47,22 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_PIPELINING_SERVER_BL - pipelining server blacklist <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING_SERVER_BL, char **servers); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="bold">servers</span> array of char *, ending with a NULL entry. This is a list of server types prefixes (in the Server: HTTP header) that are blacklisted from pipelining, i.e server types that are known to not support HTTP pipelining. The array is copied by libcurl.
<p class="level0">Note that the comparison matches if the Server: header begins with the string in the blacklist, i.e "Server: Ninja 1.2.3" and "Server: Ninja 1.4.0" can both be blacklisted by having "Ninja" in the backlist.
<p class="level0">Pass a NULL pointer to clear the blacklist. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value is NULL, which means that there is no blacklist. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0"><a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&nbsp; server_blacklist[] =
-&nbsp; {
-&nbsp; "Microsoft-IIS/6.0",
-&nbsp; "nginx/0.8.54",
-&nbsp; NULL
-&nbsp; };
-&nbsp;
-&nbsp; curl_multi_setopt(m, CURLMOPT_PIPELINING_SERVER_BL, server_blacklist);
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; server_blacklist[] =
+ &nbsp; {
+ &nbsp; "Microsoft-IIS/6.0",
+ &nbsp; "nginx/0.8.54",
+ &nbsp; NULL
+ &nbsp; };
+ <p class="level0">&nbsp; curl_multi_setopt(m, CURLMOPT_PIPELINE_SERVER_BL, server_blacklist);
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.30.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.pdf b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.pdf
index a7931787f..d12a2e018 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.pdf
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
index cf6e6e7bb..6356d02f0 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
@@ -46,7 +46,7 @@ HTTP(S)
NULL
};
- curl_multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blacklist);
+ curl_multi_setopt(m, CURLMOPT_PIPELINE_SITE_BL, site_blacklist);
.fi
.SH AVAILABILITY
Added in 7.30.0
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.html b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.html
index 1161a818e..ab579d151 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.html
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_PIPELINING_SITE_BL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,22 +47,21 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_PIPELINING_SITE_BL - pipelining host blacklist <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PIPELINING_SITE_BL, char **hosts); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="bold">hosts</span> array of char *, ending with a NULL entry. This is a list of sites that are blacklisted from pipelining, i.e sites that are known to not support HTTP pipelining. The array is copied by libcurl.
<p class="level0">Pass a NULL pointer to clear the blacklist. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value is NULL, which means that there is no blacklist. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-&nbsp; site_blacklist[] =
-&nbsp; {
-&nbsp; "www.haxx.se",
-&nbsp; "www.example.com:1234",
-&nbsp; NULL
-&nbsp; };
-&nbsp;
-&nbsp; curl_multi_setopt(m, CURLMOPT_PIPELINING_SITE_BL, site_blacklist);
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; site_blacklist[] =
+ &nbsp; {
+ &nbsp; "www.haxx.se",
+ &nbsp; "www.example.com:1234",
+ &nbsp; NULL
+ &nbsp; };
+ <p class="level0">&nbsp; curl_multi_setopt(m, CURLMOPT_PIPELINE_SITE_BL, site_blacklist);
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.30.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.pdf b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.pdf
index d20ed4fa1..fc712c030 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.pdf
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3 b/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
deleted file mode 100644
index 135e63212..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
+++ /dev/null
@@ -1,49 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLMOPT_PUSHDATA 3 "1 Jun 2015" "libcurl 7.44.0" "curl_multi_setopt options"
-.SH NAME
-CURLMOPT_PUSHDATA \- pointer to pass to push callback
-.SH SYNOPSIS
-.nf
-#include <curl/curl.h>
-
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PUSHDATA, void *pointer);
-.fi
-.SH DESCRIPTION
-Set \fIpointer\fP to pass as the last argument to the
-\fICURLMOPT_PUSHFUNCTION(3)\fP callback. The pointer will not be touched or
-used by libcurl itself, only passed on to the callback function.
-.SH DEFAULT
-NULL
-.SH PROTOCOLS
-HTTP(S)
-.SH EXAMPLE
-TODO
-.SH AVAILABILITY
-Added in 7.44.0
-.SH RETURN VALUE
-Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
-.SH "SEE ALSO"
-.BR CURLMOPT_PUSHFUNCTION "(3), " CURLMOPT_PIPELINING "(3), "
-.BR CURLOPT_PIPEWAIT "(3), "
-.BR RFC 7540
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHDATA.html b/docs/libcurl/opts/CURLMOPT_PUSHDATA.html
deleted file mode 100644
index 0ea49f226..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHDATA.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLMOPT_PUSHDATA man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLMOPT_PUSHDATA - pointer to pass to push callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PUSHDATA, void *pointer);
-</pre>
-
-<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Set <span Class="emphasis">pointer</span> to pass as the last argument to the <a Class="emphasis" href="./CURLMOPT_PUSHFUNCTION.html">CURLMOPT_PUSHFUNCTION</a> callback. The pointer will not be touched or used by libcurl itself, only passed on to the callback function. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.44.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLMOPT_PUSHFUNCTION.html">CURLMOPT_PUSHFUNCTION</a>, <a Class="manpage" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_PIPEWAIT.html">CURLOPT_PIPEWAIT</a>, <span Class="manpage"> </span> <span Class="manpage"><a href="http://www.ietf.org/rfc/rfc7540.txt">RFC 7540</a></span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHDATA.pdf b/docs/libcurl/opts/CURLMOPT_PUSHDATA.pdf
deleted file mode 100644
index 200136b66..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHDATA.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3 b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
deleted file mode 100644
index fb5e4e49c..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
+++ /dev/null
@@ -1,132 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLMOPT_PUSHFUNCTION 3 "1 Jun 2015" "libcurl 7.44.0" "curl_multi_setopt options"
-.SH NAME
-CURLMOPT_PUSHFUNCTION \- callback that approves or denies server pushes
-.SH SYNOPSIS
-.nf
-#include <curl/curl.h>
-
-char *curl_pushheader_bynum(push_headers, int num);
-char *curl_pushheader_byname(push_headers, const char *name);
-
-int curl_push_callback(CURL *parent,
- CURL *easy,
- size_t num_headers,
- struct curl_pushheaders *headers,
- void *userp);
-
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PUSHFUNCTION,
- curl_push_callback func);
-.fi
-.SH DESCRIPTION
-This callback gets called when a new HTTP/2 stream is being pushed by the
-server (using the PUSH_PROMISE frame). If no push callback is set, all offered
-pushes will be denied automatically.
-.SH CALLBACK DESCRIPTION
-The callback gets its arguments like this:
-
-\fIparent\fP is the handle of the stream on which this push arrives. The new
-handle has been duphandle()d from the parent, meaning that it has gotten all
-its options inherited. It is then up to the application to alter any options
-if desired.
-
-\fIeasy\fP is a newly created handle that represents this upcoming transfer.
-
-\fInum_headers\fP is the number of name+value pairs that was received and can
-be accessed
-
-\fIheaders\fP is a handle used to access push headers using the accessor
-functions described below. This only accesses and provides the PUSH_PROMISE
-headers, the normal response headers will be provided in the header callback
-as usual.
-
-\fIuserp\fP is the pointer set with \fICURLMOPT_PUSHDATA(3)\fP
-
-If the callback returns CURL_PUSH_OK, the 'easy' handle will be added to the
-multi handle, the callback must not do that by itself.
-
-The callback can access PUSH_PROMISE headers with two accessor
-functions. These functions can only be used from within this callback and they
-can only access the PUSH_PROMISE headers. The normal response headers will be
-pased to the header callback for pushed streams just as for normal streams.
-.IP curl_pushheader_bynum
-Returns the header at index 'num' (or NULL). The returned pointer points to a
-"name:value" string that will be freed when this callback returns.
-.IP curl_pushheader_byname
-Returns the value for the given header name (or NULL). This is a shortcut so
-that the application doesn't have to loop through all headers to find the one
-it is interested in. The data pointed will be freed when this callback
-returns.
-.SH CALLBACK RETURN VALUE
-.IP "CURL_PUSH_OK (0)"
-The application has accepted the stream and it can now start receiving data,
-the ownership of the CURL handle has been taken over by the application.
-.IP "CURL_PUSH_DENY (1)"
-The callback denies the stream and no data for this will reach the
-application, the easy handle will be destroyed by libcurl.
-.IP *
-All other return codes are reserved for future use.
-.SH DEFAULT
-NULL, no callback
-.SH PROTOCOLS
-HTTP(S) (HTTP/2 only)
-.SH EXAMPLE
-.nf
-/* only allow pushes for file names starting with "push-" */
-int push_callback(CURL *parent,
- CURL *easy,
- size_t num_headers,
- struct curl_pushheaders *headers,
- void *userp)
-{
- char *headp;
- int *transfers = (int *)userp;
- FILE *out;
- headp = curl_pushheader_byname(headers, ":path");
- if(headp && !strncmp(headp, "/push-", 6)) {
- fprintf(stderr, "The PATH is %s\n", headp);
-
- /* save the push here */
- out = fopen("pushed-stream", "wb");
-
- /* write to this file */
- curl_easy_setopt(easy, CURLOPT_WRITEDATA, out);
-
- (*transfers)++; /* one more */
-
- return CURL_PUSH_OK;
- }
- return CURL_PUSH_DENY;
-}
-
-curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, push_callback);
-curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &counter);
-.fi
-.SH AVAILABILITY
-Added in 7.44.0
-.SH RETURN VALUE
-Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not.
-.SH "SEE ALSO"
-.BR CURLMOPT_PUSHDATA "(3), " CURLMOPT_PIPELINING "(3), " CURLOPT_PIPEWAIT "(3), "
-.BR RFC 7540
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.html b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.html
deleted file mode 100644
index 17680a019..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.html
+++ /dev/null
@@ -1,131 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLMOPT_PUSHFUNCTION man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLMOPT_PUSHFUNCTION - callback that approves or denies server pushes <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-char *curl_pushheader_bynum(push_headers, int num);
-char *curl_pushheader_byname(push_headers, const char *name);
-&nbsp;
-int curl_push_callback(CURL *parent,
-&nbsp; CURL *easy,
-&nbsp; size_t num_headers,
-&nbsp; struct curl_pushheaders *headers,
-&nbsp; void *userp);
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_PUSHFUNCTION,
-&nbsp; curl_push_callback func);
-</pre>
-
-<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">This callback gets called when a new HTTP/2 stream is being pushed by the server (using the PUSH_PROMISE frame). If no push callback is set, all offered pushes will be denied automatically. <a name="CALLBACK"></a><h2 class="nroffsh">CALLBACK DESCRIPTION</h2>
-<p class="level0">The callback gets its arguments like this:
-<p class="level0"><span Class="emphasis">parent</span> is the handle of the stream on which this push arrives. The new handle has been duphandle()d from the parent, meaning that it has gotten all its options inherited. It is then up to the application to alter any options if desired.
-<p class="level0"><span Class="emphasis">easy</span> is a newly created handle that represents this upcoming transfer.
-<p class="level0"><span Class="emphasis">num_headers</span> is the number of name+value pairs that was received and can be accessed
-<p class="level0"><span Class="emphasis">headers</span> is a handle used to access push headers using the accessor functions described below. This only accesses and provides the PUSH_PROMISE headers, the normal response headers will be provided in the header callback as usual.
-<p class="level0"><span Class="emphasis">userp</span> is the pointer set with <a Class="emphasis" href="./CURLMOPT_PUSHDATA.html">CURLMOPT_PUSHDATA</a>
-<p class="level0">If the callback returns CURL_PUSH_OK, the 'easy' handle will be added to the multi handle, the callback must not do that by itself.
-<p class="level0">The callback can access PUSH_PROMISE headers with two accessor functions. These functions can only be used from within this callback and they can only access the PUSH_PROMISE headers. The normal response headers will be pased to the header callback for pushed streams just as for normal streams.
-<p class="level0"><a name="curlpushheaderbynum"></a><span class="nroffip">curl_pushheader_bynum</span>
-<p class="level1">Returns the header at index 'num' (or NULL). The returned pointer points to a "name:value" string that will be freed when this callback returns.
-<p class="level0"><a name="curlpushheaderbyname"></a><span class="nroffip">curl_pushheader_byname</span>
-<p class="level1">Returns the value for the given header name (or NULL). This is a shortcut so that the application doesn't have to loop through all headers to find the one it is interested in. The data pointed will be freed when this callback returns. <a name="CALLBACK"></a><h2 class="nroffsh">CALLBACK RETURN VALUE</h2>
-<p class="level0">
-<p class="level0"><a name="CURLPUSHOK"></a><span class="nroffip">CURL_PUSH_OK (0)</span>
-<p class="level1">The application has accepted the stream and it can now start receiving data, the ownership of the CURL handle has been taken over by the application.
-<p class="level0"><a name="CURLPUSHDENY"></a><span class="nroffip">CURL_PUSH_DENY (1)</span>
-<p class="level1">The callback denies the stream and no data for this will reach the application, the easy handle will be destroyed by libcurl.
-<p class="level0"><a name=""></a><span class="nroffip">*</span>
-<p class="level1">All other return codes are reserved for future use. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">NULL, no callback <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">HTTP(S) (HTTP/2 only) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-/* only allow pushes for file names starting with "push-" */
-int push_callback(CURL *parent,
-&nbsp; CURL *easy,
-&nbsp; size_t num_headers,
-&nbsp; struct curl_pushheaders *headers,
-&nbsp; void *userp)
-{
-&nbsp; char *headp;
-&nbsp; int *transfers = (int *)userp;
-&nbsp; FILE *out;
-&nbsp; headp = curl_pushheader_byname(headers, ":path");
-&nbsp; if(headp && !strncmp(headp, "/push-", 6)) {
-&nbsp; fprintf(stderr, "The PATH is %sn", headp);
-&nbsp;
-&nbsp; /* save the push here */
-&nbsp; out = fopen("pushed-stream", "wb");
-&nbsp;
-&nbsp; /* write to this file */
-&nbsp; curl_easy_setopt(easy, CURLOPT_WRITEDATA, out);
-&nbsp;
-&nbsp; (*transfers)++; /* one more */
-&nbsp;
-&nbsp; return CURL_PUSH_OK;
-&nbsp; }
-&nbsp; return CURL_PUSH_DENY;
-}
-&nbsp;
-curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, push_callback);
-curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &counter);
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.44.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLMOPT_PUSHDATA.html">CURLMOPT_PUSHDATA</a>, <a Class="manpage" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a>, <a Class="manpage" href="./CURLOPT_PIPEWAIT.html">CURLOPT_PIPEWAIT</a>, <a class="manpage" href="#"> </a> <span Class="manpage"><a href="http://www.ietf.org/rfc/rfc7540.txt">RFC 7540</a></span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.pdf b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.pdf
deleted file mode 100644
index d6431ed11..000000000
--- a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.html b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.html
index 5cea2c139..dd2da96e7 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.html
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_SOCKETDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,11 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_SOCKETDATA - custom pointer passed to the socket callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_SOCKETDATA, void *pointer);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_SOCKETDATA, void *pointer);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A data <span Class="emphasis">pointer</span> to pass to the socket callback set with the <a Class="emphasis" href="./CURLMOPT_SOCKETFUNCTION.html">CURLMOPT_SOCKETFUNCTION</a> option.
<p class="level0">This pointer will not be touched by libcurl but will only be passed in to the socket callbacks's <span Class="bold">userp</span> argument. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.pdf b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.pdf
index ac0a8a776..4beb93fc6 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.pdf
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.html b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.html
index ecb519adc..1106738c7 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.html
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_SOCKETFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,17 +47,15 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_SOCKETFUNCTION - callback informed about what to wait for <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-int socket_callback(CURL *easy, /* easy handle */
-&nbsp; curl_socket_t s, /* socket */
-&nbsp; int what, /* see above */
-&nbsp; void *userp, /* private callback pointer */
-&nbsp; void *socketp); /* private socket pointer */
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_SOCKETFUNCTION, socket_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">int socket_callback(CURL *easy, /* easy handle */
+ &nbsp; curl_socket_t s, /* socket */
+ &nbsp; int what, /* see above */
+ &nbsp; void *userp, /* private callback pointer */
+ &nbsp; void *socketp); /* private socket pointer */
+ <p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_SOCKETFUNCTION, socket_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">When the <span Class="emphasis">curl_multi_socket_action(3)</span> function runs, it informs the application about updates in the socket (file descriptor) status by doing none, one, or multiple calls to the <span Class="bold">socket_callback</span>. The callback gets status updates with changes since the previous time the callback was called. If the given callback pointer is NULL, no callback will be called. Set the callback's <span Class="bold">userp</span> argument with <a Class="emphasis" href="./CURLMOPT_SOCKETDATA.html">CURLMOPT_SOCKETDATA</a>. See <span Class="emphasis">curl_multi_socket_action(3)</span> for more details on how the callback is used and should work. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.pdf b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.pdf
index 3445301cf..ba60f5343 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERDATA.html b/docs/libcurl/opts/CURLMOPT_TIMERDATA.html
index a42c18bd2..020e5b03a 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERDATA.html
+++ b/docs/libcurl/opts/CURLMOPT_TIMERDATA.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_TIMERDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,11 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_TIMERDATA - custom pointer to pass to timer callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERDATA, void *pointer);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERDATA, void *pointer);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A data <span Class="bold">pointer</span> to pass to the timer callback set with the <a Class="emphasis" href="./CURLMOPT_TIMERFUNCTION.html">CURLMOPT_TIMERFUNCTION</a> option.
<p class="level0">This pointer will not be touched by libcurl but will only be passed in to the timer callbacks's <span Class="bold">userp</span> argument. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERDATA.pdf b/docs/libcurl/opts/CURLMOPT_TIMERDATA.pdf
index 34eb8a990..a93b74de8 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERDATA.pdf
+++ b/docs/libcurl/opts/CURLMOPT_TIMERDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3 b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
index f509b4539..809c3ef5b 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
@@ -36,21 +36,14 @@ CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERFUNCTION, timer_callbac
Pass a pointer to your callback function, which should match the prototype
shown above.
-Certain features, such as timeouts and retries, require you to call libcurl
-even when there is no activity on the file descriptors.
-
-Your callback function \fBtimer_callback\fP should install a non-repeating
-timer with an interval of \fBtimeout_ms\fP. Each time that timer fires, call
-either \fIcurl_multi_socket_action(3)\fP or \fIcurl_multi_perform(3)\fP,
-depending on which interface you use.
-
-A \fBtimeout_ms\fP value of -1 means you should delete your timer.
-
-A \fBtimeout_ms\fP value of 0 means you should call
-\fIcurl_multi_socket_action(3)\fP or \fIcurl_multi_perform(3)\fP (once) as soon
-as possible.
-
-\fBtimer_callback\fP will only be called when the \fBtimeout_ms\fP changes.
+This callback function will be called when the timeout value changes. The
+\fBtimeout_ms\fP value is at what latest time the application should call one
+of the \&"performing" functions of the multi interface
+(\fIcurl_multi_socket_action(3)\fP and \fIcurl_multi_perform(3)\fP) - to allow
+libcurl to keep timeouts and retries etc to work. A \fBtimeout_ms\fP value of
+-1 means that there is no timeout at all, and 0 means that the timeout is
+already expired. libcurl attempts to limit calling this only when the fixed
+future timeout time actually changes.
The \fBuserp\fP pointer is set with \fICURLMOPT_TIMERDATA(3)\fP.
@@ -61,38 +54,7 @@ NULL
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-static gboolean timeout_cb(gpointer user_data) {
- if (user_data) {
- g_free(user_data);
- curl_multi_setopt(curl_handle, CURLMOPT_TIMERDATA, NULL);
- }
- int running;
- curl_multi_socket_action(multi, CURL_SOCKET_TIMEOUT, 0, &running);
- return G_SOURCE_REMOVE;
-}
-
-static int timerfunc(CURLM *multi, long timeout_ms, void *userp) {
- guint *id = userp;
-
- if (id)
- g_source_remove(*id);
-
- // -1 means we should just delete our timer.
- if (timeout_ms == -1) {
- g_free(id);
- id = NULL;
- } else {
- if (!id)
- id = g_new(guint, 1);
- *id = g_timeout_add(timeout_ms, timeout_cb, id);
- }
- curl_multi_setopt(multi, CURLMOPT_TIMERDATA, id);
- return 0;
-}
-
-curl_multi_setopt(multi, CURLMOPT_TIMERFUNCTION, timerfunc);
-.fi
+TODO
.SH AVAILABILITY
Added in 7.16.0
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.html b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.html
index 0195567e2..800bb8f13 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.html
+++ b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLMOPT_TIMERFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,60 +47,21 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLMOPT_TIMERFUNCTION - set callback to receive timeout values <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-int timer_callback(CURLM *multi, /* multi handle */
-&nbsp; long timeout_ms, /* see above */
-&nbsp; void *userp); /* private callback pointer */
-&nbsp;
-CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERFUNCTION, timer_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">int timer_callback(CURLM *multi, /* multi handle */
+ &nbsp; long timeout_ms, /* see above */
+ &nbsp; void *userp); /* private callback pointer */
+ <p class="level0">CURLMcode curl_multi_setopt(CURLM *handle, CURLMOPT_TIMERFUNCTION, timer_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
-<p class="level0">Certain features, such as timeouts and retries, require you to call libcurl even when there is no activity on the file descriptors.
-<p class="level0">Your callback function <span Class="bold">timer_callback</span> should install a non-repeating timer with an interval of <span Class="bold">timeout_ms</span>. Each time that timer fires, call either <span Class="emphasis">curl_multi_socket_action(3)</span> or <span Class="emphasis">curl_multi_perform(3)</span>, depending on which interface you use.
-<p class="level0">A <span Class="bold">timeout_ms</span> value of -1 means you should delete your timer.
-<p class="level0">A <span Class="bold">timeout_ms</span> value of 0 means you should call <span Class="emphasis">curl_multi_socket_action(3)</span> or <span Class="emphasis">curl_multi_perform(3)</span> (once) as soon as possible.
-<p class="level0"><span Class="bold">timer_callback</span> will only be called when the <span Class="bold">timeout_ms</span> changes.
+<p class="level0">This callback function will be called when the timeout value changes. The <span Class="bold">timeout_ms</span> value is at what latest time the application should call one of the "performing" functions of the multi interface (<span Class="emphasis">curl_multi_socket_action(3)</span> and <span Class="emphasis">curl_multi_perform(3)</span>) - to allow libcurl to keep timeouts and retries etc to work. A <span Class="bold">timeout_ms</span> value of -1 means that there is no timeout at all, and 0 means that the timeout is already expired. libcurl attempts to limit calling this only when the fixed future timeout time actually changes.
<p class="level0">The <span Class="bold">userp</span> pointer is set with <a Class="emphasis" href="./CURLMOPT_TIMERDATA.html">CURLMOPT_TIMERDATA</a>.
<p class="level0">The timer callback should return 0 on success, and -1 on error. This callback can be used instead of, or in addition to, <span Class="emphasis">curl_multi_timeout(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-static gboolean timeout_cb(gpointer user_data) {
-&nbsp; if (user_data) {
-&nbsp; g_free(user_data);
-&nbsp; curl_multi_setopt(curl_handle, CURLMOPT_TIMERDATA, NULL);
-&nbsp; }
-&nbsp; int running;
-&nbsp; curl_multi_socket_action(multi, CURL_SOCKET_TIMEOUT, 0, &running);
-&nbsp; return G_SOURCE_REMOVE;
-}
-&nbsp;
-static int timerfunc(CURLM *multi, long timeout_ms, void *userp) {
-&nbsp; guint *id = userp;
-&nbsp;
-&nbsp; if (id)
-&nbsp; g_source_remove(*id);
-&nbsp;
-&nbsp; // -1 means we should just delete our timer.
-&nbsp; if (timeout_ms == -1) {
-&nbsp; g_free(id);
-&nbsp; id = NULL;
-&nbsp; } else {
-&nbsp; if (!id)
-&nbsp; id = g_new(guint, 1);
-&nbsp; *id = g_timeout_add(timeout_ms, timeout_cb, id);
-&nbsp; }
-&nbsp; curl_multi_setopt(multi, CURLMOPT_TIMERDATA, id);
-&nbsp; return 0;
-}
-&nbsp;
-curl_multi_setopt(multi, CURLMOPT_TIMERFUNCTION, timerfunc);
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.16.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLM_OK if the option is supported, and CURLM_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLMOPT_TIMERDATA.html">CURLMOPT_TIMERDATA</a>, <a Class="manpage" href="./CURLMOPT_SOCKETFUNCTION.html">CURLMOPT_SOCKETFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.pdf b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.pdf
index 9a8ba6e30..3db1c3ecb 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.html b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.html
index e6e547e5b..3b84a4d12 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.html
+++ b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_ACCEPTTIMEOUT_MS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_ACCEPTTIMEOUT_MS - timeout waiting for FTP server to connect back <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ACCEPTTIMEOUT_MS, long ms); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long telling libcurl the maximum number of milliseconds to wait for a server to connect back to libcurl when an active FTP connection is used. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">If no timeout is set, the internal default of 60000 (one minute) will be used. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.pdf b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.pdf
index 5bc835e0e..4a5af84f3 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.pdf
+++ b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.html b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.html
index 76f7c9cf5..0f4aab449 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.html
+++ b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.html
@@ -4,20 +4,15 @@
<title>CURLOPT_ACCEPT_ENCODING man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_ACCEPT_ENCODING - enables automatic decompression of HTTP downloads <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ACCEPT_ENCODING, char *enc); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * argument specifying what encoding you'd like.
<p class="level0">Sets the contents of the Accept-Encoding: header sent in a HTTP request, and enables decoding of a response when a Content-Encoding: header is received. Three encodings are supported: <span Class="emphasis">identity</span>, which does nothing, <span Class="emphasis">deflate</span> which requests the server to compress its response using the zlib algorithm, and <span Class="emphasis">gzip</span> which requests the gzip algorithm.
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.pdf b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.pdf
index 659bd6852..33acf1301 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.pdf
+++ b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.html b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.html
index 25017db64..d79833cb9 100644
--- a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.html
+++ b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_ADDRESS_SCOPE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_ADDRESS_SCOPE - set scope for local IPv6 addresses <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ADDRESS_SCOPE, long scope); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long specifying the scope_id value to use when connecting to IPv6 link-local or site-local addresses. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.pdf b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.pdf
index f1f0e3429..883842cd2 100644
--- a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.pdf
+++ b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_APPEND.html b/docs/libcurl/opts/CURLOPT_APPEND.html
index 9b0b8b5e0..32cef5ad0 100644
--- a/docs/libcurl/opts/CURLOPT_APPEND.html
+++ b/docs/libcurl/opts/CURLOPT_APPEND.html
@@ -4,20 +4,15 @@
<title>CURLOPT_APPEND man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_APPEND - enable appending to the remote file <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_APPEND, long append); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A parameter set to 1 tells the library to append to the remote file instead of overwrite it. This is only useful when uploading to an FTP site. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_APPEND.pdf b/docs/libcurl/opts/CURLOPT_APPEND.pdf
index c1ea28ef6..698e1f489 100644
--- a/docs/libcurl/opts/CURLOPT_APPEND.pdf
+++ b/docs/libcurl/opts/CURLOPT_APPEND.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_AUTOREFERER.html b/docs/libcurl/opts/CURLOPT_AUTOREFERER.html
index 55dad5490..f7cf20ce1 100644
--- a/docs/libcurl/opts/CURLOPT_AUTOREFERER.html
+++ b/docs/libcurl/opts/CURLOPT_AUTOREFERER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_AUTOREFERER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_AUTOREFERER - automatically update the referer header <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_AUTOREFERER, long autorefer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a parameter set to 1 to enable this. When enabled, libcurl will automatically set the Referer: header field in HTTP requests where it follows a Location: redirect. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_AUTOREFERER.pdf b/docs/libcurl/opts/CURLOPT_AUTOREFERER.pdf
index dfcb134e9..5cf16c009 100644
--- a/docs/libcurl/opts/CURLOPT_AUTOREFERER.pdf
+++ b/docs/libcurl/opts/CURLOPT_AUTOREFERER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.html b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.html
index 4275b5550..265f84135 100644
--- a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.html
+++ b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_BUFFERSIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_BUFFERSIZE - set preferred receive buffer size <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_BUFFERSIZE, long size); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long specifying your preferred <span Class="emphasis">size</span> (in bytes) for the receive buffer in libcurl. The main point of this would be that the write callback gets called more often and with smaller chunks. This is just treated as a request, not an order. You cannot be guaranteed to actually get the given size.
<p class="level0">This size is by default set as big as possible (<span Class="emphasis">CURL_MAX_WRITE_SIZE</span>), so it only makes sense to use this option if you want it smaller. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.pdf b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.pdf
index 95302502f..b63d18f2b 100644
--- a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.pdf
+++ b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO.3 b/docs/libcurl/opts/CURLOPT_CAINFO.3
index 85c9ba30a..cb7f47b74 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CAINFO.3
@@ -47,8 +47,7 @@ All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
TODO
.SH AVAILABILITY
-For SSL engines that don't support certificate files the CURLOPT_CAINFO option
-is ignored. Refer to http://curl.haxx.se/docs/ssl-compared.html
+If built TLS enabled
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO.html b/docs/libcurl/opts/CURLOPT_CAINFO.html
index 67ef6dcab..528da915c 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO.html
+++ b/docs/libcurl/opts/CURLOPT_CAINFO.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CAINFO man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,16 +47,16 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CAINFO - path to Certificate Authority (CA) bundle <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CAINFO, char *path); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a zero terminated string naming a file holding one or more certificates to verify the peer with.
<p class="level0">If <a Class="emphasis" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a> is zero and you avoid verifying the server's certificate, <a Class="emphasis" href="./CURLOPT_CAINFO.html">CURLOPT_CAINFO</a> need not even indicate an accessible file.
<p class="level0">This option is by default set to the system path where libcurl's cacert bundle is assumed to be stored, as established at build time.
-<p class="level0">If curl is built against the NSS SSL library, the NSS PEM PKCS&#35;11 module (libnsspem.so) needs to be available for this option to work properly. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module (libnsspem.so) needs to be available for this option to work properly. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Built-in system specific <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">For SSL engines that don't support certificate files the CURLOPT_CAINFO option is ignored. Refer to <a href="http://curl.haxx.se/docs/ssl-compared.html">http://curl.haxx.se/docs/ssl-compared.html</a> <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">If built TLS enabled <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_CAPATH.html">CURLOPT_CAPATH</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>, <a Class="manpage" href="./CURLOPT_SSL_VERIFYHOST.html">CURLOPT_SSL_VERIFYHOST</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO.pdf b/docs/libcurl/opts/CURLOPT_CAINFO.pdf
index e4dc058ec..572a5d453 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO.pdf
+++ b/docs/libcurl/opts/CURLOPT_CAINFO.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CAPATH.3 b/docs/libcurl/opts/CURLOPT_CAPATH.3
index 6695f9f3c..642953dc9 100644
--- a/docs/libcurl/opts/CURLOPT_CAPATH.3
+++ b/docs/libcurl/opts/CURLOPT_CAPATH.3
@@ -43,8 +43,9 @@ All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
TODO
.SH AVAILABILITY
-This option is supported by the OpenSSL, GnuTLS and PolarSSL backends. The NSS
-backend provides the option only for backward compatibility.
+This option is OpenSSL-specific and does nothing if libcurl is built to use
+GnuTLS. NSS-powered libcurl provides the option only for backward
+compatibility.
.SH RETURN VALUE
Returns CURLE_OK if TLS enabled, and CURLE_UNKNOWN_OPTION if not, or
CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_CAPATH.html b/docs/libcurl/opts/CURLOPT_CAPATH.html
index 6f1c4031b..a9cdb2798 100644
--- a/docs/libcurl/opts/CURLOPT_CAPATH.html
+++ b/docs/libcurl/opts/CURLOPT_CAPATH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CAPATH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CAPATH - specify directory holding CA certificates <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CAPATH, char *capath); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a zero terminated string naming a directory holding multiple CA certificates to verify the peer with. If libcurl is built against OpenSSL, the certificate directory must be prepared using the openssl c_rehash utility. This makes sense only when used in combination with the <a Class="emphasis" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a> option.
<p class="level0">The <a Class="emphasis" href="./CURLOPT_CAPATH.html">CURLOPT_CAPATH</a> function apparently does not work in Windows due to some limitation in openssl. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">This option is supported by the OpenSSL, GnuTLS and PolarSSL backends. The NSS backend provides the option only for backward compatibility. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">This option is OpenSSL-specific and does nothing if libcurl is built to use GnuTLS. NSS-powered libcurl provides the option only for backward compatibility. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if TLS enabled, and CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_CAINFO.html">CURLOPT_CAINFO</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_STDERR.html">CURLOPT_STDERR</a>, <a Class="manpage" href="./CURLOPT_DEBUGFUNCTION.html">CURLOPT_DEBUGFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_CAPATH.pdf b/docs/libcurl/opts/CURLOPT_CAPATH.pdf
index 46be0cb85..5dbdc971e 100644
--- a/docs/libcurl/opts/CURLOPT_CAPATH.pdf
+++ b/docs/libcurl/opts/CURLOPT_CAPATH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CERTINFO.3 b/docs/libcurl/opts/CURLOPT_CERTINFO.3
index a508b867b..8c01711dd 100644
--- a/docs/libcurl/opts/CURLOPT_CERTINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CERTINFO.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -29,10 +29,11 @@ CURLOPT_CERTINFO \- request SSL certificate information
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CERTINFO, long certinfo);
.SH DESCRIPTION
Pass a long set to 1 to enable libcurl's certificate chain info gatherer. With
-this enabled, libcurl will extract lots of information and data about the
-certificates in the certificate chain used in the SSL connection. This data may
-then be retrieved after a transfer using \fIcurl_easy_getinfo(3)\fP and its
-option \fICURLINFO_CERTINFO\fP.
+this enabled, libcurl (if built with OpenSSL, NSS or GSKit) will
+extract lots of information and data about the certificates in the certificate
+chain used in the SSL connection. This data may then be retrieved after a
+transfer using \fIcurl_easy_getinfo(3)\fP and its option
+\fICURLINFO_CERTINFO\fP.
.SH DEFAULT
0
.SH PROTOCOLS
@@ -40,7 +41,7 @@ All TLS-based
.SH EXAMPLE
TODO
.SH AVAILABILITY
-This option is supported by the OpenSSL, GnuTLS, NSS and GSKit backends.
+Added in 7.19.1
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_CERTINFO.html b/docs/libcurl/opts/CURLOPT_CERTINFO.html
index 0b210d2a7..ae19dd655 100644
--- a/docs/libcurl/opts/CURLOPT_CERTINFO.html
+++ b/docs/libcurl/opts/CURLOPT_CERTINFO.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CERTINFO man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,13 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CERTINFO - request SSL certificate information <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CERTINFO, long certinfo); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a long set to 1 to enable libcurl's certificate chain info gatherer. With this enabled, libcurl will extract lots of information and data about the certificates in the certificate chain used in the SSL connection. This data may then be retrieved after a transfer using <span Class="emphasis">curl_easy_getinfo(3)</span> and its option <span Class="emphasis">CURLINFO_CERTINFO</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">Pass a long set to 1 to enable libcurl's certificate chain info gatherer. With this enabled, libcurl (if built with OpenSSL, NSS or GSKit) will extract lots of information and data about the certificates in the certificate chain used in the SSL connection. This data may then be retrieved after a transfer using <span Class="emphasis">curl_easy_getinfo(3)</span> and its option <span Class="emphasis">CURLINFO_CERTINFO</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS-based <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">This option is supported by the OpenSSL, GnuTLS, NSS and GSKit backends. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Added in 7.19.1 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_CAINFO.html">CURLOPT_CAINFO</a>, <a Class="manpage" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_CERTINFO.pdf b/docs/libcurl/opts/CURLOPT_CERTINFO.pdf
index e8cf96e17..9e7273ebb 100644
--- a/docs/libcurl/opts/CURLOPT_CERTINFO.pdf
+++ b/docs/libcurl/opts/CURLOPT_CERTINFO.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.html b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.html
index 85f5657a7..2721d5bdf 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CHUNK_BGN_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,15 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CHUNK_BGN_FUNCTION - callback before a transfer with FTP wildcardmatch <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-long chunk_bgn_callback(const void *transfer_info, void *ptr,
-&nbsp; int remains);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_BGN_FUNCTION,
-&nbsp; chunk_bgn_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">long chunk_bgn_callback(const void *transfer_info, void *ptr,
+ &nbsp; int remains);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_BGN_FUNCTION,
+ &nbsp; chunk_bgn_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback function gets called by libcurl before a part of the stream is going to be transferred (if the transfer supports chunks).
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.pdf
index 6af97345b..9a97a66ef 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3 b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
index 4d0ff3da5..abdbc3a87 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
@@ -29,8 +29,8 @@ CURLOPT_CHUNK_DATA \- custom pointer to the FTP chunk callbacks
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_DATA, void *pointer);
.SH DESCRIPTION
Pass a \fIpointer\fP that will be untouched by libcurl and passed as the ptr
-argument to the \fICURL_CHUNK_BGN_FUNCTION(3)\fP and
-\fICURL_CHUNK_END_FUNCTION(3)\fP.
+argument to the \fICURL_CHUNK_BGN_FUNTION(3)\fP and
+\fICURL_CHUNK_END_FUNTION(3)\fP.
.SH DEFAULT
NULL
.SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.html b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.html
index e27c65be3..701d1a470 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.html
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CHUNK_DATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,9 +47,9 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CHUNK_DATA - custom pointer to the FTP chunk callbacks <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_DATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the ptr argument to the <span Class="emphasis">CURL_CHUNK_BGN_FUNCTION(3)</span> and <span Class="emphasis">CURL_CHUNK_END_FUNCTION(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the ptr argument to the <span Class="emphasis">CURL_CHUNK_BGN_FUNTION(3)</span> and <span Class="emphasis">CURL_CHUNK_END_FUNTION(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">FTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.pdf b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.pdf
index 8313611b9..11e87356e 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.html b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.html
index 7d0694610..6322c73c2 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CHUNK_END_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CHUNK_END_FUNCTION - callback after a transfer with FTP wildcardmatch <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-long chunk_end_callback(void *ptr);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_END_FUNCTION,
-&nbsp; chunk_end_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">long chunk_end_callback(void *ptr);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CHUNK_END_FUNCTION,
+ &nbsp; chunk_end_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This function gets called by libcurl as soon as a part of the stream has been transferred (or skipped).
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.pdf
index 3da58c804..f9dfde6b5 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.html b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.html
index e47f8c8d6..44fa4ff73 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.html
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CLOSESOCKETDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CLOSESOCKETDATA - pointer passed to the socket close callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CLOSESOCKETDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the first argument in the closesocket callback set with <a Class="emphasis" href="./CURLOPT_CLOSESOCKETFUNCTION.html">CURLOPT_CLOSESOCKETFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value of this parameter is NULL. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.pdf b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.pdf
index 99b7f90ef..7d78bda29 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.html b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.html
index 4124d0bb8..1b004a19a 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CLOSESOCKETFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CLOSESOCKETFUNCTION - callback to socket close replacement function <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">int closesocket_callback(void *clientp, curl_socket_t item);
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CLOSESOCKETFUNCTION, closesocket_callback); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.pdf
index 4aae7c54c..19edee517 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3 b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
index 7f28e6358..5005b5930 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -41,17 +41,7 @@ In unix-like systems, this might cause signals to be used unless
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* complete connection within 10 seconds */
- curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.html b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.html
index 6afc39689..97ca35b2d 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.html
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONNECTTIMEOUT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,25 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONNECTTIMEOUT - timeout for the connect phase <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONNECTTIMEOUT, long timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. It should contain the maximum time in seconds that you allow the connection phase to the server to take. This only limits the connection phase, it has no impact once it has connected. Set to zero to switch to the default built-in connection timeout - 300 seconds. See also the <a Class="emphasis" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a> option.
<p class="level0">In unix-like systems, this might cause signals to be used unless <a Class="emphasis" href="./CURLOPT_NOSIGNAL.html">CURLOPT_NOSIGNAL</a> is set. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">300 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* complete connection within 10 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>, <a Class="manpage" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.pdf b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.pdf
index 3359205ce..cdf8c4f4b 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
index d81118e53..dd5ef5869 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -41,17 +41,7 @@ In unix-like systems, this might cause signals to be used unless
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* complete connection within 10000 milliseconds */
- curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10000L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.html b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.html
index 15580ffce..91b2c9ae0 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.html
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONNECTTIMEOUT_MS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,25 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONNECTTIMEOUT_MS - timeout for the connect phase <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONNECTTIMEOUT_MS, long timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. It should contain the maximum time in milliseconds that you allow the connection phase to the server to take. This only limits the connection phase, it has no impact once it has connected. Set to zero to switch to the default built-in connection timeout - 300 seconds. See also the <a Class="emphasis" href="./CURLOPT_TIMEOUT_MS.html">CURLOPT_TIMEOUT_MS</a> option.
<p class="level0">In unix-like systems, this might cause signals to be used unless <a Class="emphasis" href="./CURLOPT_NOSIGNAL.html">CURLOPT_NOSIGNAL</a> is set. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">300000 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* complete connection within 10000 milliseconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_CONNECTTIMEOUT, 10000L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>, <a Class="manpage" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.pdf b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.pdf
index 03d23ea31..0a001f5d6 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.html b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.html
index 3e07fc2dc..a0fda31e1 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.html
+++ b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONNECT_ONLY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONNECT_ONLY - stop when connected to target server <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONNECT_ONLY, long only); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the parameter equals 1, it tells the library to perform all the required proxy authentication and connection setup, but no data transfer, and then return.
<p class="level0">The option can be used to simply test a connection to a server, but is more useful when used with the <span Class="emphasis">CURLINFO_LASTSOCKET</span> option to <span Class="emphasis">curl_easy_getinfo(3)</span> as the library can set up the connection and then the application can obtain the most recently used socket for special data transfers. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.pdf b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.pdf
index 39371fe20..969689bb6 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.html b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.html
index 3c78f548e..dea2c03a1 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONV_FROM_NETWORK_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONV_FROM_NETWORK_FUNCTION - convert data from network to host encoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode conv_callback(char *ptr, size_t length);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
-&nbsp; conv_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode conv_callback(char *ptr, size_t length);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
+ &nbsp; conv_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">Applies to non-ASCII platforms. <span Class="emphasis">curl_version_info(3)</span> will return the CURL_VERSION_CONV feature bit set if this option is provided.
@@ -67,10 +60,10 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_NETWORK_FUNCTION,
<p class="level0"><span Class="bold">CURLOPT_CONV_FROM_NETWORK_FUNCTION</span> converts to host encoding from the network encoding. It is used when commands or ASCII data are received over the network.
<p class="level0">If you set a callback pointer to NULL, or don't set it at all, the built-in libcurl iconv functions will be used. If HAVE_ICONV was not defined when libcurl was built, and no callback has been established, conversion will return the CURLE_CONV_REQD error code.
<p class="level0">If HAVE_ICONV is defined, CURL_ICONV_CODESET_OF_HOST must also be defined. For example:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
<p class="level0">The iconv code in libcurl will default the network and UTF8 codeset names as follows:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
<p class="level0">You will need to override these definitions if they are different on your system. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">FTP, SMTP, IMAP, POP3 <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.pdf
index 2b92ff406..2b9d62ccd 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.html b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.html
index 5b6376310..2ed2c13ac 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONV_FROM_UTF8_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONV_FROM_UTF8_FUNCTION - convert data from UTF8 to host encoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode conv_callback(char *ptr, size_t length);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_UTF8_FUNCTION,
-&nbsp; conv_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode conv_callback(char *ptr, size_t length);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_UTF8_FUNCTION,
+ &nbsp; conv_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">Applies to non-ASCII platforms. <span Class="emphasis">curl_version_info(3)</span> will return the CURL_VERSION_CONV feature bit set if this option is provided.
@@ -67,10 +60,10 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_FROM_UTF8_FUNCTION,
<p class="level0"><span Class="bold">CURLOPT_CONV_FROM_UTF8_FUNCTION</span> converts to host encoding from UTF8 encoding. It is required only for SSL processing.
<p class="level0">If you set a callback pointer to NULL, or don't set it at all, the built-in libcurl iconv functions will be used. If HAVE_ICONV was not defined when libcurl was built, and no callback has been established, conversion will return the CURLE_CONV_REQD error code.
<p class="level0">If HAVE_ICONV is defined, CURL_ICONV_CODESET_OF_HOST must also be defined. For example:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
<p class="level0">The iconv code in libcurl will default the network and UTF8 codeset names as follows:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
<p class="level0">You will need to override these definitions if they are different on your system. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">TLS-based protocols. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.pdf
index e9930fd2f..dfa30c3d1 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.html b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.html
index de1517449..40f8c2df9 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CONV_TO_NETWORK_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CONV_TO_NETWORK_FUNCTION - convert data to network from host encoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode conv_callback(char *ptr, size_t length);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_TO_NETWORK_FUNCTION,
-&nbsp; conv_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode conv_callback(char *ptr, size_t length);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_TO_NETWORK_FUNCTION,
+ &nbsp; conv_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">Applies to non-ASCII platforms. <span Class="emphasis">curl_version_info(3)</span> will return the CURL_VERSION_CONV feature bit set if this option is provided.
@@ -67,10 +60,10 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CONV_TO_NETWORK_FUNCTION,
<p class="level0"><span Class="bold">CURLOPT_CONV_TO_NETWORK_FUNCTION</span> converts from host encoding to the network encoding. It is used when commands or ASCII data are sent over the network.
<p class="level0">If you set a callback pointer to NULL, or don't set it at all, the built-in libcurl iconv functions will be used. If HAVE_ICONV was not defined when libcurl was built, and no callback has been established, conversion will return the CURLE_CONV_REQD error code.
<p class="level0">If HAVE_ICONV is defined, CURL_ICONV_CODESET_OF_HOST must also be defined. For example:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_HOST "IBM-1047"
<p class="level0">The iconv code in libcurl will default the network and UTF8 codeset names as follows:
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
-<p class="level0">&nbsp;&#35;define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_OF_NETWORK "ISO8859-1"
+<p class="level0">&nbsp;#define CURL_ICONV_CODESET_FOR_UTF8 "UTF-8"
<p class="level0">You will need to override these definitions if they are different on your system. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">FTP, SMTP, IMAP, POP3 <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.pdf
index b07a2cccd..18cf2d532 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_COOKIE.3 b/docs/libcurl/opts/CURLOPT_COOKIE.3
index a390135fc..379296a7e 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIE.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -40,15 +40,6 @@ This option sets the cookie header explicitly in the outgoing request(s). If
multiple requests are done due to authentication, followed redirections or
similar, they will all get this cookie passed on.
-The cookies set by this option are separate from the internal cookie storage
-held by the cookie engine and will not be modified by it. If you enable the
-cookie engine and either you've imported a cookie of the same name (e.g. 'foo')
-or the server has set one, it will have no effect on the cookies you set here.
-A request to the server will send both the 'foo' held by the cookie engine and
-the 'foo' held by this option. To set a cookie that is instead held by the
-cookie engine and can be modified by the server use
-\fICURLOPT_COOKIELIST(3)\fP.
-
Using this option multiple times will only make the latest string override the
previous ones.
@@ -60,16 +51,7 @@ NULL, no cookies
.SH PROTOCOLS
HTTP
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- curl_easy_setopt(curl, CURLOPT_COOKIE, "tool=curl; fun=yes;");
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
If HTTP is enabled
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_COOKIE.html b/docs/libcurl/opts/CURLOPT_COOKIE.html
index c91529f78..df42e6455 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIE.html
+++ b/docs/libcurl/opts/CURLOPT_COOKIE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COOKIE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,28 +47,16 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COOKIE - set contents of HTTP Cookie header <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIE, char *cookie); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It will be used to set a cookie in the HTTP request. The format of the string should be NAME=CONTENTS, where NAME is the cookie name and CONTENTS is what the cookie should contain.
<p class="level0">If you need to set multiple cookies, set them all using a single option concatenated like this: "name1=content1; name2=content2;" etc.
<p class="level0">This option sets the cookie header explicitly in the outgoing request(s). If multiple requests are done due to authentication, followed redirections or similar, they will all get this cookie passed on.
-<p class="level0">The cookies set by this option are separate from the internal cookie storage held by the cookie engine and will not be modified by it. If you enable the cookie engine and either you've imported a cookie of the same name (e.g. 'foo') or the server has set one, it will have no effect on the cookies you set here. A request to the server will send both the 'foo' held by the cookie engine and the 'foo' held by this option. To set a cookie that is instead held by the cookie engine and can be modified by the server use <a Class="emphasis" href="./CURLOPT_COOKIELIST.html">CURLOPT_COOKIELIST</a>.
<p class="level0">Using this option multiple times will only make the latest string override the previous ones.
<p class="level0">This option will not enable the cookie engine. Use <a Class="emphasis" href="./CURLOPT_COOKIEFILE.html">CURLOPT_COOKIEFILE</a> or <a Class="emphasis" href="./CURLOPT_COOKIEJAR.html">CURLOPT_COOKIEJAR</a> to enable parsing and sending cookies automatically. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL, no cookies <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_COOKIE, "tool=curl; fun=yes;");
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">If HTTP is enabled <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if HTTP is enabled, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_COOKIEFILE.html">CURLOPT_COOKIEFILE</a>, <a Class="manpage" href="./CURLOPT_COOKIEJAR.html">CURLOPT_COOKIEJAR</a>, <a Class="manpage" href="./CURLOPT_COOKIELIST.html">CURLOPT_COOKIELIST</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_COOKIE.pdf b/docs/libcurl/opts/CURLOPT_COOKIE.pdf
index 6e51674e9..3a7edbc10 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIE.pdf
+++ b/docs/libcurl/opts/CURLOPT_COOKIE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEFILE.html b/docs/libcurl/opts/CURLOPT_COOKIEFILE.html
index 5123a4b57..10539bc5b 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEFILE.html
+++ b/docs/libcurl/opts/CURLOPT_COOKIEFILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COOKIEFILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COOKIEFILE - file name to read cookies from <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIEFILE, char *filename); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It should point to the file name of your file holding cookie data to read. The cookie data can be in either the old Netscape / Mozilla cookie data format or just regular HTTP-style headers dumped to a file.
<p class="level0">It also enables the cookie engine, making libcurl parse and send cookies on subsequent requests with this handle.
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEFILE.pdf b/docs/libcurl/opts/CURLOPT_COOKIEFILE.pdf
index 50ff7cdd7..9e0064c01 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEFILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_COOKIEFILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEJAR.html b/docs/libcurl/opts/CURLOPT_COOKIEJAR.html
index 0a8b21007..a4f45bfb1 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEJAR.html
+++ b/docs/libcurl/opts/CURLOPT_COOKIEJAR.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COOKIEJAR man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COOKIEJAR - file name to store cookies to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIEJAR, char *filename); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">filename</span> as char *, zero terminated. This will make libcurl write all internally known cookies to the specified file when <span Class="emphasis">curl_easy_cleanup(3)</span> is called. If no cookies are known, no file will be created. Specify "-" as filename to instead have the cookies written to stdout. Using this option also enables cookies for this session, so if you for example follow a location it will make matching cookies get sent accordingly.
<p class="level0">Note that libcurl doesn't read any cookies from the cookie jar. If you want to read cookies from a file, use <a Class="emphasis" href="./CURLOPT_COOKIEFILE.html">CURLOPT_COOKIEFILE</a>.
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEJAR.pdf b/docs/libcurl/opts/CURLOPT_COOKIEJAR.pdf
index 731cff52b..c0626bd4f 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEJAR.pdf
+++ b/docs/libcurl/opts/CURLOPT_COOKIEJAR.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_COOKIELIST.3 b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
index 937c79db8..815def1b9 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIELIST.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
@@ -36,16 +36,6 @@ Such a cookie can be either a single line in Netscape / Mozilla format or just
regular HTTP-style header (Set-Cookie: ...) format. This will also enable the
cookie engine. This adds that single cookie to the internal cookie store.
-If you use the Set-Cookie format and don't specify a domain then the cookie
-is sent for any domain and will not be modified. If a server sets a cookie of
-the same name (or maybe you've imported one) then both will be sent on a future
-transfer to that server, likely not what you intended. Either set a domain in
-Set-Cookie (doing that will include sub domains) or use the Netscape format as
-shown in EXAMPLE.
-
-Starting in 7.43.0 the aforementioned any-domain cookies will not appear in the
-lists exported by \fICURLINFO_COOKIELIST(3)\fP and \fICURLOPT_COOKIEJAR(3)\fP.
-
Additionally, there are commands available that perform actions if you pass in
these exact strings:
.IP ALL
@@ -65,46 +55,7 @@ NULL
.SH PROTOCOLS
HTTP
.SH EXAMPLE
-.nf
-/* This example shows an inline import of a cookie in Netscape format.
-You can set the cookie as HttpOnly to prevent XSS attacks by prepending
-#HttpOnly_ to the hostname. That may be useful if the cookie will later
-be imported by a browser.
-*/
-
-#define SEP "\\t" /* Tab separates the fields */
-
-char *my_cookie =
- "example.com" /* Hostname */
- SEP "FALSE" /* Include subdomains */
- SEP "/" /* Path */
- SEP "FALSE" /* Secure */
- SEP "0" /* Expiry in epoch time format. 0 == Session */
- SEP "foo" /* Name */
- SEP "bar"; /* Value */
-
-/* my_cookie is imported immediately via CURLOPT_COOKIELIST.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIELIST, my_cookie);
-
-/* The list of cookies in cookies.txt will not be imported until right
-before a transfer is performed. Cookies in the list that have the same
-hostname, path and name as in my_cookie are skipped. That is because
-libcurl has already imported my_cookie and it's considered a "live"
-cookie. A live cookie won't be replaced by one read from a file.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "cookies.txt"); /* import */
-
-/* Cookies are exported after curl_easy_cleanup is called. The server
-may have added, deleted or modified cookies by then. The cookies that
-were skipped on import are not exported.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIEJAR, "cookies.txt"); /* export */
-
-res = curl_easy_perform(curl); /* cookies imported from cookies.txt */
-
-curl_easy_cleanup(curl); /* cookies exported to cookies.txt */
-.fi
+TODO
.SH AVAILABILITY
ALL was added in 7.14.1
diff --git a/docs/libcurl/opts/CURLOPT_COOKIELIST.html b/docs/libcurl/opts/CURLOPT_COOKIELIST.html
index 0f06a6f93..382eb6087 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIELIST.html
+++ b/docs/libcurl/opts/CURLOPT_COOKIELIST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COOKIELIST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,17 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COOKIELIST - add to or manipulate cookies held in memory <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIELIST,
-&nbsp; char *cookie);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIELIST,
+ &nbsp; char *cookie);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a <span Class="emphasis">cookie</span> string.
<p class="level0">Such a cookie can be either a single line in Netscape / Mozilla format or just regular HTTP-style header (Set-Cookie: ...) format. This will also enable the cookie engine. This adds that single cookie to the internal cookie store.
-<p class="level0">If you use the Set-Cookie format and don't specify a domain then the cookie is sent for any domain and will not be modified. If a server sets a cookie of the same name (or maybe you've imported one) then both will be sent on a future transfer to that server, likely not what you intended. Either set a domain in Set-Cookie (doing that will include sub domains) or use the Netscape format as shown in EXAMPLE.
-<p class="level0">Starting in 7.43.0 the aforementioned any-domain cookies will not appear in the lists exported by <span Class="emphasis">CURLINFO_COOKIELIST(3)</span> and <a Class="emphasis" href="./CURLOPT_COOKIEJAR.html">CURLOPT_COOKIEJAR</a>.
<p class="level0">Additionally, there are commands available that perform actions if you pass in these exact strings:
<p class="level0"><a name="ALL"></a><span class="nroffip">ALL</span>
<p class="level1">erases all cookies held in memory
@@ -78,48 +70,7 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIELIST,
<p class="level1"><a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-/* This example shows an inline import of a cookie in Netscape format.
-You can set the cookie as HttpOnly to prevent XSS attacks by prepending
-&#35;HttpOnly_ to the hostname. That may be useful if the cookie will later
-be imported by a browser.
-*/
-&nbsp;
-&#35;define SEP "\t" /* Tab separates the fields */
-&nbsp;
-char *my_cookie =
-&nbsp; "example.com" /* Hostname */
-&nbsp; SEP "FALSE" /* Include subdomains */
-&nbsp; SEP "/" /* Path */
-&nbsp; SEP "FALSE" /* Secure */
-&nbsp; SEP "0" /* Expiry in epoch time format. 0 == Session */
-&nbsp; SEP "foo" /* Name */
-&nbsp; SEP "bar"; /* Value */
-&nbsp;
-/* my_cookie is imported immediately via CURLOPT_COOKIELIST.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIELIST, my_cookie);
-&nbsp;
-/* The list of cookies in cookies.txt will not be imported until right
-before a transfer is performed. Cookies in the list that have the same
-hostname, path and name as in my_cookie are skipped. That is because
-libcurl has already imported my_cookie and it's considered a "live"
-cookie. A live cookie won't be replaced by one read from a file.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "cookies.txt"); /* import */
-&nbsp;
-/* Cookies are exported after curl_easy_cleanup is called. The server
-may have added, deleted or modified cookies by then. The cookies that
-were skipped on import are not exported.
-*/
-curl_easy_setopt(curl, CURLOPT_COOKIEJAR, "cookies.txt"); /* export */
-&nbsp;
-res = curl_easy_perform(curl); /* cookies imported from cookies.txt */
-&nbsp;
-curl_easy_cleanup(curl); /* cookies exported to cookies.txt */
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">ALL was added in 7.14.1
<p class="level0">SESS was added in 7.15.4
<p class="level0">FLUSH was added in 7.17.1
diff --git a/docs/libcurl/opts/CURLOPT_COOKIELIST.pdf b/docs/libcurl/opts/CURLOPT_COOKIELIST.pdf
index 1a7b3e140..896acd617 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIELIST.pdf
+++ b/docs/libcurl/opts/CURLOPT_COOKIELIST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_COOKIESESSION.html b/docs/libcurl/opts/CURLOPT_COOKIESESSION.html
index 04fa0e868..4231e9d1d 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIESESSION.html
+++ b/docs/libcurl/opts/CURLOPT_COOKIESESSION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COOKIESESSION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COOKIESESSION - start a new cookie session <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COOKIESESSION, long init); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to 1 to mark this as a new cookie "session". It will force libcurl to ignore all cookies it is about to load that are "session cookies" from the previous session. By default, libcurl always stores and loads all cookies, independent if they are session cookies or not. Session cookies are cookies without expiry date and they are meant to be alive and existing for this "session" only.
<p class="level0">A "session" is usually defined in browser land for as long as you have your browser up, more or less. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_COOKIESESSION.pdf b/docs/libcurl/opts/CURLOPT_COOKIESESSION.pdf
index bbe973866..92a3c9f9b 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIESESSION.pdf
+++ b/docs/libcurl/opts/CURLOPT_COOKIESESSION.pdf
@@ -63,12 +63,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:7b88777e-78d5-11f0-0000-734885418920' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:7b88777e-78d5-11f0-0000-734885418920' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:13+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:13+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:643f96ca-cf2b-11ef-0000-734885418920' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:643f96ca-cf2b-11ef-0000-734885418920' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:17:53+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:17:53+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:7b88777e-78d5-11f0-0000-734885418920' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:7b88777e-78d5-11f0-0000-734885418920'/>
-<rdf:Description rdf:about='uuid:7b88777e-78d5-11f0-0000-734885418920' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:643f96ca-cf2b-11ef-0000-734885418920' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:643f96ca-cf2b-11ef-0000-734885418920'/>
+<rdf:Description rdf:about='uuid:643f96ca-cf2b-11ef-0000-734885418920' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -77,9 +77,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081113+02'00')
-/ModDate(D:20150812081113+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091753+01'00')
+/ModDate(D:20150108091753+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 14
@@ -99,7 +99,7 @@ xref
0000001853 00000 n
trailer
<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<3FB8C8E04869B30090B9FE0589AF0565><3FB8C8E04869B30090B9FE0589AF0565>]
+/ID [<92DA738D7286633AF0F76D4DE60DE35D><92DA738D7286633AF0F76D4DE60DE35D>]
>>
startxref
3430
diff --git a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.html b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.html
index 7aa2456a2..f2b7a0a75 100644
--- a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.html
+++ b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_COPYPOSTFIELDS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,27 +47,24 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_COPYPOSTFIELDS - have libcurl copy data to POST <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_COPYPOSTFIELDS, char *data); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be the full <span Class="emphasis">data</span> to post in a HTTP POST operation. It behaves as the <a Class="emphasis" href="./CURLOPT_POSTFIELDS.html">CURLOPT_POSTFIELDS</a> option, but the original data is instead copied by the library, allowing the application to overwrite the original data after setting this option.
<p class="level0">Because data are copied, care must be taken when using this option in conjunction with <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE.html">CURLOPT_POSTFIELDSIZE</a> or <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE_LARGE.html">CURLOPT_POSTFIELDSIZE_LARGE</a>: If the size has not been set prior to <a Class="emphasis" href="./CURLOPT_COPYPOSTFIELDS.html">CURLOPT_COPYPOSTFIELDS</a>, the data is assumed to be a zero terminated string; else the stored size informs the library about the byte count to copy. In any case, the size must not be changed after <a Class="emphasis" href="./CURLOPT_COPYPOSTFIELDS.html">CURLOPT_COPYPOSTFIELDS</a>, unless another <a Class="emphasis" href="./CURLOPT_POSTFIELDS.html">CURLOPT_POSTFIELDS</a> or <a Class="emphasis" href="./CURLOPT_COPYPOSTFIELDS.html">CURLOPT_COPYPOSTFIELDS</a> option is issued. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; char local_buffer[1024]="data to send";
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* size of the data to copy from the buffer and send in the request */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 12L);
-&nbsp;
-&nbsp; /* send data from the local stack */
-&nbsp; curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, local_buffer);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; char local_buffer[1024]="data to send";
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* size of the data to copy from the buffer and send in the request */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 12L);
+ <p class="level0">&nbsp; /* send data from the local stack */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_COPYPOSTFIELDS, local_buffer);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.17.1 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.pdf b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.pdf
index 15a683765..f376e1724 100644
--- a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.pdf
+++ b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CRLF.html b/docs/libcurl/opts/CURLOPT_CRLF.html
index 001490b2e..c3f7e9b31 100644
--- a/docs/libcurl/opts/CURLOPT_CRLF.html
+++ b/docs/libcurl/opts/CURLOPT_CRLF.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CRLF man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CRLF - enable/disable CRLF conversion <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CRLF, long conv); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the value is set to 1 (one), libcurl converts Unix newlines to CRLF newlines on transfers. Disable this option again by setting the value to 0 (zero).
<p class="level0">This is a legacy option of questionable use. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_CRLF.pdf b/docs/libcurl/opts/CURLOPT_CRLF.pdf
index ab3ca881f..767bc0908 100644
--- a/docs/libcurl/opts/CURLOPT_CRLF.pdf
+++ b/docs/libcurl/opts/CURLOPT_CRLF.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CRLFILE.html b/docs/libcurl/opts/CURLOPT_CRLFILE.html
index b73881517..a92de8467 100644
--- a/docs/libcurl/opts/CURLOPT_CRLFILE.html
+++ b/docs/libcurl/opts/CURLOPT_CRLFILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CRLFILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CRLFILE - specify a Certificate Revocation List file <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CRLFILE, char *file); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a zero terminated string naming a <span Class="emphasis">file</span> with the concatenation of CRL (in PEM format) to use in the certificate validation that occurs during the SSL exchange.
<p class="level0">When curl is built to use NSS or GnuTLS, there is no way to influence the use of CRL passed to help in the verification process. When libcurl is built with OpenSSL support, X509_V_FLAG_CRL_CHECK and X509_V_FLAG_CRL_CHECK_ALL are both set, requiring CRL check against all the elements of the certificate chain if a CRL file is passed.
diff --git a/docs/libcurl/opts/CURLOPT_CRLFILE.pdf b/docs/libcurl/opts/CURLOPT_CRLFILE.pdf
index 5249c5bba..6ecefbc88 100644
--- a/docs/libcurl/opts/CURLOPT_CRLFILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_CRLFILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.html b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.html
index 03014103d..c6e512473 100644
--- a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.html
+++ b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_CUSTOMREQUEST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_CUSTOMREQUEST - custom string for request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_CUSTOMREQUEST, char *request); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter.
<p class="level0">When you change the request method by setting <a Class="bold" href="./CURLOPT_CUSTOMREQUEST.html">CURLOPT_CUSTOMREQUEST</a> to something, you don't actually change how libcurl behaves or acts in regards to the particular request method, it will only change the actual string sent in the request.
diff --git a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.pdf b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.pdf
index d3503079f..f93faa375 100644
--- a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.pdf
+++ b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGDATA.html b/docs/libcurl/opts/CURLOPT_DEBUGDATA.html
index 2f79735e2..d5a09e77f 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGDATA.html
+++ b/docs/libcurl/opts/CURLOPT_DEBUGDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DEBUGDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DEBUGDATA - custom pointer for debug callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEBUGDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> to whatever you want passed in to your <a Class="emphasis" href="./CURLOPT_DEBUGFUNCTION.html">CURLOPT_DEBUGFUNCTION</a> in the last void * argument. This pointer is not used by libcurl, it is only passed to the callback. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGDATA.pdf b/docs/libcurl/opts/CURLOPT_DEBUGDATA.pdf
index a3720c735..80247b7c0 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_DEBUGDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.html b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.html
index 2b5b63362..ab3950b9c 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DEBUGFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,29 +47,26 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DEBUGFUNCTION - debug callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-typedef enum {
-&nbsp; CURLINFO_TEXT = 0,
-&nbsp; CURLINFO_HEADER_IN, /* 1 */
-&nbsp; CURLINFO_HEADER_OUT, /* 2 */
-&nbsp; CURLINFO_DATA_IN, /* 3 */
-&nbsp; CURLINFO_DATA_OUT, /* 4 */
-&nbsp; CURLINFO_SSL_DATA_IN, /* 5 */
-&nbsp; CURLINFO_SSL_DATA_OUT, /* 6 */
-&nbsp; CURLINFO_END
-} curl_infotype;
-&nbsp;
-int debug_callback(CURL *handle,
-&nbsp; curl_infotype type,
-&nbsp; char *data,
-&nbsp; size_t size,
-&nbsp; void *userptr);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEBUGFUNCTION,
-&nbsp; debug_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">typedef enum {
+ &nbsp; CURLINFO_TEXT = 0,
+ &nbsp; CURLINFO_HEADER_IN, /* 1 */
+ &nbsp; CURLINFO_HEADER_OUT, /* 2 */
+ &nbsp; CURLINFO_DATA_IN, /* 3 */
+ &nbsp; CURLINFO_DATA_OUT, /* 4 */
+ &nbsp; CURLINFO_SSL_DATA_IN, /* 5 */
+ &nbsp; CURLINFO_SSL_DATA_OUT, /* 6 */
+ &nbsp; CURLINFO_END
+ } curl_infotype;
+ <p class="level0">int debug_callback(CURL *handle,
+ &nbsp; curl_infotype type,
+ &nbsp; char *data,
+ &nbsp; size_t size,
+ &nbsp; void *userptr);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEBUGFUNCTION,
+ &nbsp; debug_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0"><a Class="emphasis" href="./CURLOPT_DEBUGFUNCTION.html">CURLOPT_DEBUGFUNCTION</a> replaces the standard debug function used when <a Class="emphasis" href="./CURLOPT_VERBOSE.html">CURLOPT_VERBOSE</a> is in effect. This callback receives debug information, as specified in the <span Class="emphasis">type</span> argument. This function must return 0. The <span Class="emphasis">data</span> pointed to by the char * passed to this function WILL NOT be zero terminated, but will be exactly of the <span Class="emphasis">size</span> as told by the <span Class="emphasis">size</span> argument.
@@ -96,103 +88,88 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DEBUGFUNCTION,
<p class="level1">The data is SSL/TLS (binary) data received from the peer. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-static
-void dump(const char *text,
-&nbsp; FILE *stream, unsigned char *ptr, size_t size)
-{
-&nbsp; size_t i;
-&nbsp; size_t c;
-&nbsp; unsigned int width=0x10;
-&nbsp;
-&nbsp; fprintf(stream, "%s, %10.10ld bytes (0x%8.8lx)n",
-&nbsp; text, (long)size, (long)size);
-&nbsp;
-&nbsp; for(i=0; i&lt;size; i+= width) {
-&nbsp; fprintf(stream, "%4.4lx: ", (long)i);
-&nbsp;
-&nbsp; /* show hex to the left */
-&nbsp; for(c = 0; c &lt; width; c++) {
-&nbsp; if(i+c &lt; size)
-&nbsp; fprintf(stream, "%02x ", ptr[i+c]);
-&nbsp; else
-&nbsp; fputs(" ", stream);
-&nbsp; }
-&nbsp;
-&nbsp; /* show data on the right */
-&nbsp; for(c = 0; (c &lt; width) && (i+c &lt; size); c++)
-&nbsp; fputc(ptr[i+c]&gt;=0x20) && (ptr[i+c]&lt;0x80)?ptr[i+c]:'.', stream);
-&nbsp;
-&nbsp; fputc('n', stream); /* newline */
-&nbsp; }
-}
-&nbsp;
-static
-int my_trace(CURL *handle, curl_infotype type,
-&nbsp; char *data, size_t size,
-&nbsp; void *userp)
-{
-&nbsp; const char *text;
-&nbsp; (void)handle; /* prevent compiler warning */
-&nbsp;
-&nbsp; switch (type) {
-&nbsp; case CURLINFO_TEXT:
-&nbsp; fprintf(stderr, "== Info: %s", data);
-&nbsp; default: /* in case a new one is introduced to shock us */
-&nbsp; return 0;
-&nbsp;
-&nbsp; case CURLINFO_HEADER_OUT:
-&nbsp; text = "=&gt; Send header";
-&nbsp; break;
-&nbsp; case CURLINFO_DATA_OUT:
-&nbsp; text = "=&gt; Send data";
-&nbsp; break;
-&nbsp; case CURLINFO_SSL_DATA_OUT:
-&nbsp; text = "=&gt; Send SSL data";
-&nbsp; break;
-&nbsp; case CURLINFO_HEADER_IN:
-&nbsp; text = "&lt;= Recv header";
-&nbsp; break;
-&nbsp; case CURLINFO_DATA_IN:
-&nbsp; text = "&lt;= Recv data";
-&nbsp; break;
-&nbsp; case CURLINFO_SSL_DATA_IN:
-&nbsp; text = "&lt;= Recv SSL data";
-&nbsp; break;
-&nbsp; }
-&nbsp;
-&nbsp; dump(text, stderr, (unsigned char *)data, size);
-&nbsp; return 0;
-}
-&nbsp;
-int main(void)
-{
-&nbsp; CURL *curl;
-&nbsp; CURLcode res;
-&nbsp;
-&nbsp; curl = curl_easy_init();
-&nbsp; if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
-&nbsp;
-&nbsp; /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
-&nbsp; curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-&nbsp;
-&nbsp; /* example.com is redirected, so we tell libcurl to follow redirection */
-&nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com/">http://example.com/</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp; /* Check for errors */
-&nbsp; if(res != CURLE_OK)
-&nbsp; fprintf(stderr, "curl_easy_perform() failed: %sn",
-&nbsp; curl_easy_strerror(res));
-&nbsp;
-&nbsp; /* always cleanup */
-&nbsp; curl_easy_cleanup(curl);
-&nbsp; }
-&nbsp; return 0;
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">static
+ void dump(const char *text,
+ &nbsp; FILE *stream, unsigned char *ptr, size_t size)
+ {
+ &nbsp; size_t i;
+ &nbsp; size_t c;
+ &nbsp; unsigned int width=0x10;
+ <p class="level0">&nbsp; fprintf(stream, "%s, %10.10ld bytes (0x%8.8lx)n",
+ &nbsp; text, (long)size, (long)size);
+ <p class="level0">&nbsp; for(i=0; i&lt;size; i+= width) {
+ &nbsp; fprintf(stream, "%4.4lx: ", (long)i);
+ <p class="level0">&nbsp; /* show hex to the left */
+ &nbsp; for(c = 0; c &lt; width; c++) {
+ &nbsp; if(i+c &lt; size)
+ &nbsp; fprintf(stream, "%02x ", ptr[i+c]);
+ &nbsp; else
+ &nbsp; fputs(" ", stream);
+ &nbsp; }
+ <p class="level0">&nbsp; /* show data on the right */
+ &nbsp; for(c = 0; (c &lt; width) && (i+c &lt; size); c++)
+ &nbsp; fputc(ptr[i+c]&gt;=0x20) && (ptr[i+c]&lt;0x80)?ptr[i+c]:'.', stream);
+ <p class="level0">&nbsp; fputc('n', stream); /* newline */
+ &nbsp; }
+ }
+ <p class="level0">static
+ int my_trace(CURL *handle, curl_infotype type,
+ &nbsp; char *data, size_t size,
+ &nbsp; void *userp)
+ {
+ &nbsp; const char *text;
+ &nbsp; (void)handle; /* prevent compiler warning */
+ <p class="level0">&nbsp; switch (type) {
+ &nbsp; case CURLINFO_TEXT:
+ &nbsp; fprintf(stderr, "== Info: %s", data);
+ &nbsp; default: /* in case a new one is introduced to shock us */
+ &nbsp; return 0;
+ <p class="level0">&nbsp; case CURLINFO_HEADER_OUT:
+ &nbsp; text = "=&gt; Send header";
+ &nbsp; break;
+ &nbsp; case CURLINFO_DATA_OUT:
+ &nbsp; text = "=&gt; Send data";
+ &nbsp; break;
+ &nbsp; case CURLINFO_SSL_DATA_OUT:
+ &nbsp; text = "=&gt; Send SSL data";
+ &nbsp; break;
+ &nbsp; case CURLINFO_HEADER_IN:
+ &nbsp; text = "&lt;= Recv header";
+ &nbsp; break;
+ &nbsp; case CURLINFO_DATA_IN:
+ &nbsp; text = "&lt;= Recv data";
+ &nbsp; break;
+ &nbsp; case CURLINFO_SSL_DATA_IN:
+ &nbsp; text = "&lt;= Recv SSL data";
+ &nbsp; break;
+ &nbsp; }
+ <p class="level0">&nbsp; dump(text, stderr, (unsigned char *)data, size);
+ &nbsp; return 0;
+ }
+ <p class="level0">int main(void)
+ {
+ &nbsp; CURL *curl;
+ &nbsp; CURLcode res;
+ <p class="level0">&nbsp; curl = curl_easy_init();
+ &nbsp; if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
+ <p class="level0">&nbsp; /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+ <p class="level0">&nbsp; /* example.com is redirected, so we tell libcurl to follow redirection */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com/">http://example.com/</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ &nbsp; /* Check for errors */
+ &nbsp; if(res != CURLE_OK)
+ &nbsp; fprintf(stderr, "curl_easy_perform() failed: %sn",
+ &nbsp; curl_easy_strerror(res));
+ <p class="level0">&nbsp; /* always cleanup */
+ &nbsp; curl_easy_cleanup(curl);
+ &nbsp; }
+ &nbsp; return 0;
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.pdf
index bb8e6cdb0..a9dae92f3 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.html b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.html
index 68d7f6e13..63d094c33 100644
--- a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.html
+++ b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DIRLISTONLY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DIRLISTONLY - ask for names only in a directory listing <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DIRLISTONLY, long listonly); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">For FTP and SFTP based URLs a parameter set to 1 tells the library to list the names of files in a directory, rather than performing a full directory listing that would normally include file sizes, dates etc.
<p class="level0">For POP3 a parameter of 1 tells the library to list the email message or messages on the POP3 server. This can be used to change the default behaviour of libcurl, when combined with a URL that contains a message ID, to perform a "scan listing" which can then be used to determine the size of an email.
diff --git a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.pdf b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.pdf
index 325275f73..3da3d2fb2 100644
--- a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.pdf
+++ b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.html b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.html
index 9fe9a12bb..107630374 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_CACHE_TIMEOUT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_CACHE_TIMEOUT - set life-time for DNS cache entries <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_CACHE_TIMEOUT, long age); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long, this sets the timeout in seconds. Name resolves will be kept in memory and used for this number of seconds. Set to zero to completely disable caching, or set to -1 to make the cached entries remain forever. By default, libcurl caches this info for 60 seconds.
<p class="level0">The name resolve functions of various libc implementations don't re-read name server information unless explicitly told so (for example, by calling <span Class="emphasis">res_init(3)</span>). This may cause libcurl to keep using the older server even if DHCP has updated the server info, and this may look like a DNS cache issue to the casual libcurl-app user.
diff --git a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.pdf b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.pdf
index cb609ecf9..bceefc387 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.html b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.html
index b22f2d645..11dac38b8 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_INTERFACE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_INTERFACE - set interface to speak DNS over <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_INTERFACE, char *ifname); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter. Set the name of the network interface that the DNS resolver should bind to. This must be an interface name (not an address). Set this option to NULL to use the default setting (don't bind to a specific interface). <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.pdf b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.pdf
index 04c414a9e..3b079691f 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.html b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.html
index 5d7f4fc1b..efd1a579d 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_LOCAL_IP4 man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_LOCAL_IP4 - IPv4 address to bind DNS resolves to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_LOCAL_IP4, char *address); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the local IPv4 <span Class="emphasis">address</span> that the resolver should bind to. The argument should be of type char * and contain a single numerical IPv4 address as a string. Set this option to NULL to use the default setting (don't bind to a specific IP address). <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.pdf b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.pdf
index 78f9c773a..49fc03d4f 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.html b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.html
index ec72fdb0e..67d3af936 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_LOCAL_IP6 man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_LOCAL_IP6 - IPv6 address to bind DNS resolves to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_LOCAL_IP6, char *address); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the local IPv6 <span Class="emphasis">address</span> that the resolver should bind to. The argument should be of type char * and contain a single IPv6 address as a string. Set this option to NULL to use the default setting (don't bind to a specific IP address). <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.pdf b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.pdf
index e21197cc5..0aba0cfd4 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.html b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.html
index c272171e7..ba803d0c5 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_SERVERS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_SERVERS - set preferred DNS servers <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_SERVERS, char *servers); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * that is the list of DNS servers to be used instead of the system default. The format of the dns servers option is:
<p class="level0">host[:port][,host[:port]]...
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.pdf b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.pdf
index fb3f635eb..a15db8de4 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.html b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.html
index 1461d3cf8..8fb0da9da 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.html
+++ b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_DNS_USE_GLOBAL_CACHE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_DNS_USE_GLOBAL_CACHE - enable/disable global DNS cache <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_USE_GLOBAL_CACHE, &nbsp; long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the <span Class="emphasis">enable</span> value is 1, it tells curl to use a global DNS cache that will survive between easy handle creations and deletions. This is not thread-safe and this will use a global variable.
<p class="level0"><span Class="bold">WARNING:</span> this option is considered obsolete. Stop using it. Switch over to using the share interface instead! See <a Class="emphasis" href="./CURLOPT_SHARE.html">CURLOPT_SHARE</a> and <span Class="emphasis">curl_share_init(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.pdf b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.pdf
index d14d54612..e9f19ac94 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.pdf
+++ b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_EGDSOCKET.html b/docs/libcurl/opts/CURLOPT_EGDSOCKET.html
index 285934b37..18a11ee15 100644
--- a/docs/libcurl/opts/CURLOPT_EGDSOCKET.html
+++ b/docs/libcurl/opts/CURLOPT_EGDSOCKET.html
@@ -4,20 +4,15 @@
<title>CURLOPT_EGDSOCKET man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_EGDSOCKET - set EGD socket path <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_EGDSOCKET, char *path); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to the zero terminated path name to the Entropy Gathering Daemon socket. It will be used to seed the random engine for SSL. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_EGDSOCKET.pdf b/docs/libcurl/opts/CURLOPT_EGDSOCKET.pdf
index 550d8be1f..31c65b9ba 100644
--- a/docs/libcurl/opts/CURLOPT_EGDSOCKET.pdf
+++ b/docs/libcurl/opts/CURLOPT_EGDSOCKET.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3 b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
index 2d4dc2350..577202cfc 100644
--- a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
+++ b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
@@ -51,33 +51,15 @@ All
.nf
curl = curl_easy_init();
if(curl) {
- CURLcode res;
- char errbuf[CURL_ERROR_SIZE];
+ char error[CURL_ERROR_SIZE]
curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
/* provide a buffer to store errors in */
- curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
+ curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, error);
- /* set the error buffer as empty before performing a request */
- errbuf[0] = 0;
-
- /* perform the request */
- res = curl_easy_perform(curl);
-
- /* if the request did not complete correctly, show the error
- information. if no detailed error information was written to errbuf
- show the more generic information from curl_easy_strerror instead.
- */
- if(res != CURLE_OK) {
- size_t len = strlen(errbuf);
- fprintf(stderr, "\\nlibcurl: (%d) ", res);
- if(len)
- fprintf(stderr, "%s%s", errbuf,
- ((errbuf[len - 1] != '\\n') ? "\\n" : ""));
- else
- fprintf(stderr, "%s\\n", curl_easy_strerror(res));
- }
+ /* Perform the request */
+ curl_easy_perform(curl);
}
.fi
.SH AVAILABILITY
diff --git a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.html b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.html
index 519891a77..40d29b1bf 100644
--- a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.html
+++ b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_ERRORBUFFER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_ERRORBUFFER - set error buffer for error messages <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ERRORBUFFER, char *buf); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a buffer that the libcurl may store human readable error messages in on failures or problems. This may be more helpful than just the return code from <span Class="emphasis">curl_easy_perform(3)</span> and related functions. The buffer <span Class="bold">must be at least CURL_ERROR_SIZE bytes big</span>.
<p class="level0">You must keep the associated buffer available until libcurl no longer needs it. Failing to do so will cause very odd behavior or even crashes. libcurl will need it until you call <span Class="emphasis">curl_easy_cleanup(3)</span> or you set the same option again to use a different pointer.
@@ -60,38 +55,17 @@ p.roffit {
<p class="level0">If the library does not return an error, the buffer may not have been touched. Do not rely on the contents in those cases. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; CURLcode res;
-&nbsp; char errbuf[CURL_ERROR_SIZE];
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* provide a buffer to store errors in */
-&nbsp; curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, errbuf);
-&nbsp;
-&nbsp; /* set the error buffer as empty before performing a request */
-&nbsp; errbuf[0] = 0;
-&nbsp;
-&nbsp; /* perform the request */
-&nbsp; res = curl_easy_perform(curl);
-&nbsp;
-&nbsp; /* if the request did not complete correctly, show the error
-&nbsp; information. if no detailed error information was written to errbuf
-&nbsp; show the more generic information from curl_easy_strerror instead.
-&nbsp; */
-&nbsp; if(res != CURLE_OK) {
-&nbsp; size_t len = strlen(errbuf);
-&nbsp; fprintf(stderr, "\nlibcurl: (%d) ", res);
-&nbsp; if(len)
-&nbsp; fprintf(stderr, "%s%s", errbuf,
-&nbsp; ((errbuf[len - 1] != '\n') ? "\n" : ""));
-&nbsp; else
-&nbsp; fprintf(stderr, "%s\n", curl_easy_strerror(res));
-&nbsp; }
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; char error[CURL_ERROR_SIZE]
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* provide a buffer to store errors in */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_ERRORBUFFER, error);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.pdf b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.pdf
index 6cb255230..5a0ddd4cb 100644
--- a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.pdf
+++ b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.html b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.html
index 1a91850b3..b5cf9c6e9 100644
--- a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.html
+++ b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_EXPECT_100_TIMEOUT_MS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_EXPECT_100_TIMEOUT_MS - timeout for Expect: 100-continue response <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_EXPECT_100_TIMEOUT_MS,
-&nbsp; long milliseconds);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_EXPECT_100_TIMEOUT_MS,
+ &nbsp; long milliseconds);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long to tell libcurl the number of <span Class="emphasis">milliseconds</span> to wait for a server response with the HTTP status 100 (Continue), 417 (Expectation Failed) or similar after sending a HTTP request containing an Expect: 100-continue header. If this times out before a response is received, the request body is sent anyway. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1000 milliseconds <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.pdf b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.pdf
index 7fb2ef47f..4184fe56e 100644
--- a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.pdf
+++ b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FAILONERROR.3 b/docs/libcurl/opts/CURLOPT_FAILONERROR.3
index 39aeb3899..a8267fd3b 100644
--- a/docs/libcurl/opts/CURLOPT_FAILONERROR.3
+++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -39,9 +39,6 @@ response codes will slip through, especially when authentication is involved
You might get some amounts of headers transferred before this situation is
detected, like when a "100-continue" is received as a response to a POST/PUT
and a 401 or 407 is received immediately afterwards.
-
-When this option is used and an error is detected, it will cause the
-connection to get closed.
.SH DEFAULT
0, do not fail on error
.SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_FAILONERROR.html b/docs/libcurl/opts/CURLOPT_FAILONERROR.html
index 824dd045c..931f7638d 100644
--- a/docs/libcurl/opts/CURLOPT_FAILONERROR.html
+++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FAILONERROR man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FAILONERROR - request failure on HTTP response &gt;= 400 <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FAILONERROR, long fail); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A long parameter set to 1 tells the library to fail the request if the HTTP code returned is equal to or larger than 400. The default action would be to return the page normally, ignoring that code.
<p class="level0">This method is not fail-safe and there are occasions where non-successful response codes will slip through, especially when authentication is involved (response codes 401 and 407).
-<p class="level0">You might get some amounts of headers transferred before this situation is detected, like when a "100-continue" is received as a response to a POST/PUT and a 401 or 407 is received immediately afterwards.
-<p class="level0">When this option is used and an error is detected, it will cause the connection to get closed. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">You might get some amounts of headers transferred before this situation is detected, like when a "100-continue" is received as a response to a POST/PUT and a 401 or 407 is received immediately afterwards. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, do not fail on error <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FAILONERROR.pdf b/docs/libcurl/opts/CURLOPT_FAILONERROR.pdf
index db2e3af50..d4044af80 100644
--- a/docs/libcurl/opts/CURLOPT_FAILONERROR.pdf
+++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FILETIME.html b/docs/libcurl/opts/CURLOPT_FILETIME.html
index 05909280b..904d68ddb 100644
--- a/docs/libcurl/opts/CURLOPT_FILETIME.html
+++ b/docs/libcurl/opts/CURLOPT_FILETIME.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FILETIME man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FILETIME - get the modification time of the remote resource <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FILETIME, long gettime); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If it is 1, libcurl will attempt to get the modification time of the remote document in this operation. This requires that the remote server sends the time or replies to a time querying command. The <span Class="emphasis">curl_easy_getinfo(3)</span> function with the <span Class="emphasis">CURLINFO_FILETIME</span> argument can be used after a transfer to extract the received time (if any). <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FILETIME.pdf b/docs/libcurl/opts/CURLOPT_FILETIME.pdf
index 90abaa6e5..33728beaa 100644
--- a/docs/libcurl/opts/CURLOPT_FILETIME.pdf
+++ b/docs/libcurl/opts/CURLOPT_FILETIME.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.html b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.html
index b8d2dd730..6745382b4 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.html
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FNMATCH_DATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FNMATCH_DATA - custom pointer to fnmatch callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FNMATCH_DATA,
-&nbsp; void *pointer);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FNMATCH_DATA,
+ &nbsp; void *pointer);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer that will be untouched by libcurl and passed as the ptr argument to the <span Class="emphasis">CURL_FNMATCH_FUNCTION(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.pdf b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.pdf
index 414ae776d..297371cf5 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.html b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.html
index 75e0f4e50..34e595d4a 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FNMATCH_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,16 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FNMATCH_FUNCTION - wildcard matching function callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-int fnmatch_callback(void *ptr,
-&nbsp; const char *pattern,
-&nbsp; const char *string);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FNMATCH_FUNCTION,
-&nbsp; fnmatch_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">int fnmatch_callback(void *ptr,
+ &nbsp; const char *pattern,
+ &nbsp; const char *string);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FNMATCH_FUNCTION,
+ &nbsp; fnmatch_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback s used for wildcard matching.
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.pdf
index 2e66bcd5c..5386b57d9 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.html b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.html
index 06869f7d6..36c40c925 100644
--- a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.html
+++ b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FOLLOWLOCATION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FOLLOWLOCATION - follow HTTP 3xx redirects <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FOLLOWLOCATION, long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A parameter set to 1 tells the library to follow any Location: header that the server sends as part of a HTTP header in a 3xx response.
<p class="level0">This means that libcurl will re-send the same request on the new location and follow new Location: headers all the way until no more such headers are returned. <a Class="emphasis" href="./CURLOPT_MAXREDIRS.html">CURLOPT_MAXREDIRS</a> can be used to limit the number of redirects libcurl will follow.
@@ -60,17 +55,15 @@ p.roffit {
<p class="level0">For users who think the existing location following is too naive, too simple or just lacks features, it is very easy to instead implement your own redirect follow logic with the use of <span Class="emphasis">curl_easy_getinfo(3)</span>'s <span Class="emphasis">CURLINFO_REDIRECT_URL</span> option instead of using <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* example.com is redirected, so we tell libcurl to follow redirection */
-&nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* example.com is redirected, so we tell libcurl to follow redirection */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Along with HTTP <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.pdf b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.pdf
index aede0ae7a..8c986ead9 100644
--- a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.pdf
+++ b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.html b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.html
index 0a1ba6adb..6a968ea9e 100644
--- a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.html
+++ b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FORBID_REUSE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FORBID_REUSE - make connection get closed at once after use <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FORBID_REUSE, long close); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. Set <span Class="emphasis">close</span> to 1 to make libcurl explicitly close the connection when done with the transfer. Normally, libcurl keeps all connections alive when done with one transfer in case a succeeding one follows that can re-use them. This option should be used with caution and only if you understand what it does as it can seriously impact performance.
<p class="level0">Set to 0 to have libcurl keep the connection open for possible later re-use (default behavior). <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.pdf b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.pdf
index 15e2c1fca..7c534b60a 100644
--- a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.pdf
+++ b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.html b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.html
index aed306cca..062da5263 100644
--- a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.html
+++ b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FRESH_CONNECT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FRESH_CONNECT - force a new connection to be used <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FRESH_CONNECT, long fresh); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. Set to 1 to make the next transfer use a new (fresh) connection by force instead of trying to re-use an existing one. This option should be used with caution and only if you understand what it does as it may seriously impact performance.
<p class="level0">Related functionality is <a Class="emphasis" href="./CURLOPT_FORBID_REUSE.html">CURLOPT_FORBID_REUSE</a> which makes sure the connection is closed after use so that it won't be re-used.
diff --git a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.pdf b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.pdf
index c9ca9bb36..326ec751a 100644
--- a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.pdf
+++ b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTPPORT.html b/docs/libcurl/opts/CURLOPT_FTPPORT.html
index e80812d5e..2ef41872a 100644
--- a/docs/libcurl/opts/CURLOPT_FTPPORT.html
+++ b/docs/libcurl/opts/CURLOPT_FTPPORT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTPPORT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,18 +47,18 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTPPORT - make FTP transfer active <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTPPORT, char *spec); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It specifies that the FTP transfer will be made actively and the given string will be used to get the IP address to use for the FTP PORT instruction.
<p class="level0">The PORT instruction tells the remote server to connect to our specified IP address. The string may be a plain IP address, a host name, a network interface name (under Unix) or just a '-' symbol to let the library use your system's default IP address. Default FTP operations are passive, and thus won't use PORT.
<p class="level0">The address can be followed by a ':' to specify a port, optionally followed by a '-' to specify a port range. If the port specified is 0, the operating system will pick a free port. If a range is provided and all ports in the range are not available, libcurl will report CURLE_FTP_PORT_FAILED for the handle. Invalid port/range settings are ignored. IPv6 addresses followed by a port or portrange have to be in brackets. IPv6 addresses without port/range specifier can be in brackets.
<p class="level0">Examples with specified ports:
-<p class="level0"><pre class="level0">
-&nbsp; eth0:0
-&nbsp; 192.168.1.2:32000-33000
-&nbsp; curl.se:32123
-&nbsp; [::1]:1234-4567
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; eth0:0
+ &nbsp; 192.168.1.2:32000-33000
+ &nbsp; curl.se:32123
+ &nbsp; [::1]:1234-4567
+ </pre>
<p class="level0">
<p class="level0">You disable PORT again and go back to using the passive version by setting this option to NULL. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTPPORT.pdf b/docs/libcurl/opts/CURLOPT_FTPPORT.pdf
index 5b2c6d62b..4bd409ab3 100644
--- a/docs/libcurl/opts/CURLOPT_FTPPORT.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTPPORT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.html b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.html
index 47ca9c7ca..5e688a5f3 100644
--- a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.html
+++ b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTPSSLAUTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTPSSLAUTH - set order in which to attempt TLS vs SSL when using FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTPSSLAUTH, long order); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long using one of the values from below, to alter how libcurl issues "AUTH TLS" or "AUTH SSL" when FTP over SSL is activated. This is only interesting if <a Class="emphasis" href="./CURLOPT_USE_SSL.html">CURLOPT_USE_SSL</a> is also set.
<p class="level0">Possible <span Class="emphasis">order</span> values:
diff --git a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.pdf b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.pdf
index 0cbd8e807..710d984f9 100644
--- a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.html b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.html
index 74f58316c..20db54238 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_ACCOUNT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_ACCOUNT - set account info for FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_ACCOUNT, char *account); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string (or NULL to disable). When an FTP server asks for "account data" after user name and password has been provided, this data is sent off using the ACCT command. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.pdf b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.pdf
index 999c79762..def965a25 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.html b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.html
index c3e65cf31..f6810348f 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_ALTERNATIVE_TO_USER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_ALTERNATIVE_TO_USER - command to use instead of USER with FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_ALTERNATIVE_TO_USER,
-&nbsp; char *cmd);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_ALTERNATIVE_TO_USER,
+ &nbsp; char *cmd);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, pointing to a string which will be used to authenticate if the usual FTP "USER user" and "PASS password" negotiation fails. This is currently only known to be required when connecting to Tumbleweed's Secure Transport FTPS server using client certificates for authentication. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.pdf b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.pdf
index 08b9e61f1..56fcd4935 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.html b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.html
index 1c2fff7d0..04f8c61de 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_CREATE_MISSING_DIRS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,18 +47,16 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_CREATE_MISSING_DIRS - create missing dirs for FTP and SFTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-typedef enum {
-&nbsp; CURLFTP_CREATE_DIR_NONE,
-&nbsp; CURLFTP_CREATE_DIR,
-&nbsp; CURLFTP_CREATE_DIR_RETRY
-} curl_ftpcreatedir;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_CREATE_MISSING_DIRS,
-&nbsp; long create);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">typedef enum {
+ &nbsp; CURLFTP_CREATE_DIR_NONE,
+ &nbsp; CURLFTP_CREATE_DIR,
+ &nbsp; CURLFTP_CREATE_DIR_RETRY
+ } curl_ftpcreatedir;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_CREATE_MISSING_DIRS,
+ &nbsp; long create);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long telling libcurl to <span Class="emphasis">create</span> the dir. If the value is <span Class="emphasis">CURLFTP_CREATE_DIR</span> (1), libcurl will attempt to create any remote directory that it fails to "move" into.
<p class="level0">For FTP requests, that means a CWD command fails. CWD being the command that changes working directory.
diff --git a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.pdf b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.pdf
index 1cc32ecbc..adb73afc3 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.html b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.html
index 521aa0cfa..1ffba4730 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_FILEMETHOD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_FILEMETHOD - select directory traversing method for FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_FILEMETHOD,
-&nbsp; long method);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_FILEMETHOD,
+ &nbsp; long method);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long telling libcurl which <span Class="emphasis">method</span> to use to reach a file on a FTP(S) server.
<p class="level0">This option exists because some server implementations aren't compliant to what the standards say should work.
diff --git a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.pdf b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.pdf
index df82791b7..1b0e2e4ec 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.html b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.html
index 436d619ca..98a833c48 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_RESPONSE_TIMEOUT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_RESPONSE_TIMEOUT - time allowed to wait for FTP response <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_RESPONSE_TIMEOUT, long timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. Causes libcurl to set a <span Class="emphasis">timeout</span> period (in seconds) on the amount of time that the server is allowed to take in order to send a response message for a command before the session is considered dead. While libcurl is waiting for a response, this value overrides <a Class="emphasis" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>. It is recommended that if used in conjunction with <a Class="emphasis" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>, you set <a Class="emphasis" href="./CURLOPT_FTP_RESPONSE_TIMEOUT.html">CURLOPT_FTP_RESPONSE_TIMEOUT</a> to a value smaller than <a Class="emphasis" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">None <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.pdf b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.pdf
index b455585c1..f52ae68b4 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.html b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.html
index d46b7a5ba..35b781ef9 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_SKIP_PASV_IP man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_SKIP_PASV_IP - ignore the IP address in the PASV response <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_SKIP_PASV_IP, long skip); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If <span Class="emphasis">skip</span> is set to 1, it instructs libcurl to not use the IP address the server suggests in its 227-response to libcurl's PASV command when libcurl connects the data connection. Instead libcurl will re-use the same IP address it already uses for the control connection. But it will use the port number from the 227-response.
<p class="level0">This option thus allows libcurl to work around broken server installations that due to NATs, firewalls or incompetence report the wrong IP address back.
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.pdf b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.pdf
index 4c1e21d83..b9ae3028a 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.html b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.html
index 923ecfcf0..051cdccc7 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_SSL_CCC man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_SSL_CCC - switch off SSL again with FTP after auth <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_SSL_CCC, &nbsp; long how); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If enabled, this option makes libcurl use CCC (Clear Command Channel). It shuts down the SSL/TLS layer after authenticating. The rest of the control channel communication will be unencrypted. This allows NAT routers to follow the FTP transaction. Pass a long using one of the values below
<p class="level0"><a name="CURLFTPSSLCCCNONE"></a><span class="nroffip">CURLFTPSSL_CCC_NONE</span>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.pdf b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.pdf
index af6086991..fc5a13bb7 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.html b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.html
index b6008d3a0..bc4855684 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_USE_EPRT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_USE_EPRT - enable/disable use of EPRT with FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_USE_EPRT, long enabled); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the value is 1, it tells curl to use the EPRT command when doing active FTP downloads (which is enabled by <a Class="emphasis" href="./CURLOPT_FTPPORT.html">CURLOPT_FTPPORT</a>). Using EPRT means that it will first attempt to use EPRT before using PORT, but if you pass zero to this option, it will not try using EPRT, only plain PORT.
<p class="level0">If the server is an IPv6 host, this option will have no effect as EPRT is necessary then. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.pdf b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.pdf
index 1de278f14..7b8530a4b 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.html b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.html
index 2dbec7d3e..3ebd1059e 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_USE_EPSV man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_USE_EPSV - enable/disable use of EPSV <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_USE_EPSV, long epsv); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass <span Class="emphasis">epsv</span> as a long. If the value is 1, it tells curl to use the EPSV command when doing passive FTP downloads (which it does by default). Using EPSV means that it will first attempt to use EPSV before using PASV, but if you pass zero to this option, it will not try using EPSV, only plain PASV.
<p class="level0">If the server is an IPv6 host, this option will have no effect as of 7.12.3. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.pdf b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.pdf
index a64fc005d..2da167197 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.html b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.html
index 1724d1132..f2cfc71f6 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.html
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.html
@@ -4,20 +4,15 @@
<title>CURLOPT_FTP_USE_PRET man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_FTP_USE_PRET - enable the PRET command <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_FTP_USE_PRET, long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the value is 1, it tells curl to send a PRET command before PASV (and EPSV). Certain FTP servers, mainly drftpd, require this non-standard command for directory listings as well as up and downloads in PASV mode. Has no effect when using the active FTP transfers mode. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.pdf b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.pdf
index 94af93039..c48929af1 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.pdf
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.html b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.html
index bafd0ca02..f9beaf911 100644
--- a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.html
+++ b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_GSSAPI_DELEGATION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_GSSAPI_DELEGATION - set allowed GSS-API delegation <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_GSSAPI_DELEGATION, long level); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the long parameter <span Class="emphasis">level</span> to CURLGSSAPI_DELEGATION_FLAG to allow unconditional GSSAPI credential delegation. The delegation is disabled by default since 7.21.7. Set the parameter to CURLGSSAPI_DELEGATION_POLICY_FLAG to delegate only if the OK-AS-DELEGATE flag is set in the service ticket in case this feature is supported by the GSS-API implementation and the definition of GSS_C_DELEG_POLICY_FLAG was available at compile-time. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">CURLGSSAPI_DELEGATION_NONE <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.pdf b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.pdf
index df618a0c4..d7c67bea1 100644
--- a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.pdf
+++ b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HEADER.3 b/docs/libcurl/opts/CURLOPT_HEADER.3
index f5a4be8d3..130575aaa 100644
--- a/docs/libcurl/opts/CURLOPT_HEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HEADER.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -38,26 +38,9 @@ about the protocol in use.
It is often better to use \fICURLOPT_HEADERFUNCTION(3)\fP to get the header
data separately.
-
-While named confusingly similar, \fICURLOPT_HTTPHEADER(3)\fP is used to set
-custom HTTP headers!
.SH DEFAULT
0
-.SH PROTOCOLS
-Most
-.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
-
- curl_easy_perform(curl);
-}
-.fi
.SH RETURN VALUE
Returns CURLE_OK.
.SH "SEE ALSO"
.BR CURLOPT_HEADERFUNCTION "(3), "
-.BR CURLOPT_HTTPHEADER "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_HEADER.html b/docs/libcurl/opts/CURLOPT_HEADER.html
index 23f0204a0..7cbb9d318 100644
--- a/docs/libcurl/opts/CURLOPT_HEADER.html
+++ b/docs/libcurl/opts/CURLOPT_HEADER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HEADER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,27 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HEADER - pass headers to the data stream <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADER, long onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass in <span Class="emphasis">onoff</span> set to 1 to tell the library to include the header in the body output for requests with this <span Class="emphasis">handle</span>. This option is relevant for protocols that actually have headers or other meta-data (like HTTP and FTP).
<p class="level0">When asking to get the header info passed to the same callback as the body, it is not possible to accurately separate them again without detailed knowledge about the protocol in use.
-<p class="level0">It is often better to use <a Class="emphasis" href="./CURLOPT_HEADERFUNCTION.html">CURLOPT_HEADERFUNCTION</a> to get the header data separately.
-<p class="level0">While named confusingly similar, <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> is used to set custom HTTP headers! <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">Most <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_HEADER, 1L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">It is often better to use <a Class="emphasis" href="./CURLOPT_HEADERFUNCTION.html">CURLOPT_HEADERFUNCTION</a> to get the header data separately. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_HEADERFUNCTION.html">CURLOPT_HEADERFUNCTION</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>, <span Class="manpage"> </span> <p class="roffit">
+<p class="level0"><a Class="manpage" href="./CURLOPT_HEADERFUNCTION.html">CURLOPT_HEADERFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_HEADER.pdf b/docs/libcurl/opts/CURLOPT_HEADER.pdf
index db9d3c251..b4168cf58 100644
--- a/docs/libcurl/opts/CURLOPT_HEADER.pdf
+++ b/docs/libcurl/opts/CURLOPT_HEADER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HEADERDATA.html b/docs/libcurl/opts/CURLOPT_HEADERDATA.html
index 64f5439aa..122cad9aa 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERDATA.html
+++ b/docs/libcurl/opts/CURLOPT_HEADERDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HEADERDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HEADERDATA - pointer to pass to header callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADERDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> to be used to write the header part of the received data to.
<p class="level0">If <a Class="emphasis" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a> or <a Class="emphasis" href="./CURLOPT_HEADERFUNCTION.html">CURLOPT_HEADERFUNCTION</a> is used, <span Class="emphasis">pointer</span> will be passed in to the respective callback.
diff --git a/docs/libcurl/opts/CURLOPT_HEADERDATA.pdf b/docs/libcurl/opts/CURLOPT_HEADERDATA.pdf
index dc52f5228..1c28b8c4f 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_HEADERDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3 b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
index f8ed0ab8a..b6100f253 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -39,14 +39,14 @@ shown above.
This function gets called by libcurl as soon as it has received header
data. The header callback will be called once for each header and only
complete header lines are passed on to the callback. Parsing headers is very
-easy using this. The size of the data pointed to by \fIbuffer\fP is \fIsize\fP
+easy using this. The size of the data pointed to by \fIptr\fP is \fIsize\fP
multiplied with \fInmemb\fP. Do not assume that the header line is zero
terminated! The pointer named \fIuserdata\fP is the one you set with the
\fICURLOPT_HEADERDATA(3)\fP option. This callback function must return the
number of bytes actually taken care of. If that amount differs from the amount
passed in to your function, it'll signal an error to the library. This will
cause the transfer to get aborted and the libcurl function in progress will
-return \fICURLE_WRITE_ERROR\fP.
+return \fICURL_WRITE_ERROR\fP.
A complete HTTP header that is passed to this function can be up to
\fICURL_MAX_HTTP_HEADER\fP (100K) bytes.
@@ -80,24 +80,7 @@ Nothing.
Used for all protocols with headers or meta-data concept: HTTP, FTP, POP3,
IMAP, SMTP and more.
.SH EXAMPLE
-.nf
-static size_t header_callback(char *buffer, size_t size,
- size_t nitems, void *userdata)
-{
- /* received header is nitems * size long in 'buffer' NOT ZERO TERMINATED */
- /* 'userdata' is set with CURLOPT_WRITEDATA */
- return nitems * size;
-}
-
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, header_callback);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.html b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.html
index 182c1aea6..8d112ce87 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HEADERFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,11 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HEADERFUNCTION - callback that receives header data <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">size_t header_callback(char *buffer, &nbsp; size_t size, &nbsp; size_t nitems, &nbsp; void *userdata);
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADERFUNCTION, header_callback); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
-<p class="level0">This function gets called by libcurl as soon as it has received header data. The header callback will be called once for each header and only complete header lines are passed on to the callback. Parsing headers is very easy using this. The size of the data pointed to by <span Class="emphasis">buffer</span> is <span Class="emphasis">size</span> multiplied with <span Class="emphasis">nmemb</span>. Do not assume that the header line is zero terminated! The pointer named <span Class="emphasis">userdata</span> is the one you set with the <a Class="emphasis" href="./CURLOPT_HEADERDATA.html">CURLOPT_HEADERDATA</a> option. This callback function must return the number of bytes actually taken care of. If that amount differs from the amount passed in to your function, it'll signal an error to the library. This will cause the transfer to get aborted and the libcurl function in progress will return <span Class="emphasis">CURLE_WRITE_ERROR</span>.
+<p class="level0">This function gets called by libcurl as soon as it has received header data. The header callback will be called once for each header and only complete header lines are passed on to the callback. Parsing headers is very easy using this. The size of the data pointed to by <span Class="emphasis">ptr</span> is <span Class="emphasis">size</span> multiplied with <span Class="emphasis">nmemb</span>. Do not assume that the header line is zero terminated! The pointer named <span Class="emphasis">userdata</span> is the one you set with the <a Class="emphasis" href="./CURLOPT_HEADERDATA.html">CURLOPT_HEADERDATA</a> option. This callback function must return the number of bytes actually taken care of. If that amount differs from the amount passed in to your function, it'll signal an error to the library. This will cause the transfer to get aborted and the libcurl function in progress will return <span Class="emphasis">CURL_WRITE_ERROR</span>.
<p class="level0">A complete HTTP header that is passed to this function can be up to <span Class="emphasis">CURL_MAX_HTTP_HEADER</span> (100K) bytes.
<p class="level0">If this option is not set, or if it is set to NULL, but <a Class="emphasis" href="./CURLOPT_HEADERDATA.html">CURLOPT_HEADERDATA</a> is set to anything but NULL, the function used to accept response data will be used instead. That is, it will be the function specified with <a Class="emphasis" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a>, or if it is not specified or NULL - the default, stream-writing function.
<p class="level0">It's important to note that the callback will be invoked for the headers of all responses received after initiating a request and not just the final response. This includes all responses which occur during authentication negotiation. If you need to operate on only the headers from the final response, you will need to collect headers in the callback yourself and use HTTP status lines, for example, to delimit response boundaries.
@@ -64,26 +59,7 @@ p.roffit {
<p class="level0">For non-HTTP protocols like FTP, POP3, IMAP and SMTP this function will get called with the server responses to the commands that libcurl sends. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Nothing. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Used for all protocols with headers or meta-data concept: HTTP, FTP, POP3, IMAP, SMTP and more. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-static size_t header_callback(char *buffer, size_t size,
-&nbsp; size_t nitems, void *userdata)
-{
-&nbsp; /* received header is nitems * size long in 'buffer' NOT ZERO TERMINATED */
-&nbsp; /* 'userdata' is set with CURLOPT_WRITEDATA */
-&nbsp; return nitems * size;
-}
-&nbsp;
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_HEADERFUNCTION, header_callback);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_HEADERDATA.html">CURLOPT_HEADERDATA</a>, <a Class="manpage" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.pdf
index 491eec862..acf174a3d 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HEADEROPT.3 b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
index 7776b921a..be96d7d88 100644
--- a/docs/libcurl/opts/CURLOPT_HEADEROPT.3
+++ b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -31,10 +31,10 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADEROPT, long bitmask);
Pass a long that is a bitmask of options of how to deal with headers. The two
mutually exclusive options are:
-\fBCURLHEADER_UNIFIED\fP - the headers specified in
-\fICURLOPT_HTTPHEADER(3)\fP will be used in requests both to servers and
-proxies. With this option enabled, \fICURLOPT_PROXYHEADER(3)\fP will not have
-any effect.
+\fBCURLHEADER_UNIFIED\fP - keep working as before. This means
+\fICURLOPT_HTTPHEADER(3)\fP headers will be used in requests both to servers
+and proxies. With this option enabled, \fICURLOPT_PROXYHEADER(3)\fP will not
+have any effect.
\fBCURLHEADER_SEPARATE\fP - makes \fICURLOPT_HTTPHEADER(3)\fP headers only get
sent to a server and not to a proxy. Proxy headers must be set with
@@ -44,7 +44,7 @@ headers. When doing CONNECT, libcurl will send \fICURLOPT_PROXYHEADER(3)\fP
headers only to the proxy and then \fICURLOPT_HTTPHEADER(3)\fP headers only to
the server.
.SH DEFAULT
-CURLHEADER_SEPARATE (changed in 7.42.1, ased CURLHEADER_UNIFIED before then)
+CURLHEADER_UNIFIED
.SH PROTOCOLS
HTTP
.SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLOPT_HEADEROPT.html b/docs/libcurl/opts/CURLOPT_HEADEROPT.html
index 181aefe26..dbcd3195e 100644
--- a/docs/libcurl/opts/CURLOPT_HEADEROPT.html
+++ b/docs/libcurl/opts/CURLOPT_HEADEROPT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HEADEROPT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HEADEROPT - set how to send HTTP headers <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HEADEROPT, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long that is a bitmask of options of how to deal with headers. The two mutually exclusive options are:
-<p class="level0"><span Class="bold">CURLHEADER_UNIFIED</span> - the headers specified in <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> will be used in requests both to servers and proxies. With this option enabled, <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a> will not have any effect.
+<p class="level0"><span Class="bold">CURLHEADER_UNIFIED</span> - keep working as before. This means <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> headers will be used in requests both to servers and proxies. With this option enabled, <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a> will not have any effect.
<p class="level0"><span Class="bold">CURLHEADER_SEPARATE</span> - makes <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> headers only get sent to a server and not to a proxy. Proxy headers must be set with <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a> to get used. Note that if a non-CONNECT request is sent to a proxy, libcurl will send both server headers and proxy headers. When doing CONNECT, libcurl will send <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a> headers only to the proxy and then <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> headers only to the server. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">CURLHEADER_SEPARATE (changed in 7.42.1, ased CURLHEADER_UNIFIED before then) <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
+<p class="level0">CURLHEADER_UNIFIED <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.37.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HEADEROPT.pdf b/docs/libcurl/opts/CURLOPT_HEADEROPT.pdf
index 0308057bb..686bd2011 100644
--- a/docs/libcurl/opts/CURLOPT_HEADEROPT.pdf
+++ b/docs/libcurl/opts/CURLOPT_HEADEROPT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3 b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
index b87db4649..1454ed12e 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
@@ -32,11 +32,9 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP200ALIASES,
.SH DESCRIPTION
Pass a pointer to a linked list of \fIaliases\fP to be treated as valid HTTP
200 responses. Some servers respond with a custom header response line. For
-example, SHOUTcast servers respond with "ICY 200 OK". Also some very old
-Icecast 1.3.x servers will respond like that for certain user agent headers or
-in absence of such. By including this string in your list of aliases,
-the response will be treated as a valid HTTP header line such as
-"HTTP/1.0 200 OK".
+example, IceCast servers respond with "ICY 200 OK". By including this string
+in your list of aliases, the response will be treated as a valid HTTP header
+line such as "HTTP/1.0 200 OK".
The linked list should be a fully valid list of struct curl_slist structs, and
be properly filled in. Use \fIcurl_slist_append(3)\fP to create the list and
diff --git a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.html b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.html
index 693be853a..72c6a9daf 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.html
+++ b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTP200ALIASES man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTP200ALIASES - specify alternative matches for HTTP 200 OK <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP200ALIASES,
-&nbsp; struct curl_slist *aliases);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP200ALIASES,
+ &nbsp; struct curl_slist *aliases);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a pointer to a linked list of <span Class="emphasis">aliases</span> to be treated as valid HTTP 200 responses. Some servers respond with a custom header response line. For example, SHOUTcast servers respond with "ICY 200 OK". Also some very old Icecast 1.3.x servers will respond like that for certain user agent headers or in absence of such. By including this string in your list of aliases, the response will be treated as a valid HTTP header line such as "HTTP/1.0 200 OK".
+<p class="level0">Pass a pointer to a linked list of <span Class="emphasis">aliases</span> to be treated as valid HTTP 200 responses. Some servers respond with a custom header response line. For example, IceCast servers respond with "ICY 200 OK". By including this string in your list of aliases, the response will be treated as a valid HTTP header line such as "HTTP/1.0 200 OK".
<p class="level0">The linked list should be a fully valid list of struct curl_slist structs, and be properly filled in. Use <span Class="emphasis">curl_slist_append(3)</span> to create the list and <span Class="emphasis">curl_slist_free_all(3)</span> to clean up an entire list.
<p class="level0">The alias itself is not parsed for any version strings. The protocol is assumed to match HTTP 1.0 when an alias match. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.pdf b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.pdf
index bc68e99ce..714de6412 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTPAUTH.html b/docs/libcurl/opts/CURLOPT_HTTPAUTH.html
index c0d06652c..c184acb10 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPAUTH.html
+++ b/docs/libcurl/opts/CURLOPT_HTTPAUTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTPAUTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,11 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTPAUTH - set HTTP server authentication methods to try <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPAUTH, long bitmask);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPAUTH, long bitmask);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter, which is set to a bitmask, to tell libcurl which authentication method(s) you want it to use speaking to the remote server.
<p class="level0">The available bits are listed below. If more than one bit is set, libcurl will first query the site to see which authentication methods it supports and then pick the best one you allow it to use. For some methods, this will induce an extra network round-trip. Set the actual name and password with the <a Class="emphasis" href="./CURLOPT_USERPWD.html">CURLOPT_USERPWD</a> option or with the <a Class="emphasis" href="./CURLOPT_USERNAME.html">CURLOPT_USERNAME</a> and the <a Class="emphasis" href="./CURLOPT_PASSWORD.html">CURLOPT_PASSWORD</a> options.
diff --git a/docs/libcurl/opts/CURLOPT_HTTPAUTH.pdf b/docs/libcurl/opts/CURLOPT_HTTPAUTH.pdf
index a830302ac..34aa232cc 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPAUTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTPAUTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTPGET.html b/docs/libcurl/opts/CURLOPT_HTTPGET.html
index d826527fb..cd708515d 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPGET.html
+++ b/docs/libcurl/opts/CURLOPT_HTTPGET.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTPGET man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,24 +47,22 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTPGET - ask for a HTTP GET request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPGET, long useget); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If <span Class="emphasis">useget</span> is 1, this forces the HTTP request to get back to using GET. Usable if a POST, HEAD, PUT, etc has been used previously using the same curl <span Class="emphasis">handle</span>.
<p class="level0">When setting <a Class="emphasis" href="./CURLOPT_HTTPGET.html">CURLOPT_HTTPGET</a> to 1, it will automatically set <a Class="emphasis" href="./CURLOPT_NOBODY.html">CURLOPT_NOBODY</a> to 0 and <a Class="emphasis" href="./CURLOPT_UPLOAD.html">CURLOPT_UPLOAD</a> to 0. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* use a GET to fetch this */
-&nbsp; curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* use a GET to fetch this */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_HTTPGET, 1L);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Along with HTTP <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPGET.pdf b/docs/libcurl/opts/CURLOPT_HTTPGET.pdf
index 110a5d136..2bb9c9ea6 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPGET.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTPGET.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTPHEADER.3 b/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
index cd504314b..10fcf08f0 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -63,48 +63,21 @@ Pass a NULL to this option to reset back to no custom headers.
The most commonly replaced headers have "shortcuts" in the options
\fICURLOPT_COOKIE(3)\fP, \fICURLOPT_USERAGENT(3)\fP and
-\fICURLOPT_REFERER(3)\fP. We recommend using those.
+\fICURLOPT_REFERER(3)\fP.
There's an alternative option that sets or replaces headers only for requests
that are sent with CONNECT to a proxy: \fICURLOPT_PROXYHEADER(3)\fP. Use
\fICURLOPT_HEADEROPT(3)\fP to control the behavior.
-.SH SECURITY CONCERNS
-By default, this option makes libcurl send the given headers in all HTTP
-requests done by this handle. You should therefore use this option with
-caution if you for example connect to the remote site using a proxy and a
-CONNECT request, you should to consider if that proxy is supposed to also get
-the headers. They may be private or otherwise sensitive to leak.
-
-Use \fICURLOPT_HEADEROPT(3)\fP to make the headers only get sent to where you
-intend them to get sent.
.SH DEFAULT
NULL
.SH PROTOCOLS
HTTP
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-
-struct curl_slist *list = NULL;
-
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- list = curl_slist_append(list, "Shoesize: 10");
- list = curl_slist_append(list, "Accept:");
-
- curl_easy_setopt(curl, CURLOPT_HTTPHEADER, list);
-
- curl_easy_perform(curl);
-
- curl_slist_free_all(list); /* free the list again */
-}
-.fi
-
+TODO
.SH AVAILABILITY
As long as HTTP is enabled
.SH RETURN VALUE
Returns CURLE_OK if HTTP is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
.BR CURLOPT_CUSTOMREQUEST "(3), " CURLOPT_HEADEROPT "(3), "
-.BR CURLOPT_PROXYHEADER "(3), " CURLOPT_HEADER "(3)"
+.BR CURLOPT_PROXYHEADER "(3)"
diff --git a/docs/libcurl/opts/CURLOPT_HTTPHEADER.html b/docs/libcurl/opts/CURLOPT_HTTPHEADER.html
index 3cbb716ed..308887a5d 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPHEADER.html
+++ b/docs/libcurl/opts/CURLOPT_HTTPHEADER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTPHEADER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTPHEADER - set custom HTTP headers <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPHEADER, struct curl_slist *headers); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of HTTP headers to pass to the server and/or proxy in your HTTP request. The same list can be used for both host and proxy requests!
<p class="level0">The linked list should be a fully valid list of <span Class="bold">struct curl_slist</span> structs properly filled in. Use <span Class="emphasis">curl_slist_append(3)</span> to create the list and <span Class="emphasis">curl_slist_free_all(3)</span> to clean up an entire list. If you add a header that is otherwise generated and used by libcurl internally, your added one will be used instead. If you add a header with no content as in 'Accept:' (no data on the right side of the colon), the internally used header will get disabled. With this option you can add new headers, replace internal headers and remove internal headers. To add a header with no content (nothing to the right side of the colon), use the form 'MyHeader;' (note the ending semicolon).
@@ -60,35 +55,13 @@ p.roffit {
<p class="level0">The first line in a request (containing the method, usually a GET or POST) is not a header and cannot be replaced using this option. Only the lines following the request-line are headers. Adding this method line in this list of headers will only cause your request to send an invalid header. Use <a Class="emphasis" href="./CURLOPT_CUSTOMREQUEST.html">CURLOPT_CUSTOMREQUEST</a> to change the method.
<p class="level0">When this option is passed to <span Class="emphasis">curl_easy_setopt(3)</span>, libcurl will not copy the entire list so you <span Class="bold">must</span> keep it around until you no longer use this <span Class="emphasis">handle</span> for a transfer before you call <span Class="emphasis">curl_slist_free_all(3)</span> on the list.
<p class="level0">Pass a NULL to this option to reset back to no custom headers.
-<p class="level0">The most commonly replaced headers have "shortcuts" in the options <a Class="emphasis" href="./CURLOPT_COOKIE.html">CURLOPT_COOKIE</a>, <a Class="emphasis" href="./CURLOPT_USERAGENT.html">CURLOPT_USERAGENT</a> and <a Class="emphasis" href="./CURLOPT_REFERER.html">CURLOPT_REFERER</a>. We recommend using those.
-<p class="level0">There's an alternative option that sets or replaces headers only for requests that are sent with CONNECT to a proxy: <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a>. Use <a Class="emphasis" href="./CURLOPT_HEADEROPT.html">CURLOPT_HEADEROPT</a> to control the behavior. <a name="SECURITY"></a><h2 class="nroffsh">SECURITY CONCERNS</h2>
-<p class="level0">By default, this option makes libcurl send the given headers in all HTTP requests done by this handle. You should therefore use this option with caution if you for example connect to the remote site using a proxy and a CONNECT request, you should to consider if that proxy is supposed to also get the headers. They may be private or otherwise sensitive to leak.
-<p class="level0">Use <a Class="emphasis" href="./CURLOPT_HEADEROPT.html">CURLOPT_HEADEROPT</a> to make the headers only get sent to where you intend them to get sent. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">The most commonly replaced headers have "shortcuts" in the options <a Class="emphasis" href="./CURLOPT_COOKIE.html">CURLOPT_COOKIE</a>, <a Class="emphasis" href="./CURLOPT_USERAGENT.html">CURLOPT_USERAGENT</a> and <a Class="emphasis" href="./CURLOPT_REFERER.html">CURLOPT_REFERER</a>.
+<p class="level0">There's an alternative option that sets or replaces headers only for requests that are sent with CONNECT to a proxy: <a Class="emphasis" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a>. Use <a Class="emphasis" href="./CURLOPT_HEADEROPT.html">CURLOPT_HEADEROPT</a> to control the behavior. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-&nbsp;
-struct curl_slist *list = NULL;
-&nbsp;
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; list = curl_slist_append(list, "Shoesize: 10");
-&nbsp; list = curl_slist_append(list, "Accept:");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_HTTPHEADER, list);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-&nbsp;
-&nbsp; curl_slist_free_all(list); /* free the list again */
-}
-</pre>
-
-<p class="level0">
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">As long as HTTP is enabled <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if HTTP is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_CUSTOMREQUEST.html">CURLOPT_CUSTOMREQUEST</a>, <a Class="manpage" href="./CURLOPT_HEADEROPT.html">CURLOPT_HEADEROPT</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a>, <a Class="manpage" href="./CURLOPT_HEADER.html">CURLOPT_HEADER</a>, <p class="roffit">
+<p class="level0"><a Class="manpage" href="./CURLOPT_CUSTOMREQUEST.html">CURLOPT_CUSTOMREQUEST</a>, <a Class="manpage" href="./CURLOPT_HEADEROPT.html">CURLOPT_HEADEROPT</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_PROXYHEADER.html">CURLOPT_PROXYHEADER</a>, <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPHEADER.pdf b/docs/libcurl/opts/CURLOPT_HTTPHEADER.pdf
index 6c48bfa5c..4e471f2ec 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPHEADER.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTPHEADER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPOST.html b/docs/libcurl/opts/CURLOPT_HTTPPOST.html
index 41ada86fa..226621d77 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPOST.html
+++ b/docs/libcurl/opts/CURLOPT_HTTPPOST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTPPOST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,41 +47,38 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTPPOST - specify the multipart formpost content <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPPOST,
-&nbsp; struct curl_httppost *formpost);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPPOST,
+ &nbsp; struct curl_httppost *formpost);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Tells libcurl you want a multipart/formdata HTTP POST to be made and you instruct what data to pass on to the server in the <span Class="emphasis">formpost</span> argument. Pass a pointer to a linked list of curl_httppost structs as parameter. The easiest way to create such a list, is to use <span Class="emphasis">curl_formadd(3)</span> as documented. The data in this list must remain intact until you close this curl handle again with <span Class="emphasis">curl_easy_cleanup(3)</span>.
<p class="level0">Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>.
<p class="level0">When setting <a Class="emphasis" href="./CURLOPT_HTTPPOST.html">CURLOPT_HTTPPOST</a>, it will automatically set <a Class="emphasis" href="./CURLOPT_NOBODY.html">CURLOPT_NOBODY</a> to 0. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-/* Fill in the file upload field. This makes libcurl load data from
-&nbsp; the given file name when curl_easy_perform() is called. */
-curl_formadd(&formpost,
-&nbsp; &lastptr,
-&nbsp; CURLFORM_COPYNAME, "sendfile",
-&nbsp; CURLFORM_FILE, "postit2.c",
-&nbsp; CURLFORM_END);
-&nbsp;
-/* Fill in the filename field */
-curl_formadd(&formpost,
-&nbsp; &lastptr,
-&nbsp; CURLFORM_COPYNAME, "filename",
-&nbsp; CURLFORM_COPYCONTENTS, "postit2.c",
-&nbsp; CURLFORM_END);
-&nbsp;
-/* Fill in the submit field too, even if this is rarely needed */
-curl_formadd(&formpost,
-&nbsp; &lastptr,
-&nbsp; CURLFORM_COPYNAME, "submit",
-&nbsp; CURLFORM_COPYCONTENTS, "send",
-&nbsp; CURLFORM_END);
-</pre>
+<p class="level0"><pre>
+<p class="level0">/* Fill in the file upload field. This makes libcurl load data from
+ &nbsp; the given file name when curl_easy_perform() is called. */
+ curl_formadd(&formpost,
+ &nbsp; &lastptr,
+ &nbsp; CURLFORM_COPYNAME, "sendfile",
+ &nbsp; CURLFORM_FILE, "postit2.c",
+ &nbsp; CURLFORM_END);
+ <p class="level0">/* Fill in the filename field */
+ curl_formadd(&formpost,
+ &nbsp; &lastptr,
+ &nbsp; CURLFORM_COPYNAME, "filename",
+ &nbsp; CURLFORM_COPYCONTENTS, "postit2.c",
+ &nbsp; CURLFORM_END);
+ <p class="level0">/* Fill in the submit field too, even if this is rarely needed */
+ curl_formadd(&formpost,
+ &nbsp; &lastptr,
+ &nbsp; CURLFORM_COPYNAME, "submit",
+ &nbsp; CURLFORM_COPYCONTENTS, "send",
+ &nbsp; CURLFORM_END);
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">As long as HTTP is enabled <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPOST.pdf b/docs/libcurl/opts/CURLOPT_HTTPPOST.pdf
index 4f23a25ce..3889f02e0 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPOST.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTPPOST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3 b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
index f861afbde..3cbf50e2d 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -37,9 +37,6 @@ Tunneling essentially means that a CONNECT is sent to the proxy, asking it to
connect to a remote host on a specific port number and then the traffic is
just passed through the proxy. Proxies tend to whitelist specific port numbers
it allows CONNECT requests to and often only port 80 and 443 are allowed.
-
-When using this, it only makes sense to use \fICURLOPT_PROXYTYPE(3)\fP set to
-a HTTP proxy.
.SH DEFAULT
0
.SH PROTOCOLS
@@ -51,4 +48,4 @@ Always
.SH RETURN VALUE
Returns CURLE_OK
.SH "SEE ALSO"
-.BR CURLOPT_PROXY "(3), " CURLOPT_PROXYTYPE "(3), " CURLOPT_PROXYPORT "(3), "
+.BR CURLOPT_PROXY "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.html b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.html
index 4ddfade34..6f1688eb0 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.html
+++ b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTPPROXYTUNNEL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,16 +47,15 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTPPROXYTUNNEL - tunnel through HTTP proxy <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTPPROXYTUNNEL, long tunnel); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the parameter to 1 to make libcurl tunnel all operations through the HTTP proxy. There is a big difference between using a proxy and to tunnel through it. If you don't know what this means, you probably don't want this tunneling option.
-<p class="level0">Tunneling essentially means that a CONNECT is sent to the proxy, asking it to connect to a remote host on a specific port number and then the traffic is just passed through the proxy. Proxies tend to whitelist specific port numbers it allows CONNECT requests to and often only port 80 and 443 are allowed.
-<p class="level0">When using this, it only makes sense to use <a Class="emphasis" href="./CURLOPT_PROXYTYPE.html">CURLOPT_PROXYTYPE</a> set to a HTTP proxy. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">Tunneling essentially means that a CONNECT is sent to the proxy, asking it to connect to a remote host on a specific port number and then the traffic is just passed through the proxy. Proxies tend to whitelist specific port numbers it allows CONNECT requests to and often only port 80 and 443 are allowed. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All network protocols <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_PROXY.html">CURLOPT_PROXY</a>, <a Class="manpage" href="./CURLOPT_PROXYTYPE.html">CURLOPT_PROXYTYPE</a>, <a Class="manpage" href="./CURLOPT_PROXYPORT.html">CURLOPT_PROXYPORT</a>, <span Class="manpage"> </span> <p class="roffit">
+<p class="level0"><a Class="manpage" href="./CURLOPT_PROXY.html">CURLOPT_PROXY</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.pdf b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.pdf
index e99689f37..babdf5229 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.html b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.html
index d6193c2e2..cacd17eca 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.html
+++ b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTP_CONTENT_DECODING man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTP_CONTENT_DECODING - enable/disable HTTP content decoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_CONTENT_DECODING,
-&nbsp; long enabled);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_CONTENT_DECODING,
+ &nbsp; long enabled);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long to tell libcurl how to act on content decoding. If set to zero, content decoding will be disabled. If set to 1 it is enabled. Libcurl has no default content decoding but requires you to use <a Class="emphasis" href="./CURLOPT_ACCEPT_ENCODING.html">CURLOPT_ACCEPT_ENCODING</a> for that. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.pdf b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.pdf
index a489403aa..36983d89b 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.html b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.html
index be05c43f9..ddf9eea7b 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.html
+++ b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTP_TRANSFER_DECODING man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTP_TRANSFER_DECODING - enable/disable HTTP transfer decoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_TRANSFER_DECODING,
-&nbsp; long enabled);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_TRANSFER_DECODING,
+ &nbsp; long enabled);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long to tell libcurl how to act on transfer decoding. If set to zero, transfer decoding will be disabled, if set to 1 it is enabled (default). libcurl does chunked transfer decoding by default unless this option is set to zero. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.pdf b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.pdf
index c6bc68b53..151796c93 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3 b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
index c85d14482..ed5ea82b4 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -41,8 +41,8 @@ Enforce HTTP 1.0 requests.
.IP CURL_HTTP_VERSION_1_1
Enforce HTTP 1.1 requests.
.IP CURL_HTTP_VERSION_2_0
-Attempt HTTP 2 requests. libcurl will fall back to HTTP 1.x if HTTP 2 can't be
-negotiated with the server. (Added in 7.33.0)
+Attempt HTTP 2.0 requests. libcurl will fall back to HTTP 1.x if HTTP 2.0
+can't be negotiated with the server.
.SH DEFAULT
CURL_HTTP_VERSION_NONE
.SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.html b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.html
index 05c4b4ce1..7169870b8 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.html
+++ b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_HTTP_VERSION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_HTTP_VERSION - specify HTTP protocol version to use <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HTTP_VERSION, long version); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass <span Class="emphasis">version</span> a long, set to one of the values described below. They force libcurl to use the specific HTTP versions. This is not sensible to do unless you have a good reason. You have to set this option if you want to use libcurl's HTTP/2 support.
<p class="level0">
@@ -63,7 +58,7 @@ p.roffit {
<p class="level0"><a name="CURLHTTPVERSION11"></a><span class="nroffip">CURL_HTTP_VERSION_1_1</span>
<p class="level1">Enforce HTTP 1.1 requests.
<p class="level0"><a name="CURLHTTPVERSION20"></a><span class="nroffip">CURL_HTTP_VERSION_2_0</span>
-<p class="level1">Attempt HTTP 2 requests. libcurl will fall back to HTTP 1.x if HTTP 2 can't be negotiated with the server. (Added in 7.33.0) <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level1">Attempt HTTP 2.0 requests. libcurl will fall back to HTTP 1.x if HTTP 2.0 can't be negotiated with the server. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">CURL_HTTP_VERSION_NONE <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.pdf b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.pdf
index 27215d726..7351f4d2b 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.pdf
+++ b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3 b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
index 51fd6b08c..11bff65c6 100644
--- a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
+++ b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -42,17 +42,7 @@ Only use this option if strictly necessary.
.SH PROTOCOLS
HTTP
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* we know the server is silly, ignore content-length */
- curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, 1L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Added in 7.14.1
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.html b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.html
index c7c52298c..7616ae51b 100644
--- a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.html
+++ b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_IGNORE_CONTENT_LENGTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,30 +47,17 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_IGNORE_CONTENT_LENGTH - ignore Content-Length in HTTP response <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IGNORE_CONTENT_LENGTH,
-&nbsp; long ignore);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IGNORE_CONTENT_LENGTH,
+ &nbsp; long ignore);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If <span Class="emphasis">ignore</span> is set to 1, ignore the Content-Length header in the HTTP response. This is useful for Apache 1.x (and similar servers) which will report incorrect content length for files over 2 gigabytes. If this option is used, curl will not be able to accurately report progress, and will simply stop the download when the server ends the connection.
<p class="level0">Only use this option if strictly necessary. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* we know the server is silly, ignore content-length */
-&nbsp; curl_easy_setopt(curl, CURLOPT_IGNORE_CONTENT_LENGTH, 1L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.14.1 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_HTTP_VERSION.html">CURLOPT_HTTP_VERSION</a>, <a Class="manpage" href="./CURLOPT_MAXFILESIZE_LARGE.html">CURLOPT_MAXFILESIZE_LARGE</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.pdf b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.pdf
index 083d3736f..90a31bc0f 100644
--- a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
index fd49e21a7..129414c07 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -49,20 +49,7 @@ Unset
.SH PROTOCOLS
Many
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- long uploadsize = FILE_SIZE;
-
- curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/destination.tar.gz");
-
- curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
- curl_easy_setopt(curl, CURLOPT_INFILESIZE, uploadsize);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
SMTP support added in 7.23.0
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE.html b/docs/libcurl/opts/CURLOPT_INFILESIZE.html
index 48accfee0..ae0e21740 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE.html
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_INFILESIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_INFILESIZE - set size of the input file to send off <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INFILESIZE, long filesize); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">When uploading a file to a remote site, <span Class="emphasis">filesize</span> should be used to tell libcurl what the expected size of the input file is. This value must be passed as a long. See also <a Class="emphasis" href="./CURLOPT_INFILESIZE_LARGE.html">CURLOPT_INFILESIZE_LARGE</a> for sending files larger than 2GB.
<p class="level0">For uploading using SCP, this option or <a Class="emphasis" href="./CURLOPT_INFILESIZE_LARGE.html">CURLOPT_INFILESIZE_LARGE</a> is mandatory.
@@ -61,22 +56,7 @@ p.roffit {
<p class="level0">This option does not limit how much data libcurl will actually send, as that is controlled entirely by what the read callback returns, but telling one value and sending a different amount may lead to errors. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Unset <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Many <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; long uploadsize = FILE_SIZE;
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/destination.tar.gz">ftp://example.com/destination.tar.gz</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE, uploadsize);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">SMTP support added in 7.23.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_INFILESIZE_LARGE.html">CURLOPT_INFILESIZE_LARGE</a>, <a Class="manpage" href="./CURLOPT_UPLOAD.html">CURLOPT_UPLOAD</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE.pdf b/docs/libcurl/opts/CURLOPT_INFILESIZE.pdf
index cc2f21888..39e4d2813 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE.pdf
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
index 114676d0e..0aa522452 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -50,20 +50,7 @@ Unset
.SH PROTOCOLS
Many
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_off_t uploadsize = FILE_SIZE;
-
- curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/destination.tar.gz");
-
- curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-
- curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadsize);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
SMTP support added in 7.23.0
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.html b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.html
index 0ad59d059..c16aed1c8 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_INFILESIZE_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_INFILESIZE_LARGE - set size of the input file to send off <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INFILESIZE_LARGE,
-&nbsp; curl_off_t filesize);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INFILESIZE_LARGE,
+ &nbsp; curl_off_t filesize);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">When uploading a file to a remote site, <span Class="emphasis">filesize</span> should be used to tell libcurl what the expected size of the input file is. This value must be passed as a <span Class="bold">curl_off_t</span>.
<p class="level0">For uploading using SCP, this option or <a Class="emphasis" href="./CURLOPT_INFILESIZE.html">CURLOPT_INFILESIZE</a> is mandatory.
@@ -66,22 +60,7 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INFILESIZE_LARGE,
<p class="level0">This option does not limit how much data libcurl will actually send, as that is controlled entirely by what the read callback returns, but telling one value and sending a different amount may lead to errors. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Unset <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Many <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_off_t uploadsize = FILE_SIZE;
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/destination.tar.gz">ftp://example.com/destination.tar.gz</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, uploadsize);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">SMTP support added in 7.23.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_INFILESIZE.html">CURLOPT_INFILESIZE</a>, <a Class="manpage" href="./CURLOPT_UPLOAD.html">CURLOPT_UPLOAD</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.pdf b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.pdf
index bcb5dea2f..769696ade 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_INTERFACE.html b/docs/libcurl/opts/CURLOPT_INTERFACE.html
index 94faf8b7d..480679770 100644
--- a/docs/libcurl/opts/CURLOPT_INTERFACE.html
+++ b/docs/libcurl/opts/CURLOPT_INTERFACE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_INTERFACE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_INTERFACE - source interface for outgoing traffic <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INTERFACE, char *interface); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter. This sets the <span Class="emphasis">interface</span> name to use as outgoing network interface. The name can be an interface name, an IP address, or a host name.
<p class="level0">If the parameter starts with "if!" then it is treated as only as interface name and no attempt will ever be named to do treat it as an IP address or to do name resolution on it. If the parameter starts with "host!" it is treated as either an IP address or a hostname. Hostnames are resolved synchronously. Using the if! format is highly recommended when using the multi interfaces to avoid allowing the code to block. If "if!" is specified but the parameter does not match an existing interface, CURLE_INTERFACE_FAILED is returned from the libcurl function used to perform the transfer. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_INTERFACE.pdf b/docs/libcurl/opts/CURLOPT_INTERFACE.pdf
index b2f5d992d..564e7b2a4 100644
--- a/docs/libcurl/opts/CURLOPT_INTERFACE.pdf
+++ b/docs/libcurl/opts/CURLOPT_INTERFACE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.html b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.html
index 068615c0c..bc9892814 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.html
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_INTERLEAVEDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_INTERLEAVEDATA - custom pointer to RTSP interleave callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INTERLEAVEDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This is the userdata <span Class="emphasis">pointer</span> that will be passed to <a Class="emphasis" href="./CURLOPT_INTERLEAVEFUNCTION.html">CURLOPT_INTERLEAVEFUNCTION</a> when interleaved RTP data is received. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.pdf b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.pdf
index f2e1b9a52..b51132c72 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.html b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.html
index c3bdbfb1f..d6d82a1bd 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_INTERLEAVEFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,15 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_INTERLEAVEFUNCTION - callback function for RTSP interleaved data <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-size_t interleave_callback(void *ptr, size_t size, size_t nmemb,
-&nbsp; void *userdata);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INTERLEAVEFUNCTION,
-&nbsp; interleave_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">size_t interleave_callback(void *ptr, size_t size, size_t nmemb,
+ &nbsp; void *userdata);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_INTERLEAVEFUNCTION,
+ &nbsp; interleave_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback function gets called by libcurl as soon as it has received interleaved RTP data. This function gets called for each $ block and therefore contains exactly one upper-layer protocol unit (e.g. one RTP packet). Curl writes the interleaved header as well as the included data for each call. The first byte is always an ASCII dollar sign. The dollar sign is followed by a one byte channel identifier and then a 2 byte integer length in network byte order. See <span Class="emphasis"><a href="http://www.ietf.org/rfc/rfc2326.txt">RFC 2326</a> Section 10.12</span> for more information on how RTP interleaving behaves. If unset or set to NULL, curl will use the default write function.
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.pdf
index 3aab7594a..08f7c69cd 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLDATA.html b/docs/libcurl/opts/CURLOPT_IOCTLDATA.html
index 212d263da..7b4b2961c 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLDATA.html
+++ b/docs/libcurl/opts/CURLOPT_IOCTLDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_IOCTLDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_IOCTLDATA - custom pointer passed to I/O callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IOCTLDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass the <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the 3rd argument in the ioctl callback set with <a Class="emphasis" href="./CURLOPT_IOCTLFUNCTION.html">CURLOPT_IOCTLFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">By default, the value of this parameter is NULL. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLDATA.pdf b/docs/libcurl/opts/CURLOPT_IOCTLDATA.pdf
index 6c665668d..a6bb33b8c 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_IOCTLDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.html b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.html
index 361ddfadc..4280b9f8a 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_IOCTLFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,26 +47,22 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_IOCTLFUNCTION - callback for I/O operations <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-typedef enum {
-&nbsp; CURLIOE_OK, /* I/O operation successful */
-&nbsp; CURLIOE_UNKNOWNCMD, /* command was unknown to callback */
-&nbsp; CURLIOE_FAILRESTART, /* failed to restart the read */
-&nbsp; CURLIOE_LAST /* never use */
-} curlioerr;
-&nbsp;
-typedef enum {
-&nbsp; CURLIOCMD_NOP, /* no operation */
-&nbsp; CURLIOCMD_RESTARTREAD, /* restart the read stream from start */
-&nbsp; CURLIOCMD_LAST /* never use */
-} curliocmd;
-&nbsp;
-curlioerr ioctl_callback(CURL *handle, int cmd, void *clientp);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IOCTLFUNCTION, ioctl_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">typedef enum {
+ &nbsp; CURLIOE_OK, /* I/O operation successful */
+ &nbsp; CURLIOE_UNKNOWNCMD, /* command was unknown to callback */
+ &nbsp; CURLIOE_FAILRESTART, /* failed to restart the read */
+ &nbsp; CURLIOE_LAST /* never use */
+ } curlioerr;
+ <p class="level0">typedef enum {
+ &nbsp; CURLIOCMD_NOP, /* no operation */
+ &nbsp; CURLIOCMD_RESTARTREAD, /* restart the read stream from start */
+ &nbsp; CURLIOCMD_LAST /* never use */
+ } curliocmd;
+ <p class="level0">curlioerr ioctl_callback(CURL *handle, int cmd, void *clientp);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IOCTLFUNCTION, ioctl_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback function gets called by libcurl when something special I/O-related needs to be done that the library can't do by itself. For now, rewinding the read data stream is the only action it can request. The rewinding of the read data stream may be necessary when doing a HTTP PUT or POST with a multi-pass authentication method.
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.pdf
index 5049dc700..bf304e1b7 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_IPRESOLVE.html b/docs/libcurl/opts/CURLOPT_IPRESOLVE.html
index e908e358a..283873ca7 100644
--- a/docs/libcurl/opts/CURLOPT_IPRESOLVE.html
+++ b/docs/libcurl/opts/CURLOPT_IPRESOLVE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_IPRESOLVE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_IPRESOLVE - specify which IP protocol version to use <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_IPRESOLVE, long resolve); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Allows an application to select what kind of IP addresses to use when resolving host names. This is only interesting when using host names that resolve addresses using more than one version of IP. The allowed values are:
<p class="level0"><a name="CURLIPRESOLVEWHATEVER"></a><span class="nroffip">CURL_IPRESOLVE_WHATEVER</span>
diff --git a/docs/libcurl/opts/CURLOPT_IPRESOLVE.pdf b/docs/libcurl/opts/CURLOPT_IPRESOLVE.pdf
index 839fa8949..79c6dd3ad 100644
--- a/docs/libcurl/opts/CURLOPT_IPRESOLVE.pdf
+++ b/docs/libcurl/opts/CURLOPT_IPRESOLVE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_ISSUERCERT.html b/docs/libcurl/opts/CURLOPT_ISSUERCERT.html
index 0577496d7..d1bef9fe3 100644
--- a/docs/libcurl/opts/CURLOPT_ISSUERCERT.html
+++ b/docs/libcurl/opts/CURLOPT_ISSUERCERT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_ISSUERCERT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_ISSUERCERT - issuer SSL certificate filename <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ISSUERCERT, char *file); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a zero terminated string naming a <span Class="emphasis">file</span> holding a CA certificate in PEM format. If the option is set, an additional check against the peer certificate is performed to verify the issuer is indeed the one associated with the certificate provided by the option. This additional check is useful in multi-level PKI where one needs to enforce that the peer certificate is from a specific branch of the tree.
<p class="level0">This option makes sense only when used in combination with the <a Class="emphasis" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a> option. Otherwise, the result of the check is not considered as failure.
diff --git a/docs/libcurl/opts/CURLOPT_ISSUERCERT.pdf b/docs/libcurl/opts/CURLOPT_ISSUERCERT.pdf
index 5ce4b7abc..a04ea53fa 100644
--- a/docs/libcurl/opts/CURLOPT_ISSUERCERT.pdf
+++ b/docs/libcurl/opts/CURLOPT_ISSUERCERT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_KEYPASSWD.html b/docs/libcurl/opts/CURLOPT_KEYPASSWD.html
index 81e95355c..9c022915b 100644
--- a/docs/libcurl/opts/CURLOPT_KEYPASSWD.html
+++ b/docs/libcurl/opts/CURLOPT_KEYPASSWD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_KEYPASSWD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_KEYPASSWD - set passphrase to private key <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_KEYPASSWD, char *pwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It will be used as the password required to use the <a Class="emphasis" href="./CURLOPT_SSLKEY.html">CURLOPT_SSLKEY</a> or <a Class="emphasis" href="./CURLOPT_SSH_PRIVATE_KEYFILE.html">CURLOPT_SSH_PRIVATE_KEYFILE</a> private key. You never needed a pass phrase to load a certificate but you need one to load your private key. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_KEYPASSWD.pdf b/docs/libcurl/opts/CURLOPT_KEYPASSWD.pdf
index b583ca434..db9de05c2 100644
--- a/docs/libcurl/opts/CURLOPT_KEYPASSWD.pdf
+++ b/docs/libcurl/opts/CURLOPT_KEYPASSWD.pdf
@@ -68,12 +68,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:804d2b7e-78d5-11f0-0000-ba6faefc18a2' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:804d2b7e-78d5-11f0-0000-ba6faefc18a2' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:21+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:21+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:67d31dca-cf2b-11ef-0000-ba6faefc18a2' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:67d31dca-cf2b-11ef-0000-ba6faefc18a2' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:17:59+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:17:59+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:804d2b7e-78d5-11f0-0000-ba6faefc18a2' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:804d2b7e-78d5-11f0-0000-ba6faefc18a2'/>
-<rdf:Description rdf:about='uuid:804d2b7e-78d5-11f0-0000-ba6faefc18a2' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:67d31dca-cf2b-11ef-0000-ba6faefc18a2' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:67d31dca-cf2b-11ef-0000-ba6faefc18a2'/>
+<rdf:Description rdf:about='uuid:67d31dca-cf2b-11ef-0000-ba6faefc18a2' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -82,9 +82,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081121+02'00')
-/ModDate(D:20150812081121+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091759+01'00')
+/ModDate(D:20150108091759+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -105,7 +105,7 @@ xref
0000002124 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<18792872C3CF70730F5D6279F9982EE4><18792872C3CF70730F5D6279F9982EE4>]
+/ID [<9C282454DD73ABCBA4EAB892D19536F1><9C282454DD73ABCBA4EAB892D19536F1>]
>>
startxref
3701
diff --git a/docs/libcurl/opts/CURLOPT_KRBLEVEL.html b/docs/libcurl/opts/CURLOPT_KRBLEVEL.html
index 21e7239f8..4e503fd35 100644
--- a/docs/libcurl/opts/CURLOPT_KRBLEVEL.html
+++ b/docs/libcurl/opts/CURLOPT_KRBLEVEL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_KRBLEVEL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_KRBLEVEL - set FTP kerberos security level <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_KRBLEVEL, char *level); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter. Set the kerberos security level for FTP; this also enables kerberos awareness. This is a string that should match one of the following: 'clear', 'safe', 'confidential' or 'private'. If the string is set but doesn't match one of these, 'private' will be used. Set the string to NULL to disable kerberos support for FTP. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_KRBLEVEL.pdf b/docs/libcurl/opts/CURLOPT_KRBLEVEL.pdf
index b5d6e4a55..9a583b598 100644
--- a/docs/libcurl/opts/CURLOPT_KRBLEVEL.pdf
+++ b/docs/libcurl/opts/CURLOPT_KRBLEVEL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORT.html b/docs/libcurl/opts/CURLOPT_LOCALPORT.html
index be3089433..ff86fd5ce 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORT.html
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_LOCALPORT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_LOCALPORT - set local port number to use for socket <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOCALPORT, long port); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. This sets the local port number of the socket used for the connection. This can be used in combination with <a Class="emphasis" href="./CURLOPT_INTERFACE.html">CURLOPT_INTERFACE</a> and you are recommended to use <a Class="emphasis" href="./CURLOPT_LOCALPORTRANGE.html">CURLOPT_LOCALPORTRANGE</a> as well when this option is set. Valid port numbers are 1 - 65535. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled - use whatever the system thinks is fine <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORT.pdf b/docs/libcurl/opts/CURLOPT_LOCALPORT.pdf
index c0902cbdf..68e856471 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORT.pdf
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.html b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.html
index c5069d4e6..1e6181e21 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.html
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_LOCALPORTRANGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_LOCALPORTRANGE - number of additional local ports to try <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOCALPORTRANGE, &nbsp; long range); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. The <span Class="emphasis">range</span> argument is the number of attempts libcurl will make to find a working local port number. It starts with the given <a Class="emphasis" href="./CURLOPT_LOCALPORT.html">CURLOPT_LOCALPORT</a> and adds one to the number for each retry. Setting this option to 1 or below will make libcurl do only one try for the exact port number. Port numbers by nature are scarce resources that will be busy at times so setting this value to something too low might cause unnecessary connection setup failures. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.pdf b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.pdf
index 7a4f09c83..cf5a7a607 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.html b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.html
index b54df961f..ac8495543 100644
--- a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.html
+++ b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_LOGIN_OPTIONS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_LOGIN_OPTIONS - set login options <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOGIN_OPTIONS, char *options); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be pointing to the zero terminated <span Class="emphasis">options</span> string to use for the transfer.
<p class="level0">For more information about the login options please see <a href="http://www.ietf.org/rfc/rfc2384.txt">RFC 2384</a>, RFC5092 and IETF draft draft-earhart-url-smtp-00.txt
diff --git a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.pdf b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.pdf
index 5f36138ee..7c15e64ab 100644
--- a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.pdf
+++ b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.html b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.html
index bdef6e49b..a10f6e6d7 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.html
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_LOW_SPEED_LIMIT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_LOW_SPEED_LIMIT - set low speed limit in bytes per second <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOW_SPEED_LIMIT, long speedlimit); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter. It contains the average transfer speed in bytes per second that the transfer should be below during <a Class="emphasis" href="./CURLOPT_LOW_SPEED_TIME.html">CURLOPT_LOW_SPEED_TIME</a> seconds for libcurl to consider it to be too slow and abort. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.pdf b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.pdf
index 7533c2f2d..b7aaaf5a8 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.pdf
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.html b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.html
index 8e70e0697..0d097df9e 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.html
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.html
@@ -4,20 +4,15 @@
<title>CURLOPT_LOW_SPEED_TIME man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_LOW_SPEED_TIME - set low speed limit time period <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_LOW_SPEED_TIME, long speedtime); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter. It contains the time in number seconds that the transfer speed should be below the <a Class="emphasis" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a> for the library to consider it too slow and abort. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.pdf b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.pdf
index 301bdb9b6..41f2f3768 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.pdf
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.html b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.html
index 3bb82693d..3209031e0 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.html
+++ b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAIL_AUTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAIL_AUTH - SMTP authentication address <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAIL_AUTH, char *auth); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. This will be used to specify the authentication address (identity) of a submitted message that is being relayed to another server.
<p class="level0">This optional parameter allows co-operating agents in a trusted environment to communicate the authentication of individual messages and should only be used by the application program, using libcurl, if the application is itself a mail server acting in such an environment. If the application is operating as such and the AUTH address is not known or is invalid, then an empty string should be used for this parameter.
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.pdf b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.pdf
index a75fb8028..5afbd9755 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_FROM.html b/docs/libcurl/opts/CURLOPT_MAIL_FROM.html
index b230652cd..f34a2fc7b 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_FROM.html
+++ b/docs/libcurl/opts/CURLOPT_MAIL_FROM.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAIL_FROM man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAIL_FROM - SMTP sender address <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAIL_FROM, char *from); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. This should be used to specify the sender's email address when sending SMTP mail with libcurl.
<p class="level0">An originator email address should be specified with angled brackets (&lt;&gt;) around it, which if not specified will be added automatically.
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_FROM.pdf b/docs/libcurl/opts/CURLOPT_MAIL_FROM.pdf
index 45ed4ecfd..0d24fcefe 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_FROM.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAIL_FROM.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.html b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.html
index 13fe8f884..a37fcd589 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.html
+++ b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAIL_RCPT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAIL_RCPT - list of SMTP mail recipients <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAIL_RCPT,
-&nbsp; struct curl_slist *rcpts);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAIL_RCPT,
+ &nbsp; struct curl_slist *rcpts);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of recipients to pass to the server in your SMTP mail request. The linked list should be a fully valid list of <span class="bold">struct curl_slist</span> structs properly filled in. Use <span Class="emphasis">curl_slist_append(3)</span> to create the list and <span Class="emphasis">curl_slist_free_all(3)</span> to clean up an entire list.
<p class="level0">When performing a mail transfer, each recipient should be specified within a pair of angled brackets (&lt;&gt;), however, should you not use an angled bracket as the first character libcurl will assume you provided a single email address and enclose that address within brackets for you.
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.pdf b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.pdf
index 9fdabb234..bc2e86f8a 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.html b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.html
index e26de802a..3edcfba74 100644
--- a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.html
+++ b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAXCONNECTS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAXCONNECTS - maximum connection cache size <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXCONNECTS, long amount); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. The set <span Class="emphasis">amount</span> will be the maximum number of simultaneously open persistent connections that libcurl may cache in the pool associated with this handle. The default is 5, and there isn't much point in changing this value unless you are perfectly aware of how this works and changes libcurl's behaviour. This concerns connections using any of the protocols that support persistent connections.
<p class="level0">When reaching the maximum limit, curl closes the oldest one in the cache to prevent increasing the number of open connections.
diff --git a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.pdf b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.pdf
index 636725bdf..1cc92dbc5 100644
--- a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.html b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.html
index 0ee4cae7b..306cc5921 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.html
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAXFILESIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAXFILESIZE - maximum file size allowed to download <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXFILESIZE, long size); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter. This allows you to specify the maximum <span Class="emphasis">size</span> (in bytes) of a file to download. If the file requested is found larger than this value, the transfer will not start and <span Class="emphasis">CURLE_FILESIZE_EXCEEDED</span> will be returned.
<p class="level0">The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit. This concerns both FTP and HTTP transfers.
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.pdf b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.pdf
index e46c5223f..b434b9618 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.html b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.html
index f05bb589b..fb97d1e0a 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAXFILESIZE_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAXFILESIZE_LARGE - maximum file size allowed to download <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXFILESIZE_LARGE,
-&nbsp; curl_off_t size);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXFILESIZE_LARGE,
+ &nbsp; curl_off_t size);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a curl_off_t as parameter. This allows you to specify the maximum <span Class="emphasis">size</span> (in bytes) of a file to download. If the file requested is found larger than this value, the transfer will not start and <span Class="emphasis">CURLE_FILESIZE_EXCEEDED</span> will be returned.
<p class="level0">The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit. This concerns both FTP and HTTP transfers. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.pdf b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.pdf
index 6db1cbef2..3ab472129 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAXREDIRS.html b/docs/libcurl/opts/CURLOPT_MAXREDIRS.html
index fbeb6c416..5fe72479d 100644
--- a/docs/libcurl/opts/CURLOPT_MAXREDIRS.html
+++ b/docs/libcurl/opts/CURLOPT_MAXREDIRS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAXREDIRS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,28 +47,25 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAXREDIRS - maximum number of redirects allowed <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXREDIRS, long amount); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. The set number will be the redirection limit <span Class="emphasis">amount</span>. If that many redirections have been followed, the next redirect will cause an error (<span Class="emphasis">CURLE_TOO_MANY_REDIRECTS</span>). This option only makes sense if the <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a> is used at the same time.
<p class="level0">Setting the limit to 0 will make libcurl refuse any redirect.
<p class="level0">Set it to -1 for an infinite number of redirects. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">-1, unlimited <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com/">http://example.com/</a>");
-&nbsp;
-&nbsp; /* enable redirect following */
-&nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
-&nbsp;
-&nbsp; /* allow three redirects */
-&nbsp; curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 3L);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com/">http://example.com/</a>");
+ <p class="level0">&nbsp; /* enable redirect following */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
+ <p class="level0">&nbsp; /* allow three redirects */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_MAXREDIRS, 3L);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Along with HTTP <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_MAXREDIRS.pdf b/docs/libcurl/opts/CURLOPT_MAXREDIRS.pdf
index c7a5b867a..a00bda4a8 100644
--- a/docs/libcurl/opts/CURLOPT_MAXREDIRS.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAXREDIRS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.html b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.html
index f230b2291..aa542562a 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAX_RECV_SPEED_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAX_RECV_SPEED_LARGE - rate limit data download speed <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAX_RECV_SPEED_LARGE,
-&nbsp; curl_off_t speed);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAX_RECV_SPEED_LARGE,
+ &nbsp; curl_off_t speed);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a curl_off_t as parameter. If a download exceeds this <span Class="emphasis">speed</span> (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed.
<p class="level0">This option doesn't affect transfer speeds done with FILE:// URLs. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.pdf b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.pdf
index 485f096c1..ffd933ac4 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.html b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.html
index 295d5d585..ed9c19a2e 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_MAX_SEND_SPEED_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_MAX_SEND_SPEED_LARGE - rate limit data upload speed <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAX_SEND_SPEED_LARGE,
-&nbsp; curl_off_t maxspeed);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAX_SEND_SPEED_LARGE,
+ &nbsp; curl_off_t maxspeed);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a curl_off_t as parameter with the <span Class="emphasis">maxspeed</span>. If an upload exceeds this speed (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed.
<p class="level0">This option doesn't affect transfer speeds done with FILE:// URLs. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.pdf b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.pdf
index 7959ad858..9b4391877 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NETRC.html b/docs/libcurl/opts/CURLOPT_NETRC.html
index 3a99468be..777f4fffc 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC.html
+++ b/docs/libcurl/opts/CURLOPT_NETRC.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NETRC man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NETRC - request that .netrc is used <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NETRC, long level); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This parameter controls the preference <span Class="emphasis">level</span> of libcurl between using user names and passwords from your <span Class="emphasis">~/.netrc</span> file, relative to user names and passwords in the URL supplied with <a Class="emphasis" href="./CURLOPT_URL.html">CURLOPT_URL</a>.
<p class="level0">libcurl uses a user name (and supplied or prompted password) supplied with <a Class="emphasis" href="./CURLOPT_USERPWD.html">CURLOPT_USERPWD</a> or <a Class="emphasis" href="./CURLOPT_USERNAME.html">CURLOPT_USERNAME</a> in preference to any of the options controlled by this parameter.
diff --git a/docs/libcurl/opts/CURLOPT_NETRC.pdf b/docs/libcurl/opts/CURLOPT_NETRC.pdf
index 076fc49cf..05b8eea13 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC.pdf
+++ b/docs/libcurl/opts/CURLOPT_NETRC.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NETRC_FILE.html b/docs/libcurl/opts/CURLOPT_NETRC_FILE.html
index f3365608d..8b05da089 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC_FILE.html
+++ b/docs/libcurl/opts/CURLOPT_NETRC_FILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NETRC_FILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NETRC_FILE - file name to read .netrc info from <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NETRC_FILE, char *file); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, pointing to a zero terminated string containing the full path name to the <span Class="emphasis">file</span> you want libcurl to use as .netrc file. If this option is omitted, and <a Class="emphasis" href="./CURLOPT_NETRC.html">CURLOPT_NETRC</a> is set, libcurl will attempt to find a .netrc file in the current user's home directory. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NETRC_FILE.pdf b/docs/libcurl/opts/CURLOPT_NETRC_FILE.pdf
index 285d49e49..e14615dc1 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC_FILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_NETRC_FILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.html b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.html
index 2dfced773..401b8853d 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.html
+++ b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NEW_DIRECTORY_PERMS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NEW_DIRECTORY_PERMS - permissions for remotely created directories <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NEW_DIRECTORY_PERMS,
-&nbsp; long mode);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NEW_DIRECTORY_PERMS,
+ &nbsp; long mode);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as a parameter, containing the value of the permissions that will be assigned to newly created directories on the remote server. The default value is <span Class="emphasis">0755</span>, but any valid value can be used. The only protocols that can use this are <span Class="emphasis">sftp://</span>, <span Class="emphasis">scp://</span>, and <span Class="emphasis">file://</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0755 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.pdf b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.pdf
index 77b59ec8f..75aa45ffd 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.pdf
+++ b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.html b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.html
index e95b42e0c..da31f737f 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.html
+++ b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NEW_FILE_PERMS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NEW_FILE_PERMS - permissions for remotely created files <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NEW_FILE_PERMS,
-&nbsp; long mode);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NEW_FILE_PERMS,
+ &nbsp; long mode);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as a parameter, containing the value of the permissions that will be assigned to newly created files on the remote server. The default value is <span Class="emphasis">0644</span>, but any valid value can be used. The only protocols that can use this are <span Class="emphasis">sftp://</span>, <span Class="emphasis">scp://</span>, and <span Class="emphasis">file://</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0644 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.pdf b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.pdf
index fa8e3fbe8..4be08714a 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.pdf
+++ b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NOBODY.html b/docs/libcurl/opts/CURLOPT_NOBODY.html
index 3ca441899..abca4392e 100644
--- a/docs/libcurl/opts/CURLOPT_NOBODY.html
+++ b/docs/libcurl/opts/CURLOPT_NOBODY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NOBODY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,24 +47,22 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NOBODY - do the download request without getting the body <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NOBODY, long opt); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A long parameter set to 1 tells libcurl to not include the body-part in the output when doing what would otherwise be a download. For HTTP(S), this makes libcurl do a HEAD request. For most other protocols it means just not asking to transfer the body data.
<p class="level0">Enabling this option means asking for a download but without a body. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, the body is transferred <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Most <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* get us the resource without a body! */
-&nbsp; curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* get us the resource without a body! */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_NOBODY, 1L);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NOBODY.pdf b/docs/libcurl/opts/CURLOPT_NOBODY.pdf
index 0dc741ad9..d58164ad9 100644
--- a/docs/libcurl/opts/CURLOPT_NOBODY.pdf
+++ b/docs/libcurl/opts/CURLOPT_NOBODY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NOPROGRESS.html b/docs/libcurl/opts/CURLOPT_NOPROGRESS.html
index 72b427ce5..79bde0ee5 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROGRESS.html
+++ b/docs/libcurl/opts/CURLOPT_NOPROGRESS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NOPROGRESS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NOPROGRESS - switch off the progress meter <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NOPROGRESS, long onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If <span Class="emphasis">onoff</span> is to 1, it tells the library to shut off the progress meter completely for requests done with this <span Class="emphasis">handle</span>. It will also prevent the <a Class="emphasis" href="./CURLOPT_PROGRESSFUNCTION.html">CURLOPT_PROGRESSFUNCTION</a> from getting called.
<p class="level0">Future versions of libcurl are likely to not have any built-in progress meter at all. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NOPROGRESS.pdf b/docs/libcurl/opts/CURLOPT_NOPROGRESS.pdf
index b0bd0dea9..2d832a1ec 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROGRESS.pdf
+++ b/docs/libcurl/opts/CURLOPT_NOPROGRESS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_NOPROXY.html b/docs/libcurl/opts/CURLOPT_NOPROXY.html
index e30cc4825..f8b9794a1 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROXY.html
+++ b/docs/libcurl/opts/CURLOPT_NOPROXY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NOPROXY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NOPROXY - disable proxy use for specific hosts <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NOPROXY, char *noproxy); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string. The string consists of a comma separated list of host names that do not require a proxy to get reached, even if one is specified. The only wildcard available is a single * character, which matches all hosts, and effectively disables the proxy. Each name in this list is matched as either a domain which contains the hostname, or the hostname itself. For example, example.com would match example.com, example.com:80, and www.example.com, but not www.notanexample.com or example.com.othertld. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_NOPROXY.pdf b/docs/libcurl/opts/CURLOPT_NOPROXY.pdf
index 77d1934b8..5301afc45 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROXY.pdf
+++ b/docs/libcurl/opts/CURLOPT_NOPROXY.pdf
@@ -68,12 +68,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:817e587e-78d5-11f0-0000-65c5a25808db' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:817e587e-78d5-11f0-0000-65c5a25808db' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:23+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:23+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-65c5a25808db' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-65c5a25808db' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:02+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:02+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:817e587e-78d5-11f0-0000-65c5a25808db' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:817e587e-78d5-11f0-0000-65c5a25808db'/>
-<rdf:Description rdf:about='uuid:817e587e-78d5-11f0-0000-65c5a25808db' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-65c5a25808db' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:699ce14a-cf2b-11ef-0000-65c5a25808db'/>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-65c5a25808db' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -82,9 +82,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081123+02'00')
-/ModDate(D:20150812081123+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091802+01'00')
+/ModDate(D:20150108091802+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 14
@@ -104,7 +104,7 @@ xref
0000002157 00000 n
trailer
<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [(\005\234s\355\360]:{8$N72\264d:)(\005\234s\355\360]:{8$N72\264d:)]
+/ID [<2D83AF6D6784F99F64821E4ED344D788><2D83AF6D6784F99F64821E4ED344D788>]
>>
startxref
3734
diff --git a/docs/libcurl/opts/CURLOPT_NOSIGNAL.html b/docs/libcurl/opts/CURLOPT_NOSIGNAL.html
index 8453ca522..287fbb3cc 100644
--- a/docs/libcurl/opts/CURLOPT_NOSIGNAL.html
+++ b/docs/libcurl/opts/CURLOPT_NOSIGNAL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_NOSIGNAL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_NOSIGNAL - skip all signal handling <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_NOSIGNAL, long onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If <span Class="emphasis">onoff</span> is 1, libcurl will not use any functions that install signal handlers or any functions that cause signals to be sent to the process. This option is here to allow multi-threaded unix applications to still set/use all timeout options etc, without risking getting signals.
<p class="level0">If this option is set and libcurl has been built with the standard name resolver, timeouts will not occur while the name resolve takes place. Consider building libcurl with the c-ares or threaded resolver backends to enable asynchronous DNS lookups, to enable timeouts for name resolves without the use of signals.
diff --git a/docs/libcurl/opts/CURLOPT_NOSIGNAL.pdf b/docs/libcurl/opts/CURLOPT_NOSIGNAL.pdf
index e063cd006..619b766cb 100644
--- a/docs/libcurl/opts/CURLOPT_NOSIGNAL.pdf
+++ b/docs/libcurl/opts/CURLOPT_NOSIGNAL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.html b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.html
index 5475200f5..75985aaa7 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.html
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_OPENSOCKETDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_OPENSOCKETDATA - custom pointer passed to open socket callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_OPENSOCKETDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the first argument in the opensocket callback set with <a Class="emphasis" href="./CURLOPT_OPENSOCKETFUNCTION.html">CURLOPT_OPENSOCKETFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value of this parameter is NULL. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.pdf b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.pdf
index 11d5a53d7..7bf876d20 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.html b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.html
index 14d1e8cd9..b72dedb9f 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_OPENSOCKETFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,38 +47,34 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_OPENSOCKETFUNCTION - set callback for opening sockets <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-typedef enum {
-&nbsp; CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
-&nbsp; CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */
-&nbsp; CURLSOCKTYPE_LAST /* never use */
-} curlsocktype;
-&nbsp;
-struct curl_sockaddr {
-&nbsp; int family;
-&nbsp; int socktype;
-&nbsp; int protocol;
-&nbsp; unsigned int addrlen;
-&nbsp; struct sockaddr addr;
-};
-&nbsp;
-curl_socket_t opensocket_callback(void *clientp,
-&nbsp; curlsocktype purpose,
-&nbsp; struct curl_sockaddr *address);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_OPENSOCKETFUNCTION, opensocket_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">typedef enum {
+ &nbsp; CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
+ &nbsp; CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */
+ &nbsp; CURLSOCKTYPE_LAST /* never use */
+ } curlsocktype;
+ <p class="level0">struct curl_sockaddr {
+ &nbsp; int family;
+ &nbsp; int socktype;
+ &nbsp; int protocol;
+ &nbsp; unsigned int addrlen;
+ &nbsp; struct sockaddr addr;
+ };
+ <p class="level0">curl_socket_t opensocket_callback(void *clientp,
+ &nbsp; curlsocktype purpose,
+ &nbsp; struct curl_sockaddr *address);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_OPENSOCKETFUNCTION, opensocket_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback function gets called by libcurl instead of the <span Class="emphasis">socket(2)</span> call. The callback's <span Class="emphasis">purpose</span> argument identifies the exact purpose for this particular socket: <span Class="emphasis">CURLSOCKTYPE_IPCXN</span> is for IP based connections and <span Class="emphasis">CURLSOCKTYPE_ACCEPT</span> is for sockets created after accept() - such as when doing active FTP. Future versions of libcurl may support more purposes.
<p class="level0">The <span Class="emphasis">clientp</span> pointer contains whatever user-defined value set using the <a Class="emphasis" href="./CURLOPT_OPENSOCKETDATA.html">CURLOPT_OPENSOCKETDATA</a> function.
<p class="level0">The callback gets the resolved peer address as the <span Class="emphasis">address</span> argument and is allowed to modify the address or refuse to connect completely. The callback function should return the newly created socket or <span Class="emphasis">CURL_SOCKET_BAD</span> in case no connection could be established or another error was detected. Any additional <span Class="emphasis">setsockopt(2)</span> calls can of course be done on the socket at the user's discretion. A <span Class="emphasis">CURL_SOCKET_BAD</span> return value from the callback function will signal an unrecoverable error to libcurl and it will return <span Class="emphasis">CURLE_COULDNT_CONNECT</span> from the function that triggered this callback. This return code can be used for IP address blacklisting.
<p class="level0">If you want to pass in a socket with an already established connection, pass the socket back with this callback and then use <a Class="emphasis" href="./CURLOPT_SOCKOPTFUNCTION.html">CURLOPT_SOCKOPTFUNCTION</a> to signal that it already is connected. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">The default behavior is the equivalent of this: <pre class="level0">
-&nbsp; return socket(addr-&gt;family, addr-&gt;socktype, addr-&gt;protocol);
-</pre>
+<p class="level0">The default behavior is the equivalent of this: <pre>
+<p class="level0">&nbsp; return socket(addr-&gt;family, addr-&gt;socktype, addr-&gt;protocol);
+ </pre>
<p class="level0"><a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.pdf
index acf29a4ab..335e93ece 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PASSWORD.html b/docs/libcurl/opts/CURLOPT_PASSWORD.html
index a8f11ff00..b2da86d48 100644
--- a/docs/libcurl/opts/CURLOPT_PASSWORD.html
+++ b/docs/libcurl/opts/CURLOPT_PASSWORD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PASSWORD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PASSWORD - password to use in authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PASSWORD, char *pwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be pointing to the zero terminated password to use for the transfer.
<p class="level0">The <a Class="emphasis" href="./CURLOPT_PASSWORD.html">CURLOPT_PASSWORD</a> option should be used in conjunction with the <a Class="emphasis" href="./CURLOPT_USERNAME.html">CURLOPT_USERNAME</a> option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PASSWORD.pdf b/docs/libcurl/opts/CURLOPT_PASSWORD.pdf
index 7ee12c948..760f360e5 100644
--- a/docs/libcurl/opts/CURLOPT_PASSWORD.pdf
+++ b/docs/libcurl/opts/CURLOPT_PASSWORD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
deleted file mode 100644
index 490aca0d7..000000000
--- a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
+++ /dev/null
@@ -1,63 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_PATH_AS_IS 3 "17 Jun 2014" "libcurl 7.42.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_PATH_AS_IS \- do not handle dot dot sequences
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PATH_AS_IS, long leaveit);
-.SH DESCRIPTION
-By setting the long \fIleavit\fP to 1, to explicitly tell libcurl to not alter
-the given path before passing it on to the server.
-
-This tells libcurl to NOT squash sequences of "/../" or "/./" that may exist
-in the URL's path part and that is supposed to be removed according to RFC
-3986 section 5.2.4.
-
-Some server implementations are known to (erroneously) require the dot dot
-sequences to remain in the path and some clients want to pass these on in
-order to try out server implementations.
-
-By default libcurl will merge such sequences before using the path.
-.SH DEFAULT
-0
-.SH PROTOCOLS
-All
-.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com/../../etc/password");
-
- curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, 1L);
-
- curl_easy_perform(curl);
-}
-.fi
-.SH AVAILABILITY
-Aded in 7.42.0
-.SH RETURN VALUE
-Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
-.SH "SEE ALSO"
-.BR CURLOPT_STDERR "(3), " CURLOPT_DEBUGFUNCTION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.html b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.html
deleted file mode 100644
index 1d54f0171..000000000
--- a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.html
+++ /dev/null
@@ -1,79 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_PATH_AS_IS man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_PATH_AS_IS - do not handle dot dot sequences <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PATH_AS_IS, long leaveit); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">By setting the long <span Class="emphasis">leavit</span> to 1, to explicitly tell libcurl to not alter the given path before passing it on to the server.
-<p class="level0">This tells libcurl to NOT squash sequences of "/../" or "/./" that may exist in the URL's path part and that is supposed to be removed according to RFC 3986 section 5.2.4.
-<p class="level0">Some server implementations are known to (erroneously) require the dot dot sequences to remain in the path and some clients want to pass these on in order to try out server implementations.
-<p class="level0">By default libcurl will merge such sequences before using the path. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com/../../etc/password">http://example.com/../../etc/password</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_PATH_AS_IS, 1L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Aded in 7.42.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_STDERR.html">CURLOPT_STDERR</a>, <a Class="manpage" href="./CURLOPT_DEBUGFUNCTION.html">CURLOPT_DEBUGFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.pdf b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.pdf
deleted file mode 100644
index 2e6c2d617..000000000
--- a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3 b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
deleted file mode 100644
index 0d4357ab1..000000000
--- a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
+++ /dev/null
@@ -1,87 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * 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
-.\" * are also available at http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_PINNEDPUBLICKEY 3 "27 Aug 2014" "libcurl 7.38.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_PINNEDPUBLICKEY \- set pinned public key
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PINNEDPUBLICKEY, char *pinnedpubkey);
-.SH DESCRIPTION
-Pass a pointer to a zero terminated string as parameter. The string can be the
-file name of your pinned public key. The file format expected is "PEM" or "DER".
-The string can also be any number of base64 encoded sha256 hashes preceded by
-"sha256//" and seperated by ";"
-
-When negotiating a TLS or SSL connection, the server sends a certificate
-indicating its identity. A public key is extracted from this certificate and
-if it does not exactly match the public key provided to this option, curl will
-abort the connection before sending or receiving any data.
-.SH DEFAULT
-NULL
-.SH PROTOCOLS
-All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
-.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
- curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, "/etc/publickey.der");
- /* OR
- curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, "sha256//YhKJKSzoTt2b5FP18fvpHo7fJYqQCjAa3HWY3tvRMwE=;sha256//t62CeU2tQiqkexU74Gxa2eg7fRbEgoChTociMee9wno=");
- */
-
- /* Perform the request */
- curl_easy_perform(curl);
-}
-.fi
-.SH PUBLIC KEY EXTRACTION
-If you do not have the server's public key file you can extract it from the
-server's certificate.
-.nf
-# extract public key in pem format from certificate
-openssl x509 -in www.test.com.pem -pubkey -noout > www.test.com.pubkey.pem
-# convert public key from pem to der
-openssl asn1parse -noout -inform pem -in www.test.com.pubkey.pem -out www.test.com.pubkey.der
-# sha256 hash and base64 encode der to string for use
-openssl dgst -sha256 -binary www.test.com.pubkey.der | openssl base64
-.fi
-The public key in PEM format contains a header, base64 data and a
-footer:
-.nf
------BEGIN PUBLIC KEY-----
-[BASE 64 DATA]
------END PUBLIC KEY-----
-.fi
-.SH AVAILABILITY
-Added in 7.39.0 for OpenSSL, GnuTLS and GSKit. Added in 7.43.0 for
-NSS and wolfSSL/CyaSSL. sha256 support added in 7.44.0 for OpenSSL,
-GnuTLS, NSS and wolfSSL/CyaSSL. Other SSL backends not supported.
-.SH RETURN VALUE
-Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or
-CURLE_OUT_OF_MEMORY if there was insufficient heap space.
-.SH "SEE ALSO"
-.BR CURLOPT_SSL_VERIFYPEER "(3), "
-.BR CURLOPT_SSL_VERIFYHOST "(3), "
-.BR CURLOPT_CAINFO "(3), "
-.BR CURLOPT_CAPATH "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.html b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.html
deleted file mode 100644
index b0f5e6350..000000000
--- a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.html
+++ /dev/null
@@ -1,96 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_PINNEDPUBLICKEY man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_PINNEDPUBLICKEY - set pinned public key <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PINNEDPUBLICKEY, char *pinnedpubkey); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a pointer to a zero terminated string as parameter. The string can be the file name of your pinned public key. The file format expected is "PEM" or "DER". The string can also be any number of base64 encoded sha256 hashes preceded by "sha256//" and seperated by ";"
-<p class="level0">When negotiating a TLS or SSL connection, the server sends a certificate indicating its identity. A public key is extracted from this certificate and if it does not exactly match the public key provided to this option, curl will abort the connection before sending or receiving any data. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-&nbsp; curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, "/etc/publickey.der");
-&nbsp; /* OR
-&nbsp; curl_easy_setopt(curl, CURLOPT_PINNEDPUBLICKEY, "sha256//YhKJKSzoTt2b5FP18fvpHo7fJYqQCjAa3HWY3tvRMwE=;sha256//t62CeU2tQiqkexU74Gxa2eg7fRbEgoChTociMee9wno=");
-&nbsp; */
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="PUBLIC"></a><h2 class="nroffsh">PUBLIC KEY EXTRACTION</h2>
-<p class="level0">If you do not have the server's public key file you can extract it from the server's certificate. <pre class="level0">
-&#35; extract public key in pem format from certificate
-openssl x509 -in www.test.com.pem -pubkey -noout &gt; www.test.com.pubkey.pem
-&#35; convert public key from pem to der
-openssl asn1parse -noout -inform pem -in www.test.com.pubkey.pem -out www.test.com.pubkey.der
-&#35; sha256 hash and base64 encode der to string for use
-openssl dgst -sha256 -binary www.test.com.pubkey.der | openssl base64
-</pre>
-
-<p class="level0">The public key in PEM format contains a header, base64 data and a footer: <pre class="level0">
------BEGIN PUBLIC KEY-----
-[BASE 64 DATA]
------END PUBLIC KEY-----
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.39.0 for OpenSSL, GnuTLS and GSKit. Added in 7.43.0 for NSS and wolfSSL/CyaSSL. sha256 support added in 7.44.0 for OpenSSL, GnuTLS, NSS and wolfSSL/CyaSSL. Other SSL backends not supported. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_SSL_VERIFYHOST.html">CURLOPT_SSL_VERIFYHOST</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_CAINFO.html">CURLOPT_CAINFO</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_CAPATH.html">CURLOPT_CAPATH</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.pdf b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.pdf
deleted file mode 100644
index 3b770592e..000000000
--- a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3 b/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
deleted file mode 100644
index 5f6419598..000000000
--- a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
+++ /dev/null
@@ -1,63 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_PIPEWAIT 3 "12 May 2015" "libcurl 7.43.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_PIPEWAIT \- wait for pipelining/multiplexing
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PIPEWAIT, long wait);
-.SH DESCRIPTION
-Set \fIwait\fP to 1L to tell libcurl to prefer to wait for a connection to
-confirm or deny that it can do pipelining or multiplexing before continuing.
-
-When about to perform a new transfer that allows pipelining or multiplexing,
-libcurl will check for existing connections to re-use and pipeline on. If no
-such connection exists it will immediately continue and create a fresh new
-connection to use.
-
-By setting this option to 1 - and having \fICURLMOPT_PIPELINE\fP enabled for
-the multi handle this transfer is associated with - libcurl will instead wait
-for the connection to reveal if it is possible to pipeline/multiplex on before
-it continues. This enables libcurl to much better keep the number of
-connections to a minimum when using pipelining or multiplexing protocols.
-
-The effect thus becomes that with this option set, libcurl prefers to wait and
-re-use an existing connection for pipelining rather than the opposite: prefer
-to open a new connection rather than waiting.
-
-The waiting time is as long as it takes for the connection to get up and for
-libcurl to get the necessary response back that informs it about its protocol
-and support level.
-.SH DEFAULT
-0 (off)
-.SH PROTOCOLS
-HTTP(S)
-.SH EXAMPLE
-.SH AVAILABILITY
-Added in 7.43.0
-.SH RETURN VALUE
-Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
-.SH "SEE ALSO"
-.BR CURLOPT_FORBID_REUSE "(3), " CURLOPT_FRESH_CONNECT "(3), "
-.BR CURLMOPT_PIPELINING "(3), " CURLMOPT_MAX_HOST_CONNECTIONS "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PIPEWAIT.html b/docs/libcurl/opts/CURLOPT_PIPEWAIT.html
deleted file mode 100644
index b266c5e5a..000000000
--- a/docs/libcurl/opts/CURLOPT_PIPEWAIT.html
+++ /dev/null
@@ -1,69 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_PIPEWAIT man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_PIPEWAIT - wait for pipelining/multiplexing <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PIPEWAIT, long wait); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Set <span Class="emphasis">wait</span> to 1L to tell libcurl to prefer to wait for a connection to confirm or deny that it can do pipelining or multiplexing before continuing.
-<p class="level0">When about to perform a new transfer that allows pipelining or multiplexing, libcurl will check for existing connections to re-use and pipeline on. If no such connection exists it will immediately continue and create a fresh new connection to use.
-<p class="level0">By setting this option to 1 - and having <span Class="emphasis">CURLMOPT_PIPELINE</span> enabled for the multi handle this transfer is associated with - libcurl will instead wait for the connection to reveal if it is possible to pipeline/multiplex on before it continues. This enables libcurl to much better keep the number of connections to a minimum when using pipelining or multiplexing protocols.
-<p class="level0">The effect thus becomes that with this option set, libcurl prefers to wait and re-use an existing connection for pipelining rather than the opposite: prefer to open a new connection rather than waiting.
-<p class="level0">The waiting time is as long as it takes for the connection to get up and for libcurl to get the necessary response back that informs it about its protocol and support level. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">0 (off) <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.43.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_FORBID_REUSE.html">CURLOPT_FORBID_REUSE</a>, <a Class="manpage" href="./CURLOPT_FRESH_CONNECT.html">CURLOPT_FRESH_CONNECT</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLMOPT_PIPELINING.html">CURLMOPT_PIPELINING</a>, <a Class="manpage" href="./CURLMOPT_MAX_HOST_CONNECTIONS.html">CURLMOPT_MAX_HOST_CONNECTIONS</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_PIPEWAIT.pdf b/docs/libcurl/opts/CURLOPT_PIPEWAIT.pdf
deleted file mode 100644
index 01326206a..000000000
--- a/docs/libcurl/opts/CURLOPT_PIPEWAIT.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PORT.html b/docs/libcurl/opts/CURLOPT_PORT.html
index 13588035c..415401445 100644
--- a/docs/libcurl/opts/CURLOPT_PORT.html
+++ b/docs/libcurl/opts/CURLOPT_PORT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PORT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PORT - set remote port number to work with <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PORT, long number); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">This option sets <span Class="emphasis">number</span> to be the remote port number to connect to, instead of the one specified in the URL or the default port for the used protocol.
<p class="level0">Usually, you just let the URL decide which port to use but this allows the application to override that.
diff --git a/docs/libcurl/opts/CURLOPT_PORT.pdf b/docs/libcurl/opts/CURLOPT_PORT.pdf
index 860b8b8e0..9a9bb46e0 100644
--- a/docs/libcurl/opts/CURLOPT_PORT.pdf
+++ b/docs/libcurl/opts/CURLOPT_PORT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_POST.html b/docs/libcurl/opts/CURLOPT_POST.html
index bb9203796..bc7dcd175 100644
--- a/docs/libcurl/opts/CURLOPT_POST.html
+++ b/docs/libcurl/opts/CURLOPT_POST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POST - request a HTTP POST <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POST, long post); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A parameter set to 1 tells libcurl to do a regular HTTP post. This will also make the library use a "Content-Type: application/x-www-form-urlencoded" header. (This is by far the most commonly used POST method).
<p class="level0">Use one of <a Class="emphasis" href="./CURLOPT_POSTFIELDS.html">CURLOPT_POSTFIELDS</a> or <a Class="emphasis" href="./CURLOPT_COPYPOSTFIELDS.html">CURLOPT_COPYPOSTFIELDS</a> options to specify what data to post and <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE.html">CURLOPT_POSTFIELDSIZE</a> or <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE_LARGE.html">CURLOPT_POSTFIELDSIZE_LARGE</a> to set the data size.
diff --git a/docs/libcurl/opts/CURLOPT_POST.pdf b/docs/libcurl/opts/CURLOPT_POST.pdf
index c2ce020ae..8e0e966c6 100644
--- a/docs/libcurl/opts/CURLOPT_POST.pdf
+++ b/docs/libcurl/opts/CURLOPT_POST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
index 27e4510b1..d55914308 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
@@ -44,9 +44,6 @@ used by HTML forms. Change Content-Type with \fICURLOPT_HTTPHEADER(3)\fP.
Using \fICURLOPT_POSTFIELDS(3)\fP implies \fICURLOPT_POST(3)\fP.
-You can use \fIcurl_easy_escape(3)\fP to url-encode your data, if necessary. It
-returns a pointer to an encoded string that can be passed as \fIpostdata\fP.
-
If you want to do a zero-byte POST, you need to set
\fICURLOPT_POSTFIELDSIZE(3)\fP explicitly to zero, as simply setting
\fICURLOPT_POSTFIELDS(3)\fP to NULL or "" just effectively disables the
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDS.html b/docs/libcurl/opts/CURLOPT_POSTFIELDS.html
index d8fd439b9..3b998ef52 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDS.html
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POSTFIELDS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,34 +47,29 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POSTFIELDS - specify data to POST to server <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTFIELDS, char *postdata); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, pointing to the full data to send in a HTTP POST operation. You must make sure that the data is formatted the way you want the server to receive it. libcurl will not convert or encode it for you in any way. For example, the web server may assume that this data is url-encoded.
<p class="level0">The data pointed to is NOT copied by the library: as a consequence, it must be preserved by the calling application until the associated transfer finishes. This behaviour can be changed (so libcurl does copy the data) by setting the <a Class="emphasis" href="./CURLOPT_COPYPOSTFIELDS.html">CURLOPT_COPYPOSTFIELDS</a> option.
<p class="level0">This POST is a normal application/x-www-form-urlencoded kind (and libcurl will set that Content-Type by default when this option is used), which is commonly used by HTML forms. Change Content-Type with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>.
<p class="level0">Using <a Class="emphasis" href="./CURLOPT_POSTFIELDS.html">CURLOPT_POSTFIELDS</a> implies <a Class="emphasis" href="./CURLOPT_POST.html">CURLOPT_POST</a>.
-<p class="level0">You can use <span Class="emphasis">curl_easy_escape(3)</span> to url-encode your data, if necessary. It returns a pointer to an encoded string that can be passed as <span Class="emphasis">postdata</span>.
<p class="level0">If you want to do a zero-byte POST, you need to set <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE.html">CURLOPT_POSTFIELDSIZE</a> explicitly to zero, as simply setting <a Class="emphasis" href="./CURLOPT_POSTFIELDS.html">CURLOPT_POSTFIELDS</a> to NULL or "" just effectively disables the sending of the specified string. libcurl will instead assume that you'll send the POST data using the read callback!
<p class="level0">Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> as usual.
<p class="level0">To make multipart/formdata posts (aka <a href="http://www.ietf.org/rfc/rfc2388.txt">RFC 2388</a>-posts), check out the <a Class="emphasis" href="./CURLOPT_HTTPPOST.html">CURLOPT_HTTPPOST</a> option combined with <span Class="emphasis">curl_formadd(3)</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; const char *data = "data to send";
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* size of the POST data */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 12L);
-&nbsp;
-&nbsp; /* pass in a pointer to the data - libcurl will not copy */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; const char *data = "data to send";
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* size of the POST data */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, 12L);
+ <p class="level0">&nbsp; /* pass in a pointer to the data - libcurl will not copy */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDS.pdf b/docs/libcurl/opts/CURLOPT_POSTFIELDS.pdf
index 8e8644d36..879a67715 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDS.pdf
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.html b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.html
index 7046668ff..ac4732beb 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.html
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POSTFIELDSIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,27 +47,23 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POSTFIELDSIZE - size of POST data pointed to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTFIELDSIZE, long size); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If you want to post data to the server without having libcurl do a strlen() to measure the data size, this option must be used. When this option is used you can post fully binary data, which otherwise is likely to fail. If this size is set to -1, the library will use strlen() to get the size.
<p class="level0">If you post more than 2GB, use <a Class="emphasis" href="./CURLOPT_POSTFIELDSIZE_LARGE.html">CURLOPT_POSTFIELDSIZE_LARGE</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">-1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; const char *data = "data to send";
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* size of the POST data */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) strlen(data));
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; const char *data = "data to send";
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* size of the POST data */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long) strlen(data));
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Along with HTTP <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.pdf b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.pdf
index ea991f3e7..98043aa48 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.pdf
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.pdf
@@ -72,12 +72,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-17393b2772b9' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-17393b2772b9' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:24+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:24+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-17393b2772b9' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-17393b2772b9' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:02+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:02+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-17393b2772b9' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:8216eefe-78d5-11f0-0000-17393b2772b9'/>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-17393b2772b9' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-17393b2772b9' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:699ce14a-cf2b-11ef-0000-17393b2772b9'/>
+<rdf:Description rdf:about='uuid:699ce14a-cf2b-11ef-0000-17393b2772b9' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -86,9 +86,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081124+02'00')
-/ModDate(D:20150812081124+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091802+01'00')
+/ModDate(D:20150108091802+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -109,7 +109,7 @@ xref
0000001889 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<8BF561F8AF8B932CC4A2CD621BAF8816><8BF561F8AF8B932CC4A2CD621BAF8816>]
+/ID [<E7A069C89AE370A9D41735FF131F0C9F><E7A069C89AE370A9D41735FF131F0C9F>]
>>
startxref
3466
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.html b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.html
index cd8901b1f..322ee476b 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POSTFIELDSIZE_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,32 +47,27 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POSTFIELDSIZE_LARGE - size of POST data pointed to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTFIELDSIZE_LARGE,
-&nbsp; curl_off_t size);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTFIELDSIZE_LARGE,
+ &nbsp; curl_off_t size);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">If you want to post data to the server without having libcurl do a strlen() to measure the data size, this option must be used. When this option is used you can post fully binary data, which otherwise is likely to fail. If this size is set to -1, the library will use strlen() to get the size. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">-1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; const char *data = large_chunk;
-&nbsp; curl_off_t length_of_data; /* set somehow */
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* size of the POST data */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, length_of_data);
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; const char *data = large_chunk;
+ &nbsp; curl_off_t length_of_data; /* set somehow */
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* size of the POST data */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE_LARGE, length_of_data);
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, data);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Along with HTTP <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.pdf b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.pdf
index 64330d4bd..53bb6bd3e 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_POSTQUOTE.html b/docs/libcurl/opts/CURLOPT_POSTQUOTE.html
index 027b74d84..ba8a206cf 100644
--- a/docs/libcurl/opts/CURLOPT_POSTQUOTE.html
+++ b/docs/libcurl/opts/CURLOPT_POSTQUOTE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POSTQUOTE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POSTQUOTE - (S)FTP commands to run after the transfer <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTQUOTE, struct curl_slist *cmds); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of FTP or SFTP commands to pass to the server after your FTP transfer request. The commands will only be run if no error occurred. The linked list should be a fully valid list of struct curl_slist structs properly filled in as described for <a Class="emphasis" href="./CURLOPT_QUOTE.html">CURLOPT_QUOTE</a>.
<p class="level0">Disable this operation again by setting a NULL to this option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_POSTQUOTE.pdf b/docs/libcurl/opts/CURLOPT_POSTQUOTE.pdf
index a967487bf..7ee5b9b78 100644
--- a/docs/libcurl/opts/CURLOPT_POSTQUOTE.pdf
+++ b/docs/libcurl/opts/CURLOPT_POSTQUOTE.pdf
@@ -70,12 +70,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-56fc4828454a' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-56fc4828454a' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:24+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:24+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6a3577ca-cf2b-11ef-0000-56fc4828454a' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6a3577ca-cf2b-11ef-0000-56fc4828454a' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:03+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:03+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-56fc4828454a' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:8216eefe-78d5-11f0-0000-56fc4828454a'/>
-<rdf:Description rdf:about='uuid:8216eefe-78d5-11f0-0000-56fc4828454a' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6a3577ca-cf2b-11ef-0000-56fc4828454a' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6a3577ca-cf2b-11ef-0000-56fc4828454a'/>
+<rdf:Description rdf:about='uuid:6a3577ca-cf2b-11ef-0000-56fc4828454a' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -84,9 +84,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081124+02'00')
-/ModDate(D:20150812081124+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091803+01'00')
+/ModDate(D:20150108091803+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -107,7 +107,7 @@ xref
0000001843 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<ED9B25888E54BDFB04922D9C185068C8><ED9B25888E54BDFB04922D9C185068C8>]
+/ID [<6D18367D1B659C0775060C32CB00322E><6D18367D1B659C0775060C32CB00322E>]
>>
startxref
3420
diff --git a/docs/libcurl/opts/CURLOPT_POSTREDIR.html b/docs/libcurl/opts/CURLOPT_POSTREDIR.html
index 04000595e..f4b8ffe1d 100644
--- a/docs/libcurl/opts/CURLOPT_POSTREDIR.html
+++ b/docs/libcurl/opts/CURLOPT_POSTREDIR.html
@@ -4,20 +4,15 @@
<title>CURLOPT_POSTREDIR man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,32 +47,28 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_POSTREDIR - how to act on a HTTP POST redirect <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTREDIR,
-&nbsp; long bitmask);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_POSTREDIR,
+ &nbsp; long bitmask);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a bitmask to control how libcurl acts on redirects after POSTs that get a 301, 302 or 303 response back. A parameter with bit 0 set (value <span Class="bold">CURL_REDIR_POST_301</span>) tells the library to respect <a href="http://www.ietf.org/rfc/rfc2616.txt">RFC 2616</a>/10.3.2 and not convert POST requests into GET requests when following a 301 redirection. Setting bit 1 (value <span Class="bold">CURL_REDIR_POST_302</span>) makes libcurl maintain the request method after a 302 redirect whilst setting bit 2 (value <span Class="bold">CURL_REDIR_POST_303</span>) makes libcurl maintain the request method after a 303 redirect. The value <span Class="bold">CURL_REDIR_POST_ALL</span> is a convenience define that sets all three bits.
<p class="level0">The non-RFC behaviour is ubiquitous in web browsers, so the library does the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when setting <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP(S) <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* a silly POST example */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "data=true");
-&nbsp;
-&nbsp; /* example.com is redirected, so we tell libcurl to send POST on 301, 302 and
-&nbsp; 303 HTTP response codes */
-&nbsp; curl_easy_setopt(curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* a silly POST example */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTFIELDS, "data=true");
+ <p class="level0">&nbsp; /* example.com is redirected, so we tell libcurl to send POST on 301, 302 and
+ &nbsp; 303 HTTP response codes */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL);
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.17.1. This option was known as CURLOPT_POST301 up to 7.19.0 as it only supported the 301 then. CURL_REDIR_POST_303 was added in 7.26.0. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_POSTREDIR.pdf b/docs/libcurl/opts/CURLOPT_POSTREDIR.pdf
index e371271d5..513682a6e 100644
--- a/docs/libcurl/opts/CURLOPT_POSTREDIR.pdf
+++ b/docs/libcurl/opts/CURLOPT_POSTREDIR.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PREQUOTE.html b/docs/libcurl/opts/CURLOPT_PREQUOTE.html
index b0c9a30b6..f74c660e2 100644
--- a/docs/libcurl/opts/CURLOPT_PREQUOTE.html
+++ b/docs/libcurl/opts/CURLOPT_PREQUOTE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PREQUOTE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PREQUOTE - commands to run before FTP or SFTP transfer <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PREQUOTE, char *cmds); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of FTP or SFTP commands to pass to the server after the transfer type is set. The linked list should be a fully valid list of struct curl_slist structs properly filled in as described for <a Class="emphasis" href="./CURLOPT_QUOTE.html">CURLOPT_QUOTE</a>. Disable this operation again by setting a NULL to this option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PREQUOTE.pdf b/docs/libcurl/opts/CURLOPT_PREQUOTE.pdf
index ca9c5a104..60ae8e458 100644
--- a/docs/libcurl/opts/CURLOPT_PREQUOTE.pdf
+++ b/docs/libcurl/opts/CURLOPT_PREQUOTE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PRIVATE.3 b/docs/libcurl/opts/CURLOPT_PRIVATE.3
index 9907f9754..bdb11cf2c 100644
--- a/docs/libcurl/opts/CURLOPT_PRIVATE.3
+++ b/docs/libcurl/opts/CURLOPT_PRIVATE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -37,22 +37,7 @@ NULL
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-struct private secrets;
-if(curl) {
- struct private *extracted;
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* store a pointer to our private struct */
- curl_easy_setopt(curl, CURLOPT_PRIVATE, &secrets);
-
- curl_easy_perform(curl);
-
- /* we can extract the private pointer again too */
- curl_easy_getinfo(curl, CURLINFO_PRIVATE, &extracted);
-}
-.fi
+TODO
.SH AVAILABILITY
Added in 7.10.3
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_PRIVATE.html b/docs/libcurl/opts/CURLOPT_PRIVATE.html
index 2be9405e8..165f333a8 100644
--- a/docs/libcurl/opts/CURLOPT_PRIVATE.html
+++ b/docs/libcurl/opts/CURLOPT_PRIVATE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PRIVATE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,29 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PRIVATE - store a private pointer <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PRIVATE, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a void * as parameter, pointing to data that should be associated with this curl handle. The pointer can subsequently be retrieved using <span Class="emphasis">curl_easy_getinfo(3)</span> with the CURLINFO_PRIVATE option. libcurl itself never does nothing with this data. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-struct private secrets;
-if(curl) {
-&nbsp; struct private *extracted;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* store a pointer to our private struct */
-&nbsp; curl_easy_setopt(curl, CURLOPT_PRIVATE, &secrets);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-&nbsp;
-&nbsp; /* we can extract the private pointer again too */
-&nbsp; curl_easy_getinfo(curl, CURLINFO_PRIVATE, &extracted);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.10.3 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_VERBOSE.html">CURLOPT_VERBOSE</a>, <a Class="manpage" href="./CURLOPT_STDERR.html">CURLOPT_STDERR</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_PRIVATE.pdf b/docs/libcurl/opts/CURLOPT_PRIVATE.pdf
index 1cf43d52c..6d0c6d463 100644
--- a/docs/libcurl/opts/CURLOPT_PRIVATE.pdf
+++ b/docs/libcurl/opts/CURLOPT_PRIVATE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.html b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.html
index 8a8a94bc0..cd73126d3 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.html
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROGRESSDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROGRESSDATA - custom pointer passed to the progress callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROGRESSDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the first argument in the progress callback set with <a Class="emphasis" href="./CURLOPT_PROGRESSFUNCTION.html">CURLOPT_PROGRESSFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value of this parameter is NULL. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.pdf b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.pdf
index ba2a7db5e..efd922665 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.html b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.html
index 2cd791d3f..489cd703a 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROGRESSFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROGRESSFUNCTION - callback to progress meter function <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">int progress_callback(void *clientp, &nbsp; double dltotal, &nbsp; double dlnow, &nbsp; double ultotal, &nbsp; double ulnow);
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROGRESSFUNCTION, progress_callback); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.pdf
index 656e09fe9..dc418fee6 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROTOCOLS.html b/docs/libcurl/opts/CURLOPT_PROTOCOLS.html
index a5ef7f396..b2eae2366 100644
--- a/docs/libcurl/opts/CURLOPT_PROTOCOLS.html
+++ b/docs/libcurl/opts/CURLOPT_PROTOCOLS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROTOCOLS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,56 +47,54 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROTOCOLS - set allowed protocols <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROTOCOLS, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long that holds a bitmask of CURLPROTO_* defines. If used, this bitmask limits what protocols libcurl may use in the transfer. This allows you to have a libcurl built to support a wide range of protocols but still limit specific transfers to only be allowed to use a subset of them. By default libcurl will accept all protocols it supports (<span Class="emphasis">CURLPROTO_ALL</span>). See also <a Class="emphasis" href="./CURLOPT_REDIR_PROTOCOLS.html">CURLOPT_REDIR_PROTOCOLS</a>.
-<p class="level0">These are the available protocol defines: <pre class="level0">
-CURLPROTO_DICT
-CURLPROTO_FILE
-CURLPROTO_FTP
-CURLPROTO_FTPS
-CURLPROTO_GOPHER
-CURLPROTO_HTTP
-CURLPROTO_HTTPS
-CURLPROTO_IMAP
-CURLPROTO_IMAPS
-CURLPROTO_LDAP
-CURLPROTO_LDAPS
-CURLPROTO_POP3
-CURLPROTO_POP3S
-CURLPROTO_RTMP
-CURLPROTO_RTMPE
-CURLPROTO_RTMPS
-CURLPROTO_RTMPT
-CURLPROTO_RTMPTE
-CURLPROTO_RTMPTS
-CURLPROTO_RTSP
-CURLPROTO_SCP
-CURLPROTO_SFTP
-CURLPROTO_SMB
-CURLPROTO_SMTP
-CURLPROTO_SMTPS
-CURLPROTO_TELNET
-CURLPROTO_TFTP
-</pre>
+<p class="level0">These are the available protocol defines: <pre>
+<p class="level0">CURLPROTO_DICT
+ CURLPROTO_FILE
+ CURLPROTO_FTP
+ CURLPROTO_FTPS
+ CURLPROTO_GOPHER
+ CURLPROTO_HTTP
+ CURLPROTO_HTTPS
+ CURLPROTO_IMAP
+ CURLPROTO_IMAPS
+ CURLPROTO_LDAP
+ CURLPROTO_LDAPS
+ CURLPROTO_POP3
+ CURLPROTO_POP3S
+ CURLPROTO_RTMP
+ CURLPROTO_RTMPE
+ CURLPROTO_RTMPS
+ CURLPROTO_RTMPT
+ CURLPROTO_RTMPTE
+ CURLPROTO_RTMPTS
+ CURLPROTO_RTSP
+ CURLPROTO_SCP
+ CURLPROTO_SFTP
+ CURLPROTO_SMB
+ CURLPROTO_SMTP
+ CURLPROTO_SMTPS
+ CURLPROTO_TELNET
+ CURLPROTO_TFTP
+ </pre>
<p class="level0"><a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">All protocols built-in <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; /* pass in the URL from an external source */
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
-&nbsp;
-&nbsp; /* only allow HTTP, TFTP and SFTP */
-&nbsp; curl_easy_setopt(curl, CURLOPT_PROTOCOLS,
-&nbsp; CURLPROTO_HTTP | CURLPROTO_TFTP | CURLPROTO_SFTP);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; /* pass in the URL from an external source */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
+ <p class="level0">&nbsp; /* only allow HTTP, TFTP and SFTP */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_PROTOCOLS,
+ &nbsp; CURLPROTO_HTTP | CURLPROTO_TFTP | CURLPROTO_SFTP);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.19.4 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROTOCOLS.pdf b/docs/libcurl/opts/CURLOPT_PROTOCOLS.pdf
index 309fa433a..45587f3d7 100644
--- a/docs/libcurl/opts/CURLOPT_PROTOCOLS.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROTOCOLS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXY.html b/docs/libcurl/opts/CURLOPT_PROXY.html
index ff3de6268..d37676a41 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY.html
+++ b/docs/libcurl/opts/CURLOPT_PROXY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXY - set proxy to use <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY, char *proxy); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the <span Class="emphasis">proxy</span> to use for the upcoming request. The parameter should be a char * to a zero terminated string holding the host name or dotted IP address.
<p class="level0">To specify port number in this string, append :[port] to the end of the host name. The proxy's port number may optionally be specified with the separate option <a Class="emphasis" href="./CURLOPT_PROXYPORT.html">CURLOPT_PROXYPORT</a>. If not specified, libcurl will default to using port 1080 for proxies.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY.pdf b/docs/libcurl/opts/CURLOPT_PROXY.pdf
index d8d8291bc..76ace305c 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYAUTH.html b/docs/libcurl/opts/CURLOPT_PROXYAUTH.html
index 29fbac91d..e7d050ec7 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYAUTH.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYAUTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYAUTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYAUTH - set HTTP proxy authentication methods to try <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYAUTH, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter, which is set to a bitmask, to tell libcurl which HTTP authentication method(s) you want it to use for your proxy authentication. If more than one bit is set, libcurl will first query the site to see what authentication methods it supports and then pick the best one you allow it to use. For some methods, this will induce an extra network round-trip. Set the actual name and password with the <a Class="emphasis" href="./CURLOPT_PROXYUSERPWD.html">CURLOPT_PROXYUSERPWD</a> option.
<p class="level0">The bitmask can be constructed by or'ing together the bits fully listed and described in the <a Class="emphasis" href="./CURLOPT_HTTPAUTH.html">CURLOPT_HTTPAUTH</a> man page. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROXYAUTH.pdf b/docs/libcurl/opts/CURLOPT_PROXYAUTH.pdf
index 38d3fc7a8..377a5c48a 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYAUTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYAUTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYHEADER.html b/docs/libcurl/opts/CURLOPT_PROXYHEADER.html
index 8e630f8b5..8c143634e 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYHEADER.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYHEADER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYHEADER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYHEADER - custom HTTP headers to pass to proxy <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYHEADER,
-&nbsp; struct curl_slist *headers);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYHEADER,
+ &nbsp; struct curl_slist *headers);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of HTTP headers to pass in your HTTP request sent to a proxy. The rules for this list is identical to the <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> option's.
<p class="level0">The headers set with this option is only ever used in requests sent to a proxy - when there's also a request sent to a host.
diff --git a/docs/libcurl/opts/CURLOPT_PROXYHEADER.pdf b/docs/libcurl/opts/CURLOPT_PROXYHEADER.pdf
index 93d9bd5b0..07ff613e2 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYHEADER.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYHEADER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.html b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.html
index 5bafeb95b..f41b4f0a9 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYPASSWORD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYPASSWORD - password to use with proxy authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYPASSWORD, char *pwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be pointing to the zero terminated password to use for authentication with the proxy.
<p class="level0">The <a Class="emphasis" href="./CURLOPT_PROXYPASSWORD.html">CURLOPT_PROXYPASSWORD</a> option should be used in conjunction with the <a Class="emphasis" href="./CURLOPT_PROXYUSERNAME.html">CURLOPT_PROXYUSERNAME</a> option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.pdf b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.pdf
index 1f50795c4..025758f6f 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPORT.html b/docs/libcurl/opts/CURLOPT_PROXYPORT.html
index 3e2c81f64..e065f3359 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPORT.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYPORT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYPORT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYPORT - port number the proxy listens on <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYPORT, long port); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long with this option to set the proxy port to connect to unless it is specified in the proxy string <a Class="emphasis" href="./CURLOPT_PROXY.html">CURLOPT_PROXY</a> or uses the default one.
<p class="level0">While this accepts a 'long', the port number is 16 bit so it can't be larger than 65535. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPORT.pdf b/docs/libcurl/opts/CURLOPT_PROXYPORT.pdf
index 351bb8e80..4d6607951 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPORT.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYPORT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYTYPE.html b/docs/libcurl/opts/CURLOPT_PROXYTYPE.html
index 5ee0cf547..2f45432e6 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYTYPE.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYTYPE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYTYPE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYTYPE - proxy protocol type <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYTYPE, long type); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long with this option to set type of the proxy. Available options for this are <span Class="emphasis">CURLPROXY_HTTP</span>, <span Class="emphasis">CURLPROXY_HTTP_1_0</span> <span Class="emphasis">CURLPROXY_SOCKS4</span>, <span Class="emphasis">CURLPROXY_SOCKS5</span>, <span Class="emphasis">CURLPROXY_SOCKS4A</span> and <span Class="emphasis">CURLPROXY_SOCKS5_HOSTNAME</span>. The HTTP type is default.
<p class="level0">If you set <a Class="bold" href="./CURLOPT_PROXYTYPE.html">CURLOPT_PROXYTYPE</a> to <span Class="emphasis">CURLPROXY_HTTP_1_0</span>, it will only affect how libcurl speaks to a proxy when CONNECT is used. The HTTP version used for "regular" HTTP requests is instead controlled with <a Class="emphasis" href="./CURLOPT_HTTP_VERSION.html">CURLOPT_HTTP_VERSION</a>.
diff --git a/docs/libcurl/opts/CURLOPT_PROXYTYPE.pdf b/docs/libcurl/opts/CURLOPT_PROXYTYPE.pdf
index d31cc97b5..c5a8e405d 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYTYPE.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYTYPE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.html b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.html
index f7c98dbe3..04e8263e4 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYUSERNAME man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYUSERNAME - user name to use for proxy authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYUSERNAME,
-&nbsp; char *username);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYUSERNAME,
+ &nbsp; char *username);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be pointing to the zero terminated user name to use for the transfer.
<p class="level0"><a Class="bold" href="./CURLOPT_PROXYUSERNAME.html">CURLOPT_PROXYUSERNAME</a> sets the user name to be used in protocol authentication with the proxy.
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.pdf b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.pdf
index 0573e8f45..03f7611f0 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.html b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.html
index 0c71103ea..ecd301cc8 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.html
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXYUSERPWD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXYUSERPWD - user name and password to use for proxy authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXYUSERPWD, char *userpwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be [user name]:[password] to use for the connection to the HTTP proxy. Both the name and the password will be URL decoded before use, so to include for example a colon in the user name you should encode it as %3A. (This is different to how <a Class="emphasis" href="./CURLOPT_USERPWD.html">CURLOPT_USERPWD</a> is used - beware.)
<p class="level0">Use <a Class="emphasis" href="./CURLOPT_PROXYAUTH.html">CURLOPT_PROXYAUTH</a> to specify the authentication method. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.pdf b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.pdf
index 7682c09b6..c99bf9438 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
deleted file mode 100644
index a6224fb77..000000000
--- a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
+++ /dev/null
@@ -1,45 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_PROXY_SERVICE_NAME 3 "17 Jun 2015" "libcurl 7.43.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_PROXY_SERVICE_NAME \- proxy service name
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_SERVICE_NAME, char *name);
-.SH DESCRIPTION
-Pass a char * as parameter to a string holding the \fIname\fP of the
-service. The default service name is "HTTP". This option allows you to change it.
-..SH DEFAULT
-See above
-.SH PROTOCOLS
-Most
-.SH EXAMPLE
-TODO
-.SH AVAILABILITY
-Added in 7.43.0
-.SH RETURN VALUE
-Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
-CURLE_OUT_OF_MEMORY if there was insufficient heap space.
-.SH "SEE ALSO"
-.BR CURLOPT_PROXY "(3), " CURLOPT_PROXYTYPE "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.html b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.html
deleted file mode 100644
index 4d0329ec9..000000000
--- a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_PROXY_SERVICE_NAME man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_PROXY_SERVICE_NAME - proxy service name <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_SERVICE_NAME, char *name); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a char * as parameter to a string holding the <span Class="emphasis">name</span> of the service. The default service name is "HTTP". This option allows you to change it.
-<p class="level0">See above <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">Most <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.43.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_PROXY.html">CURLOPT_PROXY</a>, <a Class="manpage" href="./CURLOPT_PROXYTYPE.html">CURLOPT_PROXYTYPE</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.pdf b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.pdf
deleted file mode 100644
index 19a9905b4..000000000
--- a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.html b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.html
index 65b97dd96..ae3f30a5c 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.html
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PROXY_TRANSFER_MODE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PROXY_TRANSFER_MODE - append FTP transfer mode to URL for proxy <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PROXY_TRANSFER_MODE, long enabled); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the value is set to 1 (one), it tells libcurl to set the transfer mode (binary or ASCII) for FTP transfers done via a HTTP proxy, by appending ;type=a or ;type=i to the URL. Without this setting, or it being set to 0 (zero, the default), <a Class="emphasis" href="./CURLOPT_TRANSFERTEXT.html">CURLOPT_TRANSFERTEXT</a> has no effect when doing FTP via a proxy. Beware that not all proxies support this feature. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, disabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.pdf b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.pdf
index 9d63f294e..d21dcf716 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.pdf
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_PUT.html b/docs/libcurl/opts/CURLOPT_PUT.html
index c96474353..1000cc76b 100644
--- a/docs/libcurl/opts/CURLOPT_PUT.html
+++ b/docs/libcurl/opts/CURLOPT_PUT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_PUT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_PUT - make a HTTP PUT request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PUT, long put); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A parameter set to 1 tells the library to use HTTP PUT to transfer data. The data should be set with <a Class="emphasis" href="./CURLOPT_READDATA.html">CURLOPT_READDATA</a> and <a Class="emphasis" href="./CURLOPT_INFILESIZE.html">CURLOPT_INFILESIZE</a>.
<p class="level0">This option is <span Class="bold">deprecated</span> since version 7.12.1. Use <a Class="emphasis" href="./CURLOPT_UPLOAD.html">CURLOPT_UPLOAD</a>! <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_PUT.pdf b/docs/libcurl/opts/CURLOPT_PUT.pdf
index e926ddb00..d5f4626a8 100644
--- a/docs/libcurl/opts/CURLOPT_PUT.pdf
+++ b/docs/libcurl/opts/CURLOPT_PUT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_QUOTE.html b/docs/libcurl/opts/CURLOPT_QUOTE.html
index ca310bbc1..91549aff4 100644
--- a/docs/libcurl/opts/CURLOPT_QUOTE.html
+++ b/docs/libcurl/opts/CURLOPT_QUOTE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_QUOTE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_QUOTE - (S)FTP commands to run before transfer <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_QUOTE, struct curl_slist *cmds); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of FTP or SFTP commands to pass to the server prior to your request. This will be done before any other commands are issued (even before the CWD command for FTP). The linked list should be a fully valid list of 'struct curl_slist' structs properly filled in with text strings. Use <span Class="emphasis">curl_slist_append(3)</span> to append strings (commands) to the list, and clear the entire list afterwards with <span Class="emphasis">curl_slist_free_all(3)</span>. Disable this operation again by setting a NULL to this option. When speaking to a FTP server, prefix the command with an asterisk (*) to make libcurl continue even if the command fails as by default libcurl will stop at first failure.
<p class="level0">The set of valid FTP commands depends on the server (see <a href="http://www.ietf.org/rfc/rfc959.txt">RFC 959</a> for a list of mandatory commands).
diff --git a/docs/libcurl/opts/CURLOPT_QUOTE.pdf b/docs/libcurl/opts/CURLOPT_QUOTE.pdf
index b2dda69b7..76550af18 100644
--- a/docs/libcurl/opts/CURLOPT_QUOTE.pdf
+++ b/docs/libcurl/opts/CURLOPT_QUOTE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.html b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.html
index fb34ccb53..2b81b5ef4 100644
--- a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.html
+++ b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RANDOM_FILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RANDOM_FILE - specify a source for random data <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RANDOM_FILE, char *path); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to a zero terminated file name. The file will be used to read from to seed the random engine for SSL and more. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL, not used <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.pdf b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.pdf
index 29efb23ea..5f8a5ac33 100644
--- a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RANGE.html b/docs/libcurl/opts/CURLOPT_RANGE.html
index 89da71492..c256da890 100644
--- a/docs/libcurl/opts/CURLOPT_RANGE.html
+++ b/docs/libcurl/opts/CURLOPT_RANGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RANGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,25 +47,23 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RANGE - set byte range to request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RANGE, char *range); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should contain the specified range you want to retrieve. It should be in the format "X-Y", where either X or Y may be left out and X and Y are byte indexes.
<p class="level0">HTTP transfers also support several intervals, separated with commas as in <span Class="emphasis">"X-Y,N-M"</span>. Using this kind of multiple intervals will cause the HTTP server to send the response document in pieces (using standard MIME separation techniques). For RTSP, the formatting of a range should follow <a href="http://www.ietf.org/rfc/rfc2326.txt">RFC 2326</a> Section 12.29. For RTSP, byte ranges are <span Class="bold">not</span> permitted. Instead, ranges should be given in npt, utc, or smpte formats.
<p class="level0">Pass a NULL to this option to disable the use of ranges. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP, FTP, FILE, RTSP and SFTP. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* get the first 200 bytes */
-&nbsp; curl_easy_setopt(curl, CURLOPT_RANGE, "0-199");
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* get the first 200 bytes */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_RANGE, "0-199");
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">FILE since 7.18.0, RTSP since 7.20.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RANGE.pdf b/docs/libcurl/opts/CURLOPT_RANGE.pdf
index e0a132abe..196f75d61 100644
--- a/docs/libcurl/opts/CURLOPT_RANGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_RANGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_READDATA.3 b/docs/libcurl/opts/CURLOPT_READDATA.3
index a67f41542..db666316e 100644
--- a/docs/libcurl/opts/CURLOPT_READDATA.3
+++ b/docs/libcurl/opts/CURLOPT_READDATA.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -42,19 +42,7 @@ By default, this is a FILE * to stdin.
.SH PROTOCOLS
This is used for all protocols when sending data.
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-struct MyData this;
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* pass pointer that gets passed in to the
- CURLOPT_READFUNCTION callback */
- curl_easy_setopt(curl, CURLOPT_READDATA, &this);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
This option was once known by the older name \fICURLOPT_INFILE\fP, the name
\fICURLOPT_READDATA\fP was introduced in 7.9.7.
diff --git a/docs/libcurl/opts/CURLOPT_READDATA.html b/docs/libcurl/opts/CURLOPT_READDATA.html
index 42642c6cb..cb372fccd 100644
--- a/docs/libcurl/opts/CURLOPT_READDATA.html
+++ b/docs/libcurl/opts/CURLOPT_READDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_READDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,28 +47,14 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_READDATA - custom pointer passed to the read callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_READDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Data <span Class="emphasis">pointer</span> to pass to the file read function. If you use the <a Class="emphasis" href="./CURLOPT_READFUNCTION.html">CURLOPT_READFUNCTION</a> option, this is the pointer you'll get as input in the 4th argument to the callback.
<p class="level0">If you don't specify a read callback but instead rely on the default internal read function, this data must be a valid readable FILE * (cast to 'void *').
<p class="level0">If you're using libcurl as a win32 DLL, you MUST use a <a Class="emphasis" href="./CURLOPT_READFUNCTION.html">CURLOPT_READFUNCTION</a> if you set this option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">By default, this is a FILE * to stdin. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">This is used for all protocols when sending data. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-struct MyData this;
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* pass pointer that gets passed in to the
-&nbsp; CURLOPT_READFUNCTION callback */
-&nbsp; curl_easy_setopt(curl, CURLOPT_READDATA, &this);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">This option was once known by the older name <span Class="emphasis">CURLOPT_INFILE</span>, the name <span Class="emphasis">CURLOPT_READDATA</span> was introduced in 7.9.7. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">This will return CURLE_OK. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_READFUNCTION.html">CURLOPT_READFUNCTION</a>, <a Class="manpage" href="./CURLOPT_WRITEDATA.html">CURLOPT_WRITEDATA</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_READDATA.pdf b/docs/libcurl/opts/CURLOPT_READDATA.pdf
index f974e1c3a..c23376d42 100644
--- a/docs/libcurl/opts/CURLOPT_READDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_READDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_READFUNCTION.3 b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
index edd9bdbf6..79139adf1 100644
--- a/docs/libcurl/opts/CURLOPT_READFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -34,10 +34,9 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_READFUNCTION, read_callback);
Pass a pointer to your callback function, as the prototype shows above.
This callback function gets called by libcurl as soon as it needs to read data
-in order to send it to the peer - like if you ask it to upload or post data to
-the server. The data area pointed at by the pointer \fIbuffer\fP should be
-filled up with at most \fIsize\fP multiplied with \fInmemb\fP number of bytes
-by your function.
+in order to send it to the peer. The data area pointed at by the pointer
+\fIbuffer\fP should be filled up with at most \fIsize\fP multiplied with
+\fInmemb\fP number of bytes by your function.
Your function must then return the actual number of bytes that it stored in
that memory area. Returning 0 will signal end-of-file to the library and cause
@@ -76,4 +75,4 @@ was added in 7.12.1.
This will return CURLE_OK.
.SH "SEE ALSO"
.BR CURLOPT_READDATA "(3), " CURLOPT_WRITEFUNCTION "(3), "
-.BR CURLOPT_SEEKFUNCTION "(3), " CURLOPT_UPLOAD "(3), " CURLOPT_POST "(3), "
+.BR CURLOPT_SEEKFUNCTION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_READFUNCTION.html b/docs/libcurl/opts/CURLOPT_READFUNCTION.html
index aeac9bd66..e1e88dd8a 100644
--- a/docs/libcurl/opts/CURLOPT_READFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_READFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_READFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_READFUNCTION - read callback for data uploads <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">size_t read_callback(char *buffer, size_t size, size_t nitems, void *instream);
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_READFUNCTION, read_callback);
<p class="level0"><a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, as the prototype shows above.
-<p class="level0">This callback function gets called by libcurl as soon as it needs to read data in order to send it to the peer - like if you ask it to upload or post data to the server. The data area pointed at by the pointer <span Class="emphasis">buffer</span> should be filled up with at most <span Class="emphasis">size</span> multiplied with <span Class="emphasis">nmemb</span> number of bytes by your function.
+<p class="level0">This callback function gets called by libcurl as soon as it needs to read data in order to send it to the peer. The data area pointed at by the pointer <span Class="emphasis">buffer</span> should be filled up with at most <span Class="emphasis">size</span> multiplied with <span Class="emphasis">nmemb</span> number of bytes by your function.
<p class="level0">Your function must then return the actual number of bytes that it stored in that memory area. Returning 0 will signal end-of-file to the library and cause it to stop the current transfer.
<p class="level0">If you stop the current transfer by returning 0 "pre-maturely" (i.e before the server expected it, like when you've said you will upload N bytes and you upload less than N bytes), you may experience that the server "hangs" waiting for the rest of the data that won't come.
<p class="level0">The read callback may return <span Class="emphasis">CURL_READFUNC_ABORT</span> to stop the current operation immediately, resulting in a <span Class="emphasis">CURLE_ABORTED_BY_CALLBACK</span> error code from the transfer.
@@ -69,6 +64,6 @@ p.roffit {
<p class="level0">Here's an example setting a read callback for reading that to upload to an FTP site: <a href="http://curl.haxx.se/libcurl/c/ftpupload.html">http://curl.haxx.se/libcurl/c/ftpupload.html</a> <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">CURL_READFUNC_PAUSE return code was added in 7.18.0 and CURL_READFUNC_ABORT was added in 7.12.1. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">This will return CURLE_OK. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_READDATA.html">CURLOPT_READDATA</a>, <a Class="manpage" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_SEEKFUNCTION.html">CURLOPT_SEEKFUNCTION</a>, <a Class="manpage" href="./CURLOPT_UPLOAD.html">CURLOPT_UPLOAD</a>, <a Class="manpage" href="./CURLOPT_POST.html">CURLOPT_POST</a>, <span Class="manpage"> </span> <p class="roffit">
+<p class="level0"><a Class="manpage" href="./CURLOPT_READDATA.html">CURLOPT_READDATA</a>, <a Class="manpage" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_SEEKFUNCTION.html">CURLOPT_SEEKFUNCTION</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_READFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_READFUNCTION.pdf
index 1f1fb1f82..7926845c1 100644
--- a/docs/libcurl/opts/CURLOPT_READFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_READFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.html b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.html
index 80249a37e..58f8e2808 100644
--- a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.html
+++ b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_REDIR_PROTOCOLS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,56 +47,54 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_REDIR_PROTOCOLS - set protocols allowed to redirect to <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_REDIR_PROTOCOLS, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long that holds a bitmask of CURLPROTO_* defines. If used, this bitmask limits what protocols libcurl may use in a transfer that it follows to in a redirect when <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a> is enabled. This allows you to limit specific transfers to only be allowed to use a subset of protocols in redirections. By default libcurl will allow all protocols except for FILE and SCP.
-<p class="level0">These are the available protocol defines: <pre class="level0">
-CURLPROTO_DICT
-CURLPROTO_FILE
-CURLPROTO_FTP
-CURLPROTO_FTPS
-CURLPROTO_GOPHER
-CURLPROTO_HTTP
-CURLPROTO_HTTPS
-CURLPROTO_IMAP
-CURLPROTO_IMAPS
-CURLPROTO_LDAP
-CURLPROTO_LDAPS
-CURLPROTO_POP3
-CURLPROTO_POP3S
-CURLPROTO_RTMP
-CURLPROTO_RTMPE
-CURLPROTO_RTMPS
-CURLPROTO_RTMPT
-CURLPROTO_RTMPTE
-CURLPROTO_RTMPTS
-CURLPROTO_RTSP
-CURLPROTO_SCP
-CURLPROTO_SFTP
-CURLPROTO_SMB
-CURLPROTO_SMTP
-CURLPROTO_SMTPS
-CURLPROTO_TELNET
-CURLPROTO_TFTP
-</pre>
+<p class="level0">These are the available protocol defines: <pre>
+<p class="level0">CURLPROTO_DICT
+ CURLPROTO_FILE
+ CURLPROTO_FTP
+ CURLPROTO_FTPS
+ CURLPROTO_GOPHER
+ CURLPROTO_HTTP
+ CURLPROTO_HTTPS
+ CURLPROTO_IMAP
+ CURLPROTO_IMAPS
+ CURLPROTO_LDAP
+ CURLPROTO_LDAPS
+ CURLPROTO_POP3
+ CURLPROTO_POP3S
+ CURLPROTO_RTMP
+ CURLPROTO_RTMPE
+ CURLPROTO_RTMPS
+ CURLPROTO_RTMPT
+ CURLPROTO_RTMPTE
+ CURLPROTO_RTMPTS
+ CURLPROTO_RTSP
+ CURLPROTO_SCP
+ CURLPROTO_SFTP
+ CURLPROTO_SMB
+ CURLPROTO_SMTP
+ CURLPROTO_SMTPS
+ CURLPROTO_TELNET
+ CURLPROTO_TFTP
+ </pre>
<p class="level0"><a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">All protocols except for FILE, SCP and SMB. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-curl = curl_easy_init();
-if(curl) {
-&nbsp; /* pass in the URL from an external source */
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
-&nbsp;
-&nbsp; /* only allow redirects to HTTP and HTTPS URLs */
-&nbsp; curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS,
-&nbsp; CURLPROTO_HTTP | CURLPROTO_HTTPS);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; /* pass in the URL from an external source */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, argv[1]);
+ <p class="level0">&nbsp; /* only allow redirects to HTTP and HTTPS URLs */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_REDIR_PROTOCOLS,
+ &nbsp; CURLPROTO_HTTP | CURLPROTO_HTTPS);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.19.4, before then it would follow all protocols. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.pdf b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.pdf
index e702d150c..f5e35275a 100644
--- a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.pdf
+++ b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_REFERER.3 b/docs/libcurl/opts/CURLOPT_REFERER.3
index bcb162515..d00019b01 100644
--- a/docs/libcurl/opts/CURLOPT_REFERER.3
+++ b/docs/libcurl/opts/CURLOPT_REFERER.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -37,17 +37,7 @@ NULL
.SH PROTOCOLS
HTTP
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* tell it where we found the link to this place */
- curl_easy_setopt(curl, CURLOPT_REFERER, "http://example.com/aboutme.html");
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
If built with HTTP support
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_REFERER.html b/docs/libcurl/opts/CURLOPT_REFERER.html
index 733a8c840..d9dcbc61d 100644
--- a/docs/libcurl/opts/CURLOPT_REFERER.html
+++ b/docs/libcurl/opts/CURLOPT_REFERER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_REFERER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,24 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_REFERER - set the HTTP referer header <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_REFERER, char *where); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It will be used to set the Referer: header in the http request sent to the remote server. This can be used to fool servers or scripts. You can also set any custom header with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* tell it where we found the link to this place */
-&nbsp; curl_easy_setopt(curl, CURLOPT_REFERER, "<a href="http://example.com/aboutme.html">http://example.com/aboutme.html</a>");
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">If built with HTTP support <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if HTTP support is enabled, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_USERAGENT.html">CURLOPT_USERAGENT</a>, <a Class="manpage" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_REFERER.pdf b/docs/libcurl/opts/CURLOPT_REFERER.pdf
index 18d4035fe..c8989263f 100644
--- a/docs/libcurl/opts/CURLOPT_REFERER.pdf
+++ b/docs/libcurl/opts/CURLOPT_REFERER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.3 b/docs/libcurl/opts/CURLOPT_RESOLVE.3
index 4d34ed614..06a393a74 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.3
@@ -51,8 +51,7 @@ entries.
You can remove names from the DNS cache again, to stop providing these fake
resolves, by including a string in the linked list that uses the format
\&"-HOST:PORT". The host name must be prefixed with a dash, and the host name
-and port number must exactly match what was already added previously. (Added in
-7.42.0)
+and port number must exactly match what was already added previously.
.SH DEFAULT
NULL
.SH PROTOCOLS
@@ -76,7 +75,7 @@ if(curl) {
curl_slist_free_all(host);
.fi
.SH AVAILABILITY
-Added in 7.21.3. Removal support added in 7.42.0.
+Added in 7.21.3
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.html b/docs/libcurl/opts/CURLOPT_RESOLVE.html
index bec4d8514..f3bd34276 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.html
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RESOLVE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,39 +47,35 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RESOLVE - provide custom host name to IP address resolves <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RESOLVE,
-&nbsp; struct curl_slist *hosts);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RESOLVE,
+ &nbsp; struct curl_slist *hosts);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a linked list of strings with host name resolve information to use for requests with this handle. The linked list should be a fully valid list of <span Class="bold">struct curl_slist</span> structs properly filled in. Use <span Class="emphasis">curl_slist_append(3)</span> to create the list and <span Class="emphasis">curl_slist_free_all(3)</span> to clean up an entire list.
<p class="level0">Each single name resolve string should be written using the format HOST:PORT:ADDRESS where HOST is the name libcurl will try to resolve, PORT is the port number of the service where libcurl wants to connect to the HOST and ADDRESS is the numerical IP address. If libcurl is built to support IPv6, ADDRESS can of course be either IPv4 or IPv6 style addressing.
<p class="level0">This option effectively pre-populates the DNS cache with entries for the host+port pair so redirects and everything that operations against the HOST+PORT will instead use your provided ADDRESS. Addresses to set with <span Class="emphasis">CURL_RESOLVE</span> will not time-out from the DNS cache like ordinary entries.
-<p class="level0">You can remove names from the DNS cache again, to stop providing these fake resolves, by including a string in the linked list that uses the format "-HOST:PORT". The host name must be prefixed with a dash, and the host name and port number must exactly match what was already added previously. (Added in 7.42.0) <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">You can remove names from the DNS cache again, to stop providing these fake resolves, by including a string in the linked list that uses the format "-HOST:PORT". The host name must be prefixed with a dash, and the host name and port number must exactly match what was already added previously. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl;
-struct curl_slist *host = NULL;
-host = curl_slist_append(NULL, "example.com:80:127.0.0.1");
-&nbsp;
-curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_RESOLVE, host);
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; res = curl_easy_perform(curl);
-&nbsp;
-&nbsp; /* always cleanup */
-&nbsp; curl_easy_cleanup(curl);
-}
-&nbsp;
-curl_slist_free_all(host);
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl;
+ struct curl_slist *host = NULL;
+ host = curl_slist_append(NULL, "example.com:80:127.0.0.1");
+ <p class="level0">curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_RESOLVE, host);
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ &nbsp; res = curl_easy_perform(curl);
+ <p class="level0">&nbsp; /* always cleanup */
+ &nbsp; curl_easy_cleanup(curl);
+ }
+ <p class="level0">curl_slist_free_all(host);
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.21.3. Removal support added in 7.42.0. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Added in 7.21.3 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_IPRESOLVE.html">CURLOPT_IPRESOLVE</a>, <a Class="manpage" href="./CURLOPT_DNS_CACHE_TIMEOUT.html">CURLOPT_DNS_CACHE_TIMEOUT</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.pdf b/docs/libcurl/opts/CURLOPT_RESOLVE.pdf
index 7c1907718..ee832c9cf 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.pdf
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM.html b/docs/libcurl/opts/CURLOPT_RESUME_FROM.html
index a79652980..223d95a28 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM.html
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RESUME_FROM man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,31 +47,27 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RESUME_FROM - set a point to resume transfer from <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RESUME_FROM, long from); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter. It contains the offset in number of bytes that you want the transfer to start from. Set this option to 0 to make the transfer start from the beginning (effectively disabling resume). For FTP, set this option to -1 to make the transfer start from the end of the target file (useful to continue an interrupted upload).
<p class="level0">When doing uploads with FTP, the resume position is where in the local/source file libcurl should try to resume the upload from and it will then append the source file to the remote target file.
<p class="level0">If you need to resume a transfer beyond the 2GB limit, use <a Class="emphasis" href="./CURLOPT_RESUME_FROM_LARGE.html">CURLOPT_RESUME_FROM_LARGE</a> instead. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, not used <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP, FTP, SFTP, FILE <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com">ftp://example.com</a>");
-&nbsp;
-&nbsp; /* resume upload at byte index 200 */
-&nbsp; curl_easy_setopt(curl, CURLOPT_RESUME_FROM, 200L);
-&nbsp;
-&nbsp; /* ask for upload */
-&nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-&nbsp;
-&nbsp; /* set total data amount to expect */
-&nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE, size_of_file);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com">ftp://example.com</a>");
+ <p class="level0">&nbsp; /* resume upload at byte index 200 */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_RESUME_FROM, 200L);
+ <p class="level0">&nbsp; /* ask for upload */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+ <p class="level0">&nbsp; /* set total data amount to expect */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE, size_of_file);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM.pdf b/docs/libcurl/opts/CURLOPT_RESUME_FROM.pdf
index 5b1aad114..2cae610ad 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM.pdf
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.html b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.html
index 20c956f3e..122520bcc 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.html
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RESUME_FROM_LARGE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,38 +47,32 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RESUME_FROM_LARGE - set a point to resume transfer from <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RESUME_FROM_LARGE,
-&nbsp; curl_off_t from);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RESUME_FROM_LARGE,
+ &nbsp; curl_off_t from);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a curl_off_t as parameter. It contains the offset in number of bytes that you want the transfer to start from. Set this option to 0 to make the transfer start from the beginning (effectively disabling resume). For FTP, set this option to -1 to make the transfer start from the end of the target file (useful to continue an interrupted upload).
<p class="level0">When doing uploads with FTP, the resume position is where in the local/source file libcurl should try to resume the upload from and it will then append the source file to the remote target file. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, not used <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP, FTP, SFTP, FILE <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_off_t resume_position = GET_IT_SOMEHOW;
-&nbsp; curl_off_t file_size = GET_IT_SOMEHOW_AS_WELL;
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com">ftp://example.com</a>");
-&nbsp;
-&nbsp; /* resuming upload at this position, possibly beyond 2GB */
-&nbsp; curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, resume_position);
-&nbsp;
-&nbsp; /* ask for upload */
-&nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-&nbsp;
-&nbsp; /* set total data amount to expect */
-&nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, file_size);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_off_t resume_position = GET_IT_SOMEHOW;
+ &nbsp; curl_off_t file_size = GET_IT_SOMEHOW_AS_WELL;
+ <p class="level0">&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com">ftp://example.com</a>");
+ <p class="level0">&nbsp; /* resuming upload at this position, possibly beyond 2GB */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_RESUME_FROM_LARGE, resume_position);
+ <p class="level0">&nbsp; /* ask for upload */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+ <p class="level0">&nbsp; /* set total data amount to expect */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, file_size);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.11.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.pdf b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.pdf
index 135317e7b..2c7eb2d32 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.pdf
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.html b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.html
index 1b567d959..b1f53cad9 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_CLIENT_CSEQ man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_CLIENT_CSEQ - set the RTSP client CSEQ number <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_CLIENT_CSEQ, long cseq); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long to set the the CSEQ number to issue for the next RTSP request. Useful if the application is resuming a previously broken connection. The CSEQ will increment from this new number henceforth. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.pdf b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.pdf
index 800e75be0..3a6b03395 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.html b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.html
index 5db979d9f..87592b583 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_REQUEST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_REQUEST - specify RTSP request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_REQUEST, long request); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Tell libcurl what kind of RTSP request to make. Pass one of the following RTSP enum values as a long in the <span Class="emphasis">request</span> argument. Unless noted otherwise, commands require the Session ID to be initialized.
<p class="level0"><a name="CURLRTSPREQOPTIONS"></a><span class="nroffip">CURL_RTSPREQ_OPTIONS</span>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.pdf b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.pdf
index 11823540a..baec9cb27 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.html b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.html
index 45a5d0602..e90ff59e0 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_SERVER_CSEQ man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_SERVER_CSEQ - set the RTSP server CSEQ number <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_SERVER_CSEQ, long cseq); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long to set the CSEQ number to expect for the next RTSP Server-&gt;Client request. <span Class="bold">NOTE</span>: this feature (listening for Server requests) is unimplemented. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.pdf b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.pdf
index 9d520f98e..c64018d8d 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.pdf
@@ -67,12 +67,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:83e0b27e-78d5-11f0-0000-e6e9a23d587a' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:83e0b27e-78d5-11f0-0000-e6e9a23d587a' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:27+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:27+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-e6e9a23d587a' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-e6e9a23d587a' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:05+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:05+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:83e0b27e-78d5-11f0-0000-e6e9a23d587a' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:83e0b27e-78d5-11f0-0000-e6e9a23d587a'/>
-<rdf:Description rdf:about='uuid:83e0b27e-78d5-11f0-0000-e6e9a23d587a' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-e6e9a23d587a' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6bff3b4a-cf2b-11ef-0000-e6e9a23d587a'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-e6e9a23d587a' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -81,9 +81,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081127+02'00')
-/ModDate(D:20150812081127+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091805+01'00')
+/ModDate(D:20150108091805+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 14
@@ -103,7 +103,7 @@ xref
0000001666 00000 n
trailer
<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<8C96E27F966D9A8794FCAEBDAE104CE8><8C96E27F966D9A8794FCAEBDAE104CE8>]
+/ID [<A4FA71C88590FFAE0FC8708BF479E6D2><A4FA71C88590FFAE0FC8708BF479E6D2>]
>>
startxref
3243
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.html b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.html
index 81fb65e66..d3cf458cb 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_SESSION_ID man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_SESSION_ID - set RTSP session ID <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_SESSION_ID, char *id); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as a parameter to set the value of the current RTSP Session ID for the handle. Useful for resuming an in-progress session. Once this value is set to any non-NULL value, libcurl will return <span Class="emphasis">CURLE_RTSP_SESSION_ERROR</span> if ID received from the server does not match. If unset (or set to NULL), libcurl will automatically set the ID the first time the server sets it in a response. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.pdf b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.pdf
index be422bdbc..3b58f7cbe 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.html b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.html
index f65c70c9f..c35879bca 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_STREAM_URI man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_STREAM_URI - set RTSP stream URI <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_STREAM_URI, char *URI); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the stream <span Class="emphasis">URI</span> to operate on by passing a char * . For example, a single session may be controlling <span Class="emphasis">rtsp://foo/twister/audio</span> and <span Class="emphasis">rtsp://foo/twister/video</span> and the application can switch to the appropriate stream using this option. If unset, libcurl will default to operating on generic server options by passing '*' in the place of the RTSP Stream URI. This option is distinct from <a Class="emphasis" href="./CURLOPT_URL.html">CURLOPT_URL</a>. When working with RTSP, the <span Class="emphasis">CURLOPT_STREAM_URI(3)</span> indicates what URL to send to the server in the request header while the <a Class="emphasis" href="./CURLOPT_URL.html">CURLOPT_URL</a> indicates where to make the connection to. (e.g. the <a Class="emphasis" href="./CURLOPT_URL.html">CURLOPT_URL</a> for the above examples might be set to <span Class="emphasis">rtsp://foo/twister</span> <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">'*' <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.pdf b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.pdf
index 3756ff83b..79bbdc9c6 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.html b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.html
index 46609fa39..f79c01f9b 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.html
+++ b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_RTSP_TRANSPORT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_RTSP_TRANSPORT - set RTSP Transport: header <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_TRANSPORT,
-&nbsp; char *transport);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_RTSP_TRANSPORT,
+ &nbsp; char *transport);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * to tell libcurl what to pass for the Transport: header for this RTSP session. This is mainly a convenience method to avoid needing to set a custom Transport: header for every SETUP request. The application must set a Transport: header before issuing a SETUP request. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.pdf b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.pdf
index 72be67ce6..d05ea247c 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.pdf
+++ b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SASL_IR.html b/docs/libcurl/opts/CURLOPT_SASL_IR.html
index 713412e36..a703b4997 100644
--- a/docs/libcurl/opts/CURLOPT_SASL_IR.html
+++ b/docs/libcurl/opts/CURLOPT_SASL_IR.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SASL_IR man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SASL_IR - enable sending initial response in first packet <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SASL_IR, long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If the value is 1, curl will send the initial response to the server in the first authentication packet in order to reduce the number of ping pong requests. Only applicable to the following supporting SASL authentication mechanisms:
<p class="level0">* Login * Plain * GSSAPI * NTLM * OAuth 2.0
diff --git a/docs/libcurl/opts/CURLOPT_SASL_IR.pdf b/docs/libcurl/opts/CURLOPT_SASL_IR.pdf
index 7b465043a..841d3a9fc 100644
--- a/docs/libcurl/opts/CURLOPT_SASL_IR.pdf
+++ b/docs/libcurl/opts/CURLOPT_SASL_IR.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SEEKDATA.html b/docs/libcurl/opts/CURLOPT_SEEKDATA.html
index 4cf4d9826..bd688d16e 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKDATA.html
+++ b/docs/libcurl/opts/CURLOPT_SEEKDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SEEKDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SEEKDATA - custom pointer passed to the seek callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SEEKDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Data <span Class="emphasis">pointer</span> to pass to the seek callback function. If you use the <a Class="emphasis" href="./CURLOPT_SEEKFUNCTION.html">CURLOPT_SEEKFUNCTION</a> option, this is the pointer you'll get as input. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">If you don't set this, NULL is passed to the callback. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SEEKDATA.pdf b/docs/libcurl/opts/CURLOPT_SEEKDATA.pdf
index ebe314d7f..9cbfdea34 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_SEEKDATA.pdf
@@ -68,12 +68,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-bfb7a2fb1104' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-bfb7a2fb1104' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:28+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:28+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-bfb7a2fb1104' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-bfb7a2fb1104' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:06+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:06+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-bfb7a2fb1104' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:847948fe-78d5-11f0-0000-bfb7a2fb1104'/>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-bfb7a2fb1104' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-bfb7a2fb1104' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6bff3b4a-cf2b-11ef-0000-bfb7a2fb1104'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-bfb7a2fb1104' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -82,9 +82,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081128+02'00')
-/ModDate(D:20150812081128+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091806+01'00')
+/ModDate(D:20150108091806+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -105,7 +105,7 @@ xref
0000001688 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<0F85402D7DE02750E9EB57DA2274A941><0F85402D7DE02750E9EB57DA2274A941>]
+/ID [<DEB12F4A5B8693AE24F75ABA0F65967E><DEB12F4A5B8693AE24F75ABA0F65967E>]
>>
startxref
3265
diff --git a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
index bf7e3045e..8747a1784 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -43,13 +43,10 @@ shown above.
This function gets called by libcurl to seek to a certain position in the
input stream and can be used to fast forward a file in a resumed upload
(instead of reading all uploaded bytes with the normal read
-function/callback). It is also called to rewind a stream when data has already
-been sent to the server and needs to be sent again. This may happen when doing
-a HTTP PUT or POST with a multi-pass authentication method, or when an
-existing HTTP connection is reused too late and the server closes the
-connection. The function shall work like fseek(3) or lseek(3) and it gets
-SEEK_SET, SEEK_CUR or SEEK_END as argument for \fIorigin\fP, although libcurl
-currently only passes SEEK_SET.
+function/callback). It is also called to rewind a stream when doing a HTTP PUT
+or POST with a multi-pass authentication method. The function shall work like
+fseek(3) or lseek(3) and it gets SEEK_SET, SEEK_CUR or SEEK_END as argument
+for \fIorigin\fP, although libcurl currently only passes SEEK_SET.
\fIuserp\fP is the pointer you set with \fICURLOPT_SEEKDATA(3)\fP.
diff --git a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.html b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.html
index 6154cb5b2..6010e4913 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SEEKFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,22 +47,19 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SEEKFUNCTION - user callback for seeking in input stream <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-/* These are the return codes for the seek callbacks */
-&#35;define CURL_SEEKFUNC_OK 0
-&#35;define CURL_SEEKFUNC_FAIL 1 /* fail the entire transfer */
-&#35;define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so
-&nbsp; libcurl might try other means instead */
-&nbsp;
-int seek_callback(void *userp, curl_off_t offset, int origin);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SEEKFUNCTION, seek_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">/* These are the return codes for the seek callbacks */
+ #define CURL_SEEKFUNC_OK 0
+ #define CURL_SEEKFUNC_FAIL 1 /* fail the entire transfer */
+ #define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so
+ &nbsp; libcurl might try other means instead */
+ <p class="level0">int seek_callback(void *userp, curl_off_t offset, int origin);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SEEKFUNCTION, seek_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
-<p class="level0">This function gets called by libcurl to seek to a certain position in the input stream and can be used to fast forward a file in a resumed upload (instead of reading all uploaded bytes with the normal read function/callback). It is also called to rewind a stream when data has already been sent to the server and needs to be sent again. This may happen when doing a HTTP PUT or POST with a multi-pass authentication method, or when an existing HTTP connection is reused too late and the server closes the connection. The function shall work like fseek(3) or lseek(3) and it gets SEEK_SET, SEEK_CUR or SEEK_END as argument for <span Class="emphasis">origin</span>, although libcurl currently only passes SEEK_SET.
+<p class="level0">This function gets called by libcurl to seek to a certain position in the input stream and can be used to fast forward a file in a resumed upload (instead of reading all uploaded bytes with the normal read function/callback). It is also called to rewind a stream when doing a HTTP PUT or POST with a multi-pass authentication method. The function shall work like fseek(3) or lseek(3) and it gets SEEK_SET, SEEK_CUR or SEEK_END as argument for <span Class="emphasis">origin</span>, although libcurl currently only passes SEEK_SET.
<p class="level0"><span Class="emphasis">userp</span> is the pointer you set with <a Class="emphasis" href="./CURLOPT_SEEKDATA.html">CURLOPT_SEEKDATA</a>.
<p class="level0">The callback function must return <span Class="emphasis">CURL_SEEKFUNC_OK</span> on success, <span Class="emphasis">CURL_SEEKFUNC_FAIL</span> to cause the upload operation to fail or <span Class="emphasis">CURL_SEEKFUNC_CANTSEEK</span> to indicate that while the seek failed, libcurl is free to work around the problem if possible. The latter can sometimes be done by instead reading from the input or similar.
<p class="level0">If you forward the input arguments directly to fseek(3) or lseek(3), note that the data type for <span Class="emphasis">offset</span> is not the same as defined for curl_off_t on many systems! <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.pdf
index 048f83f8c..712417b45 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
deleted file mode 100644
index 116fdbe76..000000000
--- a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
+++ /dev/null
@@ -1,46 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_SERVICE_NAME 3 "17 Jun 2015" "libcurl 7.43.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_SERVICE_NAME \- SPNEGO service name
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SERVICE_NAME, char *name);
-.SH DESCRIPTION
-Pass a char * as parameter to a string holding the \fIname\fP of the
-service. The default service name is "HTTP". This option allows you to
-change it.
-..SH DEFAULT
-See above
-.SH PROTOCOLS
-Most
-.SH EXAMPLE
-TODO
-.SH AVAILABILITY
-Added in 7.43.0
-.SH RETURN VALUE
-Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
-CURLE_OUT_OF_MEMORY if there was insufficient heap space.
-.SH "SEE ALSO"
-.BR CURLOPT_PROXY "(3), " CURLOPT_PROXYTYPE "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.html b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.html
deleted file mode 100644
index 3c6a495b1..000000000
--- a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_SERVICE_NAME man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_SERVICE_NAME - SPNEGO service name <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SERVICE_NAME, char *name); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a char * as parameter to a string holding the <span Class="emphasis">name</span> of the service. The default service name is "HTTP". This option allows you to change it.
-<p class="level0">See above <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">Most <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.43.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_PROXY.html">CURLOPT_PROXY</a>, <a Class="manpage" href="./CURLOPT_PROXYTYPE.html">CURLOPT_PROXYTYPE</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.pdf b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.pdf
deleted file mode 100644
index 21d32fbc1..000000000
--- a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SHARE.html b/docs/libcurl/opts/CURLOPT_SHARE.html
index 8fbe21b92..ae2082e32 100644
--- a/docs/libcurl/opts/CURLOPT_SHARE.html
+++ b/docs/libcurl/opts/CURLOPT_SHARE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SHARE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SHARE - specify share handle to use <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SHARE, CURLSH *share); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">share</span> handle as a parameter. The share handle must have been created by a previous call to <span Class="emphasis">curl_share_init(3)</span>. Setting this option, will make this curl handle use the data from the shared handle instead of keeping the data to itself. This enables several curl handles to share data. If the curl handles are used simultaneously in multiple threads, you <span Class="bold">MUST</span> use the locking methods in the share handle. See <span Class="emphasis">curl_share_setopt(3)</span> for details.
<p class="level0">If you add a share that is set to share cookies, your easy handle will use that cookie cache and get the cookie engine enabled. If you unshare an object that was using cookies (or change to another object that doesn't share cookies), the easy handle will get its cookie engine disabled.
diff --git a/docs/libcurl/opts/CURLOPT_SHARE.pdf b/docs/libcurl/opts/CURLOPT_SHARE.pdf
index 6a55d9cc8..8453bebbf 100644
--- a/docs/libcurl/opts/CURLOPT_SHARE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SHARE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.html b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.html
index 7a67c5543..692af0e8c 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.html
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SOCKOPTDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SOCKOPTDATA - custom pointer to pass to sockopt callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKOPTDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the first argument in the sockopt callback set with <a Class="emphasis" href="./CURLOPT_SOCKOPTFUNCTION.html">CURLOPT_SOCKOPTFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">The default value of this parameter is NULL. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.pdf b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.pdf
index 04881f796..5e4622fef 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.pdf
@@ -72,12 +72,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-a72fc39baf1d' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-a72fc39baf1d' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:28+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:28+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-a72fc39baf1d' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-a72fc39baf1d' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:06+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:06+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-a72fc39baf1d' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:847948fe-78d5-11f0-0000-a72fc39baf1d'/>
-<rdf:Description rdf:about='uuid:847948fe-78d5-11f0-0000-a72fc39baf1d' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-a72fc39baf1d' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6bff3b4a-cf2b-11ef-0000-a72fc39baf1d'/>
+<rdf:Description rdf:about='uuid:6bff3b4a-cf2b-11ef-0000-a72fc39baf1d' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -86,9 +86,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081128+02'00')
-/ModDate(D:20150812081128+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091806+01'00')
+/ModDate(D:20150108091806+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -109,7 +109,7 @@ xref
0000001836 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<D908C4288394121E1AB0E7BC684E0476><D908C4288394121E1AB0E7BC684E0476>]
+/ID [<548B7B107771A11F62E135259C369E68><548B7B107771A11F62E135259C369E68>]
>>
startxref
3413
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.html b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.html
index 211e800b5..07186d22b 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SOCKOPTFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,26 +47,22 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SOCKOPTFUNCTION - set callback for setting socket options <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-typedef enum {
-&nbsp; CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
-&nbsp; CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */
-&nbsp; CURLSOCKTYPE_LAST /* never use */
-} curlsocktype;
-&nbsp;
-&#35;define CURL_SOCKOPT_OK 0
-&#35;define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return
-&nbsp; CURLE_ABORTED_BY_CALLBACK */
-&#35;define CURL_SOCKOPT_ALREADY_CONNECTED 2
-&nbsp;
-int sockopt_callback(void *clientp,
-&nbsp; curl_socket_t curlfd,
-&nbsp; curlsocktype purpose);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKOPTFUNCTION, sockopt_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">typedef enum {
+ &nbsp; CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */
+ &nbsp; CURLSOCKTYPE_ACCEPT, /* socket created by accept() call */
+ &nbsp; CURLSOCKTYPE_LAST /* never use */
+ } curlsocktype;
+ <p class="level0">#define CURL_SOCKOPT_OK 0
+ #define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return
+ &nbsp; CURLE_ABORTED_BY_CALLBACK */
+ #define CURL_SOCKOPT_ALREADY_CONNECTED 2
+ <p class="level0">int sockopt_callback(void *clientp,
+ &nbsp; curl_socket_t curlfd,
+ &nbsp; curlsocktype purpose);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKOPTFUNCTION, sockopt_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">When set, this callback function gets called by libcurl when the socket has been created, but before the connect call to allow applications to change specific socket options. The callback's <span Class="emphasis">purpose</span> argument identifies the exact purpose for this particular socket:
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.pdf
index 5ccd41c70..47958b9fa 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.html b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.html
index 0ee98e5fd..41a462e6a 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.html
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SOCKS5_GSSAPI_NEC man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SOCKS5_GSSAPI_NEC - set socks proxy gssapi negotiation protection <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKS5_GSSAPI_NEC, long nec); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to 1 to enable or 0 to disable. As part of the gssapi negotiation a protection mode is negotiated. The <a href="http://www.ietf.org/rfc/rfc1961.txt">RFC 1961</a> says in section 4.3/4.4 it should be protected, but the NEC reference implementation does not. If enabled, this option allows the unprotected exchange of the protection mode negotiation. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">? <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.pdf b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.pdf
index b120db278..42a15abf9 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.pdf
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.html b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.html
index ab2c47260..32c43d396 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.html
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SOCKS5_GSSAPI_SERVICE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SOCKS5_GSSAPI_SERVICE - proxy socks gssapi service name <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SOCKS5_GSSAPI_SERVICE, char *name); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter to a string holding the <span Class="emphasis">name</span> of the service. The default service name for a SOCKS5 server is rcmd/server-fqdn. This option allows you to change it. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">See above <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.pdf b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.pdf
index 878761c5e..74b6ccd29 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.html b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.html
index c7e306d93..6b2874473 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_AUTH_TYPES man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_AUTH_TYPES - set desired auth types for SFTP and SCP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_AUTH_TYPES, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to a bitmask consisting of one or more of CURLSSH_AUTH_PUBLICKEY, CURLSSH_AUTH_PASSWORD, CURLSSH_AUTH_HOST, CURLSSH_AUTH_KEYBOARD and CURLSSH_AUTH_AGENT.
<p class="level0">Set <span Class="emphasis">CURLSSH_AUTH_ANY</span> to let libcurl pick a suitable one. Currently CURLSSH_AUTH_HOST has no effect. If CURLSSH_AUTH_AGENT is used, libcurl attempts to connect to ssh-agent or pageant and let the agent attempt the authentication. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.pdf b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.pdf
index d148ccb12..a719b923f 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.html b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.html
index ee8d2f5f4..0bcbfddbc 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 - checksum of SSH server public key <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
-&nbsp; char *md5);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
+ &nbsp; char *md5);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * pointing to a string containing 32 hexadecimal digits. The string should be the 128 bit MD5 checksum of the remote host's public key, and libcurl will reject the connection to the host unless the md5sums match. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.pdf b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.pdf
index 093d2c26d..e04a2f8ea 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.html b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.html
index 87ecc6ab3..9257ac70b 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_KEYDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_KEYDATA - pointer to pass to the SSH key callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_KEYDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a void * as parameter. This <span Class="emphasis">pointer</span> will be passed along verbatim to the callback set with <a Class="emphasis" href="./CURLOPT_SSH_KEYFUNCTION.html">CURLOPT_SSH_KEYFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.pdf b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.pdf
index b4b071338..5c2b7dba2 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.html b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.html
index 3fe17c301..bfc1920b9 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_KEYFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,42 +47,37 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_KEYFUNCTION - callback for known host matching logic <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-enum curl_khstat {
-&nbsp; CURLKHSTAT_FINE_ADD_TO_FILE,
-&nbsp; CURLKHSTAT_FINE,
-&nbsp; CURLKHSTAT_REJECT, /* reject the connection, return an error */
-&nbsp; CURLKHSTAT_DEFER, /* do not accept it, but we can't answer right
-&nbsp; now so this causes a CURLE_DEFER error but
-&nbsp; otherwise the connection will be left intact
-&nbsp; etc */
-};
-&nbsp;
-enum curl_khmatch {
-&nbsp; CURLKHMATCH_OK, /* match */
-&nbsp; CURLKHMATCH_MISMATCH, /* host found, key mismatch! */
-&nbsp; CURLKHMATCH_MISSING, /* no matching host/key found */
-};
-&nbsp;
-struct curl_khkey {
-&nbsp; const char *key; /* points to a zero-terminated string encoded with
-&nbsp; base64 if len is zero, otherwise to the "raw"
-&nbsp; data */
-&nbsp; size_t len;
-&nbsp; enum curl_khtype keytype;
-};
-&nbsp;
-int ssh_keycallback(CURL *easy,
-&nbsp; const struct curl_khkey *knownkey,
-&nbsp; const struct curl_khkey *foundkey,
-&nbsp; enum curl_khmatch,
-&nbsp; void *clientp);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_KEYFUNCTION,
-&nbsp; ssh_keycallback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">enum curl_khstat {
+ &nbsp; CURLKHSTAT_FINE_ADD_TO_FILE,
+ &nbsp; CURLKHSTAT_FINE,
+ &nbsp; CURLKHSTAT_REJECT, /* reject the connection, return an error */
+ &nbsp; CURLKHSTAT_DEFER, /* do not accept it, but we can't answer right
+ &nbsp; now so this causes a CURLE_DEFER error but
+ &nbsp; otherwise the connection will be left intact
+ &nbsp; etc */
+ };
+ <p class="level0">enum curl_khmatch {
+ &nbsp; CURLKHMATCH_OK, /* match */
+ &nbsp; CURLKHMATCH_MISMATCH, /* host found, key mismatch! */
+ &nbsp; CURLKHMATCH_MISSING, /* no matching host/key found */
+ };
+ <p class="level0">struct curl_khkey {
+ &nbsp; const char *key; /* points to a zero-terminated string encoded with
+ &nbsp; base64 if len is zero, otherwise to the "raw"
+ &nbsp; data */
+ &nbsp; size_t len;
+ &nbsp; enum curl_khtype keytype;
+ };
+ <p class="level0">int ssh_keycallback(CURL *easy,
+ &nbsp; const struct curl_khkey *knownkey,
+ &nbsp; const struct curl_khkey *foundkey,
+ &nbsp; enum curl_khmatch,
+ &nbsp; void *clientp);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_KEYFUNCTION,
+ &nbsp; ssh_keycallback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">It gets called when the known_host matching has been done, to allow the application to act and decide for libcurl how to proceed. The callback will only be called if <a Class="emphasis" href="./CURLOPT_SSH_KNOWNHOSTS.html">CURLOPT_SSH_KNOWNHOSTS</a> is also set.
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.pdf
index 0c0d9a5b1..cdbd6b6d9 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.html b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.html
index 107e4fdb3..b757f226a 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_KNOWNHOSTS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_KNOWNHOSTS - file name holding the SSH known hosts <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_KNOWNHOSTS, char *fname); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string holding the file name of the known_host file to use. The known_hosts file should use the OpenSSH file format as supported by libssh2. If this file is specified, libcurl will only accept connections with hosts that are known and present in that file, with a matching public key. Use <a Class="emphasis" href="./CURLOPT_SSH_KEYFUNCTION.html">CURLOPT_SSH_KEYFUNCTION</a> to alter the default behavior on host and key (mis)matching. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.pdf b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.pdf
index a7d37406f..51cf58ae5 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.pdf
@@ -72,12 +72,12 @@ endobj
<?adobe-xap-filters esc="CRLF"?>
<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:8511df7e-78d5-11f0-0000-97ccdacf2f0e' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:8511df7e-78d5-11f0-0000-97ccdacf2f0e' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:29+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:29+02:00</xmp:CreateDate>
+<rdf:Description rdf:about='uuid:6c97d1ca-cf2b-11ef-0000-97ccdacf2f0e' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.06'/>
+<rdf:Description rdf:about='uuid:6c97d1ca-cf2b-11ef-0000-97ccdacf2f0e' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-01-08T09:18:07+01:00</xmp:ModifyDate>
+<xmp:CreateDate>2015-01-08T09:18:07+01:00</xmp:CreateDate>
<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:8511df7e-78d5-11f0-0000-97ccdacf2f0e' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:8511df7e-78d5-11f0-0000-97ccdacf2f0e'/>
-<rdf:Description rdf:about='uuid:8511df7e-78d5-11f0-0000-97ccdacf2f0e' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
+<rdf:Description rdf:about='uuid:6c97d1ca-cf2b-11ef-0000-97ccdacf2f0e' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:6c97d1ca-cf2b-11ef-0000-97ccdacf2f0e'/>
+<rdf:Description rdf:about='uuid:6c97d1ca-cf2b-11ef-0000-97ccdacf2f0e' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
</rdf:RDF>
</x:xmpmeta>
@@ -86,9 +86,9 @@ endobj
endstream
endobj
2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081129+02'00')
-/ModDate(D:20150812081129+02'00')
+<</Producer(GPL Ghostscript 9.06)
+/CreationDate(D:20150108091807+01'00')
+/ModDate(D:20150108091807+01'00')
/Creator(groff version 1.22.3)>>endobj
xref
0 15
@@ -109,7 +109,7 @@ xref
0000002028 00000 n
trailer
<< /Size 15 /Root 1 0 R /Info 2 0 R
-/ID [<632DBB8A202AD6F3B6D28E25E2670178><632DBB8A202AD6F3B6D28E25E2670178>]
+/ID [<D884164C072563CB883565F84D010B8D><D884164C072563CB883565F84D010B8D>]
>>
startxref
3605
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.html b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.html
index 22f172156..c425a1b61 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_PRIVATE_KEYFILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_PRIVATE_KEYFILE - set private key file for SSH auth <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PRIVATE_KEYFILE,
-&nbsp; char *filename);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PRIVATE_KEYFILE,
+ &nbsp; char *filename);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * pointing to a <span Class="emphasis">filename</span> for your private key. If not used, libcurl defaults to <span Class="bold">$HOME/.ssh/id_dsa</span> if the HOME environment variable is set, and just "id_dsa" in the current directory if HOME is not set.
<p class="level0">If the file is password-protected, set the password with <a Class="emphasis" href="./CURLOPT_KEYPASSWD.html">CURLOPT_KEYPASSWD</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.pdf b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.pdf
index 49dc3c752..ed2ddf901 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.html b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.html
index a93245706..fc38e723c 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.html
+++ b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSH_PUBLIC_KEYFILE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSH_PUBLIC_KEYFILE - set public key file for SSH auth <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PUBLIC_KEYFILE,
-&nbsp; char *filename);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_PUBLIC_KEYFILE,
+ &nbsp; char *filename);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * pointing to a <span Class="emphasis">filename</span> for your public key. If not used, libcurl defaults to <span Class="bold">$HOME/.ssh/id_dsa.pub</span> if the HOME environment variable is set, and just "id_dsa.pub" in the current directory if HOME is not set.
<p class="level0">If an empty string is passed, libcurl will pass no public key to libssh2 which then tries to compute it from the private key, this is known to work when libssh2 1.4.0+ is linked against OpenSSL. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.pdf b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.pdf
index 594cea019..c588db2cc 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERT.html b/docs/libcurl/opts/CURLOPT_SSLCERT.html
index 1cd1df15f..8e3e4bc18 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERT.html
+++ b/docs/libcurl/opts/CURLOPT_SSLCERT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLCERT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLCERT - set SSL client certificate <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLCERT, char *cert); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. The string should be the file name of your client certificate. The default format is "P12" on Secure Transport and "PEM" on other engines, and can be changed with <a Class="emphasis" href="./CURLOPT_SSLCERTTYPE.html">CURLOPT_SSLCERTTYPE</a>.
<p class="level0">With NSS or Secure Transport, this can also be the nickname of the certificate you wish to authenticate with as it is named in the security database. If you want to use a file from the current directory, please precede it with "./" prefix, in order to avoid confusion with a nickname.
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERT.pdf b/docs/libcurl/opts/CURLOPT_SSLCERT.pdf
index 2e7c5e077..7466794e4 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERT.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLCERT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.html b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.html
index 2ead1f7b2..071eeb714 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.html
+++ b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLCERTTYPE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,9 +47,9 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLCERTTYPE - specify type of the client SSL certificate <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLCERTTYPE, char *type); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a pointer to a zero terminated string as parameter. The string should be the format of your certificate. Supported formats are "PEM" and "DER", except with Secure Transport. OpenSSL (versions 0.9.3 and later) and Secure Transport (on iOS 5 or later, or OS X 10.7 or later) also support "P12" for PKCS&#35;12-encoded files. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">Pass a pointer to a zero terminated string as parameter. The string should be the format of your certificate. Supported formats are "PEM" and "DER", except with Secure Transport. OpenSSL (versions 0.9.3 and later) and Secure Transport (on iOS 5 or later, or OS X 10.7 or later) also support "P12" for PKCS#12-encoded files. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">"PEM" <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.pdf b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.pdf
index 2a68e9f8c..dd6660240 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE.html b/docs/libcurl/opts/CURLOPT_SSLENGINE.html
index 55ea3251a..7263f402b 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE.html
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLENGINE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLENGINE - set SSL engine identifier <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLENGINE, char *id); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It will be used as the identifier for the crypto engine you want to use for your private key.
<p class="level0">If the crypto device cannot be loaded, <span Class="emphasis">CURLE_SSL_ENGINE_NOTFOUND</span> is returned. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE.pdf b/docs/libcurl/opts/CURLOPT_SSLENGINE.pdf
index 3d05678d4..a9a478e67 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.html b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.html
index 69c87030e..75c3bbc89 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.html
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLENGINE_DEFAULT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLENGINE_DEFAULT - make SSL engine default <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLENGINE_DEFAULT, long val); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to 1 as parameter. Sets the actual crypto engine as the default for (asymmetric) crypto operations.
<p class="level0">If the crypto device cannot be set, <span Class="emphasis">CURLE_SSL_ENGINE_SETFAILED</span> is returned. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.pdf b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.pdf
index 394ec8df2..506cb92f8 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEY.html b/docs/libcurl/opts/CURLOPT_SSLKEY.html
index b31d6ed0f..faabcf33f 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEY.html
+++ b/docs/libcurl/opts/CURLOPT_SSLKEY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLKEY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,10 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLKEY - specify private keyfile for TLS and SSL client cert <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLKEY, char *keyfile); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. The string should be the file name of your private key. The default format is "PEM" and can be changed with <a Class="emphasis" href="./CURLOPT_SSLKEYTYPE.html">CURLOPT_SSLKEYTYPE</a>.
-<p class="level0">(iOS and Mac OS X only) This option is ignored if curl was built against Secure Transport. Secure Transport expects the private key to be already present in the keychain or PKCS&#35;12 file containing the certificate. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">(iOS and Mac OS X only) This option is ignored if curl was built against Secure Transport. Secure Transport expects the private key to be already present in the keychain or PKCS#12 file containing the certificate. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEY.pdf b/docs/libcurl/opts/CURLOPT_SSLKEY.pdf
index 8044a1515..fe27c02ba 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEY.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLKEY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.html b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.html
index a4bd97209..be6b2bd88 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.html
+++ b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLKEYTYPE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLKEYTYPE - set type of the private key file <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLKEYTYPE, char *type); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. The string should be the format of your private key. Supported formats are "PEM", "DER" and "ENG".
<p class="level0">The format "ENG" enables you to load the private key from a crypto engine. In this case <a Class="emphasis" href="./CURLOPT_SSLKEY.html">CURLOPT_SSLKEY</a> is used as an identifier passed to the engine. You have to set the crypto engine with <a Class="emphasis" href="./CURLOPT_SSLENGINE.html">CURLOPT_SSLENGINE</a>. "DER" format key file currently does not work because of a bug in OpenSSL. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.pdf b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.pdf
index 238bbe47f..f5446ae4b 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSLVERSION.html b/docs/libcurl/opts/CURLOPT_SSLVERSION.html
index dedebc6c5..efbca5b07 100644
--- a/docs/libcurl/opts/CURLOPT_SSLVERSION.html
+++ b/docs/libcurl/opts/CURLOPT_SSLVERSION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSLVERSION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSLVERSION - set preferred TLS/SSL version <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSLVERSION, long version); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter to control which version of SSL/TLS to attempt to use.
<p class="level0">Use one of the available defines for this purpose. The available options are:
@@ -74,18 +69,16 @@ p.roffit {
<p class="level0"><a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">CURL_SSLVERSION_DEFAULT <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-&nbsp;
-&nbsp; /* ask libcurl to use TLS version 1.0 or later */
-&nbsp; curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+ <p class="level0">&nbsp; /* ask libcurl to use TLS version 1.0 or later */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">SSLv2 is disabled by default since 7.18.1. Other SSL versions availability may vary depending on which backend libcurl has been built to use.
diff --git a/docs/libcurl/opts/CURLOPT_SSLVERSION.pdf b/docs/libcurl/opts/CURLOPT_SSLVERSION.pdf
index 713933c82..ed73b15b1 100644
--- a/docs/libcurl/opts/CURLOPT_SSLVERSION.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSLVERSION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.html b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.html
index afba26ab2..eab61ca27 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_CIPHER_LIST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_CIPHER_LIST - specify ciphers to use for TLS <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CIPHER_LIST, char *list); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char *, pointing to a zero terminated string holding the list of ciphers to use for the SSL connection. The list must be syntactically correct, it consists of one or more cipher strings separated by colons. Commas or spaces are also acceptable separators but colons are normally used, !, - and + can be used as operators.
<p class="level0">For OpenSSL and GnuTLS valid examples of cipher lists include 'RC4-SHA', &acute;SHA1+DES&acute;, 'TLSv1' and 'DEFAULT'. The default list is normally set when you compile OpenSSL.
@@ -60,7 +55,7 @@ p.roffit {
<p class="level0">&nbsp;<a href="http://www.openssl.org/docs/apps/ciphers.html">http://www.openssl.org/docs/apps/ciphers.html</a>
<p class="level0">For NSS, valid examples of cipher lists include 'rsa_rc4_128_md5', &acute;rsa_aes_128_sha&acute;, etc. With NSS you don't add/remove ciphers. If one uses this option then all known ciphers are disabled and only those passed in are enabled.
<p class="level0">You'll find more details about the NSS cipher lists on this URL:
-<p class="level0">&nbsp;<a href="http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html">http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html</a>&#35;Directives <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">&nbsp;<a href="http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives">http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives</a> <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL, use internal default <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.pdf b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.pdf
index 292a70f88..4b0f4d083 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
index 977cc12d4..4873cdd1b 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
@@ -38,8 +38,7 @@ All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
TODO
.SH AVAILABILITY
-Added in 7.11.0 for OpenSSL. Added in 7.42.0 for wolfSSL/CyaSSL. Other SSL
-backends not supported.
+Added in 7.11.0. Only used with the OpenSSL backend.
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.html b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.html
index 8531b4b45..7c3995d2e 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_CTX_DATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,13 +47,13 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_CTX_DATA - custom pointer passed to ssl_ctx callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CTX_DATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Data <span Class="emphasis">pointer</span> to pass to the ssl context callback set by the option <a Class="emphasis" href="./CURLOPT_SSL_CTX_FUNCTION.html">CURLOPT_SSL_CTX_FUNCTION</a>, this is the pointer you'll get as third parameter. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.11.0 for OpenSSL. Added in 7.42.0 for wolfSSL/CyaSSL. Other SSL backends not supported. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Added in 7.11.0. Only used with the OpenSSL backend. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_SSL_CTX_FUNCTION.html">CURLOPT_SSL_CTX_FUNCTION</a>, <a Class="manpage" href="./CURLOPT_SSLVERSION.html">CURLOPT_SSLVERSION</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.pdf b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.pdf
index efe4ce7b5..8e9f8bd2c 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
index e3e017078..1e8dbe5a4 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
@@ -22,7 +22,7 @@
.\"
.TH CURLOPT_SSL_CTX_FUNCTION 3 "19 Jun 2014" "libcurl 7.37.0" "curl_easy_setopt options"
.SH NAME
-CURLOPT_SSL_CTX_FUNCTION \- SSL context callback for OpenSSL or wolfSSL/CyaSSL
+CURLOPT_SSL_CTX_FUNCTION \- openssl specific callback to do SSL magic
.SH SYNOPSIS
.nf
#include <curl/curl.h>
@@ -32,28 +32,28 @@ CURLcode ssl_ctx_callback(CURL *curl, void *ssl_ctx, void *userptr);
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CTX_FUNCTION,
ssl_ctx_callback);
.SH DESCRIPTION
-This option only works for libcurl powered by OpenSSL or wolfSSL/CyaSSL. If
-libcurl was built against another SSL library this functionality is absent.
+This option only works for libcurl powered by OpenSSL. If libcurl was built
+against another SSL library, this functionality is absent.
Pass a pointer to your callback function, which should match the prototype
shown above.
This callback function gets called by libcurl just before the initialization
-of an SSL connection after having processed all other SSL related options to
-give a last chance to an application to modify the behaviour of the SSL
-initialization. The \fIssl_ctx\fP parameter is actually a pointer to the SSL
-library's \fISSL_CTX\fP. If an error is returned from the callback no attempt
-to establish a connection is made and the perform operation will return the
-callback's error code. Set the \fIuserptr\fP argument with the
-\fICURLOPT_SSL_CTX_DATA(3)\fP option.
+of a SSL connection after having processed all other SSL related options to
+give a last chance to an application to modify the behaviour of openssl's ssl
+initialization. The \fIsslctx\fP parameter is actually a pointer to an openssl
+\fISSL_CTX\fP. If an error is returned from the callback, no attempt to
+establish a connection is made and the perform operation will return the error
+code. Set the \fIuserptr\fP argument with the \fICURLOPT_SSL_CTX_DATA(3)\fP
+option.
This function will get called on all new connections made to a server, during
the SSL negotiation. The SSL_CTX pointer will be a new one every time.
-To use this properly, a non-trivial amount of knowledge of your SSL library
-is necessary. For example, you can use this function to call library-specific
-callbacks to add additional validation code for certificates, and even to
-change the actual URI of a HTTPS request (example used in the lib509 test
+To use this properly, a non-trivial amount of knowledge of the openssl
+libraries is necessary. For example, using this function allows you to use
+openssl callbacks to add additional validation code for certificates, and even
+to change the actual URI of a HTTPS request (example used in the lib509 test
case). See also the example section for a replacement of the key, certificate
and trust file settings.
.SH DEFAULT
@@ -63,8 +63,7 @@ All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
TODO
.SH AVAILABILITY
-Added in 7.11.0 for OpenSSL. Added in 7.42.0 for wolfSSL/CyaSSL. Other SSL
-backends not supported.
+Added in 7.11.0. Only supported when built with OpenSSL.
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.html b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.html
index add68193f..2b0f441d1 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_CTX_FUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -51,25 +46,23 @@ p.roffit {
</head><body>
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_SSL_CTX_FUNCTION - SSL context callback for OpenSSL or wolfSSL/CyaSSL <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode ssl_ctx_callback(CURL *curl, void *ssl_ctx, void *userptr);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CTX_FUNCTION,
-&nbsp; ssl_ctx_callback);
-</pre>
+<p class="level0">CURLOPT_SSL_CTX_FUNCTION - openssl specific callback to do SSL magic <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode ssl_ctx_callback(CURL *curl, void *ssl_ctx, void *userptr);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CTX_FUNCTION,
+ &nbsp; ssl_ctx_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">This option only works for libcurl powered by OpenSSL or wolfSSL/CyaSSL. If libcurl was built against another SSL library this functionality is absent.
+<p class="level0">This option only works for libcurl powered by OpenSSL. If libcurl was built against another SSL library, this functionality is absent.
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
-<p class="level0">This callback function gets called by libcurl just before the initialization of an SSL connection after having processed all other SSL related options to give a last chance to an application to modify the behaviour of the SSL initialization. The <span Class="emphasis">ssl_ctx</span> parameter is actually a pointer to the SSL library's <span Class="emphasis">SSL_CTX</span>. If an error is returned from the callback no attempt to establish a connection is made and the perform operation will return the callback's error code. Set the <span Class="emphasis">userptr</span> argument with the <a Class="emphasis" href="./CURLOPT_SSL_CTX_DATA.html">CURLOPT_SSL_CTX_DATA</a> option.
+<p class="level0">This callback function gets called by libcurl just before the initialization of a SSL connection after having processed all other SSL related options to give a last chance to an application to modify the behaviour of openssl's ssl initialization. The <span Class="emphasis">sslctx</span> parameter is actually a pointer to an openssl <span Class="emphasis">SSL_CTX</span>. If an error is returned from the callback, no attempt to establish a connection is made and the perform operation will return the error code. Set the <span Class="emphasis">userptr</span> argument with the <a Class="emphasis" href="./CURLOPT_SSL_CTX_DATA.html">CURLOPT_SSL_CTX_DATA</a> option.
<p class="level0">This function will get called on all new connections made to a server, during the SSL negotiation. The SSL_CTX pointer will be a new one every time.
-<p class="level0">To use this properly, a non-trivial amount of knowledge of your SSL library is necessary. For example, you can use this function to call library-specific callbacks to add additional validation code for certificates, and even to change the actual URI of a HTTPS request (example used in the lib509 test case). See also the example section for a replacement of the key, certificate and trust file settings. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">To use this properly, a non-trivial amount of knowledge of the openssl libraries is necessary. For example, using this function allows you to use openssl callbacks to add additional validation code for certificates, and even to change the actual URI of a HTTPS request (example used in the lib509 test case). See also the example section for a replacement of the key, certificate and trust file settings. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.11.0 for OpenSSL. Added in 7.42.0 for wolfSSL/CyaSSL. Other SSL backends not supported. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">Added in 7.11.0. Only supported when built with OpenSSL. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_SSL_CTX_DATA.html">CURLOPT_SSL_CTX_DATA</a>, <a Class="manpage" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.pdf b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.pdf
index 21b0570c1..af3d9593f 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.html b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.html
index 74751f661..69d6df276 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_ENABLE_ALPN man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_ENABLE_ALPN - enable ALPN <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_ENABLE_ALPN, long npn); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter, 0 or 1 where 1 is for enable and 0 for disable. This option enables/disables ALPN in the SSL handshake (if the SSL backend libcurl is built to use supports it), which can be used to negotiate http2. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1, enabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.pdf b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.pdf
index c7d009e89..96f158c90 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.html b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.html
index 24b817aa1..3278e952f 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_ENABLE_NPN man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_ENABLE_NPN - enable NPN <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_ENABLE_NPN, long npn); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter, 0 or 1 where 1 is for enable and 0 for disable. This option enables/disables NPN in the SSL handshake (if the SSL backend libcurl is built to use supports it), which can be used to negotiate http2. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1, enabled <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.pdf b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.pdf
index 9c5a9122d..49767cbcc 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3 b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
deleted file mode 100644
index 31a05e68e..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
+++ /dev/null
@@ -1,48 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_SSL_FALSESTART 3 "14 Feb 2015" "libcurl 7.41.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_SSL_FALSESTART \- enable TLS false start
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_FALSESTART, long enable);
-.SH DESCRIPTION
-Pass a long as parameter set to 1 to enable or 0 to disable.
-
-This option determines whether libcurl should use false start during the TLS
-handshake. False start is a mode where a TLS client will start sending
-application data before verifying the server's Finished message, thus saving a
-round trip when performing a full handshake.
-.SH DEFAULT
-0
-.SH PROTOCOLS
-All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
-.SH EXAMPLE
-TODO
-.SH AVAILABILITY
-Added in 7.42.0. This option is currently only supported by the NSS and
-Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) TLS backends.
-.SH RETURN VALUE
-Returns CURLE_OK if false start is supported by the SSL backend, otherwise
-returns CURLE_NOT_BUILT_IN.
diff --git a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.html b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.html
deleted file mode 100644
index eb6b4a993..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_SSL_FALSESTART man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_SSL_FALSESTART - enable TLS false start <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_FALSESTART, long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a long as parameter set to 1 to enable or 0 to disable.
-<p class="level0">This option determines whether libcurl should use false start during the TLS handshake. False start is a mode where a TLS client will start sending application data before verifying the server's Finished message, thus saving a round trip when performing a full handshake. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.42.0. This option is currently only supported by the NSS and Secure Transport (on iOS 7.0 or later, or OS X 10.9 or later) TLS backends. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if false start is supported by the SSL backend, otherwise returns CURLE_NOT_BUILT_IN. <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.pdf b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.pdf
deleted file mode 100644
index bca982c54..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.pdf
+++ /dev/null
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
index 0afd2fb6a..09bcb96cf 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
@@ -30,25 +30,13 @@ CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_OPTIONS, long bitmask);
.SH DESCRIPTION
Pass a long with a bitmask to tell libcurl about specific SSL behaviors.
-\fICURLSSLOPT_ALLOW_BEAST\fP tells libcurl to not attempt to use any
-workarounds for a security flaw in the SSL3 and TLS1.0 protocols. If this
-option isn't used or this bit is set to 0, the SSL layer libcurl uses may use a
-work-around for this flaw although it might cause interoperability problems
-with some (older) SSL implementations. WARNING: avoiding this work-around
-lessens the security, and by setting this option to 1 you ask for exactly that.
-This option is only supported for DarwinSSL, NSS and OpenSSL.
-
-Added in 7.44.0:
-
-\fICURLSSLOPT_NO_REVOKE\fP tells libcurl to disable certificate revocation
-checks for those SSL backends where such behavior is present. \fBCurrently this
-option is only supported for WinSSL (the native Windows SSL library), with an
-exception in the case of Windows' Untrusted Publishers blacklist which it seems
-can't be bypassed.\fP This option may have broader support to accommodate other
-SSL backends in the future.
-http://curl.haxx.se/docs/ssl-compared.html
-
-
+\fICURLSSLOPT_ALLOW_BEAST\fP is the only supported bit and by setting this the
+user will tell libcurl to not attempt to use any workarounds for a security
+flaw in the SSL3 and TLS1.0 protocols. If this option isn't used or this bit
+is set to 0, the SSL layer libcurl uses may use a work-around for this flaw
+although it might cause interoperability problems with some (older) SSL
+implementations. WARNING: avoiding this work-around lessens the security, and
+by setting this option to 1 you ask for exactly that.
.SH DEFAULT
0
.SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.html b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.html
index 5b0a4a61a..f268c59fd 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_OPTIONS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,14 +47,10 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_OPTIONS - set SSL behavior options <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_OPTIONS, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long with a bitmask to tell libcurl about specific SSL behaviors.
-<p class="level0"><span Class="emphasis">CURLSSLOPT_ALLOW_BEAST</span> tells libcurl to not attempt to use any workarounds for a security flaw in the SSL3 and TLS1.0 protocols. If this option isn't used or this bit is set to 0, the SSL layer libcurl uses may use a work-around for this flaw although it might cause interoperability problems with some (older) SSL implementations. WARNING: avoiding this work-around lessens the security, and by setting this option to 1 you ask for exactly that. This option is only supported for DarwinSSL, NSS and OpenSSL.
-<p class="level0">Added in 7.44.0:
-<p class="level0"><span Class="emphasis">CURLSSLOPT_NO_REVOKE</span> tells libcurl to disable certificate revocation checks for those SSL backends where such behavior is present. <span class="bold">Currently this option is only supported for WinSSL (the native Windows SSL library), with an exception in the case of Windows' Untrusted Publishers blacklist which it seems can't be bypassed.</span> This option may have broader support to accommodate other SSL backends in the future. <a href="http://curl.haxx.se/docs/ssl-compared.html">http://curl.haxx.se/docs/ssl-compared.html</a>
-<p class="level0">
-<p class="level0"><a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0"><span Class="emphasis">CURLSSLOPT_ALLOW_BEAST</span> is the only supported bit and by setting this the user will tell libcurl to not attempt to use any workarounds for a security flaw in the SSL3 and TLS1.0 protocols. If this option isn't used or this bit is set to 0, the SSL layer libcurl uses may use a work-around for this flaw although it might cause interoperability problems with some (older) SSL implementations. WARNING: avoiding this work-around lessens the security, and by setting this option to 1 you ask for exactly that. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS-based protocols <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.pdf b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.pdf
index b93f18d50..c974eb5fb 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.html b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.html
index c19e26453..0f3257230 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_SESSIONID_CACHE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_SESSIONID_CACHE - enable/disable use of the SSL session-ID cache <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_SESSIONID_CACHE,
-&nbsp; long enabled);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_SESSIONID_CACHE,
+ &nbsp; long enabled);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to 0 to disable libcurl's use of SSL session-ID caching. Set this to 1 to enable it. By default all transfers are done using the cache enabled. While nothing ever should get hurt by attempting to reuse SSL session-IDs, there seem to be or have been broken SSL implementations in the wild that may require you to disable this in order for you to succeed. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">1 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.pdf b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.pdf
index 516571875..467c624fe 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
index fbf204286..ca39a09ec 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -66,17 +66,7 @@ also set to zero and cannot be overridden.
.SH PROTOCOLS
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-
- /* Set the default value: strict name check please */
- curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
If built TLS enabled.
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.html b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.html
index 7ca3c50eb..7de718d16 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_VERIFYHOST man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_VERIFYHOST - verify the certificate's name against host <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_VERIFYHOST, long verify); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter specifying what to <span Class="emphasis">verify</span>.
<p class="level0">This option determines whether libcurl verifies that the server cert is for the server it is known as.
@@ -65,19 +60,7 @@ p.roffit {
<p class="level0">This option controls checking the server's certificate's claimed identity. The server could be lying. To control lying, see <a Class="emphasis" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>. If libcurl is built against NSS and <a Class="emphasis" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a> is zero, <a Class="emphasis" href="./CURLOPT_SSL_VERIFYHOST.html">CURLOPT_SSL_VERIFYHOST</a> is also set to zero and cannot be overridden. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">2 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-&nbsp;
-&nbsp; /* Set the default value: strict name check please */
-&nbsp; curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">If built TLS enabled. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if TLS is supported, and CURLE_UNKNOWN_OPTION if not.
<p class="level0">If 1 is set as argument, <span Class="emphasis">CURLE_BAD_FUNCTION_ARGUMENT</span> is returned. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.pdf b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.pdf
index 48dad4776..3ba7cfd0f 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
index 81bb59397..f2bad7464 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -62,17 +62,7 @@ By default, curl assumes a value of 1.
.SH PROTOCOLS
All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-
- /* Set the default value: strict certificate check please */
- curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
If built TLS enabled.
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.html b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.html
index b978b55c9..7b9a56c05 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.html
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_SSL_VERIFYPEER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_SSL_VERIFYPEER - verify the peer's SSL certificate <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_VERIFYPEER, long verify); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter to enable or disable.
<p class="level0">This option determines whether curl verifies the authenticity of the peer's certificate. A value of 1 means curl verifies; 0 (zero) means it doesn't.
@@ -62,19 +57,7 @@ p.roffit {
<p class="level0">WARNING: disabling verification of the certificate allows bad guys to man-in-the-middle the communication without you knowing it. Disabling verification makes the communication insecure. Just having encryption on a transfer is not enough as you cannot be sure that you are communicating with the correct end-point. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">By default, curl assumes a value of 1. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-&nbsp;
-&nbsp; /* Set the default value: strict certificate check please */
-&nbsp; curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">If built TLS enabled. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_SSL_VERIFYHOST.html">CURLOPT_SSL_VERIFYHOST</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.pdf b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.pdf
index c5adbd26a..2bba56302 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.pdf
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
deleted file mode 100644
index d7f011a48..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
+++ /dev/null
@@ -1,53 +0,0 @@
-.\" **************************************************************************
-.\" * _ _ ____ _
-.\" * Project ___| | | | _ \| |
-.\" * / __| | | | |_) | |
-.\" * | (__| |_| | _ <| |___
-.\" * \___|\___/|_| \_\_____|
-.\" *
-.\" * Copyright (C) 1998 - 2015, 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 http://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.
-.\" *
-.\" **************************************************************************
-.\"
-.TH CURLOPT_SSL_VERIFYSTATUS 3 "04 Dec 2014" "libcurl 7.40.0" "curl_easy_setopt options"
-.SH NAME
-CURLOPT_SSL_VERIFYSTATUS \- verify the certificate's status
-.SH SYNOPSIS
-#include <curl/curl.h>
-
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_VERIFYSTATUS, long verify);
-.SH DESCRIPTION
-Pass a long as parameter set to 1 to enable or 0 to disable.
-
-This option determines whether libcurl verifies the status of the server cert
-using the "Certificate Status Request" TLS extension (aka. OCSP stapling).
-
-Note that if this option is enabled but the server does not support the TLS
-extension, the verification will fail.
-.SH DEFAULT
-0
-.SH PROTOCOLS
-All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc.
-.SH EXAMPLE
-TODO
-.SH AVAILABILITY
-Added in 7.41.0. This option is currently only supported by the OpenSSL, GnuTLS
-and NSS TLS backends.
-.SH RETURN VALUE
-Returns CURLE_OK if OCSP stapling is supported by the SSL backend, otherwise
-returns CURLE_NOT_BUILT_IN.
-.SH "SEE ALSO"
-.BR CURLOPT_SSL_VERIFYHOST "(3), "
-.BR CURLOPT_SSL_VERIFYPEER "(3), "
-.BR CURLOPT_CAINFO "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.html b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.html
deleted file mode 100644
index eb3ed2afb..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
- "http://www.w3.org/TR/html4/loose.dtd">
-<html><head>
-<title>CURLOPT_SSL_VERIFYSTATUS man page</title>
-<meta name="generator" content="roffit">
-<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
- padding-left: 2em;
-}
-
-P.level1, pre.level1 {
- padding-left: 4em;
-}
-
-P.level2, pre.level2 {
- padding-left: 6em;
-}
-
-span.emphasis {
- font-style: italic;
-}
-
-span.bold {
- font-weight: bold;
-}
-
-span.manpage {
- font-weight: bold;
-}
-
-h2.nroffsh {
- background-color: #e0e0e0;
-}
-
-span.nroffip {
- font-weight: bold;
- font-size: 120%;
- font-family: monospace;
-}
-
-p.roffit {
- text-align: center;
- font-size: 80%;
-}
-</STYLE>
-</head><body>
-
-<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
-<p class="level0">CURLOPT_SSL_VERIFYSTATUS - verify the certificate's status <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
-<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_VERIFYSTATUS, long verify); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
-<p class="level0">Pass a long as parameter set to 1 to enable or 0 to disable.
-<p class="level0">This option determines whether libcurl verifies the status of the server cert using the "Certificate Status Request" TLS extension (aka. OCSP stapling).
-<p class="level0">Note that if this option is enabled but the server does not support the TLS extension, the verification will fail. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
-<p class="level0">All TLS based protocols: HTTPS, FTPS, IMAPS, POP3, SMTPS etc. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Added in 7.41.0. This option is currently only supported by the OpenSSL, GnuTLS and NSS TLS backends. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
-<p class="level0">Returns CURLE_OK if OCSP stapling is supported by the SSL backend, otherwise returns CURLE_NOT_BUILT_IN. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
-<p class="level0"><a Class="manpage" href="./CURLOPT_SSL_VERIFYHOST.html">CURLOPT_SSL_VERIFYHOST</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_SSL_VERIFYPEER.html">CURLOPT_SSL_VERIFYPEER</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_CAINFO.html">CURLOPT_CAINFO</a>, <span Class="manpage"> </span> <p class="roffit">
- This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
-</body></html>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.pdf b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.pdf
deleted file mode 100644
index 9e026209b..000000000
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.pdf
+++ /dev/null
@@ -1,111 +0,0 @@
-%PDF-1.4
-%Çì¢
-5 0 obj
-<</Length 6 0 R/Filter /FlateDecode>>
-stream
-xœ­Vën£Fþï§8ÚþX¼2†áÚV•œ„tÝ:Æ5$j”T±' »À›æöUúŽ=sÁÄIV«J•%0Ì̹|ç;ßá,BÁ?}_Ý>Ü6 n*AßV÷p˜â†@¼Hoê ß?d$!½Gg‹i<O—I2]žG‹ÉÉE’ÓO“J!] ( ‰çàÉt=0ÆrÍ’ïmbÓ0T ¶K<ÒÇÁ¥q–\ìj«m],yÖ<-ÞV›vhÚNHÂøWeoºþ+ý­÷m‡!q‚ïøî<ʨ-± ¶,BÌ›„®HÝtF\LæɳqoÊ%nÈ´¥ÓH¼ï!³-âX>˜Ô–ËÿVV‡ü_†èß²|fð:¿y‚öŽÃŠ×mþu•µü½DÃ&®´ayÄí°hšÞ6¦XT/´Y»mTÏó·‡`ÝMê‘@îK.fñ<™$ûù"<]®?äåªØ®9ü,
-y .äî±Ýv *0VnxYè+¹î²r]ðÑÛe~߃Æ,‡XÞw@x ¨Ê[™CÂÀufWß$Lû 3OÏ>Ž’£ÅdžNâ™&
-uOÞH~ží¢Iàî@‡L…5°Éêìž·¼ÌÚ
- /¼Ì® UGðq7â™HÒ’)Ð[(aø yÞå ¨–€µ0xŸ—¼Ç;Žd¨¡È¯Àš)ÔñDÖ_qƒ J#Ë ÕzâõŘÀ%¾¦¡ðäOxNR ¶MŽ)ˆïŽvTƒdÇS×`hº.øÖ7í;¬}|GÛ¿[^6"ô+#ûœˆ’¹kS “«!‘ñX$ RÒ—ƬBoí]ÖB.Âî“Ç
-¾5\©
-Û7¶mŸšôi‹²ÃºBʪ…f»ÙTµÚ¤"rÇéÚ 3•CìHn×P"Š ˆ ó¢P$Dëoj[5nzjøÄó0HÍŽ¼ ¯ûeGìÙãá‰æŸ‹Ê&47S§ëßñ™DWË“í1_¯Nûîèy+"õ}Ÿí*fX¯‘äîb˜/t“!`?Ùž¯1mb¹¡dLœB¼sh3â[^§”Gñô…v`Ì!±Ïc\².×YƒuÝÔU[­ª¢ù>¦é;úD^'§cq›Çs6‚äßoWo๗Fôçøt>ºv¾ÙÎiŸe¢ïUDZÆÚ ‚7FF(v’¨>ŸC?>°zžK;L¦ãÃÉt’^ìCƒEdNìA
-àñz¨ä%øÄAûÒý~ÀίyÙOP•xÑd ¢FE¼á%Êê~-·eT\˜%‰F|õÙq§¨×¼\7u÷Û€v¥g‹œ)Cõ¨1žžEZb_ƒ‹ƒ_M~Tˆv[ë±-ãßEïÉÈèU
-¾ UDÊrO8a—)Ý*×#¨„>æ ‡Z¹‘¥Ót(—†r=‹‡Ž¥ä)]¥’xq6™CÜOqr¤ËÉŒ¼56^Âa$Qãi÷\|A®×ãíc¬> žÀ±I7ºå·Êhߺô<«cÑk‹ó(Z¼´H‰÷ßM'³“xß~ 2¶û€èmáG“OP:Mf£/p7¯ˆðÐD,ÇÀÆ8æ+°q<ILLPa(Jàï_Gc»|endstream
-endobj
-6 0 obj
-1230
-endobj
-4 0 obj
-<</Type/Page/MediaBox [0 0 595 842]
-/Rotate 0/Parent 3 0 R
-/Resources<</ProcSet[/PDF /Text]
-/ExtGState 10 0 R
-/Font 11 0 R
->>
-/Contents 5 0 R
->>
-endobj
-3 0 obj
-<< /Type /Pages /Kids [
-4 0 R
-] /Count 1
->>
-endobj
-1 0 obj
-<</Type /Catalog /Pages 3 0 R
-/Metadata 13 0 R
->>
-endobj
-7 0 obj
-<</Type/ExtGState
-/OPM 1>>endobj
-10 0 obj
-<</R7
-7 0 R>>
-endobj
-11 0 obj
-<</R9
-9 0 R/R8
-8 0 R>>
-endobj
-9 0 obj
-<</BaseFont/Times-Bold/Type/Font
-/Subtype/Type1>>
-endobj
-8 0 obj
-<</BaseFont/Times-Roman/Type/Font
-/Encoding 12 0 R/Subtype/Type1>>
-endobj
-12 0 obj
-<</Type/Encoding/Differences[
-140/fi
-173/minus]>>
-endobj
-13 0 obj
-<</Type/Metadata
-/Subtype/XML/Length 1346>>stream
-<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?>
-<?adobe-xap-filters esc="CRLF"?>
-<x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 2.9.1-13, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-<rdf:Description rdf:about='uuid:86430c7e-78d5-11f0-0000-75a6345ca275' xmlns:pdf='http://ns.adobe.com/pdf/1.3/' pdf:Producer='GPL Ghostscript 9.16'/>
-<rdf:Description rdf:about='uuid:86430c7e-78d5-11f0-0000-75a6345ca275' xmlns:xmp='http://ns.adobe.com/xap/1.0/'><xmp:ModifyDate>2015-08-12T08:11:31+02:00</xmp:ModifyDate>
-<xmp:CreateDate>2015-08-12T08:11:31+02:00</xmp:CreateDate>
-<xmp:CreatorTool>groff version 1.22.3</xmp:CreatorTool></rdf:Description>
-<rdf:Description rdf:about='uuid:86430c7e-78d5-11f0-0000-75a6345ca275' xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/' xapMM:DocumentID='uuid:86430c7e-78d5-11f0-0000-75a6345ca275'/>
-<rdf:Description rdf:about='uuid:86430c7e-78d5-11f0-0000-75a6345ca275' xmlns:dc='http://purl.org/dc/elements/1.1/' dc:format='application/pdf'><dc:title><rdf:Alt><rdf:li xml:lang='x-default'>Untitled</rdf:li></rdf:Alt></dc:title></rdf:Description>
-</rdf:RDF>
-</x:xmpmeta>
-
-
-<?xpacket end='w'?>
-endstream
-endobj
-2 0 obj
-<</Producer(GPL Ghostscript 9.16)
-/CreationDate(D:20150812081131+02'00')
-/ModDate(D:20150812081131+02'00')
-/Creator(groff version 1.22.3)>>endobj
-xref
-0 14
-0000000000 65535 f
-0000001554 00000 n
-0000003365 00000 n
-0000001495 00000 n
-0000001335 00000 n
-0000000015 00000 n
-0000001315 00000 n
-0000001619 00000 n
-0000001794 00000 n
-0000001729 00000 n
-0000001660 00000 n
-0000001690 00000 n
-0000001876 00000 n
-0000001942 00000 n
-trailer
-<< /Size 14 /Root 1 0 R /Info 2 0 R
-/ID [<C60007D8815D1C73E5022698D69DF45E><C60007D8815D1C73E5022698D69DF45E>]
->>
-startxref
-3519
-%%EOF
diff --git a/docs/libcurl/opts/CURLOPT_STDERR.3 b/docs/libcurl/opts/CURLOPT_STDERR.3
index 8ef1a32a6..67e95017b 100644
--- a/docs/libcurl/opts/CURLOPT_STDERR.3
+++ b/docs/libcurl/opts/CURLOPT_STDERR.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -36,16 +36,7 @@ stderr
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-FILE *filep = fopen("dump", "wb");
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
- curl_easy_setopt(curl, CURLOPT_STDERR, filep);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_STDERR.html b/docs/libcurl/opts/CURLOPT_STDERR.html
index 52fcb4d9a..50fcd9373 100644
--- a/docs/libcurl/opts/CURLOPT_STDERR.html
+++ b/docs/libcurl/opts/CURLOPT_STDERR.html
@@ -4,20 +4,15 @@
<title>CURLOPT_STDERR man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,23 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_STDERR - redirect stderr to another stream <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_STDERR, FILE *stream); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a FILE * as parameter. Tell libcurl to use this <span Class="emphasis">stream</span> instead of stderr when showing the progress meter and displaying <a Class="emphasis" href="./CURLOPT_VERBOSE.html">CURLOPT_VERBOSE</a> data. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">stderr <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-FILE *filep = fopen("dump", "wb");
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp; curl_easy_setopt(curl, CURLOPT_STDERR, filep);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_VERBOSE.html">CURLOPT_VERBOSE</a>, <a Class="manpage" href="./CURLOPT_NOPROGRESS.html">CURLOPT_NOPROGRESS</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_STDERR.pdf b/docs/libcurl/opts/CURLOPT_STDERR.pdf
index 7d01fcb32..18a1a52ae 100644
--- a/docs/libcurl/opts/CURLOPT_STDERR.pdf
+++ b/docs/libcurl/opts/CURLOPT_STDERR.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
index 941cc4882..daf3df4a2 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -38,23 +38,7 @@ disable keepalive probes
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* enable TCP keep-alive for this transfer */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-
- /* keep-alive idle time to 120 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-
- /* interval time between keep-alive probes: 60 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Added in 7.25.0
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.html b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.html
index 0d0887837..765594e12 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.html
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TCP_KEEPALIVE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,30 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TCP_KEEPALIVE - enable TCP keep-alive probing <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TCP_KEEPALIVE, long probe); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. If set to 1, TCP keepalive probes will be sent. The delay and frequency of these probes can be controlled by the <a Class="emphasis" href="./CURLOPT_TCP_KEEPIDLE.html">CURLOPT_TCP_KEEPIDLE</a> and <a Class="emphasis" href="./CURLOPT_TCP_KEEPINTVL.html">CURLOPT_TCP_KEEPINTVL</a> options, provided the operating system supports them. Set to 0 (default behavior) to disable keepalive probes <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* enable TCP keep-alive for this transfer */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-&nbsp;
-&nbsp; /* keep-alive idle time to 120 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-&nbsp;
-&nbsp; /* interval time between keep-alive probes: 60 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.25.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TCP_KEEPIDLE.html">CURLOPT_TCP_KEEPIDLE</a>, <a Class="manpage" href="./CURLOPT_TCP_KEEPINTVL.html">CURLOPT_TCP_KEEPINTVL</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.pdf b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.pdf
index 2e55c29f3..3f60961a9 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.pdf
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
index d60a3dffb..1724824f2 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -36,23 +36,7 @@ operating systems support this option.
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* enable TCP keep-alive for this transfer */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-
- /* set keep-alive idle time to 120 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-
- /* interval time between keep-alive probes: 60 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Added in 7.25.0
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.html b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.html
index d0018825e..a575947f7 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.html
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TCP_KEEPIDLE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,30 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TCP_KEEPIDLE - set TCP keep-alive idle time wait <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TCP_KEEPIDLE, long delay); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. Sets the <span Class="emphasis">delay</span>, in seconds, that the operating system will wait while the connection is idle before sending keepalive probes. Not all operating systems support this option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">? <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* enable TCP keep-alive for this transfer */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-&nbsp;
-&nbsp; /* set keep-alive idle time to 120 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-&nbsp;
-&nbsp; /* interval time between keep-alive probes: 60 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.25.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TCP_KEEPALIVE.html">CURLOPT_TCP_KEEPALIVE</a>, <a Class="manpage" href="./CURLOPT_TCP_KEEPINTVL.html">CURLOPT_TCP_KEEPINTVL</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.pdf b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.pdf
index 20ee61a7c..cdcc1793f 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.pdf
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
index 42bc0b4ed..e4bcf7ff4 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -34,23 +34,7 @@ option. (Added in 7.25.0)
.SH DEFAULT
.SH PROTOCOLS
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* enable TCP keep-alive for this transfer */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-
- /* keep-alive idle time to 120 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-
- /* interval time between keep-alive probes: 60 seconds */
- curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.html b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.html
index 712bc38a9..b7579fb2e 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.html
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TCP_KEEPINTVL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,30 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TCP_KEEPINTVL - set TCP keep-alive interval <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TCP_KEEPINTVL, long interval); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long. Sets the interval, in seconds, that the operating system will wait between sending keepalive probes. Not all operating systems support this option. (Added in 7.25.0) <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0"><a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0"><a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* enable TCP keep-alive for this transfer */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
-&nbsp;
-&nbsp; /* keep-alive idle time to 120 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPIDLE, 120L);
-&nbsp;
-&nbsp; /* interval time between keep-alive probes: 60 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TCP_KEEPINTVL, 60L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TCP_KEEPALIVE.html">CURLOPT_TCP_KEEPALIVE</a>, <a Class="manpage" href="./CURLOPT_TCP_KEEPIDLE.html">CURLOPT_TCP_KEEPIDLE</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.pdf b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.pdf
index e2370c429..7982babe0 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.pdf
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.html b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.html
index 421b5c6f7..7f2ba4988 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.html
+++ b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TCP_NODELAY man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TCP_NODELAY - set the TCP_NODELAY option <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TCP_NODELAY, long nodelay); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long specifying whether the TCP_NODELAY option is to be set or cleared (1 = set, 0 = clear). The option is cleared by default. This will have no effect after the connection has been established.
<p class="level0">Setting this option will disable TCP's Nagle algorithm. The purpose of this algorithm is to try to minimize the number of small packets on the network (where "small packets" means TCP segments less than the Maximum Segment Size (MSS) for the network).
diff --git a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.pdf b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.pdf
index 9be0e8105..7277e8e5e 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.pdf
+++ b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.html b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.html
index 5dbd6e186..ac5007649 100644
--- a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.html
+++ b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TELNETOPTIONS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TELNETOPTIONS - custom telnet options <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TELNETOPTIONS, &nbsp; struct curl_slist *cmds); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Provide a pointer to a curl_slist with variables to pass to the telnet negotiations. The variables should be in the format &lt;option=value&gt;. libcurl supports the options 'TTYPE', 'XDISPLOC' and 'NEW_ENV'. See the TELNET standard for details. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.pdf b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.pdf
index 14a5259c0..ade0176ad 100644
--- a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.pdf
+++ b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.html b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.html
index a85374071..080d61274 100644
--- a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.html
+++ b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TFTP_BLKSIZE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TFTP_BLKSIZE - TFTP block size <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TFTP_BLKSIZE, long blocksize); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Specify <span Class="emphasis">blocksize</span> to use for TFTP data transmission. Valid range as per <a href="http://www.ietf.org/rfc/rfc2348.txt">RFC 2348</a> is 8-65464 bytes. The default of 512 bytes will be used if this option is not specified. The specified block size will only be used pending support by the remote server. If the server does not return an option acknowledgement or returns an option acknowledgement with no blksize, the default of 512 bytes will be used. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">512 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.pdf b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.pdf
index 95591f919..ef1d0fd72 100644
--- a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.pdf
+++ b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TIMECONDITION.html b/docs/libcurl/opts/CURLOPT_TIMECONDITION.html
index a6ee991c6..dedeed008 100644
--- a/docs/libcurl/opts/CURLOPT_TIMECONDITION.html
+++ b/docs/libcurl/opts/CURLOPT_TIMECONDITION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TIMECONDITION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TIMECONDITION - select condition for a time request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TIMECONDITION, long cond); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter. This defines how the <a Class="emphasis" href="./CURLOPT_TIMEVALUE.html">CURLOPT_TIMEVALUE</a> time value is treated. You can set this parameter to <span Class="emphasis">CURL_TIMECOND_IFMODSINCE</span> or <span Class="emphasis">CURL_TIMECOND_IFUNMODSINCE</span>.
<p class="level0">The last modification time of a file is not always known and in such instances this feature will have no effect even if the given time condition would not have been met. <span Class="emphasis">curl_easy_getinfo(3)</span> with the <span Class="emphasis">CURLINFO_CONDITION_UNMET</span> option can be used after a transfer to learn if a zero-byte successful "transfer" was due to this condition not matching. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TIMECONDITION.pdf b/docs/libcurl/opts/CURLOPT_TIMECONDITION.pdf
index 16b32aea7..7c4f1b653 100644
--- a/docs/libcurl/opts/CURLOPT_TIMECONDITION.pdf
+++ b/docs/libcurl/opts/CURLOPT_TIMECONDITION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_TIMEOUT.3
index 6440ffea2..41e05690c 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -50,17 +50,7 @@ Default timeout is 0 (zero) which means it never times out during transfer.
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* complete within 20 seconds */
- curl_easy_setopt(curl, CURLOPT_TIMEOUT, 20L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT.html b/docs/libcurl/opts/CURLOPT_TIMEOUT.html
index a8bcfa667..1b1b78426 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT.html
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TIMEOUT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TIMEOUT - set maximum time the request is allowed to take <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TIMEOUT, long timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter containing <span Class="emphasis">timeout</span> - the maximum time in seconds that you allow the libcurl transfer operation to take. Normally, name lookups can take a considerable time and limiting operations to less than a few minutes risk aborting perfectly normal operations. This option may cause libcurl to use the SIGALRM signal to timeout system calls.
<p class="level0">In unix-like systems, this might cause signals to be used unless <a Class="emphasis" href="./CURLOPT_NOSIGNAL.html">CURLOPT_NOSIGNAL</a> is set.
@@ -60,19 +55,7 @@ p.roffit {
<p class="level0">Since this puts a hard limit for how long time a request is allowed to take, it has limited use in dynamic use cases with varying transfer times. You are then advised to explore <a Class="emphasis" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <a Class="emphasis" href="./CURLOPT_LOW_SPEED_TIME.html">CURLOPT_LOW_SPEED_TIME</a> or using <a Class="emphasis" href="./CURLOPT_PROGRESSFUNCTION.html">CURLOPT_PROGRESSFUNCTION</a> to implement your own timeout logic. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Default timeout is 0 (zero) which means it never times out during transfer. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* complete within 20 seconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TIMEOUT, 20L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TIMEOUT_MS.html">CURLOPT_TIMEOUT_MS</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_CONNECTTIMEOUT.html">CURLOPT_CONNECTTIMEOUT</a>, <a Class="manpage" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT.pdf b/docs/libcurl/opts/CURLOPT_TIMEOUT.pdf
index 3ebfb10d2..958c7621e 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT.pdf
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
index 3727133b3..fe9a3cd37 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -54,17 +54,7 @@ Default timeout is 0 (zero) which means it never times out during transfer.
.SH PROTOCOLS
All
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- /* complete within 20000 milliseconds */
- curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 20000L);
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
Always
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.html b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.html
index 0063aa4bf..383bff383 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.html
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TIMEOUT_MS man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TIMEOUT_MS - set maximum time the request is allowed to take <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TIMEOUT_MS, long timeout); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter containing <span Class="emphasis">timeout</span> - the maximum time in milliseconds that you allow the libcurl transfer operation to take. Normally, name lookups can take a considerable time and limiting operations to less than a few minutes risk aborting perfectly normal operations. This option may cause libcurl to use the SIGALRM signal to timeout system calls.
<p class="level0">If libcurl is built to use the standard system name resolver, that portion of the transfer will still use full-second resolution for timeouts with a minimum timeout allowed of one second.
@@ -61,19 +56,7 @@ p.roffit {
<p class="level0">Since this puts a hard limit for how long time a request is allowed to take, it has limited use in dynamic use cases with varying transfer times. You are then advised to explore <a Class="emphasis" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <a Class="emphasis" href="./CURLOPT_LOW_SPEED_TIME.html">CURLOPT_LOW_SPEED_TIME</a> or using <a Class="emphasis" href="./CURLOPT_PROGRESSFUNCTION.html">CURLOPT_PROGRESSFUNCTION</a> to implement your own timeout logic. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">Default timeout is 0 (zero) which means it never times out during transfer. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* complete within 20000 milliseconds */
-&nbsp; curl_easy_setopt(curl, CURLOPT_TIMEOUT_MS, 20000L);
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_TIMEOUT.html">CURLOPT_TIMEOUT</a>, <span Class="manpage"> </span> <a Class="manpage" href="./CURLOPT_CONNECTTIMEOUT.html">CURLOPT_CONNECTTIMEOUT</a>, <a Class="manpage" href="./CURLOPT_LOW_SPEED_LIMIT.html">CURLOPT_LOW_SPEED_LIMIT</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.pdf b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.pdf
index 6897c0882..f5ced77f4 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.pdf
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE.html b/docs/libcurl/opts/CURLOPT_TIMEVALUE.html
index f2f5dad4d..14df2f14b 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE.html
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TIMEVALUE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TIMEVALUE - set time value for conditional <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TIMEVALUE, long val); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long <span Class="emphasis">val</span> as parameter. This should be the time counted as seconds since 1 Jan 1970, and the time will be used in a condition as specified with <a Class="emphasis" href="./CURLOPT_TIMECONDITION.html">CURLOPT_TIMECONDITION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE.pdf b/docs/libcurl/opts/CURLOPT_TIMEVALUE.pdf
index 416318b60..9265a93dd 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE.pdf
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.html b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.html
index 76c5650b5..3af10cbc6 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.html
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TLSAUTH_PASSWORD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TLSAUTH_PASSWORD - password to use for TLS authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TLSAUTH_PASSWORD, char *pwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should point to the zero terminated password to use for the TLS authentication method specified with the <a Class="emphasis" href="./CURLOPT_TLSAUTH_TYPE.html">CURLOPT_TLSAUTH_TYPE</a> option. Requires that the <a Class="emphasis" href="./CURLOPT_TLSAUTH_USERNAME.html">CURLOPT_TLSAUTH_USERNAME</a> option also be set. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.pdf b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.pdf
index 753542a13..631361aa4 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.pdf
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.html b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.html
index 02c9a9683..7a969795a 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.html
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TLSAUTH_TYPE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TLSAUTH_TYPE - set TLS authentication methods <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TLSAUTH_TYPE, long bitmask); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long as parameter, which is set to a bitmask, to tell libcurl which authentication method(s) you want it to use for TLS authentication.
<p class="level0">
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.pdf b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.pdf
index 3c794dc49..e8549b0a2 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.pdf
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.html b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.html
index 7ebb829cb..2d8fcf6a0 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.html
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TLSAUTH_USERNAME man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TLSAUTH_USERNAME - user name to use for TLS authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TLSAUTH_USERNAME, char *user); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should point to the zero terminated username to use for the TLS authentication method specified with the <a Class="emphasis" href="./CURLOPT_TLSAUTH_TYPE.html">CURLOPT_TLSAUTH_TYPE</a> option. Requires that the <a Class="emphasis" href="./CURLOPT_TLSAUTH_PASSWORD.html">CURLOPT_TLSAUTH_PASSWORD</a> option also be set. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.pdf b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.pdf
index 35301a96e..c4be60cb0 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.pdf
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.html b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.html
index 443edee6e..7a9518788 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.html
+++ b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TRANSFERTEXT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TRANSFERTEXT - request a text based transfer for FTP <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TRANSFERTEXT, long text); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A parameter set to 1 tells the library to use ASCII mode for FTP transfers, instead of the default binary transfer. For win32 systems it does not set the stdout to binary mode. This option can be usable when transferring text data between systems with different views on certain characters, such as newlines or similar.
<p class="level0">libcurl does not do a complete ASCII conversion when doing ASCII transfers over FTP. This is a known limitation/flaw that nobody has rectified. libcurl simply sets the mode to ASCII and performs a standard transfer. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.pdf b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.pdf
index 357118575..a7fceec9f 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.pdf
+++ b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.html b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.html
index 0b2790411..5cb1e39f7 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.html
+++ b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.html
@@ -4,20 +4,15 @@
<title>CURLOPT_TRANSFER_ENCODING man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_TRANSFER_ENCODING - ask for HTTP Transfer Encoding <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TRANSFER_ENCODING, long enable); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long set to 1 to <span Class="emphasis">enable</span> or 0 to disable.
<p class="level0">Adds a request for compressed Transfer Encoding in the outgoing HTTP request. If the server supports this and so desires, it can respond with the HTTP response sent using a compressed Transfer-Encoding that will be automatically uncompressed by libcurl on reception.
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.pdf b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.pdf
index 4a01a70a6..f135e559e 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.pdf
+++ b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.html b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.html
index 1b5044933..17fcef6ee 100644
--- a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.html
+++ b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_UNIX_SOCKET_PATH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_UNIX_SOCKET_PATH - set Unix domain socket <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UNIX_SOCKET_PATH, char *path); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Enables the use of Unix domain sockets as connection endpoint and sets the path to <span Class="emphasis">path</span>. If <span Class="emphasis">path</span> is NULL, then Unix domain sockets are disabled. An empty string will result in an error at some point, it will not disable use of Unix domain sockets.
<p class="level0">When enabled, cURL will connect to the Unix domain socket instead of establishing a TCP connection to a host. Since no TCP connection is created, cURL does not need to resolve the DNS hostname in the URL.
@@ -61,20 +56,20 @@ p.roffit {
<p class="level0">Default is NULL, meaning that no Unix domain sockets are used. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All protocols except for file:// and FTP are supported in theory. HTTP, IMAP, POP3 and SMTP should in particular work (including their SSL/TLS variants). <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
<p class="level0">Given that you have an nginx server running, listening on /tmp/nginx.sock, you can request a HTTP resource with:
-<p class="level0"><pre class="level0">
-&nbsp; curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, "/tmp/nginx.sock");
-&nbsp; curl_easy_setopt(curl_handle, CURLOPT_URL, "<a href="http://localhost/">http://localhost/</a>");
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, "/tmp/nginx.sock");
+ &nbsp; curl_easy_setopt(curl_handle, CURLOPT_URL, "<a href="http://localhost/">http://localhost/</a>");
+ </pre>
<p class="level0">
<p class="level0">If you are on Linux and somehow have a need for paths larger than 107 bytes, you could use the proc filesystem to bypass the limitation:
-<p class="level0"><pre class="level0">
-&nbsp; int dirfd = open(long_directory_path_to_socket, O_DIRECTORY | O_RDONLY);
-&nbsp; char path[108];
-&nbsp; snprintf(path, sizeof(path), "/proc/self/fd/%d/nginx.sock", dirfd);
-&nbsp; curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, path);
-&nbsp; /* Be sure to keep dirfd valid until you discard the handle */
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; int dirfd = open(long_directory_path_to_socket, O_DIRECTORY | O_RDONLY);
+ &nbsp; char path[108];
+ &nbsp; snprintf(path, sizeof(path), "/proc/self/fd/%d/nginx.sock", dirfd);
+ &nbsp; curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, path);
+ &nbsp; /* Be sure to keep dirfd valid until you discard the handle */
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Since 7.40.0. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.pdf b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.pdf
index 1bd7f8fd6..200b6232f 100644
--- a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.pdf
+++ b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.html b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.html
index 1e04eb009..9d16b0f33 100644
--- a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.html
+++ b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_UNRESTRICTED_AUTH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_UNRESTRICTED_AUTH - send credentials to other hosts too <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UNRESTRICTED_AUTH,
-&nbsp; long goahead);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UNRESTRICTED_AUTH,
+ &nbsp; long goahead);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A long parameter set to 1 tells libcurl it can continue to send authentication (user+password) credentials when following locations, even when hostname changed. This option is meaningful only when setting <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0 <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
diff --git a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.pdf b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.pdf
index d7493b4ce..56e223b7b 100644
--- a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.pdf
+++ b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD.html b/docs/libcurl/opts/CURLOPT_UPLOAD.html
index afbf48a25..f0c399f46 100644
--- a/docs/libcurl/opts/CURLOPT_UPLOAD.html
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_UPLOAD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,35 +47,30 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_UPLOAD - enable data upload <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_UPLOAD, long upload); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">The long parameter <span Class="emphasis">upload</span> set to 1 tells the library to prepare for and perform an upload. The <a Class="emphasis" href="./CURLOPT_READDATA.html">CURLOPT_READDATA</a> and <a Class="emphasis" href="./CURLOPT_INFILESIZE.html">CURLOPT_INFILESIZE</a> or <a Class="emphasis" href="./CURLOPT_INFILESIZE_LARGE.html">CURLOPT_INFILESIZE_LARGE</a> options are also interesting for uploads. If the protocol is HTTP, uploading means using the PUT request unless you tell libcurl otherwise.
<p class="level0">Using PUT with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a> as usual.
<p class="level0">If you use PUT to a HTTP 1.1 server, you can upload data without knowing the size before starting the transfer if you use chunked encoding. You enable this by adding a header like "Transfer-Encoding: chunked" with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>. With HTTP 1.0 or without chunked transfer, you must specify the size. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, default is download <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Most <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; /* we want to use our own read function */
-&nbsp; curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
-&nbsp;
-&nbsp; /* enable uploading */
-&nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
-&nbsp;
-&nbsp; /* specify target */
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/dir/to/newfile">ftp://example.com/dir/to/newfile</a>");
-&nbsp;
-&nbsp; /* now specify which pointer to pass to our callback */
-&nbsp; curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
-&nbsp;
-&nbsp; /* Set the size of the file to upload */
-&nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)fsize);
-&nbsp;
-&nbsp; /* Now run off and do what you've been told! */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; /* we want to use our own read function */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+ <p class="level0">&nbsp; /* enable uploading */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
+ <p class="level0">&nbsp; /* specify target */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/dir/to/newfile">ftp://example.com/dir/to/newfile</a>");
+ <p class="level0">&nbsp; /* now specify which pointer to pass to our callback */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
+ <p class="level0">&nbsp; /* Set the size of the file to upload */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)fsize);
+ <p class="level0">&nbsp; /* Now run off and do what you've been told! */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD.pdf b/docs/libcurl/opts/CURLOPT_UPLOAD.pdf
index f9897196b..4b3a45f73 100644
--- a/docs/libcurl/opts/CURLOPT_UPLOAD.pdf
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_URL.3 b/docs/libcurl/opts/CURLOPT_URL.3
index 6e4824a9f..bf192282c 100644
--- a/docs/libcurl/opts/CURLOPT_URL.3
+++ b/docs/libcurl/opts/CURLOPT_URL.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -284,29 +284,6 @@ escape it by providing it as backslash and its ASCII value in hexadecimal:
.SH DEFAULT
There is no default URL. If this option isn't set, no transfer can be
performed.
-.SH SECURITY CONCERNS
-Applications may at times find it convenient to allow users to specify URLs
-for various purposes and that string would then end up fed to this option.
-
-Getting a URL from an external untrusted party will bring reasons for several
-security concerns:
-
-If you have an application that runs as or in a server application, getting an
-unfiltered URL can easily trick your application to access a local resource
-instead of a remote. Protecting yourself against localhost accesses is very
-hard when accepting user provided URLs.
-
-Such custom URLs can also access other ports than you planned as port numbers
-are part of the regular URL format. The combination of a local host and a
-custom port number can allow external users to play tricks with your local
-services.
-
-Accepting external URLs may also use other protocols than http:// or other
-common ones. Restrict what accept with \fICURLOPT_PROTOCOLS(3)\fP.
-
-User provided URLs can also be made to point to sites that redirect further on
-(possibly to other protocols too). Consider your
-\fICURLOPT_FOLLOWLOCATION(3)\fP and \fICURLOPT_REDIR_PROTOCOLS(3)\fP settings.
.SH PROTOCOLS
All
.SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLOPT_URL.html b/docs/libcurl/opts/CURLOPT_URL.html
index 3bb2e1901..0f7558241 100644
--- a/docs/libcurl/opts/CURLOPT_URL.html
+++ b/docs/libcurl/opts/CURLOPT_URL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_URL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_URL - provide the URL to use in the request <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_URL, char *URL); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass in a pointer to the <span Class="emphasis">URL</span> to work with. The parameter should be a char * to a zero terminated string which must be URL-encoded in the following format:
<p class="level0">scheme://host:port/path
@@ -140,23 +135,16 @@ p.roffit {
<p class="level1">For more information about the individual components of a LDAP URL please see <a href="http://www.ietf.org/rfc/rfc4516.txt">RFC 4516</a>.
<p class="level0"><a name="RTMP"></a><span class="nroffip">RTMP</span>
<p class="level1">There's no official URL spec for RTMP so libcurl uses the URL syntax supported by the underlying librtmp library. It has a syntax where it wants a traditional URL, followed by a space and a series of space-separated name=value pairs.
-<p class="level1">While space is not typically a "legal" letter, libcurl accepts them. When a user wants to pass in a '&#35;' (hash) character it will be treated as a fragment and get cut off by libcurl if provided literally. You will instead have to escape it by providing it as backslash and its ASCII value in hexadecimal: "\23". <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
-<p class="level0">There is no default URL. If this option isn't set, no transfer can be performed. <a name="SECURITY"></a><h2 class="nroffsh">SECURITY CONCERNS</h2>
-<p class="level0">Applications may at times find it convenient to allow users to specify URLs for various purposes and that string would then end up fed to this option.
-<p class="level0">Getting a URL from an external untrusted party will bring reasons for several security concerns:
-<p class="level0">If you have an application that runs as or in a server application, getting an unfiltered URL can easily trick your application to access a local resource instead of a remote. Protecting yourself against localhost accesses is very hard when accepting user provided URLs.
-<p class="level0">Such custom URLs can also access other ports than you planned as port numbers are part of the regular URL format. The combination of a local host and a custom port number can allow external users to play tricks with your local services.
-<p class="level0">Accepting external URLs may also use other protocols than http:// or other common ones. Restrict what accept with <a Class="emphasis" href="./CURLOPT_PROTOCOLS.html">CURLOPT_PROTOCOLS</a>.
-<p class="level0">User provided URLs can also be made to point to sites that redirect further on (possibly to other protocols too). Consider your <a Class="emphasis" href="./CURLOPT_FOLLOWLOCATION.html">CURLOPT_FOLLOWLOCATION</a> and <a Class="emphasis" href="./CURLOPT_REDIR_PROTOCOLS.html">CURLOPT_REDIR_PROTOCOLS</a> settings. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
+<p class="level1">While space is not typically a "legal" letter, libcurl accepts them. When a user wants to pass in a '#' (hash) character it will be treated as a fragment and get cut off by libcurl if provided literally. You will instead have to escape it by providing it as backslash and its ASCII value in hexadecimal: "\23". <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
+<p class="level0">There is no default URL. If this option isn't set, no transfer can be performed. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">POP3 and SMTP were added in 7.31.0 <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_URL.pdf b/docs/libcurl/opts/CURLOPT_URL.pdf
index 7ac38c4ca..7867b41fc 100644
--- a/docs/libcurl/opts/CURLOPT_URL.pdf
+++ b/docs/libcurl/opts/CURLOPT_URL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_USERAGENT.3 b/docs/libcurl/opts/CURLOPT_USERAGENT.3
index 4d7036d8e..13ccbd48d 100644
--- a/docs/libcurl/opts/CURLOPT_USERAGENT.3
+++ b/docs/libcurl/opts/CURLOPT_USERAGENT.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -37,16 +37,7 @@ NULL, no User-Agent: header is used by default.
.SH PROTOCOLS
HTTP, HTTPS
.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "http://example.com");
-
- curl_easy_setopt(curl, CURLOPT_USERAGENT, "Dark Secret Ninja/1.0");
-
- curl_easy_perform(curl);
-}
-.fi
+TODO
.SH AVAILABILITY
As long as HTTP is supported
.SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_USERAGENT.html b/docs/libcurl/opts/CURLOPT_USERAGENT.html
index 71447441c..e418ec54a 100644
--- a/docs/libcurl/opts/CURLOPT_USERAGENT.html
+++ b/docs/libcurl/opts/CURLOPT_USERAGENT.html
@@ -4,20 +4,15 @@
<title>CURLOPT_USERAGENT man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,23 +47,12 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_USERAGENT - set HTTP user-agent header <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_USERAGENT, char *ua); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to a zero terminated string as parameter. It will be used to set the User-Agent: header in the HTTP request sent to the remote server. This can be used to fool servers or scripts. You can also set any custom header with <a Class="emphasis" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">NULL, no User-Agent: header is used by default. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">HTTP, HTTPS <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; curl_easy_setopt(curl, CURLOPT_USERAGENT, "Dark Secret Ninja/1.0");
-&nbsp;
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
-
-<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">TODO <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">As long as HTTP is supported <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">Returns CURLE_OK if HTTP is supported, CURLE_UNKNOWN_OPTION if not, or CURLE_OUT_OF_MEMORY if there was insufficient heap space. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_REFERER.html">CURLOPT_REFERER</a>, <a Class="manpage" href="./CURLOPT_HTTPHEADER.html">CURLOPT_HTTPHEADER</a>, <span Class="manpage"> </span> <p class="roffit">
diff --git a/docs/libcurl/opts/CURLOPT_USERAGENT.pdf b/docs/libcurl/opts/CURLOPT_USERAGENT.pdf
index 04aed42e7..d3ef56883 100644
--- a/docs/libcurl/opts/CURLOPT_USERAGENT.pdf
+++ b/docs/libcurl/opts/CURLOPT_USERAGENT.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_USERNAME.html b/docs/libcurl/opts/CURLOPT_USERNAME.html
index 003656500..e0d459ded 100644
--- a/docs/libcurl/opts/CURLOPT_USERNAME.html
+++ b/docs/libcurl/opts/CURLOPT_USERNAME.html
@@ -4,20 +4,15 @@
<title>CURLOPT_USERNAME man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,12 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_USERNAME - user name to use in authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_USERNAME,
-&nbsp; char *username);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_USERNAME,
+ &nbsp; char *username);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should be pointing to the zero terminated user name to use for the transfer.
<p class="level0"><a Class="bold" href="./CURLOPT_USERNAME.html">CURLOPT_USERNAME</a> sets the user name to be used in protocol authentication. You should not use this option together with the (older) <a Class="emphasis" href="./CURLOPT_USERPWD.html">CURLOPT_USERPWD</a> option.
diff --git a/docs/libcurl/opts/CURLOPT_USERNAME.pdf b/docs/libcurl/opts/CURLOPT_USERNAME.pdf
index 92a373598..904f8b0b7 100644
--- a/docs/libcurl/opts/CURLOPT_USERNAME.pdf
+++ b/docs/libcurl/opts/CURLOPT_USERNAME.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_USERPWD.html b/docs/libcurl/opts/CURLOPT_USERPWD.html
index 3e4a9557b..c1c3394d4 100644
--- a/docs/libcurl/opts/CURLOPT_USERPWD.html
+++ b/docs/libcurl/opts/CURLOPT_USERPWD.html
@@ -4,20 +4,15 @@
<title>CURLOPT_USERPWD man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_USERPWD - user name and password to use in authentication <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_USERPWD, char *userpwd); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, pointing to a zero terminated login details string for the connection. The format of which is: [user name]:[password].
<p class="level0">When using Kerberos V5 authentication with a Windows based server, you should specify the user name part with the domain name in order for the server to successfully obtain a Kerberos Ticket. If you don't then the initial part of the authentication handshake may fail.
diff --git a/docs/libcurl/opts/CURLOPT_USERPWD.pdf b/docs/libcurl/opts/CURLOPT_USERPWD.pdf
index 23c3c6642..5e5209b8b 100644
--- a/docs/libcurl/opts/CURLOPT_USERPWD.pdf
+++ b/docs/libcurl/opts/CURLOPT_USERPWD.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_USE_SSL.html b/docs/libcurl/opts/CURLOPT_USE_SSL.html
index 5f849dc78..22916b028 100644
--- a/docs/libcurl/opts/CURLOPT_USE_SSL.html
+++ b/docs/libcurl/opts/CURLOPT_USE_SSL.html
@@ -4,20 +4,15 @@
<title>CURLOPT_USE_SSL man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_USE_SSL - request using SSL / TLS for the transfer <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_USE_SSL, long level); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a long using one of the values from below, to make libcurl use your desired <span Class="emphasis">level</span> of SSL for the transfer.
<p class="level0">These are all protocols that start out plain text and get "upgraded" to SSL using the STARTTLS command.
@@ -67,18 +62,16 @@ p.roffit {
<p class="level1">Require SSL for all communication or fail with <span Class="emphasis">CURLE_USE_SSL_FAILED</span>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">CURLUSESSL_NONE <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">FTP, SMTP, POP3, IMAP <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/dir/file.ext">ftp://example.com/dir/file.ext</a>");
-&nbsp;
-&nbsp; /* require use of SSL for this, or fail */
-&nbsp; curl_easy_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_ALL);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="ftp://example.com/dir/file.ext">ftp://example.com/dir/file.ext</a>");
+ <p class="level0">&nbsp; /* require use of SSL for this, or fail */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_USE_SSL, CURLUSESSL_ALL);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Added in 7.11.0. This option was known as CURLOPT_FTP_SSL up to 7.16.4, and the constants were known as CURLFTPSSL_* <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_USE_SSL.pdf b/docs/libcurl/opts/CURLOPT_USE_SSL.pdf
index 4c36937b2..b2c54422c 100644
--- a/docs/libcurl/opts/CURLOPT_USE_SSL.pdf
+++ b/docs/libcurl/opts/CURLOPT_USE_SSL.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_VERBOSE.html b/docs/libcurl/opts/CURLOPT_VERBOSE.html
index 48bdf3d0f..402a394d4 100644
--- a/docs/libcurl/opts/CURLOPT_VERBOSE.html
+++ b/docs/libcurl/opts/CURLOPT_VERBOSE.html
@@ -4,20 +4,15 @@
<title>CURLOPT_VERBOSE man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,25 +47,23 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_VERBOSE - set verbose mode on/off <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_VERBOSE, long onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set the <span Class="emphasis">onoff</span> parameter to 1 to make the library display a lot of verbose information about its operations on this <span Class="emphasis">handle</span>. Very useful for libcurl and/or protocol debugging and understanding. The verbose information will be sent to stderr, or the stream set with <a Class="emphasis" href="./CURLOPT_STDERR.html">CURLOPT_STDERR</a>.
<p class="level0">You hardly ever want this set in production use, you will almost always want this when you debug/report problems.
<p class="level0">To also get all the protocol data sent and received, consider using the <a Class="emphasis" href="./CURLOPT_DEBUGFUNCTION.html">CURLOPT_DEBUGFUNCTION</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">0, meaning disabled. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">All <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0"><pre class="level0">
-CURL *curl = curl_easy_init();
-if(curl) {
-&nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
-&nbsp;
-&nbsp; /* ask libcurl to show us the verbose output */
-&nbsp; curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
-&nbsp;
-&nbsp; /* Perform the request */
-&nbsp; curl_easy_perform(curl);
-}
-</pre>
+<p class="level0"><pre>
+<p class="level0">CURL *curl = curl_easy_init();
+ if(curl) {
+ &nbsp; curl_easy_setopt(curl, CURLOPT_URL, "<a href="http://example.com">http://example.com</a>");
+ <p class="level0">&nbsp; /* ask libcurl to show us the verbose output */
+ &nbsp; curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+ <p class="level0">&nbsp; /* Perform the request */
+ &nbsp; curl_easy_perform(curl);
+ }
+ </pre>
<p class="level0"><a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
<p class="level0">Always <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
diff --git a/docs/libcurl/opts/CURLOPT_VERBOSE.pdf b/docs/libcurl/opts/CURLOPT_VERBOSE.pdf
index 955988234..5250d4ec7 100644
--- a/docs/libcurl/opts/CURLOPT_VERBOSE.pdf
+++ b/docs/libcurl/opts/CURLOPT_VERBOSE.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.html b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.html
index 801372352..1abff184f 100644
--- a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.html
+++ b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.html
@@ -4,20 +4,15 @@
<title>CURLOPT_WILDCARDMATCH man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_WILDCARDMATCH - enable directory wildcard transfers <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WILDCARDMATCH, long onoff); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Set <span Class="emphasis">onoff</span> to 1 if you want to transfer multiple files according to a file name pattern. The pattern can be specified as part of the <a Class="emphasis" href="./CURLOPT_URL.html">CURLOPT_URL</a> option, using an fnmatch-like pattern (Shell Pattern Matching) in the last part of URL (file name).
<p class="level0">By default, libcurl uses its internal wildcard matching implementation. You can provide your own matching function by the <a Class="emphasis" href="./CURLOPT_FNMATCH_FUNCTION.html">CURLOPT_FNMATCH_FUNCTION</a> option.
diff --git a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.pdf b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.pdf
index c0cd14110..c0d81dc6e 100644
--- a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.pdf
+++ b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_WRITEDATA.3 b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
index 0b7a50287..be07c769a 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
@@ -5,7 +5,7 @@
.\" * | (__| |_| | _ <| |___
.\" * \___|\___/|_| \_\_____|
.\" *
-.\" * Copyright (C) 1998 - 2015, 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
@@ -46,14 +46,12 @@ By default, this is a FILE * to stdout.
Used for all protocols.
.SH EXAMPLE
A common technique is to use the write callback to store the incoming data
-into a dynamically growing allocated buffer, and then this
-\fICURLOPT_WRITEDATA(3)\fP is used to point to a struct or the buffer to store
-data in. Like in the getinmemory example:
-http://curl.haxx.se/libcurl/c/getinmemory.html
+into a dynamically growing allocated buffer, and then this CURLOPT_WRITEDATA
+is used to point to a struct or the buffer to store data in. Like in the
+getinmemory example: http://curl.haxx.se/libcurl/c/getinmemory.html
.SH AVAILABILITY
Available in all libcurl versions. This option was formerly known as
-\fICURLOPT_FILE\fP, the name \fICURLOPT_WRITEDATA(3)\fP was introduced in
-7.9.7.
+\fICURLOPT_FILE\fP, the name \fICURLOPT_WRITEDATA\fP was introduced in 7.9.7.
.SH RETURN VALUE
This will return CURLE_OK.
.SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_WRITEDATA.html b/docs/libcurl/opts/CURLOPT_WRITEDATA.html
index e1adf779a..fb9dff9e9 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEDATA.html
+++ b/docs/libcurl/opts/CURLOPT_WRITEDATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_WRITEDATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,15 +47,15 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_WRITEDATA - custom pointer passed to the write callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WRITEDATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">A data <span Class="emphasis">pointer</span> to pass to the write callback. If you use the <a Class="emphasis" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a> option, this is the pointer you'll get in that callback's 4th argument. If you don't use a write callback, you must make <span Class="emphasis">pointer</span> a 'FILE *' (cast to 'void *') as libcurl will pass this to <span Class="emphasis">fwrite(3)</span> when writing data.
<p class="level0">The internal <a Class="emphasis" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a> will write the data to the FILE * given with this option, or to stdout if this option hasn't been set.
<p class="level0">If you're using libcurl as a win32 DLL, you <span Class="bold">MUST</span> use the <a Class="emphasis" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a> if you set this option or you will experience crashes. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
<p class="level0">By default, this is a FILE * to stdout. <a name="PROTOCOLS"></a><h2 class="nroffsh">PROTOCOLS</h2>
<p class="level0">Used for all protocols. <a name="EXAMPLE"></a><h2 class="nroffsh">EXAMPLE</h2>
-<p class="level0">A common technique is to use the write callback to store the incoming data into a dynamically growing allocated buffer, and then this <a Class="emphasis" href="./CURLOPT_WRITEDATA.html">CURLOPT_WRITEDATA</a> is used to point to a struct or the buffer to store data in. Like in the getinmemory example: <a href="http://curl.haxx.se/libcurl/c/getinmemory.html">http://curl.haxx.se/libcurl/c/getinmemory.html</a> <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
-<p class="level0">Available in all libcurl versions. This option was formerly known as <span Class="emphasis">CURLOPT_FILE</span>, the name <a Class="emphasis" href="./CURLOPT_WRITEDATA.html">CURLOPT_WRITEDATA</a> was introduced in 7.9.7. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
+<p class="level0">A common technique is to use the write callback to store the incoming data into a dynamically growing allocated buffer, and then this CURLOPT_WRITEDATA is used to point to a struct or the buffer to store data in. Like in the getinmemory example: <a href="http://curl.haxx.se/libcurl/c/getinmemory.html">http://curl.haxx.se/libcurl/c/getinmemory.html</a> <a name="AVAILABILITY"></a><h2 class="nroffsh">AVAILABILITY</h2>
+<p class="level0">Available in all libcurl versions. This option was formerly known as <span Class="emphasis">CURLOPT_FILE</span>, the name <span Class="emphasis">CURLOPT_WRITEDATA</span> was introduced in 7.9.7. <a name="RETURN"></a><h2 class="nroffsh">RETURN VALUE</h2>
<p class="level0">This will return CURLE_OK. <a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><a Class="manpage" href="./CURLOPT_WRITEFUNCTION.html">CURLOPT_WRITEFUNCTION</a>, <a Class="manpage" href="./CURLOPT_READDATA.html">CURLOPT_READDATA</a>, <span Class="manpage"> </span> <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
diff --git a/docs/libcurl/opts/CURLOPT_WRITEDATA.pdf b/docs/libcurl/opts/CURLOPT_WRITEDATA.pdf
index 508d74bfe..2751caa02 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEDATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_WRITEDATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.html b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.html
index a54dcd412..94bb1b245 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_WRITEFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,13 +47,11 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_WRITEFUNCTION - set callback for writing received data <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0"><pre class="level0">
-&#35;include &lt;curl/curl.h&gt;
-&nbsp;
-size_t write_callback(char *ptr, size_t size, size_t nmemb, void *userdata);
-&nbsp;
-CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WRITEFUNCTION, write_callback);
-</pre>
+<p class="level0"><pre>
+<p class="level0">#include &lt;curl/curl.h&gt;
+ <p class="level0">size_t write_callback(char *ptr, size_t size, size_t nmemb, void *userdata);
+ <p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WRITEFUNCTION, write_callback);
+ </pre>
<a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
<p class="level0">This callback function gets called by libcurl as soon as there is data received that needs to be saved. <span Class="emphasis">ptr</span> points to the delivered data, and the size of that data is <span Class="emphasis">size</span> multiplied with <span Class="emphasis">nmemb</span>.
diff --git a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.pdf
index c847f1ec1..42c2177d0 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFODATA.html b/docs/libcurl/opts/CURLOPT_XFERINFODATA.html
index e779438ff..3c61c0e0d 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFODATA.html
+++ b/docs/libcurl/opts/CURLOPT_XFERINFODATA.html
@@ -4,20 +4,15 @@
<title>CURLOPT_XFERINFODATA man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_XFERINFODATA - custom pointer passed to the progress callback <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XFERINFODATA, void *pointer); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a <span Class="emphasis">pointer</span> that will be untouched by libcurl and passed as the first argument in the progress callback set with <a Class="emphasis" href="./CURLOPT_XFERINFOFUNCTION.html">CURLOPT_XFERINFOFUNCTION</a>.
<p class="level0">This is an alias for <a Class="emphasis" href="./CURLOPT_PROGRESSDATA.html">CURLOPT_PROGRESSDATA</a>. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFODATA.pdf b/docs/libcurl/opts/CURLOPT_XFERINFODATA.pdf
index a3088de35..87d1cfd65 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFODATA.pdf
+++ b/docs/libcurl/opts/CURLOPT_XFERINFODATA.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.html b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.html
index 01b000bf0..12435a163 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.html
+++ b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.html
@@ -4,20 +4,15 @@
<title>CURLOPT_XFERINFOFUNCTION man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_XFERINFOFUNCTION - callback to progress meter function <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">int progress_callback(void *clientp, &nbsp; curl_off_t dltotal, &nbsp; curl_off_t dlnow, &nbsp; curl_off_t ultotal, &nbsp; curl_off_t ulnow);
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XFERINFOFUNCTION, progress_callback); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a pointer to your callback function, which should match the prototype shown above.
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.pdf b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.pdf
index 07dc41a9c..56d3a0da4 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.pdf
+++ b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.pdf
Binary files differ
diff --git a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.html b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.html
index 95604a39e..0658c30dd 100644
--- a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.html
+++ b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.html
@@ -4,20 +4,15 @@
<title>CURLOPT_XOAUTH2_BEARER man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -52,7 +47,7 @@ p.roffit {
<p class="level0"><a name="NAME"></a><h2 class="nroffsh">NAME</h2>
<p class="level0">CURLOPT_XOAUTH2_BEARER - specify OAuth 2.0 access token <a name="SYNOPSIS"></a><h2 class="nroffsh">SYNOPSIS</h2>
-<p class="level0">&#35;include &lt;curl/curl.h&gt;
+<p class="level0">#include &lt;curl/curl.h&gt;
<p class="level0">CURLcode curl_easy_setopt(CURL *handle, CURLOPT_XOAUTH2_BEARER, char *token); <a name="DESCRIPTION"></a><h2 class="nroffsh">DESCRIPTION</h2>
<p class="level0">Pass a char * as parameter, which should point to the zero terminated OAuth 2.0 Bearer Access Token for use with IMAP, POP3 and SMTP servers that support the OAuth 2.0 Authorization Framework.
<p class="level0">Note: The user name used to generate the Bearer Token should be supplied via the <a Class="emphasis" href="./CURLOPT_USERNAME.html">CURLOPT_USERNAME</a> option. <a name="DEFAULT"></a><h2 class="nroffsh">DEFAULT</h2>
diff --git a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.pdf b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.pdf
index 84dec609b..b8406cf6b 100644
--- a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.pdf
+++ b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.pdf
Binary files differ
diff --git a/docs/libcurl/opts/Makefile.am b/docs/libcurl/opts/Makefile.am
index 4865b41b5..eac785c93 100644
--- a/docs/libcurl/opts/Makefile.am
+++ b/docs/libcurl/opts/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -66,9 +66,8 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLOPT_NEW_DIRECTORY_PERMS.3 CURLOPT_NEW_FILE_PERMS.3 \
CURLOPT_NOBODY.3 CURLOPT_NOPROGRESS.3 CURLOPT_NOPROXY.3 \
CURLOPT_NOSIGNAL.3 CURLOPT_OPENSOCKETDATA.3 \
- CURLOPT_OPENSOCKETFUNCTION.3 CURLOPT_PASSWORD.3 \
- CURLOPT_PINNEDPUBLICKEY.3 CURLOPT_PORT.3 CURLOPT_POST.3 \
- CURLOPT_POSTFIELDS.3 CURLOPT_POSTFIELDSIZE.3 \
+ CURLOPT_OPENSOCKETFUNCTION.3 CURLOPT_PASSWORD.3 CURLOPT_PORT.3 \
+ CURLOPT_POST.3 CURLOPT_POSTFIELDS.3 CURLOPT_POSTFIELDSIZE.3 \
CURLOPT_POSTFIELDSIZE_LARGE.3 CURLOPT_POSTQUOTE.3 CURLOPT_POSTREDIR.3 \
CURLOPT_PREQUOTE.3 CURLOPT_PRIVATE.3 CURLOPT_PROGRESSDATA.3 \
CURLOPT_PROGRESSFUNCTION.3 CURLOPT_PROTOCOLS.3 CURLOPT_PROXY.3 \
@@ -91,18 +90,17 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLOPT_SSLCERT.3 CURLOPT_SSLCERTTYPE.3 CURLOPT_SSL_CIPHER_LIST.3 \
CURLOPT_SSL_CTX_DATA.3 CURLOPT_SSL_CTX_FUNCTION.3 \
CURLOPT_SSL_ENABLE_ALPN.3 CURLOPT_SSL_ENABLE_NPN.3 CURLOPT_SSLENGINE.3 \
- CURLOPT_SSLENGINE_DEFAULT.3 CURLOPT_SSL_FALSESTART.3 CURLOPT_SSLKEY.3 \
- CURLOPT_SSLKEYTYPE.3 CURLOPT_SSL_OPTIONS.3 \
- CURLOPT_SSL_SESSIONID_CACHE.3 CURLOPT_SSL_VERIFYHOST.3 \
- CURLOPT_SSL_VERIFYPEER.3 CURLOPT_SSL_VERIFYSTATUS.3 \
- CURLOPT_SSLVERSION.3 CURLOPT_STDERR.3 CURLOPT_TCP_KEEPALIVE.3 \
- CURLOPT_TCP_KEEPIDLE.3 CURLOPT_TCP_KEEPINTVL.3 CURLOPT_TCP_NODELAY.3 \
- CURLOPT_TELNETOPTIONS.3 CURLOPT_TFTP_BLKSIZE.3 CURLOPT_TIMECONDITION.3 \
- CURLOPT_TIMEOUT.3 CURLOPT_TIMEOUT_MS.3 CURLOPT_TIMEVALUE.3 \
- CURLOPT_TLSAUTH_PASSWORD.3 CURLOPT_TLSAUTH_TYPE.3 \
- CURLOPT_TLSAUTH_USERNAME.3 CURLOPT_TRANSFER_ENCODING.3 \
- CURLOPT_TRANSFERTEXT.3 CURLOPT_UNRESTRICTED_AUTH.3 CURLOPT_UPLOAD.3 \
- CURLOPT_URL.3 CURLOPT_USERAGENT.3 CURLOPT_USERNAME.3 CURLOPT_USERPWD.3 \
+ CURLOPT_SSLENGINE_DEFAULT.3 CURLOPT_SSLKEY.3 CURLOPT_SSLKEYTYPE.3 \
+ CURLOPT_SSL_OPTIONS.3 CURLOPT_SSL_SESSIONID_CACHE.3 \
+ CURLOPT_SSL_VERIFYHOST.3 CURLOPT_SSL_VERIFYPEER.3 CURLOPT_SSLVERSION.3 \
+ CURLOPT_STDERR.3 CURLOPT_TCP_KEEPALIVE.3 CURLOPT_TCP_KEEPIDLE.3 \
+ CURLOPT_TCP_KEEPINTVL.3 CURLOPT_TCP_NODELAY.3 CURLOPT_TELNETOPTIONS.3 \
+ CURLOPT_TFTP_BLKSIZE.3 CURLOPT_TIMECONDITION.3 CURLOPT_TIMEOUT.3 \
+ CURLOPT_TIMEOUT_MS.3 CURLOPT_TIMEVALUE.3 CURLOPT_TLSAUTH_PASSWORD.3 \
+ CURLOPT_TLSAUTH_TYPE.3 CURLOPT_TLSAUTH_USERNAME.3 \
+ CURLOPT_TRANSFER_ENCODING.3 CURLOPT_TRANSFERTEXT.3 \
+ CURLOPT_UNRESTRICTED_AUTH.3 CURLOPT_UPLOAD.3 CURLOPT_URL.3 \
+ CURLOPT_USERAGENT.3 CURLOPT_USERNAME.3 CURLOPT_USERPWD.3 \
CURLOPT_USE_SSL.3 CURLOPT_VERBOSE.3 CURLOPT_WILDCARDMATCH.3 \
CURLOPT_WRITEDATA.3 CURLOPT_WRITEFUNCTION.3 CURLOPT_XFERINFODATA.3 \
CURLOPT_XFERINFOFUNCTION.3 CURLOPT_XOAUTH2_BEARER.3 \
@@ -112,10 +110,8 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLMOPT_MAX_TOTAL_CONNECTIONS.3 CURLMOPT_PIPELINING.3 \
CURLMOPT_PIPELINING_SERVER_BL.3 CURLMOPT_PIPELINING_SITE_BL.3 \
CURLMOPT_SOCKETDATA.3 CURLMOPT_SOCKETFUNCTION.3 CURLMOPT_TIMERDATA.3 \
- CURLMOPT_TIMERFUNCTION.3 CURLOPT_UNIX_SOCKET_PATH.3 \
- CURLOPT_PATH_AS_IS.3 CURLOPT_PROXY_SERVICE_NAME.3 \
- CURLOPT_SERVICE_NAME.3 CURLOPT_PIPEWAIT.3 CURLMOPT_PUSHDATA.3 \
- CURLMOPT_PUSHFUNCTION.3
+ CURLMOPT_TIMERFUNCTION.3 CURLOPT_UNIX_SOCKET_PATH.3
+
HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_ADDRESS_SCOPE.html CURLOPT_APPEND.html \
@@ -170,8 +166,8 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_NEW_FILE_PERMS.html CURLOPT_NOBODY.html \
CURLOPT_NOPROGRESS.html CURLOPT_NOPROXY.html CURLOPT_NOSIGNAL.html \
CURLOPT_OPENSOCKETDATA.html CURLOPT_OPENSOCKETFUNCTION.html \
- CURLOPT_PASSWORD.html CURLOPT_PINNEDPUBLICKEY.html CURLOPT_PORT.html \
- CURLOPT_POST.html CURLOPT_POSTFIELDS.html CURLOPT_POSTFIELDSIZE.html \
+ CURLOPT_PASSWORD.html CURLOPT_PORT.html CURLOPT_POST.html \
+ CURLOPT_POSTFIELDS.html CURLOPT_POSTFIELDSIZE.html \
CURLOPT_POSTFIELDSIZE_LARGE.html CURLOPT_POSTQUOTE.html \
CURLOPT_POSTREDIR.html CURLOPT_PREQUOTE.html CURLOPT_PRIVATE.html \
CURLOPT_PROGRESSDATA.html CURLOPT_PROGRESSFUNCTION.html \
@@ -197,11 +193,11 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_SSL_CIPHER_LIST.html CURLOPT_SSL_CTX_DATA.html \
CURLOPT_SSL_CTX_FUNCTION.html CURLOPT_SSL_ENABLE_ALPN.html \
CURLOPT_SSL_ENABLE_NPN.html CURLOPT_SSLENGINE.html \
- CURLOPT_SSLENGINE_DEFAULT.html CURLOPT_SSL_FALSESTART.html \
- CURLOPT_SSLKEY.html CURLOPT_SSLKEYTYPE.html CURLOPT_SSL_OPTIONS.html \
+ CURLOPT_SSLENGINE_DEFAULT.html CURLOPT_SSLKEY.html \
+ CURLOPT_SSLKEYTYPE.html CURLOPT_SSL_OPTIONS.html \
CURLOPT_SSL_SESSIONID_CACHE.html CURLOPT_SSL_VERIFYHOST.html \
- CURLOPT_SSL_VERIFYPEER.html CURLOPT_SSL_VERIFYSTATUS.html \
- CURLOPT_SSLVERSION.html CURLOPT_STDERR.html CURLOPT_TCP_KEEPALIVE.html \
+ CURLOPT_SSL_VERIFYPEER.html CURLOPT_SSLVERSION.html \
+ CURLOPT_STDERR.html CURLOPT_TCP_KEEPALIVE.html \
CURLOPT_TCP_KEEPIDLE.html CURLOPT_TCP_KEEPINTVL.html \
CURLOPT_TCP_NODELAY.html CURLOPT_TELNETOPTIONS.html \
CURLOPT_TFTP_BLKSIZE.html CURLOPT_TIMECONDITION.html \
@@ -221,10 +217,7 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLMOPT_PIPELINING_SERVER_BL.html CURLMOPT_PIPELINING_SITE_BL.html \
CURLMOPT_SOCKETDATA.html CURLMOPT_SOCKETFUNCTION.html \
CURLMOPT_TIMERDATA.html CURLMOPT_TIMERFUNCTION.html \
- CURLOPT_UNIX_SOCKET_PATH.html CURLOPT_PATH_AS_IS.html \
- CURLOPT_PROXY_SERVICE_NAME.html CURLOPT_SERVICE_NAME.html \
- CURLOPT_PIPEWAIT.html CURLMOPT_PUSHDATA.html \
- CURLMOPT_PUSHFUNCTION.html
+ CURLOPT_UNIX_SOCKET_PATH.html
PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_ADDRESS_SCOPE.pdf CURLOPT_APPEND.pdf CURLOPT_AUTOREFERER.pdf \
@@ -276,9 +269,8 @@ PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_NEW_DIRECTORY_PERMS.pdf CURLOPT_NEW_FILE_PERMS.pdf \
CURLOPT_NOBODY.pdf CURLOPT_NOPROGRESS.pdf CURLOPT_NOPROXY.pdf \
CURLOPT_NOSIGNAL.pdf CURLOPT_OPENSOCKETDATA.pdf \
- CURLOPT_OPENSOCKETFUNCTION.pdf CURLOPT_PASSWORD.pdf \
- CURLOPT_PINNEDPUBLICKEY.pdf CURLOPT_PORT.pdf CURLOPT_POST.pdf \
- CURLOPT_POSTFIELDS.pdf CURLOPT_POSTFIELDSIZE.pdf \
+ CURLOPT_OPENSOCKETFUNCTION.pdf CURLOPT_PASSWORD.pdf CURLOPT_PORT.pdf \
+ CURLOPT_POST.pdf CURLOPT_POSTFIELDS.pdf CURLOPT_POSTFIELDSIZE.pdf \
CURLOPT_POSTFIELDSIZE_LARGE.pdf CURLOPT_POSTQUOTE.pdf \
CURLOPT_POSTREDIR.pdf CURLOPT_PREQUOTE.pdf CURLOPT_PRIVATE.pdf \
CURLOPT_PROGRESSDATA.pdf CURLOPT_PROGRESSFUNCTION.pdf \
@@ -304,33 +296,30 @@ PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_SSL_CIPHER_LIST.pdf CURLOPT_SSL_CTX_DATA.pdf \
CURLOPT_SSL_CTX_FUNCTION.pdf CURLOPT_SSL_ENABLE_ALPN.pdf \
CURLOPT_SSL_ENABLE_NPN.pdf CURLOPT_SSLENGINE.pdf \
- CURLOPT_SSLENGINE_DEFAULT.pdf CURLOPT_SSL_FALSESTART.pdf \
- CURLOPT_SSLKEY.pdf CURLOPT_SSLKEYTYPE.pdf CURLOPT_SSL_OPTIONS.pdf \
+ CURLOPT_SSLENGINE_DEFAULT.pdf CURLOPT_SSLKEY.pdf \
+ CURLOPT_SSLKEYTYPE.pdf CURLOPT_SSL_OPTIONS.pdf \
CURLOPT_SSL_SESSIONID_CACHE.pdf CURLOPT_SSL_VERIFYHOST.pdf \
- CURLOPT_SSL_VERIFYPEER.pdf CURLOPT_SSL_VERIFYSTATUS.pdf \
- CURLOPT_SSLVERSION.pdf CURLOPT_STDERR.pdf CURLOPT_TCP_KEEPALIVE.pdf \
- CURLOPT_TCP_KEEPIDLE.pdf CURLOPT_TCP_KEEPINTVL.pdf \
- CURLOPT_TCP_NODELAY.pdf CURLOPT_TELNETOPTIONS.pdf \
- CURLOPT_TFTP_BLKSIZE.pdf CURLOPT_TIMECONDITION.pdf CURLOPT_TIMEOUT.pdf \
- CURLOPT_TIMEOUT_MS.pdf CURLOPT_TIMEVALUE.pdf \
- CURLOPT_TLSAUTH_PASSWORD.pdf CURLOPT_TLSAUTH_TYPE.pdf \
- CURLOPT_TLSAUTH_USERNAME.pdf CURLOPT_TRANSFER_ENCODING.pdf \
- CURLOPT_TRANSFERTEXT.pdf CURLOPT_UNRESTRICTED_AUTH.pdf \
- CURLOPT_UPLOAD.pdf CURLOPT_URL.pdf CURLOPT_USERAGENT.pdf \
- CURLOPT_USERNAME.pdf CURLOPT_USERPWD.pdf CURLOPT_USE_SSL.pdf \
- CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf CURLOPT_WRITEDATA.pdf \
- CURLOPT_WRITEFUNCTION.pdf CURLOPT_XFERINFODATA.pdf \
- CURLOPT_XFERINFOFUNCTION.pdf CURLOPT_XOAUTH2_BEARER.pdf \
- CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
+ CURLOPT_SSL_VERIFYPEER.pdf CURLOPT_SSLVERSION.pdf CURLOPT_STDERR.pdf \
+ CURLOPT_TCP_KEEPALIVE.pdf CURLOPT_TCP_KEEPIDLE.pdf \
+ CURLOPT_TCP_KEEPINTVL.pdf CURLOPT_TCP_NODELAY.pdf \
+ CURLOPT_TELNETOPTIONS.pdf CURLOPT_TFTP_BLKSIZE.pdf \
+ CURLOPT_TIMECONDITION.pdf CURLOPT_TIMEOUT.pdf CURLOPT_TIMEOUT_MS.pdf \
+ CURLOPT_TIMEVALUE.pdf CURLOPT_TLSAUTH_PASSWORD.pdf \
+ CURLOPT_TLSAUTH_TYPE.pdf CURLOPT_TLSAUTH_USERNAME.pdf \
+ CURLOPT_TRANSFER_ENCODING.pdf CURLOPT_TRANSFERTEXT.pdf \
+ CURLOPT_UNRESTRICTED_AUTH.pdf CURLOPT_UPLOAD.pdf CURLOPT_URL.pdf \
+ CURLOPT_USERAGENT.pdf CURLOPT_USERNAME.pdf CURLOPT_USERPWD.pdf \
+ CURLOPT_USE_SSL.pdf CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf \
+ CURLOPT_WRITEDATA.pdf CURLOPT_WRITEFUNCTION.pdf \
+ CURLOPT_XFERINFODATA.pdf CURLOPT_XFERINFOFUNCTION.pdf \
+ CURLOPT_XOAUTH2_BEARER.pdf CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf CURLMOPT_MAXCONNECTS.pdf \
CURLMOPT_MAX_HOST_CONNECTIONS.pdf CURLMOPT_MAX_PIPELINE_LENGTH.pdf \
CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf CURLMOPT_PIPELINING.pdf \
CURLMOPT_PIPELINING_SERVER_BL.pdf CURLMOPT_PIPELINING_SITE_BL.pdf \
CURLMOPT_SOCKETDATA.pdf CURLMOPT_SOCKETFUNCTION.pdf \
CURLMOPT_TIMERDATA.pdf CURLMOPT_TIMERFUNCTION.pdf \
- CURLOPT_UNIX_SOCKET_PATH.pdf CURLOPT_PATH_AS_IS.pdf \
- CURLOPT_PROXY_SERVICE_NAME.pdf CURLOPT_SERVICE_NAME.pdf \
- CURLOPT_PIPEWAIT.pdf CURLMOPT_PUSHDATA.pdf CURLMOPT_PUSHFUNCTION.pdf
+ CURLOPT_UNIX_SOCKET_PATH.pdf
CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
diff --git a/docs/libcurl/opts/Makefile.in b/docs/libcurl/opts/Makefile.in
index f6cd895ac..cb2f5d294 100644
--- a/docs/libcurl/opts/Makefile.in
+++ b/docs/libcurl/opts/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -21,7 +21,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -36,17 +36,7 @@
#
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -110,6 +100,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = docs/libcurl/opts
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -130,8 +122,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -188,7 +179,6 @@ man3dir = $(mandir)/man3
am__installdirs = "$(DESTDIR)$(man3dir)"
MANS = $(man_MANS)
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -247,7 +237,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -300,7 +290,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -317,6 +306,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -421,9 +411,8 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLOPT_NEW_DIRECTORY_PERMS.3 CURLOPT_NEW_FILE_PERMS.3 \
CURLOPT_NOBODY.3 CURLOPT_NOPROGRESS.3 CURLOPT_NOPROXY.3 \
CURLOPT_NOSIGNAL.3 CURLOPT_OPENSOCKETDATA.3 \
- CURLOPT_OPENSOCKETFUNCTION.3 CURLOPT_PASSWORD.3 \
- CURLOPT_PINNEDPUBLICKEY.3 CURLOPT_PORT.3 CURLOPT_POST.3 \
- CURLOPT_POSTFIELDS.3 CURLOPT_POSTFIELDSIZE.3 \
+ CURLOPT_OPENSOCKETFUNCTION.3 CURLOPT_PASSWORD.3 CURLOPT_PORT.3 \
+ CURLOPT_POST.3 CURLOPT_POSTFIELDS.3 CURLOPT_POSTFIELDSIZE.3 \
CURLOPT_POSTFIELDSIZE_LARGE.3 CURLOPT_POSTQUOTE.3 CURLOPT_POSTREDIR.3 \
CURLOPT_PREQUOTE.3 CURLOPT_PRIVATE.3 CURLOPT_PROGRESSDATA.3 \
CURLOPT_PROGRESSFUNCTION.3 CURLOPT_PROTOCOLS.3 CURLOPT_PROXY.3 \
@@ -446,18 +435,17 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLOPT_SSLCERT.3 CURLOPT_SSLCERTTYPE.3 CURLOPT_SSL_CIPHER_LIST.3 \
CURLOPT_SSL_CTX_DATA.3 CURLOPT_SSL_CTX_FUNCTION.3 \
CURLOPT_SSL_ENABLE_ALPN.3 CURLOPT_SSL_ENABLE_NPN.3 CURLOPT_SSLENGINE.3 \
- CURLOPT_SSLENGINE_DEFAULT.3 CURLOPT_SSL_FALSESTART.3 CURLOPT_SSLKEY.3 \
- CURLOPT_SSLKEYTYPE.3 CURLOPT_SSL_OPTIONS.3 \
- CURLOPT_SSL_SESSIONID_CACHE.3 CURLOPT_SSL_VERIFYHOST.3 \
- CURLOPT_SSL_VERIFYPEER.3 CURLOPT_SSL_VERIFYSTATUS.3 \
- CURLOPT_SSLVERSION.3 CURLOPT_STDERR.3 CURLOPT_TCP_KEEPALIVE.3 \
- CURLOPT_TCP_KEEPIDLE.3 CURLOPT_TCP_KEEPINTVL.3 CURLOPT_TCP_NODELAY.3 \
- CURLOPT_TELNETOPTIONS.3 CURLOPT_TFTP_BLKSIZE.3 CURLOPT_TIMECONDITION.3 \
- CURLOPT_TIMEOUT.3 CURLOPT_TIMEOUT_MS.3 CURLOPT_TIMEVALUE.3 \
- CURLOPT_TLSAUTH_PASSWORD.3 CURLOPT_TLSAUTH_TYPE.3 \
- CURLOPT_TLSAUTH_USERNAME.3 CURLOPT_TRANSFER_ENCODING.3 \
- CURLOPT_TRANSFERTEXT.3 CURLOPT_UNRESTRICTED_AUTH.3 CURLOPT_UPLOAD.3 \
- CURLOPT_URL.3 CURLOPT_USERAGENT.3 CURLOPT_USERNAME.3 CURLOPT_USERPWD.3 \
+ CURLOPT_SSLENGINE_DEFAULT.3 CURLOPT_SSLKEY.3 CURLOPT_SSLKEYTYPE.3 \
+ CURLOPT_SSL_OPTIONS.3 CURLOPT_SSL_SESSIONID_CACHE.3 \
+ CURLOPT_SSL_VERIFYHOST.3 CURLOPT_SSL_VERIFYPEER.3 CURLOPT_SSLVERSION.3 \
+ CURLOPT_STDERR.3 CURLOPT_TCP_KEEPALIVE.3 CURLOPT_TCP_KEEPIDLE.3 \
+ CURLOPT_TCP_KEEPINTVL.3 CURLOPT_TCP_NODELAY.3 CURLOPT_TELNETOPTIONS.3 \
+ CURLOPT_TFTP_BLKSIZE.3 CURLOPT_TIMECONDITION.3 CURLOPT_TIMEOUT.3 \
+ CURLOPT_TIMEOUT_MS.3 CURLOPT_TIMEVALUE.3 CURLOPT_TLSAUTH_PASSWORD.3 \
+ CURLOPT_TLSAUTH_TYPE.3 CURLOPT_TLSAUTH_USERNAME.3 \
+ CURLOPT_TRANSFER_ENCODING.3 CURLOPT_TRANSFERTEXT.3 \
+ CURLOPT_UNRESTRICTED_AUTH.3 CURLOPT_UPLOAD.3 CURLOPT_URL.3 \
+ CURLOPT_USERAGENT.3 CURLOPT_USERNAME.3 CURLOPT_USERPWD.3 \
CURLOPT_USE_SSL.3 CURLOPT_VERBOSE.3 CURLOPT_WILDCARDMATCH.3 \
CURLOPT_WRITEDATA.3 CURLOPT_WRITEFUNCTION.3 CURLOPT_XFERINFODATA.3 \
CURLOPT_XFERINFOFUNCTION.3 CURLOPT_XOAUTH2_BEARER.3 \
@@ -467,10 +455,7 @@ man_MANS = CURLOPT_ACCEPT_ENCODING.3 CURLOPT_ACCEPTTIMEOUT_MS.3 \
CURLMOPT_MAX_TOTAL_CONNECTIONS.3 CURLMOPT_PIPELINING.3 \
CURLMOPT_PIPELINING_SERVER_BL.3 CURLMOPT_PIPELINING_SITE_BL.3 \
CURLMOPT_SOCKETDATA.3 CURLMOPT_SOCKETFUNCTION.3 CURLMOPT_TIMERDATA.3 \
- CURLMOPT_TIMERFUNCTION.3 CURLOPT_UNIX_SOCKET_PATH.3 \
- CURLOPT_PATH_AS_IS.3 CURLOPT_PROXY_SERVICE_NAME.3 \
- CURLOPT_SERVICE_NAME.3 CURLOPT_PIPEWAIT.3 CURLMOPT_PUSHDATA.3 \
- CURLMOPT_PUSHFUNCTION.3
+ CURLMOPT_TIMERFUNCTION.3 CURLOPT_UNIX_SOCKET_PATH.3
HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_ADDRESS_SCOPE.html CURLOPT_APPEND.html \
@@ -525,8 +510,8 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_NEW_FILE_PERMS.html CURLOPT_NOBODY.html \
CURLOPT_NOPROGRESS.html CURLOPT_NOPROXY.html CURLOPT_NOSIGNAL.html \
CURLOPT_OPENSOCKETDATA.html CURLOPT_OPENSOCKETFUNCTION.html \
- CURLOPT_PASSWORD.html CURLOPT_PINNEDPUBLICKEY.html CURLOPT_PORT.html \
- CURLOPT_POST.html CURLOPT_POSTFIELDS.html CURLOPT_POSTFIELDSIZE.html \
+ CURLOPT_PASSWORD.html CURLOPT_PORT.html CURLOPT_POST.html \
+ CURLOPT_POSTFIELDS.html CURLOPT_POSTFIELDSIZE.html \
CURLOPT_POSTFIELDSIZE_LARGE.html CURLOPT_POSTQUOTE.html \
CURLOPT_POSTREDIR.html CURLOPT_PREQUOTE.html CURLOPT_PRIVATE.html \
CURLOPT_PROGRESSDATA.html CURLOPT_PROGRESSFUNCTION.html \
@@ -552,11 +537,11 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLOPT_SSL_CIPHER_LIST.html CURLOPT_SSL_CTX_DATA.html \
CURLOPT_SSL_CTX_FUNCTION.html CURLOPT_SSL_ENABLE_ALPN.html \
CURLOPT_SSL_ENABLE_NPN.html CURLOPT_SSLENGINE.html \
- CURLOPT_SSLENGINE_DEFAULT.html CURLOPT_SSL_FALSESTART.html \
- CURLOPT_SSLKEY.html CURLOPT_SSLKEYTYPE.html CURLOPT_SSL_OPTIONS.html \
+ CURLOPT_SSLENGINE_DEFAULT.html CURLOPT_SSLKEY.html \
+ CURLOPT_SSLKEYTYPE.html CURLOPT_SSL_OPTIONS.html \
CURLOPT_SSL_SESSIONID_CACHE.html CURLOPT_SSL_VERIFYHOST.html \
- CURLOPT_SSL_VERIFYPEER.html CURLOPT_SSL_VERIFYSTATUS.html \
- CURLOPT_SSLVERSION.html CURLOPT_STDERR.html CURLOPT_TCP_KEEPALIVE.html \
+ CURLOPT_SSL_VERIFYPEER.html CURLOPT_SSLVERSION.html \
+ CURLOPT_STDERR.html CURLOPT_TCP_KEEPALIVE.html \
CURLOPT_TCP_KEEPIDLE.html CURLOPT_TCP_KEEPINTVL.html \
CURLOPT_TCP_NODELAY.html CURLOPT_TELNETOPTIONS.html \
CURLOPT_TFTP_BLKSIZE.html CURLOPT_TIMECONDITION.html \
@@ -576,10 +561,7 @@ HTMLPAGES = CURLOPT_ACCEPT_ENCODING.html CURLOPT_ACCEPTTIMEOUT_MS.html \
CURLMOPT_PIPELINING_SERVER_BL.html CURLMOPT_PIPELINING_SITE_BL.html \
CURLMOPT_SOCKETDATA.html CURLMOPT_SOCKETFUNCTION.html \
CURLMOPT_TIMERDATA.html CURLMOPT_TIMERFUNCTION.html \
- CURLOPT_UNIX_SOCKET_PATH.html CURLOPT_PATH_AS_IS.html \
- CURLOPT_PROXY_SERVICE_NAME.html CURLOPT_SERVICE_NAME.html \
- CURLOPT_PIPEWAIT.html CURLMOPT_PUSHDATA.html \
- CURLMOPT_PUSHFUNCTION.html
+ CURLOPT_UNIX_SOCKET_PATH.html
PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_ADDRESS_SCOPE.pdf CURLOPT_APPEND.pdf CURLOPT_AUTOREFERER.pdf \
@@ -631,9 +613,8 @@ PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_NEW_DIRECTORY_PERMS.pdf CURLOPT_NEW_FILE_PERMS.pdf \
CURLOPT_NOBODY.pdf CURLOPT_NOPROGRESS.pdf CURLOPT_NOPROXY.pdf \
CURLOPT_NOSIGNAL.pdf CURLOPT_OPENSOCKETDATA.pdf \
- CURLOPT_OPENSOCKETFUNCTION.pdf CURLOPT_PASSWORD.pdf \
- CURLOPT_PINNEDPUBLICKEY.pdf CURLOPT_PORT.pdf CURLOPT_POST.pdf \
- CURLOPT_POSTFIELDS.pdf CURLOPT_POSTFIELDSIZE.pdf \
+ CURLOPT_OPENSOCKETFUNCTION.pdf CURLOPT_PASSWORD.pdf CURLOPT_PORT.pdf \
+ CURLOPT_POST.pdf CURLOPT_POSTFIELDS.pdf CURLOPT_POSTFIELDSIZE.pdf \
CURLOPT_POSTFIELDSIZE_LARGE.pdf CURLOPT_POSTQUOTE.pdf \
CURLOPT_POSTREDIR.pdf CURLOPT_PREQUOTE.pdf CURLOPT_PRIVATE.pdf \
CURLOPT_PROGRESSDATA.pdf CURLOPT_PROGRESSFUNCTION.pdf \
@@ -659,33 +640,30 @@ PDFPAGES = CURLOPT_ACCEPT_ENCODING.pdf CURLOPT_ACCEPTTIMEOUT_MS.pdf \
CURLOPT_SSL_CIPHER_LIST.pdf CURLOPT_SSL_CTX_DATA.pdf \
CURLOPT_SSL_CTX_FUNCTION.pdf CURLOPT_SSL_ENABLE_ALPN.pdf \
CURLOPT_SSL_ENABLE_NPN.pdf CURLOPT_SSLENGINE.pdf \
- CURLOPT_SSLENGINE_DEFAULT.pdf CURLOPT_SSL_FALSESTART.pdf \
- CURLOPT_SSLKEY.pdf CURLOPT_SSLKEYTYPE.pdf CURLOPT_SSL_OPTIONS.pdf \
+ CURLOPT_SSLENGINE_DEFAULT.pdf CURLOPT_SSLKEY.pdf \
+ CURLOPT_SSLKEYTYPE.pdf CURLOPT_SSL_OPTIONS.pdf \
CURLOPT_SSL_SESSIONID_CACHE.pdf CURLOPT_SSL_VERIFYHOST.pdf \
- CURLOPT_SSL_VERIFYPEER.pdf CURLOPT_SSL_VERIFYSTATUS.pdf \
- CURLOPT_SSLVERSION.pdf CURLOPT_STDERR.pdf CURLOPT_TCP_KEEPALIVE.pdf \
- CURLOPT_TCP_KEEPIDLE.pdf CURLOPT_TCP_KEEPINTVL.pdf \
- CURLOPT_TCP_NODELAY.pdf CURLOPT_TELNETOPTIONS.pdf \
- CURLOPT_TFTP_BLKSIZE.pdf CURLOPT_TIMECONDITION.pdf CURLOPT_TIMEOUT.pdf \
- CURLOPT_TIMEOUT_MS.pdf CURLOPT_TIMEVALUE.pdf \
- CURLOPT_TLSAUTH_PASSWORD.pdf CURLOPT_TLSAUTH_TYPE.pdf \
- CURLOPT_TLSAUTH_USERNAME.pdf CURLOPT_TRANSFER_ENCODING.pdf \
- CURLOPT_TRANSFERTEXT.pdf CURLOPT_UNRESTRICTED_AUTH.pdf \
- CURLOPT_UPLOAD.pdf CURLOPT_URL.pdf CURLOPT_USERAGENT.pdf \
- CURLOPT_USERNAME.pdf CURLOPT_USERPWD.pdf CURLOPT_USE_SSL.pdf \
- CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf CURLOPT_WRITEDATA.pdf \
- CURLOPT_WRITEFUNCTION.pdf CURLOPT_XFERINFODATA.pdf \
- CURLOPT_XFERINFOFUNCTION.pdf CURLOPT_XOAUTH2_BEARER.pdf \
- CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
+ CURLOPT_SSL_VERIFYPEER.pdf CURLOPT_SSLVERSION.pdf CURLOPT_STDERR.pdf \
+ CURLOPT_TCP_KEEPALIVE.pdf CURLOPT_TCP_KEEPIDLE.pdf \
+ CURLOPT_TCP_KEEPINTVL.pdf CURLOPT_TCP_NODELAY.pdf \
+ CURLOPT_TELNETOPTIONS.pdf CURLOPT_TFTP_BLKSIZE.pdf \
+ CURLOPT_TIMECONDITION.pdf CURLOPT_TIMEOUT.pdf CURLOPT_TIMEOUT_MS.pdf \
+ CURLOPT_TIMEVALUE.pdf CURLOPT_TLSAUTH_PASSWORD.pdf \
+ CURLOPT_TLSAUTH_TYPE.pdf CURLOPT_TLSAUTH_USERNAME.pdf \
+ CURLOPT_TRANSFER_ENCODING.pdf CURLOPT_TRANSFERTEXT.pdf \
+ CURLOPT_UNRESTRICTED_AUTH.pdf CURLOPT_UPLOAD.pdf CURLOPT_URL.pdf \
+ CURLOPT_USERAGENT.pdf CURLOPT_USERNAME.pdf CURLOPT_USERPWD.pdf \
+ CURLOPT_USE_SSL.pdf CURLOPT_VERBOSE.pdf CURLOPT_WILDCARDMATCH.pdf \
+ CURLOPT_WRITEDATA.pdf CURLOPT_WRITEFUNCTION.pdf \
+ CURLOPT_XFERINFODATA.pdf CURLOPT_XFERINFOFUNCTION.pdf \
+ CURLOPT_XOAUTH2_BEARER.pdf CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.pdf \
CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.pdf CURLMOPT_MAXCONNECTS.pdf \
CURLMOPT_MAX_HOST_CONNECTIONS.pdf CURLMOPT_MAX_PIPELINE_LENGTH.pdf \
CURLMOPT_MAX_TOTAL_CONNECTIONS.pdf CURLMOPT_PIPELINING.pdf \
CURLMOPT_PIPELINING_SERVER_BL.pdf CURLMOPT_PIPELINING_SITE_BL.pdf \
CURLMOPT_SOCKETDATA.pdf CURLMOPT_SOCKETFUNCTION.pdf \
CURLMOPT_TIMERDATA.pdf CURLMOPT_TIMERFUNCTION.pdf \
- CURLOPT_UNIX_SOCKET_PATH.pdf CURLOPT_PATH_AS_IS.pdf \
- CURLOPT_PROXY_SERVICE_NAME.pdf CURLOPT_SERVICE_NAME.pdf \
- CURLOPT_PIPEWAIT.pdf CURLMOPT_PUSHDATA.pdf CURLMOPT_PUSHFUNCTION.pdf
+ CURLOPT_UNIX_SOCKET_PATH.pdf
CLEANFILES = $(HTMLPAGES) $(PDFPAGES)
EXTRA_DIST = $(man_MANS) $(HTMLPAGES) $(PDFPAGES)
@@ -707,6 +685,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/libcurl/opts/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign docs/libcurl/opts/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -927,8 +906,6 @@ uninstall-man: uninstall-man3
ps ps-am tags-am uninstall uninstall-am uninstall-man \
uninstall-man3
-.PRECIOUS: Makefile
-
html: $(HTMLPAGES)
diff --git a/docs/libcurl/symbols-in-versions b/docs/libcurl/symbols-in-versions
index 4021c7607..b8b0838b0 100644
--- a/docs/libcurl/symbols-in-versions
+++ b/docs/libcurl/symbols-in-versions
@@ -118,7 +118,6 @@ CURLE_SSL_CRL_BADFILE 7.19.0
CURLE_SSL_ENGINE_INITFAILED 7.12.3
CURLE_SSL_ENGINE_NOTFOUND 7.9.3
CURLE_SSL_ENGINE_SETFAILED 7.9.3
-CURLE_SSL_INVALIDCERTSTATUS 7.41.0
CURLE_SSL_ISSUER_ERROR 7.19.0
CURLE_SSL_PEER_CERTIFICATE 7.8 7.17.1
CURLE_SSL_PINNEDPUBKEYNOTMATCH 7.39.0
@@ -284,8 +283,6 @@ CURLMOPT_MAX_TOTAL_CONNECTIONS 7.30.0
CURLMOPT_PIPELINING 7.16.0
CURLMOPT_PIPELINING_SERVER_BL 7.30.0
CURLMOPT_PIPELINING_SITE_BL 7.30.0
-CURLMOPT_PUSHDATA 7.44.0
-CURLMOPT_PUSHFUNCTION 7.44.0
CURLMOPT_SOCKETDATA 7.15.4
CURLMOPT_SOCKETFUNCTION 7.15.4
CURLMOPT_TIMERDATA 7.16.0
@@ -433,9 +430,7 @@ CURLOPT_PASSWDDATA 7.4.2 7.11.1 7.15.5
CURLOPT_PASSWDFUNCTION 7.4.2 7.11.1 7.15.5
CURLOPT_PASSWORD 7.19.1
CURLOPT_PASV_HOST 7.12.1 7.16.0 7.15.5
-CURLOPT_PATH_AS_IS 7.42.0
CURLOPT_PINNEDPUBLICKEY 7.39.0
-CURLOPT_PIPEWAIT 7.43.0
CURLOPT_PORT 7.1
CURLOPT_POST 7.1
CURLOPT_POST301 7.17.1 7.19.1
@@ -457,7 +452,6 @@ CURLOPT_PROXYPORT 7.1
CURLOPT_PROXYTYPE 7.10
CURLOPT_PROXYUSERNAME 7.19.1
CURLOPT_PROXYUSERPWD 7.1
-CURLOPT_PROXY_SERVICE_NAME 7.43.0
CURLOPT_PROXY_TRANSFER_MODE 7.18.0
CURLOPT_PUT 7.1
CURLOPT_QUOTE 7.1
@@ -481,7 +475,6 @@ CURLOPT_SASL_IR 7.31.0
CURLOPT_SEEKDATA 7.18.0
CURLOPT_SEEKFUNCTION 7.18.0
CURLOPT_SERVER_RESPONSE_TIMEOUT 7.20.0
-CURLOPT_SERVICE_NAME 7.43.0
CURLOPT_SHARE 7.10
CURLOPT_SOCKOPTDATA 7.16.0
CURLOPT_SOCKOPTFUNCTION 7.16.0
@@ -516,12 +509,10 @@ CURLOPT_SSL_CTX_DATA 7.10.6
CURLOPT_SSL_CTX_FUNCTION 7.10.6
CURLOPT_SSL_ENABLE_ALPN 7.36.0
CURLOPT_SSL_ENABLE_NPN 7.36.0
-CURLOPT_SSL_FALSESTART 7.42.0
CURLOPT_SSL_OPTIONS 7.25.0
CURLOPT_SSL_SESSIONID_CACHE 7.16.0
CURLOPT_SSL_VERIFYHOST 7.8.1
CURLOPT_SSL_VERIFYPEER 7.4.2
-CURLOPT_SSL_VERIFYSTATUS 7.41.0
CURLOPT_STDERR 7.1
CURLOPT_TCP_KEEPALIVE 7.25.0
CURLOPT_TCP_KEEPIDLE 7.25.0
@@ -561,9 +552,6 @@ CURLPAUSE_RECV 7.18.0
CURLPAUSE_RECV_CONT 7.18.0
CURLPAUSE_SEND 7.18.0
CURLPAUSE_SEND_CONT 7.18.0
-CURLPIPE_HTTP1 7.43.0
-CURLPIPE_MULTIPLEX 7.43.0
-CURLPIPE_NOTHING 7.43.0
CURLPROTO_ALL 7.19.4
CURLPROTO_DICT 7.19.4
CURLPROTO_FILE 7.19.4
@@ -633,7 +621,6 @@ CURLSSLBACKEND_POLARSSL 7.34.0
CURLSSLBACKEND_QSOSSL 7.34.0 - 7.38.1
CURLSSLBACKEND_SCHANNEL 7.34.0
CURLSSLOPT_ALLOW_BEAST 7.25.0
-CURLSSLOPT_NO_REVOKE 7.44.0
CURLUSESSL_ALL 7.17.0
CURLUSESSL_CONTROL 7.17.0
CURLUSESSL_NONE 7.17.0
@@ -674,7 +661,6 @@ CURL_GLOBAL_WIN32 7.8.1
CURL_HTTP_VERSION_1_0 7.9.1
CURL_HTTP_VERSION_1_1 7.9.1
CURL_HTTP_VERSION_2_0 7.33.0
-CURL_HTTP_VERSION_2 7.43.0
CURL_HTTP_VERSION_NONE 7.9.1
CURL_IPRESOLVE_V4 7.10.8
CURL_IPRESOLVE_V6 7.10.8
@@ -705,8 +691,6 @@ CURL_POLL_OUT 7.14.0
CURL_POLL_REMOVE 7.14.0
CURL_PROGRESS_BAR 7.1.1 - 7.4.1
CURL_PROGRESS_STATS 7.1.1 - 7.4.1
-CURL_PUSH_DENY 7.44.0
-CURL_PUSH_OK 7.44.0
CURL_READFUNC_ABORT 7.12.1
CURL_READFUNC_PAUSE 7.18.0
CURL_REDIR_GET_ALL 7.19.1
diff --git a/docs/libcurl/symbols.pl b/docs/libcurl/symbols.pl
index a7b76e239..d1ff7a656 100755
--- a/docs/libcurl/symbols.pl
+++ b/docs/libcurl/symbols.pl
@@ -24,7 +24,7 @@
# Experience has shown that the symbols-in-versions file is very useful to
# applications that want to build with a wide range of libcurl versions.
# It is however easy to get it wrong and the source gets a bit messy with all
-# the fixed numerical comparisons.
+# the fixed numerical comparisions.
#
# The point of this script is to provide an easy-to-use macro for libcurl-
# using applications to do preprocessor checks for specific libcurl defines,
@@ -71,7 +71,7 @@ while(<F>) {
my $dep;
# is there removed info?
- if($vers =~ /([\d.]+)[ \t-]+([\d.-]+)[ \t]+([\d.]+)/) {
+ if($vers =~ /([\d.]+)[ \t-]+([\d.]+)[ \t]+([\d.]+)/) {
($intr, $dep, $rm)=($1, $2, $3);
}
# is it a dep-only line?
diff --git a/docs/mk-ca-bundle.html b/docs/mk-ca-bundle.html
index 89b9b1212..0c633de3f 100644
--- a/docs/mk-ca-bundle.html
+++ b/docs/mk-ca-bundle.html
@@ -4,20 +4,15 @@
<title>mk-ca-bundle man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -75,7 +70,6 @@ p.roffit {
<p class="level1">Valid purposes are:
<p class="level2">ALL, DIGITAL_SIGNATURE, NON_REPUDIATION, KEY_ENCIPHERMENT, DATA_ENCIPHERMENT, KEY_AGREEMENT, KEY_CERT_SIGN, CRL_SIGN, SERVER_AUTH (default), CLIENT_AUTH, CODE_SIGNING, EMAIL_PROTECTION, IPSEC_END_SYSTEM, IPSEC_TUNNEL, IPSEC_USER, TIME_STAMPING, STEP_UP_APPROVED
<p class="level1">
-<p class="level0"><a name=""></a><span class="nroffip"></span>
<p class="level1">Valid trust levels are:
<p class="level2">ALL, TRUSTED_DELEGATOR (default), NOT_TRUSTED, MUST_VERIFY_TRUST, TRUSTED
<p class="level1">
@@ -94,9 +88,9 @@ p.roffit {
<p class="level0"><a name="-v"></a><span class="nroffip">-v</span>
<p class="level1">be verbose and print out processed CAs <a name="EXIT"></a><h2 class="nroffsh">EXIT STATUS</h2>
<p class="level0">Returns 0 on success. Returns 1 if it fails to download data. <a name="CERTDATA"></a><h2 class="nroffsh">CERTDATA FORMAT</h2>
-<p class="level0">The file format used by Mozilla for this trust information seems to be documented here: <pre class="level0">
-<a href="http://p11-glue.freedesktop.org/doc/storing-trust-policy/storing-trust-existing.html">http://p11-glue.freedesktop.org/doc/storing-trust-policy/storing-trust-existing.html</a>
-</pre>
+<p class="level0">The file format used by Mozilla for this trust information seems to be documented here: <pre>
+<p class="level0"><a href="http://p11-glue.freedesktop.org/doc/storing-trust-policy/storing-trust-existing.html">http://p11-glue.freedesktop.org/doc/storing-trust-policy/storing-trust-existing.html</a>
+ </pre>
<p class="level0"><a name="SEE"></a><h2 class="nroffsh">SEE ALSO</h2>
<p class="level0"><span Class="manpage">curl (1)</span> <a name="HISTORY"></a><h2 class="nroffsh">HISTORY</h2>
diff --git a/docs/mk-ca-bundle.pdf b/docs/mk-ca-bundle.pdf
index 483aa8c4e..fbd4b36c1 100644
--- a/docs/mk-ca-bundle.pdf
+++ b/docs/mk-ca-bundle.pdf
Binary files differ
diff --git a/include/Makefile.in b/include/Makefile.in
index bce5fa6a6..1b6b48f6f 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = include
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -171,7 +162,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -255,7 +245,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -308,7 +298,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -325,6 +314,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -402,6 +392,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign include/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -696,8 +687,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/include/curl/Makefile.in b/include/curl/Makefile.in
index b71496e9c..1087121e8 100644
--- a/include/curl/Makefile.in
+++ b/include/curl/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -15,17 +15,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,9 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = include/curl
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(srcdir)/curlbuild.h.in $(top_srcdir)/mkinstalldirs \
+ $(pkginclude_HEADERS)
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,9 +101,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(pkginclude_HEADERS) \
- $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h curlbuild.h
CONFIG_CLEAN_FILES =
CONFIG_CLEAN_VPATH_FILES =
@@ -182,7 +173,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/curlbuild.h.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
pkgincludedir = $(includedir)/curl
ACLOCAL = @ACLOCAL@
@@ -242,7 +232,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -295,7 +285,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -312,6 +301,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -430,6 +420,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/curl/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign include/curl/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -689,8 +680,6 @@ uninstall-am: uninstall-pkgincludeHEADERS
mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \
uninstall-am uninstall-pkgincludeHEADERS
-.PRECIOUS: Makefile
-
checksrc:
@@PERL@ $(top_srcdir)/lib/checksrc.pl -Wcurlbuild.h -D$(top_srcdir)/include/curl $(pkginclude_HEADERS) $(EXTRA_DIST)
diff --git a/include/curl/curl.h b/include/curl/curl.h
index 64f926142..44b1b7e39 100644
--- a/include/curl/curl.h
+++ b/include/curl/curl.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -523,7 +523,6 @@ typedef enum {
session will be queued */
CURLE_SSL_PINNEDPUBKEYNOTMATCH, /* 90 - specified pinned public key did not
match */
- CURLE_SSL_INVALIDCERTSTATUS, /* 91 - invalid certificate status */
CURL_LAST /* never use! */
} CURLcode;
@@ -725,10 +724,6 @@ typedef enum {
servers, a user can this way allow the vulnerability back. */
#define CURLSSLOPT_ALLOW_BEAST (1<<0)
-/* - NO_REVOKE tells libcurl to disable certificate revocation checks for those
- SSL backends where such behavior is present. */
-#define CURLSSLOPT_NO_REVOKE (1<<1)
-
#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all
the obsolete stuff removed! */
@@ -850,7 +845,7 @@ typedef enum {
CINIT(WRITEDATA, OBJECTPOINT, 1),
/* The full URL to get/put */
- CINIT(URL, OBJECTPOINT, 2),
+ CINIT(URL, OBJECTPOINT, 2),
/* Port number to connect to, if other than default. */
CINIT(PORT, LONG, 3),
@@ -1627,24 +1622,6 @@ typedef enum {
/* Path to Unix domain socket */
CINIT(UNIX_SOCKET_PATH, OBJECTPOINT, 231),
- /* Set if we should verify the certificate status. */
- CINIT(SSL_VERIFYSTATUS, LONG, 232),
-
- /* Set if we should enable TLS false start. */
- CINIT(SSL_FALSESTART, LONG, 233),
-
- /* Do not squash dot-dot sequences */
- CINIT(PATH_AS_IS, LONG, 234),
-
- /* Proxy Service Name */
- CINIT(PROXY_SERVICE_NAME, OBJECTPOINT, 235),
-
- /* Service Name */
- CINIT(SERVICE_NAME, OBJECTPOINT, 236),
-
- /* Wait/don't wait for pipe/mutex to clarify */
- CINIT(PIPEWAIT, LONG, 237),
-
CURLOPT_LASTENTRY /* the last unused */
} CURLoption;
@@ -1699,11 +1676,6 @@ enum {
CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */
};
-/* Convenience definition simple because the name of the version is HTTP/2 and
- not 2.0. The 2_0 version of the enum name was set while the version was
- still planned to be 2.0 and we stick to it for compatibility. */
-#define CURL_HTTP_VERSION_2 CURL_HTTP_VERSION_2_0
-
/*
* Public API enums for RTSP requests
*/
diff --git a/include/curl/curlver.h b/include/curl/curlver.h
index 43455a950..ccdafc1de 100644
--- a/include/curl/curlver.h
+++ b/include/curl/curlver.h
@@ -30,12 +30,12 @@
/* This is the version number of the libcurl package from which this header
file origins: */
-#define LIBCURL_VERSION "7.44.0"
+#define LIBCURL_VERSION "7.40.0"
/* The numeric version number is also available "in parts" by using these
defines: */
#define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 44
+#define LIBCURL_VERSION_MINOR 40
#define LIBCURL_VERSION_PATCH 0
/* This is the numeric version of the libcurl version number, meant for easier
@@ -52,12 +52,8 @@
This 6-digit (24 bits) hexadecimal number does not show pre-release number,
and it is always a greater number in a more recent release. It makes
comparisons with greater than and less than work.
-
- Note: This define is the full hex number and _does not_ use the
- CURL_VERSION_BITS() macro since curl's own configure script greps for it
- and needs it to contain the full number.
*/
-#define LIBCURL_VERSION_NUM 0x072c00
+#define LIBCURL_VERSION_NUM 0x072800
/*
* This is the date and time when the full source package was created. The
@@ -68,10 +64,6 @@
*
* "Mon Feb 12 11:35:33 UTC 2007"
*/
-#define LIBCURL_TIMESTAMP "Wed Aug 12 06:10:30 UTC 2015"
-
-#define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|z)
-#define CURL_AT_LEAST_VERSION(x,y,z) \
- (LIBCURL_VERSION_NUM >= CURL_VERSION_BITS(x, y, z))
+#define LIBCURL_TIMESTAMP "Thu Jan 8 08:17:17 UTC 2015"
#endif /* __CURL_CURLVER_H */
diff --git a/include/curl/mprintf.h b/include/curl/mprintf.h
index c6b0d7679..cc9e7f5d1 100644
--- a/include/curl/mprintf.h
+++ b/include/curl/mprintf.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -57,8 +57,15 @@ CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
# undef vaprintf
# define printf curl_mprintf
# define fprintf curl_mfprintf
+#ifdef CURLDEBUG
+/* When built with CURLDEBUG we define away the sprintf functions since we
+ don't want internal code to be using them */
+# define sprintf sprintf_was_used
+# define vsprintf vsprintf_was_used
+#else
# define sprintf curl_msprintf
# define vsprintf curl_mvsprintf
+#endif
# define snprintf curl_msnprintf
# define vprintf curl_mvprintf
# define vfprintf curl_mvfprintf
diff --git a/include/curl/multi.h b/include/curl/multi.h
index 36e2e940e..3c4acb0f6 100644
--- a/include/curl/multi.h
+++ b/include/curl/multi.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -74,11 +74,6 @@ typedef enum {
curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */
#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM
-/* bitmask bits for CURLMOPT_PIPELINING */
-#define CURLPIPE_NOTHING 0L
-#define CURLPIPE_HTTP1 1L
-#define CURLPIPE_MULTIPLEX 2L
-
typedef enum {
CURLMSG_NONE, /* first, not used */
CURLMSG_DONE, /* This easy handle has completed. 'result' contains
@@ -370,12 +365,6 @@ typedef enum {
/* maximum number of open connections in total */
CINIT(MAX_TOTAL_CONNECTIONS, LONG, 13),
- /* This is the server push callback function pointer */
- CINIT(PUSHFUNCTION, FUNCTIONPOINT, 14),
-
- /* This is the argument passed to the server push callback */
- CINIT(PUSHDATA, OBJECTPOINT, 15),
-
CURLMOPT_LASTENTRY /* the last unused */
} CURLMoption;
@@ -403,31 +392,6 @@ CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
curl_socket_t sockfd, void *sockp);
-
-/*
- * Name: curl_push_callback
- *
- * Desc: This callback gets called when a new stream is being pushed by the
- * server. It approves or denies the new stream.
- *
- * Returns: CURL_PUSH_OK or CURL_PUSH_DENY.
- */
-#define CURL_PUSH_OK 0
-#define CURL_PUSH_DENY 1
-
-struct curl_pushheaders; /* forward declaration only */
-
-CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h,
- size_t num);
-CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h,
- const char *name);
-
-typedef int (*curl_push_callback)(CURL *parent,
- CURL *easy,
- size_t num_headers,
- struct curl_pushheaders *headers,
- void *userp);
-
#ifdef __cplusplus
} /* end of extern "C" */
#endif
diff --git a/include/curl/typecheck-gcc.h b/include/curl/typecheck-gcc.h
index 13fb0fa9e..69d41a20d 100644
--- a/include/curl/typecheck-gcc.h
+++ b/include/curl/typecheck-gcc.h
@@ -270,8 +270,6 @@ _CURL_WARNING(_curl_easy_getinfo_err_curl_slist,
(option) == CURLOPT_DNS_LOCAL_IP4 || \
(option) == CURLOPT_DNS_LOCAL_IP6 || \
(option) == CURLOPT_LOGIN_OPTIONS || \
- (option) == CURLOPT_PROXY_SERVICE_NAME || \
- (option) == CURLOPT_SERVICE_NAME || \
0)
/* evaluates to true if option takes a curl_write_callback argument */
diff --git a/install-sh b/install-sh
index 0b0fdcbba..377bb8687 100755
--- a/install-sh
+++ b/install-sh
@@ -1,7 +1,7 @@
#!/bin/sh
# install - install a program, script, or datafile
-scriptversion=2013-12-25.23; # UTC
+scriptversion=2011-11-20.07; # UTC
# This originates from X11R5 (mit/util/scripts/install.sh), which was
# later released in X11R6 (xc/config/util/install.sh) with the
@@ -41,15 +41,19 @@ scriptversion=2013-12-25.23; # UTC
# This script is compatible with the BSD install script, but was written
# from scratch.
-tab=' '
nl='
'
-IFS=" $tab$nl"
+IFS=" "" $nl"
-# Set DOITPROG to "echo" to test this script.
+# set DOITPROG to echo to test this script
+# Don't use :- since 4.3BSD and earlier shells don't like it.
doit=${DOITPROG-}
-doit_exec=${doit:-exec}
+if test -z "$doit"; then
+ doit_exec=exec
+else
+ doit_exec=$doit
+fi
# Put in absolute file names if you don't have them in your path;
# or use environment vars.
@@ -64,6 +68,17 @@ mvprog=${MVPROG-mv}
rmprog=${RMPROG-rm}
stripprog=${STRIPPROG-strip}
+posix_glob='?'
+initialize_posix_glob='
+ test "$posix_glob" != "?" || {
+ if (set -f) 2>/dev/null; then
+ posix_glob=
+ else
+ posix_glob=:
+ fi
+ }
+'
+
posix_mkdir=
# Desired mode of installed file.
@@ -82,7 +97,7 @@ dir_arg=
dst_arg=
copy_on_change=false
-is_target_a_directory=possibly
+no_target_directory=
usage="\
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
@@ -122,57 +137,46 @@ while test $# -ne 0; do
-d) dir_arg=true;;
-g) chgrpcmd="$chgrpprog $2"
- shift;;
+ shift;;
--help) echo "$usage"; exit $?;;
-m) mode=$2
- case $mode in
- *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
- echo "$0: invalid mode: $mode" >&2
- exit 1;;
- esac
- shift;;
+ case $mode in
+ *' '* | *' '* | *'
+'* | *'*'* | *'?'* | *'['*)
+ echo "$0: invalid mode: $mode" >&2
+ exit 1;;
+ esac
+ shift;;
-o) chowncmd="$chownprog $2"
- shift;;
+ shift;;
-s) stripcmd=$stripprog;;
- -t)
- is_target_a_directory=always
- dst_arg=$2
- # Protect names problematic for 'test' and other utilities.
- case $dst_arg in
- -* | [=\(\)!]) dst_arg=./$dst_arg;;
- esac
- shift;;
+ -t) dst_arg=$2
+ # Protect names problematic for 'test' and other utilities.
+ case $dst_arg in
+ -* | [=\(\)!]) dst_arg=./$dst_arg;;
+ esac
+ shift;;
- -T) is_target_a_directory=never;;
+ -T) no_target_directory=true;;
--version) echo "$0 $scriptversion"; exit $?;;
- --) shift
- break;;
+ --) shift
+ break;;
- -*) echo "$0: invalid option: $1" >&2
- exit 1;;
+ -*) echo "$0: invalid option: $1" >&2
+ exit 1;;
*) break;;
esac
shift
done
-# We allow the use of options -d and -T together, by making -d
-# take the precedence; this is for compatibility with GNU install.
-
-if test -n "$dir_arg"; then
- if test -n "$dst_arg"; then
- echo "$0: target directory not allowed when installing a directory." >&2
- exit 1
- fi
-fi
-
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
# When -d is used, all remaining arguments are directories to create.
# When -t is used, the destination is already specified.
@@ -204,15 +208,6 @@ if test $# -eq 0; then
fi
if test -z "$dir_arg"; then
- if test $# -gt 1 || test "$is_target_a_directory" = always; then
- if test ! -d "$dst_arg"; then
- echo "$0: $dst_arg: Is not a directory." >&2
- exit 1
- fi
- fi
-fi
-
-if test -z "$dir_arg"; then
do_exit='(exit $ret); exit $ret'
trap "ret=129; $do_exit" 1
trap "ret=130; $do_exit" 2
@@ -228,16 +223,16 @@ if test -z "$dir_arg"; then
*[0-7])
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw='% 200'
+ u_plus_rw='% 200'
fi
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
*)
if test -z "$stripcmd"; then
- u_plus_rw=
+ u_plus_rw=
else
- u_plus_rw=,u+rw
+ u_plus_rw=,u+rw
fi
cp_umask=$mode$u_plus_rw;;
esac
@@ -274,15 +269,41 @@ do
# If destination is a directory, append the input filename; won't work
# if double slashes aren't ignored.
if test -d "$dst"; then
- if test "$is_target_a_directory" = never; then
- echo "$0: $dst_arg: Is a directory" >&2
- exit 1
+ if test -n "$no_target_directory"; then
+ echo "$0: $dst_arg: Is a directory" >&2
+ exit 1
fi
dstdir=$dst
dst=$dstdir/`basename "$src"`
dstdir_status=0
else
- dstdir=`dirname "$dst"`
+ # Prefer dirname, but fall back on a substitute if dirname fails.
+ dstdir=`
+ (dirname "$dst") 2>/dev/null ||
+ expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$dst" : 'X\(//\)[^/]' \| \
+ X"$dst" : 'X\(//\)$' \| \
+ X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+ echo X"$dst" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'
+ `
+
test -d "$dstdir"
dstdir_status=$?
fi
@@ -293,74 +314,74 @@ do
if test $dstdir_status != 0; then
case $posix_mkdir in
'')
- # Create intermediate dirs using mode 755 as modified by the umask.
- # This is like FreeBSD 'install' as of 1997-10-28.
- umask=`umask`
- case $stripcmd.$umask in
- # Optimize common cases.
- *[2367][2367]) mkdir_umask=$umask;;
- .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
-
- *[0-7])
- mkdir_umask=`expr $umask + 22 \
- - $umask % 100 % 40 + $umask % 20 \
- - $umask % 10 % 4 + $umask % 2
- `;;
- *) mkdir_umask=$umask,go-w;;
- esac
-
- # With -d, create the new directory with the user-specified mode.
- # Otherwise, rely on $mkdir_umask.
- if test -n "$dir_arg"; then
- mkdir_mode=-m$mode
- else
- mkdir_mode=
- fi
-
- posix_mkdir=false
- case $umask in
- *[123567][0-7][0-7])
- # POSIX mkdir -p sets u+wx bits regardless of umask, which
- # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
- ;;
- *)
- tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
- trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
-
- if (umask $mkdir_umask &&
- exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
- then
- if test -z "$dir_arg" || {
- # Check for POSIX incompatibilities with -m.
- # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
- # other-writable bit of parent directory when it shouldn't.
- # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
- ls_ld_tmpdir=`ls -ld "$tmpdir"`
- case $ls_ld_tmpdir in
- d????-?r-*) different_mode=700;;
- d????-?--*) different_mode=755;;
- *) false;;
- esac &&
- $mkdirprog -m$different_mode -p -- "$tmpdir" && {
- ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
- test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
- }
- }
- then posix_mkdir=:
- fi
- rmdir "$tmpdir/d" "$tmpdir"
- else
- # Remove any dirs left behind by ancient mkdir implementations.
- rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
- fi
- trap '' 0;;
- esac;;
+ # Create intermediate dirs using mode 755 as modified by the umask.
+ # This is like FreeBSD 'install' as of 1997-10-28.
+ umask=`umask`
+ case $stripcmd.$umask in
+ # Optimize common cases.
+ *[2367][2367]) mkdir_umask=$umask;;
+ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+ *[0-7])
+ mkdir_umask=`expr $umask + 22 \
+ - $umask % 100 % 40 + $umask % 20 \
+ - $umask % 10 % 4 + $umask % 2
+ `;;
+ *) mkdir_umask=$umask,go-w;;
+ esac
+
+ # With -d, create the new directory with the user-specified mode.
+ # Otherwise, rely on $mkdir_umask.
+ if test -n "$dir_arg"; then
+ mkdir_mode=-m$mode
+ else
+ mkdir_mode=
+ fi
+
+ posix_mkdir=false
+ case $umask in
+ *[123567][0-7][0-7])
+ # POSIX mkdir -p sets u+wx bits regardless of umask, which
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ if (umask $mkdir_umask &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/d" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
esac
if
$posix_mkdir && (
- umask $mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+ umask $mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
)
then :
else
@@ -370,51 +391,53 @@ do
# directory the slow way, step by step, checking for races as we go.
case $dstdir in
- /*) prefix='/';;
- [-=\(\)!]*) prefix='./';;
- *) prefix='';;
+ /*) prefix='/';;
+ [-=\(\)!]*) prefix='./';;
+ *) prefix='';;
esac
+ eval "$initialize_posix_glob"
+
oIFS=$IFS
IFS=/
- set -f
+ $posix_glob set -f
set fnord $dstdir
shift
- set +f
+ $posix_glob set +f
IFS=$oIFS
prefixes=
for d
do
- test X"$d" = X && continue
-
- prefix=$prefix$d
- if test -d "$prefix"; then
- prefixes=
- else
- if $posix_mkdir; then
- (umask=$mkdir_umask &&
- $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
- # Don't fail if two instances are running concurrently.
- test -d "$prefix" || exit 1
- else
- case $prefix in
- *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
- *) qprefix=$prefix;;
- esac
- prefixes="$prefixes '$qprefix'"
- fi
- fi
- prefix=$prefix/
+ test X"$d" = X && continue
+
+ prefix=$prefix$d
+ if test -d "$prefix"; then
+ prefixes=
+ else
+ if $posix_mkdir; then
+ (umask=$mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+ # Don't fail if two instances are running concurrently.
+ test -d "$prefix" || exit 1
+ else
+ case $prefix in
+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) qprefix=$prefix;;
+ esac
+ prefixes="$prefixes '$qprefix'"
+ fi
+ fi
+ prefix=$prefix/
done
if test -n "$prefixes"; then
- # Don't fail if two instances are running concurrently.
- (umask $mkdir_umask &&
- eval "\$doit_exec \$mkdirprog $prefixes") ||
- test -d "$dstdir" || exit 1
- obsolete_mkdir_used=true
+ # Don't fail if two instances are running concurrently.
+ (umask $mkdir_umask &&
+ eval "\$doit_exec \$mkdirprog $prefixes") ||
+ test -d "$dstdir" || exit 1
+ obsolete_mkdir_used=true
fi
fi
fi
@@ -449,12 +472,15 @@ do
# If -C, don't bother to copy if it wouldn't change the file.
if $copy_on_change &&
- old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
- new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
- set -f &&
+ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
+ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+
+ eval "$initialize_posix_glob" &&
+ $posix_glob set -f &&
set X $old && old=:$2:$4:$5:$6 &&
set X $new && new=:$2:$4:$5:$6 &&
- set +f &&
+ $posix_glob set +f &&
+
test "$old" = "$new" &&
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
then
@@ -467,24 +493,24 @@ do
# to itself, or perhaps because mv is so ancient that it does not
# support -f.
{
- # Now remove or move aside any old file at destination location.
- # We try this two ways since rm can't unlink itself on some
- # systems and the destination file might be busy for other
- # reasons. In this case, the final cleanup might fail but the new
- # file should still install successfully.
- {
- test ! -f "$dst" ||
- $doit $rmcmd -f "$dst" 2>/dev/null ||
- { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
- { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
- } ||
- { echo "$0: cannot unlink or rename $dst" >&2
- (exit 1); exit 1
- }
- } &&
-
- # Now rename the file to the real destination.
- $doit $mvcmd "$dsttmp" "$dst"
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ test ! -f "$dst" ||
+ $doit $rmcmd -f "$dst" 2>/dev/null ||
+ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+ } ||
+ { echo "$0: cannot unlink or rename $dst" >&2
+ (exit 1); exit 1
+ }
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dst"
}
fi || exit 1
diff --git a/lib/CMakeLists.txt b/lib/CMakeLists.txt
index 49a340938..e7886ac55 100644
--- a/lib/CMakeLists.txt
+++ b/lib/CMakeLists.txt
@@ -98,7 +98,4 @@ if(WIN32)
endif()
endif()
-install(TARGETS ${LIB_NAME}
- ARCHIVE DESTINATION lib
- LIBRARY DESTINATION lib
- RUNTIME DESTINATION bin)
+install(TARGETS ${LIB_NAME} DESTINATION lib)
diff --git a/lib/Makefile.Watcom b/lib/Makefile.Watcom
index 0b7ba59c2..14f5ac844 100644
--- a/lib/Makefile.Watcom
+++ b/lib/Makefile.Watcom
@@ -101,7 +101,7 @@ ZLIB_ROOT = ../../zlib-1.2.8
!ifdef %libssh2_root
LIBSSH2_ROOT = $(%libssh2_root)
!else
-LIBSSH2_ROOT = ../../libssh2-1.5.0
+LIBSSH2_ROOT = ../../libssh2-1.4.3
!endif
!ifdef %librtmp_root
@@ -113,7 +113,7 @@ LIBRTMP_ROOT = ../../rtmpdump-2.3
!ifdef %openssl_root
OPENSSL_ROOT = $(%openssl_root)
!else
-OPENSSL_ROOT = ../../openssl-1.0.2a
+OPENSSL_ROOT = ../../openssl-0.9.8zc
!endif
!ifdef %ares_root
diff --git a/lib/Makefile.am b/lib/Makefile.am
index ef8d124e7..6dffbd9c9 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2013, 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
@@ -21,6 +21,10 @@
###########################################################################
AUTOMAKE_OPTIONS = foreign nostdinc
+DOCS = README.encoding README.memoryleak README.ares README.curlx \
+ README.hostip README.multi_socket README.httpauth README.pipelining \
+ README.curl_off_t README.pingpong
+
CMAKE_DIST = CMakeLists.txt curl_config.h.cmake
EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 config-win32.h \
@@ -28,9 +32,9 @@ EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 config-win32.h \
makefile.dj config-dos.h libcurl.plist libcurl.rc config-amigaos.h \
makefile.amiga Makefile.netware nwlib.c nwos.c config-win32ce.h \
config-os400.h setup-os400.h config-symbian.h Makefile.Watcom \
- config-tpf.h mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST) \
+ config-tpf.h $(DOCS) mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST) \
firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl \
- objnames-test08.sh objnames-test10.sh objnames.inc checksrc.whitelist
+ objnames-test08.sh objnames-test10.sh objnames.inc
lib_LTLIBRARIES = libcurl.la
@@ -80,9 +84,9 @@ if SONAME_BUMP
#
# This conditional soname bump SHOULD be removed at next "proper" bump.
#
-VERSIONINFO=-version-info 9:0:4
+VERSIONINFO=-version-info 8:0:3
else
-VERSIONINFO=-version-info 8:0:4
+VERSIONINFO=-version-info 7:0:3
endif
# This flag accepts an argument of the form current[:revision[:age]]. So,
diff --git a/lib/Makefile.b32 b/lib/Makefile.b32
index 37c264871..b9531fdf4 100644
--- a/lib/Makefile.b32
+++ b/lib/Makefile.b32
@@ -27,7 +27,7 @@ ZLIB_PATH = ..\..\zlib-1.2.8
# Edit the path below to point to the base of your OpenSSL package.
!ifndef OPENSSL_PATH
-OPENSSL_PATH = ..\..\openssl-1.0.2a
+OPENSSL_PATH = ..\..\openssl-0.9.8zc
!endif
# Set libcurl static lib, dll and import lib
@@ -74,7 +74,7 @@ LINKLIB = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
# SSL support is enabled setting WITH_SSL=1
!ifdef WITH_SSL
-DEFINES = $(DEFINES) -DUSE_OPENSSL
+DEFINES = $(DEFINES) -DUSE_SSLEAY
INCDIRS = $(INCDIRS);$(OPENSSL_PATH)\inc32;$(OPENSSL_PATH)\inc32\openssl
LINKLIB = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\libeay32.lib
!endif
diff --git a/lib/Makefile.in b/lib/Makefile.in
index 27bfd1015..5947cf0b5 100644
--- a/lib/Makefile.in
+++ b/lib/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -21,7 +21,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -37,17 +37,7 @@
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -120,6 +110,10 @@ host_triplet = @host@
@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_6 = -DCURL_STATICLIB
@DOING_CURL_SYMBOL_HIDING_TRUE@am__append_7 = -DCURL_HIDDEN_SYMBOLS
@DOING_CURL_SYMBOL_HIDING_TRUE@am__append_8 = $(CFLAG_CURL_SYMBOL_HIDING)
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(srcdir)/curl_config.h.in \
+ $(top_srcdir)/mkinstalldirs $(srcdir)/libcurl.vers.in \
+ $(top_srcdir)/depcomp
subdir = lib
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
@@ -141,8 +135,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = curl_config.h $(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES = libcurl.vers
CONFIG_CLEAN_VPATH_FILES =
@@ -219,19 +212,19 @@ am__objects_1 = libcurl_la-file.lo libcurl_la-timeval.lo \
libcurl_la-curl_ntlm_wb.lo libcurl_la-curl_ntlm_core.lo \
libcurl_la-curl_ntlm_msgs.lo libcurl_la-curl_sasl.lo \
libcurl_la-curl_multibyte.lo libcurl_la-hostcheck.lo \
- libcurl_la-conncache.lo libcurl_la-pipeline.lo \
- libcurl_la-dotdot.lo libcurl_la-x509asn1.lo \
- libcurl_la-http2.lo libcurl_la-curl_sasl_sspi.lo \
- libcurl_la-smb.lo libcurl_la-curl_sasl_gssapi.lo \
- libcurl_la-curl_endian.lo libcurl_la-curl_des.lo
+ libcurl_la-bundles.lo libcurl_la-conncache.lo \
+ libcurl_la-pipeline.lo libcurl_la-dotdot.lo \
+ libcurl_la-x509asn1.lo libcurl_la-http2.lo \
+ libcurl_la-curl_sasl_sspi.lo libcurl_la-smb.lo \
+ libcurl_la-curl_sasl_gssapi.lo libcurl_la-curl_endian.lo
am__dirstamp = $(am__leading_dot)dirstamp
am__objects_2 = vtls/libcurl_la-openssl.lo vtls/libcurl_la-gtls.lo \
vtls/libcurl_la-vtls.lo vtls/libcurl_la-nss.lo \
vtls/libcurl_la-polarssl.lo \
vtls/libcurl_la-polarssl_threadlock.lo \
vtls/libcurl_la-axtls.lo vtls/libcurl_la-cyassl.lo \
- vtls/libcurl_la-schannel.lo vtls/libcurl_la-darwinssl.lo \
- vtls/libcurl_la-gskit.lo
+ vtls/libcurl_la-curl_schannel.lo \
+ vtls/libcurl_la-curl_darwinssl.lo vtls/libcurl_la-gskit.lo
am__objects_3 = $(am__objects_1) $(am__objects_2)
am__objects_4 =
am__objects_5 = $(am__objects_4) $(am__objects_4)
@@ -289,19 +282,19 @@ am__objects_6 = libcurlu_la-file.lo libcurlu_la-timeval.lo \
libcurlu_la-curl_ntlm.lo libcurlu_la-curl_ntlm_wb.lo \
libcurlu_la-curl_ntlm_core.lo libcurlu_la-curl_ntlm_msgs.lo \
libcurlu_la-curl_sasl.lo libcurlu_la-curl_multibyte.lo \
- libcurlu_la-hostcheck.lo libcurlu_la-conncache.lo \
- libcurlu_la-pipeline.lo libcurlu_la-dotdot.lo \
- libcurlu_la-x509asn1.lo libcurlu_la-http2.lo \
- libcurlu_la-curl_sasl_sspi.lo libcurlu_la-smb.lo \
- libcurlu_la-curl_sasl_gssapi.lo libcurlu_la-curl_endian.lo \
- libcurlu_la-curl_des.lo
+ libcurlu_la-hostcheck.lo libcurlu_la-bundles.lo \
+ libcurlu_la-conncache.lo libcurlu_la-pipeline.lo \
+ libcurlu_la-dotdot.lo libcurlu_la-x509asn1.lo \
+ libcurlu_la-http2.lo libcurlu_la-curl_sasl_sspi.lo \
+ libcurlu_la-smb.lo libcurlu_la-curl_sasl_gssapi.lo \
+ libcurlu_la-curl_endian.lo
am__objects_7 = vtls/libcurlu_la-openssl.lo vtls/libcurlu_la-gtls.lo \
vtls/libcurlu_la-vtls.lo vtls/libcurlu_la-nss.lo \
vtls/libcurlu_la-polarssl.lo \
vtls/libcurlu_la-polarssl_threadlock.lo \
vtls/libcurlu_la-axtls.lo vtls/libcurlu_la-cyassl.lo \
- vtls/libcurlu_la-schannel.lo vtls/libcurlu_la-darwinssl.lo \
- vtls/libcurlu_la-gskit.lo
+ vtls/libcurlu_la-curl_schannel.lo \
+ vtls/libcurlu_la-curl_darwinssl.lo vtls/libcurlu_la-gskit.lo
am__objects_8 = $(am__objects_6) $(am__objects_7)
am_libcurlu_la_OBJECTS = $(am__objects_8) $(am__objects_5)
libcurlu_la_OBJECTS = $(am_libcurlu_la_OBJECTS)
@@ -370,9 +363,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(srcdir)/curl_config.h.in $(srcdir)/libcurl.vers.in \
- $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -433,7 +423,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -488,7 +478,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -505,6 +494,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -572,7 +562,7 @@ top_srcdir = @top_srcdir@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2013, 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
@@ -587,15 +577,19 @@ top_srcdir = @top_srcdir@
#
###########################################################################
AUTOMAKE_OPTIONS = foreign nostdinc
+DOCS = README.encoding README.memoryleak README.ares README.curlx \
+ README.hostip README.multi_socket README.httpauth README.pipelining \
+ README.curl_off_t README.pingpong
+
CMAKE_DIST = CMakeLists.txt curl_config.h.cmake
EXTRA_DIST = Makefile.b32 Makefile.m32 Makefile.vc6 config-win32.h \
config-win32ce.h config-riscos.h config-mac.h curl_config.h.in \
makefile.dj config-dos.h libcurl.plist libcurl.rc config-amigaos.h \
makefile.amiga Makefile.netware nwlib.c nwos.c config-win32ce.h \
config-os400.h setup-os400.h config-symbian.h Makefile.Watcom \
- config-tpf.h mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST) \
+ config-tpf.h $(DOCS) mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST) \
firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl \
- objnames-test08.sh objnames-test10.sh objnames.inc checksrc.whitelist
+ objnames-test08.sh objnames-test10.sh objnames.inc
lib_LTLIBRARIES = libcurl.la
@BUILD_UNITTESTS_FALSE@noinst_LTLIBRARIES =
@@ -629,7 +623,7 @@ lib_LTLIBRARIES = libcurl.la
AM_CPPFLAGS = -I$(top_builddir)/include/curl -I$(top_builddir)/include \
-I$(top_srcdir)/include -I$(top_builddir)/lib \
-I$(top_srcdir)/lib $(am__append_1) -DBUILDING_LIBCURL
-@SONAME_BUMP_FALSE@VERSIONINFO = -version-info 8:0:4
+@SONAME_BUMP_FALSE@VERSIONINFO = -version-info 7:0:3
#
# Bumping of SONAME conditionally may seem like a weird thing to do, and yeah
@@ -640,7 +634,7 @@ AM_CPPFLAGS = -I$(top_builddir)/include/curl -I$(top_builddir)/include \
#
# This conditional soname bump SHOULD be removed at next "proper" bump.
#
-@SONAME_BUMP_TRUE@VERSIONINFO = -version-info 9:0:4
+@SONAME_BUMP_TRUE@VERSIONINFO = -version-info 8:0:3
AM_LDFLAGS =
AM_CFLAGS =
libcurl_la_CPPFLAGS_EXTRA = $(am__append_6) $(am__append_7)
@@ -655,11 +649,11 @@ libcurlu_la_LDFLAGS = $(AM_LDFLAGS) -static $(LIBCURL_LIBS)
libcurlu_la_CFLAGS = $(AM_CFLAGS)
LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \
vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c \
- vtls/cyassl.c vtls/schannel.c vtls/darwinssl.c vtls/gskit.c
+ vtls/cyassl.c vtls/curl_schannel.c vtls/curl_darwinssl.c vtls/gskit.c
LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h \
vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h \
- vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h
+ vtls/cyassl.h vtls/curl_schannel.h vtls/curl_darwinssl.h vtls/gskit.h
LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
@@ -677,9 +671,8 @@ LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
http_negotiate_sspi.c http_proxy.c non-ascii.c asyn-ares.c \
asyn-thread.c curl_gssapi.c curl_ntlm.c curl_ntlm_wb.c \
curl_ntlm_core.c curl_ntlm_msgs.c curl_sasl.c curl_multibyte.c \
- hostcheck.c conncache.c pipeline.c dotdot.c x509asn1.c \
- http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c \
- curl_des.c
+ hostcheck.c bundles.c conncache.c pipeline.c dotdot.c x509asn1.c \
+ http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c
LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h if2ip.h \
@@ -695,10 +688,9 @@ LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
rtsp.h curl_threads.h warnless.h curl_hmac.h curl_rtmp.h \
curl_gethostname.h gopher.h http_proxy.h non-ascii.h asyn.h \
curl_ntlm.h curl_gssapi.h curl_ntlm_wb.h curl_ntlm_core.h \
- curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h \
+ curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h bundles.h \
conncache.h curl_setup_once.h multihandle.h setup-vms.h pipeline.h \
- dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h curl_des.h \
- curl_printf.h
+ dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h
LIB_RCFILES = libcurl.rc
CSOURCES = $(LIB_CFILES) $(LIB_VTLS_CFILES)
@@ -724,6 +716,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign lib/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign lib/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -732,7 +725,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -827,9 +820,9 @@ vtls/libcurl_la-axtls.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
vtls/libcurl_la-cyassl.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
-vtls/libcurl_la-schannel.lo: vtls/$(am__dirstamp) \
+vtls/libcurl_la-curl_schannel.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
-vtls/libcurl_la-darwinssl.lo: vtls/$(am__dirstamp) \
+vtls/libcurl_la-curl_darwinssl.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
vtls/libcurl_la-gskit.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
@@ -852,9 +845,9 @@ vtls/libcurlu_la-axtls.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
vtls/libcurlu_la-cyassl.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
-vtls/libcurlu_la-schannel.lo: vtls/$(am__dirstamp) \
+vtls/libcurlu_la-curl_schannel.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
-vtls/libcurlu_la-darwinssl.lo: vtls/$(am__dirstamp) \
+vtls/libcurlu_la-curl_darwinssl.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
vtls/libcurlu_la-gskit.lo: vtls/$(am__dirstamp) \
vtls/$(DEPDIR)/$(am__dirstamp)
@@ -874,12 +867,12 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-asyn-ares.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-asyn-thread.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-base64.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-bundles.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-conncache.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-connect.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-content_encoding.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-cookie.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-curl_addrinfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-curl_des.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-curl_endian.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-curl_fnmatch.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurl_la-curl_gethostname.Plo@am__quote@
@@ -978,12 +971,12 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-asyn-ares.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-asyn-thread.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-base64.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-bundles.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-conncache.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-connect.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-content_encoding.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-cookie.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-curl_addrinfo.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-curl_des.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-curl_endian.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-curl_fnmatch.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-curl_gethostname.Plo@am__quote@
@@ -1079,26 +1072,26 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-wildcard.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcurlu_la-x509asn1.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-axtls.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-curl_darwinssl.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-curl_schannel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-cyassl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-darwinssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-gskit.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-gtls.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-nss.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-openssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-polarssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-polarssl_threadlock.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-schannel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurl_la-vtls.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-axtls.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-curl_darwinssl.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-curl_schannel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-cyassl.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-darwinssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-gskit.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-gtls.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-nss.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-openssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-polarssl.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-polarssl_threadlock.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-schannel.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@vtls/$(DEPDIR)/libcurlu_la-vtls.Plo@am__quote@
.c.o:
@@ -1783,6 +1776,13 @@ libcurl_la-hostcheck.lo: hostcheck.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o libcurl_la-hostcheck.lo `test -f 'hostcheck.c' || echo '$(srcdir)/'`hostcheck.c
+libcurl_la-bundles.lo: bundles.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT libcurl_la-bundles.lo -MD -MP -MF $(DEPDIR)/libcurl_la-bundles.Tpo -c -o libcurl_la-bundles.lo `test -f 'bundles.c' || echo '$(srcdir)/'`bundles.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurl_la-bundles.Tpo $(DEPDIR)/libcurl_la-bundles.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bundles.c' object='libcurl_la-bundles.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o libcurl_la-bundles.lo `test -f 'bundles.c' || echo '$(srcdir)/'`bundles.c
+
libcurl_la-conncache.lo: conncache.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT libcurl_la-conncache.lo -MD -MP -MF $(DEPDIR)/libcurl_la-conncache.Tpo -c -o libcurl_la-conncache.lo `test -f 'conncache.c' || echo '$(srcdir)/'`conncache.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurl_la-conncache.Tpo $(DEPDIR)/libcurl_la-conncache.Plo
@@ -1846,13 +1846,6 @@ libcurl_la-curl_endian.lo: curl_endian.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o libcurl_la-curl_endian.lo `test -f 'curl_endian.c' || echo '$(srcdir)/'`curl_endian.c
-libcurl_la-curl_des.lo: curl_des.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT libcurl_la-curl_des.lo -MD -MP -MF $(DEPDIR)/libcurl_la-curl_des.Tpo -c -o libcurl_la-curl_des.lo `test -f 'curl_des.c' || echo '$(srcdir)/'`curl_des.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurl_la-curl_des.Tpo $(DEPDIR)/libcurl_la-curl_des.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='curl_des.c' object='libcurl_la-curl_des.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o libcurl_la-curl_des.lo `test -f 'curl_des.c' || echo '$(srcdir)/'`curl_des.c
-
vtls/libcurl_la-openssl.lo: vtls/openssl.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-openssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-openssl.Tpo -c -o vtls/libcurl_la-openssl.lo `test -f 'vtls/openssl.c' || echo '$(srcdir)/'`vtls/openssl.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurl_la-openssl.Tpo vtls/$(DEPDIR)/libcurl_la-openssl.Plo
@@ -1909,19 +1902,19 @@ vtls/libcurl_la-cyassl.lo: vtls/cyassl.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurl_la-cyassl.lo `test -f 'vtls/cyassl.c' || echo '$(srcdir)/'`vtls/cyassl.c
-vtls/libcurl_la-schannel.lo: vtls/schannel.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-schannel.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-schannel.Tpo -c -o vtls/libcurl_la-schannel.lo `test -f 'vtls/schannel.c' || echo '$(srcdir)/'`vtls/schannel.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurl_la-schannel.Tpo vtls/$(DEPDIR)/libcurl_la-schannel.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/schannel.c' object='vtls/libcurl_la-schannel.lo' libtool=yes @AMDEPBACKSLASH@
+vtls/libcurl_la-curl_schannel.lo: vtls/curl_schannel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-curl_schannel.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-curl_schannel.Tpo -c -o vtls/libcurl_la-curl_schannel.lo `test -f 'vtls/curl_schannel.c' || echo '$(srcdir)/'`vtls/curl_schannel.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurl_la-curl_schannel.Tpo vtls/$(DEPDIR)/libcurl_la-curl_schannel.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/curl_schannel.c' object='vtls/libcurl_la-curl_schannel.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurl_la-schannel.lo `test -f 'vtls/schannel.c' || echo '$(srcdir)/'`vtls/schannel.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurl_la-curl_schannel.lo `test -f 'vtls/curl_schannel.c' || echo '$(srcdir)/'`vtls/curl_schannel.c
-vtls/libcurl_la-darwinssl.lo: vtls/darwinssl.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-darwinssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-darwinssl.Tpo -c -o vtls/libcurl_la-darwinssl.lo `test -f 'vtls/darwinssl.c' || echo '$(srcdir)/'`vtls/darwinssl.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurl_la-darwinssl.Tpo vtls/$(DEPDIR)/libcurl_la-darwinssl.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/darwinssl.c' object='vtls/libcurl_la-darwinssl.lo' libtool=yes @AMDEPBACKSLASH@
+vtls/libcurl_la-curl_darwinssl.lo: vtls/curl_darwinssl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-curl_darwinssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-curl_darwinssl.Tpo -c -o vtls/libcurl_la-curl_darwinssl.lo `test -f 'vtls/curl_darwinssl.c' || echo '$(srcdir)/'`vtls/curl_darwinssl.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurl_la-curl_darwinssl.Tpo vtls/$(DEPDIR)/libcurl_la-curl_darwinssl.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/curl_darwinssl.c' object='vtls/libcurl_la-curl_darwinssl.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurl_la-darwinssl.lo `test -f 'vtls/darwinssl.c' || echo '$(srcdir)/'`vtls/darwinssl.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurl_la-curl_darwinssl.lo `test -f 'vtls/curl_darwinssl.c' || echo '$(srcdir)/'`vtls/curl_darwinssl.c
vtls/libcurl_la-gskit.lo: vtls/gskit.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurl_la_CPPFLAGS) $(CPPFLAGS) $(libcurl_la_CFLAGS) $(CFLAGS) -MT vtls/libcurl_la-gskit.lo -MD -MP -MF vtls/$(DEPDIR)/libcurl_la-gskit.Tpo -c -o vtls/libcurl_la-gskit.lo `test -f 'vtls/gskit.c' || echo '$(srcdir)/'`vtls/gskit.c
@@ -2588,6 +2581,13 @@ libcurlu_la-hostcheck.lo: hostcheck.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o libcurlu_la-hostcheck.lo `test -f 'hostcheck.c' || echo '$(srcdir)/'`hostcheck.c
+libcurlu_la-bundles.lo: bundles.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT libcurlu_la-bundles.lo -MD -MP -MF $(DEPDIR)/libcurlu_la-bundles.Tpo -c -o libcurlu_la-bundles.lo `test -f 'bundles.c' || echo '$(srcdir)/'`bundles.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurlu_la-bundles.Tpo $(DEPDIR)/libcurlu_la-bundles.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='bundles.c' object='libcurlu_la-bundles.lo' libtool=yes @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o libcurlu_la-bundles.lo `test -f 'bundles.c' || echo '$(srcdir)/'`bundles.c
+
libcurlu_la-conncache.lo: conncache.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT libcurlu_la-conncache.lo -MD -MP -MF $(DEPDIR)/libcurlu_la-conncache.Tpo -c -o libcurlu_la-conncache.lo `test -f 'conncache.c' || echo '$(srcdir)/'`conncache.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurlu_la-conncache.Tpo $(DEPDIR)/libcurlu_la-conncache.Plo
@@ -2651,13 +2651,6 @@ libcurlu_la-curl_endian.lo: curl_endian.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o libcurlu_la-curl_endian.lo `test -f 'curl_endian.c' || echo '$(srcdir)/'`curl_endian.c
-libcurlu_la-curl_des.lo: curl_des.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT libcurlu_la-curl_des.lo -MD -MP -MF $(DEPDIR)/libcurlu_la-curl_des.Tpo -c -o libcurlu_la-curl_des.lo `test -f 'curl_des.c' || echo '$(srcdir)/'`curl_des.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libcurlu_la-curl_des.Tpo $(DEPDIR)/libcurlu_la-curl_des.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='curl_des.c' object='libcurlu_la-curl_des.lo' libtool=yes @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o libcurlu_la-curl_des.lo `test -f 'curl_des.c' || echo '$(srcdir)/'`curl_des.c
-
vtls/libcurlu_la-openssl.lo: vtls/openssl.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-openssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-openssl.Tpo -c -o vtls/libcurlu_la-openssl.lo `test -f 'vtls/openssl.c' || echo '$(srcdir)/'`vtls/openssl.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurlu_la-openssl.Tpo vtls/$(DEPDIR)/libcurlu_la-openssl.Plo
@@ -2714,19 +2707,19 @@ vtls/libcurlu_la-cyassl.lo: vtls/cyassl.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurlu_la-cyassl.lo `test -f 'vtls/cyassl.c' || echo '$(srcdir)/'`vtls/cyassl.c
-vtls/libcurlu_la-schannel.lo: vtls/schannel.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-schannel.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-schannel.Tpo -c -o vtls/libcurlu_la-schannel.lo `test -f 'vtls/schannel.c' || echo '$(srcdir)/'`vtls/schannel.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurlu_la-schannel.Tpo vtls/$(DEPDIR)/libcurlu_la-schannel.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/schannel.c' object='vtls/libcurlu_la-schannel.lo' libtool=yes @AMDEPBACKSLASH@
+vtls/libcurlu_la-curl_schannel.lo: vtls/curl_schannel.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-curl_schannel.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-curl_schannel.Tpo -c -o vtls/libcurlu_la-curl_schannel.lo `test -f 'vtls/curl_schannel.c' || echo '$(srcdir)/'`vtls/curl_schannel.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurlu_la-curl_schannel.Tpo vtls/$(DEPDIR)/libcurlu_la-curl_schannel.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/curl_schannel.c' object='vtls/libcurlu_la-curl_schannel.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurlu_la-schannel.lo `test -f 'vtls/schannel.c' || echo '$(srcdir)/'`vtls/schannel.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurlu_la-curl_schannel.lo `test -f 'vtls/curl_schannel.c' || echo '$(srcdir)/'`vtls/curl_schannel.c
-vtls/libcurlu_la-darwinssl.lo: vtls/darwinssl.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-darwinssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-darwinssl.Tpo -c -o vtls/libcurlu_la-darwinssl.lo `test -f 'vtls/darwinssl.c' || echo '$(srcdir)/'`vtls/darwinssl.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurlu_la-darwinssl.Tpo vtls/$(DEPDIR)/libcurlu_la-darwinssl.Plo
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/darwinssl.c' object='vtls/libcurlu_la-darwinssl.lo' libtool=yes @AMDEPBACKSLASH@
+vtls/libcurlu_la-curl_darwinssl.lo: vtls/curl_darwinssl.c
+@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-curl_darwinssl.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-curl_darwinssl.Tpo -c -o vtls/libcurlu_la-curl_darwinssl.lo `test -f 'vtls/curl_darwinssl.c' || echo '$(srcdir)/'`vtls/curl_darwinssl.c
+@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) vtls/$(DEPDIR)/libcurlu_la-curl_darwinssl.Tpo vtls/$(DEPDIR)/libcurlu_la-curl_darwinssl.Plo
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='vtls/curl_darwinssl.c' object='vtls/libcurlu_la-curl_darwinssl.lo' libtool=yes @AMDEPBACKSLASH@
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurlu_la-darwinssl.lo `test -f 'vtls/darwinssl.c' || echo '$(srcdir)/'`vtls/darwinssl.c
+@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -c -o vtls/libcurlu_la-curl_darwinssl.lo `test -f 'vtls/curl_darwinssl.c' || echo '$(srcdir)/'`vtls/curl_darwinssl.c
vtls/libcurlu_la-gskit.lo: vtls/gskit.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libcurlu_la_CPPFLAGS) $(CPPFLAGS) $(libcurlu_la_CFLAGS) $(CFLAGS) -MT vtls/libcurlu_la-gskit.lo -MD -MP -MF vtls/$(DEPDIR)/libcurlu_la-gskit.Tpo -c -o vtls/libcurlu_la-gskit.lo `test -f 'vtls/gskit.c' || echo '$(srcdir)/'`vtls/gskit.c
@@ -2952,8 +2945,6 @@ uninstall-am: uninstall-libLTLIBRARIES
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am uninstall-libLTLIBRARIES
-.PRECIOUS: Makefile
-
checksrc:
@@PERL@ $(top_srcdir)/lib/checksrc.pl -D$(top_srcdir)/lib $(CSOURCES) $(HHEADERS)
diff --git a/lib/Makefile.inc b/lib/Makefile.inc
index d444a6b21..8f9d16d8b 100644
--- a/lib/Makefile.inc
+++ b/lib/Makefile.inc
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -22,11 +22,11 @@
LIB_VTLS_CFILES = vtls/openssl.c vtls/gtls.c vtls/vtls.c vtls/nss.c \
vtls/polarssl.c vtls/polarssl_threadlock.c vtls/axtls.c \
- vtls/cyassl.c vtls/schannel.c vtls/darwinssl.c vtls/gskit.c
+ vtls/cyassl.c vtls/curl_schannel.c vtls/curl_darwinssl.c vtls/gskit.c
LIB_VTLS_HFILES = vtls/openssl.h vtls/vtls.h vtls/gtls.h \
vtls/nssg.h vtls/polarssl.h vtls/polarssl_threadlock.h vtls/axtls.h \
- vtls/cyassl.h vtls/schannel.h vtls/darwinssl.h vtls/gskit.h
+ vtls/cyassl.h vtls/curl_schannel.h vtls/curl_darwinssl.h vtls/gskit.h
LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
cookie.c http.c sendf.c ftp.c url.c dict.c if2ip.c speedcheck.c \
@@ -44,9 +44,8 @@ LIB_CFILES = file.c timeval.c base64.c hostip.c progress.c formdata.c \
http_negotiate_sspi.c http_proxy.c non-ascii.c asyn-ares.c \
asyn-thread.c curl_gssapi.c curl_ntlm.c curl_ntlm_wb.c \
curl_ntlm_core.c curl_ntlm_msgs.c curl_sasl.c curl_multibyte.c \
- hostcheck.c conncache.c pipeline.c dotdot.c x509asn1.c \
- http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c \
- curl_des.c
+ hostcheck.c bundles.c conncache.c pipeline.c dotdot.c x509asn1.c \
+ http2.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c curl_endian.c
LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
formdata.h cookie.h http.h sendf.h ftp.h url.h dict.h if2ip.h \
@@ -62,10 +61,9 @@ LIB_HFILES = arpa_telnet.h netrc.h file.h timeval.h hostip.h progress.h \
rtsp.h curl_threads.h warnless.h curl_hmac.h curl_rtmp.h \
curl_gethostname.h gopher.h http_proxy.h non-ascii.h asyn.h \
curl_ntlm.h curl_gssapi.h curl_ntlm_wb.h curl_ntlm_core.h \
- curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h \
+ curl_ntlm_msgs.h curl_sasl.h curl_multibyte.h hostcheck.h bundles.h \
conncache.h curl_setup_once.h multihandle.h setup-vms.h pipeline.h \
- dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h curl_des.h \
- curl_printf.h
+ dotdot.h x509asn1.h http2.h sigpipe.h smb.h curl_endian.h
LIB_RCFILES = libcurl.rc
diff --git a/lib/Makefile.m32 b/lib/Makefile.m32
index 736e600f5..f3673c5a3 100644
--- a/lib/Makefile.m32
+++ b/lib/Makefile.m32
@@ -1,7 +1,7 @@
###########################################################################
#
## Makefile for building libcurl.a with MingW (GCC-3.2 or later)
-## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4)
+## and optionally OpenSSL (0.9.8), libssh2 (1.3), zlib (1.2.5), librtmp (2.3)
##
## Usage: mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...]
## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-sspi-winidn
@@ -18,23 +18,23 @@ ZLIB_PATH = ../../zlib-1.2.8
endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your librtmp package.
ifndef LIBRTMP_PATH
-LIBRTMP_PATH = ../../librtmp-2.4
+LIBRTMP_PATH = ../../librtmp-2.3
endif
# Edit the path below to point to the base of your libidn package.
ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.32
+LIBIDN_PATH = ../../libidn-1.18
endif
# Edit the path below to point to the base of your MS IDN package.
# Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1
-# https://www.microsoft.com/en-us/download/details.aspx?id=734
+# http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ad6158d7-ddba-416a-9109-07607425a815
ifndef WINIDN_PATH
WINIDN_PATH = ../../Microsoft IDN Mitigation APIs
endif
@@ -44,7 +44,7 @@ LDAP_SDK = c:/novell/ndk/cldapsdk/win32
endif
# Edit the path below to point to the base of your nghttp2 package.
ifndef NGHTTP2_PATH
-NGHTTP2_PATH = ../../nghttp2-1.0.0
+NGHTTP2_PATH = ../../nghttp2-0.6.7
endif
PROOT = ..
@@ -55,10 +55,10 @@ LIBCARES_PATH = $(PROOT)/ares
endif
CC = $(CROSSPREFIX)gcc
-CFLAGS = $(CURL_CFLAG_EXTRAS) -g -O2 -Wall
+CFLAGS = -g -O2 -Wall
CFLAGS += -fno-strict-aliasing
# comment LDFLAGS below to keep debug info
-LDFLAGS = $(CURL_LDFLAG_EXTRAS) -s
+LDFLAGS = -s
AR = $(CROSSPREFIX)ar
RANLIB = $(CROSSPREFIX)ranlib
RC = $(CROSSPREFIX)windres
@@ -75,12 +75,10 @@ endif
endif
ifeq ($(ARCH),w64)
-CFLAGS += -m64 -D_AMD64_
-LDFLAGS += -m64
+CFLAGS += -D_AMD64_
RCFLAGS += -F pe-x86-64
else
CFLAGS += -m32
-LDFLAGS += -m32
RCFLAGS += -F pe-i386
endif
@@ -216,17 +214,14 @@ ifdef SSL
OPENSSL_LIBS = -lcrypto -lssl
endif
endif
- ifndef DYN
- OPENSSL_LIBS += -lgdi32 -lcrypt32
- endif
INCLUDES += -I"$(OPENSSL_INCLUDE)"
- CFLAGS += -DUSE_OPENSSL -DHAVE_OPENSSL_ENGINE_H -DHAVE_OPENSSL_PKCS12_H \
+ CFLAGS += -DUSE_SSLEAY -DUSE_OPENSSL -DHAVE_OPENSSL_ENGINE_H -DHAVE_OPENSSL_PKCS12_H \
-DHAVE_ENGINE_LOAD_BUILTIN_ENGINES -DOPENSSL_NO_KRB5 \
-DCURL_WANTS_CA_BUNDLE_ENV
DLL_LIBS += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
ifdef SRP
ifeq "$(wildcard $(OPENSSL_INCLUDE)/openssl/srp.h)" "$(OPENSSL_INCLUDE)/openssl/srp.h"
- CFLAGS += -DHAVE_OPENSSL_SRP -DUSE_TLS_SRP
+ CFLAGS += -DHAVE_SSLEAY_SRP -DUSE_TLS_SRP
endif
endif
endif
@@ -328,3 +323,5 @@ $(PROOT)/include/curl/curlbuild.h:
$(LIBCARES_PATH)/libcares.a:
$(MAKE) -C $(LIBCARES_PATH) -f Makefile.m32
+
+
diff --git a/lib/Makefile.netware b/lib/Makefile.netware
index 5a955f889..802959ce9 100644
--- a/lib/Makefile.netware
+++ b/lib/Makefile.netware
@@ -19,12 +19,12 @@ endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your axTLS package.
@@ -214,11 +214,6 @@ WITH_SSL =
else
ifeq ($(findstring -ssl,$(CFG)),-ssl)
WITH_SSL = 1
-ifeq ($(findstring -srp,$(CFG)),-srp)
-ifeq "$(wildcard $(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)/openssl/srp.h)" "$(OPENSSL_PATH)/outinc_nw_$(LIBARCH_L)/openssl/srp.h"
-WITH_SRP = 1
-endif
-endif
endif
endif
ifeq ($(findstring -zlib,$(CFG)),-zlib)
@@ -643,10 +638,6 @@ ifdef WITH_SSL
@echo $(DL)#define HAVE_LIBSSL 1$(DL) >> $@
@echo $(DL)#define HAVE_LIBCRYPTO 1$(DL) >> $@
@echo $(DL)#define OPENSSL_NO_KRB5 1$(DL) >> $@
-ifdef WITH_SRP
- @echo $(DL)#define HAVE_SSLEAY_SRP 1$(DL) >> $@
- @echo $(DL)#define USE_TLS_SRP 1$(DL) >> $@
-endif
ifdef WITH_SPNEGO
@echo $(DL)#define HAVE_SPNEGO 1$(DL) >> $@
endif
@@ -699,11 +690,6 @@ ifdef WITH_SSL
else
@echo SSL support: no
endif
-ifdef WITH_SRP
- @echo SRP support: enabled
-else
- @echo SRP support: no
-endif
ifdef WITH_SSH2
@echo SSH2 support: enabled (libssh2)
else
diff --git a/lib/Makefile.vc10 b/lib/Makefile.vc10
index 987e01edb..461e4f74c 100644
--- a/lib/Makefile.vc10
+++ b/lib/Makefile.vc10
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -65,11 +65,11 @@
!INCLUDE ..\winbuild\Makefile.msvc.names
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
!ENDIF
!IFNDEF ZLIB_PATH
@@ -90,7 +90,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -105,7 +105,7 @@ WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
CCNODBG = cl.exe /O2 /DNDEBUG
CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
+CFLAGSSSL = /DUSE_SSLEAY /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSWINSSL = /DUSE_SCHANNEL
CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
@@ -427,7 +427,7 @@ CFGSET = TRUE
TARGET = $(LIBCURL_DYN_LIB_DBG)
DIROBJ = $(CFG)
LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
+CC = $(CCDEBUG) $(RTLIBD)
CFGSET = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF
@@ -528,12 +528,13 @@ X_OBJS= \
$(DIROBJ)\asyn-thread.obj \
$(DIROBJ)\axtls.obj \
$(DIROBJ)\base64.obj \
+ $(DIROBJ)\bundles.obj \
$(DIROBJ)\conncache.obj \
$(DIROBJ)\connect.obj \
$(DIROBJ)\content_encoding.obj \
$(DIROBJ)\cookie.obj \
$(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
+ $(DIROBJ)\curl_darwinssl.obj \
$(DIROBJ)\curl_endian.obj \
$(DIROBJ)\curl_fnmatch.obj \
$(DIROBJ)\curl_gethostname.obj \
@@ -548,10 +549,10 @@ X_OBJS= \
$(DIROBJ)\curl_sasl.obj \
$(DIROBJ)\curl_sasl_gssapi.obj \
$(DIROBJ)\curl_sasl_sspi.obj \
+ $(DIROBJ)\curl_schannel.obj \
$(DIROBJ)\curl_sspi.obj \
$(DIROBJ)\curl_threads.obj \
$(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
$(DIROBJ)\dict.obj \
$(DIROBJ)\dotdot.obj \
$(DIROBJ)\easy.obj \
@@ -606,7 +607,6 @@ X_OBJS= \
$(DIROBJ)\progress.obj \
$(DIROBJ)\rawstr.obj \
$(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
$(DIROBJ)\security.obj \
$(DIROBJ)\select.obj \
$(DIROBJ)\sendf.obj \
diff --git a/lib/Makefile.vc11 b/lib/Makefile.vc11
deleted file mode 100644
index d1bf34a33..000000000
--- a/lib/Makefile.vc11
+++ /dev/null
@@ -1,677 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-library.
-
-###########################################################################
-#
-# Makefile for building libcurl with MSVC11
-#
-# Usage: see usage message below
-# Should be invoked from \lib directory
-# Edit the paths and desired library name
-# SSL path is only required if you intend compiling
-# with SSL.
-#
-# This make file leaves the result either a .lib or .dll file
-# in the \lib directory. It should be called from the \lib
-# directory.
-#
-# An option would have been to allow the source directory to
-# be specified, but I saw no requirement.
-#
-# Another option would have been to leave the .lib and .dll
-# files in the "cfg" directory, but then the make file
-# in \src would need to be changed.
-#
-##############################################################
-
-# ----------------------------------------------
-# Verify that current subdir is libcurl's 'lib'
-# ----------------------------------------------
-
-!IF ! EXIST(.\curl_addrinfo.c)
-! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory.
-! MESSAGE Change to libcurl's 'lib' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC11 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-#############################################################
-## Nothing more to do below this line!
-
-CCNODBG = cl.exe /O2 /DNDEBUG
-CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGSWINSSL = /DUSE_SCHANNEL
-CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
-CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-CFLAGS = /I. /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-CFLAGSLIB = /DCURL_STATICLIB
-LNKDLL = link.exe /DLL
-LNKLIB = link.exe /lib
-LFLAGS = /nologo /machine:$(MACHINE)
-SSLLIBS = libeay32.lib ssleay32.lib
-ZLIBLIBSDLL = zdll.lib
-ZLIBLIBS = zlib.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-CFLAGS = $(CFLAGS)
-
-CFGSET = FALSE
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-!IFDEF USE_IPV6
-CFLAGS = $(CFLAGS) /DUSE_IPV6
-!ENDIF
-
-!IFDEF USE_IDN
-CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES
-!ENDIF
-
-##############################################################
-# Runtime library configuration
-
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-
-######################
-# release
-
-!IF "$(CFG)" == "release"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl
-
-!IF "$(CFG)" == "release-ssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl
-
-!IF "$(CFG)" == "release-winssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib
-
-!IF "$(CFG)" == "release-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl-zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "release-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll
-
-!IF "$(CFG)" == "release-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib-dll
-
-!IF "$(CFG)" == "release-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-dll
-
-!IF "$(CFG)" == "release-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug
-
-!IF "$(CFG)" == "debug"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl
-
-!IF "$(CFG)" == "debug-ssl"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib
-
-!IF "$(CFG)" == "debug-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-zlib
-
-!IF "$(CFG)" == "debug-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "debug-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll
-
-!IF "$(CFG)" == "debug-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib-dll
-
-!IF "$(CFG)" == "debug-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-dll
-
-!IF "$(CFG)" == "debug-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-#######################
-# Usage
-#
-!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
-!MESSAGE Usage: nmake /f makefile.vc11 CFG=<config> <target>
-!MESSAGE where <config> is one of:
-!MESSAGE release - release static library
-!MESSAGE release-ssl - release static library with ssl
-!MESSAGE release-zlib - release static library with zlib
-!MESSAGE release-ssl-zlib - release static library with ssl and zlib
-!MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib
-!MESSAGE release-ssl-dll - release static library with dynamic ssl
-!MESSAGE release-zlib-dll - release static library with dynamic zlib
-!MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
-!MESSAGE release-dll - release dynamic library
-!MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
-!MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
-!MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE debug - debug static library
-!MESSAGE debug-ssl - debug static library with ssl
-!MESSAGE debug-zlib - debug static library with zlib
-!MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
-!MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib
-!MESSAGE debug-ssl-dll - debug static library with dynamic ssl
-!MESSAGE debug-zlib-dll - debug static library with dynamic zlib
-!MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
-!MESSAGE debug-dll - debug dynamic library
-!MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
-!MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
-!MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE <target> can be left blank in which case all is assumed
-!ERROR please choose a valid configuration "$(CFG)"
-!ENDIF
-
-#######################
-# Only the clean target can be used if a config was not provided.
-#
-!IF "$(CFGSET)" == "FALSE"
-clean:
- @-erase /s *.dll 2> NUL
- @-erase /s *.exp 2> NUL
- @-erase /s *.idb 2> NUL
- @-erase /s *.lib 2> NUL
- @-erase /s *.obj 2> NUL
- @-erase /s *.pch 2> NUL
- @-erase /s *.pdb 2> NUL
- @-erase /s *.res 2> NUL
-!ELSE
-# A config was provided, so the library can be built.
-#
-X_OBJS= \
- $(DIROBJ)\amigaos.obj \
- $(DIROBJ)\asyn-ares.obj \
- $(DIROBJ)\asyn-thread.obj \
- $(DIROBJ)\axtls.obj \
- $(DIROBJ)\base64.obj \
- $(DIROBJ)\conncache.obj \
- $(DIROBJ)\connect.obj \
- $(DIROBJ)\content_encoding.obj \
- $(DIROBJ)\cookie.obj \
- $(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
- $(DIROBJ)\curl_endian.obj \
- $(DIROBJ)\curl_fnmatch.obj \
- $(DIROBJ)\curl_gethostname.obj \
- $(DIROBJ)\curl_gssapi.obj \
- $(DIROBJ)\curl_memrchr.obj \
- $(DIROBJ)\curl_multibyte.obj \
- $(DIROBJ)\curl_ntlm.obj \
- $(DIROBJ)\curl_ntlm_core.obj \
- $(DIROBJ)\curl_ntlm_msgs.obj \
- $(DIROBJ)\curl_ntlm_wb.obj \
- $(DIROBJ)\curl_rtmp.obj \
- $(DIROBJ)\curl_sasl.obj \
- $(DIROBJ)\curl_sasl_gssapi.obj \
- $(DIROBJ)\curl_sasl_sspi.obj \
- $(DIROBJ)\curl_sspi.obj \
- $(DIROBJ)\curl_threads.obj \
- $(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
- $(DIROBJ)\dict.obj \
- $(DIROBJ)\dotdot.obj \
- $(DIROBJ)\easy.obj \
- $(DIROBJ)\escape.obj \
- $(DIROBJ)\file.obj \
- $(DIROBJ)\fileinfo.obj \
- $(DIROBJ)\formdata.obj \
- $(DIROBJ)\ftp.obj \
- $(DIROBJ)\ftplistparser.obj \
- $(DIROBJ)\getenv.obj \
- $(DIROBJ)\getinfo.obj \
- $(DIROBJ)\gopher.obj \
- $(DIROBJ)\gtls.obj \
- $(DIROBJ)\hash.obj \
- $(DIROBJ)\hmac.obj \
- $(DIROBJ)\hostasyn.obj \
- $(DIROBJ)\hostcheck.obj \
- $(DIROBJ)\hostip.obj \
- $(DIROBJ)\hostip4.obj \
- $(DIROBJ)\hostip6.obj \
- $(DIROBJ)\hostsyn.obj \
- $(DIROBJ)\http.obj \
- $(DIROBJ)\http_chunks.obj \
- $(DIROBJ)\http_digest.obj \
- $(DIROBJ)\http_negotiate.obj \
- $(DIROBJ)\http_negotiate_sspi.obj \
- $(DIROBJ)\http_proxy.obj \
- $(DIROBJ)\idn_win32.obj \
- $(DIROBJ)\if2ip.obj \
- $(DIROBJ)\imap.obj \
- $(DIROBJ)\inet_ntop.obj \
- $(DIROBJ)\inet_pton.obj \
- $(DIROBJ)\krb5.obj \
- $(DIROBJ)\ldap.obj \
- $(DIROBJ)\llist.obj \
- $(DIROBJ)\md4.obj \
- $(DIROBJ)\md5.obj \
- $(DIROBJ)\memdebug.obj \
- $(DIROBJ)\mprintf.obj \
- $(DIROBJ)\multi.obj \
- $(DIROBJ)\netrc.obj \
- $(DIROBJ)\non-ascii.obj \
- $(DIROBJ)\nonblock.obj \
- $(DIROBJ)\nss.obj \
- $(DIROBJ)\openldap.obj \
- $(DIROBJ)\parsedate.obj \
- $(DIROBJ)\pingpong.obj \
- $(DIROBJ)\pipeline.obj \
- $(DIROBJ)\polarssl.obj \
- $(DIROBJ)\polarssl_threadlock.obj \
- $(DIROBJ)\pop3.obj \
- $(DIROBJ)\progress.obj \
- $(DIROBJ)\rawstr.obj \
- $(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
- $(DIROBJ)\security.obj \
- $(DIROBJ)\select.obj \
- $(DIROBJ)\sendf.obj \
- $(DIROBJ)\share.obj \
- $(DIROBJ)\slist.obj \
- $(DIROBJ)\smb.obj \
- $(DIROBJ)\smtp.obj \
- $(DIROBJ)\socks.obj \
- $(DIROBJ)\socks_gssapi.obj \
- $(DIROBJ)\socks_sspi.obj \
- $(DIROBJ)\speedcheck.obj \
- $(DIROBJ)\splay.obj \
- $(DIROBJ)\ssh.obj \
- $(DIROBJ)\vtls.obj \
- $(DIROBJ)\openssl.obj \
- $(DIROBJ)\strdup.obj \
- $(DIROBJ)\strequal.obj \
- $(DIROBJ)\strerror.obj \
- $(DIROBJ)\strtok.obj \
- $(DIROBJ)\strtoofft.obj \
- $(DIROBJ)\telnet.obj \
- $(DIROBJ)\tftp.obj \
- $(DIROBJ)\timeval.obj \
- $(DIROBJ)\transfer.obj \
- $(DIROBJ)\url.obj \
- $(DIROBJ)\version.obj \
- $(DIROBJ)\warnless.obj \
- $(DIROBJ)\wildcard.obj \
- $(RESOURCE)
-
-all : $(TARGET)
-
-$(TARGET): $(X_OBJS)
- $(LNK) $(LFLAGS) $(X_OBJS)
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y
- -xcopy $(DIROBJ)\*.exp . /y
- -xcopy $(DIROBJ)\*.pdb . /y
-
-$(X_OBJS): $(DIROBJ)
-
-$(DIROBJ):
- @if not exist "$(DIROBJ)" mkdir $(DIROBJ)
-
-.SUFFIXES: .c .obj .res
-
-{.\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-{.\vtls\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-debug-dll\libcurl.res \
-debug-dll-ssl-dll\libcurl.res \
-debug-dll-zlib-dll\libcurl.res \
-debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
-release-dll\libcurl.res \
-release-dll-ssl-dll\libcurl.res \
-release-dll-zlib-dll\libcurl.res \
-release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-!ENDIF # End of case where a config was provided.
diff --git a/lib/Makefile.vc12 b/lib/Makefile.vc12
deleted file mode 100644
index 7590de455..000000000
--- a/lib/Makefile.vc12
+++ /dev/null
@@ -1,677 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-library.
-
-###########################################################################
-#
-# Makefile for building libcurl with MSVC12
-#
-# Usage: see usage message below
-# Should be invoked from \lib directory
-# Edit the paths and desired library name
-# SSL path is only required if you intend compiling
-# with SSL.
-#
-# This make file leaves the result either a .lib or .dll file
-# in the \lib directory. It should be called from the \lib
-# directory.
-#
-# An option would have been to allow the source directory to
-# be specified, but I saw no requirement.
-#
-# Another option would have been to leave the .lib and .dll
-# files in the "cfg" directory, but then the make file
-# in \src would need to be changed.
-#
-##############################################################
-
-# ----------------------------------------------
-# Verify that current subdir is libcurl's 'lib'
-# ----------------------------------------------
-
-!IF ! EXIST(.\curl_addrinfo.c)
-! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory.
-! MESSAGE Change to libcurl's 'lib' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC12 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-#############################################################
-## Nothing more to do below this line!
-
-CCNODBG = cl.exe /O2 /DNDEBUG
-CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGSWINSSL = /DUSE_SCHANNEL
-CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
-CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-CFLAGS = /I. /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-CFLAGSLIB = /DCURL_STATICLIB
-LNKDLL = link.exe /DLL
-LNKLIB = link.exe /lib
-LFLAGS = /nologo /machine:$(MACHINE)
-SSLLIBS = libeay32.lib ssleay32.lib
-ZLIBLIBSDLL = zdll.lib
-ZLIBLIBS = zlib.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-CFLAGS = $(CFLAGS)
-
-CFGSET = FALSE
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-!IFDEF USE_IPV6
-CFLAGS = $(CFLAGS) /DUSE_IPV6
-!ENDIF
-
-!IFDEF USE_IDN
-CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES
-!ENDIF
-
-##############################################################
-# Runtime library configuration
-
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-
-######################
-# release
-
-!IF "$(CFG)" == "release"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl
-
-!IF "$(CFG)" == "release-ssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl
-
-!IF "$(CFG)" == "release-winssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib
-
-!IF "$(CFG)" == "release-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl-zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "release-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll
-
-!IF "$(CFG)" == "release-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib-dll
-
-!IF "$(CFG)" == "release-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-dll
-
-!IF "$(CFG)" == "release-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug
-
-!IF "$(CFG)" == "debug"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl
-
-!IF "$(CFG)" == "debug-ssl"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib
-
-!IF "$(CFG)" == "debug-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-zlib
-
-!IF "$(CFG)" == "debug-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "debug-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll
-
-!IF "$(CFG)" == "debug-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib-dll
-
-!IF "$(CFG)" == "debug-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-dll
-
-!IF "$(CFG)" == "debug-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-#######################
-# Usage
-#
-!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
-!MESSAGE Usage: nmake /f makefile.vc12 CFG=<config> <target>
-!MESSAGE where <config> is one of:
-!MESSAGE release - release static library
-!MESSAGE release-ssl - release static library with ssl
-!MESSAGE release-zlib - release static library with zlib
-!MESSAGE release-ssl-zlib - release static library with ssl and zlib
-!MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib
-!MESSAGE release-ssl-dll - release static library with dynamic ssl
-!MESSAGE release-zlib-dll - release static library with dynamic zlib
-!MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
-!MESSAGE release-dll - release dynamic library
-!MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
-!MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
-!MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE debug - debug static library
-!MESSAGE debug-ssl - debug static library with ssl
-!MESSAGE debug-zlib - debug static library with zlib
-!MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
-!MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib
-!MESSAGE debug-ssl-dll - debug static library with dynamic ssl
-!MESSAGE debug-zlib-dll - debug static library with dynamic zlib
-!MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
-!MESSAGE debug-dll - debug dynamic library
-!MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
-!MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
-!MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE <target> can be left blank in which case all is assumed
-!ERROR please choose a valid configuration "$(CFG)"
-!ENDIF
-
-#######################
-# Only the clean target can be used if a config was not provided.
-#
-!IF "$(CFGSET)" == "FALSE"
-clean:
- @-erase /s *.dll 2> NUL
- @-erase /s *.exp 2> NUL
- @-erase /s *.idb 2> NUL
- @-erase /s *.lib 2> NUL
- @-erase /s *.obj 2> NUL
- @-erase /s *.pch 2> NUL
- @-erase /s *.pdb 2> NUL
- @-erase /s *.res 2> NUL
-!ELSE
-# A config was provided, so the library can be built.
-#
-X_OBJS= \
- $(DIROBJ)\amigaos.obj \
- $(DIROBJ)\asyn-ares.obj \
- $(DIROBJ)\asyn-thread.obj \
- $(DIROBJ)\axtls.obj \
- $(DIROBJ)\base64.obj \
- $(DIROBJ)\conncache.obj \
- $(DIROBJ)\connect.obj \
- $(DIROBJ)\content_encoding.obj \
- $(DIROBJ)\cookie.obj \
- $(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
- $(DIROBJ)\curl_endian.obj \
- $(DIROBJ)\curl_fnmatch.obj \
- $(DIROBJ)\curl_gethostname.obj \
- $(DIROBJ)\curl_gssapi.obj \
- $(DIROBJ)\curl_memrchr.obj \
- $(DIROBJ)\curl_multibyte.obj \
- $(DIROBJ)\curl_ntlm.obj \
- $(DIROBJ)\curl_ntlm_core.obj \
- $(DIROBJ)\curl_ntlm_msgs.obj \
- $(DIROBJ)\curl_ntlm_wb.obj \
- $(DIROBJ)\curl_rtmp.obj \
- $(DIROBJ)\curl_sasl.obj \
- $(DIROBJ)\curl_sasl_gssapi.obj \
- $(DIROBJ)\curl_sasl_sspi.obj \
- $(DIROBJ)\curl_sspi.obj \
- $(DIROBJ)\curl_threads.obj \
- $(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
- $(DIROBJ)\dict.obj \
- $(DIROBJ)\dotdot.obj \
- $(DIROBJ)\easy.obj \
- $(DIROBJ)\escape.obj \
- $(DIROBJ)\file.obj \
- $(DIROBJ)\fileinfo.obj \
- $(DIROBJ)\formdata.obj \
- $(DIROBJ)\ftp.obj \
- $(DIROBJ)\ftplistparser.obj \
- $(DIROBJ)\getenv.obj \
- $(DIROBJ)\getinfo.obj \
- $(DIROBJ)\gopher.obj \
- $(DIROBJ)\gtls.obj \
- $(DIROBJ)\hash.obj \
- $(DIROBJ)\hmac.obj \
- $(DIROBJ)\hostasyn.obj \
- $(DIROBJ)\hostcheck.obj \
- $(DIROBJ)\hostip.obj \
- $(DIROBJ)\hostip4.obj \
- $(DIROBJ)\hostip6.obj \
- $(DIROBJ)\hostsyn.obj \
- $(DIROBJ)\http.obj \
- $(DIROBJ)\http_chunks.obj \
- $(DIROBJ)\http_digest.obj \
- $(DIROBJ)\http_negotiate.obj \
- $(DIROBJ)\http_negotiate_sspi.obj \
- $(DIROBJ)\http_proxy.obj \
- $(DIROBJ)\idn_win32.obj \
- $(DIROBJ)\if2ip.obj \
- $(DIROBJ)\imap.obj \
- $(DIROBJ)\inet_ntop.obj \
- $(DIROBJ)\inet_pton.obj \
- $(DIROBJ)\krb5.obj \
- $(DIROBJ)\ldap.obj \
- $(DIROBJ)\llist.obj \
- $(DIROBJ)\md4.obj \
- $(DIROBJ)\md5.obj \
- $(DIROBJ)\memdebug.obj \
- $(DIROBJ)\mprintf.obj \
- $(DIROBJ)\multi.obj \
- $(DIROBJ)\netrc.obj \
- $(DIROBJ)\non-ascii.obj \
- $(DIROBJ)\nonblock.obj \
- $(DIROBJ)\nss.obj \
- $(DIROBJ)\openldap.obj \
- $(DIROBJ)\parsedate.obj \
- $(DIROBJ)\pingpong.obj \
- $(DIROBJ)\pipeline.obj \
- $(DIROBJ)\polarssl.obj \
- $(DIROBJ)\polarssl_threadlock.obj \
- $(DIROBJ)\pop3.obj \
- $(DIROBJ)\progress.obj \
- $(DIROBJ)\rawstr.obj \
- $(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
- $(DIROBJ)\security.obj \
- $(DIROBJ)\select.obj \
- $(DIROBJ)\sendf.obj \
- $(DIROBJ)\share.obj \
- $(DIROBJ)\slist.obj \
- $(DIROBJ)\smb.obj \
- $(DIROBJ)\smtp.obj \
- $(DIROBJ)\socks.obj \
- $(DIROBJ)\socks_gssapi.obj \
- $(DIROBJ)\socks_sspi.obj \
- $(DIROBJ)\speedcheck.obj \
- $(DIROBJ)\splay.obj \
- $(DIROBJ)\ssh.obj \
- $(DIROBJ)\vtls.obj \
- $(DIROBJ)\openssl.obj \
- $(DIROBJ)\strdup.obj \
- $(DIROBJ)\strequal.obj \
- $(DIROBJ)\strerror.obj \
- $(DIROBJ)\strtok.obj \
- $(DIROBJ)\strtoofft.obj \
- $(DIROBJ)\telnet.obj \
- $(DIROBJ)\tftp.obj \
- $(DIROBJ)\timeval.obj \
- $(DIROBJ)\transfer.obj \
- $(DIROBJ)\url.obj \
- $(DIROBJ)\version.obj \
- $(DIROBJ)\warnless.obj \
- $(DIROBJ)\wildcard.obj \
- $(RESOURCE)
-
-all : $(TARGET)
-
-$(TARGET): $(X_OBJS)
- $(LNK) $(LFLAGS) $(X_OBJS)
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y
- -xcopy $(DIROBJ)\*.exp . /y
- -xcopy $(DIROBJ)\*.pdb . /y
-
-$(X_OBJS): $(DIROBJ)
-
-$(DIROBJ):
- @if not exist "$(DIROBJ)" mkdir $(DIROBJ)
-
-.SUFFIXES: .c .obj .res
-
-{.\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-{.\vtls\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-debug-dll\libcurl.res \
-debug-dll-ssl-dll\libcurl.res \
-debug-dll-zlib-dll\libcurl.res \
-debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
-release-dll\libcurl.res \
-release-dll-ssl-dll\libcurl.res \
-release-dll-zlib-dll\libcurl.res \
-release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-!ENDIF # End of case where a config was provided.
diff --git a/lib/Makefile.vc14 b/lib/Makefile.vc14
deleted file mode 100644
index 226d27a77..000000000
--- a/lib/Makefile.vc14
+++ /dev/null
@@ -1,677 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-library.
-
-###########################################################################
-#
-# Makefile for building libcurl with MSVC14
-#
-# Usage: see usage message below
-# Should be invoked from \lib directory
-# Edit the paths and desired library name
-# SSL path is only required if you intend compiling
-# with SSL.
-#
-# This make file leaves the result either a .lib or .dll file
-# in the \lib directory. It should be called from the \lib
-# directory.
-#
-# An option would have been to allow the source directory to
-# be specified, but I saw no requirement.
-#
-# Another option would have been to leave the .lib and .dll
-# files in the "cfg" directory, but then the make file
-# in \src would need to be changed.
-#
-##############################################################
-
-# ----------------------------------------------
-# Verify that current subdir is libcurl's 'lib'
-# ----------------------------------------------
-
-!IF ! EXIST(.\curl_addrinfo.c)
-! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory.
-! MESSAGE Change to libcurl's 'lib' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC14 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-#############################################################
-## Nothing more to do below this line!
-
-CCNODBG = cl.exe /O2 /DNDEBUG
-CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGSWINSSL = /DUSE_SCHANNEL
-CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
-CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-CFLAGS = /I. /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-CFLAGSLIB = /DCURL_STATICLIB
-LNKDLL = link.exe /DLL
-LNKLIB = link.exe /lib
-LFLAGS = /nologo /machine:$(MACHINE)
-SSLLIBS = libeay32.lib ssleay32.lib
-ZLIBLIBSDLL = zdll.lib
-ZLIBLIBS = zlib.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-CFLAGS = $(CFLAGS)
-
-CFGSET = FALSE
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-!IFDEF USE_IPV6
-CFLAGS = $(CFLAGS) /DUSE_IPV6
-!ENDIF
-
-!IFDEF USE_IDN
-CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES
-!ENDIF
-
-##############################################################
-# Runtime library configuration
-
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-
-######################
-# release
-
-!IF "$(CFG)" == "release"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl
-
-!IF "$(CFG)" == "release-ssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl
-
-!IF "$(CFG)" == "release-winssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib
-
-!IF "$(CFG)" == "release-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl-zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "release-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll
-
-!IF "$(CFG)" == "release-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib-dll
-
-!IF "$(CFG)" == "release-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-dll
-
-!IF "$(CFG)" == "release-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug
-
-!IF "$(CFG)" == "debug"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl
-
-!IF "$(CFG)" == "debug-ssl"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib
-
-!IF "$(CFG)" == "debug-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-zlib
-
-!IF "$(CFG)" == "debug-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "debug-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll
-
-!IF "$(CFG)" == "debug-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib-dll
-
-!IF "$(CFG)" == "debug-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-dll
-
-!IF "$(CFG)" == "debug-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-#######################
-# Usage
-#
-!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
-!MESSAGE Usage: nmake /f makefile.vc14 CFG=<config> <target>
-!MESSAGE where <config> is one of:
-!MESSAGE release - release static library
-!MESSAGE release-ssl - release static library with ssl
-!MESSAGE release-zlib - release static library with zlib
-!MESSAGE release-ssl-zlib - release static library with ssl and zlib
-!MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib
-!MESSAGE release-ssl-dll - release static library with dynamic ssl
-!MESSAGE release-zlib-dll - release static library with dynamic zlib
-!MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
-!MESSAGE release-dll - release dynamic library
-!MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
-!MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
-!MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE debug - debug static library
-!MESSAGE debug-ssl - debug static library with ssl
-!MESSAGE debug-zlib - debug static library with zlib
-!MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
-!MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib
-!MESSAGE debug-ssl-dll - debug static library with dynamic ssl
-!MESSAGE debug-zlib-dll - debug static library with dynamic zlib
-!MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
-!MESSAGE debug-dll - debug dynamic library
-!MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
-!MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
-!MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE <target> can be left blank in which case all is assumed
-!ERROR please choose a valid configuration "$(CFG)"
-!ENDIF
-
-#######################
-# Only the clean target can be used if a config was not provided.
-#
-!IF "$(CFGSET)" == "FALSE"
-clean:
- @-erase /s *.dll 2> NUL
- @-erase /s *.exp 2> NUL
- @-erase /s *.idb 2> NUL
- @-erase /s *.lib 2> NUL
- @-erase /s *.obj 2> NUL
- @-erase /s *.pch 2> NUL
- @-erase /s *.pdb 2> NUL
- @-erase /s *.res 2> NUL
-!ELSE
-# A config was provided, so the library can be built.
-#
-X_OBJS= \
- $(DIROBJ)\amigaos.obj \
- $(DIROBJ)\asyn-ares.obj \
- $(DIROBJ)\asyn-thread.obj \
- $(DIROBJ)\axtls.obj \
- $(DIROBJ)\base64.obj \
- $(DIROBJ)\conncache.obj \
- $(DIROBJ)\connect.obj \
- $(DIROBJ)\content_encoding.obj \
- $(DIROBJ)\cookie.obj \
- $(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
- $(DIROBJ)\curl_endian.obj \
- $(DIROBJ)\curl_fnmatch.obj \
- $(DIROBJ)\curl_gethostname.obj \
- $(DIROBJ)\curl_gssapi.obj \
- $(DIROBJ)\curl_memrchr.obj \
- $(DIROBJ)\curl_multibyte.obj \
- $(DIROBJ)\curl_ntlm.obj \
- $(DIROBJ)\curl_ntlm_core.obj \
- $(DIROBJ)\curl_ntlm_msgs.obj \
- $(DIROBJ)\curl_ntlm_wb.obj \
- $(DIROBJ)\curl_rtmp.obj \
- $(DIROBJ)\curl_sasl.obj \
- $(DIROBJ)\curl_sasl_gssapi.obj \
- $(DIROBJ)\curl_sasl_sspi.obj \
- $(DIROBJ)\curl_sspi.obj \
- $(DIROBJ)\curl_threads.obj \
- $(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
- $(DIROBJ)\dict.obj \
- $(DIROBJ)\dotdot.obj \
- $(DIROBJ)\easy.obj \
- $(DIROBJ)\escape.obj \
- $(DIROBJ)\file.obj \
- $(DIROBJ)\fileinfo.obj \
- $(DIROBJ)\formdata.obj \
- $(DIROBJ)\ftp.obj \
- $(DIROBJ)\ftplistparser.obj \
- $(DIROBJ)\getenv.obj \
- $(DIROBJ)\getinfo.obj \
- $(DIROBJ)\gopher.obj \
- $(DIROBJ)\gtls.obj \
- $(DIROBJ)\hash.obj \
- $(DIROBJ)\hmac.obj \
- $(DIROBJ)\hostasyn.obj \
- $(DIROBJ)\hostcheck.obj \
- $(DIROBJ)\hostip.obj \
- $(DIROBJ)\hostip4.obj \
- $(DIROBJ)\hostip6.obj \
- $(DIROBJ)\hostsyn.obj \
- $(DIROBJ)\http.obj \
- $(DIROBJ)\http_chunks.obj \
- $(DIROBJ)\http_digest.obj \
- $(DIROBJ)\http_negotiate.obj \
- $(DIROBJ)\http_negotiate_sspi.obj \
- $(DIROBJ)\http_proxy.obj \
- $(DIROBJ)\idn_win32.obj \
- $(DIROBJ)\if2ip.obj \
- $(DIROBJ)\imap.obj \
- $(DIROBJ)\inet_ntop.obj \
- $(DIROBJ)\inet_pton.obj \
- $(DIROBJ)\krb5.obj \
- $(DIROBJ)\ldap.obj \
- $(DIROBJ)\llist.obj \
- $(DIROBJ)\md4.obj \
- $(DIROBJ)\md5.obj \
- $(DIROBJ)\memdebug.obj \
- $(DIROBJ)\mprintf.obj \
- $(DIROBJ)\multi.obj \
- $(DIROBJ)\netrc.obj \
- $(DIROBJ)\non-ascii.obj \
- $(DIROBJ)\nonblock.obj \
- $(DIROBJ)\nss.obj \
- $(DIROBJ)\openldap.obj \
- $(DIROBJ)\parsedate.obj \
- $(DIROBJ)\pingpong.obj \
- $(DIROBJ)\pipeline.obj \
- $(DIROBJ)\polarssl.obj \
- $(DIROBJ)\polarssl_threadlock.obj \
- $(DIROBJ)\pop3.obj \
- $(DIROBJ)\progress.obj \
- $(DIROBJ)\rawstr.obj \
- $(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
- $(DIROBJ)\security.obj \
- $(DIROBJ)\select.obj \
- $(DIROBJ)\sendf.obj \
- $(DIROBJ)\share.obj \
- $(DIROBJ)\slist.obj \
- $(DIROBJ)\smb.obj \
- $(DIROBJ)\smtp.obj \
- $(DIROBJ)\socks.obj \
- $(DIROBJ)\socks_gssapi.obj \
- $(DIROBJ)\socks_sspi.obj \
- $(DIROBJ)\speedcheck.obj \
- $(DIROBJ)\splay.obj \
- $(DIROBJ)\ssh.obj \
- $(DIROBJ)\vtls.obj \
- $(DIROBJ)\openssl.obj \
- $(DIROBJ)\strdup.obj \
- $(DIROBJ)\strequal.obj \
- $(DIROBJ)\strerror.obj \
- $(DIROBJ)\strtok.obj \
- $(DIROBJ)\strtoofft.obj \
- $(DIROBJ)\telnet.obj \
- $(DIROBJ)\tftp.obj \
- $(DIROBJ)\timeval.obj \
- $(DIROBJ)\transfer.obj \
- $(DIROBJ)\url.obj \
- $(DIROBJ)\version.obj \
- $(DIROBJ)\warnless.obj \
- $(DIROBJ)\wildcard.obj \
- $(RESOURCE)
-
-all : $(TARGET)
-
-$(TARGET): $(X_OBJS)
- $(LNK) $(LFLAGS) $(X_OBJS)
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y
- -xcopy $(DIROBJ)\*.exp . /y
- -xcopy $(DIROBJ)\*.pdb . /y
-
-$(X_OBJS): $(DIROBJ)
-
-$(DIROBJ):
- @if not exist "$(DIROBJ)" mkdir $(DIROBJ)
-
-.SUFFIXES: .c .obj .res
-
-{.\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-{.\vtls\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-debug-dll\libcurl.res \
-debug-dll-ssl-dll\libcurl.res \
-debug-dll-zlib-dll\libcurl.res \
-debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
-release-dll\libcurl.res \
-release-dll-ssl-dll\libcurl.res \
-release-dll-zlib-dll\libcurl.res \
-release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-!ENDIF # End of case where a config was provided.
diff --git a/lib/Makefile.vc6 b/lib/Makefile.vc6
index c34c3dbc7..ee20ebe12 100644
--- a/lib/Makefile.vc6
+++ b/lib/Makefile.vc6
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -65,11 +65,11 @@
!INCLUDE ..\winbuild\Makefile.msvc.names
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
!ENDIF
!IFNDEF ZLIB_PATH
@@ -90,7 +90,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -105,7 +105,7 @@ WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
CCNODBG = cl.exe /O2 /DNDEBUG
CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
+CFLAGSSSL = /DUSE_SSLEAY /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSWINSSL = /DUSE_SCHANNEL
CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
@@ -427,7 +427,7 @@ CFGSET = TRUE
TARGET = $(LIBCURL_DYN_LIB_DBG)
DIROBJ = $(CFG)
LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
+CC = $(CCDEBUG) $(RTLIBD)
CFGSET = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF
@@ -528,12 +528,13 @@ X_OBJS= \
$(DIROBJ)\asyn-thread.obj \
$(DIROBJ)\axtls.obj \
$(DIROBJ)\base64.obj \
+ $(DIROBJ)\bundles.obj \
$(DIROBJ)\conncache.obj \
$(DIROBJ)\connect.obj \
$(DIROBJ)\content_encoding.obj \
$(DIROBJ)\cookie.obj \
$(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
+ $(DIROBJ)\curl_darwinssl.obj \
$(DIROBJ)\curl_endian.obj \
$(DIROBJ)\curl_fnmatch.obj \
$(DIROBJ)\curl_gethostname.obj \
@@ -548,10 +549,10 @@ X_OBJS= \
$(DIROBJ)\curl_sasl.obj \
$(DIROBJ)\curl_sasl_gssapi.obj \
$(DIROBJ)\curl_sasl_sspi.obj \
+ $(DIROBJ)\curl_schannel.obj \
$(DIROBJ)\curl_sspi.obj \
$(DIROBJ)\curl_threads.obj \
$(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
$(DIROBJ)\dict.obj \
$(DIROBJ)\dotdot.obj \
$(DIROBJ)\easy.obj \
@@ -606,7 +607,6 @@ X_OBJS= \
$(DIROBJ)\progress.obj \
$(DIROBJ)\rawstr.obj \
$(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
$(DIROBJ)\security.obj \
$(DIROBJ)\select.obj \
$(DIROBJ)\sendf.obj \
diff --git a/lib/Makefile.vc7 b/lib/Makefile.vc7
deleted file mode 100644
index 97c4773a5..000000000
--- a/lib/Makefile.vc7
+++ /dev/null
@@ -1,677 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-library.
-
-###########################################################################
-#
-# Makefile for building libcurl with MSVC7
-#
-# Usage: see usage message below
-# Should be invoked from \lib directory
-# Edit the paths and desired library name
-# SSL path is only required if you intend compiling
-# with SSL.
-#
-# This make file leaves the result either a .lib or .dll file
-# in the \lib directory. It should be called from the \lib
-# directory.
-#
-# An option would have been to allow the source directory to
-# be specified, but I saw no requirement.
-#
-# Another option would have been to leave the .lib and .dll
-# files in the "cfg" directory, but then the make file
-# in \src would need to be changed.
-#
-##############################################################
-
-# ----------------------------------------------
-# Verify that current subdir is libcurl's 'lib'
-# ----------------------------------------------
-
-!IF ! EXIST(.\curl_addrinfo.c)
-! MESSAGE Can not process this makefile from outside of libcurl's 'lib' subdirectory.
-! MESSAGE Change to libcurl's 'lib' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC7 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-#############################################################
-## Nothing more to do below this line!
-
-CCNODBG = cl.exe /O2 /DNDEBUG
-CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /GZ
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
-CFLAGSWINSSL = /DUSE_SCHANNEL
-CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
-CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-CFLAGS = /I. /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /DBUILDING_LIBCURL /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-CFLAGSLIB = /DCURL_STATICLIB
-LNKDLL = link.exe /DLL
-LNKLIB = link.exe /lib
-LFLAGS = /nologo /machine:$(MACHINE)
-SSLLIBS = libeay32.lib ssleay32.lib
-ZLIBLIBSDLL = zdll.lib
-ZLIBLIBS = zlib.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-CFLAGS = $(CFLAGS)
-
-CFGSET = FALSE
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-!IFDEF USE_IPV6
-CFLAGS = $(CFLAGS) /DUSE_IPV6
-!ENDIF
-
-!IFDEF USE_IDN
-CFLAGS = $(CFLAGS) /DUSE_WIN32_IDN /DWANT_IDN_PROTOTYPES
-!ENDIF
-
-##############################################################
-# Runtime library configuration
-
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-
-######################
-# release
-
-!IF "$(CFG)" == "release"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl
-
-!IF "$(CFG)" == "release-ssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl
-
-!IF "$(CFG)" == "release-winssl"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib
-
-!IF "$(CFG)" == "release-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-winssl-zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSWINSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "release-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll
-
-!IF "$(CFG)" == "release-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-zlib-dll
-
-!IF "$(CFG)" == "release-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# release-dll
-
-!IF "$(CFG)" == "release-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# release-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_REL)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_REL)
-CC = $(CCNODBG) $(RTLIB) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug
-
-!IF "$(CFG)" == "debug"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl
-
-!IF "$(CFG)" == "debug-ssl"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib
-
-!IF "$(CFG)" == "debug-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-zlib
-
-!IF "$(CFG)" == "debug-ssl-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-ssh2-zlib
-
-!IF "$(CFG)" == "debug-ssl-ssh2-zlib"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSH2 = "/LIBPATH:$(LIBSSH2_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32"
-LNK = $(LNKLIB) $(ZLIBLIBS) $(LFLAGSSSL) $(LFLAGSSSH2) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSSSH2) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll
-
-!IF "$(CFG)" == "debug-ssl-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = /LIBPATH:$(OPENSSL_PATH)\out32dll
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-zlib-dll
-
-!IF "$(CFG)" == "debug-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKLIB) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_STA_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKLIB) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /out:$(DIROBJ)\$(TARGET)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB) $(CFLAGSLIB)
-CFGSET = TRUE
-!ENDIF
-
-######################
-# debug-dll
-
-!IF "$(CFG)" == "debug-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(LFLAGSSSL) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LNK = $(LNKDLL) $(WINLIBS) $(ZLIBLIBSDLL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-######################
-# debug-dll-ssl-dll-zlib-dll
-
-!IF "$(CFG)" == "debug-dll-ssl-dll-zlib-dll"
-TARGET = $(LIBCURL_DYN_LIB_DBG)
-DIROBJ = $(CFG)
-LFLAGSZLIB = "/LIBPATH:$(ZLIB_PATH)"
-LFLAGSSSL = "/LIBPATH:$(OPENSSL_PATH)\out32dll"
-LNK = $(LNKDLL) $(WINLIBS) $(SSLLIBS) $(ZLIBLIBSDLL) $(LFLAGSSSL) $(LFLAGSZLIB) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD) $(CFLAGSSSL) $(CFLAGSZLIB)
-CFGSET = TRUE
-RESOURCE = $(DIROBJ)\libcurl.res
-!ENDIF
-
-#######################
-# Usage
-#
-!IF "$(CFGSET)" == "FALSE" && "$(CFG)" != ""
-!MESSAGE Usage: nmake /f makefile.vc6 CFG=<config> <target>
-!MESSAGE where <config> is one of:
-!MESSAGE release - release static library
-!MESSAGE release-ssl - release static library with ssl
-!MESSAGE release-zlib - release static library with zlib
-!MESSAGE release-ssl-zlib - release static library with ssl and zlib
-!MESSAGE release-ssl-ssh2-zlib - release static library with ssl, ssh2 and zlib
-!MESSAGE release-ssl-dll - release static library with dynamic ssl
-!MESSAGE release-zlib-dll - release static library with dynamic zlib
-!MESSAGE release-ssl-dll-zlib-dll - release static library with dynamic ssl and dynamic zlib
-!MESSAGE release-dll - release dynamic library
-!MESSAGE release-dll-ssl-dll - release dynamic library with dynamic ssl
-!MESSAGE release-dll-zlib-dll - release dynamic library with dynamic zlib
-!MESSAGE release-dll-ssl-dll-zlib-dll - release dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE debug - debug static library
-!MESSAGE debug-ssl - debug static library with ssl
-!MESSAGE debug-zlib - debug static library with zlib
-!MESSAGE debug-ssl-zlib - debug static library with ssl and zlib
-!MESSAGE debug-ssl-ssh2-zlib - debug static library with ssl, ssh2 and zlib
-!MESSAGE debug-ssl-dll - debug static library with dynamic ssl
-!MESSAGE debug-zlib-dll - debug static library with dynamic zlib
-!MESSAGE debug-ssl-dll-zlib-dll - debug static library with dynamic ssl and dynamic zlib
-!MESSAGE debug-dll - debug dynamic library
-!MESSAGE debug-dll-ssl-dll - debug dynamic library with dynamic ssl
-!MESSAGE debug-dll-zlib-dll - debug dynamic library with dynamic zlib1
-!MESSAGE debug-dll-ssl-dll-zlib-dll - debug dynamic library with dynamic ssl and dynamic zlib
-!MESSAGE <target> can be left blank in which case all is assumed
-!ERROR please choose a valid configuration "$(CFG)"
-!ENDIF
-
-#######################
-# Only the clean target can be used if a config was not provided.
-#
-!IF "$(CFGSET)" == "FALSE"
-clean:
- @-erase /s *.dll 2> NUL
- @-erase /s *.exp 2> NUL
- @-erase /s *.idb 2> NUL
- @-erase /s *.lib 2> NUL
- @-erase /s *.obj 2> NUL
- @-erase /s *.pch 2> NUL
- @-erase /s *.pdb 2> NUL
- @-erase /s *.res 2> NUL
-!ELSE
-# A config was provided, so the library can be built.
-#
-X_OBJS= \
- $(DIROBJ)\amigaos.obj \
- $(DIROBJ)\asyn-ares.obj \
- $(DIROBJ)\asyn-thread.obj \
- $(DIROBJ)\axtls.obj \
- $(DIROBJ)\base64.obj \
- $(DIROBJ)\conncache.obj \
- $(DIROBJ)\connect.obj \
- $(DIROBJ)\content_encoding.obj \
- $(DIROBJ)\cookie.obj \
- $(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
- $(DIROBJ)\curl_endian.obj \
- $(DIROBJ)\curl_fnmatch.obj \
- $(DIROBJ)\curl_gethostname.obj \
- $(DIROBJ)\curl_gssapi.obj \
- $(DIROBJ)\curl_memrchr.obj \
- $(DIROBJ)\curl_multibyte.obj \
- $(DIROBJ)\curl_ntlm.obj \
- $(DIROBJ)\curl_ntlm_core.obj \
- $(DIROBJ)\curl_ntlm_msgs.obj \
- $(DIROBJ)\curl_ntlm_wb.obj \
- $(DIROBJ)\curl_rtmp.obj \
- $(DIROBJ)\curl_sasl.obj \
- $(DIROBJ)\curl_sasl_gssapi.obj \
- $(DIROBJ)\curl_sasl_sspi.obj \
- $(DIROBJ)\curl_sspi.obj \
- $(DIROBJ)\curl_threads.obj \
- $(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
- $(DIROBJ)\dict.obj \
- $(DIROBJ)\dotdot.obj \
- $(DIROBJ)\easy.obj \
- $(DIROBJ)\escape.obj \
- $(DIROBJ)\file.obj \
- $(DIROBJ)\fileinfo.obj \
- $(DIROBJ)\formdata.obj \
- $(DIROBJ)\ftp.obj \
- $(DIROBJ)\ftplistparser.obj \
- $(DIROBJ)\getenv.obj \
- $(DIROBJ)\getinfo.obj \
- $(DIROBJ)\gopher.obj \
- $(DIROBJ)\gtls.obj \
- $(DIROBJ)\hash.obj \
- $(DIROBJ)\hmac.obj \
- $(DIROBJ)\hostasyn.obj \
- $(DIROBJ)\hostcheck.obj \
- $(DIROBJ)\hostip.obj \
- $(DIROBJ)\hostip4.obj \
- $(DIROBJ)\hostip6.obj \
- $(DIROBJ)\hostsyn.obj \
- $(DIROBJ)\http.obj \
- $(DIROBJ)\http_chunks.obj \
- $(DIROBJ)\http_digest.obj \
- $(DIROBJ)\http_negotiate.obj \
- $(DIROBJ)\http_negotiate_sspi.obj \
- $(DIROBJ)\http_proxy.obj \
- $(DIROBJ)\idn_win32.obj \
- $(DIROBJ)\if2ip.obj \
- $(DIROBJ)\imap.obj \
- $(DIROBJ)\inet_ntop.obj \
- $(DIROBJ)\inet_pton.obj \
- $(DIROBJ)\krb5.obj \
- $(DIROBJ)\ldap.obj \
- $(DIROBJ)\llist.obj \
- $(DIROBJ)\md4.obj \
- $(DIROBJ)\md5.obj \
- $(DIROBJ)\memdebug.obj \
- $(DIROBJ)\mprintf.obj \
- $(DIROBJ)\multi.obj \
- $(DIROBJ)\netrc.obj \
- $(DIROBJ)\non-ascii.obj \
- $(DIROBJ)\nonblock.obj \
- $(DIROBJ)\nss.obj \
- $(DIROBJ)\openldap.obj \
- $(DIROBJ)\parsedate.obj \
- $(DIROBJ)\pingpong.obj \
- $(DIROBJ)\pipeline.obj \
- $(DIROBJ)\polarssl.obj \
- $(DIROBJ)\polarssl_threadlock.obj \
- $(DIROBJ)\pop3.obj \
- $(DIROBJ)\progress.obj \
- $(DIROBJ)\rawstr.obj \
- $(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
- $(DIROBJ)\security.obj \
- $(DIROBJ)\select.obj \
- $(DIROBJ)\sendf.obj \
- $(DIROBJ)\share.obj \
- $(DIROBJ)\slist.obj \
- $(DIROBJ)\smb.obj \
- $(DIROBJ)\smtp.obj \
- $(DIROBJ)\socks.obj \
- $(DIROBJ)\socks_gssapi.obj \
- $(DIROBJ)\socks_sspi.obj \
- $(DIROBJ)\speedcheck.obj \
- $(DIROBJ)\splay.obj \
- $(DIROBJ)\ssh.obj \
- $(DIROBJ)\vtls.obj \
- $(DIROBJ)\openssl.obj \
- $(DIROBJ)\strdup.obj \
- $(DIROBJ)\strequal.obj \
- $(DIROBJ)\strerror.obj \
- $(DIROBJ)\strtok.obj \
- $(DIROBJ)\strtoofft.obj \
- $(DIROBJ)\telnet.obj \
- $(DIROBJ)\tftp.obj \
- $(DIROBJ)\timeval.obj \
- $(DIROBJ)\transfer.obj \
- $(DIROBJ)\url.obj \
- $(DIROBJ)\version.obj \
- $(DIROBJ)\warnless.obj \
- $(DIROBJ)\wildcard.obj \
- $(RESOURCE)
-
-all : $(TARGET)
-
-$(TARGET): $(X_OBJS)
- $(LNK) $(LFLAGS) $(X_OBJS)
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_STA_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_DYN_LIB_DBG) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_REL) . /y
- -xcopy $(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) . /y
- -xcopy $(DIROBJ)\*.exp . /y
- -xcopy $(DIROBJ)\*.pdb . /y
-
-$(X_OBJS): $(DIROBJ)
-
-$(DIROBJ):
- @if not exist "$(DIROBJ)" mkdir $(DIROBJ)
-
-.SUFFIXES: .c .obj .res
-
-{.\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-{.\vtls\}.c{$(DIROBJ)\}.obj:
- $(CC) $(CFLAGS) /Fo"$@" $<
-
-debug-dll\libcurl.res \
-debug-dll-ssl-dll\libcurl.res \
-debug-dll-zlib-dll\libcurl.res \
-debug-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=1 /Fo $@ libcurl.rc
-
-release-dll\libcurl.res \
-release-dll-ssl-dll\libcurl.res \
-release-dll-zlib-dll\libcurl.res \
-release-dll-ssl-dll-zlib-dll\libcurl.res: libcurl.rc
- rc /dDEBUGBUILD=0 /Fo $@ libcurl.rc
-!ENDIF # End of case where a config was provided.
diff --git a/lib/Makefile.vc8 b/lib/Makefile.vc8
index 10732f9ba..0d10ac570 100644
--- a/lib/Makefile.vc8
+++ b/lib/Makefile.vc8
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -65,11 +65,11 @@
!INCLUDE ..\winbuild\Makefile.msvc.names
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
!ENDIF
!IFNDEF ZLIB_PATH
@@ -90,7 +90,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -105,7 +105,7 @@ WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
CCNODBG = cl.exe /O2 /DNDEBUG
CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
+CFLAGSSSL = /DUSE_SSLEAY /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSWINSSL = /DUSE_SCHANNEL
CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
@@ -427,7 +427,7 @@ CFGSET = TRUE
TARGET = $(LIBCURL_DYN_LIB_DBG)
DIROBJ = $(CFG)
LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
+CC = $(CCDEBUG) $(RTLIBD)
CFGSET = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF
@@ -528,12 +528,13 @@ X_OBJS= \
$(DIROBJ)\asyn-thread.obj \
$(DIROBJ)\axtls.obj \
$(DIROBJ)\base64.obj \
+ $(DIROBJ)\bundles.obj \
$(DIROBJ)\conncache.obj \
$(DIROBJ)\connect.obj \
$(DIROBJ)\content_encoding.obj \
$(DIROBJ)\cookie.obj \
$(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
+ $(DIROBJ)\curl_darwinssl.obj \
$(DIROBJ)\curl_endian.obj \
$(DIROBJ)\curl_fnmatch.obj \
$(DIROBJ)\curl_gethostname.obj \
@@ -548,10 +549,10 @@ X_OBJS= \
$(DIROBJ)\curl_sasl.obj \
$(DIROBJ)\curl_sasl_gssapi.obj \
$(DIROBJ)\curl_sasl_sspi.obj \
+ $(DIROBJ)\curl_schannel.obj \
$(DIROBJ)\curl_sspi.obj \
$(DIROBJ)\curl_threads.obj \
$(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
$(DIROBJ)\dict.obj \
$(DIROBJ)\dotdot.obj \
$(DIROBJ)\easy.obj \
@@ -606,7 +607,6 @@ X_OBJS= \
$(DIROBJ)\progress.obj \
$(DIROBJ)\rawstr.obj \
$(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
$(DIROBJ)\security.obj \
$(DIROBJ)\select.obj \
$(DIROBJ)\sendf.obj \
diff --git a/lib/Makefile.vc9 b/lib/Makefile.vc9
index 0d9d951f8..9f1b8d44a 100644
--- a/lib/Makefile.vc9
+++ b/lib/Makefile.vc9
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -65,11 +65,11 @@
!INCLUDE ..\winbuild\Makefile.msvc.names
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
!ENDIF
!IFNDEF ZLIB_PATH
@@ -90,7 +90,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -105,7 +105,7 @@ WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
CCNODBG = cl.exe /O2 /DNDEBUG
CCDEBUG = cl.exe /Od /Gm /Zi /D_DEBUG /RTC1
-CFLAGSSSL = /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
+CFLAGSSSL = /DUSE_SSLEAY /DUSE_OPENSSL /I "$(OPENSSL_PATH)/inc32" /I "$(OPENSSL_PATH)/inc32/openssl"
CFLAGSWINSSL = /DUSE_SCHANNEL
CFLAGSSSH2 = /DUSE_LIBSSH2 /DCURL_DISABLE_LDAP /DHAVE_LIBSSH2 /DHAVE_LIBSSH2_H /DLIBSSH2_WIN32 /DLIBSSH2_LIBRARY /I "$(LIBSSH2_PATH)/include"
CFLAGSZLIB = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
@@ -427,7 +427,7 @@ CFGSET = TRUE
TARGET = $(LIBCURL_DYN_LIB_DBG)
DIROBJ = $(CFG)
LNK = $(LNKDLL) $(WINLIBS) /DEBUG /out:$(DIROBJ)\$(TARGET) /IMPLIB:$(DIROBJ)\$(LIBCURL_IMP_LIB_DBG) /PDB:$(DIROBJ)\$(LIBCURL_DYN_LIB_PDB)
-CC = $(CCDEBUG) $(RTLIBD)
+CC = $(CCDEBUG) $(RTLIBD)
CFGSET = TRUE
RESOURCE = $(DIROBJ)\libcurl.res
!ENDIF
@@ -528,12 +528,13 @@ X_OBJS= \
$(DIROBJ)\asyn-thread.obj \
$(DIROBJ)\axtls.obj \
$(DIROBJ)\base64.obj \
+ $(DIROBJ)\bundles.obj \
$(DIROBJ)\conncache.obj \
$(DIROBJ)\connect.obj \
$(DIROBJ)\content_encoding.obj \
$(DIROBJ)\cookie.obj \
$(DIROBJ)\curl_addrinfo.obj \
- $(DIROBJ)\curl_des.obj \
+ $(DIROBJ)\curl_darwinssl.obj \
$(DIROBJ)\curl_endian.obj \
$(DIROBJ)\curl_fnmatch.obj \
$(DIROBJ)\curl_gethostname.obj \
@@ -548,10 +549,10 @@ X_OBJS= \
$(DIROBJ)\curl_sasl.obj \
$(DIROBJ)\curl_sasl_gssapi.obj \
$(DIROBJ)\curl_sasl_sspi.obj \
+ $(DIROBJ)\curl_schannel.obj \
$(DIROBJ)\curl_sspi.obj \
$(DIROBJ)\curl_threads.obj \
$(DIROBJ)\cyassl.obj \
- $(DIROBJ)\darwinssl.obj \
$(DIROBJ)\dict.obj \
$(DIROBJ)\dotdot.obj \
$(DIROBJ)\easy.obj \
@@ -606,7 +607,6 @@ X_OBJS= \
$(DIROBJ)\progress.obj \
$(DIROBJ)\rawstr.obj \
$(DIROBJ)\rtsp.obj \
- $(DIROBJ)\schannel.obj \
$(DIROBJ)\security.obj \
$(DIROBJ)\select.obj \
$(DIROBJ)\sendf.obj \
diff --git a/lib/README.ares b/lib/README.ares
new file mode 100644
index 000000000..8c77937eb
--- /dev/null
+++ b/lib/README.ares
@@ -0,0 +1,69 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ How To Build libcurl to Use c-ares For Asynch Name Resolves
+ ===========================================================
+
+c-ares:
+ http://c-ares.haxx.se/
+
+NOTE
+ The latest libcurl version requires c-ares 1.6.0 or later.
+
+ Once upon the time libcurl built fine with the "original" ares. That is no
+ longer true. You need to use c-ares.
+
+Build c-ares
+============
+
+1. unpack the c-ares archive
+2. cd c-ares-dir
+3. ./configure
+4. make
+5. make install
+
+Build libcurl to use c-ares in the curl source tree
+===================================================
+
+1. name or symlink the c-ares source directory 'ares' in the curl source
+ directory
+2. ./configure --enable-ares
+
+ Optionally, you can point out the c-ares install tree root with the the
+ --enable-ares option.
+
+3. make
+
+Build libcurl to use an installed c-ares
+========================================
+
+1. ./configure --enable-ares=/path/to/ares/install
+2. make
+
+c-ares on win32
+===============
+(description brought by Dominick Meglio)
+
+First I compiled c-ares. I changed the default C runtime library to be the
+single-threaded rather than the multi-threaded (this seems to be required to
+prevent linking errors later on). Then I simply build the areslib project (the
+other projects adig/ahost seem to fail under MSVC).
+
+Next was libcurl. I opened lib/config-win32.h and I added a:
+ #define USE_ARES 1
+
+Next thing I did was I added the path for the ares includes to the include
+path, and the libares.lib to the libraries.
+
+Lastly, I also changed libcurl to be single-threaded rather than
+multi-threaded, again this was to prevent some duplicate symbol errors. I'm
+not sure why I needed to change everything to single-threaded, but when I
+didn't I got redefinition errors for several CRT functions (malloc, stricmp,
+etc.)
+
+I would have modified the MSVC++ project files, but I only have VC.NET and it
+uses a different format than VC6.0 so I didn't want to go and change
+everything and remove VC6.0 support from libcurl.
diff --git a/lib/README.curl_off_t b/lib/README.curl_off_t
new file mode 100644
index 000000000..923b2774c
--- /dev/null
+++ b/lib/README.curl_off_t
@@ -0,0 +1,68 @@
+
+ curl_off_t explained
+ ====================
+
+curl_off_t is a data type provided by the external libcurl include headers. It
+is the type meant to be used for the curl_easy_setopt() options that end with
+LARGE. The type is 64bit large on most modern platforms.
+
+Transition from < 7.19.0 to >= 7.19.0
+-------------------------------------
+
+Applications that used libcurl before 7.19.0 that are rebuilt with a libcurl
+that is 7.19.0 or later may or may not have to worry about anything of
+this. We have made a significant effort to make the transition really seamless
+and transparent.
+
+You have have to take notice if you are in one of the following situations:
+
+o Your app is using or will after the transition use a libcurl that is built
+ with LFS (large file support) disabled even though your system otherwise
+ supports it.
+
+o Your app is using or will after the transition use a libcurl that doesn't
+ support LFS at all, but your system and compiler support 64bit data types.
+
+In both these cases, the curl_off_t type will now (after the transition) be
+64bit where it previously was 32bit. This will cause a binary incompatibility
+that you MAY need to deal with.
+
+Benefits
+--------
+
+This new way has several benefits:
+
+o Platforms without LFS support can still use libcurl to do >32 bit file
+ transfers and range operations etc as long as they have >32 bit data-types
+ supported.
+
+o Applications will no longer easily build with the curl_off_t size
+ mismatched, which has been a very frequent (and annoying) problem with
+ libcurl <= 7.18.2
+
+Historically
+------------
+
+Previously, before 7.19.0, the curl_off_t type would be rather strongly
+connected to the size of the system off_t type, where currently curl_off_t is
+independent of that.
+
+The strong connection to off_t made it troublesome for application authors
+since when they did mistakes, they could get curl_off_t type of different
+sizes in the app vs libcurl, and that caused strange effects that were hard to
+track and detect by users of libcurl.
+
+SONAME
+------
+
+We opted to not bump the soname for the library unconditionally, simply
+because soname bumping is causing a lot of grief and moaning all over the
+community so we try to keep that at minimum. Also, our selected design path
+should be 100% backwards compatible for the vast majority of all libcurl
+users.
+
+Enforce SONAME bump
+-------------------
+
+If configure doesn't detect your case where a bump is necessary, re-run it
+with the --enable-soname-bump command line option!
diff --git a/lib/README.curlx b/lib/README.curlx
new file mode 100644
index 000000000..5375b0d1d
--- /dev/null
+++ b/lib/README.curlx
@@ -0,0 +1,61 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ Source Code Functions Apps Might Use
+ ====================================
+
+The libcurl source code offers a few functions by source only. They are not
+part of the official libcurl API, but the source files might be useful for
+others so apps can optionally compile/build with these sources to gain
+additional functions.
+
+We provide them through a single header file for easy access for apps:
+"curlx.h"
+
+ curlx_strtoofft()
+
+ A macro that converts a string containing a number to a curl_off_t number.
+ This might use the curlx_strtoll() function which is provided as source
+ code in strtoofft.c. Note that the function is only provided if no
+ strtoll() (or equivalent) function exist on your platform. If curl_off_t
+ is only a 32 bit number on your platform, this macro uses strtol().
+
+ curlx_tvnow()
+
+ returns a struct timeval for the current time.
+
+ curlx_tvdiff()
+
+ returns the difference between two timeval structs, in number of
+ milliseconds.
+
+ curlx_tvdiff_secs()
+
+ returns the same as curlx_tvdiff but with full usec resolution (as a
+ double)
+
+FUTURE
+======
+
+ Several functions will be removed from the public curl_ name space in a
+ future libcurl release. They will then only become available as curlx_
+ functions instead. To make the transition easier, we already today provide
+ these functions with the curlx_ prefix to allow sources to get built properly
+ with the new function names. The functions this concerns are:
+
+ curlx_getenv
+ curlx_strequal
+ curlx_strnequal
+ curlx_mvsnprintf
+ curlx_msnprintf
+ curlx_maprintf
+ curlx_mvaprintf
+ curlx_msprintf
+ curlx_mprintf
+ curlx_mfprintf
+ curlx_mvsprintf
+ curlx_mvprintf
+ curlx_mvfprintf
diff --git a/lib/README.encoding b/lib/README.encoding
new file mode 100644
index 000000000..1012bb9ec
--- /dev/null
+++ b/lib/README.encoding
@@ -0,0 +1,60 @@
+
+ Content Encoding Support for libcurl
+
+* About content encodings:
+
+HTTP/1.1 [RFC 2616] specifies that a client may request that a server encode
+its response. This is usually used to compress a response using one of a set
+of commonly available compression techniques. These schemes are `deflate' (the
+zlib algorithm), `gzip' and `compress' [sec 3.5, RFC 2616]. A client requests
+that the sever perform an encoding by including an Accept-Encoding header in
+the request document. The value of the header should be one of the recognized
+tokens `deflate', ... (there's a way to register new schemes/tokens, see sec
+3.5 of the spec). A server MAY honor the client's encoding request. When a
+response is encoded, the server includes a Content-Encoding header in the
+response. The value of the Content-Encoding header indicates which scheme was
+used to encode the data.
+
+A client may tell a server that it can understand several different encoding
+schemes. In this case the server may choose any one of those and use it to
+encode the response (indicating which one using the Content-Encoding header).
+It's also possible for a client to attach priorities to different schemes so
+that the server knows which it prefers. See sec 14.3 of RFC 2616 for more
+information on the Accept-Encoding header.
+
+* Current support for content encoding:
+
+Support for the 'deflate' and 'gzip' content encoding are supported by
+libcurl. Both regular and chunked transfers should work fine. The library
+zlib is required for this feature. 'deflate' support was added by James
+Gallagher, and support for the 'gzip' encoding was added by Dan Fandrich.
+
+* The libcurl interface:
+
+To cause libcurl to request a content encoding use:
+
+ curl_easy_setopt(curl, CURLOPT_ACCEPT_ENCODING, <string>)
+
+where <string> is the intended value of the Accept-Encoding header.
+
+Currently, libcurl only understands how to process responses that use the
+"deflate" or "gzip" Content-Encoding, so the only values for
+CURLOPT_ACCEPT_ENCODING that will work (besides "identity," which does
+nothing) are "deflate" and "gzip" If a response is encoded using the
+"compress" or methods, libcurl will return an error indicating that the
+response could not be decoded. If <string> is NULL no Accept-Encoding header
+is generated. If <string> is a zero-length string, then an Accept-Encoding
+header containing all supported encodings will be generated.
+
+The CURLOPT_ACCEPT_ENCODING must be set to any non-NULL value for content to
+be automatically decoded. If it is not set and the server still sends encoded
+content (despite not having been asked), the data is returned in its raw form
+and the Content-Encoding type is not checked.
+
+* The curl interface:
+
+Use the --compressed option with curl to cause it to ask servers to compress
+responses using any format supported by curl.
+
+James Gallagher <jgallagher@gso.uri.edu>
+Dan Fandrich <dan@coneharvesters.com>
diff --git a/lib/README.hostip b/lib/README.hostip
new file mode 100644
index 000000000..d5688fff1
--- /dev/null
+++ b/lib/README.hostip
@@ -0,0 +1,35 @@
+ hostip.c explained
+ ==================
+
+ The main COMPILE-TIME DEFINES to keep in mind when reading the host*.c
+ source file are these:
+
+ CURLRES_IPV6 - this host has getaddrinfo() and family, and thus we use
+ that. The host may not be able to resolve IPv6, but we don't really have to
+ take that into account. Hosts that aren't IPv6-enabled have CURLRES_IPV4
+ defined.
+
+ CURLRES_ARES - is defined if libcurl is built to use c-ares for asynchronous
+ name resolves. This can be Windows or *nix.
+
+ CURLRES_THREADED - is defined if libcurl is built to use threading for
+ asynchronous name resolves. The name resolve will be done in a new thread,
+ and the supported asynch API will be the same as for ares-builds. This is
+ the default under (native) Windows.
+
+ If any of the two previous are defined, CURLRES_ASYNCH is defined too. If
+ libcurl is not built to use an asynchronous resolver, CURLRES_SYNCH is
+ defined.
+
+ The host*.c sources files are split up like this:
+
+ hostip.c - method-independent resolver functions and utility functions
+ hostasyn.c - functions for asynchronous name resolves
+ hostsyn.c - functions for synchronous name resolves
+ asyn-ares.c - functions for asynchronous name resolves using c-ares
+ asyn-thread.c - functions for asynchronous name resolves using threads
+ hostip4.c - IPv4 specific functions
+ hostip6.c - IPv6 specific functions
+
+ The hostip.h is the single united header file for all this. It defines the
+ CURLRES_* defines based on the config*.h and curl_setup.h defines.
diff --git a/lib/README.httpauth b/lib/README.httpauth
new file mode 100644
index 000000000..960504510
--- /dev/null
+++ b/lib/README.httpauth
@@ -0,0 +1,74 @@
+
+1. PUT/POST without a known auth to use (possibly no auth required):
+
+ (When explicitly set to use a multi-pass auth when doing a POST/PUT,
+ libcurl should immediately go the Content-Length: 0 bytes route to avoid
+ the first send all data phase, step 2. If told to use a single-pass auth,
+ goto step 3.)
+
+ Issue the proper PUT/POST request immediately, with the correct
+ Content-Length and Expect: headers.
+
+ If a 100 response is received or the wait for one times out, start sending
+ the request-body.
+
+ If a 401 (or 407 when talking through a proxy) is received, then:
+
+ If we have "more than just a little" data left to send, close the
+ connection. Exactly what "more than just a little" means will have to be
+ determined. Possibly the current transfer speed should be taken into
+ account as well.
+
+ NOTE: if the size of the POST data is less than MAX_INITIAL_POST_SIZE (when
+ CURLOPT_POSTFIELDS is used), libcurl will send everything in one single
+ write() (all request-headers and request-body) and thus it will
+ unconditionally send the full post data here.
+
+2. PUT/POST with multi-pass auth but not yet completely negotiated:
+
+ Send a PUT/POST request, we know that it will be rejected and thus we claim
+ Content-Length zero to avoid having to send the request-body. (This seems
+ to be what IE does.)
+
+3. PUT/POST as the last step in the auth negotiation, that is when we have
+ what we believe is a completed negotiation:
+
+ Send a full and proper PUT/POST request (again) with the proper
+ Content-Length and a following request-body.
+
+ NOTE: this may very well be the second (or even third) time the whole or at
+ least parts of the request body is sent to the server. Since the data may
+ be provided to libcurl with a callback, we need a way to tell the app that
+ the upload is to be restarted so that the callback will provide data from
+ the start again. This requires an API method/mechanism that libcurl
+ doesn't have today. See below.
+
+Data Rewind
+
+ It will be troublesome for some apps to deal with a rewind like this in all
+ circumstances. I'm thinking for example when using 'curl' to upload data
+ from stdin. If libcurl ends up having to rewind the reading for a request
+ to succeed, of course a lack of this callback or if it returns failure, will
+ cause the request to fail completely.
+
+ The new callback is set with CURLOPT_IOCTLFUNCTION (in an attempt to add a
+ more generic function that might be used for other IO-related controls in
+ the future):
+
+ curlioerr curl_ioctl(CURL *handle, curliocmd cmd, void *clientp);
+
+ And in the case where the read is to be rewinded, it would be called with a
+ cmd named CURLIOCMD_RESTARTREAD. The callback would then return CURLIOE_OK,
+ if things are fine, or CURLIOE_FAILRESTART if not.
+
+Backwards Compatibility
+
+ The approach used until now, that issues a HEAD on the given URL to trigger
+ the auth negotiation could still be supported and encouraged, but it would
+ be up to the app to first fetch a URL with GET/HEAD to negotiate on, since
+ then a following PUT/POST wouldn't need to negotiate authentication and
+ thus avoid double-sending data.
+
+ Optionally, we keep the current approach if some option is set
+ (CURLOPT_HEADBEFOREAUTH or similar), since it seems to work fairly well for
+ POST on most servers.
diff --git a/lib/README.memoryleak b/lib/README.memoryleak
new file mode 100644
index 000000000..166177794
--- /dev/null
+++ b/lib/README.memoryleak
@@ -0,0 +1,55 @@
+ _ _ ____ _
+ ___| | | | _ \| |
+ / __| | | | |_) | |
+ | (__| |_| | _ <| |___
+ \___|\___/|_| \_\_____|
+
+ How To Track Down Suspected Memory Leaks in libcurl
+ ===================================================
+
+Single-threaded
+
+ Please note that this memory leak system is not adjusted to work in more
+ than one thread. If you want/need to use it in a multi-threaded app. Please
+ adjust accordingly.
+
+
+Build
+
+ Rebuild libcurl with -DCURLDEBUG (usually, rerunning configure with
+ --enable-debug fixes this). 'make clean' first, then 'make' so that all
+ files actually are rebuilt properly. It will also make sense to build
+ libcurl with the debug option (usually -g to the compiler) so that debugging
+ it will be easier if you actually do find a leak in the library.
+
+ This will create a library that has memory debugging enabled.
+
+Modify Your Application
+
+ Add a line in your application code:
+
+ curl_memdebug("dump");
+
+ This will make the malloc debug system output a full trace of all resource
+ using functions to the given file name. Make sure you rebuild your program
+ and that you link with the same libcurl you built for this purpose as
+ described above.
+
+Run Your Application
+
+ Run your program as usual. Watch the specified memory trace file grow.
+
+ Make your program exit and use the proper libcurl cleanup functions etc. So
+ that all non-leaks are returned/freed properly.
+
+Analyze the Flow
+
+ Use the tests/memanalyze.pl perl script to analyze the dump file:
+
+ tests/memanalyze.pl dump
+
+ This now outputs a report on what resources that were allocated but never
+ freed etc. This report is very fine for posting to the list!
+
+ If this doesn't produce any output, no leak was detected in libcurl. Then
+ the leak is mostly likely to be in your code.
diff --git a/lib/README.multi_socket b/lib/README.multi_socket
new file mode 100644
index 000000000..d91e1d9f2
--- /dev/null
+++ b/lib/README.multi_socket
@@ -0,0 +1,53 @@
+Implementation of the curl_multi_socket API
+
+ The main ideas of the new API are simply:
+
+ 1 - The application can use whatever event system it likes as it gets info
+ from libcurl about what file descriptors libcurl waits for what action
+ on. (The previous API returns fd_sets which is very select()-centric).
+
+ 2 - When the application discovers action on a single socket, it calls
+ libcurl and informs that there was action on this particular socket and
+ libcurl can then act on that socket/transfer only and not care about
+ any other transfers. (The previous API always had to scan through all
+ the existing transfers.)
+
+ The idea is that curl_multi_socket_action() calls a given callback with
+ information about what socket to wait for what action on, and the callback
+ only gets called if the status of that socket has changed.
+
+ We also added a timer callback that makes libcurl call the application when
+ the timeout value changes, and you set that with curl_multi_setopt() and the
+ CURLMOPT_TIMERFUNCTION option. To get this to work, Internally, there's an
+ added a struct to each easy handle in which we store an "expire time" (if
+ any). The structs are then "splay sorted" so that we can add and remove
+ times from the linked list and yet somewhat swiftly figure out both how long
+ time there is until the next nearest timer expires and which timer (handle)
+ we should take care of now. Of course, the upside of all this is that we get
+ a curl_multi_timeout() that should also work with old-style applications
+ that use curl_multi_perform().
+
+ We created an internal "socket to easy handles" hash table that given
+ a socket (file descriptor) return the easy handle that waits for action on
+ that socket. This hash is made using the already existing hash code
+ (previously only used for the DNS cache).
+
+ To make libcurl able to report plain sockets in the socket callback, we had
+ to re-organize the internals of the curl_multi_fdset() etc so that the
+ conversion from sockets to fd_sets for that function is only done in the
+ last step before the data is returned. I also had to extend c-ares to get a
+ function that can return plain sockets, as that library too returned only
+ fd_sets and that is no longer good enough. The changes done to c-ares are
+ available in c-ares 1.3.1 and later.
+
+ We have done a test runs with up to 9000 connections (with a single active
+ one). The curl_multi_socket_action() invoke then takes less than 10
+ microseconds in average (using the read-only-1-byte-at-a-time hack). We are
+ now below the 60 microseconds "per socket action" goal (the extra 50 is the
+ time libevent needs).
+
+Documentation
+
+ http://curl.haxx.se/libcurl/c/curl_multi_socket_action.html
+ http://curl.haxx.se/libcurl/c/curl_multi_timeout.html
+ http://curl.haxx.se/libcurl/c/curl_multi_setopt.html
diff --git a/lib/README.pingpong b/lib/README.pingpong
new file mode 100644
index 000000000..69ba9aadb
--- /dev/null
+++ b/lib/README.pingpong
@@ -0,0 +1,30 @@
+Date: December 5, 2009
+
+Pingpong
+========
+
+ Pingpong is just my (Daniel's) jestful collective name on the protocols that
+ share a very similar kind of back-and-forth procedure with command and
+ responses to and from the server. FTP was previously the only protocol in
+ that family that libcurl supported, but when POP3, IMAP and SMTP joined the
+ team I moved some of the internals into a separate pingpong module to be
+ easier to get used by all these protocols to reduce code duplication and ease
+ code re-use between these protocols.
+
+FTP
+
+ In 7.20.0 we converted code to use the new pingpong code from previously
+ having been all "native" FTP code.
+
+POP3
+
+ There's no support in the documented URL format to specify the exact mail to
+ get, but we support that as the path specified in the URL.
+
+IMAP
+
+SMTP
+
+ There's no official URL syntax defined for SMTP, but we use only the generic
+ one and we provide two additional libcurl options to specify receivers and
+ sender of the actual mail.
diff --git a/lib/README.pipelining b/lib/README.pipelining
new file mode 100644
index 000000000..e5bf6ec33
--- /dev/null
+++ b/lib/README.pipelining
@@ -0,0 +1,44 @@
+HTTP Pipelining with libcurl
+============================
+
+Background
+
+Since pipelining implies that one or more requests are sent to a server before
+the previous response(s) have been received, we only support it for multi
+interface use.
+
+Considerations
+
+When using the multi interface, you create one easy handle for each transfer.
+Bascially any number of handles can be created, added and used with the multi
+interface - simultaneously. It is an interface designed to allow many
+simultaneous transfers while still using a single thread. Pipelining does not
+change any of these details.
+
+API
+
+We've added a new option to curl_multi_setopt() called CURLMOPT_PIPELINING
+that enables "attempted pipelining" and then all easy handles used on that
+handle will attempt to use an existing pipeline.
+
+Details
+
+- A pipeline is only created if a previous connection exists to the same IP
+ address that the new request is being made to use.
+
+- Pipelines are only supported for HTTP(S) as no other currently supported
+ protocol has features resemembling this, but we still name this feature
+ plain 'pipelining' to possibly one day support it for other protocols as
+ well.
+
+- HTTP Pipelining is for GET and HEAD requests only.
+
+- When a pipeline is in use, we must take precautions so that when used easy
+ handles (i.e those who still wait for a response) are removed from the multi
+ handle, we must deal with the outstanding response nicely.
+
+- Explicitly asking for pipelining handle X and handle Y won't be supported.
+ It isn't easy for an app to do this association. The lib should probably
+ still resolve the second one properly to make sure that they actually _can_
+ be considered for pipelining. Also, asking for explicit pipelining on handle
+ X may be tricky when handle X get a closed connection.
diff --git a/lib/amigaos.c b/lib/amigaos.c
index e3ff85f98..34f95e9b5 100644
--- a/lib/amigaos.c
+++ b/lib/amigaos.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -71,7 +71,7 @@ bool Curl_amiga_init()
}
#ifdef __libnix__
-ADD2EXIT(Curl_amiga_cleanup, -50);
+ADD2EXIT(Curl_amiga_cleanup,-50);
#endif
#endif /* __AMIGA__ && ! __ixemul__ */
diff --git a/lib/asyn-ares.c b/lib/asyn-ares.c
index 98ecdfd71..4404b6c98 100644
--- a/lib/asyn-ares.c
+++ b/lib/asyn-ares.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -68,7 +68,9 @@
#include "connect.h"
#include "select.h"
#include "progress.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
# if defined(CURL_STATICLIB) && !defined(CARES_STATICLIB) && \
(defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__))
@@ -164,7 +166,7 @@ void Curl_resolver_cleanup(void *resolver)
int Curl_resolver_duphandle(void **to, void *from)
{
/* Clone the ares channel for the new handle */
- if(ARES_SUCCESS != ares_dup((ares_channel*)to, (ares_channel)from))
+ if(ARES_SUCCESS != ares_dup((ares_channel*)to,(ares_channel)from))
return CURLE_FAILED_INIT;
return CURLE_OK;
}
@@ -186,7 +188,8 @@ void Curl_resolver_cancel(struct connectdata *conn)
*/
static void destroy_async_data (struct Curl_async *async)
{
- free(async->hostname);
+ if(async->hostname)
+ free(async->hostname);
if(async->os_specific) {
struct ResolverResults *res = (struct ResolverResults *)async->os_specific;
@@ -385,7 +388,7 @@ CURLcode Curl_resolver_wait_resolv(struct connectdata *conn,
timeout_ms = 1000;
waitperform(conn, timeout_ms);
- Curl_resolver_is_resolved(conn, &temp_entry);
+ Curl_resolver_is_resolved(conn,&temp_entry);
if(conn->async.done)
break;
@@ -533,15 +536,15 @@ Curl_addrinfo *Curl_resolver_getaddrinfo(struct connectdata *conn,
bufp = strdup(hostname);
if(bufp) {
struct ResolverResults *res = NULL;
- free(conn->async.hostname);
+ Curl_safefree(conn->async.hostname);
conn->async.hostname = bufp;
conn->async.port = port;
conn->async.done = FALSE; /* not done */
conn->async.status = 0; /* clear */
conn->async.dns = NULL; /* clear */
- res = calloc(sizeof(struct ResolverResults), 1);
+ res = calloc(sizeof(struct ResolverResults),1);
if(!res) {
- free(conn->async.hostname);
+ Curl_safefree(conn->async.hostname);
conn->async.hostname = NULL;
return NULL;
}
diff --git a/lib/asyn-thread.c b/lib/asyn-thread.c
index bd47d5ad5..80b5e7851 100644
--- a/lib/asyn-thread.c
+++ b/lib/asyn-thread.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -69,9 +69,11 @@
#include "inet_ntop.h"
#include "curl_threads.h"
#include "connect.h"
-#include "curl_printf.h"
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -190,12 +192,13 @@ void destroy_thread_sync_data(struct thread_sync_data * tsd)
free(tsd->mtx);
}
- free(tsd->hostname);
+ if(tsd->hostname)
+ free(tsd->hostname);
if(tsd->res)
Curl_freeaddrinfo(tsd->res);
- memset(tsd, 0, sizeof(*tsd));
+ memset(tsd,0,sizeof(*tsd));
}
/* Initialize resolver thread synchronization data */
@@ -363,7 +366,9 @@ static void destroy_async_data (struct Curl_async *async)
}
async->os_specific = NULL;
- free(async->hostname);
+ if(async->hostname)
+ free(async->hostname);
+
async->hostname = NULL;
}
@@ -393,7 +398,7 @@ static bool init_resolve_thread (struct connectdata *conn,
if(!init_thread_sync_data(td, hostname, port, hints))
goto err_exit;
- free(conn->async.hostname);
+ Curl_safefree(conn->async.hostname);
conn->async.hostname = strdup(hostname);
if(!conn->async.hostname)
goto err_exit;
diff --git a/lib/base64.c b/lib/base64.c
index 6b87eed40..6b1eb7c9c 100644
--- a/lib/base64.c
+++ b/lib/base64.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -23,14 +23,17 @@
/* Base64 encoding/decoding */
#include "curl_setup.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "urldata.h" /* for the SessionHandle definition */
#include "warnless.h"
#include "curl_base64.h"
+#include "curl_memory.h"
#include "non-ascii.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* include memdebug.h last */
#include "memdebug.h"
/* ---- Base64 Encoding/Decoding Table --- */
@@ -149,7 +152,7 @@ CURLcode Curl_base64_decode(const char *src,
for(i = 0; i < numQuantums; i++) {
size_t result = decodeQuantum(pos, src);
if(!result) {
- free(newstr);
+ Curl_safefree(newstr);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -252,7 +255,8 @@ static CURLcode base64_encode(const char *table64,
*output = '\0';
*outptr = base64data; /* return pointer to new data, allocated memory */
- free(convbuf);
+ if(convbuf)
+ free(convbuf);
*outlen = strlen(base64data); /* return the length of the new data */
diff --git a/lib/bundles.c b/lib/bundles.c
new file mode 100644
index 000000000..aadf02656
--- /dev/null
+++ b/lib/bundles.c
@@ -0,0 +1,110 @@
+/***************************************************************************
+ * _ _ ____ _
+ * Project ___| | | | _ \| |
+ * / __| | | | |_) | |
+ * | (__| |_| | _ <| |___
+ * \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2012, Linus Nielsen Feltzing, <linus@haxx.se>
+ * Copyright (C) 2012, 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 http://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.
+ *
+ ***************************************************************************/
+
+#include "curl_setup.h"
+
+#include <curl/curl.h>
+
+#include "urldata.h"
+#include "url.h"
+#include "progress.h"
+#include "multiif.h"
+#include "bundles.h"
+#include "sendf.h"
+#include "rawstr.h"
+
+#include "curl_memory.h"
+/* The last #include file should be: */
+#include "memdebug.h"
+
+static void conn_llist_dtor(void *user, void *element)
+{
+ struct connectdata *data = element;
+ (void)user;
+
+ data->bundle = NULL;
+}
+
+CURLcode Curl_bundle_create(struct SessionHandle *data,
+ struct connectbundle **cb_ptr)
+{
+ (void)data;
+ DEBUGASSERT(*cb_ptr == NULL);
+ *cb_ptr = malloc(sizeof(struct connectbundle));
+ if(!*cb_ptr)
+ return CURLE_OUT_OF_MEMORY;
+
+ (*cb_ptr)->num_connections = 0;
+ (*cb_ptr)->server_supports_pipelining = FALSE;
+
+ (*cb_ptr)->conn_list = Curl_llist_alloc((curl_llist_dtor) conn_llist_dtor);
+ if(!(*cb_ptr)->conn_list) {
+ Curl_safefree(*cb_ptr);
+ return CURLE_OUT_OF_MEMORY;
+ }
+ return CURLE_OK;
+}
+
+void Curl_bundle_destroy(struct connectbundle *cb_ptr)
+{
+ if(!cb_ptr)
+ return;
+
+ if(cb_ptr->conn_list) {
+ Curl_llist_destroy(cb_ptr->conn_list, NULL);
+ cb_ptr->conn_list = NULL;
+ }
+ Curl_safefree(cb_ptr);
+}
+
+/* Add a connection to a bundle */
+CURLcode Curl_bundle_add_conn(struct connectbundle *cb_ptr,
+ struct connectdata *conn)
+{
+ if(!Curl_llist_insert_next(cb_ptr->conn_list, cb_ptr->conn_list->tail, conn))
+ return CURLE_OUT_OF_MEMORY;
+
+ conn->bundle = cb_ptr;
+
+ cb_ptr->num_connections++;
+ return CURLE_OK;
+}
+
+/* Remove a connection from a bundle */
+int Curl_bundle_remove_conn(struct connectbundle *cb_ptr,
+ struct connectdata *conn)
+{
+ struct curl_llist_element *curr;
+
+ curr = cb_ptr->conn_list->head;
+ while(curr) {
+ if(curr->ptr == conn) {
+ Curl_llist_remove(cb_ptr->conn_list, curr, NULL);
+ cb_ptr->num_connections--;
+ conn->bundle = NULL;
+ return 1; /* we removed a handle */
+ }
+ curr = curr->next;
+ }
+ return 0;
+}
diff --git a/tests/unit/unit1601.c b/lib/bundles.h
index 17aba05f5..3816c4065 100644
--- a/tests/unit/unit1601.c
+++ b/lib/bundles.h
@@ -1,3 +1,5 @@
+#ifndef HEADER_CURL_BUNDLES_H
+#define HEADER_CURL_BUNDLES_H
/***************************************************************************
* _ _ ____ _
* Project ___| | | | _ \| |
@@ -5,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012, Linus Nielsen Feltzing, <linus@haxx.se>
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
@@ -19,33 +21,25 @@
* KIND, either express or implied.
*
***************************************************************************/
-#include "curlcheck.h"
-#include "curl_md5.h"
+struct connectbundle {
+ bool server_supports_pipelining; /* TRUE if server supports pipelining,
+ set after first response */
+ size_t num_connections; /* Number of connections in the bundle */
+ struct curl_llist *conn_list; /* The connectdata members of the bundle */
+};
-static CURLcode unit_setup(void)
-{
- return CURLE_OK;
-}
+CURLcode Curl_bundle_create(struct SessionHandle *data,
+ struct connectbundle **cb_ptr);
-static void unit_stop(void)
-{
+void Curl_bundle_destroy(struct connectbundle *cb_ptr);
-}
+CURLcode Curl_bundle_add_conn(struct connectbundle *cb_ptr,
+ struct connectdata *conn);
-UNITTEST_START
+int Curl_bundle_remove_conn(struct connectbundle *cb_ptr,
+ struct connectdata *conn);
- unsigned char output[16];
- unsigned char *testp = output;
- Curl_md5it(output, (const unsigned char *)"1");
- verify_memory(testp,
- "\xc4\xca\x42\x38\xa0\xb9\x23\x82\x0d\xcc\x50\x9a\x6f\x75\x84\x9b", 16);
+#endif /* HEADER_CURL_BUNDLES_H */
- Curl_md5it(output, (const unsigned char *)"hello-you-fool");
-
- verify_memory(testp,
- "\x88\x67\x0b\x6d\x5d\x74\x2f\xad\xa5\xcd\xf9\xb6\x82\x87\x5f\x22", 16);
-
-
-UNITTEST_STOP
diff --git a/lib/checksrc.pl b/lib/checksrc.pl
index 8fad2cfcb..f561492a7 100755
--- a/lib/checksrc.pl
+++ b/lib/checksrc.pl
@@ -6,7 +6,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 2011 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2011 - 2013, 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
@@ -26,32 +26,13 @@ my $indent = 2;
my $warnings;
my $errors;
-my $supressed; # whitelisted problems
my $file;
my $dir=".";
my $wlist;
-my $windows_os = $^O eq 'MSWin32' || $^O eq 'msys' || $^O eq 'cygwin';
-
-my %whitelist;
-
-sub readwhitelist {
- open(W, "<$dir/checksrc.whitelist");
- my @all=<W>;
- for(@all) {
- $windows_os ? $_ =~ s/\r?\n$// : chomp;
- $whitelist{$_}=1;
- }
- close(W);
-}
sub checkwarn {
my ($num, $col, $file, $line, $msg, $error) = @_;
- if($whitelist{$line}) {
- $supressed++;
- return;
- }
-
my $w=$error?"error":"warning";
if($w) {
@@ -97,8 +78,6 @@ if(!$file) {
exit;
}
-readwhitelist();
-
do {
if("$wlist" !~ / $file /) {
my $fullname = $file;
@@ -121,7 +100,7 @@ sub scanfile {
my $copyright=0;
while(<R>) {
- $windows_os ? $_ =~ s/\r?\n$// : chomp;
+ chomp;
my $l = $_;
my $column = 0;
@@ -165,49 +144,6 @@ sub scanfile {
}
}
- # check for "return(" without space
- if($l =~ /^(.*)return\(/) {
- if($1 =~ / *\#/) {
- # this is a #if, treat it differently
- }
- else {
- checkwarn($line, length($1)+6, $file, $l,
- "return without space before paren");
- }
- }
-
- # check for comma without space
- if($l =~ /^(.*),[^ \n]/) {
- my $pref=$1;
- my $ign=0;
- if($pref =~ / *\#/) {
- # this is a #if, treat it differently
- $ign=1;
- }
- elsif($pref =~ /\/\*/) {
- # this is a comment
- $ign=1;
- }
- elsif($pref =~ /[\"\']/) {
- $ign = 1;
- # There is a quote here, figure out whether the comma is
- # within a string or '' or not.
- if($pref =~ /\"/) {
- # withing a string
- }
- elsif($pref =~ /\'$/) {
- # a single letter
- }
- else {
- $ign = 0;
- }
- }
- if(!$ign) {
- checkwarn($line, length($pref)+1, $file, $l,
- "comma without following space");
- }
- }
-
# check for "} else"
if($l =~ /^(.*)\} *else/) {
checkwarn($line, length($1), $file, $l, "else after closing brace on same line");
@@ -217,26 +153,12 @@ sub scanfile {
checkwarn($line, length($1)+1, $file, $l, "missing space after close paren");
}
- # check for space before the semicolon last in a line
- if($l =~ /^(.*[^ ].*) ;$/) {
- checkwarn($line, length($1), $file, $l, "space before last semicolon");
- }
-
# scan for use of banned functions
if($l =~ /^(.*\W)(sprintf|vsprintf|strcat|strncat|gets)\s*\(/) {
checkwarn($line, length($1), $file, $l,
"use of $2 is banned");
}
- # scan for use of non-binary fopen without the macro
- if($l =~ /^(.*\W)fopen\s*\([^"]*\"([^"]*)/) {
- my $mode = $2;
- if($mode !~ /b/) {
- checkwarn($line, length($1), $file, $l,
- "use of non-binary fopen without FOPEN_* macro");
- }
- }
-
# check for open brace first on line but not first column
# only alert if previous line ended with a close paren and wasn't a cpp
# line
diff --git a/lib/checksrc.whitelist b/lib/checksrc.whitelist
deleted file mode 100644
index e261b9da1..000000000
--- a/lib/checksrc.whitelist
+++ /dev/null
@@ -1,10 +0,0 @@
- 227 Entering Passive Mode (a1,a2,a3,a4,p1,p2)
- 228 Entering Long Passive Mode (4,4,a1,a2,a3,a4,2,p1,p2)
- 150 ASCII data connection for /bin/ls (137.167.104.91,37445) (0 bytes).
- 150 Opening ASCII mode data connection for [file] (0.0.0.0,0) (545 bytes)
- * no_proxy=domain1.dom,host.domain2.dom
- Default values are (0,0) initialized by calloc.
- file = fopen(name, "r"); /* VMS */
- return fopen(file, "r"); /* VMS */
- return fopen(file, "r", "rfm=stmlf", "ctx=stm");
- curl_memlog("FILE %s:%d fopen(\"%s\",\"%s\") = %p\n",
diff --git a/lib/config-amigaos.h b/lib/config-amigaos.h
index 04b18b744..76d887755 100644
--- a/lib/config-amigaos.h
+++ b/lib/config-amigaos.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -93,6 +93,7 @@
#define USE_MANUAL 1
#define USE_OPENSSL 1
+#define USE_SSLEAY 1
#define CURL_DISABLE_LDAP 1
#define OS "AmigaOS"
diff --git a/lib/config-dos.h b/lib/config-dos.h
index 288bd1db3..dd5b06db4 100644
--- a/lib/config-dos.h
+++ b/lib/config-dos.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -132,11 +132,12 @@
#define HAVE_LIBZ 1
#endif
-/* USE_OPENSSL on cmd-line */
-#ifdef USE_OPENSSL
+/* USE_SSLEAY on cmd-line */
+#ifdef USE_SSLEAY
#define HAVE_CRYPTO_CLEANUP_ALL_EX_DATA 1
#define HAVE_OPENSSL_ENGINE_H 1
#define OPENSSL_NO_KRB5 1
+ #define USE_OPENSSL 1
#endif
/* to disable LDAP */
@@ -162,6 +163,11 @@
#define HAVE_TERMIOS_H 1
#define HAVE_VARIADIC_MACROS_GCC 1
+ /* Because djgpp <= 2.03 doesn't have snprintf() etc. */
+ #if (DJGPP_MINOR < 4)
+ #define _MPRINTF_REPLACE
+ #endif
+
#elif defined(__WATCOMC__)
#define HAVE_STRCASECMP 1
diff --git a/lib/config-mac.h b/lib/config-mac.h
index ee7a6590c..d89c38515 100644
--- a/lib/config-mac.h
+++ b/lib/config-mac.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -70,6 +70,7 @@
#define HAVE_SIG_ATOMIC_T 1
#ifdef MACOS_SSL_SUPPORT
+# define USE_SSLEAY 1
# define USE_OPENSSL 1
#endif
diff --git a/lib/config-symbian.h b/lib/config-symbian.h
index a40e3d8e0..f7eaab92d 100644
--- a/lib/config-symbian.h
+++ b/lib/config-symbian.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -69,7 +69,7 @@
/* #undef CURL_EXTERN_SYMBOL */
/* Use Windows LDAP implementation */
-/* #undef USE_WIN32_LDAP */
+/* #undef CURL_LDAP_WIN */
/* your Entropy Gathering Daemon socket pathname */
/* #undef EGD_SOCKET */
@@ -808,4 +808,10 @@
#define HAVE_ZLIB_H 1
#endif
+/* Enable appropriate definitions only when OpenSSL support is enabled */
+#ifdef USE_SSLEAY
+/* if OpenSSL is in use */
+#define USE_OPENSSL
+#endif
+
#endif /* HEADER_CURL_CONFIG_SYMBIAN_H */
diff --git a/lib/config-tpf.h b/lib/config-tpf.h
index d6b8cc2f2..6ff701a9f 100644
--- a/lib/config-tpf.h
+++ b/lib/config-tpf.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -646,7 +646,7 @@
/* #undef USE_OPENSSL */
/* if SSL is enabled */
-/* #undef USE_OPENSSL */
+/* #undef USE_SSLEAY */
/* to enable SSPI support */
/* #undef USE_WINDOWS_SSPI */
diff --git a/lib/config-vxworks.h b/lib/config-vxworks.h
index d889efcd8..05220b581 100644
--- a/lib/config-vxworks.h
+++ b/lib/config-vxworks.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -75,7 +75,7 @@
/* #undef CURL_EXTERN_SYMBOL */
/* Use Windows LDAP implementation */
-/* #undef USE_WIN32_LDAP */
+/* #undef CURL_LDAP_WIN */
/* your Entropy Gathering Daemon socket pathname */
/* #undef EGD_SOCKET */
@@ -883,6 +883,9 @@
/* if OpenSSL is in use */
#define USE_OPENSSL 1
+/* if SSL is enabled */
+#define USE_SSLEAY 1
+
/* Define to 1 if you are building a Windows target without large file
support. */
/* #undef USE_WIN32_LARGE_FILES */
diff --git a/lib/config-win32.h b/lib/config-win32.h
index e9a371212..744e02271 100644
--- a/lib/config-win32.h
+++ b/lib/config-win32.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -678,30 +678,30 @@ Vista
/* ---------------------------------------------------------------- */
#if defined(CURL_HAS_NOVELL_LDAPSDK) || defined(CURL_HAS_MOZILLA_LDAPSDK)
-#undef USE_WIN32_LDAP
+#undef CURL_LDAP_WIN
#define HAVE_LDAP_SSL_H 1
#define HAVE_LDAP_URL_PARSE 1
#elif defined(CURL_HAS_OPENLDAP_LDAPSDK)
-#undef USE_WIN32_LDAP
+#undef CURL_LDAP_WIN
#define HAVE_LDAP_URL_PARSE 1
#else
#undef HAVE_LDAP_URL_PARSE
-#define USE_WIN32_LDAP 1
+#define CURL_LDAP_WIN 1
#endif
-#if defined(__WATCOMC__) && defined(USE_WIN32_LDAP)
+#if defined(__WATCOMC__) && defined(CURL_LDAP_WIN)
#if __WATCOMC__ < 1280
#define WINBERAPI __declspec(cdecl)
#define WINLDAPAPI __declspec(cdecl)
#endif
#endif
-#if defined(__POCC__) && defined(USE_WIN32_LDAP)
+#if defined(__POCC__) && defined(CURL_LDAP_WIN)
# define CURL_DISABLE_LDAP 1
#endif
/* Define to use the Windows crypto library. */
-#if !defined(USE_OPENSSL) && !defined(USE_NSS)
+#if !defined(USE_SSLEAY) && !defined(USE_NSS)
#define USE_WIN32_CRYPTO
#endif
diff --git a/lib/config-win32ce.h b/lib/config-win32ce.h
index a723fd188..a8ab0d34e 100644
--- a/lib/config-win32ce.h
+++ b/lib/config-win32ce.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -409,7 +409,7 @@
/* LDAP SUPPORT */
/* ---------------------------------------------------------------- */
-#define USE_WIN32_LDAP 1
+#define CURL_LDAP_WIN 1
#undef HAVE_LDAP_URL_PARSE
/* ---------------------------------------------------------------- */
@@ -443,6 +443,6 @@
#define ENOMEM 2
#define EAGAIN 3
-extern int stat(const char *path, struct stat *buffer);
+extern int stat(const char *path,struct stat *buffer );
#endif /* HEADER_CURL_CONFIG_WIN32CE_H */
diff --git a/lib/conncache.c b/lib/conncache.c
index c712ed7b9..fcfb15015 100644
--- a/lib/conncache.c
+++ b/lib/conncache.c
@@ -6,7 +6,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2012, Linus Nielsen Feltzing, <linus@haxx.se>
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -31,134 +31,66 @@
#include "multiif.h"
#include "sendf.h"
#include "rawstr.h"
+#include "bundles.h"
#include "conncache.h"
-#include "curl_printf.h"
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
-static void conn_llist_dtor(void *user, void *element)
-{
- struct connectdata *data = element;
- (void)user;
-
- data->bundle = NULL;
-}
-
-static CURLcode bundle_create(struct SessionHandle *data,
- struct connectbundle **cb_ptr)
-{
- (void)data;
- DEBUGASSERT(*cb_ptr == NULL);
- *cb_ptr = malloc(sizeof(struct connectbundle));
- if(!*cb_ptr)
- return CURLE_OUT_OF_MEMORY;
-
- (*cb_ptr)->num_connections = 0;
- (*cb_ptr)->multiuse = BUNDLE_UNKNOWN;
-
- (*cb_ptr)->conn_list = Curl_llist_alloc((curl_llist_dtor) conn_llist_dtor);
- if(!(*cb_ptr)->conn_list) {
- Curl_safefree(*cb_ptr);
- return CURLE_OUT_OF_MEMORY;
- }
- return CURLE_OK;
-}
-
-static void bundle_destroy(struct connectbundle *cb_ptr)
+static void free_bundle_hash_entry(void *freethis)
{
- if(!cb_ptr)
- return;
+ struct connectbundle *b = (struct connectbundle *) freethis;
- if(cb_ptr->conn_list) {
- Curl_llist_destroy(cb_ptr->conn_list, NULL);
- cb_ptr->conn_list = NULL;
- }
- free(cb_ptr);
+ Curl_bundle_destroy(b);
}
-/* Add a connection to a bundle */
-static CURLcode bundle_add_conn(struct connectbundle *cb_ptr,
- struct connectdata *conn)
+struct conncache *Curl_conncache_init(int size)
{
- if(!Curl_llist_insert_next(cb_ptr->conn_list, cb_ptr->conn_list->tail, conn))
- return CURLE_OUT_OF_MEMORY;
-
- conn->bundle = cb_ptr;
+ struct conncache *connc;
- cb_ptr->num_connections++;
- return CURLE_OK;
-}
+ connc = calloc(1, sizeof(struct conncache));
+ if(!connc)
+ return NULL;
-/* Remove a connection from a bundle */
-static int bundle_remove_conn(struct connectbundle *cb_ptr,
- struct connectdata *conn)
-{
- struct curl_llist_element *curr;
+ connc->hash = Curl_hash_alloc(size, Curl_hash_str,
+ Curl_str_key_compare, free_bundle_hash_entry);
- curr = cb_ptr->conn_list->head;
- while(curr) {
- if(curr->ptr == conn) {
- Curl_llist_remove(cb_ptr->conn_list, curr, NULL);
- cb_ptr->num_connections--;
- conn->bundle = NULL;
- return 1; /* we removed a handle */
- }
- curr = curr->next;
+ if(!connc->hash) {
+ free(connc);
+ return NULL;
}
- return 0;
-}
-static void free_bundle_hash_entry(void *freethis)
-{
- struct connectbundle *b = (struct connectbundle *) freethis;
-
- bundle_destroy(b);
-}
-
-int Curl_conncache_init(struct conncache *connc, int size)
-{
- return Curl_hash_init(&connc->hash, size, Curl_hash_str,
- Curl_str_key_compare, free_bundle_hash_entry);
+ return connc;
}
void Curl_conncache_destroy(struct conncache *connc)
{
- if(connc)
- Curl_hash_destroy(&connc->hash);
-}
-
-/* returns an allocated key to find a bundle for this connection */
-static char *hashkey(struct connectdata *conn)
-{
- return aprintf("%s:%d",
- conn->bits.proxy?conn->proxy.name:conn->host.name,
- conn->localport);
+ if(connc) {
+ Curl_hash_destroy(connc->hash);
+ connc->hash = NULL;
+ free(connc);
+ }
}
-/* Look up the bundle with all the connections to the same host this
- connectdata struct is setup to use. */
-struct connectbundle *Curl_conncache_find_bundle(struct connectdata *conn,
- struct conncache *connc)
+struct connectbundle *Curl_conncache_find_bundle(struct conncache *connc,
+ char *hostname)
{
struct connectbundle *bundle = NULL;
- if(connc) {
- char *key = hashkey(conn);
- if(key) {
- bundle = Curl_hash_pick(&connc->hash, key, strlen(key));
- free(key);
- }
- }
+
+ if(connc)
+ bundle = Curl_hash_pick(connc->hash, hostname, strlen(hostname)+1);
return bundle;
}
static bool conncache_add_bundle(struct conncache *connc,
- char *key,
+ char *hostname,
struct connectbundle *bundle)
{
- void *p = Curl_hash_add(&connc->hash, key, strlen(key), bundle);
+ void *p;
+
+ p = Curl_hash_add(connc->hash, hostname, strlen(hostname)+1, bundle);
return p?TRUE:FALSE;
}
@@ -172,14 +104,14 @@ static void conncache_remove_bundle(struct conncache *connc,
if(!connc)
return;
- Curl_hash_start_iterate(&connc->hash, &iter);
+ Curl_hash_start_iterate(connc->hash, &iter);
he = Curl_hash_next_element(&iter);
while(he) {
if(he->ptr == bundle) {
/* The bundle is destroyed by the hash destructor function,
free_bundle_hash_entry() */
- Curl_hash_delete(&connc->hash, he->key, he->key_len);
+ Curl_hash_delete(connc->hash, he->key, he->key_len);
return;
}
@@ -195,31 +127,22 @@ CURLcode Curl_conncache_add_conn(struct conncache *connc,
struct connectbundle *new_bundle = NULL;
struct SessionHandle *data = conn->data;
- bundle = Curl_conncache_find_bundle(conn, data->state.conn_cache);
+ bundle = Curl_conncache_find_bundle(data->state.conn_cache,
+ conn->host.name);
if(!bundle) {
- char *key;
- int rc;
-
- result = bundle_create(data, &new_bundle);
+ result = Curl_bundle_create(data, &new_bundle);
if(result)
return result;
- key = hashkey(conn);
- if(!key) {
- bundle_destroy(new_bundle);
- return CURLE_OUT_OF_MEMORY;
- }
-
- rc = conncache_add_bundle(data->state.conn_cache, key, new_bundle);
- free(key);
- if(!rc) {
- bundle_destroy(new_bundle);
+ if(!conncache_add_bundle(data->state.conn_cache,
+ conn->host.name, new_bundle)) {
+ Curl_bundle_destroy(new_bundle);
return CURLE_OUT_OF_MEMORY;
}
bundle = new_bundle;
}
- result = bundle_add_conn(bundle, conn);
+ result = Curl_bundle_add_conn(bundle, conn);
if(result) {
if(new_bundle)
conncache_remove_bundle(data->state.conn_cache, new_bundle);
@@ -244,7 +167,7 @@ void Curl_conncache_remove_conn(struct conncache *connc,
/* The bundle pointer can be NULL, since this function can be called
due to a failed connection attempt, before being added to a bundle */
if(bundle) {
- bundle_remove_conn(bundle, conn);
+ Curl_bundle_remove_conn(bundle, conn);
if(bundle->num_connections == 0) {
conncache_remove_bundle(connc, bundle);
}
@@ -276,7 +199,7 @@ void Curl_conncache_foreach(struct conncache *connc,
if(!connc)
return;
- Curl_hash_start_iterate(&connc->hash, &iter);
+ Curl_hash_start_iterate(connc->hash, &iter);
he = Curl_hash_next_element(&iter);
while(he) {
@@ -307,7 +230,7 @@ Curl_conncache_find_first_connection(struct conncache *connc)
struct curl_hash_element *he;
struct connectbundle *bundle;
- Curl_hash_start_iterate(&connc->hash, &iter);
+ Curl_hash_start_iterate(connc->hash, &iter);
he = Curl_hash_next_element(&iter);
while(he) {
diff --git a/lib/conncache.h b/lib/conncache.h
index 59181bf3d..d793f2482 100644
--- a/lib/conncache.h
+++ b/lib/conncache.h
@@ -7,7 +7,6 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 2012 - 2014, Linus Nielsen Feltzing, <linus@haxx.se>
*
* This software is licensed as described in the file COPYING, which
@@ -24,30 +23,18 @@
***************************************************************************/
struct conncache {
- struct curl_hash hash;
+ struct curl_hash *hash;
size_t num_connections;
long next_connection_id;
struct timeval last_cleanup;
};
-#define BUNDLE_NO_MULTIUSE -1
-#define BUNDLE_UNKNOWN 0 /* initial value */
-#define BUNDLE_PIPELINING 1
-#define BUNDLE_MULTIPLEX 2
-
-struct connectbundle {
- int multiuse; /* supports multi-use */
- size_t num_connections; /* Number of connections in the bundle */
- struct curl_llist *conn_list; /* The connectdata members of the bundle */
-};
-
-int Curl_conncache_init(struct conncache *, int size);
+struct conncache *Curl_conncache_init(int size);
void Curl_conncache_destroy(struct conncache *connc);
-/* return the correct bundle, to a host or a proxy */
-struct connectbundle *Curl_conncache_find_bundle(struct connectdata *conn,
- struct conncache *connc);
+struct connectbundle *Curl_conncache_find_bundle(struct conncache *connc,
+ char *hostname);
CURLcode Curl_conncache_add_conn(struct conncache *connc,
struct connectdata *conn);
diff --git a/lib/connect.c b/lib/connect.c
index 18ac32c32..5a60d14ab 100644
--- a/lib/connect.c
+++ b/lib/connect.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -56,12 +56,15 @@
#include <inet.h>
#endif
-#include "curl_printf.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "urldata.h"
#include "sendf.h"
#include "if2ip.h"
#include "strerror.h"
#include "connect.h"
+#include "curl_memory.h"
#include "select.h"
#include "url.h" /* for Curl_safefree() */
#include "multiif.h"
@@ -74,8 +77,7 @@
#include "conncache.h"
#include "multihandle.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
#ifdef __SYMBIAN32__
@@ -540,7 +542,6 @@ static CURLcode trynextip(struct connectdata *conn,
int sockindex,
int tempindex)
{
- const int other = tempindex ^ 1;
CURLcode result = CURLE_COULDNT_CONNECT;
/* First clean up after the failed socket.
@@ -559,21 +560,20 @@ static CURLcode trynextip(struct connectdata *conn,
family = conn->tempaddr[tempindex]->ai_family;
ai = conn->tempaddr[tempindex]->ai_next;
}
-#ifdef ENABLE_IPV6
else if(conn->tempaddr[0]) {
/* happy eyeballs - try the other protocol family */
int firstfamily = conn->tempaddr[0]->ai_family;
+#ifdef ENABLE_IPV6
family = (firstfamily == AF_INET) ? AF_INET6 : AF_INET;
+#else
+ family = firstfamily;
+#endif
ai = conn->tempaddr[0]->ai_next;
}
-#endif
while(ai) {
- if(conn->tempaddr[other]) {
- /* we can safely skip addresses of the other protocol family */
- while(ai && ai->ai_family != family)
- ai = ai->ai_next;
- }
+ while(ai && ai->ai_family != family)
+ ai = ai->ai_next;
if(ai) {
result = singleipconnect(conn, ai, &conn->tempsock[tempindex]);
@@ -749,7 +749,6 @@ CURLcode Curl_is_connected(struct connectdata *conn,
}
for(i=0; i<2; i++) {
- const int other = i ^ 1;
if(conn->tempsock[i] == CURL_SOCKET_BAD)
continue;
@@ -779,6 +778,7 @@ CURLcode Curl_is_connected(struct connectdata *conn,
else if(rc == CURL_CSELECT_OUT) {
if(verifyconnect(conn->tempsock[i], &error)) {
/* we are connected with TCP, awesome! */
+ int other = i ^ 1;
/* use this socket from now on */
conn->sock[sockindex] = conn->tempsock[i];
@@ -820,7 +820,6 @@ CURLcode Curl_is_connected(struct connectdata *conn,
data->state.os_errno = error;
SET_SOCKERRNO(error);
if(conn->tempaddr[i]) {
- CURLcode status;
char ipaddress[MAX_IPADR_LEN];
Curl_printable_address(conn->tempaddr[i], ipaddress, MAX_IPADR_LEN);
infof(data, "connect to %s port %ld failed: %s\n",
@@ -829,11 +828,7 @@ CURLcode Curl_is_connected(struct connectdata *conn,
conn->timeoutms_per_addr = conn->tempaddr[i]->ai_next == NULL ?
allow : allow / 2;
- status = trynextip(conn, sockindex, i);
- if(status != CURLE_COULDNT_CONNECT
- || conn->tempsock[other] == CURL_SOCKET_BAD)
- /* the last attempt failed and no other sockets remain open */
- result = status;
+ result = trynextip(conn, sockindex, i);
}
}
}
@@ -883,7 +878,7 @@ static void tcpnodelay(struct connectdata *conn,
infof(data, "Could not set TCP_NODELAY: %s\n",
Curl_strerror(conn, SOCKERRNO));
else
- infof(data, "TCP_NODELAY set\n");
+ infof(data,"TCP_NODELAY set\n");
#else
(void)conn;
(void)sockfd;
@@ -949,21 +944,16 @@ void Curl_sndbufset(curl_socket_t sockfd)
detectOsState = DETECT_OS_VISTA_OR_LATER;
}
#else
- ULONGLONG cm;
+ ULONGLONG majorVersionMask;
OSVERSIONINFOEX osver;
memset(&osver, 0, sizeof(osver));
osver.dwOSVersionInfoSize = sizeof(osver);
osver.dwMajorVersion = majorVersion;
+ majorVersionMask = VerSetConditionMask(0, VER_MAJORVERSION,
+ VER_GREATER_EQUAL);
- cm = VerSetConditionMask(0, VER_MAJORVERSION, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_MINORVERSION, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMINOR, VER_GREATER_EQUAL);
-
- if(VerifyVersionInfo(&osver, (VER_MAJORVERSION | VER_MINORVERSION |
- VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR),
- cm))
+ if(VerifyVersionInfo(&osver, VER_MAJORVERSION, majorVersionMask))
detectOsState = DETECT_OS_VISTA_OR_LATER;
else
detectOsState = DETECT_OS_PREVISTA;
@@ -1026,12 +1016,8 @@ static CURLcode singleipconnect(struct connectdata *conn,
}
infof(data, " Trying %s...\n", ipaddress);
-#ifdef ENABLE_IPV6
is_tcp = (addr.family == AF_INET || addr.family == AF_INET6) &&
- addr.socktype == SOCK_STREAM;
-#else
- is_tcp = (addr.family == AF_INET) && addr.socktype == SOCK_STREAM;
-#endif
+ addr.socktype == SOCK_STREAM;
if(is_tcp && data->set.tcp_nodelay)
tcpnodelay(conn, sockfd);
@@ -1057,11 +1043,7 @@ static CURLcode singleipconnect(struct connectdata *conn,
}
/* possibly bind the local end to an IP, interface or port */
- if(addr.family == AF_INET
-#ifdef ENABLE_IPV6
- || addr.family == AF_INET6
-#endif
- ) {
+ if(addr.family == AF_INET || addr.family == AF_INET6) {
result = bindlocal(conn, sockfd, addr.family,
Curl_ipv6_scope((struct sockaddr*)&addr.sa_addr));
if(result) {
@@ -1116,7 +1098,7 @@ static CURLcode singleipconnect(struct connectdata *conn,
default:
/* unknown error, fallthrough and try another address! */
infof(data, "Immediate connect fail for %s: %s\n",
- ipaddress, Curl_strerror(conn, error));
+ ipaddress, Curl_strerror(conn,error));
data->state.os_errno = error;
/* connect failed */
@@ -1171,11 +1153,8 @@ CURLcode Curl_connecthost(struct connectdata *conn, /* context */
conn->tempaddr[0] = conn->tempaddr[0]->ai_next;
}
- if(conn->tempsock[0] == CURL_SOCKET_BAD) {
- if(!result)
- result = CURLE_COULDNT_CONNECT;
+ if(conn->tempsock[0] == CURL_SOCKET_BAD)
return result;
- }
data->info.numconnects++; /* to track the number of connections made */
@@ -1210,20 +1189,15 @@ curl_socket_t Curl_getconnectinfo(struct SessionHandle *data,
DEBUGASSERT(data);
- /* this works for an easy handle:
- * - that has been used for curl_easy_perform()
- * - that is associated with a multi handle, and whose connection
- * was detached with CURLOPT_CONNECT_ONLY
- */
- if(data->state.lastconnect && (data->multi_easy || data->multi)) {
+ /* this only works for an easy handle that has been used for
+ curl_easy_perform()! */
+ if(data->state.lastconnect && data->multi_easy) {
struct connectdata *c = data->state.lastconnect;
struct connfind find;
find.tofind = data->state.lastconnect;
find.found = FALSE;
- Curl_conncache_foreach(data->multi_easy?
- &data->multi_easy->conn_cache:
- &data->multi->conn_cache, &find, conn_is_conn);
+ Curl_conncache_foreach(data->multi_easy->conn_cache, &find, conn_is_conn);
if(!find.found) {
data->state.lastconnect = NULL;
@@ -1274,10 +1248,8 @@ int Curl_closesocket(struct connectdata *conn,
accept, then we MUST NOT call the callback but clear the accepted
status */
conn->sock_accepted[SECONDARYSOCKET] = FALSE;
- else {
- Curl_multi_closed(conn, sock);
+ else
return conn->fclosesocket(conn->closesocket_client, sock);
- }
}
if(conn)
@@ -1372,12 +1344,11 @@ void Curl_conncontrol(struct connectdata *conn, bool closeit,
#if defined(CURL_DISABLE_VERBOSE_STRINGS)
(void) reason;
#endif
- if(closeit != conn->bits.close) {
- infof(conn->data, "Marked for [%s]: %s\n", closeit?"closure":"keep alive",
- reason);
- conn->bits.close = closeit; /* the only place in the source code that
- should assign this bit */
- }
+ infof(conn->data, "Marked for [%s]: %s\n", closeit?"closure":"keep alive",
+ reason);
+
+ conn->bits.close = closeit; /* the only place in the source code that should
+ assign this bit */
}
#endif
diff --git a/lib/cookie.c b/lib/cookie.c
index 22730cff4..0b9c8d337 100644
--- a/lib/cookie.c
+++ b/lib/cookie.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -84,33 +84,44 @@ Example set of cookies:
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
-#include "curl_printf.h"
+#define _MPRINTF_REPLACE
+#include <curl/mprintf.h>
+
#include "urldata.h"
#include "cookie.h"
#include "strequal.h"
#include "strtok.h"
#include "sendf.h"
#include "slist.h"
+#include "curl_memory.h"
#include "share.h"
#include "strtoofft.h"
#include "rawstr.h"
#include "curl_memrchr.h"
#include "inet_pton.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
static void freecookie(struct Cookie *co)
{
- free(co->expirestr);
- free(co->domain);
- free(co->path);
- free(co->spath);
- free(co->name);
- free(co->value);
- free(co->maxage);
- free(co->version);
+ if(co->expirestr)
+ free(co->expirestr);
+ if(co->domain)
+ free(co->domain);
+ if(co->path)
+ free(co->path);
+ if(co->spath)
+ free(co->spath);
+ if(co->name)
+ free(co->name);
+ if(co->value)
+ free(co->value);
+ if(co->maxage)
+ free(co->maxage);
+ if(co->version)
+ free(co->version);
+
free(co);
}
@@ -225,14 +236,11 @@ static char *sanitize_cookie_path(const char *cookie_path)
return NULL;
/* some stupid site sends path attribute with '"'. */
- len = strlen(new_path);
if(new_path[0] == '\"') {
- memmove((void *)new_path, (const void *)(new_path + 1), len);
- len--;
+ memmove((void *)new_path, (const void *)(new_path + 1), strlen(new_path));
}
- if(len && (new_path[len - 1] == '\"')) {
- new_path[len - 1] = 0x0;
- len--;
+ if(new_path[strlen(new_path) - 1] == '\"') {
+ new_path[strlen(new_path) - 1] = 0x0;
}
/* RFC6265 5.2.4 The Path Attribute */
@@ -244,7 +252,8 @@ static char *sanitize_cookie_path(const char *cookie_path)
}
/* convert /hoge/ to /hoge */
- if(len && new_path[len - 1] == '/') {
+ len = strlen(new_path);
+ if(1 < len && new_path[len - 1] == '/') {
new_path[len - 1] = 0x0;
}
@@ -289,7 +298,8 @@ void Curl_cookie_loadfiles(struct SessionHandle *data)
*/
static void strstore(char **str, const char *newstr)
{
- free(*str);
+ if(*str)
+ free(*str);
*str = strdup(newstr);
}
@@ -409,7 +419,7 @@ Curl_cookie_add(struct SessionHandle *data,
do {
/* we have a <what>=<this> pair or a stand-alone word here */
name[0]=what[0]=0; /* init the buffers */
- if(1 <= sscanf(ptr, "%" MAX_NAME_TXT "[^;\r\n =] =%"
+ if(1 <= sscanf(ptr, "%" MAX_NAME_TXT "[^;\r\n =]=%"
MAX_COOKIE_LINE_TXT "[^;\r\n]",
name, what)) {
/* Use strstore() below to properly deal with received cookie
@@ -824,13 +834,21 @@ Curl_cookie_add(struct SessionHandle *data,
/* then free all the old pointers */
free(clist->name);
- free(clist->value);
- free(clist->domain);
- free(clist->path);
- free(clist->spath);
- free(clist->expirestr);
- free(clist->version);
- free(clist->maxage);
+ if(clist->value)
+ free(clist->value);
+ if(clist->domain)
+ free(clist->domain);
+ if(clist->path)
+ free(clist->path);
+ if(clist->spath)
+ free(clist->spath);
+ if(clist->expirestr)
+ free(clist->expirestr);
+
+ if(clist->version)
+ free(clist->version);
+ if(clist->maxage)
+ free(clist->maxage);
*clist = *co; /* then store all the new data */
@@ -914,7 +932,7 @@ struct CookieInfo *Curl_cookie_init(struct SessionHandle *data,
fp = NULL;
}
else
- fp = file?fopen(file, FOPEN_READTEXT):NULL;
+ fp = file?fopen(file, "r"):NULL;
c->newsession = newsession; /* new session? */
@@ -951,7 +969,7 @@ struct CookieInfo *Curl_cookie_init(struct SessionHandle *data,
return c;
fail:
- free(line);
+ Curl_safefree(line);
if(!inc)
/* Only clean up if we allocated it here, as the original could still be in
* use by a share handle */
@@ -1198,7 +1216,8 @@ void Curl_cookie_clearsess(struct CookieInfo *cookies)
void Curl_cookie_cleanup(struct CookieInfo *c)
{
if(c) {
- free(c->filename);
+ if(c->filename)
+ free(c->filename);
Curl_cookie_freelist(c->cookies, TRUE);
free(c); /* free the base struct as well */
}
@@ -1262,7 +1281,7 @@ static int cookie_output(struct CookieInfo *c, const char *dumphere)
use_stdout=TRUE;
}
else {
- out = fopen(dumphere, FOPEN_WRITETEXT);
+ out = fopen(dumphere, "w");
if(!out)
return 1; /* failure */
}
@@ -1274,10 +1293,9 @@ static int cookie_output(struct CookieInfo *c, const char *dumphere)
"# http://curl.haxx.se/docs/http-cookies.html\n"
"# This file was generated by libcurl! Edit at your own risk.\n\n",
out);
+ co = c->cookies;
- for(co = c->cookies; co; co = co->next) {
- if(!co->domain)
- continue;
+ while(co) {
format_ptr = get_netscape_format(co);
if(format_ptr == NULL) {
fprintf(out, "#\n# Fatal libcurl error\n");
@@ -1287,6 +1305,7 @@ static int cookie_output(struct CookieInfo *c, const char *dumphere)
}
fprintf(out, "%s\n", format_ptr);
free(format_ptr);
+ co=co->next;
}
}
@@ -1307,9 +1326,10 @@ struct curl_slist *Curl_cookie_list(struct SessionHandle *data)
(data->cookies->numcookies == 0))
return NULL;
- for(c = data->cookies->cookies; c; c = c->next) {
- if(!c->domain)
- continue;
+ c = data->cookies->cookies;
+
+ while(c) {
+ /* fill the list with _all_ the cookies we know */
line = get_netscape_format(c);
if(!line) {
curl_slist_free_all(list);
@@ -1322,6 +1342,7 @@ struct curl_slist *Curl_cookie_list(struct SessionHandle *data)
return NULL;
}
list = beg;
+ c = c->next;
}
return list;
diff --git a/lib/curl_addrinfo.c b/lib/curl_addrinfo.c
index 6627a6b96..1e359d5c7 100644
--- a/lib/curl_addrinfo.c
+++ b/lib/curl_addrinfo.c
@@ -50,12 +50,15 @@
#include "curl_addrinfo.h"
#include "inet_pton.h"
#include "warnless.h"
-#include "curl_printf.h"
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
+
/*
* Curl_freeaddrinfo()
*
@@ -80,8 +83,13 @@ Curl_freeaddrinfo(Curl_addrinfo *cahead)
Curl_addrinfo *ca;
for(ca = cahead; ca != NULL; ca = canext) {
- free(ca->ai_addr);
- free(ca->ai_canonname);
+
+ if(ca->ai_addr)
+ free(ca->ai_addr);
+
+ if(ca->ai_canonname)
+ free(ca->ai_canonname);
+
canext = ca->ai_next;
free(ca);
diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake
index 5376aa7e1..87be9c717 100644
--- a/lib/curl_config.h.cmake
+++ b/lib/curl_config.h.cmake
@@ -53,7 +53,7 @@
#endif
/* Use Windows LDAP implementation */
-#cmakedefine USE_WIN32_LDAP 1
+#cmakedefine CURL_LDAP_WIN 1
/* when not building a shared library */
#cmakedefine CURL_STATICLIB 1
@@ -909,6 +909,9 @@
/* if OpenSSL is in use */
#cmakedefine USE_OPENSSL 1
+/* if SSL is enabled */
+#cmakedefine USE_SSLEAY 1
+
/* if Unix domain sockets are enabled */
#cmakedefine USE_UNIX_SOCKETS
diff --git a/lib/curl_config.h.in b/lib/curl_config.h.in
index feb582ecd..1318afcca 100644
--- a/lib/curl_config.h.in
+++ b/lib/curl_config.h.in
@@ -69,6 +69,9 @@
/* Definition to make a library symbol externally visible. */
#undef CURL_EXTERN_SYMBOL
+/* Use Windows LDAP implementation */
+#undef CURL_LDAP_WIN
+
/* your Entropy Gathering Daemon socket pathname */
#undef EGD_SOCKET
@@ -120,9 +123,6 @@
/* Define to 1 if bool is an available type. */
#undef HAVE_BOOL_T
-/* Define to 1 if using BoringSSL. */
-#undef HAVE_BORINGSSL
-
/* Define to 1 if you have the clock_gettime function and monotonic timer. */
#undef HAVE_CLOCK_GETTIME_MONOTONIC
@@ -144,12 +144,6 @@
/* Define to 1 if you have the <cyassl/error-ssl.h> header file. */
#undef HAVE_CYASSL_ERROR_SSL_H
-/* Define to 1 if you have the <cyassl/options.h> header file. */
-#undef HAVE_CYASSL_OPTIONS_H
-
-/* Define to 1 if you have the `DES_set_odd_parity' function. */
-#undef HAVE_DES_SET_ODD_PARITY
-
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
@@ -394,9 +388,6 @@
/* Define to 1 if you have the `resolve' library (-lresolve). */
#undef HAVE_LIBRESOLVE
-/* Define to 1 if using libressl. */
-#undef HAVE_LIBRESSL
-
/* Define to 1 if you have the <librtmp/rtmp.h> header file. */
#undef HAVE_LIBRTMP_RTMP_H
@@ -479,9 +470,6 @@
/* Define to 1 if you have the <openssl/rsa.h> header file. */
#undef HAVE_OPENSSL_RSA_H
-/* if you have the function SRP_Calc_client_key */
-#undef HAVE_OPENSSL_SRP
-
/* Define to 1 if you have the <openssl/ssl.h> header file. */
#undef HAVE_OPENSSL_SSL_H
@@ -590,6 +578,9 @@
/* Define to 1 if you have the <socket.h> header file. */
#undef HAVE_SOCKET_H
+/* if you have the function SRP_Calc_client_key */
+#undef HAVE_SSLEAY_SRP
+
/* Define to 1 if you have the `SSLv2_client_method' function. */
#undef HAVE_SSLV2_CLIENT_METHOD
@@ -954,6 +945,9 @@
/* to enable Windows native SSL/TLS support */
#undef USE_SCHANNEL
+/* if SSL is enabled */
+#undef USE_SSLEAY
+
/* if you want POSIX threaded DNS lookup */
#undef USE_THREADS_POSIX
@@ -970,9 +964,6 @@
*/
#undef USE_WIN32_LARGE_FILES
-/* Use Windows LDAP implementation */
-#undef USE_WIN32_LDAP
-
/* Define to 1 if you are building a Windows target without large file
support. */
#undef USE_WIN32_SMALL_FILES
@@ -980,6 +971,9 @@
/* to enable SSPI support */
#undef USE_WINDOWS_SSPI
+/* Define to 1 if using yaSSL in OpenSSL compatibility mode. */
+#undef USE_YASSLEMUL
+
/* Version number of package */
#undef VERSION
diff --git a/lib/curl_des.c b/lib/curl_des.c
deleted file mode 100644
index 42c1df956..000000000
--- a/lib/curl_des.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2015, Steve Holme, <steve_holme@hotmail.com>.
- *
- * 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 http://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.
- *
- ***************************************************************************/
-
-#include "curl_setup.h"
-
-#if defined(USE_NTLM) && (!defined(USE_OPENSSL) || defined(HAVE_BORINGSSL))
-
-#include "curl_des.h"
-
-/*
- * Curl_des_set_odd_parity()
- *
- * This is used to apply odd parity to the given byte array. It is typically
- * used by when a cryptography engines doesn't have it's own version.
- *
- * The function is a port of the Java based oddParity() function over at:
- *
- * http://davenport.sourceforge.net/ntlm.html
- *
- * Parameters:
- *
- * bytes [in/out] - The data whose parity bits are to be adjusted for
- * odd parity.
- * len [out] - The length of the data.
- */
-void Curl_des_set_odd_parity(unsigned char *bytes, size_t len)
-{
- size_t i;
-
- for(i = 0; i < len; i++) {
- unsigned char b = bytes[i];
-
- bool needs_parity = (((b >> 7) ^ (b >> 6) ^ (b >> 5) ^
- (b >> 4) ^ (b >> 3) ^ (b >> 2) ^
- (b >> 1)) & 0x01) == 0;
-
- if(needs_parity)
- bytes[i] |= 0x01;
- else
- bytes[i] &= 0xfe;
- }
-}
-
-#endif /* USE_NTLM && (!USE_OPENSSL || HAVE_BORINGSSL) */
diff --git a/lib/curl_des.h b/lib/curl_des.h
deleted file mode 100644
index b855db4c1..000000000
--- a/lib/curl_des.h
+++ /dev/null
@@ -1,34 +0,0 @@
-#ifndef HEADER_CURL_DES_H
-#define HEADER_CURL_DES_H
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 2015, Steve Holme, <steve_holme@hotmail.com>.
- *
- * 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 http://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.
- *
- ***************************************************************************/
-
-#include "curl_setup.h"
-
-#if defined(USE_NTLM) && (!defined(USE_OPENSSL) || defined(HAVE_BORINGSSL))
-
-/* Applies odd parity to the given byte array */
-void Curl_des_set_odd_parity(unsigned char *bytes, size_t length);
-
-#endif /* USE_NTLM && (!USE_OPENSSL || HAVE_BORINGSSL) */
-
-#endif /* HEADER_CURL_DES_H */
diff --git a/lib/curl_endian.c b/lib/curl_endian.c
index bcd66ed84..14a28834d 100644
--- a/lib/curl_endian.c
+++ b/lib/curl_endian.c
@@ -62,7 +62,6 @@ unsigned int Curl_read32_le(unsigned char *buf)
((unsigned int)buf[2] << 16) | ((unsigned int)buf[3] << 24);
}
-#if (CURL_SIZEOF_CURL_OFF_T > 4)
/*
* Curl_read64_le()
*
@@ -98,8 +97,6 @@ unsigned __int64 Curl_read64_le(unsigned char *buf)
}
#endif
-#endif /* CURL_SIZEOF_CURL_OFF_T > 4 */
-
/*
* Curl_read16_be()
*
@@ -138,7 +135,6 @@ unsigned int Curl_read32_be(unsigned char *buf)
((unsigned int)buf[2] << 8) | ((unsigned int)buf[3]);
}
-#if (CURL_SIZEOF_CURL_OFF_T > 4)
/*
* Curl_read64_be()
*
@@ -174,8 +170,6 @@ unsigned __int64 Curl_read64_be(unsigned char *buf)
}
#endif
-#endif /* CURL_SIZEOF_CURL_OFF_T > 4 */
-
/*
* Curl_write16_le()
*
@@ -233,4 +227,4 @@ void Curl_write64_le(const __int64 value, unsigned char *buffer)
Curl_write32_le((int)value, buffer);
Curl_write32_le((int)(value >> 32), buffer + 4);
}
-#endif /* CURL_SIZEOF_CURL_OFF_T > 4 */
+#endif
diff --git a/lib/curl_fnmatch.c b/lib/curl_fnmatch.c
index 1e53918d8..63f67b9aa 100644
--- a/lib/curl_fnmatch.c
+++ b/lib/curl_fnmatch.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -23,8 +23,11 @@
#include "curl_setup.h"
#include "curl_fnmatch.h"
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/curl_gssapi.c b/lib/curl_gssapi.c
index 9baece5ad..2cd14fff0 100644
--- a/lib/curl_gssapi.c
+++ b/lib/curl_gssapi.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2011 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2011 - 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
@@ -27,9 +27,9 @@
#include "curl_gssapi.h"
#include "sendf.h"
-static char spnego_oid_bytes[] = "\x2b\x06\x01\x05\x05\x02";
+static const char spnego_oid_bytes[] = "\x2b\x06\x01\x05\x05\x02";
gss_OID_desc Curl_spnego_mech_oid = { 6, &spnego_oid_bytes };
-static char krb5_oid_bytes[] = "\x2a\x86\x48\x86\xf7\x12\x01\x02\x02";
+static const char krb5_oid_bytes[] = "\x2a\x86\x48\x86\xf7\x12\x01\x02\x02";
gss_OID_desc Curl_krb5_mech_oid = { 9, &krb5_oid_bytes };
OM_uint32 Curl_gss_init_sec_context(
diff --git a/lib/curl_gssapi.h b/lib/curl_gssapi.h
index 19aab64e6..35e4b2484 100644
--- a/lib/curl_gssapi.h
+++ b/lib/curl_gssapi.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2011 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2011 - 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
@@ -59,17 +59,6 @@ OM_uint32 Curl_gss_init_sec_context(
void Curl_gss_log_error(struct SessionHandle *data, OM_uint32 status,
const char *prefix);
-/* Provide some definitions missing in old headers */
-#ifdef HAVE_OLD_GSSMIT
-#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
-#define NCOMPAT 1
-#endif
-
-/* Define our privacy and integrity protection values */
-#define GSSAUTH_P_NONE 1
-#define GSSAUTH_P_INTEGRITY 2
-#define GSSAUTH_P_PRIVACY 4
-
#endif /* HAVE_GSSAPI */
#endif /* HEADER_CURL_GSSAPI_H */
diff --git a/lib/curl_memory.h b/lib/curl_memory.h
index bc744ccd8..e3cdc721c 100644
--- a/lib/curl_memory.h
+++ b/lib/curl_memory.h
@@ -28,9 +28,6 @@
* File curl_memory.h must be included by _all_ *.c source files
* that use memory related functions strdup, malloc, calloc, realloc
* or free, and given source file is used to build libcurl library.
- * It should be included immediately before memdebug.h as the last files
- * included to avoid undesired interaction with other memory function
- * headers in dependent libraries.
*
* There is nearly no exception to above rule. All libcurl source
* files in 'lib' subdirectory as well as those living deep inside
diff --git a/lib/curl_memrchr.c b/lib/curl_memrchr.c
index 6722c6a20..a71c2bb4a 100644
--- a/lib/curl_memrchr.c
+++ b/lib/curl_memrchr.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -21,9 +21,13 @@
***************************************************************************/
#include "curl_setup.h"
+
#include "curl_memrchr.h"
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/curl_multibyte.c b/lib/curl_multibyte.c
index 403d00537..6e657228c 100644
--- a/lib/curl_multibyte.c
+++ b/lib/curl_multibyte.c
@@ -23,15 +23,18 @@
#include "curl_setup.h"
#if defined(USE_WIN32_IDN) || ((defined(USE_WINDOWS_SSPI) || \
- defined(USE_WIN32_LDAP)) && defined(UNICODE))
+ defined(CURL_LDAP_WIN)) && defined(UNICODE))
/*
* MultiByte conversions using Windows kernel32 library.
*/
#include "curl_multibyte.h"
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -47,8 +50,7 @@ wchar_t *Curl_convert_UTF8_to_wchar(const char *str_utf8)
if(str_w) {
if(MultiByteToWideChar(CP_UTF8, 0, str_utf8, -1, str_w,
str_w_len) == 0) {
- free(str_w);
- return NULL;
+ Curl_safefree(str_w);
}
}
}
@@ -69,8 +71,7 @@ char *Curl_convert_wchar_to_UTF8(const wchar_t *str_w)
if(str_utf8) {
if(WideCharToMultiByte(CP_UTF8, 0, str_w, -1, str_utf8, str_utf8_len,
NULL, FALSE) == 0) {
- free(str_utf8);
- return NULL;
+ Curl_safefree(str_utf8);
}
}
}
@@ -79,4 +80,4 @@ char *Curl_convert_wchar_to_UTF8(const wchar_t *str_w)
return str_utf8;
}
-#endif /* USE_WIN32_IDN || ((USE_WINDOWS_SSPI || USE_WIN32_LDAP) && UNICODE) */
+#endif /* USE_WIN32_IDN || ((USE_WINDOWS_SSPI || CURL_LDAP_WIN) && UNICODE) */
diff --git a/lib/curl_multibyte.h b/lib/curl_multibyte.h
index dc7ed4c39..d0247557c 100644
--- a/lib/curl_multibyte.h
+++ b/lib/curl_multibyte.h
@@ -24,7 +24,7 @@
#include "curl_setup.h"
#if defined(USE_WIN32_IDN) || ((defined(USE_WINDOWS_SSPI) || \
- defined(USE_WIN32_LDAP)) && defined(UNICODE))
+ defined(CURL_LDAP_WIN)) && defined(UNICODE))
/*
* MultiByte conversions using Windows kernel32 library.
@@ -33,11 +33,11 @@
wchar_t *Curl_convert_UTF8_to_wchar(const char *str_utf8);
char *Curl_convert_wchar_to_UTF8(const wchar_t *str_w);
-#endif /* USE_WIN32_IDN || ((USE_WINDOWS_SSPI || USE_WIN32_LDAP) && UNICODE) */
+#endif /* USE_WIN32_IDN || ((USE_WINDOWS_SSPI || CURL_LDAP_WIN) && UNICODE) */
#if defined(USE_WIN32_IDN) || defined(USE_WINDOWS_SSPI) || \
- defined(USE_WIN32_LDAP)
+ defined(CURL_LDAP_WIN)
/*
* Macros Curl_convert_UTF8_to_tchar(), Curl_convert_tchar_to_UTF8()
@@ -87,6 +87,6 @@ typedef union {
#endif /* UNICODE */
-#endif /* USE_WIN32_IDN || USE_WINDOWS_SSPI || USE_WIN32_LDAP */
+#endif /* USE_WIN32_IDN || USE_WINDOWS_SSPI || CURL_LDAP_WIN */
#endif /* HEADER_CURL_MULTIBYTE_H */
diff --git a/lib/curl_ntlm.c b/lib/curl_ntlm.c
index f9ddf506d..c77f055d4 100644
--- a/lib/curl_ntlm.c
+++ b/lib/curl_ntlm.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -41,7 +41,10 @@
#include "curl_ntlm_wb.h"
#include "curl_sasl.h"
#include "url.h"
-#include "curl_printf.h"
+#include "curl_memory.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#if defined(USE_NSS)
#include "vtls/nssg.h"
@@ -49,8 +52,7 @@
#include "curl_sspi.h"
#endif
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
#if DEBUG_ME
@@ -84,11 +86,7 @@ CURLcode Curl_input_ntlm(struct connectdata *conn,
ntlm->state = NTLMSTATE_TYPE2; /* We got a type-2 message */
}
else {
- if(ntlm->state == NTLMSTATE_LAST) {
- infof(conn->data, "NTLM auth restarted\n");
- Curl_http_ntlm_cleanup(conn);
- }
- else if(ntlm->state == NTLMSTATE_TYPE3) {
+ if(ntlm->state == NTLMSTATE_TYPE3) {
infof(conn->data, "NTLM handshake rejected\n");
Curl_http_ntlm_cleanup(conn);
ntlm->state = NTLMSTATE_NONE;
@@ -177,7 +175,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy)
return result;
if(base64) {
- free(*allocuserpwd);
+ Curl_safefree(*allocuserpwd);
*allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
proxy ? "Proxy-" : "",
base64);
@@ -197,7 +195,7 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy)
return result;
if(base64) {
- free(*allocuserpwd);
+ Curl_safefree(*allocuserpwd);
*allocuserpwd = aprintf("%sAuthorization: NTLM %s\r\n",
proxy ? "Proxy-" : "",
base64);
@@ -215,9 +213,6 @@ CURLcode Curl_output_ntlm(struct connectdata *conn, bool proxy)
case NTLMSTATE_TYPE3:
/* connection is already authenticated,
* don't send a header in future requests */
- ntlm->state = NTLMSTATE_LAST;
-
- case NTLMSTATE_LAST:
Curl_safefree(*allocuserpwd);
authp->done = TRUE;
break;
diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c
index 2e5b573fd..2aaea4db8 100644
--- a/lib/curl_ntlm_core.c
+++ b/lib/curl_ntlm_core.c
@@ -33,7 +33,7 @@
#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
# ifdef USE_OPENSSL
# include <openssl/des.h>
@@ -101,16 +101,17 @@
#include "urldata.h"
#include "non-ascii.h"
#include "rawstr.h"
+#include "curl_memory.h"
#include "curl_ntlm_core.h"
#include "curl_md5.h"
#include "curl_hmac.h"
#include "warnless.h"
#include "curl_endian.h"
-#include "curl_des.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
#define NTLM_HMAC_MD5_LEN (16)
@@ -132,7 +133,7 @@ static void extend_key_56_to_64(const unsigned char *key_56, char *key)
key[7] = (unsigned char) ((key_56[6] << 1) & 0xFF);
}
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
/*
* Turns a 56 bit key into the 64 bit, odd parity key and sets the key. The
* key schedule ks is also set.
@@ -142,17 +143,8 @@ static void setup_des_key(const unsigned char *key_56,
{
DES_cblock key;
- /* Expand the 56-bit key to 64-bits */
extend_key_56_to_64(key_56, (char *) key);
-
- /* Set the key parity to odd */
-#if defined(HAVE_BORINGSSL)
- Curl_des_set_odd_parity((unsigned char *) &key, sizeof(key));
-#else
DES_set_odd_parity(&key);
-#endif
-
- /* Set the key */
DES_set_key(&key, ks);
}
@@ -162,15 +154,8 @@ static void setup_des_key(const unsigned char *key_56,
struct des_ctx *des)
{
char key[8];
-
- /* Expand the 56-bit key to 64-bits */
extend_key_56_to_64(key_56, key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) key, sizeof(key));
-
- /* Set the key */
- des_set_key(des, (const uint8_t *) key);
+ des_set_key(des, (const uint8_t*)key);
}
#elif defined(USE_GNUTLS)
@@ -182,15 +167,8 @@ static void setup_des_key(const unsigned char *key_56,
gcry_cipher_hd_t *des)
{
char key[8];
-
- /* Expand the 56-bit key to 64-bits */
extend_key_56_to_64(key_56, key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) key, sizeof(key));
-
- /* Set the key */
- gcry_cipher_setkey(*des, key, sizeof(key));
+ gcry_cipher_setkey(*des, key, 8);
}
#elif defined(USE_NSS)
@@ -218,21 +196,16 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out,
if(!slot)
return FALSE;
- /* Expand the 56-bit key to 64-bits */
+ /* expand the 56 bit key to 64 bit and wrap by NSS */
extend_key_56_to_64(key_56, key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) key, sizeof(key));
-
- /* Import the key */
key_item.data = (unsigned char *)key;
- key_item.len = sizeof(key);
+ key_item.len = /* hard-wired */ 8;
symkey = PK11_ImportSymKey(slot, mech, PK11_OriginUnwrap, CKA_ENCRYPT,
&key_item, NULL);
if(!symkey)
goto fail;
- /* Create the DES encryption context */
+ /* create DES encryption context */
param = PK11_ParamFromIV(mech, /* no IV in ECB mode */ NULL);
if(!param)
goto fail;
@@ -240,7 +213,7 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out,
if(!ctx)
goto fail;
- /* Perform the encryption */
+ /* perform the encryption */
if(SECSuccess == PK11_CipherOp(ctx, out, &out_len, /* outbuflen */ 8,
(unsigned char *)in, /* inbuflen */ 8)
&& SECSuccess == PK11_Finalize(ctx))
@@ -267,17 +240,10 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out,
size_t out_len;
CCCryptorStatus err;
- /* Expand the 56-bit key to 64-bits */
extend_key_56_to_64(key_56, key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) key, sizeof(key));
-
- /* Perform the encryption */
err = CCCrypt(kCCEncrypt, kCCAlgorithmDES, kCCOptionECBMode, key,
kCCKeySizeDES, NULL, in, 8 /* inbuflen */, out,
8 /* outbuflen */, &out_len);
-
return err == kCCSuccess;
}
@@ -289,19 +255,10 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out,
char key[8];
_CIPHER_Control_T ctl;
- /* Setup the cipher control structure */
ctl.Func_ID = ENCRYPT_ONLY;
- ctl.Data_Len = sizeof(key);
-
- /* Expand the 56-bit key to 64-bits */
+ ctl.Data_Len = 8;
extend_key_56_to_64(key_56, ctl.Crypto_Key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) ctl.Crypto_Key, ctl.Data_Len);
-
- /* Perform the encryption */
_CIPHER((_SPCPTR *) &out, &ctl, (_SPCPTR *) &in);
-
return TRUE;
}
@@ -324,19 +281,13 @@ static bool encrypt_des(const unsigned char *in, unsigned char *out,
CRYPT_VERIFYCONTEXT))
return FALSE;
- /* Setup the key blob structure */
memset(&blob, 0, sizeof(blob));
+ extend_key_56_to_64(key_56, blob.key);
blob.hdr.bType = PLAINTEXTKEYBLOB;
blob.hdr.bVersion = 2;
blob.hdr.aiKeyAlg = CALG_DES;
blob.len = sizeof(blob.key);
- /* Expand the 56-bit key to 64-bits */
- extend_key_56_to_64(key_56, blob.key);
-
- /* Set the key parity to odd */
- Curl_des_set_odd_parity((unsigned char *) blob.key, sizeof(blob.key));
-
/* Import the key */
if(!CryptImportKey(hprov, (BYTE *) &blob, sizeof(blob), 0, 0, &hkey)) {
CryptReleaseContext(hprov, 0);
@@ -366,7 +317,7 @@ void Curl_ntlm_core_lm_resp(const unsigned char *keys,
const unsigned char *plaintext,
unsigned char *results)
{
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
DES_key_schedule ks;
setup_des_key(keys, DESKEY(ks));
@@ -441,7 +392,7 @@ CURLcode Curl_ntlm_core_mk_lm_hash(struct SessionHandle *data,
{
/* Create LanManager hashed password. */
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
DES_key_schedule ks;
setup_des_key(pw, DESKEY(ks));
@@ -508,7 +459,6 @@ static void ascii_uppercase_to_unicode_le(unsigned char *dest,
/*
* Set up nt hashed passwords
- * @unittest: 1600
*/
CURLcode Curl_ntlm_core_mk_nt_hash(struct SessionHandle *data,
const char *password,
@@ -532,7 +482,7 @@ CURLcode Curl_ntlm_core_mk_nt_hash(struct SessionHandle *data,
{
/* Create NT hashed password. */
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
MD4_CTX MD4pw;
MD4_Init(&MD4pw);
MD4_Update(&MD4pw, pw, 2 * len);
@@ -618,7 +568,7 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_hash(const char *user, size_t userlen,
result = Curl_hmac_md5(ntlmhash, 16, identity, curlx_uztoui(identity_len),
ntlmv2hash);
- free(identity);
+ Curl_safefree(identity);
return result;
}
@@ -705,7 +655,8 @@ CURLcode Curl_ntlm_core_mk_ntlmv2_resp(unsigned char *ntlmv2hash,
result = Curl_hmac_md5(ntlmv2hash, NTLM_HMAC_MD5_LEN, ptr + 8,
NTLMv2_BLOB_LEN + 8, hmac_output);
if(result) {
- free(ptr);
+ Curl_safefree(ptr);
+
return result;
}
diff --git a/lib/curl_ntlm_core.h b/lib/curl_ntlm_core.h
index 3a763592a..c1689666c 100644
--- a/lib/curl_ntlm_core.h
+++ b/lib/curl_ntlm_core.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -28,7 +28,7 @@
#if !defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO)
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
# if !defined(OPENSSL_VERSION_NUMBER) && \
!defined(HEADER_SSL_H) && !defined(HEADER_MD5_H)
# error "curl_ntlm_core.h shall not be included before OpenSSL headers."
diff --git a/lib/curl_ntlm_msgs.c b/lib/curl_ntlm_msgs.c
index 7f07decb8..865954d3b 100644
--- a/lib/curl_ntlm_msgs.c
+++ b/lib/curl_ntlm_msgs.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -41,6 +41,7 @@
#include "curl_gethostname.h"
#include "curl_multibyte.h"
#include "warnless.h"
+#include "curl_memory.h"
#include "vtls/vtls.h"
@@ -52,10 +53,11 @@
#include "curl_ntlm_msgs.h"
#include "curl_sasl.h"
#include "curl_endian.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* "NTLMSSP" signature is always in ASCII regardless of the platform */
@@ -591,11 +593,11 @@ CURLcode Curl_sasl_create_ntlm_type3_message(struct SessionHandle *data,
memcpy(tmp, &ntlm->nonce[0], 8);
memcpy(tmp + 8, entropy, 8);
- result = Curl_ssl_md5sum(tmp, 16, md5sum, MD5_DIGEST_LENGTH);
- if(!result)
- /* We shall only use the first 8 bytes of md5sum, but the des code in
- Curl_ntlm_core_lm_resp only encrypt the first 8 bytes */
- result = Curl_ntlm_core_mk_nt_hash(data, passwdp, ntbuffer);
+ Curl_ssl_md5sum(tmp, 16, md5sum, MD5_DIGEST_LENGTH);
+
+ /* We shall only use the first 8 bytes of md5sum, but the des
+ code in Curl_ntlm_core_lm_resp only encrypt the first 8 bytes */
+ result = Curl_ntlm_core_mk_nt_hash(data, passwdp, ntbuffer);
if(result)
return result;
@@ -758,7 +760,7 @@ CURLcode Curl_sasl_create_ntlm_type3_message(struct SessionHandle *data,
ntlm_print_hex(stderr, (char *)&ntlmbuf[ntrespoff], ntresplen);
});
- free(ntlmv2resp);/* Free the dynamic buffer allocated for NTLMv2 */
+ Curl_safefree(ntlmv2resp);/* Free the dynamic buffer allocated for NTLMv2 */
#endif
diff --git a/lib/curl_ntlm_wb.c b/lib/curl_ntlm_wb.c
index b2a5fb343..5e2d79cb4 100644
--- a/lib/curl_ntlm_wb.c
+++ b/lib/curl_ntlm_wb.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -51,10 +51,12 @@
#include "curl_ntlm_wb.h"
#include "url.h"
#include "strerror.h"
-#include "curl_printf.h"
-
-/* The last #include files should be: */
#include "curl_memory.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
#if DEBUG_ME
@@ -105,9 +107,9 @@ void Curl_ntlm_wb_cleanup(struct connectdata *conn)
conn->ntlm_auth_hlpr_pid = 0;
}
- free(conn->challenge_header);
+ Curl_safefree(conn->challenge_header);
conn->challenge_header = NULL;
- free(conn->response_header);
+ Curl_safefree(conn->response_header);
conn->response_header = NULL;
}
@@ -244,13 +246,13 @@ static CURLcode ntlm_wb_init(struct connectdata *conn, const char *userp)
sclose(sockfds[1]);
conn->ntlm_auth_hlpr_socket = sockfds[0];
conn->ntlm_auth_hlpr_pid = child_pid;
- free(domain);
- free(ntlm_auth_alloc);
+ Curl_safefree(domain);
+ Curl_safefree(ntlm_auth_alloc);
return CURLE_OK;
done:
- free(domain);
- free(ntlm_auth_alloc);
+ Curl_safefree(domain);
+ Curl_safefree(ntlm_auth_alloc);
return CURLE_REMOTE_ACCESS_DENIED;
}
@@ -306,7 +308,7 @@ static CURLcode ntlm_wb_response(struct connectdata *conn,
if(state == NTLMSTATE_TYPE1 &&
len_out == 3 &&
buf[0] == 'P' && buf[1] == 'W')
- goto done;
+ return CURLE_REMOTE_ACCESS_DENIED;
/* invalid response */
if(len_out < 4)
goto done;
@@ -389,12 +391,12 @@ CURLcode Curl_output_ntlm_wb(struct connectdata *conn,
if(res)
return res;
- free(*allocuserpwd);
+ Curl_safefree(*allocuserpwd);
*allocuserpwd = aprintf("%sAuthorization: %s\r\n",
proxy ? "Proxy-" : "",
conn->response_header);
DEBUG_OUT(fprintf(stderr, "**** Header %s\n ", *allocuserpwd));
- free(conn->response_header);
+ Curl_safefree(conn->response_header);
conn->response_header = NULL;
break;
case NTLMSTATE_TYPE2:
@@ -407,7 +409,7 @@ CURLcode Curl_output_ntlm_wb(struct connectdata *conn,
if(res)
return res;
- free(*allocuserpwd);
+ Curl_safefree(*allocuserpwd);
*allocuserpwd = aprintf("%sAuthorization: %s\r\n",
proxy ? "Proxy-" : "",
conn->response_header);
@@ -419,8 +421,10 @@ CURLcode Curl_output_ntlm_wb(struct connectdata *conn,
case NTLMSTATE_TYPE3:
/* connection is already authenticated,
* don't send a header in future requests */
- free(*allocuserpwd);
- *allocuserpwd=NULL;
+ if(*allocuserpwd) {
+ free(*allocuserpwd);
+ *allocuserpwd=NULL;
+ }
authp->done = TRUE;
break;
}
diff --git a/lib/curl_printf.h b/lib/curl_printf.h
deleted file mode 100644
index 086923f1d..000000000
--- a/lib/curl_printf.h
+++ /dev/null
@@ -1,56 +0,0 @@
-#ifndef HEADER_CURL_PRINTF_H
-#define HEADER_CURL_PRINTF_H
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-
-/*
- * This header should be included by ALL code in libcurl that uses any
- * *rintf() functions.
- */
-
-#include <curl/mprintf.h>
-
-# undef printf
-# undef fprintf
-# undef snprintf
-# undef vprintf
-# undef vfprintf
-# undef vsnprintf
-# undef aprintf
-# undef vaprintf
-# define printf curl_mprintf
-# define fprintf curl_mfprintf
-# define snprintf curl_msnprintf
-# define vprintf curl_mvprintf
-# define vfprintf curl_mvfprintf
-# define vsnprintf curl_mvsnprintf
-# define aprintf curl_maprintf
-# define vaprintf curl_mvaprintf
-
-/* We define away the sprintf functions unconditonally since we don't want
- internal code to be using them, intentionally or by mistake!*/
-# undef sprintf
-# undef vsprintf
-# define sprintf sprintf_was_used
-# define vsprintf vsprintf_was_used
-
-#endif /* HEADER_CURL_PRINTF_H */
diff --git a/lib/curl_rtmp.c b/lib/curl_rtmp.c
index 293897288..d1d79c38f 100644
--- a/lib/curl_rtmp.c
+++ b/lib/curl_rtmp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 2010, Howard Chu, <hyc@highlandsun.com>
*
* This software is licensed as described in the file COPYING, which
@@ -32,6 +32,10 @@
#include "warnless.h"
#include <curl/curl.h>
#include <librtmp/rtmp.h>
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -197,7 +201,7 @@ static CURLcode rtmp_setup_connection(struct connectdata *conn)
static CURLcode rtmp_connect(struct connectdata *conn, bool *done)
{
RTMP *r = conn->proto.generic;
- SET_RCVTIMEO(tv, 10);
+ SET_RCVTIMEO(tv,10);
r->m_sb.sb_socket = conn->sock[FIRSTSOCKET];
diff --git a/lib/curl_sasl.c b/lib/curl_sasl.c
index 68646bc1a..b944aa2df 100644
--- a/lib/curl_sasl.c
+++ b/lib/curl_sasl.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -39,33 +39,16 @@
#include "curl_hmac.h"
#include "curl_sasl.h"
#include "warnless.h"
+#include "curl_memory.h"
#include "strtok.h"
-#include "strequal.h"
#include "rawstr.h"
-#include "sendf.h"
#include "non-ascii.h" /* included for Curl_convert_... prototypes */
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
-#include "memdebug.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
-/* Supported mechanisms */
-const struct {
- const char *name; /* Name */
- size_t len; /* Name length */
- unsigned int bit; /* Flag bit */
-} mechtable[] = {
- { "LOGIN", 5, SASL_MECH_LOGIN },
- { "PLAIN", 5, SASL_MECH_PLAIN },
- { "CRAM-MD5", 8, SASL_MECH_CRAM_MD5 },
- { "DIGEST-MD5", 10, SASL_MECH_DIGEST_MD5 },
- { "GSSAPI", 6, SASL_MECH_GSSAPI },
- { "EXTERNAL", 8, SASL_MECH_EXTERNAL },
- { "NTLM", 4, SASL_MECH_NTLM },
- { "XOAUTH2", 7, SASL_MECH_XOAUTH2 },
- { ZERO_NULL, 0, 0 }
-};
+/* The last #include file should be: */
+#include "memdebug.h"
#if !defined(CURL_DISABLE_CRYPTO_AUTH) && !defined(USE_WINDOWS_SSPI)
#define DIGEST_QOP_VALUE_AUTH (1 << 0)
@@ -76,6 +59,9 @@ const struct {
#define DIGEST_QOP_VALUE_STRING_AUTH_INT "auth-int"
#define DIGEST_QOP_VALUE_STRING_AUTH_CONF "auth-conf"
+#define DIGEST_MAX_VALUE_LENGTH 256
+#define DIGEST_MAX_CONTENT_LENGTH 1024
+
/* The CURL_OUTPUT_DIGEST_CONV macro below is for non-ASCII machines.
It converts digest text to ASCII so the MD5 will be correct for
what ultimately goes over the network.
@@ -87,16 +73,13 @@ const struct {
return result; \
}
-#endif
-
-#if !defined(CURL_DISABLE_CRYPTO_AUTH)
/*
- * Returns 0 on success and then the buffers are filled in fine.
+ * Return 0 on success and then the buffers are filled in fine.
*
* Non-zero means failure to parse.
*/
-int Curl_sasl_digest_get_pair(const char *str, char *value, char *content,
- const char **endptr)
+static int sasl_digest_get_pair(const char *str, char *value, char *content,
+ const char **endptr)
{
int c;
bool starts_with_quote = FALSE;
@@ -157,9 +140,7 @@ int Curl_sasl_digest_get_pair(const char *str, char *value, char *content,
return 0; /* all is fine! */
}
-#endif
-#if !defined(CURL_DISABLE_CRYPTO_AUTH) && !defined(USE_WINDOWS_SSPI)
/* Convert md5 chunk to RFC2617 (section 3.1.3) -suitable ascii string*/
static void sasl_digest_md5_to_ascii(unsigned char *source, /* 16 bytes */
unsigned char *dest) /* 33 bytes */
@@ -253,7 +234,7 @@ static CURLcode sasl_digest_get_qop_values(const char *options, int *value)
token = strtok_r(NULL, ",", &tok_buf);
}
- free(tmp);
+ Curl_safefree(tmp);
return CURLE_OK;
}
@@ -267,7 +248,7 @@ static CURLcode sasl_digest_get_qop_values(const char *options, int *value)
*
* Parameters:
*
- * service [in] - The service type such as www, smtp, pop or imap.
+ * serivce [in] - The service type such as www, smtp, pop or imap.
* host [in] - The host name or realm.
*
* Returns a pointer to the newly allocated SPN.
@@ -280,7 +261,7 @@ char *Curl_sasl_build_spn(const char *service, const char *host)
#endif
/*
- * sasl_create_plain_message()
+ * Curl_sasl_create_plain_message()
*
* This is used to generate an already encoded PLAIN message ready
* for sending to the recipient.
@@ -296,10 +277,10 @@ char *Curl_sasl_build_spn(const char *service, const char *host)
*
* Returns CURLE_OK on success.
*/
-static CURLcode sasl_create_plain_message(struct SessionHandle *data,
- const char *userp,
- const char *passwdp,
- char **outptr, size_t *outlen)
+CURLcode Curl_sasl_create_plain_message(struct SessionHandle *data,
+ const char *userp,
+ const char *passwdp,
+ char **outptr, size_t *outlen)
{
CURLcode result;
char *plainauth;
@@ -326,12 +307,12 @@ static CURLcode sasl_create_plain_message(struct SessionHandle *data,
/* Base64 encode the reply */
result = Curl_base64_encode(data, plainauth, 2 * ulen + plen + 2, outptr,
outlen);
- free(plainauth);
+ Curl_safefree(plainauth);
return result;
}
/*
- * sasl_create_login_message()
+ * Curl_sasl_create_login_message()
*
* This is used to generate an already encoded LOGIN message containing the
* user name or password ready for sending to the recipient.
@@ -346,9 +327,9 @@ static CURLcode sasl_create_plain_message(struct SessionHandle *data,
*
* Returns CURLE_OK on success.
*/
-static CURLcode sasl_create_login_message(struct SessionHandle *data,
- const char *valuep, char **outptr,
- size_t *outlen)
+CURLcode Curl_sasl_create_login_message(struct SessionHandle *data,
+ const char *valuep, char **outptr,
+ size_t *outlen)
{
size_t vlen = strlen(valuep);
@@ -368,33 +349,9 @@ static CURLcode sasl_create_login_message(struct SessionHandle *data,
return Curl_base64_encode(data, valuep, vlen, outptr, outlen);
}
-/*
- * sasl_create_external_message()
- *
- * This is used to generate an already encoded EXTERNAL message containing
- * the user name ready for sending to the recipient.
- *
- * Parameters:
- *
- * data [in] - The session handle.
- * user [in] - The user name.
- * outptr [in/out] - The address where a pointer to newly allocated memory
- * holding the result will be stored upon completion.
- * outlen [out] - The length of the output message.
- *
- * Returns CURLE_OK on success.
- */
-static CURLcode sasl_create_external_message(struct SessionHandle *data,
- const char *user, char **outptr,
- size_t *outlen)
-{
- /* This is the same formatting as the login message. */
- return sasl_create_login_message(data, user, outptr, outlen);
-}
-
#ifndef CURL_DISABLE_CRYPTO_AUTH
/*
- * sasl_decode_cram_md5_message()
+ * Curl_sasl_decode_cram_md5_message()
*
* This is used to decode an already encoded CRAM-MD5 challenge message.
*
@@ -407,8 +364,8 @@ static CURLcode sasl_create_external_message(struct SessionHandle *data,
*
* Returns CURLE_OK on success.
*/
-static CURLcode sasl_decode_cram_md5_message(const char *chlg64, char **outptr,
- size_t *outlen)
+CURLcode Curl_sasl_decode_cram_md5_message(const char *chlg64, char **outptr,
+ size_t *outlen)
{
CURLcode result = CURLE_OK;
size_t chlg64len = strlen(chlg64);
@@ -424,7 +381,7 @@ static CURLcode sasl_decode_cram_md5_message(const char *chlg64, char **outptr,
}
/*
- * sasl_create_cram_md5_message()
+ * Curl_sasl_create_cram_md5_message()
*
* This is used to generate an already encoded CRAM-MD5 response message ready
* for sending to the recipient.
@@ -441,11 +398,11 @@ static CURLcode sasl_decode_cram_md5_message(const char *chlg64, char **outptr,
*
* Returns CURLE_OK on success.
*/
-static CURLcode sasl_create_cram_md5_message(struct SessionHandle *data,
- const char *chlg,
- const char *userp,
- const char *passwdp,
- char **outptr, size_t *outlen)
+CURLcode Curl_sasl_create_cram_md5_message(struct SessionHandle *data,
+ const char *chlg,
+ const char *userp,
+ const char *passwdp,
+ char **outptr, size_t *outlen)
{
CURLcode result = CURLE_OK;
size_t chlglen = 0;
@@ -483,7 +440,7 @@ static CURLcode sasl_create_cram_md5_message(struct SessionHandle *data,
/* Base64 encode the response */
result = Curl_base64_encode(data, response, 0, outptr, outlen);
- free(response);
+ Curl_safefree(response);
return result;
}
@@ -533,7 +490,7 @@ static CURLcode sasl_decode_digest_md5_message(const char *chlg64,
/* Retrieve nonce string from the challenge */
if(!sasl_digest_get_key_value((char *)chlg, "nonce=\"", nonce, nlen, '\"')) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -545,17 +502,17 @@ static CURLcode sasl_decode_digest_md5_message(const char *chlg64,
/* Retrieve algorithm string from the challenge */
if(!sasl_digest_get_key_value((char *)chlg, "algorithm=", alg, alen, ',')) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
/* Retrieve qop-options string from the challenge */
if(!sasl_digest_get_key_value((char *)chlg, "qop=\"", qop, qlen, '\"')) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_OK;
}
@@ -677,7 +634,7 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
/* Calculate H(A2) */
ctxt = Curl_MD5_init(Curl_DIGEST_MD5);
if(!ctxt) {
- free(spn);
+ Curl_safefree(spn);
return CURLE_OUT_OF_MEMORY;
}
@@ -695,7 +652,7 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
/* Now calculate the response hash */
ctxt = Curl_MD5_init(Curl_DIGEST_MD5);
if(!ctxt) {
- free(spn);
+ Curl_safefree(spn);
return CURLE_OUT_OF_MEMORY;
}
@@ -728,14 +685,14 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
"qop=%s",
userp, realm, nonce,
cnonce, nonceCount, spn, resp_hash_hex, qop);
- free(spn);
+ Curl_safefree(spn);
if(!response)
return CURLE_OUT_OF_MEMORY;
/* Base64 encode the response */
result = Curl_base64_encode(data, response, 0, outptr, outlen);
- free(response);
+ Curl_safefree(response);
return result;
}
@@ -778,7 +735,7 @@ CURLcode Curl_sasl_decode_digest_http_message(const char *chlg,
chlg++;
/* Extract a value=content pair */
- if(!Curl_sasl_digest_get_pair(chlg, value, content, &chlg)) {
+ if(!sasl_digest_get_pair(chlg, value, content, &chlg)) {
if(Curl_raw_equal(value, "nonce")) {
digest->nonce = strdup(content);
if(!digest->nonce)
@@ -949,7 +906,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
Curl_md5it(md5buf, md5this);
- free(md5this);
+ Curl_safefree(md5this);
sasl_digest_md5_to_ascii(md5buf, ha1);
if(digest->algo == CURLDIGESTALGO_MD5SESS) {
@@ -960,7 +917,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
CURL_OUTPUT_DIGEST_CONV(data, tmp); /* convert on non-ASCII machines */
Curl_md5it(md5buf, (unsigned char *)tmp);
- free(tmp);
+ Curl_safefree(tmp);
sasl_digest_md5_to_ascii(md5buf, ha1);
}
@@ -984,7 +941,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
TODO: replace md5 of empty string with entity-body for PUT/POST */
unsigned char *md5this2 = (unsigned char *)
aprintf("%s:%s", md5this, "d41d8cd98f00b204e9800998ecf8427e");
- free(md5this);
+ Curl_safefree(md5this);
md5this = md5this2;
}
@@ -993,7 +950,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
Curl_md5it(md5buf, md5this);
- free(md5this);
+ Curl_safefree(md5this);
sasl_digest_md5_to_ascii(md5buf, ha2);
if(digest->qop) {
@@ -1017,7 +974,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
CURL_OUTPUT_DIGEST_CONV(data, md5this); /* convert on non-ASCII machines */
Curl_md5it(md5buf, md5this);
- free(md5this);
+ Curl_safefree(md5this);
sasl_digest_md5_to_ascii(md5buf, request_digest);
/* for test case 64 (snooped from a Mozilla 1.3a request)
@@ -1072,7 +1029,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
uripath,
request_digest);
}
- free(userp_quoted);
+ Curl_safefree(userp_quoted);
if(!response)
return CURLE_OUT_OF_MEMORY;
@@ -1153,7 +1110,7 @@ void Curl_sasl_ntlm_cleanup(struct ntlmdata *ntlm)
#endif /* USE_NTLM && !USE_WINDOWS_SSPI*/
/*
- * sasl_create_xoauth2_message()
+ * Curl_sasl_create_xoauth2_message()
*
* This is used to generate an already encoded OAuth 2.0 message ready for
* sending to the recipient.
@@ -1169,10 +1126,10 @@ void Curl_sasl_ntlm_cleanup(struct ntlmdata *ntlm)
*
* Returns CURLE_OK on success.
*/
-static CURLcode sasl_create_xoauth2_message(struct SessionHandle *data,
- const char *user,
- const char *bearer,
- char **outptr, size_t *outlen)
+CURLcode Curl_sasl_create_xoauth2_message(struct SessionHandle *data,
+ const char *user,
+ const char *bearer,
+ char **outptr, size_t *outlen)
{
CURLcode result = CURLE_OK;
char *xoauth = NULL;
@@ -1185,7 +1142,7 @@ static CURLcode sasl_create_xoauth2_message(struct SessionHandle *data,
/* Base64 encode the reply */
result = Curl_base64_encode(data, xoauth, strlen(xoauth), outptr, outlen);
- free(xoauth);
+ Curl_safefree(xoauth);
return result;
}
@@ -1223,447 +1180,3 @@ void Curl_sasl_cleanup(struct connectdata *conn, unsigned int authused)
(void)authused;
#endif
}
-
-/*
- * Curl_sasl_decode_mech()
- *
- * Convert a SASL mechanism name into a token.
- *
- * Parameters:
- *
- * ptr [in] - The mechanism string.
- * maxlen [in] - Maximum mechanism string length.
- * len [out] - If not NULL, effective name length.
- *
- * Returns the SASL mechanism token or 0 if no match.
- */
-unsigned int Curl_sasl_decode_mech(const char *ptr, size_t maxlen, size_t *len)
-{
- unsigned int i;
- char c;
-
- for(i = 0; mechtable[i].name; i++) {
- if(maxlen >= mechtable[i].len &&
- !memcmp(ptr, mechtable[i].name, mechtable[i].len)) {
- if(len)
- *len = mechtable[i].len;
-
- if(maxlen == mechtable[i].len)
- return mechtable[i].bit;
-
- c = ptr[mechtable[i].len];
- if(!ISUPPER(c) && !ISDIGIT(c) && c != '-' && c != '_')
- return mechtable[i].bit;
- }
- }
-
- return 0;
-}
-
-/*
- * Curl_sasl_parse_url_auth_option()
- *
- * Parse the URL login options.
- */
-CURLcode Curl_sasl_parse_url_auth_option(struct SASL *sasl,
- const char *value, size_t len)
-{
- CURLcode result = CURLE_OK;
- unsigned int mechbit;
- size_t mechlen;
-
- if(!len)
- return CURLE_URL_MALFORMAT;
-
- if(sasl->resetprefs) {
- sasl->resetprefs = FALSE;
- sasl->prefmech = SASL_AUTH_NONE;
- }
-
- if(strnequal(value, "*", len))
- sasl->prefmech = SASL_AUTH_DEFAULT;
- else if((mechbit = Curl_sasl_decode_mech(value, len, &mechlen)) &&
- mechlen == len)
- sasl->prefmech |= mechbit;
- else
- result = CURLE_URL_MALFORMAT;
-
- return result;
-}
-
-/*
- * Curl_sasl_init()
- *
- * Initializes the SASL structure.
- */
-void Curl_sasl_init(struct SASL *sasl, const struct SASLproto *params)
-{
- sasl->params = params; /* Set protocol dependent parameters */
- sasl->state = SASL_STOP; /* Not yet running */
- sasl->authmechs = SASL_AUTH_NONE; /* No known authentication mechanism yet */
- sasl->prefmech = SASL_AUTH_DEFAULT; /* Prefer all mechanisms */
- sasl->authused = SASL_AUTH_NONE; /* No the authentication mechanism used */
- sasl->resetprefs = TRUE; /* Reset prefmech upon AUTH parsing. */
- sasl->mutual_auth = FALSE; /* No mutual authentication (GSSAPI only) */
- sasl->force_ir = FALSE; /* Respect external option */
-}
-
-/*
- * state()
- *
- * This is the ONLY way to change SASL state!
- */
-static void state(struct SASL *sasl, struct connectdata *conn,
- saslstate newstate)
-{
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
- /* for debug purposes */
- static const char * const names[]={
- "STOP",
- "PLAIN",
- "LOGIN",
- "LOGIN_PASSWD",
- "EXTERNAL",
- "CRAMMD5",
- "DIGESTMD5",
- "DIGESTMD5_RESP",
- "NTLM",
- "NTLM_TYPE2MSG",
- "GSSAPI",
- "GSSAPI_TOKEN",
- "GSSAPI_NO_DATA",
- "XOAUTH2",
- "CANCEL",
- "FINAL",
- /* LAST */
- };
-
- if(sasl->state != newstate)
- infof(conn->data, "SASL %p state change from %s to %s\n",
- (void *)sasl, names[sasl->state], names[newstate]);
-#else
- (void) conn;
-#endif
-
- sasl->state = newstate;
-}
-
-/*
- * Curl_sasl_can_authenticate()
- *
- * Check if we have enough auth data and capabilities to authenticate.
- */
-bool Curl_sasl_can_authenticate(struct SASL *sasl, struct connectdata *conn)
-{
- /* Have credentials been provided? */
- if(conn->bits.user_passwd)
- return TRUE;
-
- /* EXTERNAL can authenticate without a user name and/or password */
- if(sasl->authmechs & sasl->prefmech & SASL_MECH_EXTERNAL)
- return TRUE;
-
- return FALSE;
-}
-
-/*
- * Curl_sasl_start()
- *
- * Calculate the required login details for SASL authentication.
- */
-CURLcode Curl_sasl_start(struct SASL *sasl, struct connectdata *conn,
- bool force_ir, saslprogress *progress)
-{
- CURLcode result = CURLE_OK;
- struct SessionHandle *data = conn->data;
- unsigned int enabledmechs;
- const char *mech = NULL;
- char *resp = NULL;
- size_t len = 0;
- saslstate state1 = SASL_STOP;
- saslstate state2 = SASL_FINAL;
-
- sasl->force_ir = force_ir; /* Latch for future use */
- sasl->authused = 0; /* No mechanism used yet */
- enabledmechs = sasl->authmechs & sasl->prefmech;
- *progress = SASL_IDLE;
-
- /* Calculate the supported authentication mechanism, by decreasing order of
- security, as well as the initial response where appropriate */
- if((enabledmechs & SASL_MECH_EXTERNAL) && !conn->passwd[0]) {
- mech = SASL_MECH_STRING_EXTERNAL;
- state1 = SASL_EXTERNAL;
- sasl->authused = SASL_MECH_EXTERNAL;
-
- if(force_ir || data->set.sasl_ir)
- result = sasl_create_external_message(data, conn->user, &resp, &len);
- }
- else if(conn->bits.user_passwd) {
-#if defined(USE_KERBEROS5)
- if(enabledmechs & SASL_MECH_GSSAPI) {
- sasl->mutual_auth = FALSE; /* TODO: Calculate mutual authentication */
- mech = SASL_MECH_STRING_GSSAPI;
- state1 = SASL_GSSAPI;
- state2 = SASL_GSSAPI_TOKEN;
- sasl->authused = SASL_MECH_GSSAPI;
-
- if(force_ir || data->set.sasl_ir)
- result = Curl_sasl_create_gssapi_user_message(data, conn->user,
- conn->passwd,
- sasl->params->service,
- sasl->mutual_auth,
- NULL, &conn->krb5,
- &resp, &len);
- }
- else
-#endif
-#ifndef CURL_DISABLE_CRYPTO_AUTH
- if(enabledmechs & SASL_MECH_DIGEST_MD5) {
- mech = SASL_MECH_STRING_DIGEST_MD5;
- state1 = SASL_DIGESTMD5;
- sasl->authused = SASL_MECH_DIGEST_MD5;
- }
- else if(enabledmechs & SASL_MECH_CRAM_MD5) {
- mech = SASL_MECH_STRING_CRAM_MD5;
- state1 = SASL_CRAMMD5;
- sasl->authused = SASL_MECH_CRAM_MD5;
- }
- else
-#endif
-#ifdef USE_NTLM
- if(enabledmechs & SASL_MECH_NTLM) {
- mech = SASL_MECH_STRING_NTLM;
- state1 = SASL_NTLM;
- state2 = SASL_NTLM_TYPE2MSG;
- sasl->authused = SASL_MECH_NTLM;
-
- if(force_ir || data->set.sasl_ir)
- result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
- &conn->ntlm, &resp, &len);
- }
- else
-#endif
- if((enabledmechs & SASL_MECH_XOAUTH2) || conn->xoauth2_bearer) {
- mech = SASL_MECH_STRING_XOAUTH2;
- state1 = SASL_XOAUTH2;
- sasl->authused = SASL_MECH_XOAUTH2;
-
- if(force_ir || data->set.sasl_ir)
- result = sasl_create_xoauth2_message(data, conn->user,
- conn->xoauth2_bearer,
- &resp, &len);
- }
- else if(enabledmechs & SASL_MECH_LOGIN) {
- mech = SASL_MECH_STRING_LOGIN;
- state1 = SASL_LOGIN;
- state2 = SASL_LOGIN_PASSWD;
- sasl->authused = SASL_MECH_LOGIN;
-
- if(force_ir || data->set.sasl_ir)
- result = sasl_create_login_message(data, conn->user, &resp, &len);
- }
- else if(enabledmechs & SASL_MECH_PLAIN) {
- mech = SASL_MECH_STRING_PLAIN;
- state1 = SASL_PLAIN;
- sasl->authused = SASL_MECH_PLAIN;
-
- if(force_ir || data->set.sasl_ir)
- result = sasl_create_plain_message(data, conn->user, conn->passwd,
- &resp, &len);
- }
- }
-
- if(!result) {
- if(resp && sasl->params->maxirlen &&
- strlen(mech) + len > sasl->params->maxirlen) {
- free(resp);
- resp = NULL;
- }
-
- if(mech) {
- result = sasl->params->sendauth(conn, mech, resp);
- if(!result) {
- *progress = SASL_INPROGRESS;
- state(sasl, conn, resp? state2: state1);
- }
- }
- }
-
- free(resp);
-
- return result;
-}
-
-/*
- * Curl_sasl_continue()
- *
- * Continue the authentication.
- */
-CURLcode Curl_sasl_continue(struct SASL *sasl, struct connectdata *conn,
- int code, saslprogress *progress)
-{
- CURLcode result = CURLE_OK;
- struct SessionHandle *data = conn->data;
- saslstate newstate = SASL_FINAL;
- char *resp = NULL;
-#if !defined(CURL_DISABLE_CRYPTO_AUTH)
- char *serverdata;
- char *chlg = NULL;
- size_t chlglen = 0;
-#endif
- size_t len = 0;
-
- *progress = SASL_INPROGRESS;
-
- if(sasl->state == SASL_FINAL) {
- if(code != sasl->params->finalcode)
- result = CURLE_LOGIN_DENIED;
- *progress = SASL_DONE;
- state(sasl, conn, SASL_STOP);
- return result;
- }
-
- if(sasl->state != SASL_CANCEL && code != sasl->params->contcode) {
- *progress = SASL_DONE;
- state(sasl, conn, SASL_STOP);
- return CURLE_LOGIN_DENIED;
- }
-
- switch(sasl->state) {
- case SASL_STOP:
- *progress = SASL_DONE;
- return result;
- case SASL_PLAIN:
- result = sasl_create_plain_message(data, conn->user, conn->passwd, &resp,
- &len);
- break;
- case SASL_LOGIN:
- result = sasl_create_login_message(data, conn->user, &resp, &len);
- newstate = SASL_LOGIN_PASSWD;
- break;
- case SASL_LOGIN_PASSWD:
- result = sasl_create_login_message(data, conn->passwd, &resp, &len);
- break;
- case SASL_EXTERNAL:
- result = sasl_create_external_message(data, conn->user, &resp, &len);
- break;
-
-#ifndef CURL_DISABLE_CRYPTO_AUTH
- case SASL_CRAMMD5:
- sasl->params->getmessage(data->state.buffer, &serverdata);
- result = sasl_decode_cram_md5_message(serverdata, &chlg, &chlglen);
- if(!result)
- result = sasl_create_cram_md5_message(data, chlg, conn->user,
- conn->passwd, &resp, &len);
- free(chlg);
- break;
- case SASL_DIGESTMD5:
- sasl->params->getmessage(data->state.buffer, &serverdata);
- result = Curl_sasl_create_digest_md5_message(data, serverdata,
- conn->user, conn->passwd,
- sasl->params->service,
- &resp, &len);
- newstate = SASL_DIGESTMD5_RESP;
- break;
- case SASL_DIGESTMD5_RESP:
- if(!(resp = strdup("")))
- result = CURLE_OUT_OF_MEMORY;
- break;
-#endif
-
-#ifdef USE_NTLM
- case SASL_NTLM:
- /* Create the type-1 message */
- result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
- &conn->ntlm, &resp, &len);
- newstate = SASL_NTLM_TYPE2MSG;
- break;
- case SASL_NTLM_TYPE2MSG:
- /* Decode the type-2 message */
- sasl->params->getmessage(data->state.buffer, &serverdata);
- result = Curl_sasl_decode_ntlm_type2_message(data, serverdata,
- &conn->ntlm);
- if(!result)
- result = Curl_sasl_create_ntlm_type3_message(data, conn->user,
- conn->passwd, &conn->ntlm,
- &resp, &len);
- break;
-#endif
-
-#if defined(USE_KERBEROS5)
- case SASL_GSSAPI:
- result = Curl_sasl_create_gssapi_user_message(data, conn->user,
- conn->passwd,
- sasl->params->service,
- sasl->mutual_auth, NULL,
- &conn->krb5,
- &resp, &len);
- newstate = SASL_GSSAPI_TOKEN;
- break;
- case SASL_GSSAPI_TOKEN:
- sasl->params->getmessage(data->state.buffer, &serverdata);
- if(sasl->mutual_auth) {
- /* Decode the user token challenge and create the optional response
- message */
- result = Curl_sasl_create_gssapi_user_message(data, NULL, NULL, NULL,
- sasl->mutual_auth,
- serverdata, &conn->krb5,
- &resp, &len);
- newstate = SASL_GSSAPI_NO_DATA;
- }
- else
- /* Decode the security challenge and create the response message */
- result = Curl_sasl_create_gssapi_security_message(data, serverdata,
- &conn->krb5,
- &resp, &len);
- break;
- case SASL_GSSAPI_NO_DATA:
- sasl->params->getmessage(data->state.buffer, &serverdata);
- /* Decode the security challenge and create the response message */
- result = Curl_sasl_create_gssapi_security_message(data, serverdata,
- &conn->krb5,
- &resp, &len);
- break;
-#endif
-
- case SASL_XOAUTH2:
- /* Create the authorisation message */
- result = sasl_create_xoauth2_message(data, conn->user,
- conn->xoauth2_bearer, &resp, &len);
- break;
- case SASL_CANCEL:
- /* Remove the offending mechanism from the supported list */
- sasl->authmechs ^= sasl->authused;
-
- /* Start an alternative SASL authentication */
- result = Curl_sasl_start(sasl, conn, sasl->force_ir, progress);
- newstate = sasl->state; /* Use state from Curl_sasl_start() */
- break;
- default:
- failf(data, "Unsupported SASL authentication mechanism");
- result = CURLE_UNSUPPORTED_PROTOCOL; /* Should not happen */
- break;
- }
-
- switch(result) {
- case CURLE_BAD_CONTENT_ENCODING:
- /* Cancel dialog */
- result = sasl->params->sendcont(conn, "*");
- newstate = SASL_CANCEL;
- break;
- case CURLE_OK:
- if(resp)
- result = sasl->params->sendcont(conn, resp);
- break;
- default:
- newstate = SASL_STOP; /* Stop on error */
- *progress = SASL_DONE;
- break;
- }
-
- free(resp);
-
- state(sasl, conn, newstate);
-
- return result;
-}
diff --git a/lib/curl_sasl.h b/lib/curl_sasl.h
index 117d60e32..41ef859a2 100644
--- a/lib/curl_sasl.h
+++ b/lib/curl_sasl.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -39,6 +39,10 @@ struct ntlmdata;
struct kerberos5data;
#endif
+/* Authentication mechanism values */
+#define SASL_AUTH_NONE 0
+#define SASL_AUTH_ANY ~0U
+
/* Authentication mechanism flags */
#define SASL_MECH_LOGIN (1 << 0)
#define SASL_MECH_PLAIN (1 << 1)
@@ -49,12 +53,6 @@ struct kerberos5data;
#define SASL_MECH_NTLM (1 << 6)
#define SASL_MECH_XOAUTH2 (1 << 7)
-/* Authentication mechanism values */
-#define SASL_AUTH_NONE 0
-#define SASL_AUTH_ANY ~0U
-#define SASL_AUTH_DEFAULT (SASL_AUTH_ANY & \
- ~(SASL_MECH_EXTERNAL | SASL_MECH_XOAUTH2))
-
/* Authentication mechanism strings */
#define SASL_MECH_STRING_LOGIN "LOGIN"
#define SASL_MECH_STRING_PLAIN "PLAIN"
@@ -65,70 +63,11 @@ struct kerberos5data;
#define SASL_MECH_STRING_NTLM "NTLM"
#define SASL_MECH_STRING_XOAUTH2 "XOAUTH2"
-#if !defined(CURL_DISABLE_CRYPTO_AUTH)
-#define DIGEST_MAX_VALUE_LENGTH 256
-#define DIGEST_MAX_CONTENT_LENGTH 1024
-#endif
-
enum {
CURLDIGESTALGO_MD5,
CURLDIGESTALGO_MD5SESS
};
-/* SASL machine states */
-typedef enum {
- SASL_STOP,
- SASL_PLAIN,
- SASL_LOGIN,
- SASL_LOGIN_PASSWD,
- SASL_EXTERNAL,
- SASL_CRAMMD5,
- SASL_DIGESTMD5,
- SASL_DIGESTMD5_RESP,
- SASL_NTLM,
- SASL_NTLM_TYPE2MSG,
- SASL_GSSAPI,
- SASL_GSSAPI_TOKEN,
- SASL_GSSAPI_NO_DATA,
- SASL_XOAUTH2,
- SASL_CANCEL,
- SASL_FINAL
-} saslstate;
-
-/* Progress indicator */
-typedef enum {
- SASL_IDLE,
- SASL_INPROGRESS,
- SASL_DONE
-} saslprogress;
-
-/* Protocol dependent SASL parameters */
-struct SASLproto {
- const char *service; /* The service name */
- int contcode; /* Code to receive when continuation is expected */
- int finalcode; /* Code to receive upon authentication success */
- size_t maxirlen; /* Maximum initial response length */
- CURLcode (*sendauth)(struct connectdata *conn,
- const char *mech, const char *ir);
- /* Send authentication command */
- CURLcode (*sendcont)(struct connectdata *conn, const char *contauth);
- /* Send authentication continuation */
- void (*getmessage)(char *buffer, char **outptr);
- /* Get SASL response message */
-};
-
-/* Per-connection parameters */
-struct SASL {
- const struct SASLproto *params; /* Protocol dependent parameters */
- saslstate state; /* Current machine state */
- unsigned int authmechs; /* Accepted authentication mechanisms */
- unsigned int prefmech; /* Preferred authentication mechanism */
- unsigned int authused; /* Auth mechanism used for the connection */
- bool resetprefs; /* For URL auth option parsing. */
- bool mutual_auth; /* Mutual authentication enabled (GSSAPI only) */
- bool force_ir; /* Protocol always supports initial response */
-};
-
/* This is used to test whether the line starts with the given mechanism */
#define sasl_mech_equal(line, wordlen, mech) \
(wordlen == (sizeof(mech) - 1) / sizeof(char) && \
@@ -141,15 +80,29 @@ char *Curl_sasl_build_spn(const char *service, const char *instance);
TCHAR *Curl_sasl_build_spn(const char *service, const char *instance);
#endif
-/* This is used to extract the realm from a challenge message */
-int Curl_sasl_digest_get_pair(const char *str, char *value, char *content,
- const char **endptr);
+/* This is used to generate a base64 encoded PLAIN authentication message */
+CURLcode Curl_sasl_create_plain_message(struct SessionHandle *data,
+ const char *userp,
+ const char *passwdp,
+ char **outptr, size_t *outlen);
-#if defined(HAVE_GSSAPI)
-char *Curl_sasl_build_gssapi_spn(const char *service, const char *host);
-#endif
+/* This is used to generate a base64 encoded LOGIN authentication message
+ containing either the user name or password details */
+CURLcode Curl_sasl_create_login_message(struct SessionHandle *data,
+ const char *valuep, char **outptr,
+ size_t *outlen);
#ifndef CURL_DISABLE_CRYPTO_AUTH
+/* This is used to decode a base64 encoded CRAM-MD5 challange message */
+CURLcode Curl_sasl_decode_cram_md5_message(const char *chlg64, char **outptr,
+ size_t *outlen);
+
+/* This is used to generate a base64 encoded CRAM-MD5 response message */
+CURLcode Curl_sasl_create_cram_md5_message(struct SessionHandle *data,
+ const char *chlg,
+ const char *user,
+ const char *passwdp,
+ char **outptr, size_t *outlen);
/* This is used to generate a base64 encoded DIGEST-MD5 response message */
CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
@@ -225,30 +178,15 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
void Curl_sasl_gssapi_cleanup(struct kerberos5data *krb5);
#endif /* USE_KERBEROS5 */
+/* This is used to generate a base64 encoded XOAUTH2 authentication message
+ containing the user name and bearer token */
+CURLcode Curl_sasl_create_xoauth2_message(struct SessionHandle *data,
+ const char *user,
+ const char *bearer,
+ char **outptr, size_t *outlen);
+
/* This is used to cleanup any libraries or curl modules used by the sasl
functions */
void Curl_sasl_cleanup(struct connectdata *conn, unsigned int authused);
-/* Convert a mechanism name to a token */
-unsigned int Curl_sasl_decode_mech(const char *ptr,
- size_t maxlen, size_t *len);
-
-/* Parse the URL login options */
-CURLcode Curl_sasl_parse_url_auth_option(struct SASL *sasl,
- const char *value, size_t len);
-
-/* Initializes an SASL structure */
-void Curl_sasl_init(struct SASL *sasl, const struct SASLproto *params);
-
-/* Check if we have enough auth data and capabilities to authenticate */
-bool Curl_sasl_can_authenticate(struct SASL *sasl, struct connectdata *conn);
-
-/* Calculate the required login details for SASL authentication */
-CURLcode Curl_sasl_start(struct SASL *sasl, struct connectdata *conn,
- bool force_ir, saslprogress *progress);
-
-/* Continue an SASL authentication */
-CURLcode Curl_sasl_continue(struct SASL *sasl, struct connectdata *conn,
- int code, saslprogress *progress);
-
#endif /* HEADER_CURL_SASL_H */
diff --git a/lib/curl_sasl_gssapi.c b/lib/curl_sasl_gssapi.c
index 3c6f3ce32..6dda0e907 100644
--- a/lib/curl_sasl_gssapi.c
+++ b/lib/curl_sasl_gssapi.c
@@ -5,8 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2014 - 2015, Steve Holme, <steve_holme@hotmail.com>.
- * Copyright (C) 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>.
*
* This software is licensed as described in the file COPYING, which
* you should have received as part of this distribution. The terms
@@ -27,17 +26,28 @@
#if defined(HAVE_GSSAPI) && defined(USE_KERBEROS5)
+#ifdef HAVE_OLD_GSSMIT
+#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
+#define NCOMPAT 1
+#endif
+
+#define GSSAUTH_P_NONE 1
+#define GSSAUTH_P_INTEGRITY 2
+#define GSSAUTH_P_PRIVACY 4
+
#include <curl/curl.h>
#include "curl_sasl.h"
#include "urldata.h"
#include "curl_base64.h"
#include "curl_gssapi.h"
+#include "curl_memory.h"
#include "sendf.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -52,7 +62,7 @@
*
* Returns a pointer to the newly allocated SPN.
*/
-char *Curl_sasl_build_gssapi_spn(const char *service, const char *host)
+static char *Curl_sasl_build_gssapi_spn(const char *service, const char *host)
{
/* Generate and return our SPN */
return aprintf("%s@%s", service, host);
@@ -116,16 +126,12 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data,
/* Import the SPN */
gss_major_status = gss_import_name(&gss_minor_status, &spn_token,
- GSS_C_NT_HOSTBASED_SERVICE, &krb5->spn);
+ gss_nt_service_name, &krb5->spn);
if(GSS_ERROR(gss_major_status)) {
Curl_gss_log_error(data, gss_minor_status, "gss_import_name() failed: ");
- free(spn);
-
return CURLE_OUT_OF_MEMORY;
}
-
- free(spn);
}
else {
/* Decode the base-64 encoded challenge message */
@@ -158,7 +164,7 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data,
mutual_auth,
NULL);
- free(input_token.value);
+ Curl_safefree(input_token.value);
if(GSS_ERROR(gss_major_status)) {
if(output_token.value)
@@ -244,7 +250,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
Curl_gss_log_error(data, gss_minor_status,
"gss_inquire_context() failed: ");
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_OUT_OF_MEMORY;
}
@@ -255,7 +261,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
if(GSS_ERROR(gss_major_status)) {
Curl_gss_log_error(data, gss_minor_status, "gss_display_name() failed: ");
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_OUT_OF_MEMORY;
}
@@ -271,7 +277,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
Curl_gss_log_error(data, gss_minor_status, "gss_unwrap() failed: ");
gss_release_buffer(&gss_status, &username_token);
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -281,7 +287,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
infof(data, "GSSAPI handshake failure (invalid security data)\n");
gss_release_buffer(&gss_status, &username_token);
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -289,7 +295,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
/* Copy the data out and free the challenge as it is not required anymore */
memcpy(&indata, output_token.value, 4);
gss_release_buffer(&gss_status, &output_token);
- free(chlg);
+ Curl_safefree(chlg);
/* Extract the security layer */
sec_layer = indata & 0x000000FF;
@@ -344,7 +350,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
if(GSS_ERROR(gss_major_status)) {
Curl_gss_log_error(data, gss_minor_status, "gss_wrap() failed: ");
- free(message);
+ Curl_safefree(message);
return CURLE_OUT_OF_MEMORY;
}
@@ -357,7 +363,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
gss_release_buffer(&gss_status, &output_token);
/* Free the message buffer */
- free(message);
+ Curl_safefree(message);
return result;
}
diff --git a/lib/curl_sasl_sspi.c b/lib/curl_sasl_sspi.c
index b149530ff..0509b7555 100644
--- a/lib/curl_sasl_sspi.c
+++ b/lib/curl_sasl_sspi.c
@@ -5,8 +5,8 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2014 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>.
+ * Copyright (C) 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
@@ -36,14 +36,15 @@
#include "urldata.h"
#include "curl_base64.h"
#include "warnless.h"
+#include "curl_memory.h"
#include "curl_multibyte.h"
#include "sendf.h"
#include "strdup.h"
-#include "curl_printf.h"
-#include "rawstr.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -79,7 +80,7 @@ TCHAR *Curl_sasl_build_spn(const char *service, const char *host)
/* Allocate our TCHAR based SPN */
tchar_spn = Curl_convert_UTF8_to_tchar(utf8_spn);
if(!tchar_spn) {
- free(utf8_spn);
+ Curl_safefree(utf8_spn);
return NULL;
}
@@ -155,7 +156,7 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
status = s_pSecFn->QuerySecurityPackageInfo((TCHAR *) TEXT(SP_NAME_DIGEST),
&SecurityPackage);
if(status != SEC_E_OK) {
- free(input_token);
+ Curl_safefree(input_token);
return CURLE_NOT_BUILT_IN;
}
@@ -168,7 +169,7 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
/* Allocate our response buffer */
output_token = malloc(token_max);
if(!output_token) {
- free(input_token);
+ Curl_safefree(input_token);
return CURLE_OUT_OF_MEMORY;
}
@@ -176,8 +177,8 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
/* Generate our SPN */
spn = Curl_sasl_build_spn(service, data->easy_conn->host.name);
if(!spn) {
- free(output_token);
- free(input_token);
+ Curl_safefree(output_token);
+ Curl_safefree(input_token);
return CURLE_OUT_OF_MEMORY;
}
@@ -186,9 +187,9 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
/* Populate our identity structure */
result = Curl_create_sspi_identity(userp, passwdp, &identity);
if(result) {
- free(spn);
- free(output_token);
- free(input_token);
+ Curl_safefree(spn);
+ Curl_safefree(output_token);
+ Curl_safefree(input_token);
return result;
}
@@ -209,9 +210,9 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
if(status != SEC_E_OK) {
Curl_sspi_free_identity(p_identity);
- free(spn);
- free(output_token);
- free(input_token);
+ Curl_safefree(spn);
+ Curl_safefree(output_token);
+ Curl_safefree(input_token);
return CURLE_LOGIN_DENIED;
}
@@ -244,9 +245,9 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
else if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) {
s_pSecFn->FreeCredentialsHandle(&credentials);
Curl_sspi_free_identity(p_identity);
- free(spn);
- free(output_token);
- free(input_token);
+ Curl_safefree(spn);
+ Curl_safefree(output_token);
+ Curl_safefree(input_token);
return CURLE_RECV_ERROR;
}
@@ -263,86 +264,18 @@ CURLcode Curl_sasl_create_digest_md5_message(struct SessionHandle *data,
Curl_sspi_free_identity(p_identity);
/* Free the SPN */
- free(spn);
+ Curl_safefree(spn);
/* Free the response buffer */
- free(output_token);
+ Curl_safefree(output_token);
/* Free the decoded challenge message */
- free(input_token);
+ Curl_safefree(input_token);
return result;
}
/*
-* Curl_override_sspi_http_realm()
-*
-* This is used to populate the domain in a SSPI identity structure
-* The realm is extracted from the challenge message and used as the
-* domain if it is not already explicitly set.
-*
-* Parameters:
-*
-* chlg [in] - The challenge message.
-* identity [in/out] - The identity structure.
-*
-* Returns CURLE_OK on success.
-*/
-CURLcode Curl_override_sspi_http_realm(const char *chlg,
- SEC_WINNT_AUTH_IDENTITY *identity)
-{
- xcharp_u domain, dup_domain;
-
- /* If domain is blank or unset, check challenge message for realm */
- if(!identity->Domain || !identity->DomainLength) {
- for(;;) {
- char value[DIGEST_MAX_VALUE_LENGTH];
- char content[DIGEST_MAX_CONTENT_LENGTH];
-
- /* Pass all additional spaces here */
- while(*chlg && ISSPACE(*chlg))
- chlg++;
-
- /* Extract a value=content pair */
- if(!Curl_sasl_digest_get_pair(chlg, value, content, &chlg)) {
- if(Curl_raw_equal(value, "realm")) {
-
- /* Setup identity's domain and length */
- domain.tchar_ptr = Curl_convert_UTF8_to_tchar((char *)content);
- if(!domain.tchar_ptr)
- return CURLE_OUT_OF_MEMORY;
- dup_domain.tchar_ptr = _tcsdup(domain.tchar_ptr);
- if(!dup_domain.tchar_ptr) {
- Curl_unicodefree(domain.tchar_ptr);
- return CURLE_OUT_OF_MEMORY;
- }
- identity->Domain = dup_domain.tbyte_ptr;
- identity->DomainLength = curlx_uztoul(_tcslen(dup_domain.tchar_ptr));
- dup_domain.tchar_ptr = NULL;
-
- Curl_unicodefree(domain.tchar_ptr);
- }
- else {
- /* unknown specifier, ignore it! */
- }
- }
- else
- break; /* we're done here */
-
- /* Pass all additional spaces here */
- while(*chlg && ISSPACE(*chlg))
- chlg++;
-
- /* Allow the list to be comma-separated */
- if(',' == *chlg)
- chlg++;
- }
- }
-
- return CURLE_OK;
-}
-
-/*
* Curl_sasl_decode_digest_http_message()
*
* This is used to decode a HTTP DIGEST challenge message into the seperate
@@ -443,11 +376,6 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
if(Curl_create_sspi_identity(userp, passwdp, &identity))
return CURLE_OUT_OF_MEMORY;
- /* Populate our identity domain */
- if(Curl_override_sspi_http_realm((const char*)digest->input_token,
- &identity))
- return CURLE_OUT_OF_MEMORY;
-
/* Allow proper cleanup of the identity structure */
p_identity = &identity;
}
@@ -462,7 +390,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
p_identity, NULL, NULL,
&credentials, &expiry);
if(status != SEC_E_OK) {
- free(output_token);
+ Curl_safefree(output_token);
return CURLE_LOGIN_DENIED;
}
@@ -502,7 +430,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
else if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) {
s_pSecFn->FreeCredentialsHandle(&credentials);
- free(output_token);
+ Curl_safefree(output_token);
return CURLE_OUT_OF_MEMORY;
}
@@ -512,7 +440,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
s_pSecFn->DeleteSecurityContext(&context);
s_pSecFn->FreeCredentialsHandle(&credentials);
- free(output_token);
+ Curl_safefree(output_token);
return CURLE_OUT_OF_MEMORY;
}
@@ -533,7 +461,7 @@ CURLcode Curl_sasl_create_digest_http_message(struct SessionHandle *data,
Curl_sspi_free_identity(p_identity);
/* Free the response buffer */
- free(output_token);
+ Curl_safefree(output_token);
return CURLE_OK;
}
@@ -984,7 +912,7 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data,
&expiry);
if(status != SEC_E_OK && status != SEC_I_CONTINUE_NEEDED) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_RECV_ERROR;
}
@@ -1002,7 +930,7 @@ CURLcode Curl_sasl_create_gssapi_user_message(struct SessionHandle *data,
}
/* Free the decoded challenge */
- free(chlg);
+ Curl_safefree(chlg);
return result;
}
@@ -1073,7 +1001,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
SECPKG_ATTR_SIZES,
&sizes);
if(status != SEC_E_OK) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_OUT_OF_MEMORY;
}
@@ -1083,7 +1011,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
SECPKG_CRED_ATTR_NAMES,
&names);
if(status != SEC_E_OK) {
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_RECV_ERROR;
}
@@ -1104,7 +1032,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
if(status != SEC_E_OK) {
infof(data, "GSSAPI handshake failure (empty security message)\n");
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -1113,7 +1041,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
if(input_buf[1].cbBuffer != 4) {
infof(data, "GSSAPI handshake failure (invalid security data)\n");
- free(chlg);
+ Curl_safefree(chlg);
return CURLE_BAD_CONTENT_ENCODING;
}
@@ -1121,7 +1049,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
/* Copy the data out and free the challenge as it is not required anymore */
memcpy(&indata, input_buf[1].pvBuffer, 4);
s_pSecFn->FreeContextBuffer(input_buf[1].pvBuffer);
- free(chlg);
+ Curl_safefree(chlg);
/* Extract the security layer */
sec_layer = indata & 0x000000FF;
@@ -1148,7 +1076,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
/* Convert the user name to UTF8 when operating with Unicode */
user_name = Curl_convert_tchar_to_UTF8(names.sUserName);
if(!user_name) {
- free(trailer);
+ Curl_safefree(trailer);
return CURLE_OUT_OF_MEMORY;
}
@@ -1157,7 +1085,7 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
messagelen = sizeof(outdata) + strlen(user_name) + 1;
message = malloc(messagelen);
if(!message) {
- free(trailer);
+ Curl_safefree(trailer);
Curl_unicodefree(user_name);
return CURLE_OUT_OF_MEMORY;
@@ -1176,8 +1104,8 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
/* Allocate the padding */
padding = malloc(sizes.cbBlockSize);
if(!padding) {
- free(message);
- free(trailer);
+ Curl_safefree(message);
+ Curl_safefree(trailer);
return CURLE_OUT_OF_MEMORY;
}
@@ -1200,9 +1128,9 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
status = s_pSecFn->EncryptMessage(krb5->context, KERB_WRAP_NO_ENCRYPT,
&wrap_desc, 0);
if(status != SEC_E_OK) {
- free(padding);
- free(message);
- free(trailer);
+ Curl_safefree(padding);
+ Curl_safefree(message);
+ Curl_safefree(trailer);
return CURLE_OUT_OF_MEMORY;
}
@@ -1212,9 +1140,9 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
wrap_buf[2].cbBuffer;
appdata = malloc(appdatalen);
if(!appdata) {
- free(padding);
- free(message);
- free(trailer);
+ Curl_safefree(padding);
+ Curl_safefree(message);
+ Curl_safefree(trailer);
return CURLE_OUT_OF_MEMORY;
}
@@ -1231,10 +1159,10 @@ CURLcode Curl_sasl_create_gssapi_security_message(struct SessionHandle *data,
outlen);
/* Free all of our local buffers */
- free(appdata);
- free(padding);
- free(message);
- free(trailer);
+ Curl_safefree(appdata);
+ Curl_safefree(padding);
+ Curl_safefree(message);
+ Curl_safefree(trailer);
return result;
}
diff --git a/lib/curl_setup.h b/lib/curl_setup.h
index ab0c13940..b046b77d3 100644
--- a/lib/curl_setup.h
+++ b/lib/curl_setup.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -190,9 +190,6 @@
# ifndef CURL_DISABLE_GOPHER
# define CURL_DISABLE_GOPHER
# endif
-# ifndef CURL_DISABLE_SMB
-# define CURL_DISABLE_SMB
-# endif
#endif
/*
@@ -604,7 +601,7 @@ int netware_init(void);
#define LIBIDN_REQUIRED_VERSION "0.4.1"
-#if defined(USE_GNUTLS) || defined(USE_OPENSSL) || defined(USE_NSS) || \
+#if defined(USE_GNUTLS) || defined(USE_SSLEAY) || defined(USE_NSS) || \
defined(USE_POLARSSL) || defined(USE_AXTLS) || \
defined(USE_CYASSL) || defined(USE_SCHANNEL) || \
defined(USE_DARWINSSL) || defined(USE_GSKIT)
@@ -625,17 +622,12 @@ int netware_init(void);
/* Single point where USE_NTLM definition might be defined */
#if !defined(CURL_DISABLE_NTLM) && !defined(CURL_DISABLE_CRYPTO_AUTH)
-#if defined(USE_OPENSSL) || defined(USE_WINDOWS_SSPI) || \
+#if defined(USE_SSLEAY) || defined(USE_WINDOWS_SSPI) || \
defined(USE_GNUTLS) || defined(USE_NSS) || defined(USE_DARWINSSL) || \
defined(USE_OS400CRYPTO) || defined(USE_WIN32_CRYPTO)
-
-#ifdef HAVE_BORINGSSL /* BoringSSL is not NTLM capable */
-#undef USE_NTLM
-#else
#define USE_NTLM
#endif
#endif
-#endif
/* non-configure builds may define CURL_WANTS_CA_BUNDLE_ENV */
#if defined(CURL_WANTS_CA_BUNDLE_ENV) && !defined(CURL_CA_BUNDLE)
@@ -707,24 +699,4 @@ int netware_init(void);
#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
#endif
-/* In Windows the default file mode is text but an application can override it.
-Therefore we specify it explicitly. https://github.com/bagder/curl/pull/258
-*/
-#if defined(WIN32) || defined(MSDOS)
-#define FOPEN_READTEXT "rt"
-#define FOPEN_WRITETEXT "wt"
-#elif defined(__CYGWIN__)
-/* Cygwin has specific behavior we need to address when WIN32 is not defined.
-https://cygwin.com/cygwin-ug-net/using-textbinary.html
-For write we want our output to have line endings of LF and be compatible with
-other Cygwin utilities. For read we want to handle input that may have line
-endings either CRLF or LF so 't' is appropriate.
-*/
-#define FOPEN_READTEXT "rt"
-#define FOPEN_WRITETEXT "w"
-#else
-#define FOPEN_READTEXT "r"
-#define FOPEN_WRITETEXT "w"
-#endif
-
#endif /* HEADER_CURL_SETUP_H */
diff --git a/lib/curl_sspi.c b/lib/curl_sspi.c
index 070424dd1..f09d28827 100644
--- a/lib/curl_sspi.c
+++ b/lib/curl_sspi.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -25,12 +25,17 @@
#ifdef USE_WINDOWS_SSPI
#include <curl/curl.h>
+
#include "curl_sspi.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+#include "curl_memory.h"
#include "curl_multibyte.h"
#include "warnless.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
/* We use our own typedef here since some headers might lack these */
@@ -93,25 +98,20 @@ CURLcode Curl_sspi_global_init(void)
osver.dwPlatformId == platformId)
securityDll = TRUE;
#else
- ULONGLONG cm;
+ ULONGLONG majorVersionMask;
+ ULONGLONG platformIdMask;
OSVERSIONINFOEX osver;
memset(&osver, 0, sizeof(osver));
osver.dwOSVersionInfoSize = sizeof(osver);
osver.dwMajorVersion = majorVersion;
osver.dwPlatformId = platformId;
-
- cm = VerSetConditionMask(0, VER_MAJORVERSION, VER_EQUAL);
- cm = VerSetConditionMask(cm, VER_MINORVERSION, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMINOR, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_PLATFORMID, VER_EQUAL);
+ majorVersionMask = VerSetConditionMask(0, VER_MAJORVERSION, VER_EQUAL);
+ platformIdMask = VerSetConditionMask(0, VER_PLATFORMID, VER_EQUAL);
/* Verify the major version number == 4 and platform id == WIN_NT */
- if(VerifyVersionInfo(&osver, (VER_MAJORVERSION | VER_MINORVERSION |
- VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR |
- VER_PLATFORMID),
- cm))
+ if(VerifyVersionInfo(&osver, VER_MAJORVERSION, majorVersionMask) &&
+ VerifyVersionInfo(&osver, VER_PLATFORMID, platformIdMask))
securityDll = TRUE;
#endif
@@ -224,7 +224,7 @@ CURLcode Curl_create_sspi_identity(const char *userp, const char *passwdp,
Curl_unicodefree(useranddomain.tchar_ptr);
- /* Setup the identity's password and length */
+ /* Setup ntlm identity's password and length */
passwd.tchar_ptr = Curl_convert_UTF8_to_tchar((char *)passwdp);
if(!passwd.tchar_ptr)
return CURLE_OUT_OF_MEMORY;
diff --git a/lib/curl_sspi.h b/lib/curl_sspi.h
index 8655715e2..7fa308c5a 100644
--- a/lib/curl_sspi.h
+++ b/lib/curl_sspi.h
@@ -43,10 +43,6 @@
CURLcode Curl_sspi_global_init(void);
void Curl_sspi_global_cleanup(void);
-/* This is used to populate the domain in a SSPI identity structure */
-CURLcode Curl_override_sspi_http_realm(const char *chlg,
- SEC_WINNT_AUTH_IDENTITY *identity);
-
/* This is used to generate an SSPI identity structure */
CURLcode Curl_create_sspi_identity(const char *userp, const char *passwdp,
SEC_WINNT_AUTH_IDENTITY *identity);
diff --git a/lib/curl_threads.c b/lib/curl_threads.c
index f9b812ea0..5b7013914 100644
--- a/lib/curl_threads.c
+++ b/lib/curl_threads.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -33,6 +33,10 @@
#endif
#include "curl_threads.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -73,8 +77,8 @@ curl_thread_t Curl_thread_create(unsigned int (*func) (void*), void *arg)
return t;
err:
- free(t);
- free(ac);
+ Curl_safefree(t);
+ Curl_safefree(ac);
return curl_thread_t_null;
}
diff --git a/lib/curlx.h b/lib/curlx.h
index 979e7d7a1..9dc90a004 100644
--- a/lib/curlx.h
+++ b/lib/curlx.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2008, 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
@@ -90,7 +90,8 @@
#ifdef ENABLE_CURLX_PRINTF
/* If this define is set, we define all "standard" printf() functions to use
the curlx_* version instead. It makes the source code transparent and
- easier to understand/patch. Undefine them first. */
+ easier to understand/patch. Undefine them first in case _MPRINTF_REPLACE
+ is set. */
# undef printf
# undef fprintf
# undef sprintf
diff --git a/lib/dict.c b/lib/dict.c
index 06d76992e..86ddfb9e2 100644
--- a/lib/dict.c
+++ b/lib/dict.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -57,6 +57,10 @@
#include "strequal.h"
#include "dict.h"
#include "rawstr.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -97,7 +101,7 @@ static char *unescape_word(struct SessionHandle *data, const char *inputbuff)
char *dictp;
char *ptr;
int len;
- char ch;
+ char byte;
int olen=0;
newp = curl_easy_unescape(data, inputbuff, 0, &len);
@@ -109,13 +113,13 @@ static char *unescape_word(struct SessionHandle *data, const char *inputbuff)
/* According to RFC2229 section 2.2, these letters need to be escaped with
\[letter] */
for(ptr = newp;
- (ch = *ptr) != 0;
+ (byte = *ptr) != 0;
ptr++) {
- if((ch <= 32) || (ch == 127) ||
- (ch == '\'') || (ch == '\"') || (ch == '\\')) {
+ if((byte <= 32) || (byte == 127) ||
+ (byte == '\'') || (byte == '\"') || (byte == '\\')) {
dictp[olen++] = '\\';
}
- dictp[olen++] = ch;
+ dictp[olen++] = byte;
}
dictp[olen]=0;
}
diff --git a/lib/easy.c b/lib/easy.c
index 316acb1d1..619312b79 100644
--- a/lib/easy.c
+++ b/lib/easy.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -60,6 +60,7 @@
#include "hostip.h"
#include "share.h"
#include "strdup.h"
+#include "curl_memory.h"
#include "progress.h"
#include "easyif.h"
#include "select.h"
@@ -74,10 +75,11 @@
#include "multiif.h"
#include "sigpipe.h"
#include "ssh.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* win32_cleanup() is for win32 socket cleanup functionality, the opposite
diff --git a/lib/escape.c b/lib/escape.c
index 24abb930b..9923e64cf 100644
--- a/lib/escape.c
+++ b/lib/escape.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -27,14 +27,16 @@
#include <curl/curl.h>
+#include "curl_memory.h"
#include "urldata.h"
#include "warnless.h"
#include "non-ascii.h"
#include "escape.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* Portable character check (remember EBCDIC). Do not use isalnum() because
@@ -227,5 +229,6 @@ char *curl_easy_unescape(CURL *handle, const char *string, int length,
the library's memory system */
void curl_free(void *p)
{
- free(p);
+ if(p)
+ free(p);
}
diff --git a/lib/file.c b/lib/file.c
index 175b10731..dd2c56498 100644
--- a/lib/file.c
+++ b/lib/file.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -59,12 +59,14 @@
#include "getinfo.h"
#include "transfer.h"
#include "url.h"
+#include "curl_memory.h"
#include "parsedate.h" /* for the week day and month names */
#include "warnless.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
#if defined(WIN32) || defined(MSDOS) || defined(__EMX__) || \
@@ -315,6 +317,8 @@ static CURLcode file_upload(struct connectdata *conn)
* Since FILE: doesn't do the full init, we need to provide some extra
* assignments here.
*/
+ conn->fread_func = data->set.fread_func;
+ conn->fread_in = data->set.in;
conn->data->req.upload_fromhere = buf;
if(!dir)
diff --git a/lib/fileinfo.c b/lib/fileinfo.c
index 0904937aa..8c8ee981a 100644
--- a/lib/fileinfo.c
+++ b/lib/fileinfo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2010 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2010-2011, 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
@@ -24,6 +24,10 @@
#include "strdup.h"
#include "fileinfo.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/firefox-db2pem.sh b/lib/firefox-db2pem.sh
index 3f5fe75ff..14ac57606 100644
--- a/lib/firefox-db2pem.sh
+++ b/lib/firefox-db2pem.sh
@@ -6,7 +6,7 @@
# * | (__| |_| | _ <| |___
# * \___|\___/|_| \_\_____|
# *
-# * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# * Copyright (C) 1998 - 2010, 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
@@ -24,7 +24,7 @@
# It extracts all ca certs it finds in the local Firefox database and converts
# them all into PEM format.
#
-db=`ls -1d $HOME/.mozilla/firefox/*default*`
+db=`ls -1d $HOME/.mozilla/firefox/*default`
out=$1
if test -z "$out"; then
diff --git a/lib/formdata.c b/lib/formdata.c
index 9e8ce4ea0..73d3b6d72 100644
--- a/lib/formdata.c
+++ b/lib/formdata.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -34,12 +34,14 @@
#include "formdata.h"
#include "vtls/vtls.h"
#include "strequal.h"
+#include "curl_memory.h"
#include "sendf.h"
#include "strdup.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
#ifndef HAVE_BASENAME
@@ -415,7 +417,7 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost,
else {
form = AddFormInfo(fname, NULL, current_form);
if(!form) {
- free(fname);
+ Curl_safefree(fname);
return_value = CURL_FORMADD_MEMORY;
}
else {
@@ -504,7 +506,7 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost,
else {
form = AddFormInfo(NULL, type, current_form);
if(!form) {
- free(type);
+ Curl_safefree(type);
return_value = CURL_FORMADD_MEMORY;
}
else {
@@ -711,7 +713,7 @@ CURLFORMcode FormAdd(struct curl_httppost **httppost,
now by the httppost linked list */
while(first_form) {
FormInfo *ptr = first_form->more;
- free(first_form);
+ Curl_safefree(first_form);
first_form = ptr;
}
@@ -756,7 +758,7 @@ curl_off_t VmsRealFileSize(const char * name,
int ret_stat;
FILE * file;
- file = fopen(name, "r"); /* VMS */
+ file = fopen(name, "r");
if(file == NULL)
return 0;
@@ -969,16 +971,19 @@ void curl_formfree(struct curl_httppost *form)
next=form->next; /* the following form line */
/* recurse to sub-contents */
- curl_formfree(form->more);
+ if(form->more)
+ curl_formfree(form->more);
- if(!(form->flags & HTTPPOST_PTRNAME))
+ if(!(form->flags & HTTPPOST_PTRNAME) && form->name)
free(form->name); /* free the name */
if(!(form->flags &
- (HTTPPOST_PTRCONTENTS|HTTPPOST_BUFFER|HTTPPOST_CALLBACK))
- )
+ (HTTPPOST_PTRCONTENTS|HTTPPOST_BUFFER|HTTPPOST_CALLBACK)) &&
+ form->contents)
free(form->contents); /* free the contents */
- free(form->contenttype); /* free the content type */
- free(form->showfilename); /* free the faked file name */
+ if(form->contenttype)
+ free(form->contenttype); /* free the content type */
+ if(form->showfilename)
+ free(form->showfilename); /* free the faked file name */
free(form); /* free the struct */
} while((form = next) != NULL); /* continue */
@@ -1068,7 +1073,7 @@ static CURLcode formdata_add_filename(const struct curl_httppost *file,
/* filename need be escaped */
filename_escaped = malloc(strlen(filename)*2+1);
if(!filename_escaped) {
- free(filebasename);
+ Curl_safefree(filebasename);
return CURLE_OUT_OF_MEMORY;
}
p0 = filename_escaped;
@@ -1084,8 +1089,8 @@ static CURLcode formdata_add_filename(const struct curl_httppost *file,
result = AddFormDataf(form, size,
"; filename=\"%s\"",
filename);
- free(filename_escaped);
- free(filebasename);
+ Curl_safefree(filename_escaped);
+ Curl_safefree(filebasename);
return result;
}
@@ -1135,7 +1140,7 @@ CURLcode Curl_getformdata(struct SessionHandle *data,
boundary);
if(result) {
- free(boundary);
+ Curl_safefree(boundary);
return result;
}
/* we DO NOT include that line in the total size of the POST, since it'll be
@@ -1178,7 +1183,7 @@ CURLcode Curl_getformdata(struct SessionHandle *data,
/* If used, this is a link to more file names, we must then do
the magic to include several files with the same field name */
- free(fileboundary);
+ Curl_safefree(fileboundary);
fileboundary = formboundary(data);
if(!fileboundary) {
result = CURLE_OUT_OF_MEMORY;
@@ -1331,15 +1336,15 @@ CURLcode Curl_getformdata(struct SessionHandle *data,
if(result) {
Curl_formclean(&firstform);
- free(fileboundary);
- free(boundary);
+ Curl_safefree(fileboundary);
+ Curl_safefree(boundary);
return result;
}
*sizep = size;
- free(fileboundary);
- free(boundary);
+ Curl_safefree(fileboundary);
+ Curl_safefree(boundary);
*finalform = firstform;
@@ -1385,7 +1390,7 @@ static FILE * vmsfopenread(const char *file, const char *mode) {
case FAB$C_VAR:
case FAB$C_VFC:
case FAB$C_STMCR:
- return fopen(file, "r"); /* VMS */
+ return fopen(file, "r");
break;
default:
return fopen(file, "r", "rfm=stmlf", "ctx=stm");
diff --git a/lib/ftp.c b/lib/ftp.c
index fade092e4..2f4351e0c 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -77,7 +77,9 @@
#include "warnless.h"
#include "http_proxy.h"
#include "non-ascii.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
@@ -283,17 +285,19 @@ static void freedirs(struct ftp_conn *ftpc)
int i;
if(ftpc->dirs) {
for(i=0; i < ftpc->dirdepth; i++) {
- free(ftpc->dirs[i]);
- ftpc->dirs[i]=NULL;
+ if(ftpc->dirs[i]) {
+ free(ftpc->dirs[i]);
+ ftpc->dirs[i]=NULL;
+ }
}
free(ftpc->dirs);
ftpc->dirs = NULL;
ftpc->dirdepth = 0;
}
- Curl_safefree(ftpc->file);
-
- /* no longer of any use */
- Curl_safefree(ftpc->newhost);
+ if(ftpc->file) {
+ free(ftpc->file);
+ ftpc->file = NULL;
+ }
}
/* Returns non-zero if the given string contains CR (\r) or LF (\n),
@@ -1101,7 +1105,7 @@ static CURLcode ftp_state_use_port(struct connectdata *conn,
if(getsockname(conn->sock[FIRSTSOCKET], sa, &sslen)) {
failf(data, "getsockname() failed: %s",
Curl_strerror(conn, SOCKERRNO) );
- free(addr);
+ Curl_safefree(addr);
return CURLE_FTP_PORT_FAILED;
}
switch(sa->sa_family) {
@@ -1133,11 +1137,11 @@ static CURLcode ftp_state_use_port(struct connectdata *conn,
if(res == NULL) {
failf(data, "failed to resolve the address provided to PORT: %s", host);
- free(addr);
+ Curl_safefree(addr);
return CURLE_FTP_PORT_FAILED;
}
- free(addr);
+ Curl_safefree(addr);
host = NULL;
/* step 2, create a socket for the requested address */
@@ -1491,13 +1495,13 @@ static CURLcode ftp_state_list(struct connectdata *conn)
The other ftp_filemethods will CWD into dir/dir/ first and
then just do LIST (in that case: nothing to do here)
*/
- char *cmd, *lstArg, *slashPos;
+ char *cmd,*lstArg,*slashPos;
lstArg = NULL;
if((data->set.ftp_filemethod == FTPFILE_NOCWD) &&
data->state.path &&
data->state.path[0] &&
- strchr(data->state.path, '/')) {
+ strchr(data->state.path,'/')) {
lstArg = strdup(data->state.path);
if(!lstArg)
@@ -1507,7 +1511,7 @@ static CURLcode ftp_state_list(struct connectdata *conn)
if(lstArg[strlen(lstArg) - 1] != '/') {
/* chop off the file part if format is dir/dir/file */
- slashPos = strrchr(lstArg, '/');
+ slashPos = strrchr(lstArg,'/');
if(slashPos)
*(slashPos+1) = '\0';
}
@@ -1521,13 +1525,16 @@ static CURLcode ftp_state_list(struct connectdata *conn)
lstArg? lstArg: "" );
if(!cmd) {
- free(lstArg);
+ if(lstArg)
+ free(lstArg);
return CURLE_OUT_OF_MEMORY;
}
result = Curl_pp_sendf(&conn->proto.ftpc.pp, "%s", cmd);
- free(lstArg);
+ if(lstArg)
+ free(lstArg);
+
free(cmd);
if(result)
@@ -1670,8 +1677,8 @@ static CURLcode ftp_state_ul_setup(struct connectdata *conn,
BUFSIZE : curlx_sotouz(data->state.resume_from - passed);
size_t actuallyread =
- data->set.fread_func(data->state.buffer, 1, readthisamountnow,
- data->set.in);
+ conn->fread_func(data->state.buffer, 1, readthisamountnow,
+ conn->fread_in);
passed += actuallyread;
if((actuallyread == 0) || (actuallyread > readthisamountnow)) {
@@ -1808,13 +1815,6 @@ static CURLcode ftp_state_quote(struct connectdata *conn,
static CURLcode ftp_epsv_disable(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
-
- if(conn->bits.ipv6) {
- /* We can't disable EPSV when doing IPv6, so this is instead a fail */
- failf(conn->data, "Failed EPSV attempt, exiting\n");
- return CURLE_FTP_WEIRD_SERVER_REPLY;
- }
-
infof(conn->data, "Failed EPSV attempt. Disabling EPSV\n");
/* disable it for next transfer */
conn->bits.ftp_use_epsv = FALSE;
@@ -1887,7 +1887,7 @@ static CURLcode proxy_magic(struct connectdata *conn,
memset(&http_proxy, 0, sizeof(http_proxy));
data->req.protop = &http_proxy;
- result = Curl_proxyCONNECT(conn, SECONDARYSOCKET, newhost, newport, TRUE);
+ result = Curl_proxyCONNECT(conn, SECONDARYSOCKET, newhost, newport);
data->req.protop = ftp_save;
@@ -1906,22 +1906,6 @@ static CURLcode proxy_magic(struct connectdata *conn,
return result;
}
-static char *control_address(struct connectdata *conn)
-{
- /* Returns the control connection IP address.
- If a proxy tunnel is used, returns the original host name instead, because
- the effective control connection address is the proxy address,
- not the ftp host. */
- if(conn->bits.tunnel_proxy ||
- conn->proxytype == CURLPROXY_SOCKS5 ||
- conn->proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
- conn->proxytype == CURLPROXY_SOCKS4 ||
- conn->proxytype == CURLPROXY_SOCKS4A)
- return conn->host.name;
-
- return conn->ip_addr_str;
-}
-
static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
int ftpcode)
{
@@ -1933,9 +1917,6 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
unsigned short connectport; /* the local port connect() should use! */
char *str=&data->state.buffer[4]; /* start on the first letter */
- /* if we come here again, make sure the former name is cleared */
- Curl_safefree(ftpc->newhost);
-
if((ftpc->count1 == 0) &&
(ftpcode == 229)) {
/* positive EPSV response */
@@ -1944,12 +1925,12 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
unsigned int num;
char separator[4];
ptr++;
- if(5 == sscanf(ptr, "%c%c%c%u%c",
- &separator[0],
- &separator[1],
- &separator[2],
- &num,
- &separator[3])) {
+ if(5 == sscanf(ptr, "%c%c%c%u%c",
+ &separator[0],
+ &separator[1],
+ &separator[2],
+ &num,
+ &separator[3])) {
const char sep1 = separator[0];
int i;
@@ -1967,9 +1948,19 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
}
if(ptr) {
ftpc->newport = (unsigned short)(num & 0xffff);
- ftpc->newhost = strdup(control_address(conn));
- if(!ftpc->newhost)
- return CURLE_OUT_OF_MEMORY;
+
+ if(conn->bits.tunnel_proxy ||
+ conn->proxytype == CURLPROXY_SOCKS5 ||
+ conn->proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
+ conn->proxytype == CURLPROXY_SOCKS4 ||
+ conn->proxytype == CURLPROXY_SOCKS4A)
+ /* proxy tunnel -> use other host info because ip_addr_str is the
+ proxy address not the ftp host */
+ snprintf(ftpc->newhost, sizeof(ftpc->newhost), "%s",
+ conn->host.name);
+ else
+ /* use the same IP we are already connected to */
+ snprintf(ftpc->newhost, NEWHOST_BUFSIZE, "%s", conn->ip_addr_str);
}
}
else
@@ -1997,8 +1988,8 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
*/
while(*str) {
if(6 == sscanf(str, "%d,%d,%d,%d,%d,%d",
- &ip[0], &ip[1], &ip[2], &ip[3],
- &port[0], &port[1]))
+ &ip[0], &ip[1], &ip[2], &ip[3],
+ &port[0], &port[1]))
break;
str++;
}
@@ -2010,19 +2001,26 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
/* we got OK from server */
if(data->set.ftp_skip_ip) {
- /* told to ignore the remotely given IP but instead use the host we used
+ /* told to ignore the remotely given IP but instead use the one we used
for the control connection */
- infof(data, "Skip %d.%d.%d.%d for data connection, re-use %s instead\n",
+ infof(data, "Skips %d.%d.%d.%d for data connection, uses %s instead\n",
ip[0], ip[1], ip[2], ip[3],
- conn->host.name);
- ftpc->newhost = strdup(control_address(conn));
+ conn->ip_addr_str);
+ if(conn->bits.tunnel_proxy ||
+ conn->proxytype == CURLPROXY_SOCKS5 ||
+ conn->proxytype == CURLPROXY_SOCKS5_HOSTNAME ||
+ conn->proxytype == CURLPROXY_SOCKS4 ||
+ conn->proxytype == CURLPROXY_SOCKS4A)
+ /* proxy tunnel -> use other host info because ip_addr_str is the
+ proxy address not the ftp host */
+ snprintf(ftpc->newhost, sizeof(ftpc->newhost), "%s", conn->host.name);
+ else
+ snprintf(ftpc->newhost, sizeof(ftpc->newhost), "%s",
+ conn->ip_addr_str);
}
else
- ftpc->newhost = aprintf("%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]);
-
- if(!ftpc->newhost)
- return CURLE_OUT_OF_MEMORY;
-
+ snprintf(ftpc->newhost, sizeof(ftpc->newhost),
+ "%d.%d.%d.%d", ip[0], ip[1], ip[2], ip[3]);
ftpc->newport = (unsigned short)(((port[0]<<8) + port[1]) & 0xffff);
}
else if(ftpc->count1 == 0) {
@@ -2073,8 +2071,9 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
conn->bits.tcpconnect[SECONDARYSOCKET] = FALSE;
result = Curl_connecthost(conn, addr);
+ Curl_resolv_unlock(data, addr); /* we're done using this address */
+
if(result) {
- Curl_resolv_unlock(data, addr); /* we're done using this address */
if(ftpc->count1 == 0 && ftpcode == 229)
return ftp_epsv_disable(conn);
@@ -2090,9 +2089,8 @@ static CURLcode ftp_state_pasv_resp(struct connectdata *conn,
if(data->set.verbose)
/* this just dumps information about this second connection */
- ftp_pasv_verbose(conn, addr->addr, ftpc->newhost, connectport);
+ ftp_pasv_verbose(conn, conn->ip_addr, ftpc->newhost, connectport);
- Curl_resolv_unlock(data, addr); /* we're done using this address */
conn->bits.do_more = TRUE;
state(conn, FTP_STOP); /* this phase is completed */
@@ -2107,9 +2105,7 @@ static CURLcode ftp_state_port_resp(struct connectdata *conn,
ftpport fcmd = (ftpport)ftpc->count1;
CURLcode result = CURLE_OK;
- /* The FTP spec tells a positive response should have code 200.
- Be more permissive here to tolerate deviant servers. */
- if(ftpcode / 100 != 2) {
+ if(ftpcode != 200) {
/* the command failed */
if(EPRT == fcmd) {
@@ -3273,7 +3269,8 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
}
/* now store a copy of the directory we are in */
- free(ftpc->prevpath);
+ if(ftpc->prevpath)
+ free(ftpc->prevpath);
if(data->set.wildcardmatch) {
if(data->set.chunk_end && ftpc->file) {
@@ -3322,7 +3319,7 @@ static CURLcode ftp_done(struct connectdata *conn, CURLcode status,
/* shut down the socket to inform the server we're done */
#ifdef _WIN32_WCE
- shutdown(conn->sock[SECONDARYSOCKET], 2); /* SD_BOTH */
+ shutdown(conn->sock[SECONDARYSOCKET],2); /* SD_BOTH */
#endif
if(conn->sock[SECONDARYSOCKET] != CURL_SOCKET_BAD) {
@@ -3645,7 +3642,7 @@ static CURLcode ftp_do_more(struct connectdata *conn, int *completep)
if(conn->tunnel_state[SECONDARYSOCKET] == TUNNEL_CONNECT) {
/* As we're in TUNNEL_CONNECT state now, we know the proxy name and port
aren't used so we blank their arguments. TODO: make this nicer */
- result = Curl_proxyCONNECT(conn, SECONDARYSOCKET, NULL, 0, FALSE);
+ result = Curl_proxyCONNECT(conn, SECONDARYSOCKET, NULL, 0);
return result;
}
@@ -3819,7 +3816,7 @@ static void wc_data_dtor(void *ptr)
struct ftp_wc_tmpdata *tmp = ptr;
if(tmp)
Curl_ftp_parselist_data_free(&tmp->parser);
- free(tmp);
+ Curl_safefree(tmp);
}
static CURLcode init_wc_data(struct connectdata *conn)
@@ -3873,7 +3870,7 @@ static CURLcode init_wc_data(struct connectdata *conn)
ftp_tmp->parser = Curl_ftp_parselist_data_alloc();
if(!ftp_tmp->parser) {
Curl_safefree(wildcard->pattern);
- free(ftp_tmp);
+ Curl_safefree(ftp_tmp);
return CURLE_OUT_OF_MEMORY;
}
@@ -4099,7 +4096,7 @@ CURLcode Curl_ftpsendf(struct connectdata *conn,
result = Curl_convert_to_network(conn->data, s, write_len);
/* Curl_convert_to_network calls failf if unsuccessful */
if(result)
- return result;
+ return(result);
for(;;) {
#ifdef HAVE_GSSAPI
@@ -4198,10 +4195,14 @@ static CURLcode ftp_disconnect(struct connectdata *conn, bool dead_connection)
}
freedirs(ftpc);
- free(ftpc->prevpath);
- ftpc->prevpath = NULL;
- free(ftpc->server_os);
- ftpc->server_os = NULL;
+ if(ftpc->prevpath) {
+ free(ftpc->prevpath);
+ ftpc->prevpath = NULL;
+ }
+ if(ftpc->server_os) {
+ free(ftpc->server_os);
+ ftpc->server_os = NULL;
+ }
Curl_pp_disconnect(pp);
diff --git a/lib/ftp.h b/lib/ftp.h
index 833447bcb..b6bfc0287 100644
--- a/lib/ftp.h
+++ b/lib/ftp.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -147,10 +147,11 @@ struct ftp_conn {
curl_off_t known_filesize; /* file size is different from -1, if wildcard
LIST parsing was done and wc_statemach set
it */
- /* newhost is the (allocated) IP addr or host name to connect the data
- connection to */
- char *newhost; /* this is the pair to connect the DATA... */
- unsigned short newport; /* connection to */
+ /* newhost must be able to hold a full IP-style address in ASCII, which
+ in the IPv6 case means 5*8-1 = 39 letters */
+#define NEWHOST_BUFSIZE 48
+ char newhost[NEWHOST_BUFSIZE]; /* this is the pair to connect the DATA... */
+ unsigned short newport; /* connection to */
};
diff --git a/lib/ftplistparser.c b/lib/ftplistparser.c
index 17e0a66f8..9aacad914 100644
--- a/lib/ftplistparser.c
+++ b/lib/ftplistparser.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -49,6 +49,10 @@
#include "ftp.h"
#include "ftplistparser.h"
#include "curl_fnmatch.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -187,7 +191,8 @@ struct ftp_parselist_data *Curl_ftp_parselist_data_alloc(void)
void Curl_ftp_parselist_data_free(struct ftp_parselist_data **pl_data)
{
- free(*pl_data);
+ if(*pl_data)
+ free(*pl_data);
*pl_data = NULL;
}
diff --git a/lib/getinfo.c b/lib/getinfo.c
index 910f520ed..0ffdd74a0 100644
--- a/lib/getinfo.c
+++ b/lib/getinfo.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -27,12 +27,12 @@
#include "urldata.h"
#include "getinfo.h"
+#include "curl_memory.h"
#include "vtls/vtls.h"
#include "connect.h" /* Curl_getconnectinfo() */
#include "progress.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* Make this the last #include */
#include "memdebug.h"
/*
@@ -58,7 +58,8 @@ CURLcode Curl_initinfo(struct SessionHandle *data)
info->filetime = -1; /* -1 is an illegal time and thus means unknown */
info->timecond = FALSE;
- free(info->contenttype);
+ if(info->contenttype)
+ free(info->contenttype);
info->contenttype = NULL;
info->header_size = 0;
@@ -305,7 +306,7 @@ static CURLcode getinfo_slist(struct SessionHandle *data, CURLINFO info,
break; /* no SSL session found */
/* Return the TLS session information from the relevant backend */
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
internals = conn->ssl[sockindex].ctx;
#endif
#ifdef USE_GNUTLS
diff --git a/lib/gopher.c b/lib/gopher.c
index 954cad8e0..f3fd06533 100644
--- a/lib/gopher.c
+++ b/lib/gopher.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -36,6 +36,10 @@
#include "select.h"
#include "url.h"
#include "warnless.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -120,7 +124,7 @@ static CURLcode gopher_do(struct connectdata *conn, bool *done)
if(!result) { /* Which may not have written it all! */
result = Curl_client_write(conn, CLIENTWRITE_HEADER, sel, amount);
if(result) {
- free(sel_org);
+ Curl_safefree(sel_org);
return result;
}
k -= amount;
@@ -130,7 +134,7 @@ static CURLcode gopher_do(struct connectdata *conn, bool *done)
}
else {
failf(data, "Failed sending Gopher request");
- free(sel_org);
+ Curl_safefree(sel_org);
return result;
}
/* Don't busyloop. The entire loop thing is a work-around as it causes a
@@ -145,7 +149,7 @@ static CURLcode gopher_do(struct connectdata *conn, bool *done)
Curl_socket_ready(CURL_SOCKET_BAD, sockfd, 100);
}
- free(sel_org);
+ Curl_safefree(sel_org);
/* We can use Curl_sendf to send the terminal \r\n relatively safely and
save allocing another string/doing another _write loop. */
diff --git a/lib/hash.c b/lib/hash.c
index c46760ae1..4a12e1a7b 100644
--- a/lib/hash.c
+++ b/lib/hash.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -24,6 +24,10 @@
#include "hash.h"
#include "llist.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -89,6 +93,32 @@ Curl_hash_init(struct curl_hash *h,
}
}
+struct curl_hash *
+Curl_hash_alloc(int slots,
+ hash_function hfunc,
+ comp_function comparator,
+ curl_hash_dtor dtor)
+{
+ struct curl_hash *h;
+
+ if(!slots || !hfunc || !comparator ||!dtor) {
+ return NULL; /* failure */
+ }
+
+ h = malloc(sizeof(struct curl_hash));
+ if(h) {
+ if(Curl_hash_init(h, slots, hfunc, comparator, dtor)) {
+ /* failure */
+ free(h);
+ h = NULL;
+ }
+ }
+
+ return h;
+}
+
+
+
static struct curl_hash_element *
mk_hash_element(const void *key, size_t key_len, const void *p)
{
@@ -212,11 +242,8 @@ Curl_hash_apply(curl_hash *h, void *user,
}
#endif
-/* Destroys all the entries in the given hash and resets its attributes,
- * prepping the given hash for [static|dynamic] deallocation.
- */
void
-Curl_hash_destroy(struct curl_hash *h)
+Curl_hash_clean(struct curl_hash *h)
{
int i;
@@ -230,17 +257,6 @@ Curl_hash_destroy(struct curl_hash *h)
h->slots = 0;
}
-/* Removes all the entries in the given hash.
- *
- * @unittest: 1602
- */
-void
-Curl_hash_clean(struct curl_hash *h)
-{
- Curl_hash_clean_with_criterium(h, NULL, NULL);
-}
-
-/* Cleans all entries that pass the comp function criteria. */
void
Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
int (*comp)(void *, void *))
@@ -260,7 +276,7 @@ Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
struct curl_hash_element *he = le->ptr;
lnext = le->next;
/* ask the callback function if we shall remove this entry or not */
- if(comp == NULL || comp(user, he->ptr)) {
+ if(comp(user, he->ptr)) {
Curl_llist_remove(list, le, (void *) h);
--h->size; /* one less entry in the hash now */
}
@@ -269,6 +285,17 @@ Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
}
}
+void
+Curl_hash_destroy(struct curl_hash *h)
+{
+ if(!h)
+ return;
+
+ Curl_hash_clean(h);
+
+ free(h);
+}
+
size_t Curl_hash_str(void* key, size_t key_length, size_t slots_num)
{
const char* key_str = (const char *) key;
@@ -283,11 +310,16 @@ size_t Curl_hash_str(void* key, size_t key_length, size_t slots_num)
return (h % slots_num);
}
-size_t Curl_str_key_compare(void *k1, size_t key1_len,
- void *k2, size_t key2_len)
+size_t Curl_str_key_compare(void*k1, size_t key1_len, void*k2, size_t key2_len)
{
- if((key1_len == key2_len) && !memcmp(k1, k2, key1_len))
+ char *key1 = (char *)k1;
+ char *key2 = (char *)k2;
+
+ if(key1_len == key2_len &&
+ *key1 == *key2 &&
+ memcmp(key1, key2, key1_len) == 0) {
return 1;
+ }
return 0;
}
diff --git a/lib/hash.h b/lib/hash.h
index b13a236bb..aa935d4eb 100644
--- a/lib/hash.h
+++ b/lib/hash.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2007, 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
@@ -74,16 +74,22 @@ int Curl_hash_init(struct curl_hash *h,
comp_function comparator,
curl_hash_dtor dtor);
+struct curl_hash *Curl_hash_alloc(int slots,
+ hash_function hfunc,
+ comp_function comparator,
+ curl_hash_dtor dtor);
+
void *Curl_hash_add(struct curl_hash *h, void *key, size_t key_len, void *p);
int Curl_hash_delete(struct curl_hash *h, void *key, size_t key_len);
void *Curl_hash_pick(struct curl_hash *, void * key, size_t key_len);
void Curl_hash_apply(struct curl_hash *h, void *user,
void (*cb)(void *user, void *ptr));
int Curl_hash_count(struct curl_hash *h);
-void Curl_hash_destroy(struct curl_hash *h);
void Curl_hash_clean(struct curl_hash *h);
void Curl_hash_clean_with_criterium(struct curl_hash *h, void *user,
int (*comp)(void *, void *));
+void Curl_hash_destroy(struct curl_hash *h);
+
size_t Curl_hash_str(void* key, size_t key_length, size_t slots_num);
size_t Curl_str_key_compare(void*k1, size_t key1_len, void*k2,
size_t key2_len);
diff --git a/lib/hmac.c b/lib/hmac.c
index 0d2d5f45d..dace82037 100644
--- a/lib/hmac.c
+++ b/lib/hmac.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -27,6 +27,10 @@
#ifndef CURL_DISABLE_CRYPTO_AUTH
#include "curl_hmac.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/hostasyn.c b/lib/hostasyn.c
index 17b8be072..3cf800430 100644
--- a/lib/hostasyn.c
+++ b/lib/hostasyn.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -47,6 +47,10 @@
#include "share.h"
#include "strerror.h"
#include "url.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -119,21 +123,21 @@ CURLcode Curl_addrinfo_callback(struct connectdata *conn,
CURLcode Curl_async_resolved(struct connectdata *conn,
bool *protocol_done)
{
- CURLcode result;
+ CURLcode code;
if(conn->async.dns) {
conn->dns_entry = conn->async.dns;
conn->async.dns = NULL;
}
- result = Curl_setup_conn(conn, protocol_done);
+ code = Curl_setup_conn(conn, protocol_done);
- if(result)
+ if(code)
/* We're not allowed to return failure with memory left allocated
in the connectdata struct, free those here */
Curl_disconnect(conn, FALSE); /* close the connection */
- return result;
+ return code;
}
/*
diff --git a/lib/hostcheck.c b/lib/hostcheck.c
index 62a26e4f2..21af8fa1c 100644
--- a/lib/hostcheck.c
+++ b/lib/hostcheck.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -22,7 +22,7 @@
#include "curl_setup.h"
-#if defined(USE_OPENSSL) || defined(USE_AXTLS) || defined(USE_GSKIT)
+#if defined(USE_SSLEAY) || defined(USE_AXTLS) || defined(USE_GSKIT)
/* these backends use functions from this file */
#ifdef HAVE_NETINET_IN_H
@@ -144,4 +144,4 @@ int Curl_cert_hostcheck(const char *match_pattern, const char *hostname)
return res;
}
-#endif /* OPENSSL or AXTLS or GSKIT */
+#endif /* SSLEAY or AXTLS or GSKIT */
diff --git a/lib/hostip.c b/lib/hostip.c
index 82f3897f9..2ea0ab648 100644
--- a/lib/hostip.c
+++ b/lib/hostip.c
@@ -56,7 +56,10 @@
#include "url.h"
#include "inet_ntop.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -137,7 +140,11 @@ struct curl_hash *Curl_global_host_cache_init(void)
void Curl_global_host_cache_dtor(void)
{
if(host_cache_initialized) {
- Curl_hash_destroy(&hostname_cache);
+ /* first make sure that any custom "CURLOPT_RESOLVE" names are
+ cleared off */
+ Curl_hostcache_clean(NULL, &hostname_cache);
+ /* then free the remaining hash completely */
+ Curl_hash_clean(&hostname_cache);
host_cache_initialized = 0;
}
}
@@ -230,8 +237,7 @@ hostcache_timestamp_remove(void *datap, void *hc)
(struct hostcache_prune_data *) datap;
struct Curl_dns_entry *c = (struct Curl_dns_entry *) hc;
- return (0 != c->timestamp)
- && (data->now - c->timestamp >= data->cache_timeout);
+ return !c->inuse && (data->now - c->timestamp >= data->cache_timeout);
}
/*
@@ -277,54 +283,40 @@ void Curl_hostcache_prune(struct SessionHandle *data)
Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
}
-#ifdef HAVE_SIGSETJMP
-/* Beware this is a global and unique instance. This is used to store the
- return address that we can jump back to from inside a signal handler. This
- is not thread-safe stuff. */
-sigjmp_buf curl_jmpenv;
-#endif
-
-/* lookup address, returns entry if found and not stale */
-static struct Curl_dns_entry *
-fetch_addr(struct connectdata *conn,
- const char *hostname,
- int port)
+/*
+ * Check if the entry should be pruned. Assumes a locked cache.
+ */
+static int
+remove_entry_if_stale(struct SessionHandle *data, struct Curl_dns_entry *dns)
{
- char *entry_id = NULL;
- struct Curl_dns_entry *dns = NULL;
- size_t entry_len;
- struct SessionHandle *data = conn->data;
+ struct hostcache_prune_data user;
- /* Create an entry id, based upon the hostname and port */
- entry_id = create_hostcache_id(hostname, port);
- /* If we can't create the entry id, fail */
- if(!entry_id)
- return dns;
+ if(!dns || (data->set.dns_cache_timeout == -1) || !data->dns.hostcache ||
+ dns->inuse)
+ /* cache forever means never prune, and NULL hostcache means we can't do
+ it, if it still is in use then we leave it */
+ return 0;
- entry_len = strlen(entry_id);
+ time(&user.now);
+ user.cache_timeout = data->set.dns_cache_timeout;
- /* See if its already in our dns cache */
- dns = Curl_hash_pick(data->dns.hostcache, entry_id, entry_len+1);
-
- if(dns && (data->set.dns_cache_timeout != -1)) {
- /* See whether the returned entry is stale. Done before we release lock */
- struct hostcache_prune_data user;
+ if(!hostcache_timestamp_remove(&user,dns) )
+ return 0;
- time(&user.now);
- user.cache_timeout = data->set.dns_cache_timeout;
+ Curl_hash_clean_with_criterium(data->dns.hostcache,
+ (void *) &user,
+ hostcache_timestamp_remove);
- if(hostcache_timestamp_remove(&user, dns)) {
- infof(data, "Hostname in DNS cache was stale, zapped\n");
- dns = NULL; /* the memory deallocation is being handled by the hash */
- Curl_hash_delete(data->dns.hostcache, entry_id, entry_len+1);
- }
- }
+ return 1;
+}
- /* free the allocated entry_id again */
- free(entry_id);
- return dns;
-}
+#ifdef HAVE_SIGSETJMP
+/* Beware this is a global and unique instance. This is used to store the
+ return address that we can jump back to from inside a signal handler. This
+ is not thread-safe stuff. */
+sigjmp_buf curl_jmpenv;
+#endif
/*
* Curl_fetch_addr() fetches a 'Curl_dns_entry' already in the DNS cache.
@@ -336,27 +328,38 @@ fetch_addr(struct connectdata *conn,
* lookups for the same hostname requested by different handles.
*
* Returns the Curl_dns_entry entry pointer or NULL if not in the cache.
- *
- * The returned data *MUST* be "unlocked" with Curl_resolv_unlock() after
- * use, or we'll leak memory!
*/
struct Curl_dns_entry *
Curl_fetch_addr(struct connectdata *conn,
const char *hostname,
int port)
{
- struct SessionHandle *data = conn->data;
+ char *entry_id = NULL;
struct Curl_dns_entry *dns = NULL;
+ size_t entry_len;
+ struct SessionHandle *data = conn->data;
+ int stale;
- if(data->share)
- Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
+ /* Create an entry id, based upon the hostname and port */
+ entry_id = create_hostcache_id(hostname, port);
+ /* If we can't create the entry id, fail */
+ if(!entry_id)
+ return dns;
- dns = fetch_addr(conn, hostname, port);
+ entry_len = strlen(entry_id);
- if(dns) dns->inuse++; /* we use it! */
+ /* See if its already in our dns cache */
+ dns = Curl_hash_pick(data->dns.hostcache, entry_id, entry_len+1);
- if(data->share)
- Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
+ /* free the allocated entry_id again */
+ free(entry_id);
+
+ /* See whether the returned entry is stale. Done before we release lock */
+ stale = remove_entry_if_stale(data, dns);
+ if(stale) {
+ infof(data, "Hostname in DNS cache was stale, zapped\n");
+ dns = NULL; /* the memory deallocation is being handled by the hash */
+ }
return dns;
}
@@ -395,11 +398,11 @@ Curl_cache_addr(struct SessionHandle *data,
return NULL;
}
- dns->inuse = 1; /* the cache has the first reference */
+ dns->inuse = 0; /* init to not used */
dns->addr = addr; /* this is the address(es) */
time(&dns->timestamp);
if(dns->timestamp == 0)
- dns->timestamp = 1; /* zero indicates CURLOPT_RESOLVE entry */
+ dns->timestamp = 1; /* zero indicates that entry isn't in hash table */
/* Store the resolved data in our DNS cache. */
dns2 = Curl_hash_add(data->dns.hostcache, entry_id, entry_len+1,
@@ -455,7 +458,7 @@ int Curl_resolv(struct connectdata *conn,
if(data->share)
Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
- dns = fetch_addr(conn, hostname, port);
+ dns = Curl_fetch_addr(conn, hostname, port);
if(dns) {
infof(data, "Hostname %s was found in DNS cache\n", hostname);
@@ -607,6 +610,32 @@ int Curl_resolv_timeout(struct connectdata *conn,
we want to wait less than one second we must bail out already now. */
return CURLRESOLV_TIMEDOUT;
+ /*************************************************************
+ * Set signal handler to catch SIGALRM
+ * Store the old value to be able to set it back later!
+ *************************************************************/
+#ifdef HAVE_SIGACTION
+ sigaction(SIGALRM, NULL, &sigact);
+ keep_sigact = sigact;
+ keep_copysig = TRUE; /* yes, we have a copy */
+ sigact.sa_handler = alarmfunc;
+#ifdef SA_RESTART
+ /* HPUX doesn't have SA_RESTART but defaults to that behaviour! */
+ sigact.sa_flags &= ~SA_RESTART;
+#endif
+ /* now set the new struct */
+ sigaction(SIGALRM, &sigact, NULL);
+#else /* HAVE_SIGACTION */
+ /* no sigaction(), revert to the much lamer signal() */
+#ifdef HAVE_SIGNAL
+ keep_sigact = signal(SIGALRM, alarmfunc);
+#endif
+#endif /* HAVE_SIGACTION */
+
+ /* alarm() makes a signal get sent when the timeout fires off, and that
+ will abort system calls */
+ prev_alarm = alarm(curlx_sltoui(timeout/1000L));
+
/* This allows us to time-out from the name resolver, as the timeout
will generate a signal and we will siglongjmp() from that here.
This technique has problems (see alarmfunc).
@@ -619,33 +648,6 @@ int Curl_resolv_timeout(struct connectdata *conn,
rc = CURLRESOLV_ERROR;
goto clean_up;
}
- else {
- /*************************************************************
- * Set signal handler to catch SIGALRM
- * Store the old value to be able to set it back later!
- *************************************************************/
-#ifdef HAVE_SIGACTION
- sigaction(SIGALRM, NULL, &sigact);
- keep_sigact = sigact;
- keep_copysig = TRUE; /* yes, we have a copy */
- sigact.sa_handler = alarmfunc;
-#ifdef SA_RESTART
- /* HPUX doesn't have SA_RESTART but defaults to that behaviour! */
- sigact.sa_flags &= ~SA_RESTART;
-#endif
- /* now set the new struct */
- sigaction(SIGALRM, &sigact, NULL);
-#else /* HAVE_SIGACTION */
- /* no sigaction(), revert to the much lamer signal() */
-#ifdef HAVE_SIGNAL
- keep_sigact = signal(SIGALRM, alarmfunc);
-#endif
-#endif /* HAVE_SIGACTION */
-
- /* alarm() makes a signal get sent when the timeout fires off, and that
- will abort system calls */
- prev_alarm = alarm(curlx_sltoui(timeout/1000L));
- }
#else
#ifndef CURLRES_ASYNCH
@@ -717,37 +719,54 @@ clean_up:
*/
void Curl_resolv_unlock(struct SessionHandle *data, struct Curl_dns_entry *dns)
{
+ DEBUGASSERT(dns && (dns->inuse>0));
+
if(data && data->share)
Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
- freednsentry(dns);
+ dns->inuse--;
+ /* only free if nobody is using AND it is not in hostcache (timestamp ==
+ 0) */
+ if(dns->inuse == 0 && dns->timestamp == 0) {
+ Curl_freeaddrinfo(dns->addr);
+ free(dns);
+ }
if(data && data->share)
Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
}
/*
- * File-internal: release cache dns entry reference, free if inuse drops to 0
+ * File-internal: free a cache dns entry.
*/
static void freednsentry(void *freethis)
{
- struct Curl_dns_entry *dns = (struct Curl_dns_entry *) freethis;
- DEBUGASSERT(dns && (dns->inuse>0));
+ struct Curl_dns_entry *p = (struct Curl_dns_entry *) freethis;
- dns->inuse--;
- if(dns->inuse == 0) {
- Curl_freeaddrinfo(dns->addr);
- free(dns);
+ /* mark the entry as not in hostcache */
+ p->timestamp = 0;
+ if(p->inuse == 0) {
+ Curl_freeaddrinfo(p->addr);
+ free(p);
}
}
/*
- * Curl_mk_dnscache() inits a new DNS cache and returns success/failure.
+ * Curl_mk_dnscache() creates a new DNS cache and returns the handle for it.
*/
-int Curl_mk_dnscache(struct curl_hash *hash)
+struct curl_hash *Curl_mk_dnscache(void)
{
- return Curl_hash_init(hash, 7, Curl_hash_str, Curl_str_key_compare,
- freednsentry);
+ return Curl_hash_alloc(7, Curl_hash_str, Curl_str_key_compare, freednsentry);
+}
+
+static int hostcache_inuse(void *data, void *hc)
+{
+ struct Curl_dns_entry *c = (struct Curl_dns_entry *) hc;
+
+ if(c->inuse == 1)
+ Curl_resolv_unlock(data, c);
+
+ return 1; /* free all entries */
}
/*
@@ -760,13 +779,11 @@ int Curl_mk_dnscache(struct curl_hash *hash)
void Curl_hostcache_clean(struct SessionHandle *data,
struct curl_hash *hash)
{
- if(data && data->share)
- Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
- Curl_hash_clean(hash);
-
- if(data && data->share)
- Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
+ /* Entries added to the hostcache with the CURLOPT_RESOLVE function are
+ * still present in the cache with the inuse counter set to 1. Detect them
+ * and cleanup!
+ */
+ Curl_hash_clean_with_criterium(hash, data, hostcache_inuse);
}
@@ -781,52 +798,18 @@ CURLcode Curl_loadhostpairs(struct SessionHandle *data)
if(!hostp->data)
continue;
if(hostp->data[0] == '-') {
- char *entry_id;
- size_t entry_len;
-
- if(2 != sscanf(hostp->data + 1, "%255[^:]:%d", hostname, &port)) {
- infof(data, "Couldn't parse CURLOPT_RESOLVE removal entry '%s'!\n",
- hostp->data);
- continue;
- }
-
- /* Create an entry id, based upon the hostname and port */
- entry_id = create_hostcache_id(hostname, port);
- /* If we can't create the entry id, fail */
- if(!entry_id) {
- return CURLE_OUT_OF_MEMORY;
- }
-
- entry_len = strlen(entry_id);
-
- if(data->share)
- Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
-
- /* delete entry, ignore if it didn't exist */
- Curl_hash_delete(data->dns.hostcache, entry_id, entry_len+1);
-
- if(data->share)
- Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
-
- /* free the allocated entry_id again */
- free(entry_id);
+ /* TODO: mark an entry for removal */
}
- else {
+ else if(3 == sscanf(hostp->data, "%255[^:]:%d:%255s", hostname, &port,
+ address)) {
struct Curl_dns_entry *dns;
Curl_addrinfo *addr;
char *entry_id;
size_t entry_len;
- if(3 != sscanf(hostp->data, "%255[^:]:%d:%255s", hostname, &port,
- address)) {
- infof(data, "Couldn't parse CURLOPT_RESOLVE entry '%s'!\n",
- hostp->data);
- continue;
- }
-
addr = Curl_str2addr(address, port);
if(!addr) {
- infof(data, "Address in '%s' found illegal!\n", hostp->data);
+ infof(data, "Resolve %s found illegal!\n", hostp->data);
continue;
}
@@ -849,16 +832,9 @@ CURLcode Curl_loadhostpairs(struct SessionHandle *data)
/* free the allocated entry_id again */
free(entry_id);
- if(!dns) {
+ if(!dns)
/* if not in the cache already, put this host in the cache */
dns = Curl_cache_addr(data, addr, hostname, port);
- if(dns) {
- dns->timestamp = 0; /* mark as added by CURLOPT_RESOLVE */
- /* release the returned reference; the cache itself will keep the
- * entry alive: */
- dns->inuse--;
- }
- }
else
/* this is a duplicate, free it again */
Curl_freeaddrinfo(addr);
diff --git a/lib/hostip.h b/lib/hostip.h
index d5b44bc9e..e1e880eab 100644
--- a/lib/hostip.h
+++ b/lib/hostip.h
@@ -65,10 +65,11 @@ void Curl_global_host_cache_dtor(void);
struct Curl_dns_entry {
Curl_addrinfo *addr;
- /* timestamp == 0 -- CURLOPT_RESOLVE entry, doesn't timeout */
+ /* timestamp == 0 -- entry not in hostcache
+ timestamp != 0 -- entry is in hostcache */
time_t timestamp;
- /* use-counter, use Curl_resolv_unlock to release reference */
- long inuse;
+ long inuse; /* use-counter, make very sure you decrease this
+ when you're done using the address you received */
};
/*
@@ -124,8 +125,8 @@ void Curl_resolv_unlock(struct SessionHandle *data,
/* for debugging purposes only: */
void Curl_scan_cache_used(void *user, void *ptr);
-/* init a new dns cache and return success */
-int Curl_mk_dnscache(struct curl_hash *hash);
+/* make a new dns cache and return the handle */
+struct curl_hash *Curl_mk_dnscache(void);
/* prune old entries from the DNS cache */
void Curl_hostcache_prune(struct SessionHandle *data);
@@ -174,9 +175,6 @@ const char *Curl_printable_address(const Curl_addrinfo *ip,
* Curl_fetch_addr() fetches a 'Curl_dns_entry' already in the DNS cache.
*
* Returns the Curl_dns_entry entry pointer or NULL if not in the cache.
- *
- * The returned data *MUST* be "unlocked" with Curl_resolv_unlock() after
- * use, or we'll leak memory!
*/
struct Curl_dns_entry *
Curl_fetch_addr(struct connectdata *conn,
diff --git a/lib/hostip4.c b/lib/hostip4.c
index 37b036911..3a05d1077 100644
--- a/lib/hostip4.c
+++ b/lib/hostip4.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -48,7 +48,10 @@
#include "strerror.h"
#include "url.h"
#include "inet_pton.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/hostip6.c b/lib/hostip6.c
index 6ab131a8c..bb723912a 100644
--- a/lib/hostip6.c
+++ b/lib/hostip6.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -49,7 +49,10 @@
#include "url.h"
#include "inet_pton.h"
#include "connect.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/hostsyn.c b/lib/hostsyn.c
index fb1de35ce..4ad3c63da 100644
--- a/lib/hostsyn.c
+++ b/lib/hostsyn.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -47,6 +47,10 @@
#include "share.h"
#include "strerror.h"
#include "url.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/http.c b/lib/http.c
index 9817d72af..ee0a9a481 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -63,6 +63,7 @@
#include "share.h"
#include "hostip.h"
#include "http.h"
+#include "curl_memory.h"
#include "select.h"
#include "parsedate.h" /* for the week day and month names */
#include "strtoofft.h"
@@ -72,14 +73,15 @@
#include "http_proxy.h"
#include "warnless.h"
#include "non-ascii.h"
-#include "conncache.h"
+#include "bundles.h"
#include "pipeline.h"
#include "http2.h"
#include "connect.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -153,18 +155,12 @@ CURLcode Curl_http_setup_conn(struct connectdata *conn)
{
/* allocate the HTTP-specific struct for the SessionHandle, only to survive
during this request */
- struct HTTP *http;
DEBUGASSERT(conn->data->req.protop == NULL);
- http = calloc(1, sizeof(struct HTTP));
- if(!http)
+ conn->data->req.protop = calloc(1, sizeof(struct HTTP));
+ if(!conn->data->req.protop)
return CURLE_OUT_OF_MEMORY;
- conn->data->req.protop = http;
-
- Curl_http2_setup_conn(conn);
- Curl_http2_setup_req(conn->data);
-
return CURLE_OK;
}
@@ -307,7 +303,7 @@ static CURLcode http_output_basic(struct connectdata *conn, bool proxy)
if(!authorization)
return CURLE_REMOTE_ACCESS_DENIED;
- free(*userp);
+ Curl_safefree(*userp);
*userp = aprintf("%sAuthorization: Basic %s\r\n",
proxy?"Proxy-":"",
authorization);
@@ -351,6 +347,82 @@ static bool pickoneauth(struct auth *pick)
return picked;
}
+/* whether to complete request (for authentication) in current connection */
+static bool complete_request(struct connectdata *conn,
+ curl_off_t remaining_bytes)
+{
+#if defined(USE_NTLM) || defined(USE_SPNEGO)
+ struct SessionHandle *data = conn->data;
+ bool have_ntlm_or_negotiate = FALSE;
+ bool auth_started = FALSE;
+
+ /* don't reset connection when we're in NTLM or Negotiate authentication;
+ * those authenticate the connection - creating a new connection breaks the
+ * authentication.
+ */
+
+#if defined(USE_NTLM)
+ /* proxy NTLM authentication */
+ if((data->state.authproxy.picked == CURLAUTH_NTLM) ||
+ (data->state.authproxy.picked == CURLAUTH_NTLM_WB)) {
+ have_ntlm_or_negotiate = TRUE;
+ auth_started = auth_started
+ || (conn->proxyntlm.state != NTLMSTATE_NONE);
+ }
+
+ /* normal NTLM authentication */
+ if((data->state.authhost.picked == CURLAUTH_NTLM) ||
+ (data->state.authhost.picked == CURLAUTH_NTLM_WB)) {
+ have_ntlm_or_negotiate = TRUE;
+ auth_started = auth_started
+ || (conn->ntlm.state != NTLMSTATE_NONE);
+ }
+#endif
+
+#if defined(USE_SPNEGO)
+ /* proxy Negotiate authentication */
+ if(data->state.authproxy.picked == CURLAUTH_NEGOTIATE) {
+ have_ntlm_or_negotiate = TRUE;
+ auth_started = auth_started
+ || (data->state.proxyneg.state != GSS_AUTHNONE);
+ }
+
+ /* normal Negotiate authentication */
+ if(data->state.authhost.picked == CURLAUTH_NEGOTIATE) {
+ have_ntlm_or_negotiate = TRUE;
+ auth_started = auth_started
+ || (data->state.negotiate.state != GSS_AUTHNONE);
+ }
+#endif
+
+ if(have_ntlm_or_negotiate) {
+ if(remaining_bytes < 2000 || auth_started) {
+ /* NTLM/Negotiation has started *OR* there is just a little (<2K)
+ * data left to send, keep on sending.
+ */
+
+ /* rewind data when completely done sending! */
+ if(!conn->bits.authneg) {
+ conn->bits.rewindaftersend = TRUE;
+ infof(data, "Rewind stream after send\n");
+ }
+
+ return TRUE;
+ }
+
+ infof(data, "NTLM/Negotiate send, close instead of sending %"
+ CURL_FORMAT_CURL_OFF_T " bytes\n",
+ remaining_bytes);
+ }
+#else
+ /* unused parameters: */
+ (void)conn;
+ (void)remaining_bytes;
+#endif
+
+ return FALSE;
+}
+
/*
* Curl_http_perhapsrewind()
*
@@ -409,8 +481,8 @@ static CURLcode http_perhapsrewind(struct connectdata *conn)
/* figure out how much data we are expected to send */
switch(data->set.httpreq) {
case HTTPREQ_POST:
- if(data->state.infilesize != -1)
- expectsend = data->state.infilesize;
+ if(data->set.postfieldsize != -1)
+ expectsend = data->set.postfieldsize;
else if(data->set.postfields)
expectsend = (curl_off_t)strlen(data->set.postfields);
break;
@@ -429,36 +501,12 @@ static CURLcode http_perhapsrewind(struct connectdata *conn)
conn->bits.rewindaftersend = FALSE; /* default */
if((expectsend == -1) || (expectsend > bytessent)) {
-#if defined(USE_NTLM)
- /* There is still data left to send */
- if((data->state.authproxy.picked == CURLAUTH_NTLM) ||
- (data->state.authhost.picked == CURLAUTH_NTLM) ||
- (data->state.authproxy.picked == CURLAUTH_NTLM_WB) ||
- (data->state.authhost.picked == CURLAUTH_NTLM_WB)) {
- if(((expectsend - bytessent) < 2000) ||
- (conn->ntlm.state != NTLMSTATE_NONE) ||
- (conn->proxyntlm.state != NTLMSTATE_NONE)) {
- /* The NTLM-negotiation has started *OR* there is just a little (<2K)
- data left to send, keep on sending. */
-
- /* rewind data when completely done sending! */
- if(!conn->bits.authneg) {
- conn->bits.rewindaftersend = TRUE;
- infof(data, "Rewind stream after send\n");
- }
+ if(conn->bits.close)
+ /* this is already marked to get closed */
+ return CURLE_OK;
- return CURLE_OK;
- }
-
- if(conn->bits.close)
- /* this is already marked to get closed */
- return CURLE_OK;
-
- infof(data, "NTLM send, close instead of sending %"
- CURL_FORMAT_CURL_OFF_T " bytes\n",
- (curl_off_t)(expectsend - bytessent));
- }
-#endif
+ if(complete_request(conn, (curl_off_t)(expectsend - bytessent)))
+ return CURLE_OK;
/* This is not NTLM or many bytes left to send: close */
connclose(conn, "Mid-auth HTTP and much data left to send");
@@ -469,7 +517,7 @@ static CURLcode http_perhapsrewind(struct connectdata *conn)
}
if(bytessent)
- /* we rewind now at once since if we already sent something */
+ /* we rewind now at once since we already sent something */
return Curl_readrewind(conn);
return CURLE_OK;
@@ -685,7 +733,7 @@ Curl_http_output_auth(struct connectdata *conn,
if((conn->bits.httpproxy && conn->bits.proxy_user_passwd) ||
conn->bits.user_passwd)
- /* continue please */;
+ /* continue please */ ;
else {
authhost->done = TRUE;
authproxy->done = TRUE;
@@ -786,13 +834,14 @@ CURLcode Curl_http_input_auth(struct connectdata *conn, bool proxy,
while(*auth) {
#ifdef USE_SPNEGO
if(checkprefix("Negotiate", auth)) {
+ int neg;
*availp |= CURLAUTH_NEGOTIATE;
authp->avail |= CURLAUTH_NEGOTIATE;
if(authp->picked == CURLAUTH_NEGOTIATE) {
if(negdata->state == GSS_AUTHSENT || negdata->state == GSS_AUTHNONE) {
- CURLcode result = Curl_input_negotiate(conn, proxy, auth);
- if(!result) {
+ neg = Curl_input_negotiate(conn, proxy, auth);
+ if(neg == 0) {
DEBUGASSERT(!data->req.newurl);
data->req.newurl = strdup(data->change.url);
if(!data->req.newurl)
@@ -1001,8 +1050,8 @@ static size_t readmoredata(char *buffer,
/* move backup data into focus and continue on that */
http->postdata = http->backup.postdata;
http->postsize = http->backup.postsize;
- conn->data->set.fread_func = http->backup.fread_func;
- conn->data->set.in = http->backup.fread_in;
+ conn->fread_func = http->backup.fread_func;
+ conn->fread_in = http->backup.fread_in;
http->sending++; /* move one step up */
@@ -1033,16 +1082,6 @@ Curl_send_buffer *Curl_add_buffer_init(void)
}
/*
- * Curl_add_buffer_free() frees all associated resources.
- */
-void Curl_add_buffer_free(Curl_send_buffer *buff)
-{
- if(buff) /* deal with NULL input */
- free(buff->buffer);
- free(buff);
-}
-
-/*
* Curl_add_buffer_send() sends a header buffer and frees all associated
* memory. Body data may be appended to the header data if desired.
*
@@ -1088,7 +1127,9 @@ CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
/* Curl_convert_to_network calls failf if unsuccessful */
if(result) {
/* conversion failed, free memory and return to the caller */
- Curl_add_buffer_free(in);
+ if(in->buffer)
+ free(in->buffer);
+ free(in);
return result;
}
@@ -1157,14 +1198,14 @@ CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
ptr = in->buffer + amount;
/* backup the currently set pointers */
- http->backup.fread_func = conn->data->set.fread_func;
- http->backup.fread_in = conn->data->set.in;
+ http->backup.fread_func = conn->fread_func;
+ http->backup.fread_in = conn->fread_in;
http->backup.postdata = http->postdata;
http->backup.postsize = http->postsize;
/* set the new pointers for the request-sending */
- conn->data->set.fread_func = (curl_read_callback)readmoredata;
- conn->data->set.in = (void *)conn;
+ conn->fread_func = (curl_read_callback)readmoredata;
+ conn->fread_in = (void *)conn;
http->postdata = ptr;
http->postsize = (curl_off_t)size;
@@ -1187,10 +1228,12 @@ CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
*/
return CURLE_SEND_ERROR;
else
- Curl_pipeline_leave_write(conn);
+ conn->writechannel_inuse = FALSE;
}
}
- Curl_add_buffer_free(in);
+ if(in->buffer)
+ free(in->buffer);
+ free(in);
return result;
}
@@ -1213,7 +1256,8 @@ CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...)
return result;
}
/* If we failed, we cleanup the whole buffer and return error */
- free(in->buffer);
+ if(in->buffer)
+ free(in->buffer);
free(in);
return CURLE_OUT_OF_MEMORY;
}
@@ -1393,7 +1437,7 @@ static CURLcode https_connecting(struct connectdata *conn, bool *done)
}
#endif
-#if defined(USE_OPENSSL) || defined(USE_GNUTLS) || defined(USE_SCHANNEL) || \
+#if defined(USE_SSLEAY) || defined(USE_GNUTLS) || defined(USE_SCHANNEL) || \
defined(USE_DARWINSSL) || defined(USE_POLARSSL) || defined(USE_NSS)
/* This function is for OpenSSL, GnuTLS, darwinssl, schannel and polarssl only.
It should be made to query the generic SSL layer instead. */
@@ -1432,7 +1476,7 @@ static int https_getsock(struct connectdata *conn,
return GETSOCK_BLANK;
}
#endif /* USE_SSL */
-#endif /* USE_OPENSSL || USE_GNUTLS || USE_SCHANNEL */
+#endif /* USE_SSLEAY || USE_GNUTLS || USE_SCHANNEL */
/*
* Curl_http_done() gets called from Curl_done() after a single HTTP request
@@ -1443,26 +1487,19 @@ CURLcode Curl_http_done(struct connectdata *conn,
CURLcode status, bool premature)
{
struct SessionHandle *data = conn->data;
- struct HTTP *http = data->req.protop;
-#ifdef USE_NGHTTP2
- struct http_conn *httpc = &conn->proto.httpc;
-#endif
+ struct HTTP *http =data->req.protop;
Curl_unencode_cleanup(conn);
#ifdef USE_SPNEGO
if(data->state.proxyneg.state == GSS_AUTHSENT ||
- data->state.negotiate.state == GSS_AUTHSENT) {
- /* add forbid re-use if http-code != 401/407 as a WA only needed for
- * 401/407 that signal auth failure (empty) otherwise state will be RECV
- * with current code */
- if((data->req.httpcode != 401) && (data->req.httpcode != 407))
- connclose(conn, "Negotiate transfer completed");
+ data->state.negotiate.state == GSS_AUTHSENT)
Curl_cleanup_negotiate(data);
- }
#endif
/* set the proper values (possibly modified on POST) */
+ conn->fread_func = data->set.fread_func; /* restore */
+ conn->fread_in = data->set.in; /* restore */
conn->seek_func = data->set.seek_func; /* restore */
conn->seek_client = data->set.seek_client; /* restore */
@@ -1470,26 +1507,12 @@ CURLcode Curl_http_done(struct connectdata *conn,
return CURLE_OK;
if(http->send_buffer) {
- Curl_add_buffer_free(http->send_buffer);
- http->send_buffer = NULL; /* clear the pointer */
- }
+ Curl_send_buffer *buff = http->send_buffer;
-#ifdef USE_NGHTTP2
- if(http->header_recvbuf) {
- DEBUGF(infof(data, "free header_recvbuf!!\n"));
- Curl_add_buffer_free(http->header_recvbuf);
- http->header_recvbuf = NULL; /* clear the pointer */
- for(; http->push_headers_used > 0; --http->push_headers_used) {
- free(http->push_headers[http->push_headers_used - 1]);
- }
- free(http->push_headers);
- http->push_headers = NULL;
- }
- if(http->stream_id) {
- nghttp2_session_set_stream_user_data(httpc->h2, http->stream_id, 0);
- http->stream_id = 0;
+ free(buff->buffer);
+ free(buff);
+ http->send_buffer = NULL; /* clear the pointer */
}
-#endif
if(HTTPREQ_POST_FORM == data->set.httpreq) {
data->req.bytecount = http->readbytecount + http->writebytecount;
@@ -1553,11 +1576,10 @@ static CURLcode expect100(struct SessionHandle *data,
const char *ptr;
data->state.expect100header = FALSE; /* default to false unless it is set
to TRUE below */
- if(use_http_1_1plus(data, conn) &&
- (conn->httpversion != 20)) {
- /* if not doing HTTP 1.0 or version 2, or disabled explicitly, we add an
- Expect: 100-continue to the headers which actually speeds up post
- operations (as there is one packet coming back from the web server) */
+ if(use_http_1_1plus(data, conn)) {
+ /* if not doing HTTP 1.0 or disabled explicitly, we add a Expect:
+ 100-continue to the headers which actually speeds up post operations
+ (as there is one packet coming back from the web server) */
ptr = Curl_checkheaders(conn, "Expect:");
if(ptr) {
data->state.expect100header =
@@ -1776,8 +1798,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
if(conn->httpversion < 20) { /* unless the connection is re-used and already
http2 */
switch(conn->negnpn) {
- case CURL_HTTP_VERSION_2_0:
- conn->httpversion = 20; /* we know we're on HTTP/2 now */
+ case NPN_HTTP2:
result = Curl_http2_init(conn);
if(result)
return result;
@@ -1790,7 +1811,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
if(result)
return result;
break;
- case CURL_HTTP_VERSION_1_1:
+ case NPN_HTTP1_1:
/* continue with HTTP/1.1 when explicitly requested */
break;
default:
@@ -1808,8 +1829,10 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
http = data->req.protop;
if(!data->state.this_is_a_follow) {
- /* Free to avoid leaking memory on multiple requests*/
- free(data->state.first_host);
+ /* this is not a followed location, get the original host name */
+ if(data->state.first_host)
+ /* Free to avoid leaking memory on multiple requests*/
+ free(data->state.first_host);
data->state.first_host = strdup(conn->host.name);
if(!data->state.first_host)
@@ -1853,7 +1876,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
it might have been used in the proxy connect, but if we have got a header
with the user-agent string specified, we erase the previously made string
here. */
- if(Curl_checkheaders(conn, "User-Agent:")) {
+ if(Curl_checkheaders(conn, "User-Agent:") && conn->allocptr.uagent) {
free(conn->allocptr.uagent);
conn->allocptr.uagent=NULL;
}
@@ -1996,14 +2019,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
}
#endif
- if(strcmp("Host:", ptr)) {
- conn->allocptr.host = aprintf("%s\r\n", ptr);
- if(!conn->allocptr.host)
- return CURLE_OUT_OF_MEMORY;
- }
- else
- /* when clearing the header */
- conn->allocptr.host = NULL;
+ conn->allocptr.host = NULL;
}
else {
/* When building Host: headers, we must put the host name within
@@ -2198,7 +2214,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
if(((httpreq == HTTPREQ_GET) || (httpreq == HTTPREQ_HEAD)) &&
!Curl_checkheaders(conn, "Range:")) {
/* if a line like this was already allocated, free the previous one */
- free(conn->allocptr.rangeline);
+ if(conn->allocptr.rangeline)
+ free(conn->allocptr.rangeline);
conn->allocptr.rangeline = aprintf("Range: bytes=%s\r\n",
data->state.range);
}
@@ -2206,7 +2223,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
!Curl_checkheaders(conn, "Content-Range:")) {
/* if a line like this was already allocated, free the previous one */
- free(conn->allocptr.rangeline);
+ if(conn->allocptr.rangeline)
+ free(conn->allocptr.rangeline);
if(data->set.set_resume_from < 0) {
/* Upload resume was asked for, but we don't know the size of the
@@ -2270,11 +2288,11 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
Curl_add_bufferf(req_buffer,
"%s" /* ftp typecode (;type=x) */
" HTTP/%s\r\n" /* HTTP version */
- "%s" /* host */
"%s" /* proxyuserpwd */
"%s" /* userpwd */
"%s" /* range */
"%s" /* user agent */
+ "%s" /* host */
"%s" /* accept */
"%s" /* TE: */
"%s" /* accept-encoding */
@@ -2284,7 +2302,6 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
ftp_typecode,
httpstring,
- (conn->allocptr.host?conn->allocptr.host:""),
conn->allocptr.proxyuserpwd?
conn->allocptr.proxyuserpwd:"",
conn->allocptr.userpwd?conn->allocptr.userpwd:"",
@@ -2294,6 +2311,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
*data->set.str[STRING_USERAGENT] &&
conn->allocptr.uagent)?
conn->allocptr.uagent:"",
+ (conn->allocptr.host?conn->allocptr.host:""),
http->p_accept?http->p_accept:"",
conn->allocptr.te?conn->allocptr.te:"",
(data->set.str[STRING_ENCODING] &&
@@ -2309,12 +2327,20 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
te
);
- /* clear userpwd to avoid re-using credentials from re-used connections */
- Curl_safefree(conn->allocptr.userpwd);
+ /*
+ * Free userpwd for Negotiate/NTLM. Cannot reuse as it is associated with
+ * the connection and shouldn't be repeated over it either.
+ */
+ switch (data->state.authhost.picked) {
+ case CURLAUTH_NEGOTIATE:
+ case CURLAUTH_NTLM:
+ case CURLAUTH_NTLM_WB:
+ Curl_safefree(conn->allocptr.userpwd);
+ break;
+ }
/*
- * Free proxyuserpwd for Negotiate/NTLM. Cannot reuse as it is associated
- * with the connection and shouldn't be repeated over it either.
+ * Same for proxyuserpwd
*/
switch (data->state.authproxy.picked) {
case CURLAUTH_NEGOTIATE:
@@ -2434,14 +2460,14 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
/* Get the currently set callback function pointer and store that in the
form struct since we might want the actual user-provided callback later
- on. The data->set.fread_func pointer itself will be changed for the
+ on. The conn->fread_func pointer itself will be changed for the
multipart case to the function that returns a multipart formatted
stream. */
- http->form.fread_func = data->set.fread_func;
+ http->form.fread_func = conn->fread_func;
/* Set the read function to read from the generated form data */
- data->set.fread_func = (curl_read_callback)Curl_FormReader;
- data->set.in = &http->form;
+ conn->fread_func = (curl_read_callback)Curl_FormReader;
+ conn->fread_in = &http->form;
http->sending = HTTPSEND_BODY;
@@ -2561,8 +2587,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
postsize = 0;
else {
/* figure out the size of the postfields */
- postsize = (data->state.infilesize != -1)?
- data->state.infilesize:
+ postsize = (data->set.postfieldsize != -1)?
+ data->set.postfieldsize:
(data->set.postfields? (curl_off_t)strlen(data->set.postfields):-1);
}
@@ -2659,8 +2685,8 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
http->sending = HTTPSEND_BODY;
- data->set.fread_func = (curl_read_callback)readmoredata;
- data->set.in = (void *)conn;
+ conn->fread_func = (curl_read_callback)readmoredata;
+ conn->fread_in = (void *)conn;
/* set the upload size to the progress meter */
Curl_pgrsSetUploadSize(data, http->postsize);
@@ -2685,7 +2711,7 @@ CURLcode Curl_http(struct connectdata *conn, bool *done)
return result;
}
- else if(data->state.infilesize) {
+ else if(data->set.postfieldsize) {
/* set the upload size to the progress meter */
Curl_pgrsSetUploadSize(data, postsize?postsize:-1);
@@ -3076,19 +3102,6 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
}
}
- /* At this point we have some idea about the fate of the connection.
- If we are closing the connection it may result auth failure. */
-#if defined(USE_NTLM)
- if(conn->bits.close &&
- (((data->req.httpcode == 401) &&
- (conn->ntlm.state == NTLMSTATE_TYPE2)) ||
- ((data->req.httpcode == 407) &&
- (conn->proxyntlm.state == NTLMSTATE_TYPE2)))) {
- infof(data, "Connection closure while negotiating auth (HTTP 1.0?)\n");
- data->state.authproblem = TRUE;
- }
-#endif
-
/*
* When all the headers have been parsed, see if we should give
* up and return an error.
@@ -3366,23 +3379,28 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
}
else if(conn->httpversion == 20 ||
(k->upgr101 == UPGR101_REQUESTED && k->httpcode == 101)) {
- DEBUGF(infof(data, "HTTP/2 found, allow multiplexing\n"));
-
- /* HTTP/2 cannot blacklist multiplexing since it is a core
- functionality of the protocol */
- conn->bundle->multiuse = BUNDLE_MULTIPLEX;
+ /* Don't enable pipelining for HTTP/2 or upgraded connection. For
+ HTTP/2, we do not support multiplexing. In general, requests
+ cannot be pipelined in upgraded connection, since it is now
+ different protocol. */
+ DEBUGF(infof(data,
+ "HTTP 2 or upgraded connection do not support "
+ "pipelining for now\n"));
}
else if(conn->httpversion >= 11 &&
!conn->bits.close) {
+ struct connectbundle *cb_ptr;
+
/* If HTTP version is >= 1.1 and connection is persistent
server supports pipelining. */
DEBUGF(infof(data,
"HTTP 1.1 or later with persistent connection, "
"pipelining supported\n"));
/* Activate pipelining if needed */
- if(conn->bundle) {
+ cb_ptr = conn->bundle;
+ if(cb_ptr) {
if(!Curl_pipeline_site_blacklisted(data, conn))
- conn->bundle->multiuse = BUNDLE_PIPELINING;
+ cb_ptr->server_supports_pipelining = TRUE;
}
}
@@ -3461,17 +3479,14 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
}
}
else if(checkprefix("Server:", k->p)) {
- if(conn->httpversion < 20) {
- /* only do this for non-h2 servers */
- char *server_name = Curl_copy_header_value(k->p);
-
- /* Turn off pipelining if the server version is blacklisted */
- if(conn->bundle && (conn->bundle->multiuse == BUNDLE_PIPELINING)) {
- if(Curl_pipeline_server_blacklisted(data, server_name))
- conn->bundle->multiuse = BUNDLE_NO_MULTIUSE;
- }
- free(server_name);
+ char *server_name = Curl_copy_header_value(k->p);
+
+ /* Turn off pipelining if the server version is blacklisted */
+ if(conn->bundle && conn->bundle->server_supports_pipelining) {
+ if(Curl_pipeline_server_blacklisted(data, server_name))
+ conn->bundle->server_supports_pipelining = FALSE;
}
+ Curl_safefree(server_name);
}
else if((conn->httpversion == 10) &&
conn->bits.httpproxy &&
@@ -3568,6 +3583,14 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
k->auto_decoding = GZIP;
start += 6;
}
+ else if(checkprefix("compress", start)) {
+ k->auto_decoding = COMPRESS;
+ start += 8;
+ }
+ else if(checkprefix("x-compress", start)) {
+ k->auto_decoding = COMPRESS;
+ start += 10;
+ }
else
/* unknown! */
break;
@@ -3600,6 +3623,9 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
else if(checkprefix("gzip", start)
|| checkprefix("x-gzip", start))
k->auto_decoding = GZIP;
+ else if(checkprefix("compress", start)
+ || checkprefix("x-compress", start))
+ k->auto_decoding = COMPRESS;
}
else if(checkprefix("Content-Range:", k->p)) {
/* Content-Range: bytes [num]-
@@ -3665,7 +3691,7 @@ CURLcode Curl_http_readwrite_headers(struct SessionHandle *data,
result = Curl_http_input_auth(conn, proxy, auth);
- free(auth);
+ Curl_safefree(auth);
if(result)
return result;
diff --git a/lib/http.h b/lib/http.h
index fe4f39bc6..907755a8a 100644
--- a/lib/http.h
+++ b/lib/http.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -60,7 +60,6 @@ struct Curl_send_buffer {
typedef struct Curl_send_buffer Curl_send_buffer;
Curl_send_buffer *Curl_add_buffer_init(void);
-void Curl_add_buffer_free(Curl_send_buffer *buff);
CURLcode Curl_add_bufferf(Curl_send_buffer *in, const char *fmt, ...);
CURLcode Curl_add_buffer(Curl_send_buffer *in, const void *inptr, size_t size);
CURLcode Curl_add_buffer_send(Curl_send_buffer *in,
@@ -153,69 +152,42 @@ struct HTTP {
void *send_buffer; /* used if the request couldn't be sent in one chunk,
points to an allocated send_buffer struct */
-
-#ifdef USE_NGHTTP2
- /*********** for HTTP/2 we store stream-local data here *************/
- int32_t stream_id; /* stream we are interested in */
-
- bool bodystarted;
- /* We store non-final and final response headers here, per-stream */
- Curl_send_buffer *header_recvbuf;
- size_t nread_header_recvbuf; /* number of bytes in header_recvbuf fed into
- upper layer */
- int status_code; /* HTTP status code */
- const uint8_t *pausedata; /* pointer to data received in on_data_chunk */
- size_t pauselen; /* the number of bytes left in data */
- bool closed; /* TRUE on HTTP2 stream close */
- uint32_t error_code; /* HTTP/2 error code */
-
- char *mem; /* points to a buffer in memory to store received data */
- size_t len; /* size of the buffer 'mem' points to */
- size_t memlen; /* size of data copied to mem */
-
- const uint8_t *upload_mem; /* points to a buffer to read from */
- size_t upload_len; /* size of the buffer 'upload_mem' points to */
- curl_off_t upload_left; /* number of bytes left to upload */
-
- char **push_headers; /* allocated array */
- size_t push_headers_used; /* number of entries filled in */
- size_t push_headers_alloc; /* number of entries allocated */
-#endif
};
typedef int (*sending)(void); /* Curl_send */
typedef int (*recving)(void); /* Curl_recv */
-#ifdef USE_NGHTTP2
-/* h2 settings for this connection */
-struct h2settings {
- uint32_t max_concurrent_streams;
- bool enable_push;
-};
-#endif
-
-
struct http_conn {
#ifdef USE_NGHTTP2
#define H2_BINSETTINGS_LEN 80
nghttp2_session *h2;
uint8_t binsettings[H2_BINSETTINGS_LEN];
size_t binlen; /* length of the binsettings data */
+ char *mem; /* points to a buffer in memory to store */
+ size_t len; /* size of the buffer 'mem' points to */
+ bool bodystarted;
sending send_underlying; /* underlying send Curl_send callback */
recving recv_underlying; /* underlying recv Curl_recv callback */
+ bool closed; /* TRUE on HTTP2 stream close */
+ Curl_send_buffer *header_recvbuf; /* store response headers. We
+ store non-final and final
+ response headers into it. */
+ size_t nread_header_recvbuf; /* number of bytes in header_recvbuf
+ fed into upper layer */
+ int32_t stream_id; /* stream we are interested in */
+ const uint8_t *data; /* pointer to data chunk, received in
+ on_data_chunk */
+ size_t datalen; /* the number of bytes left in data */
char *inbuf; /* buffer to receive data from underlying socket */
- size_t inbuflen; /* number of bytes filled in inbuf */
- size_t nread_inbuf; /* number of bytes read from in inbuf */
/* We need separate buffer for transmission and reception because we
may call nghttp2_session_send() after the
nghttp2_session_mem_recv() but mem buffer is still not full. In
this case, we wrongly sends the content of mem buffer if we share
them for both cases. */
- int32_t pause_stream_id; /* stream ID which paused
- nghttp2_session_mem_recv */
-
- /* this is a hash of all individual streams (SessionHandle structs) */
- struct h2settings settings;
+ const uint8_t *upload_mem; /* points to a buffer to read from */
+ size_t upload_len; /* size of the buffer 'upload_mem' points to */
+ size_t upload_left; /* number of bytes left to upload */
+ int status_code; /* HTTP status code */
#else
int unused; /* prevent a compiler warning */
#endif
diff --git a/lib/http2.c b/lib/http2.c
index 0024add8a..dac9ab4a1 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -23,24 +23,22 @@
#include "curl_setup.h"
#ifdef USE_NGHTTP2
-#include "curl_printf.h"
+#define _MPRINTF_REPLACE
+#include <curl/mprintf.h>
+
#include <nghttp2/nghttp2.h>
#include "urldata.h"
#include "http2.h"
#include "http.h"
#include "sendf.h"
#include "curl_base64.h"
+#include "curl_memory.h"
#include "rawstr.h"
#include "multiif.h"
-#include "conncache.h"
-#include "url.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* include memdebug.h last */
#include "memdebug.h"
-#define MIN(x,y) ((x)<(y)?(x):(y))
-
#if (NGHTTP2_VERSION_NUM < 0x000600)
#error too old nghttp2 version, upgrade!
#endif
@@ -52,7 +50,7 @@ static int http2_perform_getsock(const struct connectdata *conn,
sockets */
int numsocks)
{
- const struct http_conn *c = &conn->proto.httpc;
+ const struct http_conn *httpc = &conn->proto.httpc;
int bitmap = GETSOCK_BLANK;
(void)numsocks;
@@ -60,10 +58,10 @@ static int http2_perform_getsock(const struct connectdata *conn,
because of renegotiation. */
sock[0] = conn->sock[FIRSTSOCKET];
- if(nghttp2_session_want_read(c->h2))
+ if(nghttp2_session_want_read(httpc->h2))
bitmap |= GETSOCK_READSOCK(FIRSTSOCKET);
- if(nghttp2_session_want_write(c->h2))
+ if(nghttp2_session_want_write(httpc->h2))
bitmap |= GETSOCK_WRITESOCK(FIRSTSOCKET);
return bitmap;
@@ -80,52 +78,21 @@ static int http2_getsock(struct connectdata *conn,
static CURLcode http2_disconnect(struct connectdata *conn,
bool dead_connection)
{
- struct HTTP *http = conn->data->req.protop;
- struct http_conn *c = &conn->proto.httpc;
+ struct http_conn *httpc = &conn->proto.httpc;
(void)dead_connection;
- DEBUGF(infof(conn->data, "HTTP/2 DISCONNECT starts now\n"));
+ infof(conn->data, "HTTP/2 DISCONNECT starts now\n");
- nghttp2_session_del(c->h2);
- Curl_safefree(c->inbuf);
+ nghttp2_session_del(httpc->h2);
- if(http) {
- Curl_add_buffer_free(http->header_recvbuf);
- http->header_recvbuf = NULL; /* clear the pointer */
- for(; http->push_headers_used > 0; --http->push_headers_used) {
- free(http->push_headers[http->push_headers_used - 1]);
- }
- free(http->push_headers);
- http->push_headers = NULL;
- }
+ Curl_safefree(httpc->header_recvbuf->buffer);
+ Curl_safefree(httpc->header_recvbuf);
- DEBUGF(infof(conn->data, "HTTP/2 DISCONNECT done\n"));
+ Curl_safefree(httpc->inbuf);
- return CURLE_OK;
-}
+ infof(conn->data, "HTTP/2 DISCONNECT done\n");
-/* called from Curl_http_setup_conn */
-void Curl_http2_setup_req(struct SessionHandle *data)
-{
- struct HTTP *http = data->req.protop;
-
- http->nread_header_recvbuf = 0;
- http->bodystarted = FALSE;
- http->status_code = -1;
- http->pausedata = NULL;
- http->pauselen = 0;
- http->error_code = NGHTTP2_NO_ERROR;
- http->closed = FALSE;
- http->mem = data->state.buffer;
- http->len = BUFSIZE;
- http->memlen = 0;
-}
-
-/* called from Curl_http_setup_conn */
-void Curl_http2_setup_conn(struct connectdata *conn)
-{
- conn->proto.httpc.settings.max_concurrent_streams =
- DEFAULT_MAX_CONCURRENT_STREAMS;
+ return CURLE_OK;
}
/*
@@ -137,7 +104,7 @@ const struct Curl_handler Curl_handler_http2 = {
"HTTP2", /* scheme */
ZERO_NULL, /* setup_connection */
Curl_http, /* do_it */
- Curl_http_done, /* done */
+ ZERO_NULL, /* done */
ZERO_NULL, /* do_more */
ZERO_NULL, /* connect_it */
ZERO_NULL, /* connecting */
@@ -157,7 +124,7 @@ const struct Curl_handler Curl_handler_http2_ssl = {
"HTTP2", /* scheme */
ZERO_NULL, /* setup_connection */
Curl_http, /* do_it */
- Curl_http_done, /* done */
+ ZERO_NULL, /* done */
ZERO_NULL, /* do_more */
ZERO_NULL, /* connect_it */
ZERO_NULL, /* connecting */
@@ -193,15 +160,15 @@ static ssize_t send_callback(nghttp2_session *h2,
void *userp)
{
struct connectdata *conn = (struct connectdata *)userp;
- struct http_conn *c = &conn->proto.httpc;
+ struct http_conn *httpc = &conn->proto.httpc;
ssize_t written;
CURLcode result = CURLE_OK;
(void)h2;
(void)flags;
- written = ((Curl_send*)c->send_underlying)(conn, FIRSTSOCKET,
- data, length, &result);
+ written = ((Curl_send*)httpc->send_underlying)(conn, FIRSTSOCKET,
+ data, length, &result);
if(result == CURLE_AGAIN) {
return NGHTTP2_ERR_WOULDBLOCK;
@@ -218,205 +185,25 @@ static ssize_t send_callback(nghttp2_session *h2,
return written;
}
-
-/* We pass a pointer to this struct in the push callback, but the contents of
- the struct are hidden from the user. */
-struct curl_pushheaders {
- struct SessionHandle *data;
- const nghttp2_push_promise *frame;
-};
-
-/*
- * push header access function. Only to be used from within the push callback
- */
-char *curl_pushheader_bynum(struct curl_pushheaders *h, size_t num)
-{
- /* Verify that we got a good easy handle in the push header struct, mostly to
- detect rubbish input fast(er). */
- if(!h || !GOOD_EASY_HANDLE(h->data))
- return NULL;
- else {
- struct HTTP *stream = h->data->req.protop;
- if(num < stream->push_headers_used)
- return stream->push_headers[num];
- }
- return NULL;
-}
-
-/*
- * push header access function. Only to be used from within the push callback
- */
-char *curl_pushheader_byname(struct curl_pushheaders *h, const char *header)
-{
- /* Verify that we got a good easy handle in the push header struct,
- mostly to detect rubbish input fast(er). Also empty header name
- is just a rubbish too. We have to allow ":" at the beginning of
- the header, but header == ":" must be rejected. If we have ':' in
- the middle of header, it could be matched in middle of the value,
- this is because we do prefix match.*/
- if(!h || !GOOD_EASY_HANDLE(h->data) || !header || !header[0] ||
- Curl_raw_equal(header, ":") || strchr(header + 1, ':'))
- return NULL;
- else {
- struct HTTP *stream = h->data->req.protop;
- size_t len = strlen(header);
- size_t i;
- for(i=0; i<stream->push_headers_used; i++) {
- if(!strncmp(header, stream->push_headers[i], len)) {
- /* sub-match, make sure that it us followed by a colon */
- if(stream->push_headers[i][len] != ':')
- continue;
- return &stream->push_headers[i][len+1];
- }
- }
- }
- return NULL;
-}
-
-static CURL *duphandle(struct SessionHandle *data)
-{
- struct SessionHandle *second = curl_easy_duphandle(data);
- if(second) {
- /* setup the request struct */
- struct HTTP *http = calloc(1, sizeof(struct HTTP));
- if(!http) {
- (void)Curl_close(second);
- second = NULL;
- }
- else {
- second->req.protop = http;
- http->header_recvbuf = Curl_add_buffer_init();
- if(!http->header_recvbuf) {
- free(http);
- (void)Curl_close(second);
- second = NULL;
- }
- else
- Curl_http2_setup_req(second);
- }
- }
- return second;
-}
-
-
-static int push_promise(struct SessionHandle *data,
- struct connectdata *conn,
- const nghttp2_push_promise *frame)
-{
- int rv;
- DEBUGF(infof(data, "PUSH_PROMISE received, stream %u!\n",
- frame->promised_stream_id));
- if(data->multi->push_cb) {
- struct HTTP *stream;
- struct curl_pushheaders heads;
- CURLMcode rc;
- struct http_conn *httpc;
- size_t i;
- /* clone the parent */
- CURL *newhandle = duphandle(data);
- if(!newhandle) {
- infof(data, "failed to duplicate handle\n");
- rv = 1; /* FAIL HARD */
- goto fail;
- }
-
- heads.data = data;
- heads.frame = frame;
- /* ask the application */
- DEBUGF(infof(data, "Got PUSH_PROMISE, ask application!\n"));
-
- stream = data->req.protop;
- if(!stream) {
- failf(data, "Internal NULL stream!\n");
- rv = 1;
- goto fail;
- }
-
- rv = data->multi->push_cb(data, newhandle,
- stream->push_headers_used, &heads,
- data->multi->push_userp);
-
- /* free the headers again */
- for(i=0; i<stream->push_headers_used; i++)
- free(stream->push_headers[i]);
- free(stream->push_headers);
- stream->push_headers = NULL;
-
- if(rv) {
- /* denied, kill off the new handle again */
- (void)Curl_close(newhandle);
- goto fail;
- }
-
- /* approved, add to the multi handle and immediately switch to PERFORM
- state with the given connection !*/
- rc = Curl_multi_add_perform(data->multi, newhandle, conn);
- if(rc) {
- infof(data, "failed to add handle to multi\n");
- Curl_close(newhandle);
- rv = 1;
- goto fail;
- }
-
- httpc = &conn->proto.httpc;
- nghttp2_session_set_stream_user_data(httpc->h2,
- frame->promised_stream_id, newhandle);
- }
- else {
- DEBUGF(infof(data, "Got PUSH_PROMISE, ignore it!\n"));
- rv = 1;
- }
- fail:
- return rv;
-}
-
static int on_frame_recv(nghttp2_session *session, const nghttp2_frame *frame,
void *userp)
{
- struct connectdata *conn = NULL;
- struct http_conn *httpc = NULL;
- struct SessionHandle *data_s = NULL;
- struct HTTP *stream = NULL;
- static int lastStream = -1;
+ struct connectdata *conn = (struct connectdata *)userp;
+ struct http_conn *c = &conn->proto.httpc;
int rv;
size_t left, ncopy;
- int32_t stream_id = frame->hd.stream_id;
-
- (void)userp;
-
- if(!stream_id) {
- /* stream ID zero is for connection-oriented stuff */
- return 0;
- }
- data_s = nghttp2_session_get_stream_user_data(session,
- frame->hd.stream_id);
- if(lastStream != frame->hd.stream_id) {
- lastStream = frame->hd.stream_id;
- }
- if(!data_s) {
- DEBUGF(infof(conn->data,
- "No SessionHandle associated with stream: %x\n",
- stream_id));
- return 0;
- }
-
- stream = data_s->req.protop;
- if(!stream)
- return NGHTTP2_ERR_CALLBACK_FAILURE;
- DEBUGF(infof(data_s, "on_frame_recv() header %x stream %x\n",
- frame->hd.type, stream_id));
-
- conn = data_s->easy_conn;
- assert(conn);
- assert(conn->data == data_s);
- httpc = &conn->proto.httpc;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "on_frame_recv() was called with header %x\n",
+ frame->hd.type);
switch(frame->hd.type) {
case NGHTTP2_DATA:
- /* If body started on this stream, then receiving DATA is illegal. */
- if(!stream->bodystarted) {
+ /* If body started, then receiving DATA is illegal. */
+ if(!c->bodystarted) {
rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
- stream_id, NGHTTP2_PROTOCOL_ERROR);
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
if(nghttp2_is_fatal(rv)) {
return NGHTTP2_ERR_CALLBACK_FAILURE;
@@ -427,96 +214,74 @@ static int on_frame_recv(nghttp2_session *session, const nghttp2_frame *frame,
if(frame->headers.cat == NGHTTP2_HCAT_REQUEST)
break;
- if(stream->bodystarted) {
- /* Only valid HEADERS after body started is trailer HEADERS. We
- ignores trailer HEADERS for now. nghttp2 guarantees that it
- has END_STREAM flag set. */
+ if(c->bodystarted) {
+ /* Only valid HEADERS after body started is trailer header,
+ which is not fully supported in this code. If HEADERS is not
+ trailer, then it is a PROTOCOL_ERROR. */
+ if((frame->hd.flags & NGHTTP2_FLAG_END_STREAM) == 0) {
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
+
+ if(nghttp2_is_fatal(rv)) {
+ return NGHTTP2_ERR_CALLBACK_FAILURE;
+ }
+ }
break;
}
- /* nghttp2 guarantees that :status is received, and we store it to
- stream->status_code */
- DEBUGASSERT(stream->status_code != -1);
+ if(c->status_code == -1) {
+ /* No :status header field means PROTOCOL_ERROR. */
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
- /* Only final status code signals the end of header */
- if(stream->status_code / 100 != 1) {
- stream->bodystarted = TRUE;
- stream->status_code = -1;
+ if(nghttp2_is_fatal(rv)) {
+ return NGHTTP2_ERR_CALLBACK_FAILURE;
+ }
+
+ break;
}
- Curl_add_buffer(stream->header_recvbuf, "\r\n", 2);
+ /* Only final status code signals the end of header */
+ if(c->status_code / 100 != 1) {
+ c->bodystarted = TRUE;
+ }
- left = stream->header_recvbuf->size_used - stream->nread_header_recvbuf;
- ncopy = MIN(stream->len, left);
+ c->status_code = -1;
- memcpy(&stream->mem[stream->memlen],
- stream->header_recvbuf->buffer + stream->nread_header_recvbuf,
- ncopy);
- stream->nread_header_recvbuf += ncopy;
+ Curl_add_buffer(c->header_recvbuf, "\r\n", 2);
- DEBUGF(infof(data_s, "Store %zu bytes headers from stream %u at %p\n",
- ncopy, stream_id, stream->mem));
+ left = c->header_recvbuf->size_used - c->nread_header_recvbuf;
+ ncopy = c->len < left ? c->len : left;
- stream->len -= ncopy;
- stream->memlen += ncopy;
+ memcpy(c->mem, c->header_recvbuf->buffer + c->nread_header_recvbuf, ncopy);
+ c->nread_header_recvbuf += ncopy;
- data_s->state.drain++;
- Curl_expire(data_s, 1);
+ c->mem += ncopy;
+ c->len -= ncopy;
break;
case NGHTTP2_PUSH_PROMISE:
- rv = push_promise(data_s, conn, &frame->push_promise);
- if(rv) { /* deny! */
- rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
- frame->push_promise.promised_stream_id,
- NGHTTP2_CANCEL);
- if(nghttp2_is_fatal(rv)) {
- return rv;
- }
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->push_promise.promised_stream_id,
+ NGHTTP2_CANCEL);
+ if(nghttp2_is_fatal(rv)) {
+ return rv;
}
break;
- case NGHTTP2_SETTINGS:
- {
- uint32_t max_conn = httpc->settings.max_concurrent_streams;
- DEBUGF(infof(conn->data, "Got SETTINGS for stream %u!\n", stream_id));
- httpc->settings.max_concurrent_streams =
- nghttp2_session_get_remote_settings(
- session, NGHTTP2_SETTINGS_MAX_CONCURRENT_STREAMS);
- httpc->settings.enable_push =
- nghttp2_session_get_remote_settings(
- session, NGHTTP2_SETTINGS_ENABLE_PUSH);
- DEBUGF(infof(conn->data, "MAX_CONCURRENT_STREAMS == %d\n",
- httpc->settings.max_concurrent_streams));
- DEBUGF(infof(conn->data, "ENABLE_PUSH == %s\n",
- httpc->settings.enable_push?"TRUE":"false"));
- if(max_conn != httpc->settings.max_concurrent_streams) {
- /* only signal change if the value actually changed */
- infof(conn->data,
- "Connection state changed (MAX_CONCURRENT_STREAMS updated)!\n");
- Curl_multi_connchanged(conn->data->multi);
- }
- }
- break;
- default:
- DEBUGF(infof(conn->data, "Got frame type %x for stream %u!\n",
- frame->hd.type, stream_id));
- break;
}
return 0;
}
static int on_invalid_frame_recv(nghttp2_session *session,
const nghttp2_frame *frame,
- int lib_error_code, void *userp)
+ uint32_t error_code, void *userp)
{
- struct SessionHandle *data_s = NULL;
- (void)userp;
-
- data_s = nghttp2_session_get_stream_user_data(session, frame->hd.stream_id);
- if(data_s) {
- DEBUGF(infof(data_s,
- "on_invalid_frame_recv() was called, error=%d:%s\n",
- lib_error_code, nghttp2_strerror(lib_error_code)));
- }
+ struct connectdata *conn = (struct connectdata *)userp;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "on_invalid_frame_recv() was called, error_code = %d\n",
+ error_code);
return 0;
}
@@ -524,50 +289,30 @@ static int on_data_chunk_recv(nghttp2_session *session, uint8_t flags,
int32_t stream_id,
const uint8_t *data, size_t len, void *userp)
{
- struct HTTP *stream;
- struct SessionHandle *data_s;
+ struct connectdata *conn = (struct connectdata *)userp;
+ struct http_conn *c = &conn->proto.httpc;
size_t nread;
(void)session;
(void)flags;
(void)data;
- (void)userp;
-
- DEBUGASSERT(stream_id); /* should never be a zero stream ID here */
-
- /* get the stream from the hash based on Stream ID */
- data_s = nghttp2_session_get_stream_user_data(session, stream_id);
- if(!data_s)
- /* Receiving a Stream ID not in the hash should not happen, this is an
- internal error more than anything else! */
- return NGHTTP2_ERR_CALLBACK_FAILURE;
-
- stream = data_s->req.protop;
- if(!stream)
- return NGHTTP2_ERR_CALLBACK_FAILURE;
+ infof(conn->data, "on_data_chunk_recv() "
+ "len = %u, stream = %x\n", len, stream_id);
- nread = MIN(stream->len, len);
- memcpy(&stream->mem[stream->memlen], data, nread);
+ if(stream_id != c->stream_id) {
+ return 0;
+ }
- stream->len -= nread;
- stream->memlen += nread;
+ nread = c->len < len ? c->len : len;
+ memcpy(c->mem, data, nread);
- data_s->state.drain++;
- Curl_expire(data_s, 1); /* TODO: fix so that this can be set to 0 for
- immediately? */
+ c->mem += nread;
+ c->len -= nread;
- DEBUGF(infof(data_s, "%zu data received for stream %u "
- "(%zu left in buffer %p, total %zu)\n",
- nread, stream_id,
- stream->len, stream->mem,
- stream->memlen));
+ infof(conn->data, "%zu data written\n", nread);
if(nread < len) {
- stream->pausedata = data + nread;
- stream->pauselen = len - nread;
- DEBUGF(infof(data_s, "NGHTTP2_ERR_PAUSE - %zu bytes out of buffer"
- ", stream %u\n",
- len - nread, stream_id));
- data_s->easy_conn->proto.httpc.pause_stream_id = stream_id;
+ c->data = data + nread;
+ c->datalen = len - nread;
return NGHTTP2_ERR_PAUSE;
}
return 0;
@@ -577,89 +322,59 @@ static int before_frame_send(nghttp2_session *session,
const nghttp2_frame *frame,
void *userp)
{
- struct SessionHandle *data_s;
- (void)userp;
-
- data_s = nghttp2_session_get_stream_user_data(session, frame->hd.stream_id);
- if(data_s) {
- DEBUGF(infof(data_s, "before_frame_send() was called\n"));
- }
-
+ struct connectdata *conn = (struct connectdata *)userp;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "before_frame_send() was called\n");
return 0;
}
static int on_frame_send(nghttp2_session *session,
const nghttp2_frame *frame,
void *userp)
{
- struct SessionHandle *data_s;
- (void)userp;
-
- data_s = nghttp2_session_get_stream_user_data(session, frame->hd.stream_id);
- if(data_s) {
- DEBUGF(infof(data_s, "on_frame_send() was called, length = %zd\n",
- frame->hd.length));
- }
+ struct connectdata *conn = (struct connectdata *)userp;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "on_frame_send() was called\n");
return 0;
}
static int on_frame_not_send(nghttp2_session *session,
const nghttp2_frame *frame,
int lib_error_code, void *userp)
{
- struct SessionHandle *data_s;
- (void)userp;
-
- data_s = nghttp2_session_get_stream_user_data(session, frame->hd.stream_id);
- if(data_s) {
- DEBUGF(infof(data_s,
- "on_frame_not_send() was called, lib_error_code = %d\n",
- lib_error_code));
- }
+ struct connectdata *conn = (struct connectdata *)userp;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "on_frame_not_send() was called, lib_error_code = %d\n",
+ lib_error_code);
return 0;
}
static int on_stream_close(nghttp2_session *session, int32_t stream_id,
uint32_t error_code, void *userp)
{
- struct SessionHandle *data_s;
- struct HTTP *stream;
+ struct connectdata *conn = (struct connectdata *)userp;
+ struct http_conn *c = &conn->proto.httpc;
(void)session;
(void)stream_id;
- (void)userp;
-
- if(stream_id) {
- /* get the stream from the hash based on Stream ID, stream ID zero is for
- connection-oriented stuff */
- data_s = nghttp2_session_get_stream_user_data(session, stream_id);
- if(!data_s) {
- /* We could get stream ID not in the hash. For example, if we
- decided to reject stream (e.g., PUSH_PROMISE). */
- return 0;
- }
- DEBUGF(infof(data_s, "on_stream_close(), error_code = %d, stream %u\n",
- error_code, stream_id));
- stream = data_s->req.protop;
- if(!stream)
- return NGHTTP2_ERR_CALLBACK_FAILURE;
-
- stream->error_code = error_code;
- stream->closed = TRUE;
+ infof(conn->data, "on_stream_close() was called, error_code = %d\n",
+ error_code);
- /* remove the entry from the hash as the stream is now gone */
- nghttp2_session_set_stream_user_data(session, stream_id, 0);
- DEBUGF(infof(data_s, "Removed stream %u hash!\n", stream_id));
+ if(stream_id != c->stream_id) {
+ return 0;
}
+
+ c->closed = TRUE;
+
return 0;
}
static int on_begin_headers(nghttp2_session *session,
const nghttp2_frame *frame, void *userp)
{
- struct SessionHandle *data_s = NULL;
- (void)userp;
-
- data_s = nghttp2_session_get_stream_user_data(session, frame->hd.stream_id);
- if(data_s) {
- DEBUGF(infof(data_s, "on_begin_headers() was called\n"));
- }
+ struct connectdata *conn = (struct connectdata *)userp;
+ (void)session;
+ (void)frame;
+ infof(conn->data, "on_begin_headers() was called\n");
return 0;
}
@@ -690,6 +405,8 @@ static int decode_status_code(const uint8_t *value, size_t len)
return res;
}
+static const char STATUS[] = ":status";
+
/* frame->hd.type is either NGHTTP2_HEADERS or NGHTTP2_PUSH_PROMISE */
static int on_header(nghttp2_session *session, const nghttp2_frame *frame,
const uint8_t *name, size_t namelen,
@@ -697,94 +414,93 @@ static int on_header(nghttp2_session *session, const nghttp2_frame *frame,
uint8_t flags,
void *userp)
{
- struct HTTP *stream;
- struct SessionHandle *data_s;
- int32_t stream_id = frame->hd.stream_id;
+ struct connectdata *conn = (struct connectdata *)userp;
+ struct http_conn *c = &conn->proto.httpc;
+ int rv;
+ int goodname;
+ int goodheader;
+ (void)session;
+ (void)frame;
(void)flags;
- (void)userp;
-
- DEBUGASSERT(stream_id); /* should never be a zero stream ID here */
-
- /* get the stream from the hash based on Stream ID */
- data_s = nghttp2_session_get_stream_user_data(session, stream_id);
- if(!data_s)
- /* Receiving a Stream ID not in the hash should not happen, this is an
- internal error more than anything else! */
- return NGHTTP2_ERR_CALLBACK_FAILURE;
- stream = data_s->req.protop;
- if(!stream) {
- failf(data_s, "Internal NULL stream! 5\n");
- return NGHTTP2_ERR_CALLBACK_FAILURE;
+ if(frame->hd.stream_id != c->stream_id) {
+ return 0;
}
- if(stream->bodystarted)
+ if(c->bodystarted) {
/* Ignore trailer or HEADERS not mapped to HTTP semantics. The
consequence is handled in on_frame_recv(). */
return 0;
+ }
- /* Store received PUSH_PROMISE headers to be used when the subsequent
- PUSH_PROMISE callback comes */
- if(frame->hd.type == NGHTTP2_PUSH_PROMISE) {
- char *h;
+ goodname = nghttp2_check_header_name(name, namelen);
+ goodheader = nghttp2_check_header_value(value, valuelen);
- if(!stream->push_headers) {
- stream->push_headers_alloc = 10;
- stream->push_headers = malloc(stream->push_headers_alloc *
- sizeof(char *));
- stream->push_headers_used = 0;
- }
- else if(stream->push_headers_used ==
- stream->push_headers_alloc) {
- char **headp;
- stream->push_headers_alloc *= 2;
- headp = realloc(stream->push_headers,
- stream->push_headers_alloc * sizeof(char *));
- if(!headp) {
- free(stream->push_headers);
- stream->push_headers = NULL;
- return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
- }
- stream->push_headers = headp;
+ if(!goodname || !goodheader) {
+
+ infof(conn->data, "Detected bad incoming header %s%s, reset stream!\n",
+ goodname?"":"name",
+ goodheader?"":"value");
+
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
+
+ if(nghttp2_is_fatal(rv)) {
+ return NGHTTP2_ERR_CALLBACK_FAILURE;
}
- h = aprintf("%s:%s", name, value);
- if(h)
- stream->push_headers[stream->push_headers_used++] = h;
- return 0;
+
+ return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
}
if(namelen == sizeof(":status") - 1 &&
- memcmp(":status", name, namelen) == 0) {
- /* nghttp2 guarantees :status is received first and only once, and
- value is 3 digits status code, and decode_status_code always
- succeeds. */
- stream->status_code = decode_status_code(value, valuelen);
- DEBUGASSERT(stream->status_code != -1);
-
- Curl_add_buffer(stream->header_recvbuf, "HTTP/2.0 ", 9);
- Curl_add_buffer(stream->header_recvbuf, value, valuelen);
- Curl_add_buffer(stream->header_recvbuf, "\r\n", 2);
- data_s->state.drain++;
- Curl_expire(data_s, 1);
-
- DEBUGF(infof(data_s, "h2 status: HTTP/2 %03d\n",
- stream->status_code));
+ memcmp(STATUS, name, namelen) == 0) {
+
+ /* :status must appear exactly once. */
+ if(c->status_code != -1 ||
+ (c->status_code = decode_status_code(value, valuelen)) == -1) {
+
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
+ if(nghttp2_is_fatal(rv)) {
+ return NGHTTP2_ERR_CALLBACK_FAILURE;
+ }
+
+ return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
+ }
+
+ Curl_add_buffer(c->header_recvbuf, "HTTP/2.0 ", 9);
+ Curl_add_buffer(c->header_recvbuf, value, valuelen);
+ Curl_add_buffer(c->header_recvbuf, "\r\n", 2);
+
return 0;
}
+ else {
+ /* Here we are sure that namelen > 0 because of
+ nghttp2_check_header_name(). Pseudo header other than :status
+ is illegal. */
+ if(c->status_code == -1 || name[0] == ':') {
+ rv = nghttp2_submit_rst_stream(session, NGHTTP2_FLAG_NONE,
+ frame->hd.stream_id,
+ NGHTTP2_PROTOCOL_ERROR);
+ if(nghttp2_is_fatal(rv)) {
+ return NGHTTP2_ERR_CALLBACK_FAILURE;
+ }
- /* nghttp2 guarantees that namelen > 0, and :status was already
- received, and this is not pseudo-header field . */
- /* convert to a HTTP1-style header */
- Curl_add_buffer(stream->header_recvbuf, name, namelen);
- Curl_add_buffer(stream->header_recvbuf, ":", 1);
- Curl_add_buffer(stream->header_recvbuf, value, valuelen);
- Curl_add_buffer(stream->header_recvbuf, "\r\n", 2);
- data_s->state.drain++;
- Curl_expire(data_s, 1);
+ return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE;
+ }
- DEBUGF(infof(data_s, "h2 header: %.*s: %.*s\n", namelen, name, valuelen,
- value));
+ /* convert to a HTTP1-style header */
+ Curl_add_buffer(c->header_recvbuf, name, namelen);
+ Curl_add_buffer(c->header_recvbuf, ":", 1);
+ Curl_add_buffer(c->header_recvbuf, value, valuelen);
+ Curl_add_buffer(c->header_recvbuf, "\r\n", 2);
+
+ infof(conn->data, "got http2 header: %.*s: %.*s\n",
+ namelen, name, valuelen, value);
+ }
return 0; /* 0 is successful */
}
@@ -796,45 +512,26 @@ static ssize_t data_source_read_callback(nghttp2_session *session,
nghttp2_data_source *source,
void *userp)
{
- struct SessionHandle *data_s;
- struct HTTP *stream = NULL;
+ struct connectdata *conn = (struct connectdata *)userp;
+ struct http_conn *c = &conn->proto.httpc;
size_t nread;
+ (void)session;
+ (void)stream_id;
(void)source;
- (void)userp;
-
- if(stream_id) {
- /* get the stream from the hash based on Stream ID, stream ID zero is for
- connection-oriented stuff */
- data_s = nghttp2_session_get_stream_user_data(session, stream_id);
- if(!data_s)
- /* Receiving a Stream ID not in the hash should not happen, this is an
- internal error more than anything else! */
- return NGHTTP2_ERR_CALLBACK_FAILURE;
-
- stream = data_s->req.protop;
- if(!stream)
- return NGHTTP2_ERR_CALLBACK_FAILURE;
- }
- else
- return NGHTTP2_ERR_INVALID_ARGUMENT;
- nread = MIN(stream->upload_len, length);
+ nread = c->upload_len < length ? c->upload_len : length;
if(nread > 0) {
- memcpy(buf, stream->upload_mem, nread);
- stream->upload_mem += nread;
- stream->upload_len -= nread;
- stream->upload_left -= nread;
+ memcpy(buf, c->upload_mem, nread);
+ c->upload_mem += nread;
+ c->upload_len -= nread;
+ c->upload_left -= nread;
}
- if(stream->upload_left == 0)
+ if(c->upload_left == 0)
*data_flags = 1;
else if(nread == 0)
return NGHTTP2_ERR_DEFERRED;
- DEBUGF(infof(data_s, "data_source_read_callback: "
- "returns %zu bytes stream %u\n",
- nread, stream_id));
-
return nread;
}
@@ -846,7 +543,7 @@ static nghttp2_settings_entry settings[] = {
{ NGHTTP2_SETTINGS_INITIAL_WINDOW_SIZE, NGHTTP2_INITIAL_WINDOW_SIZE },
};
-#define H2_BUFSIZE 32768
+#define H2_BUFSIZE 4096
/*
* Initialize nghttp2 for a Curl connection
@@ -898,7 +595,8 @@ CURLcode Curl_http2_init(struct connectdata *conn)
nghttp2_session_callbacks_set_on_header_callback(callbacks, on_header);
/* The nghttp2 session is not yet setup, do it */
- rc = nghttp2_session_client_new(&conn->proto.httpc.h2, callbacks, conn);
+ rc = nghttp2_session_client_new(&conn->proto.httpc.h2,
+ callbacks, conn);
nghttp2_session_callbacks_del(callbacks);
@@ -906,11 +604,6 @@ CURLcode Curl_http2_init(struct connectdata *conn)
failf(conn->data, "Couldn't initialize nghttp2!");
return CURLE_OUT_OF_MEMORY; /* most likely at least */
}
-
- if(rc) {
- failf(conn->data, "Couldn't init stream hash!");
- return CURLE_OUT_OF_MEMORY; /* most likely at least */
- }
}
return CURLE_OK;
}
@@ -937,6 +630,14 @@ CURLcode Curl_http2_request_upgrade(Curl_send_buffer *req,
struct SingleRequest *k = &conn->data->req;
uint8_t *binsettings = conn->proto.httpc.binsettings;
+ result = Curl_http2_init(conn);
+ if(result)
+ return result;
+
+ result = Curl_http2_setup(conn);
+ if(result)
+ return result;
+
/* As long as we have a fixed set of settings, we don't have to dynamically
* figure out the base64 strings since it'll always be the same. However,
* the settings will likely not be fixed every time in the future.
@@ -962,32 +663,13 @@ CURLcode Curl_http2_request_upgrade(Curl_send_buffer *req,
"Upgrade: %s\r\n"
"HTTP2-Settings: %s\r\n",
NGHTTP2_CLEARTEXT_PROTO_VERSION_ID, base64);
- free(base64);
+ Curl_safefree(base64);
k->upgr101 = UPGR101_REQUESTED;
return result;
}
-static ssize_t http2_handle_stream_close(struct http_conn *httpc,
- struct SessionHandle *data,
- struct HTTP *stream, CURLcode *err) {
- if(httpc->pause_stream_id == stream->stream_id) {
- httpc->pause_stream_id = 0;
- }
- /* Reset to FALSE to prevent infinite loop in readwrite_data
- function. */
- stream->closed = FALSE;
- if(stream->error_code != NGHTTP2_NO_ERROR) {
- failf(data, "HTTP/2 stream %u was not closed cleanly: error_code = %d",
- stream->stream_id, stream->error_code);
- *err = CURLE_HTTP2;
- return -1;
- }
- DEBUGF(infof(data, "http2_recv returns 0, http2_handle_stream_close\n"));
- return 0;
-}
-
/*
* If the read would block (EWOULDBLOCK) we return -1. Otherwise we return
* a regular CURLcode value.
@@ -999,184 +681,103 @@ static ssize_t http2_recv(struct connectdata *conn, int sockindex,
ssize_t rv;
ssize_t nread;
struct http_conn *httpc = &conn->proto.httpc;
- struct SessionHandle *data = conn->data;
- struct HTTP *stream = data->req.protop;
(void)sockindex; /* we always do HTTP2 on sockindex 0 */
- /* If stream is closed, return 0 to signal the http routine to close
- the connection. We need to handle stream closure here,
- otherwise, we may be going to read from underlying connection,
- and gets EAGAIN, and we will get stuck there. */
- if(stream->memlen == 0 && stream->closed) {
- return http2_handle_stream_close(httpc, data, stream, err);
+ if(httpc->closed) {
+ /* Reset to FALSE to prevent infinite loop in readwrite_data
+ function. */
+ httpc->closed = FALSE;
+ return 0;
}
/* Nullify here because we call nghttp2_session_send() and they
might refer to the old buffer. */
- stream->upload_mem = NULL;
- stream->upload_len = 0;
+ httpc->upload_mem = NULL;
+ httpc->upload_len = 0;
- /*
- * At this point 'stream' is just in the SessionHandle the connection
- * identifies as its owner at this time.
- */
-
- if(stream->bodystarted &&
- stream->nread_header_recvbuf < stream->header_recvbuf->size_used) {
- /* If there is body data pending for this stream to return, do that */
+ if(httpc->bodystarted &&
+ httpc->nread_header_recvbuf < httpc->header_recvbuf->size_used) {
size_t left =
- stream->header_recvbuf->size_used - stream->nread_header_recvbuf;
- size_t ncopy = MIN(len, left);
- memcpy(mem, stream->header_recvbuf->buffer + stream->nread_header_recvbuf,
+ httpc->header_recvbuf->size_used - httpc->nread_header_recvbuf;
+ size_t ncopy = len < left ? len : left;
+ memcpy(mem, httpc->header_recvbuf->buffer + httpc->nread_header_recvbuf,
ncopy);
- stream->nread_header_recvbuf += ncopy;
-
- infof(data, "http2_recv: Got %d bytes from header_recvbuf\n",
- (int)ncopy);
+ httpc->nread_header_recvbuf += ncopy;
return ncopy;
}
- infof(data, "http2_recv: %d bytes buffer at %p (stream %u)\n",
- len, mem, stream->stream_id);
-
- if((data->state.drain) && stream->memlen) {
- DEBUGF(infof(data, "http2_recv: DRAIN %zu bytes stream %u!! (%p => %p)\n",
- stream->memlen, stream->stream_id,
- stream->mem, mem));
- if(mem != stream->mem) {
- /* if we didn't get the same buffer this time, we must move the data to
- the beginning */
- memmove(mem, stream->mem, stream->memlen);
- stream->len = len - stream->memlen;
- stream->mem = mem;
- }
- }
- else if(stream->pausedata) {
- nread = MIN(len, stream->pauselen);
- memcpy(mem, stream->pausedata, nread);
-
- stream->pausedata += nread;
- stream->pauselen -= nread;
+ if(httpc->data) {
+ nread = len < httpc->datalen ? len : httpc->datalen;
+ memcpy(mem, httpc->data, nread);
- infof(data, "%zu data bytes written\n", nread);
- if(stream->pauselen == 0) {
- DEBUGF(infof(data, "Unpaused by stream %u\n", stream->stream_id));
- assert(httpc->pause_stream_id == stream->stream_id);
- httpc->pause_stream_id = 0;
+ httpc->data += nread;
+ httpc->datalen -= nread;
- stream->pausedata = NULL;
- stream->pauselen = 0;
+ infof(conn->data, "%zu data written\n", nread);
+ if(httpc->datalen == 0) {
+ httpc->data = NULL;
+ httpc->datalen = 0;
}
- infof(data, "http2_recv: returns unpaused %zd bytes on stream %u\n",
- nread, stream->stream_id);
return nread;
}
- else if(httpc->pause_stream_id) {
- /* If a stream paused nghttp2_session_mem_recv previously, and has
- not processed all data, it still refers to the buffer in
- nghttp2_session. If we call nghttp2_session_mem_recv(), we may
- overwrite that buffer. To avoid that situation, just return
- here with CURLE_AGAIN. This could be busy loop since data in
- socket is not read. But it seems that usually streams are
- notified with its drain property, and socket is read again
- quickly. */
- *err = CURLE_AGAIN;
- return -1;
- }
- else {
- char *inbuf;
- /* remember where to store incoming data for this stream and how big the
- buffer is */
- stream->mem = mem;
- stream->len = len;
- stream->memlen = 0;
-
- if(httpc->inbuflen == 0) {
- nread = ((Curl_recv *)httpc->recv_underlying)(
- conn, FIRSTSOCKET, httpc->inbuf, H2_BUFSIZE, &result);
-
- if(result == CURLE_AGAIN) {
- *err = result;
- return -1;
- }
- if(nread == -1) {
- failf(data, "Failed receiving HTTP2 data");
- *err = result;
- return 0;
- }
+ conn->proto.httpc.mem = mem;
+ conn->proto.httpc.len = len;
- if(nread == 0) {
- failf(data, "Unexpected EOF");
- *err = CURLE_RECV_ERROR;
- return -1;
- }
+ infof(conn->data, "http2_recv: %d bytes buffer\n",
+ conn->proto.httpc.len);
- DEBUGF(infof(data, "nread=%zd\n", nread));
+ nread = ((Curl_recv*)httpc->recv_underlying)(conn, FIRSTSOCKET,
+ httpc->inbuf, H2_BUFSIZE,
+ &result);
+ if(result == CURLE_AGAIN) {
+ *err = result;
+ return -1;
+ }
- httpc->inbuflen = nread;
- inbuf = httpc->inbuf;
- }
- else {
- nread = httpc->inbuflen - httpc->nread_inbuf;
- inbuf = httpc->inbuf + httpc->nread_inbuf;
+ if(nread == -1) {
+ failf(conn->data, "Failed receiving HTTP2 data");
+ *err = result;
+ return 0;
+ }
- DEBUGF(infof(data, "Use data left in connection buffer, nread=%zd\n",
- nread));
- }
- rv = nghttp2_session_mem_recv(httpc->h2, (const uint8_t *)inbuf, nread);
+ infof(conn->data, "nread=%zd\n", nread);
- if(nghttp2_is_fatal((int)rv)) {
- failf(data, "nghttp2_session_mem_recv() returned %d:%s\n",
- rv, nghttp2_strerror((int)rv));
- *err = CURLE_RECV_ERROR;
- return 0;
- }
- DEBUGF(infof(data, "nghttp2_session_mem_recv() returns %zd\n", rv));
- if(nread == rv) {
- DEBUGF(infof(data, "All data in connection buffer processed\n"));
- httpc->inbuflen = 0;
- httpc->nread_inbuf = 0;
- }
- else {
- httpc->nread_inbuf += rv;
- DEBUGF(infof(data, "%zu bytes left in connection buffer\n",
- httpc->inbuflen - httpc->nread_inbuf));
- }
- /* Always send pending frames in nghttp2 session, because
- nghttp2_session_mem_recv() may queue new frame */
- rv = nghttp2_session_send(httpc->h2);
- if(rv != 0) {
- *err = CURLE_SEND_ERROR;
- return 0;
- }
+ if(nread == 0) {
+ failf(conn->data, "EOF");
+ return 0;
}
- if(stream->memlen) {
- ssize_t retlen = stream->memlen;
- infof(data, "http2_recv: returns %zd for stream %u\n",
- retlen, stream->stream_id);
- stream->memlen = 0;
-
- if(httpc->pause_stream_id == stream->stream_id) {
- /* data for this stream is returned now, but this stream caused a pause
- already so we need it called again asap */
- DEBUGF(infof(data, "Data returned for PAUSED stream %u\n",
- stream->stream_id));
- }
- else
- data->state.drain = 0; /* this stream is hereby drained */
- return retlen;
+ rv = nghttp2_session_mem_recv(httpc->h2,
+ (const uint8_t *)httpc->inbuf, nread);
+
+ if(nghttp2_is_fatal((int)rv)) {
+ failf(conn->data, "nghttp2_session_mem_recv() returned %d:%s\n",
+ rv, nghttp2_strerror((int)rv));
+ *err = CURLE_RECV_ERROR;
+ return 0;
+ }
+ infof(conn->data, "nghttp2_session_mem_recv() returns %zd\n", rv);
+ /* Always send pending frames in nghttp2 session, because
+ nghttp2_session_mem_recv() may queue new frame */
+ rv = nghttp2_session_send(httpc->h2);
+ if(rv != 0) {
+ *err = CURLE_SEND_ERROR;
+ return 0;
+ }
+ if(len != httpc->len) {
+ return len - conn->proto.httpc.len;
}
/* If stream is closed, return 0 to signal the http routine to close
the connection */
- if(stream->closed) {
- return http2_handle_stream_close(httpc, data, stream, err);
+ if(httpc->closed) {
+ /* Reset to FALSE to prevent infinite loop in readwrite_data
+ function. */
+ httpc->closed = FALSE;
+ return 0;
}
*err = CURLE_AGAIN;
- DEBUGF(infof(data, "http2_recv returns AGAIN for stream %u\n",
- stream->stream_id));
return -1;
}
@@ -1195,7 +796,6 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
*/
int rv;
struct http_conn *httpc = &conn->proto.httpc;
- struct HTTP *stream = conn->data->req.protop;
nghttp2_nv *nva;
size_t nheader;
size_t i;
@@ -1204,41 +804,23 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
char *end;
nghttp2_data_provider data_prd;
int32_t stream_id;
- nghttp2_session *h2 = httpc->h2;
(void)sockindex;
- DEBUGF(infof(conn->data, "http2_send len=%zu\n", len));
+ infof(conn->data, "http2_send len=%zu\n", len);
- if(stream->stream_id != -1) {
+ if(httpc->stream_id != -1) {
/* If stream_id != -1, we have dispatched request HEADERS, and now
are going to send or sending request body in DATA frame */
- stream->upload_mem = mem;
- stream->upload_len = len;
- nghttp2_session_resume_data(h2, stream->stream_id);
- rv = nghttp2_session_send(h2);
+ httpc->upload_mem = mem;
+ httpc->upload_len = len;
+ nghttp2_session_resume_data(httpc->h2, httpc->stream_id);
+ rv = nghttp2_session_send(httpc->h2);
if(nghttp2_is_fatal(rv)) {
*err = CURLE_SEND_ERROR;
return -1;
}
- len -= stream->upload_len;
-
- /* Nullify here because we call nghttp2_session_send() and they
- might refer to the old buffer. */
- stream->upload_mem = NULL;
- stream->upload_len = 0;
-
- if(stream->upload_left) {
- /* we are sure that we have more data to send here. Calling the
- following API will make nghttp2_session_want_write() return
- nonzero if remote window allows it, which then libcurl checks
- socket is writable or not. See http2_perform_getsock(). */
- nghttp2_session_resume_data(h2, stream->stream_id);
- }
-
- DEBUGF(infof(conn->data, "http2_send returns %zu for stream %u\n", len,
- stream->stream_id));
- return len;
+ return len - httpc->upload_len;
}
/* Calculate number of headers contained in [mem, mem + len) */
@@ -1261,8 +843,6 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
}
/* Extract :method, :path from request line */
end = strchr(hdbuf, ' ');
- if(!end)
- goto fail;
nva[0].name = (unsigned char *)":method";
nva[0].namelen = (uint16_t)strlen((char *)nva[0].name);
nva[0].value = (unsigned char *)hdbuf;
@@ -1272,8 +852,6 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
hdbuf = end + 1;
end = strchr(hdbuf, ' ');
- if(!end)
- goto fail;
nva[1].name = (unsigned char *)":path";
nva[1].namelen = (uint16_t)strlen((char *)nva[1].name);
nva[1].value = (unsigned char *)hdbuf;
@@ -1290,16 +868,13 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
nva[2].flags = NGHTTP2_NV_FLAG_NONE;
hdbuf = strchr(hdbuf, 0x0a);
- if(!hdbuf)
- goto fail;
++hdbuf;
authority_idx = 0;
for(i = 3; i < nheader; ++i) {
end = strchr(hdbuf, ':');
- if(!end)
- goto fail;
+ assert(end);
if(end - hdbuf == 4 && Curl_raw_nequal("host", hdbuf, 4)) {
authority_idx = i;
nva[i].name = (unsigned char *)":authority";
@@ -1312,8 +887,7 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
hdbuf = end + 1;
for(; *hdbuf == ' '; ++hdbuf);
end = strchr(hdbuf, 0x0d);
- if(!end)
- goto fail;
+ assert(end);
nva[i].value = (unsigned char *)hdbuf;
nva[i].valuelen = (uint16_t)(end - hdbuf);
nva[i].flags = NGHTTP2_NV_FLAG_NONE;
@@ -1325,15 +899,11 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
if(nva[i].namelen == 14 &&
Curl_raw_nequal("content-length", (char*)nva[i].name, 14)) {
size_t j;
- stream->upload_left = 0;
for(j = 0; j < nva[i].valuelen; ++j) {
- stream->upload_left *= 10;
- stream->upload_left += nva[i].value[j] - '0';
+ httpc->upload_left *= 10;
+ httpc->upload_left += nva[i].value[j] - '0';
}
- DEBUGF(infof(conn->data,
- "request content-length=%"
- CURL_FORMAT_CURL_OFF_T
- "\n", stream->upload_left));
+ infof(conn->data, "request content-length=%zu\n", httpc->upload_left);
}
}
@@ -1352,34 +922,31 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
case HTTPREQ_PUT:
data_prd.read_callback = data_source_read_callback;
data_prd.source.ptr = NULL;
- stream_id = nghttp2_submit_request(h2, NULL, nva, nheader,
- &data_prd, conn->data);
+ stream_id = nghttp2_submit_request(httpc->h2, NULL, nva, nheader,
+ &data_prd, NULL);
break;
default:
- stream_id = nghttp2_submit_request(h2, NULL, nva, nheader,
- NULL, conn->data);
+ stream_id = nghttp2_submit_request(httpc->h2, NULL, nva, nheader,
+ NULL, NULL);
}
Curl_safefree(nva);
if(stream_id < 0) {
- DEBUGF(infof(conn->data, "http2_send() send error\n"));
*err = CURLE_SEND_ERROR;
return -1;
}
- infof(conn->data, "Using Stream ID: %x (easy handle %p)\n",
- stream_id, conn->data);
- stream->stream_id = stream_id;
+ httpc->stream_id = stream_id;
- rv = nghttp2_session_send(h2);
+ rv = nghttp2_session_send(httpc->h2);
if(rv != 0) {
*err = CURLE_SEND_ERROR;
return -1;
}
- if(stream->stream_id != -1) {
+ if(httpc->stream_id != -1) {
/* If whole HEADERS frame was sent off to the underlying socket,
the nghttp2 library calls data_source_read_callback. But only
it found that no data available, so it deferred the DATA
@@ -1388,59 +955,36 @@ static ssize_t http2_send(struct connectdata *conn, int sockindex,
writable socket check is performed. To workaround this, we
issue nghttp2_session_resume_data() here to bring back DATA
transmission from deferred state. */
- nghttp2_session_resume_data(h2, stream->stream_id);
+ nghttp2_session_resume_data(httpc->h2, httpc->stream_id);
}
return len;
-
- fail:
- free(nva);
- *err = CURLE_SEND_ERROR;
- return -1;
}
CURLcode Curl_http2_setup(struct connectdata *conn)
{
- CURLcode result;
struct http_conn *httpc = &conn->proto.httpc;
- struct HTTP *stream = conn->data->req.protop;
-
- stream->stream_id = -1;
-
- if(!stream->header_recvbuf)
- stream->header_recvbuf = Curl_add_buffer_init();
-
- if((conn->handler == &Curl_handler_http2_ssl) ||
- (conn->handler == &Curl_handler_http2))
- return CURLE_OK; /* already done */
-
if(conn->handler->flags & PROTOPT_SSL)
conn->handler = &Curl_handler_http2_ssl;
else
conn->handler = &Curl_handler_http2;
- result = Curl_http2_init(conn);
- if(result)
- return result;
-
- infof(conn->data, "Using HTTP2, server supports multi-use\n");
- stream->upload_left = 0;
- stream->upload_mem = NULL;
- stream->upload_len = 0;
+ infof(conn->data, "Using HTTP2\n");
+ httpc->bodystarted = FALSE;
+ httpc->closed = FALSE;
+ httpc->header_recvbuf = Curl_add_buffer_init();
+ httpc->nread_header_recvbuf = 0;
+ httpc->data = NULL;
+ httpc->datalen = 0;
+ httpc->upload_left = 0;
+ httpc->upload_mem = NULL;
+ httpc->upload_len = 0;
+ httpc->stream_id = -1;
+ httpc->status_code = -1;
- httpc->inbuflen = 0;
- httpc->nread_inbuf = 0;
-
- httpc->pause_stream_id = 0;
-
- conn->bits.multiplex = TRUE; /* at least potentially multiplexed */
conn->httpversion = 20;
- conn->bundle->multiuse = BUNDLE_MULTIPLEX;
- infof(conn->data, "Connection state changed (HTTP/2 confirmed)\n");
- Curl_multi_connchanged(conn->data->multi);
-
- return CURLE_OK;
+ return 0;
}
CURLcode Curl_http2_switched(struct connectdata *conn,
@@ -1449,22 +993,30 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
CURLcode result;
struct http_conn *httpc = &conn->proto.httpc;
int rv;
- ssize_t nproc;
struct SessionHandle *data = conn->data;
- struct HTTP *stream = conn->data->req.protop;
-
- result = Curl_http2_setup(conn);
- if(result)
- return result;
httpc->recv_underlying = (recving)conn->recv[FIRSTSOCKET];
httpc->send_underlying = (sending)conn->send[FIRSTSOCKET];
conn->recv[FIRSTSOCKET] = http2_recv;
conn->send[FIRSTSOCKET] = http2_send;
+ rv = (int) ((Curl_send*)httpc->send_underlying)
+ (conn, FIRSTSOCKET,
+ NGHTTP2_CLIENT_CONNECTION_PREFACE,
+ NGHTTP2_CLIENT_CONNECTION_PREFACE_LEN,
+ &result);
+ if(result)
+ /* TODO: This may get CURLE_AGAIN */
+ return result;
+
+ if(rv != 24) {
+ failf(data, "Only sent partial HTTP2 packet");
+ return CURLE_SEND_ERROR;
+ }
+
if(conn->data->req.upgr101 == UPGR101_RECEIVED) {
/* stream 1 is opened implicitly on upgrade */
- stream->stream_id = 1;
+ httpc->stream_id = 1;
/* queue SETTINGS frame (again) */
rv = nghttp2_session_upgrade(httpc->h2, httpc->binsettings,
httpc->binlen, NULL);
@@ -1473,14 +1025,10 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
nghttp2_strerror(rv), rv);
return CURLE_HTTP2;
}
-
- nghttp2_session_set_stream_user_data(httpc->h2,
- stream->stream_id,
- conn->data);
}
else {
/* stream ID is unknown at this point */
- stream->stream_id = -1;
+ httpc->stream_id = -1;
rv = nghttp2_submit_settings(httpc->h2, NGHTTP2_FLAG_NONE, NULL, 0);
if(rv != 0) {
failf(data, "nghttp2_submit_settings() failed: %s(%d)",
@@ -1489,48 +1037,10 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
}
}
- /* we are going to copy mem to httpc->inbuf. This is required since
- mem is part of buffer pointed by stream->mem, and callbacks
- called by nghttp2_session_mem_recv() will write stream specific
- data into stream->mem, overwriting data already there. */
- if(H2_BUFSIZE < nread) {
- failf(data, "connection buffer size is too small to store data following "
- "HTTP Upgrade response header: buflen=%zu, datalen=%zu",
- H2_BUFSIZE, nread);
- return CURLE_HTTP2;
- }
-
- infof(conn->data, "Copying HTTP/2 data in stream buffer to connection buffer"
- " after upgrade: len=%zu\n",
- nread);
-
- memcpy(httpc->inbuf, mem, nread);
- httpc->inbuflen = nread;
+ rv = (int)nghttp2_session_mem_recv(httpc->h2, (const uint8_t*)mem, nread);
- nproc = nghttp2_session_mem_recv(httpc->h2, (const uint8_t *)httpc->inbuf,
- httpc->inbuflen);
-
- if(nghttp2_is_fatal((int)nproc)) {
+ if(rv != (int)nread) {
failf(data, "nghttp2_session_mem_recv() failed: %s(%d)",
- nghttp2_strerror((int)nproc), (int)nproc);
- return CURLE_HTTP2;
- }
-
- DEBUGF(infof(data, "nghttp2_session_mem_recv() returns %zd\n", nproc));
-
- if((ssize_t)nread == nproc) {
- httpc->inbuflen = 0;
- httpc->nread_inbuf = 0;
- }
- else {
- httpc->nread_inbuf += nproc;
- }
-
- /* Try to send some frames since we may read SETTINGS already. */
- rv = nghttp2_session_send(httpc->h2);
-
- if(rv != 0) {
- failf(data, "nghttp2_session_send() failed: %s(%d)",
nghttp2_strerror(rv), rv);
return CURLE_HTTP2;
}
@@ -1538,25 +1048,4 @@ CURLcode Curl_http2_switched(struct connectdata *conn,
return CURLE_OK;
}
-#else /* !USE_NGHTTP2 */
-
-/* Satisfy external references even if http2 is not compiled in. */
-
-#define CURL_DISABLE_TYPECHECK
-#include <curl/curl.h>
-
-char *curl_pushheader_bynum(struct curl_pushheaders *h, size_t num)
-{
- (void) h;
- (void) num;
- return NULL;
-}
-
-char *curl_pushheader_byname(struct curl_pushheaders *h, const char *header)
-{
- (void) h;
- (void) header;
- return NULL;
-}
-
-#endif /* USE_NGHTTP2 */
+#endif
diff --git a/lib/http2.h b/lib/http2.h
index bb7ad9c4c..a2e4eb7c2 100644
--- a/lib/http2.h
+++ b/lib/http2.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -26,11 +26,6 @@
#ifdef USE_NGHTTP2
#include "http.h"
-
-/* value for MAX_CONCURRENT_STREAMS we use until we get an updated setting
- from the peer */
-#define DEFAULT_MAX_CONCURRENT_STREAMS 13
-
/*
* Store nghttp2 version info in this buffer, Prefix with a space. Return
* total length written.
@@ -44,17 +39,12 @@ CURLcode Curl_http2_request_upgrade(Curl_send_buffer *req,
CURLcode Curl_http2_setup(struct connectdata *conn);
CURLcode Curl_http2_switched(struct connectdata *conn,
const char *data, size_t nread);
-/* called from Curl_http_setup_conn */
-void Curl_http2_setup_conn(struct connectdata *conn);
-void Curl_http2_setup_req(struct SessionHandle *data);
#else /* USE_NGHTTP2 */
#define Curl_http2_init(x) CURLE_UNSUPPORTED_PROTOCOL
#define Curl_http2_send_request(x) CURLE_UNSUPPORTED_PROTOCOL
#define Curl_http2_request_upgrade(x,y) CURLE_UNSUPPORTED_PROTOCOL
#define Curl_http2_setup(x) CURLE_UNSUPPORTED_PROTOCOL
#define Curl_http2_switched(x,y,z) CURLE_UNSUPPORTED_PROTOCOL
-#define Curl_http2_setup_conn(x)
-#define Curl_http2_setup_req(x)
#endif
#endif /* HEADER_CURL_HTTP2_H */
diff --git a/lib/http_chunks.c b/lib/http_chunks.c
index 7e91b37dc..61a6098a7 100644
--- a/lib/http_chunks.c
+++ b/lib/http_chunks.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -29,12 +29,15 @@
#include "content_encoding.h"
#include "http.h"
+#include "curl_memory.h"
#include "non-ascii.h" /* for Curl_convert_to_network prototype */
#include "strtoofft.h"
#include "warnless.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -155,7 +158,7 @@ CHUNKcode Curl_httpchunk_read(struct connectdata *conn,
if(result) {
/* Curl_convert_from_network calls failf if unsuccessful */
/* Treat it as a bad hex character */
- return CHUNKE_ILLEGAL_HEX;
+ return CHUNKE_ILLEGAL_HEX ;
}
ch->datasize=curlx_strtoofft(ch->hexbuffer, &endptr, 16);
@@ -218,6 +221,7 @@ CHUNKcode Curl_httpchunk_read(struct connectdata *conn,
(ssize_t)piece);
break;
+ case COMPRESS:
default:
failf (conn->data,
"Unrecognized content encoding type. "
diff --git a/lib/http_digest.c b/lib/http_digest.c
index 929e2c60f..ba59e5d14 100644
--- a/lib/http_digest.c
+++ b/lib/http_digest.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -28,10 +28,12 @@
#include "rawstr.h"
#include "curl_sasl.h"
#include "http_digest.h"
-#include "curl_printf.h"
-
-/* The last #include files should be: */
#include "curl_memory.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* Test example headers:
diff --git a/lib/http_negotiate.c b/lib/http_negotiate.c
index a1baf29c3..97d0cb762 100644
--- a/lib/http_negotiate.c
+++ b/lib/http_negotiate.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -22,7 +22,14 @@
#include "curl_setup.h"
-#if defined(HAVE_GSSAPI) && !defined(CURL_DISABLE_HTTP) && defined(USE_SPNEGO)
+#ifdef HAVE_GSSAPI
+
+#if !defined(CURL_DISABLE_HTTP) && defined(USE_SPNEGO)
+
+#ifdef HAVE_OLD_GSSMIT
+#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
+#define NCOMPAT 1
+#endif
#include "urldata.h"
#include "sendf.h"
@@ -30,24 +37,52 @@
#include "rawstr.h"
#include "curl_base64.h"
#include "http_negotiate.h"
-#include "curl_sasl.h"
+#include "curl_memory.h"
#include "url.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
-CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
- const char *header)
+static int
+get_gss_name(struct connectdata *conn, bool proxy, gss_name_t *server)
+{
+ OM_uint32 major_status, minor_status;
+ gss_buffer_desc token = GSS_C_EMPTY_BUFFER;
+ char name[2048];
+ const char* service = "HTTP";
+
+ token.length = strlen(service) + 1 + strlen(proxy ? conn->proxy.name :
+ conn->host.name) + 1;
+ if(token.length + 1 > sizeof(name))
+ return EMSGSIZE;
+
+ snprintf(name, sizeof(name), "%s@%s", service, proxy ? conn->proxy.name :
+ conn->host.name);
+
+ token.value = (void *) name;
+ major_status = gss_import_name(&minor_status,
+ &token,
+ GSS_C_NT_HOSTBASED_SERVICE,
+ server);
+
+ return GSS_ERROR(major_status) ? -1 : 0;
+}
+
+/* returning zero (0) means success, everything else is treated as "failure"
+ with no care exactly what the failure was */
+int Curl_input_negotiate(struct connectdata *conn, bool proxy,
+ const char *header)
{
struct SessionHandle *data = conn->data;
struct negotiatedata *neg_ctx = proxy?&data->state.proxyneg:
&data->state.negotiate;
OM_uint32 major_status, minor_status, discard_st;
- gss_buffer_desc spn_token = GSS_C_EMPTY_BUFFER;
gss_buffer_desc input_token = GSS_C_EMPTY_BUFFER;
gss_buffer_desc output_token = GSS_C_EMPTY_BUFFER;
+ int ret;
size_t len;
size_t rawlen = 0;
CURLcode result;
@@ -57,36 +92,12 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
* rejected it (since we're again here). Exit with an error since we
* can't invent anything better */
Curl_cleanup_negotiate(data);
- return CURLE_LOGIN_DENIED;
+ return -1;
}
- if(!neg_ctx->server_name) {
- /* Generate our SPN */
- char *spn = Curl_sasl_build_gssapi_spn(
- proxy ? data->set.str[STRING_PROXY_SERVICE_NAME] :
- data->set.str[STRING_SERVICE_NAME],
- proxy ? conn->proxy.name : conn->host.name);
- if(!spn)
- return CURLE_OUT_OF_MEMORY;
-
- /* Populate the SPN structure */
- spn_token.value = spn;
- spn_token.length = strlen(spn);
-
- /* Import the SPN */
- major_status = gss_import_name(&minor_status, &spn_token,
- GSS_C_NT_HOSTBASED_SERVICE,
- &neg_ctx->server_name);
- if(GSS_ERROR(major_status)) {
- Curl_gss_log_error(data, minor_status, "gss_import_name() failed: ");
-
- free(spn);
-
- return CURLE_OUT_OF_MEMORY;
- }
-
- free(spn);
- }
+ if(neg_ctx->server_name == NULL &&
+ (ret = get_gss_name(conn, proxy, &neg_ctx->server_name)))
+ return ret;
header += strlen("Negotiate");
while(*header && ISSPACE(*header))
@@ -96,15 +107,8 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
if(len > 0) {
result = Curl_base64_decode(header, (unsigned char **)&input_token.value,
&rawlen);
- if(result)
- return result;
-
- if(!rawlen) {
- infof(data, "Negotiate handshake failure (empty challenge message)\n");
-
- return CURLE_BAD_CONTENT_ENCODING;
- }
-
+ if(result || rawlen == 0)
+ return -1;
input_token.length = rawlen;
DEBUGASSERT(input_token.value != NULL);
@@ -128,20 +132,20 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
gss_release_buffer(&discard_st, &output_token);
Curl_gss_log_error(conn->data, minor_status,
"gss_init_sec_context() failed: ");
- return CURLE_OUT_OF_MEMORY;
+ return -1;
}
if(!output_token.value || !output_token.length) {
if(output_token.value)
gss_release_buffer(&discard_st, &output_token);
- return CURLE_OUT_OF_MEMORY;
+ return -1;
}
neg_ctx->output_token = output_token;
-
- return CURLE_OK;
+ return 0;
}
+
CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
{
struct negotiatedata *neg_ctx = proxy?&conn->data->state.proxyneg:
@@ -181,7 +185,7 @@ CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
conn->allocptr.userpwd = userp;
}
- free(encoded);
+ Curl_safefree(encoded);
return (userp == NULL) ? CURLE_OUT_OF_MEMORY : CURLE_OK;
}
@@ -207,4 +211,6 @@ void Curl_cleanup_negotiate(struct SessionHandle *data)
cleanup(&data->state.proxyneg);
}
-#endif /* HAVE_GSSAPI && !CURL_DISABLE_HTTP && USE_SPNEGO */
+#endif /* !CURL_DISABLE_HTTP && USE_SPNEGO */
+
+#endif /* HAVE_GSSAPI */
diff --git a/lib/http_negotiate.h b/lib/http_negotiate.h
index a8eb98016..f7efe8cdd 100644
--- a/lib/http_negotiate.h
+++ b/lib/http_negotiate.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -25,8 +25,8 @@
#ifdef USE_SPNEGO
/* this is for Negotiate header input */
-CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
- const char *header);
+int Curl_input_negotiate(struct connectdata *conn, bool proxy,
+ const char *header);
/* this is for creating Negotiate header output */
CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy);
diff --git a/lib/http_negotiate_sspi.c b/lib/http_negotiate_sspi.c
index a50ea96f1..d651ac9c8 100644
--- a/lib/http_negotiate_sspi.c
+++ b/lib/http_negotiate_sspi.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -33,27 +33,30 @@
#include "curl_base64.h"
#include "curl_sasl.h"
#include "http_negotiate.h"
+#include "curl_memory.h"
#include "curl_multibyte.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
-CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
- const char *header)
+/* returning zero (0) means success, everything else is treated as "failure"
+ with no care exactly what the failure was */
+int Curl_input_negotiate(struct connectdata *conn, bool proxy,
+ const char *header)
{
- struct SessionHandle *data = conn->data;
BYTE *input_token = NULL;
SecBufferDesc out_buff_desc;
SecBuffer out_sec_buff;
SecBufferDesc in_buff_desc;
SecBuffer in_sec_buff;
- SECURITY_STATUS status;
- unsigned long attrs;
- TimeStamp expiry; /* For Windows 9x compatibility of SSPI calls */
+ unsigned long context_attributes;
+ TimeStamp expiry;
+ int ret;
size_t len = 0, input_token_len = 0;
- CURLcode result;
+ CURLcode error;
/* Point to the username and password */
const char *userp;
@@ -65,12 +68,12 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
if(proxy) {
userp = conn->proxyuser;
passwdp = conn->proxypasswd;
- neg_ctx = &data->state.proxyneg;
+ neg_ctx = &conn->data->state.proxyneg;
}
else {
userp = conn->user;
passwdp = conn->passwd;
- neg_ctx = &data->state.negotiate;
+ neg_ctx = &conn->data->state.negotiate;
}
/* Not set means empty */
@@ -84,31 +87,29 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
/* We finished successfully our part of authentication, but server
* rejected it (since we're again here). Exit with an error since we
* can't invent anything better */
- Curl_cleanup_negotiate(data);
- return CURLE_LOGIN_DENIED;
+ Curl_cleanup_negotiate(conn->data);
+ return -1;
}
if(!neg_ctx->server_name) {
/* Check proxy auth requested but no given proxy name */
if(proxy && !conn->proxy.name)
- return CURLE_BAD_FUNCTION_ARGUMENT;
+ return -1;
/* Generate our SPN */
- neg_ctx->server_name = Curl_sasl_build_spn(
- proxy ? data->set.str[STRING_PROXY_SERVICE_NAME] :
- data->set.str[STRING_SERVICE_NAME],
- proxy ? conn->proxy.name : conn->host.name);
+ neg_ctx->server_name = Curl_sasl_build_spn("HTTP",
+ proxy ? conn->proxy.name :
+ conn->host.name);
if(!neg_ctx->server_name)
- return CURLE_OUT_OF_MEMORY;
+ return -1;
}
if(!neg_ctx->output_token) {
PSecPkgInfo SecurityPackage;
- status = s_pSecFn->QuerySecurityPackageInfo((TCHAR *)
- TEXT(SP_NAME_NEGOTIATE),
- &SecurityPackage);
- if(status != SEC_E_OK)
- return CURLE_NOT_BUILT_IN;
+ ret = s_pSecFn->QuerySecurityPackageInfo((TCHAR *) TEXT(SP_NAME_NEGOTIATE),
+ &SecurityPackage);
+ if(ret != SEC_E_OK)
+ return -1;
/* Allocate input and output buffers according to the max token size
as indicated by the security package */
@@ -128,7 +129,7 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
if(neg_ctx->context) {
/* The server rejected our authentication and hasn't suppled any more
negotiation mechanisms */
- return CURLE_LOGIN_DENIED;
+ return -1;
}
/* We have to acquire credentials and allocate memory for the context */
@@ -136,13 +137,13 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
neg_ctx->context = malloc(sizeof(CtxtHandle));
if(!neg_ctx->credentials || !neg_ctx->context)
- return CURLE_OUT_OF_MEMORY;
+ return -1;
if(userp && *userp) {
/* Populate our identity structure */
- result = Curl_create_sspi_identity(userp, passwdp, &neg_ctx->identity);
- if(result)
- return result;
+ error = Curl_create_sspi_identity(userp, passwdp, &neg_ctx->identity);
+ if(error)
+ return -1;
/* Allow proper cleanup of the identity structure */
neg_ctx->p_identity = &neg_ctx->identity;
@@ -159,21 +160,14 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
neg_ctx->p_identity, NULL, NULL,
neg_ctx->credentials, &expiry);
if(neg_ctx->status != SEC_E_OK)
- return CURLE_LOGIN_DENIED;
+ return -1;
}
else {
- result = Curl_base64_decode(header,
- (unsigned char **)&input_token,
- &input_token_len);
- if(result)
- return result;
-
- if(!input_token_len) {
- infof(data,
- "Negotiate handshake failure (empty challenge message)\n");
-
- return CURLE_BAD_CONTENT_ENCODING;
- }
+ error = Curl_base64_decode(header,
+ (unsigned char **)&input_token,
+ &input_token_len);
+ if(error || !input_token_len)
+ return -1;
}
/* Setup the "output" security buffer */
@@ -206,27 +200,28 @@ CURLcode Curl_input_negotiate(struct connectdata *conn, bool proxy,
0,
neg_ctx->context,
&out_buff_desc,
- &attrs,
+ &context_attributes,
&expiry);
- free(input_token);
+ Curl_safefree(input_token);
if(GSS_ERROR(neg_ctx->status))
- return CURLE_OUT_OF_MEMORY;
+ return -1;
if(neg_ctx->status == SEC_I_COMPLETE_NEEDED ||
neg_ctx->status == SEC_I_COMPLETE_AND_CONTINUE) {
neg_ctx->status = s_pSecFn->CompleteAuthToken(neg_ctx->context,
&out_buff_desc);
if(GSS_ERROR(neg_ctx->status))
- return CURLE_RECV_ERROR;
+ return -1;
}
neg_ctx->output_token_length = out_sec_buff.cbBuffer;
- return CURLE_OK;
+ return 0;
}
+
CURLcode Curl_output_negotiate(struct connectdata *conn, bool proxy)
{
struct negotiatedata *neg_ctx = proxy?&conn->data->state.proxyneg:
diff --git a/lib/http_proxy.c b/lib/http_proxy.c
index 4373d6284..72123ed99 100644
--- a/lib/http_proxy.c
+++ b/lib/http_proxy.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -35,7 +35,10 @@
#include "progress.h"
#include "non-ascii.h"
#include "connect.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curlx.h"
#include "curl_memory.h"
@@ -68,11 +71,10 @@ CURLcode Curl_proxy_connect(struct connectdata *conn)
conn->data->req.protop = &http_proxy;
connkeep(conn, "HTTP proxy CONNECT");
result = Curl_proxyCONNECT(conn, FIRSTSOCKET,
- conn->host.name, conn->remote_port, FALSE);
+ conn->host.name, conn->remote_port);
conn->data->req.protop = prot_save;
if(CURLE_OK != result)
return result;
- Curl_safefree(conn->allocptr.proxyuserpwd);
#else
return CURLE_NOT_BUILT_IN;
#endif
@@ -85,16 +87,12 @@ CURLcode Curl_proxy_connect(struct connectdata *conn)
* Curl_proxyCONNECT() requires that we're connected to a HTTP proxy. This
* function will issue the necessary commands to get a seamless tunnel through
* this proxy. After that, the socket can be used just as a normal socket.
- *
- * 'blocking' set to TRUE means that this function will do the entire CONNECT
- * + response in a blocking fashion. Should be avoided!
*/
CURLcode Curl_proxyCONNECT(struct connectdata *conn,
int sockindex,
const char *hostname,
- int remote_port,
- bool blocking)
+ int remote_port)
{
int subversion=0;
struct SessionHandle *data=conn->data;
@@ -125,11 +123,13 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
infof(data, "Establish HTTP proxy tunnel to %s:%hu\n",
hostname, remote_port);
+ if(data->req.newurl) {
/* This only happens if we've looped here due to authentication
reasons, and we don't really use the newly cloned URL here
then. Just free() it. */
- free(data->req.newurl);
- data->req.newurl = NULL;
+ free(data->req.newurl);
+ data->req.newurl = NULL;
+ }
/* initialize a dynamic send-buffer */
req_buffer = Curl_add_buffer_init();
@@ -139,7 +139,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
host_port = aprintf("%s:%hu", hostname, remote_port);
if(!host_port) {
- Curl_add_buffer_free(req_buffer);
+ free(req_buffer);
return CURLE_OUT_OF_MEMORY;
}
@@ -159,7 +159,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
hostname, conn->bits.ipv6_ip?"]":"",
remote_port);
if(!hostheader) {
- Curl_add_buffer_free(req_buffer);
+ free(req_buffer);
return CURLE_OUT_OF_MEMORY;
}
@@ -167,7 +167,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
host = aprintf("Host: %s\r\n", hostheader);
if(!host) {
free(hostheader);
- Curl_add_buffer_free(req_buffer);
+ free(req_buffer);
return CURLE_OUT_OF_MEMORY;
}
}
@@ -216,7 +216,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
failf(data, "Failed sending CONNECT to proxy");
}
- Curl_add_buffer_free(req_buffer);
+ Curl_safefree(req_buffer);
if(result)
return result;
@@ -229,14 +229,12 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
return CURLE_RECV_ERROR;
}
- if(!blocking) {
- if(0 == Curl_socket_ready(tunnelsocket, CURL_SOCKET_BAD, 0))
- /* return so we'll be called again polling-style */
- return CURLE_OK;
- else {
- DEBUGF(infof(data,
- "Read response immediately from proxy CONNECT\n"));
- }
+ if(0 == Curl_socket_ready(tunnelsocket, CURL_SOCKET_BAD, 0))
+ /* return so we'll be called again polling-style */
+ return CURLE_OK;
+ else {
+ DEBUGF(infof(data,
+ "Read response immediately from proxy CONNECT\n"));
}
/* at this point, the tunnel_connecting phase is over. */
@@ -287,7 +285,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
/* proxy auth was requested and there was proxy auth available,
then deem this as "mere" proxy disconnect */
conn->bits.proxy_connect_closed = TRUE;
- infof(data, "Proxy CONNECT connection closed\n");
+ infof(data, "Proxy CONNECT connection closed");
}
else {
error = SELECT_ERROR;
@@ -469,7 +467,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
result = Curl_http_input_auth(conn, proxy, auth);
- free(auth);
+ Curl_safefree(auth);
if(result)
return result;
@@ -556,8 +554,11 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
infof(data, "Connect me again please\n");
}
else {
- free(data->req.newurl);
- data->req.newurl = NULL;
+ if(data->req.newurl) {
+ /* this won't be used anymore for the CONNECT so free it now */
+ free(data->req.newurl);
+ data->req.newurl = NULL;
+ }
/* failure, close this connection to avoid re-use */
connclose(conn, "proxy CONNECT failure");
Curl_closesocket(conn, conn->sock[sockindex]);
diff --git a/lib/http_proxy.h b/lib/http_proxy.h
index 9c4f0207d..2b5e9c9b4 100644
--- a/lib/http_proxy.h
+++ b/lib/http_proxy.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -26,8 +26,7 @@
/* ftp can use this as well */
CURLcode Curl_proxyCONNECT(struct connectdata *conn,
int tunnelsocket,
- const char *hostname, int remote_port,
- bool blocking);
+ const char *hostname, int remote_port);
/* Default proxy timeout in milliseconds */
#define PROXY_TIMEOUT (3600*1000)
@@ -35,7 +34,7 @@ CURLcode Curl_proxyCONNECT(struct connectdata *conn,
CURLcode Curl_proxy_connect(struct connectdata *conn);
#else
-#define Curl_proxyCONNECT(x,y,z,w,v) CURLE_NOT_BUILT_IN
+#define Curl_proxyCONNECT(x,y,z,w) CURLE_NOT_BUILT_IN
#define Curl_proxy_connect(x) CURLE_OK
#endif
diff --git a/lib/if2ip.c b/lib/if2ip.c
index 6e6f9692e..389feed1c 100644
--- a/lib/if2ip.c
+++ b/lib/if2ip.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -53,7 +53,9 @@
#include "inet_ntop.h"
#include "strequal.h"
#include "if2ip.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
diff --git a/lib/imap.c b/lib/imap.c
index e6d83f2cf..767ac804b 100644
--- a/lib/imap.c
+++ b/lib/imap.c
@@ -80,7 +80,9 @@
#include "rawstr.h"
#include "curl_sasl.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
@@ -103,12 +105,10 @@ static CURLcode imap_sendf(struct connectdata *conn, const char *fmt, ...);
static CURLcode imap_parse_url_options(struct connectdata *conn);
static CURLcode imap_parse_url_path(struct connectdata *conn);
static CURLcode imap_parse_custom_request(struct connectdata *conn);
-static CURLcode imap_perform_authenticate(struct connectdata *conn,
- const char *mech,
- const char *initresp);
-static CURLcode imap_continue_authenticate(struct connectdata *conn,
- const char *resp);
-static void imap_get_message(char *buffer, char** outptr);
+static CURLcode imap_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ imapstate *state1, imapstate *state2);
/*
* IMAP protocol handler.
@@ -131,7 +131,7 @@ const struct Curl_handler Curl_handler_imap = {
ZERO_NULL, /* readwrite */
PORT_IMAP, /* defport */
CURLPROTO_IMAP, /* protocol */
- PROTOPT_CLOSEACTION /* flags */
+ PROTOPT_CLOSEACTION | PROTOPT_NEEDSPWD /* flags */
};
#ifdef USE_SSL
@@ -156,7 +156,8 @@ const struct Curl_handler Curl_handler_imaps = {
ZERO_NULL, /* readwrite */
PORT_IMAPS, /* defport */
CURLPROTO_IMAPS, /* protocol */
- PROTOPT_CLOSEACTION | PROTOPT_SSL /* flags */
+ PROTOPT_CLOSEACTION | PROTOPT_SSL |
+ PROTOPT_NEEDSPWD /* flags */
};
#endif
@@ -212,18 +213,6 @@ static const struct Curl_handler Curl_handler_imaps_proxy = {
#endif
#endif
-/* SASL parameters for the imap protocol */
-static const struct SASLproto saslimap = {
- "imap", /* The service name */
- '+', /* Code received when continuation is expected */
- 'O', /* Code to receive upon authentication success */
- 0, /* Maximum initial response length (no max) */
- imap_perform_authenticate, /* Send authentication command */
- imap_continue_authenticate, /* Send authentication continuation */
- imap_get_message /* Get SASL response message */
-};
-
-
#ifdef USE_SSL
static void imap_to_imaps(struct connectdata *conn)
{
@@ -364,7 +353,16 @@ static bool imap_endofresp(struct connectdata *conn, char *line, size_t len,
(len >= 2 && !memcmp("+ ", line, 2))) {
switch(imapc->state) {
/* States which are interested in continuation responses */
- case IMAP_AUTHENTICATE:
+ case IMAP_AUTHENTICATE_PLAIN:
+ case IMAP_AUTHENTICATE_LOGIN:
+ case IMAP_AUTHENTICATE_LOGIN_PASSWD:
+ case IMAP_AUTHENTICATE_CRAMMD5:
+ case IMAP_AUTHENTICATE_DIGESTMD5:
+ case IMAP_AUTHENTICATE_DIGESTMD5_RESP:
+ case IMAP_AUTHENTICATE_NTLM:
+ case IMAP_AUTHENTICATE_NTLM_TYPE2MSG:
+ case IMAP_AUTHENTICATE_XOAUTH2:
+ case IMAP_AUTHENTICATE_FINAL:
case IMAP_APPEND:
*resp = '+';
break;
@@ -427,7 +425,20 @@ static void state(struct connectdata *conn, imapstate newstate)
"CAPABILITY",
"STARTTLS",
"UPGRADETLS",
- "AUTHENTICATE",
+ "AUTHENTICATE_PLAIN",
+ "AUTHENTICATE_LOGIN",
+ "AUTHENTICATE_LOGIN_PASSWD",
+ "AUTHENTICATE_CRAMMD5",
+ "AUTHENTICATE_DIGESTMD5",
+ "AUTHENTICATE_DIGESTMD5_RESP",
+ "AUTHENTICATE_NTLM",
+ "AUTHENTICATE_NTLM_TYPE2MSG",
+ "AUTHENTICATE_GSSAPI",
+ "AUTHENTICATE_GSSAPI_TOKEN",
+ "AUTHENTICATE_GSSAPI_NO_DATA",
+ "AUTHENTICATE_XOAUTH2",
+ "AUTHENTICATE_CANCEL",
+ "AUTHENTICATE_FINAL",
"LOGIN",
"LIST",
"SELECT",
@@ -460,9 +471,9 @@ static CURLcode imap_perform_capability(struct connectdata *conn)
CURLcode result = CURLE_OK;
struct imap_conn *imapc = &conn->proto.imapc;
- imapc->sasl.authmechs = SASL_AUTH_NONE; /* No known auth. mechanisms yet */
- imapc->sasl.authused = SASL_AUTH_NONE; /* Clear the auth. mechanism used */
- imapc->tls_supported = FALSE; /* Clear the TLS capability */
+ imapc->authmechs = 0; /* No known authentication mechanisms yet */
+ imapc->authused = 0; /* Clear the authentication mechanism used */
+ imapc->tls_supported = FALSE; /* Clear the TLS capability */
/* Send the CAPABILITY command */
result = imap_sendf(conn, "CAPABILITY");
@@ -547,8 +558,8 @@ static CURLcode imap_perform_login(struct connectdata *conn)
result = imap_sendf(conn, "LOGIN %s %s", user ? user : "",
passwd ? passwd : "");
- free(user);
- free(passwd);
+ Curl_safefree(user);
+ Curl_safefree(passwd);
if(!result)
state(conn, IMAP_LOGIN);
@@ -565,17 +576,24 @@ static CURLcode imap_perform_login(struct connectdata *conn)
*/
static CURLcode imap_perform_authenticate(struct connectdata *conn,
const char *mech,
- const char *initresp)
+ const char *initresp,
+ imapstate state1, imapstate state2)
{
CURLcode result = CURLE_OK;
if(initresp) {
/* Send the AUTHENTICATE command with the initial response */
result = imap_sendf(conn, "AUTHENTICATE %s %s", mech, initresp);
+
+ if(!result)
+ state(conn, state2);
}
else {
/* Send the AUTHENTICATE command */
result = imap_sendf(conn, "AUTHENTICATE %s", mech);
+
+ if(!result)
+ state(conn, state1);
}
return result;
@@ -583,20 +601,6 @@ static CURLcode imap_perform_authenticate(struct connectdata *conn,
/***********************************************************************
*
- * imap_continue_authenticate()
- *
- * Sends SASL continuation data or cancellation.
- */
-static CURLcode imap_continue_authenticate(struct connectdata *conn,
- const char *resp)
-{
- struct imap_conn *imapc = &conn->proto.imapc;
-
- return Curl_pp_sendf(&imapc->pp, "%s", resp);
-}
-
-/***********************************************************************
- *
* imap_perform_authentication()
*
* Initiates the authentication sequence, with the appropriate SASL
@@ -607,22 +611,31 @@ static CURLcode imap_perform_authentication(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct imap_conn *imapc = &conn->proto.imapc;
- saslprogress progress;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ imapstate state1 = IMAP_STOP;
+ imapstate state2 = IMAP_STOP;
- /* Check we have enough data to authenticate with and end the
+ /* Check we have a username and password to authenticate with and end the
connect phase if we don't */
- if(!Curl_sasl_can_authenticate(&imapc->sasl, conn)) {
+ if(!conn->bits.user_passwd) {
state(conn, IMAP_STOP);
+
return result;
}
/* Calculate the SASL login details */
- result = Curl_sasl_start(&imapc->sasl, conn, imapc->ir_supported, &progress);
+ result = imap_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
if(!result) {
- if(progress == SASL_INPROGRESS)
- state(conn, IMAP_AUTHENTICATE);
- else if(!imapc->login_disabled && (imapc->preftype & IMAP_TYPE_CLEARTEXT))
+ if(mech && (imapc->preftype & IMAP_TYPE_SASL)) {
+ /* Perform SASL based authentication */
+ result = imap_perform_authenticate(conn, mech, initresp, state1, state2);
+ }
+ else if((!imapc->login_disabled) &&
+ (imapc->preftype & IMAP_TYPE_CLEARTEXT))
/* Perform clear text authentication */
result = imap_perform_login(conn);
else {
@@ -632,6 +645,8 @@ static CURLcode imap_perform_authentication(struct connectdata *conn)
}
}
+ Curl_safefree(initresp);
+
return result;
}
@@ -661,7 +676,7 @@ static CURLcode imap_perform_list(struct connectdata *conn)
/* Send the LIST command */
result = imap_sendf(conn, "LIST \"%s\" *", mailbox);
- free(mailbox);
+ Curl_safefree(mailbox);
}
if(!result)
@@ -702,7 +717,7 @@ static CURLcode imap_perform_select(struct connectdata *conn)
/* Send the SELECT command */
result = imap_sendf(conn, "SELECT %s", mailbox);
- free(mailbox);
+ Curl_safefree(mailbox);
if(!result)
state(conn, IMAP_SELECT);
@@ -777,7 +792,7 @@ static CURLcode imap_perform_append(struct connectdata *conn)
result = imap_sendf(conn, "APPEND %s (\\Seen) {%" CURL_FORMAT_CURL_OFF_T "}",
mailbox, conn->data->state.infilesize);
- free(mailbox);
+ Curl_safefree(mailbox);
if(!result)
state(conn, IMAP_APPEND);
@@ -899,16 +914,26 @@ static CURLcode imap_state_capability_resp(struct connectdata *conn,
/* Do we have a SASL based authentication mechanism? */
else if(wordlen > 5 && !memcmp(line, "AUTH=", 5)) {
- size_t llen;
- unsigned int mechbit;
-
line += 5;
wordlen -= 5;
/* Test the word for a matching authentication mechanism */
- if((mechbit = Curl_sasl_decode_mech(line, wordlen, &llen)) &&
- llen == wordlen)
- imapc->sasl.authmechs |= mechbit;
+ if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_LOGIN))
+ imapc->authmechs |= SASL_MECH_LOGIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_PLAIN))
+ imapc->authmechs |= SASL_MECH_PLAIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_CRAM_MD5))
+ imapc->authmechs |= SASL_MECH_CRAM_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_DIGEST_MD5))
+ imapc->authmechs |= SASL_MECH_DIGEST_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_GSSAPI))
+ imapc->authmechs |= SASL_MECH_GSSAPI;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_EXTERNAL))
+ imapc->authmechs |= SASL_MECH_EXTERNAL;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_NTLM))
+ imapc->authmechs |= SASL_MECH_NTLM;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_XOAUTH2))
+ imapc->authmechs |= SASL_MECH_XOAUTH2;
}
line += wordlen;
@@ -961,36 +986,569 @@ static CURLcode imap_state_starttls_resp(struct connectdata *conn,
return result;
}
-/* For SASL authentication responses */
-static CURLcode imap_state_auth_resp(struct connectdata *conn,
- int imapcode,
- imapstate instate)
+/* For AUTHENTICATE PLAIN (without initial response) responses */
+static CURLcode imap_state_auth_plain_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *plainauth = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied. %c", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_plain_message(data, conn->user, conn->passwd,
+ &plainauth, &len);
+ if(!result && plainauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", plainauth);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+
+ Curl_safefree(plainauth);
+
+ return result;
+}
+
+/* For AUTHENTICATE LOGIN (without initial response) responses */
+static CURLcode imap_state_auth_login_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authuser = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the user message */
+ result = Curl_sasl_create_login_message(data, conn->user,
+ &authuser, &len);
+ if(!result && authuser) {
+ /* Send the user */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", authuser);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_LOGIN_PASSWD);
+ }
+ }
+
+ Curl_safefree(authuser);
+
+ return result;
+}
+
+/* For AUTHENTICATE LOGIN user entry responses */
+static CURLcode imap_state_auth_login_password_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authpasswd = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the password message */
+ result = Curl_sasl_create_login_message(data, conn->passwd,
+ &authpasswd, &len);
+ if(!result && authpasswd) {
+ /* Send the password */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", authpasswd);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+
+ Curl_safefree(authpasswd);
+
+ return result;
+}
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+/* For AUTHENTICATE CRAM-MD5 responses */
+static CURLcode imap_state_auth_cram_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg = NULL;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ imap_get_message(data->state.buffer, &chlg64);
+
+ /* Decode the challenge message */
+ result = Curl_sasl_decode_cram_md5_message(chlg64, &chlg, &len);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_CANCEL);
+ }
+ else {
+ /* Create the response message */
+ result = Curl_sasl_create_cram_md5_message(data, chlg, conn->user,
+ conn->passwd, &rplyb64, &len);
+ if(!result && rplyb64) {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+
+ Curl_safefree(chlg);
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTHENTICATE DIGEST-MD5 challenge responses */
+static CURLcode imap_state_auth_digest_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ imap_get_message(data->state.buffer, &chlg64);
+
+ /* Create the response message */
+ result = Curl_sasl_create_digest_md5_message(data, chlg64,
+ conn->user, conn->passwd,
+ "imap", &rplyb64, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_DIGESTMD5_RESP);
+ }
+
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTHENTICATE DIGEST-MD5 challenge-response responses */
+static CURLcode imap_state_auth_digest_resp_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Authentication failed: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Send an empty response */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", "");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+
+ return result;
+}
+#endif
+
+#ifdef USE_NTLM
+/* For AUTHENTICATE NTLM (without initial response) responses */
+static CURLcode imap_state_auth_ntlm_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *type1msg = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the type-1 message */
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ &type1msg, &len);
+ if(!result && type1msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", type1msg);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_NTLM_TYPE2MSG);
+ }
+ }
+
+ Curl_safefree(type1msg);
+
+ return result;
+}
+
+/* For NTLM type-2 responses (sent in reponse to our type-1 message) */
+static CURLcode imap_state_auth_ntlm_type2msg_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *type2msg = NULL;
+ char *type3msg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ imap_get_message(data->state.buffer, &type2msg);
+
+ /* Decode the type-2 message */
+ result = Curl_sasl_decode_ntlm_type2_message(data, type2msg, &conn->ntlm);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_CANCEL);
+ }
+ else {
+ /* Create the type-3 message */
+ result = Curl_sasl_create_ntlm_type3_message(data, conn->user,
+ conn->passwd, &conn->ntlm,
+ &type3msg, &len);
+ if(!result && type3msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", type3msg);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+ }
+
+ Curl_safefree(type3msg);
+
+ return result;
+}
+#endif
+
+#if defined(USE_KERBEROS5)
+/* For AUTHENTICATE GSSAPI (without initial response) responses */
+static CURLcode imap_state_auth_gssapi_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
{
CURLcode result = CURLE_OK;
struct SessionHandle *data = conn->data;
struct imap_conn *imapc = &conn->proto.imapc;
- saslprogress progress;
+ size_t len = 0;
+ char *respmsg = NULL;
(void)instate; /* no use for this yet */
- result = Curl_sasl_continue(&imapc->sasl, conn, imapcode, &progress);
- if(!result)
- switch(progress) {
- case SASL_DONE:
- state(conn, IMAP_STOP); /* Authenticated */
- break;
- case SASL_IDLE: /* No mechanism left after cancellation */
- if((!imapc->login_disabled) && (imapc->preftype & IMAP_TYPE_CLEARTEXT))
- /* Perform clear text authentication */
- result = imap_perform_login(conn);
- else {
- failf(data, "Authentication cancelled");
- result = CURLE_LOGIN_DENIED;
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the initial response message */
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "imap",
+ imapc->mutual_auth,
+ NULL, &conn->krb5,
+ &respmsg, &len);
+ if(!result && respmsg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&imapc->pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_GSSAPI_TOKEN);
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTHENTICATE GSSAPI user token responses */
+static CURLcode imap_state_auth_gssapi_token_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct imap_conn *imapc = &conn->proto.imapc;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ imap_get_message(data->state.buffer, &chlgmsg);
+
+ if(imapc->mutual_auth)
+ /* Decode the user token challenge and create the optional response
+ message */
+ result = Curl_sasl_create_gssapi_user_message(data, NULL, NULL, NULL,
+ imapc->mutual_auth,
+ chlgmsg, &conn->krb5,
+ &respmsg, &len);
+ else
+ /* Decode the security challenge and create the response message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&imapc->pp, "%s", "*");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_CANCEL);
}
- break;
- default:
- break;
}
+ else {
+ /* Send the response */
+ if(respmsg)
+ result = Curl_pp_sendf(&imapc->pp, "%s", respmsg);
+ else
+ result = Curl_pp_sendf(&imapc->pp, "%s", "");
+
+ if(!result)
+ state(conn, (imapc->mutual_auth ? IMAP_AUTHENTICATE_GSSAPI_NO_DATA :
+ IMAP_AUTHENTICATE_FINAL));
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTHENTICATE GSSAPI no data responses */
+static CURLcode imap_state_auth_gssapi_no_data_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ imap_get_message(data->state.buffer, &chlgmsg);
+
+ /* Decode the security challenge and create the response message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ if(respmsg) {
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+#endif
+
+/* For AUTHENTICATE XOAUTH2 (without initial response) responses */
+static CURLcode imap_state_auth_xoauth2_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *xoauth = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != '+') {
+ failf(data, "Access denied: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_xoauth2_message(conn->data, conn->user,
+ conn->xoauth2_bearer,
+ &xoauth, &len);
+ if(!result && xoauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.imapc.pp, "%s", xoauth);
+
+ if(!result)
+ state(conn, IMAP_AUTHENTICATE_FINAL);
+ }
+ }
+
+ Curl_safefree(xoauth);
+
+ return result;
+}
+
+/* For AUTHENTICATE cancellation responses */
+static CURLcode imap_state_auth_cancel_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct imap_conn *imapc = &conn->proto.imapc;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ imapstate state1 = IMAP_STOP;
+ imapstate state2 = IMAP_STOP;
+
+ (void)imapcode;
+ (void)instate; /* no use for this yet */
+
+ /* Remove the offending mechanism from the supported list */
+ imapc->authmechs ^= imapc->authused;
+
+ /* Calculate alternative SASL login details */
+ result = imap_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
+
+ if(!result) {
+ /* Do we have any mechanisms left or can we fallback to clear text? */
+ if(mech) {
+ /* Retry SASL based authentication */
+ result = imap_perform_authenticate(conn, mech, initresp, state1, state2);
+
+ Curl_safefree(initresp);
+ }
+ else if((!imapc->login_disabled) &&
+ (imapc->preftype & IMAP_TYPE_CLEARTEXT))
+ /* Perform clear text authentication */
+ result = imap_perform_login(conn);
+ else {
+ failf(data, "Authentication cancelled");
+
+ result = CURLE_LOGIN_DENIED;
+ }
+ }
+
+ return result;
+}
+
+/* For final responses in the AUTHENTICATE sequence */
+static CURLcode imap_state_auth_final_resp(struct connectdata *conn,
+ int imapcode,
+ imapstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(imapcode != 'O') {
+ failf(data, "Authentication failed: %d", imapcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else
+ /* End of connect phase */
+ state(conn, IMAP_STOP);
return result;
}
@@ -1314,8 +1872,69 @@ static CURLcode imap_statemach_act(struct connectdata *conn)
result = imap_state_starttls_resp(conn, imapcode, imapc->state);
break;
- case IMAP_AUTHENTICATE:
- result = imap_state_auth_resp(conn, imapcode, imapc->state);
+ case IMAP_AUTHENTICATE_PLAIN:
+ result = imap_state_auth_plain_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_LOGIN:
+ result = imap_state_auth_login_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_LOGIN_PASSWD:
+ result = imap_state_auth_login_password_resp(conn, imapcode,
+ imapc->state);
+ break;
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ case IMAP_AUTHENTICATE_CRAMMD5:
+ result = imap_state_auth_cram_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_DIGESTMD5:
+ result = imap_state_auth_digest_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_DIGESTMD5_RESP:
+ result = imap_state_auth_digest_resp_resp(conn, imapcode, imapc->state);
+ break;
+#endif
+
+#ifdef USE_NTLM
+ case IMAP_AUTHENTICATE_NTLM:
+ result = imap_state_auth_ntlm_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_NTLM_TYPE2MSG:
+ result = imap_state_auth_ntlm_type2msg_resp(conn, imapcode,
+ imapc->state);
+ break;
+#endif
+
+#if defined(USE_KERBEROS5)
+ case IMAP_AUTHENTICATE_GSSAPI:
+ result = imap_state_auth_gssapi_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_GSSAPI_TOKEN:
+ result = imap_state_auth_gssapi_token_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_GSSAPI_NO_DATA:
+ result = imap_state_auth_gssapi_no_data_resp(conn, imapcode,
+ imapc->state);
+ break;
+#endif
+
+ case IMAP_AUTHENTICATE_XOAUTH2:
+ result = imap_state_auth_xoauth2_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_CANCEL:
+ result = imap_state_auth_cancel_resp(conn, imapcode, imapc->state);
+ break;
+
+ case IMAP_AUTHENTICATE_FINAL:
+ result = imap_state_auth_final_resp(conn, imapcode, imapc->state);
break;
case IMAP_LOGIN:
@@ -1442,7 +2061,7 @@ static CURLcode imap_connect(struct connectdata *conn, bool *done)
/* Set the default preferred authentication type and mechanism */
imapc->preftype = IMAP_TYPE_ANY;
- Curl_sasl_init(&imapc->sasl, &saslimap);
+ imapc->prefmech = SASL_AUTH_ANY;
/* Initialise the pingpong layer */
Curl_pp_init(pp);
@@ -1655,7 +2274,7 @@ static CURLcode imap_disconnect(struct connectdata *conn, bool dead_connection)
Curl_pp_disconnect(&imapc->pp);
/* Cleanup the SASL module */
- Curl_sasl_cleanup(conn, imapc->sasl.authused);
+ Curl_sasl_cleanup(conn, imapc->authused);
/* Cleanup our connection based variables */
Curl_safefree(imapc->mailbox);
@@ -1800,7 +2419,7 @@ static CURLcode imap_sendf(struct connectdata *conn, const char *fmt, ...)
result = Curl_pp_vsendf(&imapc->pp, taggedfmt, ap);
va_end(ap);
- free(taggedfmt);
+ Curl_safefree(taggedfmt);
return result;
}
@@ -1929,42 +2548,69 @@ static CURLcode imap_parse_url_options(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct imap_conn *imapc = &conn->proto.imapc;
- const char *ptr = conn->options;
-
- imapc->sasl.resetprefs = TRUE;
+ const char *options = conn->options;
+ const char *ptr = options;
+ bool reset = TRUE;
- while(!result && ptr && *ptr) {
+ while(ptr && *ptr) {
const char *key = ptr;
- const char *value;
while(*ptr && *ptr != '=')
ptr++;
- value = ptr + 1;
+ if(strnequal(key, "AUTH", 4)) {
+ size_t len = 0;
+ const char *value = ++ptr;
- while(*ptr && *ptr != ';')
- ptr++;
+ if(reset) {
+ reset = FALSE;
+ imapc->preftype = IMAP_TYPE_NONE;
+ imapc->prefmech = SASL_AUTH_NONE;
+ }
- if(strnequal(key, "AUTH=", 5))
- result = Curl_sasl_parse_url_auth_option(&imapc->sasl,
- value, ptr - value);
- else
- result = CURLE_URL_MALFORMAT;
+ while(*ptr && *ptr != ';') {
+ ptr++;
+ len++;
+ }
- if(*ptr == ';')
- ptr++;
- }
+ if(strnequal(value, "*", len)) {
+ imapc->preftype = IMAP_TYPE_ANY;
+ imapc->prefmech = SASL_AUTH_ANY;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_LOGIN, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_LOGIN;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_PLAIN, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_PLAIN;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_CRAM_MD5, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_CRAM_MD5;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_DIGEST_MD5, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_DIGEST_MD5;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_GSSAPI, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_GSSAPI;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_NTLM, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_NTLM;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_XOAUTH2, len)) {
+ imapc->preftype = IMAP_TYPE_SASL;
+ imapc->prefmech |= SASL_MECH_XOAUTH2;
+ }
- switch(imapc->sasl.prefmech) {
- case SASL_AUTH_NONE:
- imapc->preftype = IMAP_TYPE_NONE;
- break;
- case SASL_AUTH_DEFAULT:
- imapc->preftype = IMAP_TYPE_ANY;
- break;
- default:
- imapc->preftype = IMAP_TYPE_SASL;
- break;
+ if(*ptr == ';')
+ ptr++;
+ }
+ else
+ result = CURLE_URL_MALFORMAT;
}
return result;
@@ -2031,7 +2677,7 @@ static CURLcode imap_parse_url_path(struct connectdata *conn)
/* Decode the value parameter */
result = Curl_urldecode(data, begin, ptr - begin, &value, &valuelen, TRUE);
if(result) {
- free(name);
+ Curl_safefree(name);
return result;
}
@@ -2070,14 +2716,14 @@ static CURLcode imap_parse_url_path(struct connectdata *conn)
value = NULL;
}
else {
- free(name);
- free(value);
+ Curl_safefree(name);
+ Curl_safefree(value);
return CURLE_URL_MALFORMAT;
}
- free(name);
- free(value);
+ Curl_safefree(name);
+ Curl_safefree(value);
}
/* Does the URL contain a query parameter? Only valid when we have a mailbox
@@ -2139,4 +2785,108 @@ static CURLcode imap_parse_custom_request(struct connectdata *conn)
return result;
}
+/***********************************************************************
+ *
+ * imap_calc_sasl_details()
+ *
+ * Calculate the required login details for SASL authentication.
+ */
+static CURLcode imap_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ imapstate *state1, imapstate *state2)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct imap_conn *imapc = &conn->proto.imapc;
+
+ /* Calculate the supported authentication mechanism, by decreasing order of
+ security, as well as the initial response where appropriate */
+#if defined(USE_KERBEROS5)
+ if((imapc->authmechs & SASL_MECH_GSSAPI) &&
+ (imapc->prefmech & SASL_MECH_GSSAPI)) {
+ imapc->mutual_auth = FALSE; /* TODO: Calculate mutual authentication */
+
+ *mech = SASL_MECH_STRING_GSSAPI;
+ *state1 = IMAP_AUTHENTICATE_GSSAPI;
+ *state2 = IMAP_AUTHENTICATE_GSSAPI_TOKEN;
+ imapc->authused = SASL_MECH_GSSAPI;
+
+ if(imapc->ir_supported || data->set.sasl_ir)
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "imap",
+ imapc->mutual_auth,
+ NULL, &conn->krb5,
+ initresp, len);
+ }
+ else
+#endif
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ if((imapc->authmechs & SASL_MECH_DIGEST_MD5) &&
+ (imapc->prefmech & SASL_MECH_DIGEST_MD5)) {
+ *mech = SASL_MECH_STRING_DIGEST_MD5;
+ *state1 = IMAP_AUTHENTICATE_DIGESTMD5;
+ imapc->authused = SASL_MECH_DIGEST_MD5;
+ }
+ else if((imapc->authmechs & SASL_MECH_CRAM_MD5) &&
+ (imapc->prefmech & SASL_MECH_CRAM_MD5)) {
+ *mech = SASL_MECH_STRING_CRAM_MD5;
+ *state1 = IMAP_AUTHENTICATE_CRAMMD5;
+ imapc->authused = SASL_MECH_CRAM_MD5;
+ }
+ else
+#endif
+#ifdef USE_NTLM
+ if((imapc->authmechs & SASL_MECH_NTLM) &&
+ (imapc->prefmech & SASL_MECH_NTLM)) {
+ *mech = SASL_MECH_STRING_NTLM;
+ *state1 = IMAP_AUTHENTICATE_NTLM;
+ *state2 = IMAP_AUTHENTICATE_NTLM_TYPE2MSG;
+ imapc->authused = SASL_MECH_NTLM;
+
+ if(imapc->ir_supported || data->set.sasl_ir)
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ initresp, len);
+ }
+ else
+#endif
+ if(((imapc->authmechs & SASL_MECH_XOAUTH2) &&
+ (imapc->prefmech & SASL_MECH_XOAUTH2) &&
+ (imapc->prefmech != SASL_AUTH_ANY)) || conn->xoauth2_bearer) {
+ *mech = SASL_MECH_STRING_XOAUTH2;
+ *state1 = IMAP_AUTHENTICATE_XOAUTH2;
+ *state2 = IMAP_AUTHENTICATE_FINAL;
+ imapc->authused = SASL_MECH_XOAUTH2;
+
+ if(imapc->ir_supported || data->set.sasl_ir)
+ result = Curl_sasl_create_xoauth2_message(data, conn->user,
+ conn->xoauth2_bearer,
+ initresp, len);
+ }
+ else if((imapc->authmechs & SASL_MECH_LOGIN) &&
+ (imapc->prefmech & SASL_MECH_LOGIN)) {
+ *mech = SASL_MECH_STRING_LOGIN;
+ *state1 = IMAP_AUTHENTICATE_LOGIN;
+ *state2 = IMAP_AUTHENTICATE_LOGIN_PASSWD;
+ imapc->authused = SASL_MECH_LOGIN;
+
+ if(imapc->ir_supported || data->set.sasl_ir)
+ result = Curl_sasl_create_login_message(data, conn->user, initresp, len);
+ }
+ else if((imapc->authmechs & SASL_MECH_PLAIN) &&
+ (imapc->prefmech & SASL_MECH_PLAIN)) {
+ *mech = SASL_MECH_STRING_PLAIN;
+ *state1 = IMAP_AUTHENTICATE_PLAIN;
+ *state2 = IMAP_AUTHENTICATE_FINAL;
+ imapc->authused = SASL_MECH_PLAIN;
+
+ if(imapc->ir_supported || data->set.sasl_ir)
+ result = Curl_sasl_create_plain_message(data, conn->user, conn->passwd,
+ initresp, len);
+ }
+
+ return result;
+}
+
#endif /* CURL_DISABLE_IMAP */
diff --git a/lib/imap.h b/lib/imap.h
index 3189daa3c..768fc4b8c 100644
--- a/lib/imap.h
+++ b/lib/imap.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2009 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2009 - 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
@@ -23,7 +23,6 @@
***************************************************************************/
#include "pingpong.h"
-#include "curl_sasl.h"
/****************************************************************************
* IMAP unique setup
@@ -36,7 +35,20 @@ typedef enum {
IMAP_STARTTLS,
IMAP_UPGRADETLS, /* asynchronously upgrade the connection to SSL/TLS
(multi mode only) */
- IMAP_AUTHENTICATE,
+ IMAP_AUTHENTICATE_PLAIN,
+ IMAP_AUTHENTICATE_LOGIN,
+ IMAP_AUTHENTICATE_LOGIN_PASSWD,
+ IMAP_AUTHENTICATE_CRAMMD5,
+ IMAP_AUTHENTICATE_DIGESTMD5,
+ IMAP_AUTHENTICATE_DIGESTMD5_RESP,
+ IMAP_AUTHENTICATE_NTLM,
+ IMAP_AUTHENTICATE_NTLM_TYPE2MSG,
+ IMAP_AUTHENTICATE_GSSAPI,
+ IMAP_AUTHENTICATE_GSSAPI_TOKEN,
+ IMAP_AUTHENTICATE_GSSAPI_NO_DATA,
+ IMAP_AUTHENTICATE_XOAUTH2,
+ IMAP_AUTHENTICATE_CANCEL,
+ IMAP_AUTHENTICATE_FINAL,
IMAP_LOGIN,
IMAP_LIST,
IMAP_SELECT,
@@ -71,13 +83,16 @@ struct imap_conn {
struct pingpong pp;
imapstate state; /* Always use imap.c:state() to change state! */
bool ssldone; /* Is connect() over SSL done? */
- struct SASL sasl; /* SASL-related parameters */
+ unsigned int authmechs; /* Accepted authentication mechanisms */
unsigned int preftype; /* Preferred authentication type */
+ unsigned int prefmech; /* Preferred authentication mechanism */
+ unsigned int authused; /* Auth mechanism used for the connection */
int cmdid; /* Last used command ID */
char resptag[5]; /* Response tag to wait for */
bool tls_supported; /* StartTLS capability supported by server */
bool login_disabled; /* LOGIN command disabled by server */
bool ir_supported; /* Initial response supported by server */
+ bool mutual_auth; /* Mutual authentication enabled (GSSAPI only) */
char *mailbox; /* The last selected mailbox */
char *mailbox_uidvalidity; /* UIDVALIDITY parsed from select response */
};
diff --git a/lib/inet_ntop.c b/lib/inet_ntop.c
index da9a3ab43..c32715005 100644
--- a/lib/inet_ntop.c
+++ b/lib/inet_ntop.c
@@ -32,7 +32,8 @@
#include <arpa/inet.h>
#endif
-#include "curl_printf.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "inet_ntop.h"
diff --git a/lib/inet_ntop.h b/lib/inet_ntop.h
index cc4bdbb89..db28ed807 100644
--- a/lib/inet_ntop.h
+++ b/lib/inet_ntop.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2009, 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
@@ -31,7 +31,7 @@ char *Curl_inet_ntop(int af, const void *addr, char *buf, size_t size);
#include <arpa/inet.h>
#endif
#define Curl_inet_ntop(af,addr,buf,size) \
- inet_ntop(af, addr, buf, (curl_socklen_t)size)
+ inet_ntop(af,addr,buf,(curl_socklen_t)size)
#endif
#endif /* HEADER_CURL_INET_NTOP_H */
diff --git a/lib/krb5.c b/lib/krb5.c
index ad7dd67af..a0d7bb4f0 100644
--- a/lib/krb5.c
+++ b/lib/krb5.c
@@ -1,8 +1,8 @@
/* GSSAPI/krb5 support for FTP - loosely based on old krb4.c
*
- * Copyright (c) 1995, 1996, 1997, 1998, 1999 Kungliga Tekniska Högskolan
+ * Copyright (c) 1995, 1996, 1997, 1998, 1999, 2013 Kungliga Tekniska Högskolan
* (Royal Institute of Technology, Stockholm, Sweden).
- * Copyright (c) 2004 - 2015 Daniel Stenberg
+ * Copyright (c) 2004 - 2014 Daniel Stenberg
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -34,7 +34,13 @@
#include "curl_setup.h"
-#if defined(HAVE_GSSAPI) && !defined(CURL_DISABLE_FTP)
+#ifndef CURL_DISABLE_FTP
+#ifdef HAVE_GSSAPI
+
+#ifdef HAVE_OLD_GSSMIT
+#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
+#define NCOMPAT 1
+#endif
#ifdef HAVE_NETDB_H
#include <netdb.h>
@@ -46,11 +52,13 @@
#include "curl_gssapi.h"
#include "sendf.h"
#include "curl_sec.h"
+#include "curl_memory.h"
#include "warnless.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
#define LOCAL_ADDR (&conn->local_addr)
@@ -246,8 +254,7 @@ krb5_auth(void *app_data, struct connectdata *conn)
result = Curl_base64_encode(data, (char *)output_buffer.value,
output_buffer.length, &p, &base64_sz);
if(result) {
- Curl_infof(data, "base64-encoding: %s\n",
- curl_easy_strerror(result));
+ Curl_infof(data,"base64-encoding: %s\n", curl_easy_strerror(result));
ret = AUTH_CONTINUE;
break;
}
@@ -279,8 +286,7 @@ krb5_auth(void *app_data, struct connectdata *conn)
(unsigned char **)&_gssresp.value,
&_gssresp.length);
if(result) {
- Curl_failf(data, "base64-decoding: %s",
- curl_easy_strerror(result));
+ Curl_failf(data,"base64-decoding: %s", curl_easy_strerror(result));
ret = AUTH_CONTINUE;
break;
}
@@ -329,4 +335,5 @@ struct Curl_sec_client_mech Curl_krb5_client_mech = {
krb5_decode
};
-#endif /* HAVE_GSSAPI && !CURL_DISABLE_FTP */
+#endif /* HAVE_GSSAPI */
+#endif /* CURL_DISABLE_FTP */
diff --git a/lib/ldap.c b/lib/ldap.c
index 4d9128226..f27fa9008 100644
--- a/lib/ldap.c
+++ b/lib/ldap.c
@@ -35,7 +35,7 @@
* OpenLDAP library versions, USE_OPENLDAP shall not be defined.
*/
-#ifdef USE_WIN32_LDAP /* Use Windows LDAP implementation. */
+#ifdef CURL_LDAP_WIN /* Use Windows LDAP implementation. */
# include <winldap.h>
# ifndef LDAP_VENDOR_NAME
# error Your Platform SDK is NOT sufficient for LDAP support! \
@@ -54,15 +54,6 @@
# endif /* HAVE_LDAP_SSL && HAVE_LDAP_SSL_H */
#endif
-/* These are macros in both <wincrypt.h> (in above <winldap.h>) and typedefs
- * in BoringSSL's <openssl/x509.h>
- */
-#ifdef HAVE_BORINGSSL
-# undef X509_NAME
-# undef X509_CERT_PAIR
-# undef X509_EXTENSIONS
-#endif
-
#include "urldata.h"
#include <curl/curl.h>
#include "sendf.h"
@@ -72,14 +63,15 @@
#include "strequal.h"
#include "strtok.h"
#include "curl_ldap.h"
+#include "curl_memory.h"
#include "curl_multibyte.h"
#include "curl_base64.h"
#include "rawstr.h"
#include "connect.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "memdebug.h"
#ifndef HAVE_LDAP_URL_PARSE
@@ -89,7 +81,7 @@
typedef struct {
char *lud_host;
int lud_port;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
TCHAR *lud_dn;
TCHAR **lud_attrs;
#else
@@ -97,7 +89,7 @@ typedef struct {
char **lud_attrs;
#endif
int lud_scope;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
TCHAR *lud_filter;
#else
char *lud_filter;
@@ -200,9 +192,9 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
size_t val_b64_sz = 0;
curl_off_t dlsize = 0;
#ifdef LDAP_OPT_NETWORK_TIMEOUT
- struct timeval ldap_timeout = {10, 0}; /* 10 sec connection/search timeout */
+ struct timeval ldap_timeout = {10,0}; /* 10 sec connection/search timeout */
#endif
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
TCHAR *host = NULL;
TCHAR *user = NULL;
TCHAR *passwd = NULL;
@@ -234,7 +226,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
infof(data, "LDAP local: trying to establish %s connection\n",
ldap_ssl ? "encrypted" : "cleartext");
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
host = Curl_convert_UTF8_to_tchar(conn->host.name);
if(!host) {
result = CURLE_OUT_OF_MEMORY;
@@ -267,7 +259,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
if(ldap_ssl) {
#ifdef HAVE_LDAP_SSL
-#ifdef USE_WIN32_LDAP
+#ifdef CURL_LDAP_WIN
/* Win32 LDAP SDK doesn't support insecure mode without CA! */
server = ldap_sslinit(host, (int)conn->port, 1);
ldap_set_option(server, LDAP_OPT_SSL, LDAP_OPT_ON);
@@ -400,7 +392,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
goto quit;
}
}
-#ifdef USE_WIN32_LDAP
+#ifdef CURL_LDAP_WIN
ldap_set_option(server, LDAP_OPT_PROTOCOL_VERSION, &ldap_proto);
#endif
@@ -429,7 +421,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
entryIterator;
entryIterator = ldap_next_entry(server, entryIterator), num++) {
BerElement *ber = NULL;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
TCHAR *attribute;
#else
char *attribute; /*! suspicious that this isn't 'const' */
@@ -440,7 +432,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
{
char *name;
size_t name_len;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
TCHAR *dn = ldap_get_dn(server, entryIterator);
name = Curl_convert_tchar_to_UTF8(dn);
if(!name) {
@@ -457,7 +449,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"DN: ", 4);
if(result) {
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(name);
#endif
ldap_memfree(dn);
@@ -468,7 +460,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *) name,
name_len);
if(result) {
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(name);
#endif
ldap_memfree(dn);
@@ -478,7 +470,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\n", 1);
if(result) {
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(name);
#endif
ldap_memfree(dn);
@@ -488,7 +480,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
dlsize += name_len + 5;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(name);
#endif
ldap_memfree(dn);
@@ -500,7 +492,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
attribute = ldap_next_attribute(server, entryIterator, ber)) {
BerValue **vals;
size_t attr_len;
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
char *attr = Curl_convert_tchar_to_UTF8(attribute);
if(!attr) {
if(ber)
@@ -521,7 +513,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\t", 1);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -535,7 +527,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
(char *) attr, attr_len);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -548,7 +540,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *)": ", 2);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -570,7 +562,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
&val_b64_sz);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -586,7 +578,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
free(val_b64);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -604,7 +596,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
vals[i]->bv_len);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -620,7 +612,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
result = Curl_client_write(conn, CLIENTWRITE_BODY, (char *)"\n", 1);
if(result) {
ldap_value_free_len(vals);
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -638,7 +630,7 @@ static CURLcode Curl_ldap(struct connectdata *conn, bool *done)
}
/* Free the attribute as we are done with it */
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(attr);
#endif
ldap_memfree(attribute);
@@ -670,7 +662,7 @@ quit:
ldapssl_client_deinit();
#endif /* HAVE_LDAP_SSL && CURL_HAS_NOVELL_LDAPSDK */
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
Curl_unicodefree(passwd);
Curl_unicodefree(user);
Curl_unicodefree(host);
@@ -810,7 +802,7 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
goto quit;
}
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
/* Convert the unescaped string to a tchar */
ludp->lud_dn = Curl_convert_UTF8_to_tchar(unescaped);
@@ -848,13 +840,13 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
}
/* Allocate our array (+1 for the NULL entry) */
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
ludp->lud_attrs = calloc(count + 1, sizeof(TCHAR *));
#else
ludp->lud_attrs = calloc(count + 1, sizeof(char *));
#endif
if(!ludp->lud_attrs) {
- free(attributes);
+ Curl_safefree(attributes);
rc = LDAP_NO_MEMORY;
@@ -869,14 +861,14 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
/* Unescape the attribute */
unescaped = curl_easy_unescape(conn->data, attributes[i], 0, NULL);
if(!unescaped) {
- free(attributes);
+ Curl_safefree(attributes);
rc = LDAP_NO_MEMORY;
goto quit;
}
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
/* Convert the unescaped string to a tchar */
ludp->lud_attrs[i] = Curl_convert_UTF8_to_tchar(unescaped);
@@ -884,7 +876,7 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
Curl_unicodefree(unescaped);
if(!ludp->lud_attrs[i]) {
- free(attributes);
+ Curl_safefree(attributes);
rc = LDAP_NO_MEMORY;
@@ -897,7 +889,7 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
ludp->lud_attrs_dups++;
}
- free(attributes);
+ Curl_safefree(attributes);
}
p = q;
@@ -942,7 +934,7 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
goto quit;
}
-#if defined(USE_WIN32_LDAP)
+#if defined(CURL_LDAP_WIN)
/* Convert the unescaped string to a tchar */
ludp->lud_filter = Curl_convert_UTF8_to_tchar(unescaped);
@@ -967,7 +959,7 @@ static int _ldap_url_parse2 (const struct connectdata *conn, LDAPURLDesc *ludp)
}
quit:
- free(path);
+ Curl_safefree(path);
return rc;
}
@@ -998,8 +990,11 @@ static void _ldap_free_urldesc (LDAPURLDesc *ludp)
if(!ludp)
return;
- free(ludp->lud_dn);
- free(ludp->lud_filter);
+ if(ludp->lud_dn)
+ free(ludp->lud_dn);
+
+ if(ludp->lud_filter)
+ free(ludp->lud_filter);
if(ludp->lud_attrs) {
for(i = 0; i < ludp->lud_attrs_dups; i++)
diff --git a/lib/libcurl.plist b/lib/libcurl.plist
index bc66d1977..cb602712c 100644
--- a/lib/libcurl.plist
+++ b/lib/libcurl.plist
@@ -15,7 +15,7 @@
<string>se.haxx.curl.libcurl</string>
<key>CFBundleVersion</key>
- <string>7.44.0</string>
+ <string>7.40.0</string>
<key>CFBundleName</key>
<string>libcurl</string>
@@ -27,9 +27,9 @@
<string>????</string>
<key>CFBundleShortVersionString</key>
- <string>libcurl 7.44.0</string>
+ <string>libcurl 7.40.0</string>
<key>CFBundleGetInfoString</key>
- <string>libcurl.plist 7.44.0</string>
+ <string>libcurl.plist 7.40.0</string>
</dict>
</plist>
diff --git a/lib/md4.c b/lib/md4.c
index 60f73a28b..fd0c6d4ab 100644
--- a/lib/md4.c
+++ b/lib/md4.c
@@ -1,38 +1,23 @@
-/*
- * This is an OpenSSL-compatible implementation of the RSA Data Security, Inc.
- * MD4 Message-Digest Algorithm (RFC 1320).
- *
- * Homepage:
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md4
- *
- * Author:
- * Alexander Peslyak, better known as Solar Designer <solar at openwall.com>
- *
- * This software was written by Alexander Peslyak in 2001. No copyright is
- * claimed, and the software is hereby placed in the public domain. In case
- * this attempt to disclaim copyright and place the software in the public
- * domain is deemed null and void, then the software is Copyright (c) 2001
- * Alexander Peslyak and it is hereby released to the general public under the
- * following terms:
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted.
- *
- * There's ABSOLUTELY NO WARRANTY, express or implied.
- *
- * (This is a heavily cut-down "BSD license".)
- *
- * This differs from Colin Plumb's older public domain implementation in that
- * no exactly 32-bit integer data type is required (any 32-bit or wider
- * unsigned integer data type will do), there's no compile-time endianness
- * configuration, and the function prototypes match OpenSSL's. No code from
- * Colin Plumb's implementation has been reused; this comment merely compares
- * the properties of the two independent implementations.
- *
- * The primary goals of this implementation are portability and ease of use.
- * It is meant to be fast, but not as fast as possible. Some known
- * optimizations are not included to reduce source code size and avoid
- * compile-time configuration.
+/*-
+ Copyright (C) 1990-2, RSA Data Security, Inc. All rights reserved.
+
+ License to copy and use this software is granted provided that it
+ is identified as the "RSA Data Security, Inc. MD4 Message-Digest
+ Algorithm" in all material mentioning or referencing this software
+ or this function.
+
+ License is also granted to make and use derivative works provided
+ that such works are identified as "derived from the RSA Data
+ Security, Inc. MD4 Message-Digest Algorithm" in all material
+ mentioning or referencing the derived work.
+
+ RSA Data Security, Inc. makes no representations concerning either
+ the merchantability of this software or the suitability of this
+ software for any particular purpose. It is provided "as is"
+ without express or implied warranty of any kind.
+
+ These notices must be retained in any copies of any part of this
+ documentation and/or software.
*/
#include "curl_setup.h"
@@ -44,261 +29,254 @@
#include "curl_md4.h"
#include "warnless.h"
-#ifndef HAVE_OPENSSL
+typedef unsigned int UINT4;
-#include <string.h>
-
-/* Any 32-bit or wider unsigned integer data type will do */
-typedef unsigned int MD4_u32plus;
-
-typedef struct {
- MD4_u32plus lo, hi;
- MD4_u32plus a, b, c, d;
- unsigned char buffer[64];
- MD4_u32plus block[16];
+typedef struct MD4Context {
+ UINT4 state[4]; /* state (ABCD) */
+ UINT4 count[2]; /* number of bits, modulo 2^64 (lsb first) */
+ unsigned char buffer[64]; /* input buffer */
} MD4_CTX;
-static void MD4_Init(MD4_CTX *ctx);
-static void MD4_Update(MD4_CTX *ctx, const void *data, unsigned long size);
-static void MD4_Final(unsigned char *result, MD4_CTX *ctx);
-
-/*
- * The basic MD4 functions.
- *
- * F and G are optimized compared to their RFC 1320 definitions, with the
- * optimization for F borrowed from Colin Plumb's MD5 implementation.
+/* Constants for MD4Transform routine.
*/
-#define F(x, y, z) ((z) ^ ((x) & ((y) ^ (z))))
-#define G(x, y, z) (((x) & ((y) | (z))) | ((y) & (z)))
-#define H(x, y, z) ((x) ^ (y) ^ (z))
-
-/*
- * The MD4 transformation for all three rounds.
+#define S11 3
+#define S12 7
+#define S13 11
+#define S14 19
+#define S21 3
+#define S22 5
+#define S23 9
+#define S24 13
+#define S31 3
+#define S32 9
+#define S33 11
+#define S34 15
+
+static void MD4Transform(UINT4 [4], const unsigned char [64]);
+static void Encode(unsigned char *, UINT4 *, unsigned int);
+static void Decode(UINT4 *, const unsigned char *, unsigned int);
+
+static unsigned char PADDING[64] = {
+ 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+/* F, G and H are basic MD4 functions.
*/
-#define STEP(f, a, b, c, d, x, s) \
- (a) += f((b), (c), (d)) + (x); \
- (a) = (((a) << (s)) | (((a) & 0xffffffff) >> (32 - (s))));
-
-/*
- * SET reads 4 input bytes in little-endian byte order and stores them
- * in a properly aligned word in host byte order.
- *
- * The check for little-endian architectures that tolerate unaligned
- * memory accesses is just an optimization. Nothing will break if it
- * doesn't work.
+#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
+#define G(x, y, z) (((x) & (y)) | ((x) & (z)) | ((y) & (z)))
+#define H(x, y, z) ((x) ^ (y) ^ (z))
+
+/* ROTATE_LEFT rotates x left n bits.
*/
-#if defined(__i386__) || defined(__x86_64__) || defined(__vax__)
-#define SET(n) \
- (*(MD4_u32plus *)&ptr[(n) * 4])
-#define GET(n) \
- SET(n)
-#else
-#define SET(n) \
- (ctx->block[(n)] = \
- (MD4_u32plus)ptr[(n) * 4] | \
- ((MD4_u32plus)ptr[(n) * 4 + 1] << 8) | \
- ((MD4_u32plus)ptr[(n) * 4 + 2] << 16) | \
- ((MD4_u32plus)ptr[(n) * 4 + 3] << 24))
-#define GET(n) \
- (ctx->block[(n)])
-#endif
-
-/*
- * This processes one or more 64-byte data blocks, but does NOT update
- * the bit counters. There are no alignment requirements.
+#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
+
+/* FF, GG and HH are transformations for rounds 1, 2 and 3 */
+/* Rotation is separate from addition to prevent recomputation */
+#define FF(a, b, c, d, x, s) { \
+ (a) += F ((b), (c), (d)) + (x); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ }
+#define GG(a, b, c, d, x, s) { \
+ (a) += G ((b), (c), (d)) + (x) + (UINT4)0x5a827999; \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ }
+#define HH(a, b, c, d, x, s) { \
+ (a) += H ((b), (c), (d)) + (x) + (UINT4)0x6ed9eba1; \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ }
+
+/* MD4 initialization. Begins an MD4 operation, writing a new context.
*/
-static const void *body(MD4_CTX *ctx, const void *data, unsigned long size)
+static void MD4Init(MD4_CTX *context)
{
- const unsigned char *ptr;
- MD4_u32plus a, b, c, d;
- MD4_u32plus saved_a, saved_b, saved_c, saved_d;
-
- ptr = (const unsigned char *)data;
-
- a = ctx->a;
- b = ctx->b;
- c = ctx->c;
- d = ctx->d;
-
- do {
- saved_a = a;
- saved_b = b;
- saved_c = c;
- saved_d = d;
-
-/* Round 1 */
- STEP(F, a, b, c, d, SET(0), 3)
- STEP(F, d, a, b, c, SET(1), 7)
- STEP(F, c, d, a, b, SET(2), 11)
- STEP(F, b, c, d, a, SET(3), 19)
- STEP(F, a, b, c, d, SET(4), 3)
- STEP(F, d, a, b, c, SET(5), 7)
- STEP(F, c, d, a, b, SET(6), 11)
- STEP(F, b, c, d, a, SET(7), 19)
- STEP(F, a, b, c, d, SET(8), 3)
- STEP(F, d, a, b, c, SET(9), 7)
- STEP(F, c, d, a, b, SET(10), 11)
- STEP(F, b, c, d, a, SET(11), 19)
- STEP(F, a, b, c, d, SET(12), 3)
- STEP(F, d, a, b, c, SET(13), 7)
- STEP(F, c, d, a, b, SET(14), 11)
- STEP(F, b, c, d, a, SET(15), 19)
-
-/* Round 2 */
- STEP(G, a, b, c, d, GET(0) + 0x5a827999, 3)
- STEP(G, d, a, b, c, GET(4) + 0x5a827999, 5)
- STEP(G, c, d, a, b, GET(8) + 0x5a827999, 9)
- STEP(G, b, c, d, a, GET(12) + 0x5a827999, 13)
- STEP(G, a, b, c, d, GET(1) + 0x5a827999, 3)
- STEP(G, d, a, b, c, GET(5) + 0x5a827999, 5)
- STEP(G, c, d, a, b, GET(9) + 0x5a827999, 9)
- STEP(G, b, c, d, a, GET(13) + 0x5a827999, 13)
- STEP(G, a, b, c, d, GET(2) + 0x5a827999, 3)
- STEP(G, d, a, b, c, GET(6) + 0x5a827999, 5)
- STEP(G, c, d, a, b, GET(10) + 0x5a827999, 9)
- STEP(G, b, c, d, a, GET(14) + 0x5a827999, 13)
- STEP(G, a, b, c, d, GET(3) + 0x5a827999, 3)
- STEP(G, d, a, b, c, GET(7) + 0x5a827999, 5)
- STEP(G, c, d, a, b, GET(11) + 0x5a827999, 9)
- STEP(G, b, c, d, a, GET(15) + 0x5a827999, 13)
-
-/* Round 3 */
- STEP(H, a, b, c, d, GET(0) + 0x6ed9eba1, 3)
- STEP(H, d, a, b, c, GET(8) + 0x6ed9eba1, 9)
- STEP(H, c, d, a, b, GET(4) + 0x6ed9eba1, 11)
- STEP(H, b, c, d, a, GET(12) + 0x6ed9eba1, 15)
- STEP(H, a, b, c, d, GET(2) + 0x6ed9eba1, 3)
- STEP(H, d, a, b, c, GET(10) + 0x6ed9eba1, 9)
- STEP(H, c, d, a, b, GET(6) + 0x6ed9eba1, 11)
- STEP(H, b, c, d, a, GET(14) + 0x6ed9eba1, 15)
- STEP(H, a, b, c, d, GET(1) + 0x6ed9eba1, 3)
- STEP(H, d, a, b, c, GET(9) + 0x6ed9eba1, 9)
- STEP(H, c, d, a, b, GET(5) + 0x6ed9eba1, 11)
- STEP(H, b, c, d, a, GET(13) + 0x6ed9eba1, 15)
- STEP(H, a, b, c, d, GET(3) + 0x6ed9eba1, 3)
- STEP(H, d, a, b, c, GET(11) + 0x6ed9eba1, 9)
- STEP(H, c, d, a, b, GET(7) + 0x6ed9eba1, 11)
- STEP(H, b, c, d, a, GET(15) + 0x6ed9eba1, 15)
-
- a += saved_a;
- b += saved_b;
- c += saved_c;
- d += saved_d;
-
- ptr += 64;
- } while(size -= 64);
-
- ctx->a = a;
- ctx->b = b;
- ctx->c = c;
- ctx->d = d;
-
- return ptr;
+ context->count[0] = context->count[1] = 0;
+
+ /* Load magic initialization constants.
+ */
+ context->state[0] = 0x67452301;
+ context->state[1] = 0xefcdab89;
+ context->state[2] = 0x98badcfe;
+ context->state[3] = 0x10325476;
}
-static void MD4_Init(MD4_CTX *ctx)
+/* MD4 block update operation. Continues an MD4 message-digest
+ operation, processing another message block, and updating the
+ context.
+ */
+static void MD4Update(MD4_CTX *context, const unsigned char *input,
+ unsigned int inputLen)
{
- ctx->a = 0x67452301;
- ctx->b = 0xefcdab89;
- ctx->c = 0x98badcfe;
- ctx->d = 0x10325476;
+ unsigned int i, bufindex, partLen;
+
+ /* Compute number of bytes mod 64 */
+ bufindex = (unsigned int)((context->count[0] >> 3) & 0x3F);
+ /* Update number of bits */
+ if((context->count[0] += ((UINT4)inputLen << 3))
+ < ((UINT4)inputLen << 3))
+ context->count[1]++;
+ context->count[1] += ((UINT4)inputLen >> 29);
+
+ partLen = 64 - bufindex;
+ /* Transform as many times as possible.
+ */
+ if(inputLen >= partLen) {
+ memcpy(&context->buffer[bufindex], input, partLen);
+ MD4Transform (context->state, context->buffer);
+
+ for(i = partLen; i + 63 < inputLen; i += 64)
+ MD4Transform (context->state, &input[i]);
+
+ bufindex = 0;
+ }
+ else
+ i = 0;
- ctx->lo = 0;
- ctx->hi = 0;
+ /* Buffer remaining input */
+ memcpy(&context->buffer[bufindex], &input[i], inputLen-i);
}
-static void MD4_Update(MD4_CTX *ctx, const void *data, unsigned long size)
+/* MD4 padding. */
+static void MD4Pad(MD4_CTX *context)
{
- MD4_u32plus saved_lo;
- unsigned long used, available;
+ unsigned char bits[8];
+ unsigned int bufindex, padLen;
- saved_lo = ctx->lo;
- if((ctx->lo = (saved_lo + size) & 0x1fffffff) < saved_lo)
- ctx->hi++;
- ctx->hi += (MD4_u32plus)size >> 29;
+ /* Save number of bits */
+ Encode (bits, context->count, 8);
- used = saved_lo & 0x3f;
+ /* Pad out to 56 mod 64.
+ */
+ bufindex = (unsigned int)((context->count[0] >> 3) & 0x3f);
+ padLen = (bufindex < 56) ? (56 - bufindex) : (120 - bufindex);
+ MD4Update (context, PADDING, padLen);
- if(used) {
- available = 64 - used;
-
- if(size < available) {
- memcpy(&ctx->buffer[used], data, size);
- return;
- }
+ /* Append length (before padding) */
+ MD4Update (context, bits, 8);
+}
- memcpy(&ctx->buffer[used], data, available);
- data = (const unsigned char *)data + available;
- size -= available;
- body(ctx, ctx->buffer, 64);
- }
+/* MD4 finalization. Ends an MD4 message-digest operation, writing the
+ the message digest and zeroizing the context.
+ */
+static void MD4Final (unsigned char digest[16], MD4_CTX *context)
+{
+ /* Do padding */
+ MD4Pad (context);
- if(size >= 64) {
- data = body(ctx, data, size & ~(unsigned long)0x3f);
- size &= 0x3f;
- }
+ /* Store state in digest */
+ Encode (digest, context->state, 16);
- memcpy(ctx->buffer, data, size);
+ /* Zeroize sensitive information.
+ */
+ memset(context, 0, sizeof(*context));
}
-static void MD4_Final(unsigned char *result, MD4_CTX *ctx)
+/* MD4 basic transformation. Transforms state based on block.
+ */
+static void MD4Transform (UINT4 state[4], const unsigned char block[64])
{
- unsigned long used, available;
-
- used = ctx->lo & 0x3f;
-
- ctx->buffer[used++] = 0x80;
+ UINT4 a = state[0], b = state[1], c = state[2], d = state[3], x[16];
+
+ Decode (x, block, 64);
+
+ /* Round 1 */
+ FF (a, b, c, d, x[ 0], S11); /* 1 */
+ FF (d, a, b, c, x[ 1], S12); /* 2 */
+ FF (c, d, a, b, x[ 2], S13); /* 3 */
+ FF (b, c, d, a, x[ 3], S14); /* 4 */
+ FF (a, b, c, d, x[ 4], S11); /* 5 */
+ FF (d, a, b, c, x[ 5], S12); /* 6 */
+ FF (c, d, a, b, x[ 6], S13); /* 7 */
+ FF (b, c, d, a, x[ 7], S14); /* 8 */
+ FF (a, b, c, d, x[ 8], S11); /* 9 */
+ FF (d, a, b, c, x[ 9], S12); /* 10 */
+ FF (c, d, a, b, x[10], S13); /* 11 */
+ FF (b, c, d, a, x[11], S14); /* 12 */
+ FF (a, b, c, d, x[12], S11); /* 13 */
+ FF (d, a, b, c, x[13], S12); /* 14 */
+ FF (c, d, a, b, x[14], S13); /* 15 */
+ FF (b, c, d, a, x[15], S14); /* 16 */
+
+ /* Round 2 */
+ GG (a, b, c, d, x[ 0], S21); /* 17 */
+ GG (d, a, b, c, x[ 4], S22); /* 18 */
+ GG (c, d, a, b, x[ 8], S23); /* 19 */
+ GG (b, c, d, a, x[12], S24); /* 20 */
+ GG (a, b, c, d, x[ 1], S21); /* 21 */
+ GG (d, a, b, c, x[ 5], S22); /* 22 */
+ GG (c, d, a, b, x[ 9], S23); /* 23 */
+ GG (b, c, d, a, x[13], S24); /* 24 */
+ GG (a, b, c, d, x[ 2], S21); /* 25 */
+ GG (d, a, b, c, x[ 6], S22); /* 26 */
+ GG (c, d, a, b, x[10], S23); /* 27 */
+ GG (b, c, d, a, x[14], S24); /* 28 */
+ GG (a, b, c, d, x[ 3], S21); /* 29 */
+ GG (d, a, b, c, x[ 7], S22); /* 30 */
+ GG (c, d, a, b, x[11], S23); /* 31 */
+ GG (b, c, d, a, x[15], S24); /* 32 */
+
+ /* Round 3 */
+ HH (a, b, c, d, x[ 0], S31); /* 33 */
+ HH (d, a, b, c, x[ 8], S32); /* 34 */
+ HH (c, d, a, b, x[ 4], S33); /* 35 */
+ HH (b, c, d, a, x[12], S34); /* 36 */
+ HH (a, b, c, d, x[ 2], S31); /* 37 */
+ HH (d, a, b, c, x[10], S32); /* 38 */
+ HH (c, d, a, b, x[ 6], S33); /* 39 */
+ HH (b, c, d, a, x[14], S34); /* 40 */
+ HH (a, b, c, d, x[ 1], S31); /* 41 */
+ HH (d, a, b, c, x[ 9], S32); /* 42 */
+ HH (c, d, a, b, x[ 5], S33); /* 43 */
+ HH (b, c, d, a, x[13], S34); /* 44 */
+ HH (a, b, c, d, x[ 3], S31); /* 45 */
+ HH (d, a, b, c, x[11], S32); /* 46 */
+ HH (c, d, a, b, x[ 7], S33); /* 47 */
+ HH (b, c, d, a, x[15], S34); /* 48 */
+
+ state[0] += a;
+ state[1] += b;
+ state[2] += c;
+ state[3] += d;
+
+ /* Zeroize sensitive information.
+ */
+ memset(x, 0, sizeof(x));
+}
- available = 64 - used;
+/* Encodes input (UINT4) into output (unsigned char). Assumes len is
+ a multiple of 4.
+ */
+static void Encode(unsigned char *output, UINT4 *input, unsigned int len)
+{
+ unsigned int i, j;
- if(available < 8) {
- memset(&ctx->buffer[used], 0, available);
- body(ctx, ctx->buffer, 64);
- used = 0;
- available = 64;
+ for(i = 0, j = 0; j < len; i++, j += 4) {
+ output[j] = (unsigned char)(input[i] & 0xff);
+ output[j+1] = (unsigned char)((input[i] >> 8) & 0xff);
+ output[j+2] = (unsigned char)((input[i] >> 16) & 0xff);
+ output[j+3] = (unsigned char)((input[i] >> 24) & 0xff);
}
-
- memset(&ctx->buffer[used], 0, available - 8);
-
- ctx->lo <<= 3;
- ctx->buffer[56] = curlx_ultouc((ctx->lo)&0xff);
- ctx->buffer[57] = curlx_ultouc((ctx->lo >> 8)&0xff);
- ctx->buffer[58] = curlx_ultouc((ctx->lo >> 16)&0xff);
- ctx->buffer[59] = curlx_ultouc((ctx->lo >> 24)&0xff);
- ctx->buffer[60] = curlx_ultouc((ctx->hi)&0xff);
- ctx->buffer[61] = curlx_ultouc((ctx->hi >> 8)&0xff);
- ctx->buffer[62] = curlx_ultouc((ctx->hi >> 16)&0xff);
- ctx->buffer[63] = curlx_ultouc(ctx->hi >> 24);
-
- body(ctx, ctx->buffer, 64);
-
- result[0] = curlx_ultouc((ctx->a)&0xff);
- result[1] = curlx_ultouc((ctx->a >> 8)&0xff);
- result[2] = curlx_ultouc((ctx->a >> 16)&0xff);
- result[3] = curlx_ultouc(ctx->a >> 24);
- result[4] = curlx_ultouc((ctx->b)&0xff);
- result[5] = curlx_ultouc((ctx->b >> 8)&0xff);
- result[6] = curlx_ultouc((ctx->b >> 16)&0xff);
- result[7] = curlx_ultouc(ctx->b >> 24);
- result[8] = curlx_ultouc((ctx->c)&0xff);
- result[9] = curlx_ultouc((ctx->c >> 8)&0xff);
- result[10] = curlx_ultouc((ctx->c >> 16)&0xff);
- result[11] = curlx_ultouc(ctx->c >> 24);
- result[12] = curlx_ultouc((ctx->d)&0xff);
- result[13] = curlx_ultouc((ctx->d >> 8)&0xff);
- result[14] = curlx_ultouc((ctx->d >> 16)&0xff);
- result[15] = curlx_ultouc(ctx->d >> 24);
-
- memset(ctx, 0, sizeof(*ctx));
}
-#endif
+/* Decodes input (unsigned char) into output (UINT4). Assumes len is
+ a multiple of 4.
+ */
+static void Decode (UINT4 *output, const unsigned char *input,
+ unsigned int len)
+{
+ unsigned int i, j;
+
+ for(i = 0, j = 0; j < len; i++, j += 4)
+ output[i] = ((UINT4)input[j]) | (((UINT4)input[j+1]) << 8) |
+ (((UINT4)input[j+2]) << 16) | (((UINT4)input[j+3]) << 24);
+}
void Curl_md4it(unsigned char *output, const unsigned char *input, size_t len)
{
MD4_CTX ctx;
- MD4_Init(&ctx);
- MD4_Update(&ctx, input, curlx_uztoui(len));
- MD4_Final(output, &ctx);
+ MD4Init(&ctx);
+ MD4Update(&ctx, input, curlx_uztoui(len));
+ MD4Final(output, &ctx);
}
#endif /* defined(USE_NSS) || defined(USE_OS400CRYPTO) */
diff --git a/lib/md5.c b/lib/md5.c
index b604c109f..af39fd41a 100644
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -28,10 +28,11 @@
#include "curl_hmac.h"
#include "warnless.h"
+#include "curl_memory.h"
+
#if defined(USE_GNUTLS_NETTLE)
#include <nettle/md5.h>
-#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -57,7 +58,6 @@ static void MD5_Final(unsigned char digest[16], MD5_CTX * ctx)
#elif defined(USE_GNUTLS)
#include <gcrypt.h>
-#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -81,12 +81,14 @@ static void MD5_Final(unsigned char digest[16], MD5_CTX * ctx)
gcry_md_close(*ctx);
}
-#elif defined(USE_OPENSSL)
+#elif defined(USE_SSLEAY)
/* When OpenSSL is available we use the MD5-function from OpenSSL */
-#include <openssl/md5.h>
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
+
+# ifdef USE_OPENSSL
+# include <openssl/md5.h>
+# else
+# include <md5.h>
+# endif
#elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \
(__MAC_OS_X_VERSION_MAX_ALLOWED >= 1040)) || \
@@ -101,9 +103,6 @@ static void MD5_Final(unsigned char digest[16], MD5_CTX * ctx)
reliable than defining COMMON_DIGEST_FOR_OPENSSL on older cats. */
# include <CommonCrypto/CommonDigest.h>
# define MD5_CTX CC_MD5_CTX
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
static void MD5_Init(MD5_CTX *ctx)
{
@@ -125,9 +124,6 @@ static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
#elif defined(_WIN32)
#include <wincrypt.h>
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
typedef struct {
HCRYPTPROV hCryptProv;
@@ -161,326 +157,314 @@ static void MD5_Final(unsigned char digest[16], MD5_CTX *ctx)
CryptReleaseContext(ctx->hCryptProv, 0);
}
-#elif defined(USE_AXTLS)
-#include <axTLS/config.h>
-#include <axTLS/os_int.h>
-#include <axTLS/crypto.h>
-#include "curl_memory.h"
-/* The last #include file should be: */
-#include "memdebug.h"
#else
/* When no other crypto library is available we use this code segment */
-/*
- * This is an OpenSSL-compatible implementation of the RSA Data Security, Inc.
- * MD5 Message-Digest Algorithm (RFC 1321).
- *
- * Homepage:
- http://openwall.info/wiki/people/solar/software/public-domain-source-code/md5
- *
- * Author:
- * Alexander Peslyak, better known as Solar Designer <solar at openwall.com>
- *
- * This software was written by Alexander Peslyak in 2001. No copyright is
- * claimed, and the software is hereby placed in the public domain.
- * In case this attempt to disclaim copyright and place the software in the
- * public domain is deemed null and void, then the software is
- * Copyright (c) 2001 Alexander Peslyak and it is hereby released to the
- * general public under the following terms:
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted.
- *
- * There's ABSOLUTELY NO WARRANTY, express or implied.
- *
- * (This is a heavily cut-down "BSD license".)
- *
- * This differs from Colin Plumb's older public domain implementation in that
- * no exactly 32-bit integer data type is required (any 32-bit or wider
- * unsigned integer data type will do), there's no compile-time endianness
- * configuration, and the function prototypes match OpenSSL's. No code from
- * Colin Plumb's implementation has been reused; this comment merely compares
- * the properties of the two independent implementations.
- *
- * The primary goals of this implementation are portability and ease of use.
- * It is meant to be fast, but not as fast as possible. Some known
- * optimizations are not included to reduce source code size and avoid
- * compile-time configuration.
- */
-#include <string.h>
+/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All
+rights reserved.
-/* The last #include files should be: */
-#include "curl_memory.h"
-#include "memdebug.h"
+License to copy and use this software is granted provided that it
+is identified as the "RSA Data Security, Inc. MD5 Message-Digest
+Algorithm" in all material mentioning or referencing this software
+or this function.
-/* Any 32-bit or wider unsigned integer data type will do */
-typedef unsigned int MD5_u32plus;
+License is also granted to make and use derivative works provided
+that such works are identified as "derived from the RSA Data
+Security, Inc. MD5 Message-Digest Algorithm" in all material
+mentioning or referencing the derived work.
-typedef struct {
- MD5_u32plus lo, hi;
- MD5_u32plus a, b, c, d;
- unsigned char buffer[64];
- MD5_u32plus block[16];
-} MD5_CTX;
+RSA Data Security, Inc. makes no representations concerning either
+the merchantability of this software or the suitability of this
+software for any particular purpose. It is provided "as is"
+without express or implied warranty of any kind.
-static void MD5_Init(MD5_CTX *ctx);
-static void MD5_Update(MD5_CTX *ctx, const void *data, unsigned long size);
-static void MD5_Final(unsigned char *result, MD5_CTX *ctx);
+These notices must be retained in any copies of any part of this
+documentation and/or software.
+ */
-/*
- * The basic MD5 functions.
- *
- * F and G are optimized compared to their RFC 1321 definitions for
- * architectures that lack an AND-NOT instruction, just like in Colin Plumb's
- * implementation.
+/* UINT4 defines a four byte word */
+typedef unsigned int UINT4;
+
+/* MD5 context. */
+struct md5_ctx {
+ UINT4 state[4]; /* state (ABCD) */
+ UINT4 count[2]; /* number of bits, modulo 2^64 (lsb first) */
+ unsigned char buffer[64]; /* input buffer */
+};
+
+typedef struct md5_ctx MD5_CTX;
+
+static void MD5_Init(struct md5_ctx *);
+static void MD5_Update(struct md5_ctx *, const unsigned char *, unsigned int);
+static void MD5_Final(unsigned char [16], struct md5_ctx *);
+
+/* Constants for MD5Transform routine.
*/
-#define F(x, y, z) ((z) ^ ((x) & ((y) ^ (z))))
-#define G(x, y, z) ((y) ^ ((z) & ((x) ^ (y))))
-#define H(x, y, z) (((x) ^ (y)) ^ (z))
-#define H2(x, y, z) ((x) ^ ((y) ^ (z)))
-#define I(x, y, z) ((y) ^ ((x) | ~(z)))
-
-/*
- * The MD5 transformation for all four rounds.
+
+#define S11 7
+#define S12 12
+#define S13 17
+#define S14 22
+#define S21 5
+#define S22 9
+#define S23 14
+#define S24 20
+#define S31 4
+#define S32 11
+#define S33 16
+#define S34 23
+#define S41 6
+#define S42 10
+#define S43 15
+#define S44 21
+
+static void MD5Transform(UINT4 [4], const unsigned char [64]);
+static void Encode(unsigned char *, UINT4 *, unsigned int);
+static void Decode(UINT4 *, const unsigned char *, unsigned int);
+
+static const unsigned char PADDING[64] = {
+ 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
+
+/* F, G, H and I are basic MD5 functions.
*/
-#define STEP(f, a, b, c, d, x, t, s) \
- (a) += f((b), (c), (d)) + (x) + (t); \
- (a) = (((a) << (s)) | (((a) & 0xffffffff) >> (32 - (s)))); \
- (a) += (b);
-
-/*
- * SET reads 4 input bytes in little-endian byte order and stores them
- * in a properly aligned word in host byte order.
- *
- * The check for little-endian architectures that tolerate unaligned
- * memory accesses is just an optimization. Nothing will break if it
- * doesn't work.
+#define F(x, y, z) (((x) & (y)) | ((~x) & (z)))
+#define G(x, y, z) (((x) & (z)) | ((y) & (~z)))
+#define H(x, y, z) ((x) ^ (y) ^ (z))
+#define I(x, y, z) ((y) ^ ((x) | (~z)))
+
+/* ROTATE_LEFT rotates x left n bits.
*/
-#if defined(__i386__) || defined(__x86_64__) || defined(__vax__)
-#define SET(n) \
- (*(MD5_u32plus *)&ptr[(n) * 4])
-#define GET(n) \
- SET(n)
-#else
-#define SET(n) \
- (ctx->block[(n)] = \
- (MD5_u32plus)ptr[(n) * 4] | \
- ((MD5_u32plus)ptr[(n) * 4 + 1] << 8) | \
- ((MD5_u32plus)ptr[(n) * 4 + 2] << 16) | \
- ((MD5_u32plus)ptr[(n) * 4 + 3] << 24))
-#define GET(n) \
- (ctx->block[(n)])
-#endif
-
-/*
- * This processes one or more 64-byte data blocks, but does NOT update
- * the bit counters. There are no alignment requirements.
+#define ROTATE_LEFT(x, n) (((x) << (n)) | ((x) >> (32-(n))))
+
+/* FF, GG, HH, and II transformations for rounds 1, 2, 3, and 4.
+Rotation is separate from addition to prevent recomputation.
*/
-static const void *body(MD5_CTX *ctx, const void *data, unsigned long size)
-{
- const unsigned char *ptr;
- MD5_u32plus a, b, c, d;
- MD5_u32plus saved_a, saved_b, saved_c, saved_d;
-
- ptr = (const unsigned char *)data;
-
- a = ctx->a;
- b = ctx->b;
- c = ctx->c;
- d = ctx->d;
-
- do {
- saved_a = a;
- saved_b = b;
- saved_c = c;
- saved_d = d;
-
-/* Round 1 */
- STEP(F, a, b, c, d, SET(0), 0xd76aa478, 7)
- STEP(F, d, a, b, c, SET(1), 0xe8c7b756, 12)
- STEP(F, c, d, a, b, SET(2), 0x242070db, 17)
- STEP(F, b, c, d, a, SET(3), 0xc1bdceee, 22)
- STEP(F, a, b, c, d, SET(4), 0xf57c0faf, 7)
- STEP(F, d, a, b, c, SET(5), 0x4787c62a, 12)
- STEP(F, c, d, a, b, SET(6), 0xa8304613, 17)
- STEP(F, b, c, d, a, SET(7), 0xfd469501, 22)
- STEP(F, a, b, c, d, SET(8), 0x698098d8, 7)
- STEP(F, d, a, b, c, SET(9), 0x8b44f7af, 12)
- STEP(F, c, d, a, b, SET(10), 0xffff5bb1, 17)
- STEP(F, b, c, d, a, SET(11), 0x895cd7be, 22)
- STEP(F, a, b, c, d, SET(12), 0x6b901122, 7)
- STEP(F, d, a, b, c, SET(13), 0xfd987193, 12)
- STEP(F, c, d, a, b, SET(14), 0xa679438e, 17)
- STEP(F, b, c, d, a, SET(15), 0x49b40821, 22)
-
-/* Round 2 */
- STEP(G, a, b, c, d, GET(1), 0xf61e2562, 5)
- STEP(G, d, a, b, c, GET(6), 0xc040b340, 9)
- STEP(G, c, d, a, b, GET(11), 0x265e5a51, 14)
- STEP(G, b, c, d, a, GET(0), 0xe9b6c7aa, 20)
- STEP(G, a, b, c, d, GET(5), 0xd62f105d, 5)
- STEP(G, d, a, b, c, GET(10), 0x02441453, 9)
- STEP(G, c, d, a, b, GET(15), 0xd8a1e681, 14)
- STEP(G, b, c, d, a, GET(4), 0xe7d3fbc8, 20)
- STEP(G, a, b, c, d, GET(9), 0x21e1cde6, 5)
- STEP(G, d, a, b, c, GET(14), 0xc33707d6, 9)
- STEP(G, c, d, a, b, GET(3), 0xf4d50d87, 14)
- STEP(G, b, c, d, a, GET(8), 0x455a14ed, 20)
- STEP(G, a, b, c, d, GET(13), 0xa9e3e905, 5)
- STEP(G, d, a, b, c, GET(2), 0xfcefa3f8, 9)
- STEP(G, c, d, a, b, GET(7), 0x676f02d9, 14)
- STEP(G, b, c, d, a, GET(12), 0x8d2a4c8a, 20)
-
-/* Round 3 */
- STEP(H, a, b, c, d, GET(5), 0xfffa3942, 4)
- STEP(H2, d, a, b, c, GET(8), 0x8771f681, 11)
- STEP(H, c, d, a, b, GET(11), 0x6d9d6122, 16)
- STEP(H2, b, c, d, a, GET(14), 0xfde5380c, 23)
- STEP(H, a, b, c, d, GET(1), 0xa4beea44, 4)
- STEP(H2, d, a, b, c, GET(4), 0x4bdecfa9, 11)
- STEP(H, c, d, a, b, GET(7), 0xf6bb4b60, 16)
- STEP(H2, b, c, d, a, GET(10), 0xbebfbc70, 23)
- STEP(H, a, b, c, d, GET(13), 0x289b7ec6, 4)
- STEP(H2, d, a, b, c, GET(0), 0xeaa127fa, 11)
- STEP(H, c, d, a, b, GET(3), 0xd4ef3085, 16)
- STEP(H2, b, c, d, a, GET(6), 0x04881d05, 23)
- STEP(H, a, b, c, d, GET(9), 0xd9d4d039, 4)
- STEP(H2, d, a, b, c, GET(12), 0xe6db99e5, 11)
- STEP(H, c, d, a, b, GET(15), 0x1fa27cf8, 16)
- STEP(H2, b, c, d, a, GET(2), 0xc4ac5665, 23)
-
-/* Round 4 */
- STEP(I, a, b, c, d, GET(0), 0xf4292244, 6)
- STEP(I, d, a, b, c, GET(7), 0x432aff97, 10)
- STEP(I, c, d, a, b, GET(14), 0xab9423a7, 15)
- STEP(I, b, c, d, a, GET(5), 0xfc93a039, 21)
- STEP(I, a, b, c, d, GET(12), 0x655b59c3, 6)
- STEP(I, d, a, b, c, GET(3), 0x8f0ccc92, 10)
- STEP(I, c, d, a, b, GET(10), 0xffeff47d, 15)
- STEP(I, b, c, d, a, GET(1), 0x85845dd1, 21)
- STEP(I, a, b, c, d, GET(8), 0x6fa87e4f, 6)
- STEP(I, d, a, b, c, GET(15), 0xfe2ce6e0, 10)
- STEP(I, c, d, a, b, GET(6), 0xa3014314, 15)
- STEP(I, b, c, d, a, GET(13), 0x4e0811a1, 21)
- STEP(I, a, b, c, d, GET(4), 0xf7537e82, 6)
- STEP(I, d, a, b, c, GET(11), 0xbd3af235, 10)
- STEP(I, c, d, a, b, GET(2), 0x2ad7d2bb, 15)
- STEP(I, b, c, d, a, GET(9), 0xeb86d391, 21)
-
- a += saved_a;
- b += saved_b;
- c += saved_c;
- d += saved_d;
-
- ptr += 64;
- } while(size -= 64);
-
- ctx->a = a;
- ctx->b = b;
- ctx->c = c;
- ctx->d = d;
-
- return ptr;
-}
+#define FF(a, b, c, d, x, s, ac) { \
+ (a) += F ((b), (c), (d)) + (x) + (UINT4)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+ }
+#define GG(a, b, c, d, x, s, ac) { \
+ (a) += G ((b), (c), (d)) + (x) + (UINT4)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+ }
+#define HH(a, b, c, d, x, s, ac) { \
+ (a) += H ((b), (c), (d)) + (x) + (UINT4)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+ }
+#define II(a, b, c, d, x, s, ac) { \
+ (a) += I ((b), (c), (d)) + (x) + (UINT4)(ac); \
+ (a) = ROTATE_LEFT ((a), (s)); \
+ (a) += (b); \
+ }
-static void MD5_Init(MD5_CTX *ctx)
+/* MD5 initialization. Begins an MD5 operation, writing a new context.
+ */
+static void MD5_Init(struct md5_ctx *context)
{
- ctx->a = 0x67452301;
- ctx->b = 0xefcdab89;
- ctx->c = 0x98badcfe;
- ctx->d = 0x10325476;
-
- ctx->lo = 0;
- ctx->hi = 0;
+ context->count[0] = context->count[1] = 0;
+ /* Load magic initialization constants. */
+ context->state[0] = 0x67452301;
+ context->state[1] = 0xefcdab89;
+ context->state[2] = 0x98badcfe;
+ context->state[3] = 0x10325476;
}
-static void MD5_Update(MD5_CTX *ctx, const void *data, unsigned long size)
+/* MD5 block update operation. Continues an MD5 message-digest
+ operation, processing another message block, and updating the
+ context.
+ */
+static void MD5_Update (struct md5_ctx *context, /* context */
+ const unsigned char *input, /* input block */
+ unsigned int inputLen) /* length of input block */
{
- MD5_u32plus saved_lo;
- unsigned long used, available;
+ unsigned int i, bufindex, partLen;
- saved_lo = ctx->lo;
- if((ctx->lo = (saved_lo + size) & 0x1fffffff) < saved_lo)
- ctx->hi++;
- ctx->hi += (MD5_u32plus)size >> 29;
+ /* Compute number of bytes mod 64 */
+ bufindex = (unsigned int)((context->count[0] >> 3) & 0x3F);
- used = saved_lo & 0x3f;
+ /* Update number of bits */
+ if((context->count[0] += ((UINT4)inputLen << 3))
+ < ((UINT4)inputLen << 3))
+ context->count[1]++;
+ context->count[1] += ((UINT4)inputLen >> 29);
- if(used) {
- available = 64 - used;
+ partLen = 64 - bufindex;
- if(size < available) {
- memcpy(&ctx->buffer[used], data, size);
- return;
- }
+ /* Transform as many times as possible. */
+ if(inputLen >= partLen) {
+ memcpy(&context->buffer[bufindex], input, partLen);
+ MD5Transform(context->state, context->buffer);
- memcpy(&ctx->buffer[used], data, available);
- data = (const unsigned char *)data + available;
- size -= available;
- body(ctx, ctx->buffer, 64);
- }
+ for(i = partLen; i + 63 < inputLen; i += 64)
+ MD5Transform(context->state, &input[i]);
- if(size >= 64) {
- data = body(ctx, data, size & ~(unsigned long)0x3f);
- size &= 0x3f;
+ bufindex = 0;
}
+ else
+ i = 0;
- memcpy(ctx->buffer, data, size);
+ /* Buffer remaining input */
+ memcpy(&context->buffer[bufindex], &input[i], inputLen-i);
}
-static void MD5_Final(unsigned char *result, MD5_CTX *ctx)
+/* MD5 finalization. Ends an MD5 message-digest operation, writing the
+ the message digest and zeroizing the context.
+*/
+static void MD5_Final(unsigned char digest[16], /* message digest */
+ struct md5_ctx *context) /* context */
{
- unsigned long used, available;
+ unsigned char bits[8];
+ unsigned int count, padLen;
- used = ctx->lo & 0x3f;
+ /* Save number of bits */
+ Encode (bits, context->count, 8);
- ctx->buffer[used++] = 0x80;
+ /* Pad out to 56 mod 64. */
+ count = (unsigned int)((context->count[0] >> 3) & 0x3f);
+ padLen = (count < 56) ? (56 - count) : (120 - count);
+ MD5_Update (context, PADDING, padLen);
- available = 64 - used;
+ /* Append length (before padding) */
+ MD5_Update (context, bits, 8);
- if(available < 8) {
- memset(&ctx->buffer[used], 0, available);
- body(ctx, ctx->buffer, 64);
- used = 0;
- available = 64;
+ /* Store state in digest */
+ Encode (digest, context->state, 16);
+
+ /* Zeroize sensitive information. */
+ memset ((void *)context, 0, sizeof (*context));
+}
+
+/* MD5 basic transformation. Transforms state based on block. */
+static void MD5Transform(UINT4 state[4],
+ const unsigned char block[64])
+{
+ UINT4 a = state[0], b = state[1], c = state[2], d = state[3], x[16];
+
+ Decode (x, block, 64);
+
+ /* Round 1 */
+ FF (a, b, c, d, x[ 0], S11, 0xd76aa478); /* 1 */
+ FF (d, a, b, c, x[ 1], S12, 0xe8c7b756); /* 2 */
+ FF (c, d, a, b, x[ 2], S13, 0x242070db); /* 3 */
+ FF (b, c, d, a, x[ 3], S14, 0xc1bdceee); /* 4 */
+ FF (a, b, c, d, x[ 4], S11, 0xf57c0faf); /* 5 */
+ FF (d, a, b, c, x[ 5], S12, 0x4787c62a); /* 6 */
+ FF (c, d, a, b, x[ 6], S13, 0xa8304613); /* 7 */
+ FF (b, c, d, a, x[ 7], S14, 0xfd469501); /* 8 */
+ FF (a, b, c, d, x[ 8], S11, 0x698098d8); /* 9 */
+ FF (d, a, b, c, x[ 9], S12, 0x8b44f7af); /* 10 */
+ FF (c, d, a, b, x[10], S13, 0xffff5bb1); /* 11 */
+ FF (b, c, d, a, x[11], S14, 0x895cd7be); /* 12 */
+ FF (a, b, c, d, x[12], S11, 0x6b901122); /* 13 */
+ FF (d, a, b, c, x[13], S12, 0xfd987193); /* 14 */
+ FF (c, d, a, b, x[14], S13, 0xa679438e); /* 15 */
+ FF (b, c, d, a, x[15], S14, 0x49b40821); /* 16 */
+
+ /* Round 2 */
+ GG (a, b, c, d, x[ 1], S21, 0xf61e2562); /* 17 */
+ GG (d, a, b, c, x[ 6], S22, 0xc040b340); /* 18 */
+ GG (c, d, a, b, x[11], S23, 0x265e5a51); /* 19 */
+ GG (b, c, d, a, x[ 0], S24, 0xe9b6c7aa); /* 20 */
+ GG (a, b, c, d, x[ 5], S21, 0xd62f105d); /* 21 */
+ GG (d, a, b, c, x[10], S22, 0x2441453); /* 22 */
+ GG (c, d, a, b, x[15], S23, 0xd8a1e681); /* 23 */
+ GG (b, c, d, a, x[ 4], S24, 0xe7d3fbc8); /* 24 */
+ GG (a, b, c, d, x[ 9], S21, 0x21e1cde6); /* 25 */
+ GG (d, a, b, c, x[14], S22, 0xc33707d6); /* 26 */
+ GG (c, d, a, b, x[ 3], S23, 0xf4d50d87); /* 27 */
+ GG (b, c, d, a, x[ 8], S24, 0x455a14ed); /* 28 */
+ GG (a, b, c, d, x[13], S21, 0xa9e3e905); /* 29 */
+ GG (d, a, b, c, x[ 2], S22, 0xfcefa3f8); /* 30 */
+ GG (c, d, a, b, x[ 7], S23, 0x676f02d9); /* 31 */
+ GG (b, c, d, a, x[12], S24, 0x8d2a4c8a); /* 32 */
+
+ /* Round 3 */
+ HH (a, b, c, d, x[ 5], S31, 0xfffa3942); /* 33 */
+ HH (d, a, b, c, x[ 8], S32, 0x8771f681); /* 34 */
+ HH (c, d, a, b, x[11], S33, 0x6d9d6122); /* 35 */
+ HH (b, c, d, a, x[14], S34, 0xfde5380c); /* 36 */
+ HH (a, b, c, d, x[ 1], S31, 0xa4beea44); /* 37 */
+ HH (d, a, b, c, x[ 4], S32, 0x4bdecfa9); /* 38 */
+ HH (c, d, a, b, x[ 7], S33, 0xf6bb4b60); /* 39 */
+ HH (b, c, d, a, x[10], S34, 0xbebfbc70); /* 40 */
+ HH (a, b, c, d, x[13], S31, 0x289b7ec6); /* 41 */
+ HH (d, a, b, c, x[ 0], S32, 0xeaa127fa); /* 42 */
+ HH (c, d, a, b, x[ 3], S33, 0xd4ef3085); /* 43 */
+ HH (b, c, d, a, x[ 6], S34, 0x4881d05); /* 44 */
+ HH (a, b, c, d, x[ 9], S31, 0xd9d4d039); /* 45 */
+ HH (d, a, b, c, x[12], S32, 0xe6db99e5); /* 46 */
+ HH (c, d, a, b, x[15], S33, 0x1fa27cf8); /* 47 */
+ HH (b, c, d, a, x[ 2], S34, 0xc4ac5665); /* 48 */
+
+ /* Round 4 */
+ II (a, b, c, d, x[ 0], S41, 0xf4292244); /* 49 */
+ II (d, a, b, c, x[ 7], S42, 0x432aff97); /* 50 */
+ II (c, d, a, b, x[14], S43, 0xab9423a7); /* 51 */
+ II (b, c, d, a, x[ 5], S44, 0xfc93a039); /* 52 */
+ II (a, b, c, d, x[12], S41, 0x655b59c3); /* 53 */
+ II (d, a, b, c, x[ 3], S42, 0x8f0ccc92); /* 54 */
+ II (c, d, a, b, x[10], S43, 0xffeff47d); /* 55 */
+ II (b, c, d, a, x[ 1], S44, 0x85845dd1); /* 56 */
+ II (a, b, c, d, x[ 8], S41, 0x6fa87e4f); /* 57 */
+ II (d, a, b, c, x[15], S42, 0xfe2ce6e0); /* 58 */
+ II (c, d, a, b, x[ 6], S43, 0xa3014314); /* 59 */
+ II (b, c, d, a, x[13], S44, 0x4e0811a1); /* 60 */
+ II (a, b, c, d, x[ 4], S41, 0xf7537e82); /* 61 */
+ II (d, a, b, c, x[11], S42, 0xbd3af235); /* 62 */
+ II (c, d, a, b, x[ 2], S43, 0x2ad7d2bb); /* 63 */
+ II (b, c, d, a, x[ 9], S44, 0xeb86d391); /* 64 */
+
+ state[0] += a;
+ state[1] += b;
+ state[2] += c;
+ state[3] += d;
+
+ /* Zeroize sensitive information. */
+ memset((void *)x, 0, sizeof (x));
+}
+
+/* Encodes input (UINT4) into output (unsigned char). Assumes len is
+ a multiple of 4.
+ */
+static void Encode (unsigned char *output,
+ UINT4 *input,
+ unsigned int len)
+{
+ unsigned int i, j;
+
+ for(i = 0, j = 0; j < len; i++, j += 4) {
+ output[j] = (unsigned char)(input[i] & 0xff);
+ output[j+1] = (unsigned char)((input[i] >> 8) & 0xff);
+ output[j+2] = (unsigned char)((input[i] >> 16) & 0xff);
+ output[j+3] = (unsigned char)((input[i] >> 24) & 0xff);
}
+}
+
+/* Decodes input (unsigned char) into output (UINT4). Assumes len is
+ a multiple of 4.
+*/
+static void Decode (UINT4 *output,
+ const unsigned char *input,
+ unsigned int len)
+{
+ unsigned int i, j;
- memset(&ctx->buffer[used], 0, available - 8);
-
- ctx->lo <<= 3;
- ctx->buffer[56] = curlx_ultouc((ctx->lo)&0xff);
- ctx->buffer[57] = curlx_ultouc((ctx->lo >> 8)&0xff);
- ctx->buffer[58] = curlx_ultouc((ctx->lo >> 16)&0xff);
- ctx->buffer[59] = curlx_ultouc(ctx->lo >> 24);
- ctx->buffer[60] = curlx_ultouc((ctx->hi)&0xff);
- ctx->buffer[61] = curlx_ultouc((ctx->hi >> 8)&0xff);
- ctx->buffer[62] = curlx_ultouc((ctx->hi >> 16)&0xff);
- ctx->buffer[63] = curlx_ultouc(ctx->hi >> 24);
-
- body(ctx, ctx->buffer, 64);
-
- result[0] = curlx_ultouc((ctx->a)&0xff);
- result[1] = curlx_ultouc((ctx->a >> 8)&0xff);
- result[2] = curlx_ultouc((ctx->a >> 16)&0xff);
- result[3] = curlx_ultouc(ctx->a >> 24);
- result[4] = curlx_ultouc((ctx->b)&0xff);
- result[5] = curlx_ultouc((ctx->b >> 8)&0xff);
- result[6] = curlx_ultouc((ctx->b >> 16)&0xff);
- result[7] = curlx_ultouc(ctx->b >> 24);
- result[8] = curlx_ultouc((ctx->c)&0xff);
- result[9] = curlx_ultouc((ctx->c >> 8)&0xff);
- result[10] = curlx_ultouc((ctx->c >> 16)&0xff);
- result[11] = curlx_ultouc(ctx->c >> 24);
- result[12] = curlx_ultouc((ctx->d)&0xff);
- result[13] = curlx_ultouc((ctx->d >> 8)&0xff);
- result[14] = curlx_ultouc((ctx->d >> 16)&0xff);
- result[15] = curlx_ultouc(ctx->d >> 24);
-
- memset(ctx, 0, sizeof(*ctx));
+ for(i = 0, j = 0; j < len; i++, j += 4)
+ output[i] = ((UINT4)input[j]) | (((UINT4)input[j+1]) << 8) |
+ (((UINT4)input[j+2]) << 16) | (((UINT4)input[j+3]) << 24);
}
#endif /* CRYPTO LIBS */
+/* The last #include file should be: */
+#include "memdebug.h"
+
const HMAC_params Curl_HMAC_MD5[] = {
{
(HMAC_hinit_func) MD5_Init, /* Hash initialization function. */
@@ -502,9 +486,6 @@ const MD5_params Curl_DIGEST_MD5[] = {
}
};
-/*
- * @unittest: 1601
- */
void Curl_md5it(unsigned char *outbuffer, /* 16 bytes */
const unsigned char *input)
{
diff --git a/lib/memdebug.c b/lib/memdebug.c
index dd8889b2d..4afa620a0 100644
--- a/lib/memdebug.c
+++ b/lib/memdebug.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -26,7 +26,8 @@
#include <curl/curl.h>
-#include "curl_printf.h"
+#define _MPRINTF_REPLACE
+#include <curl/mprintf.h>
#include "urldata.h"
#define MEMDEBUG_NODEFINES /* don't redefine the standard functions */
@@ -112,7 +113,7 @@ void curl_memdebug(const char *logname)
{
if(!logfile) {
if(logname && *logname)
- logfile = fopen(logname, FOPEN_WRITETEXT);
+ logfile = fopen(logname, "w");
else
logfile = stderr;
#ifdef MEMDEBUG_LOG_SYNC
@@ -342,10 +343,10 @@ curl_socket_t curl_socket(int domain, int type, int protocol,
int line, const char *source)
{
const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
- "FD %s:%d socket() = %d\n" :
- (sizeof(curl_socket_t) == sizeof(long)) ?
- "FD %s:%d socket() = %ld\n" :
- "FD %s:%d socket() = %zd\n";
+ "FD %s:%d socket() = %d\n" :
+ (sizeof(curl_socket_t) == sizeof(long)) ?
+ "FD %s:%d socket() = %ld\n" :
+ "FD %s:%d socket() = %zd\n" ;
curl_socket_t sockfd = socket(domain, type, protocol);
@@ -361,10 +362,10 @@ int curl_socketpair(int domain, int type, int protocol,
int line, const char *source)
{
const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
- "FD %s:%d socketpair() = %d %d\n" :
- (sizeof(curl_socket_t) == sizeof(long)) ?
- "FD %s:%d socketpair() = %ld %ld\n" :
- "FD %s:%d socketpair() = %zd %zd\n";
+ "FD %s:%d socketpair() = %d %d\n" :
+ (sizeof(curl_socket_t) == sizeof(long)) ?
+ "FD %s:%d socketpair() = %ld %ld\n" :
+ "FD %s:%d socketpair() = %zd %zd\n" ;
int res = socketpair(domain, type, protocol, socket_vector);
@@ -379,10 +380,10 @@ curl_socket_t curl_accept(curl_socket_t s, void *saddr, void *saddrlen,
int line, const char *source)
{
const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
- "FD %s:%d accept() = %d\n" :
- (sizeof(curl_socket_t) == sizeof(long)) ?
- "FD %s:%d accept() = %ld\n" :
- "FD %s:%d accept() = %zd\n";
+ "FD %s:%d accept() = %d\n" :
+ (sizeof(curl_socket_t) == sizeof(long)) ?
+ "FD %s:%d accept() = %ld\n" :
+ "FD %s:%d accept() = %zd\n" ;
struct sockaddr *addr = (struct sockaddr *)saddr;
curl_socklen_t *addrlen = (curl_socklen_t *)saddrlen;
@@ -399,10 +400,10 @@ curl_socket_t curl_accept(curl_socket_t s, void *saddr, void *saddrlen,
void curl_mark_sclose(curl_socket_t sockfd, int line, const char *source)
{
const char *fmt = (sizeof(curl_socket_t) == sizeof(int)) ?
- "FD %s:%d sclose(%d)\n":
- (sizeof(curl_socket_t) == sizeof(long)) ?
- "FD %s:%d sclose(%ld)\n":
- "FD %s:%d sclose(%zd)\n";
+ "FD %s:%d sclose(%d)\n" :
+ (sizeof(curl_socket_t) == sizeof(long)) ?
+ "FD %s:%d sclose(%ld)\n" :
+ "FD %s:%d sclose(%zd)\n" ;
if(source)
curl_memlog(fmt, source, line, sockfd);
diff --git a/lib/memdebug.h b/lib/memdebug.h
index cfac1e077..bd565c8dc 100644
--- a/lib/memdebug.h
+++ b/lib/memdebug.h
@@ -8,7 +8,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -104,13 +104,13 @@ CURL_EXTERN int curl_fclose(FILE *file, int line, const char *source);
#endif
#define socket(domain,type,protocol)\
- curl_socket(domain, type, protocol, __LINE__, __FILE__)
+ curl_socket(domain,type,protocol,__LINE__,__FILE__)
#undef accept /* for those with accept as a macro */
#define accept(sock,addr,len)\
- curl_accept(sock, addr, len, __LINE__, __FILE__)
+ curl_accept(sock,addr,len,__LINE__,__FILE__)
#ifdef HAVE_SOCKETPAIR
#define socketpair(domain,type,protocol,socket_vector)\
- curl_socketpair(domain, type, protocol, socket_vector, __LINE__, __FILE__)
+ curl_socketpair(domain,type,protocol,socket_vector,__LINE__,__FILE__)
#endif
#ifdef HAVE_GETADDRINFO
@@ -119,25 +119,25 @@ CURL_EXTERN int curl_fclose(FILE *file, int line, const char *source);
our macro as for other platforms. Instead, we redefine the new name they
define getaddrinfo to become! */
#define ogetaddrinfo(host,serv,hint,res) \
- curl_dogetaddrinfo(host, serv, hint, res, __LINE__, __FILE__)
+ curl_dogetaddrinfo(host,serv,hint,res,__LINE__,__FILE__)
#else
#undef getaddrinfo
#define getaddrinfo(host,serv,hint,res) \
- curl_dogetaddrinfo(host, serv, hint, res, __LINE__, __FILE__)
+ curl_dogetaddrinfo(host,serv,hint,res,__LINE__,__FILE__)
#endif
#endif /* HAVE_GETADDRINFO */
#ifdef HAVE_GETNAMEINFO
#undef getnameinfo
#define getnameinfo(sa,salen,host,hostlen,serv,servlen,flags) \
- curl_dogetnameinfo(sa, salen, host, hostlen, serv, servlen, flags, \
- __LINE__, __FILE__)
+ curl_dogetnameinfo(sa,salen,host,hostlen,serv,servlen,flags, __LINE__, \
+ __FILE__)
#endif /* HAVE_GETNAMEINFO */
#ifdef HAVE_FREEADDRINFO
#undef freeaddrinfo
#define freeaddrinfo(data) \
- curl_dofreeaddrinfo(data, __LINE__, __FILE__)
+ curl_dofreeaddrinfo(data,__LINE__,__FILE__)
#endif /* HAVE_FREEADDRINFO */
/* sclose is probably already defined, redefine it! */
@@ -171,6 +171,6 @@ CURL_EXTERN int curl_fclose(FILE *file, int line, const char *source);
*/
#define Curl_safefree(ptr) \
- do { free((ptr)); (ptr) = NULL;} WHILE_FALSE
+ do {if((ptr)) {free((ptr)); (ptr) = NULL;}} WHILE_FALSE
#endif /* HEADER_CURL_MEMDEBUG_H */
diff --git a/lib/mk-ca-bundle.pl b/lib/mk-ca-bundle.pl
index c2080e952..0b1331840 100755
--- a/lib/mk-ca-bundle.pl
+++ b/lib/mk-ca-bundle.pl
@@ -185,12 +185,6 @@ sub VERSION_MESSAGE() {
warning_message() unless ($opt_q || $url =~ m/^(ht|f)tps:/i );
HELP_MESSAGE() if ($opt_h);
-sub report($@) {
- my $output = shift;
-
- print STDERR $output . "\n" unless $opt_q;
-}
-
sub is_in_list($@) {
my $target = shift;
@@ -284,20 +278,20 @@ my $fetched;
my $oldsha1 = oldsha1($crt);
-report "SHA1 of old file: $oldsha1";
+print STDERR "SHA1 of old file: $oldsha1\n" if (!$opt_q);
-report "Downloading '$txt' ...";
+print STDERR "Downloading '$txt' ...\n" if (!$opt_q);
if($curl && !$opt_n) {
my $https = $url;
$https =~ s/^http:/https:/;
- report "Get certdata over HTTPS with curl!";
+ print STDERR "Get certdata over HTTPS with curl!\n" if (!$opt_q);
my $quiet = $opt_q ? "-s" : "";
my @out = `curl -w %{response_code} $quiet -O $https`;
if(@out && $out[0] == 200) {
$fetched = 1;
} else {
- report "Failed downloading HTTPS with curl, trying HTTP with LWP";
+ print STDERR "Failed downloading HTTPS with curl, trying HTTP with LWP\n" if (!$opt_q);
}
}
@@ -306,14 +300,15 @@ unless ($fetched || ($opt_n and -e $txt)) {
$ua->env_proxy();
$resp = $ua->mirror($url, $txt);
if ($resp && $resp->code eq '304') {
- report "Not modified";
+ print STDERR "Not modified\n" unless $opt_q;
exit 0 if -e $crt && !$opt_f;
} else {
$fetched = 1;
}
if( !$resp || $resp->code !~ /^(?:200|304)$/ ) {
- report "Unable to download latest data: "
- . ($resp? $resp->code . ' - ' . $resp->message : "LWP failed");
+ print STDERR "Unable to download latest data: "
+ . ($resp? $resp->code . ' - ' . $resp->message : "LWP failed") . "\n"
+ unless $opt_q;
exit 1 if -e $crt || ! -r $txt;
}
}
@@ -330,11 +325,11 @@ if(!$filedate) {
my $newsha1= sha1($txt);
if(!$opt_f && $oldsha1 eq $newsha1) {
- report "Downloaded file identical to previous run\'s source file. Exiting";
+ print STDERR "Downloaded file identical to previous run\'s source file. Exiting\n";
exit;
}
-report "SHA1 of new file: $newsha1";
+print STDERR "SHA1 of new file: $newsha1\n";
my $currentdate = scalar gmtime($filedate);
@@ -366,7 +361,7 @@ print CRT <<EOT;
EOT
-report "Processing '$txt' ...";
+print STDERR "Processing '$txt' ...\n" if (!$opt_q);
my $caname;
my $certnum = 0;
my $skipnum = 0;
@@ -418,9 +413,9 @@ while (<TXT>) {
last if (/^#/);
if (/^CKA_TRUST_([A-Z_]+)\s+CK_TRUST\s+CKT_NSS_([A-Z_]+)\s*$/) {
if ( !is_in_list($1,@valid_mozilla_trust_purposes) ) {
- report "Warning: Unrecognized trust purpose for cert: $caname. Trust purpose: $1. Trust Level: $2";
+ print STDERR "Warning: Unrecognized trust purpose for cert: $caname. Trust purpose: $1. Trust Level: $2\n" if (!$opt_q);
} elsif ( !is_in_list($2,@valid_mozilla_trust_levels) ) {
- report "Warning: Unrecognized trust level for cert: $caname. Trust purpose: $1. Trust Level: $2";
+ print STDERR "Warning: Unrecognized trust level for cert: $caname. Trust purpose: $1. Trust Level: $2\n" if (!$opt_q);
} else {
push @{$trust_purposes_by_level{$2}}, $1;
}
@@ -475,7 +470,7 @@ while (<TXT>) {
open(CRT, ">>$crt.~") or die "Couldn't open $crt.~: $!";
}
}
- report "Parsing: $caname" if ($opt_v);
+ print STDERR "Parsing: $caname\n" if ($opt_v);
$certnum ++;
$start_of_cert = 0;
}
@@ -496,4 +491,4 @@ unless( $stdout ) {
rename "$crt.~", $crt or die "Failed to rename $crt.~ to $crt: $!\n";
}
unlink $txt if ($opt_u);
-report "Done ($certnum CA certs processed, $skipnum skipped).";
+print STDERR "Done ($certnum CA certs processed, $skipnum skipped).\n" if (!$opt_q);
diff --git a/lib/multi.c b/lib/multi.c
index 00520873c..97c9e65cf 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -39,10 +39,14 @@
#include "warnless.h"
#include "speedcheck.h"
#include "conncache.h"
+#include "bundles.h"
#include "multihandle.h"
#include "pipeline.h"
#include "sigpipe.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -62,11 +66,15 @@
#define GOOD_MULTI_HANDLE(x) \
((x) && (((struct Curl_multi *)(x))->type == CURL_MULTI_HANDLE))
+#define GOOD_EASY_HANDLE(x) \
+ ((x) && (((struct SessionHandle *)(x))->magic == CURLEASY_MAGIC_NUMBER))
static void singlesocket(struct Curl_multi *multi,
struct SessionHandle *data);
static int update_timer(struct Curl_multi *multi);
+static bool isHandleAtHead(struct SessionHandle *handle,
+ struct curl_llist *pipeline);
static CURLMcode add_next_timeout(struct timeval now,
struct Curl_multi *multi,
struct SessionHandle *d);
@@ -81,7 +89,6 @@ static const char * const statename[]={
"WAITRESOLVE",
"WAITCONNECT",
"WAITPROXYCONNECT",
- "SENDPROTOCONNECT",
"PROTOCONNECT",
"WAITDO",
"DO",
@@ -150,6 +157,7 @@ static void mstate(struct SessionHandle *data, CURLMstate state
struct Curl_sh_entry {
struct SessionHandle *easy;
+ time_t timestamp;
int action; /* what action READ/WRITE this socket waits for */
curl_socket_t socket; /* mainly to ease debugging */
void *socketp; /* settable by users with curl_multi_assign() */
@@ -211,7 +219,8 @@ static void sh_freeentry(void *freethis)
{
struct Curl_sh_entry *p = (struct Curl_sh_entry *) freethis;
- free(p);
+ if(p)
+ free(p);
}
static size_t fd_key_compare(void *k1, size_t k1_len, void *k2, size_t k2_len)
@@ -247,10 +256,10 @@ static size_t hash_fd(void *key, size_t key_length, size_t slots_num)
* per call."
*
*/
-static int sh_init(struct curl_hash *hash, int hashsize)
+static struct curl_hash *sh_init(int hashsize)
{
- return Curl_hash_init(hash, hashsize, hash_fd, fd_key_compare,
- sh_freeentry);
+ return Curl_hash_alloc(hashsize, hash_fd, fd_key_compare,
+ sh_freeentry);
}
/*
@@ -289,13 +298,16 @@ struct Curl_multi *Curl_multi_handle(int hashsize, /* socket hash */
multi->type = CURL_MULTI_HANDLE;
- if(Curl_mk_dnscache(&multi->hostcache))
+ multi->hostcache = Curl_mk_dnscache();
+ if(!multi->hostcache)
goto error;
- if(sh_init(&multi->sockhash, hashsize))
+ multi->sockhash = sh_init(hashsize);
+ if(!multi->sockhash)
goto error;
- if(Curl_conncache_init(&multi->conn_cache, chashsize))
+ multi->conn_cache = Curl_conncache_init(chashsize);
+ if(!multi->conn_cache)
goto error;
multi->msglist = Curl_llist_alloc(multi_freeamsg);
@@ -312,7 +324,7 @@ struct Curl_multi *Curl_multi_handle(int hashsize, /* socket hash */
goto error;
multi->closure_handle->multi = multi;
- multi->closure_handle->state.conn_cache = &multi->conn_cache;
+ multi->closure_handle->state.conn_cache = multi->conn_cache;
multi->max_pipeline_length = 5;
@@ -322,9 +334,12 @@ struct Curl_multi *Curl_multi_handle(int hashsize, /* socket hash */
error:
- Curl_hash_destroy(&multi->sockhash);
- Curl_hash_destroy(&multi->hostcache);
- Curl_conncache_destroy(&multi->conn_cache);
+ Curl_hash_destroy(multi->sockhash);
+ multi->sockhash = NULL;
+ Curl_hash_destroy(multi->hostcache);
+ multi->hostcache = NULL;
+ Curl_conncache_destroy(multi->conn_cache);
+ multi->conn_cache = NULL;
Curl_close(multi->closure_handle);
multi->closure_handle = NULL;
Curl_llist_destroy(multi->msglist, NULL);
@@ -393,12 +408,14 @@ CURLMcode curl_multi_add_handle(CURLM *multi_handle,
easy handle's one is currently not set. */
else if(!data->dns.hostcache ||
(data->dns.hostcachetype == HCACHE_NONE)) {
- data->dns.hostcache = &multi->hostcache;
+ data->dns.hostcache = multi->hostcache;
data->dns.hostcachetype = HCACHE_MULTI;
}
/* Point to the multi's connection cache */
- data->state.conn_cache = &multi->conn_cache;
+ data->state.conn_cache = multi->conn_cache;
+
+ data->state.infilesize = data->set.filesize;
/* This adds the new entry at the 'end' of the doubly-linked circular
list of SessionHandle structs to try and maintain a FIFO queue so
@@ -414,7 +431,8 @@ CURLMcode curl_multi_add_handle(CURLM *multi_handle,
multi->easylp = data; /* the new last node */
}
else {
- /* first node, make prev NULL! */
+ /* first node, make both prev and next be NULL! */
+ data->next = NULL;
data->prev = NULL;
multi->easylp = multi->easyp = data; /* both first and last */
}
@@ -490,22 +508,18 @@ CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
if(!data->multi)
return CURLM_OK; /* it is already removed so let's say it is fine! */
+
premature = (data->mstate < CURLM_STATE_COMPLETED) ? TRUE : FALSE;
easy_owns_conn = (data->easy_conn && (data->easy_conn->data == easy)) ?
TRUE : FALSE;
/* If the 'state' is not INIT or COMPLETED, we might need to do something
nice to put the easy_handle in a good known state when this returns. */
- if(premature) {
+ if(premature)
/* this handle is "alive" so we need to count down the total number of
alive connections when this is removed */
multi->num_alive--;
- /* When this handle gets removed, other handles may be able to get the
- connection */
- Curl_multi_process_pending_handles(multi);
- }
-
if(data->easy_conn &&
data->mstate > CURLM_STATE_DO &&
data->mstate < CURLM_STATE_COMPLETED) {
@@ -607,10 +621,9 @@ CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
return CURLM_OK;
}
-/* Return TRUE if the application asked for a certain set of pipelining */
-bool Curl_pipeline_wanted(const struct Curl_multi *multi, int bits)
+bool Curl_multi_pipeline_enabled(const struct Curl_multi *multi)
{
- return (multi && (multi->pipelining & bits)) ? TRUE : FALSE;
+ return (multi && multi->pipelining_enabled) ? TRUE : FALSE;
}
void Curl_multi_handlePipeBreak(struct SessionHandle *data)
@@ -636,24 +649,14 @@ static int waitconnect_getsock(struct connectdata *conn,
}
}
- return rc;
-}
-
-static int waitproxyconnect_getsock(struct connectdata *conn,
- curl_socket_t *sock,
- int numsocks)
-{
- if(!numsocks)
- return GETSOCK_BLANK;
-
- sock[0] = conn->sock[FIRSTSOCKET];
-
/* when we've sent a CONNECT to a proxy, we should rather wait for the
socket to become readable to be able to get the response headers */
- if(conn->tunnel_state[FIRSTSOCKET] == TUNNEL_CONNECT)
- return GETSOCK_READSOCK(0);
+ if(conn->tunnel_state[FIRSTSOCKET] == TUNNEL_CONNECT) {
+ sock[0] = conn->sock[FIRSTSOCKET];
+ rc = GETSOCK_READSOCK(0);
+ }
- return GETSOCK_WRITESOCK(0);
+ return rc;
}
static int domore_getsock(struct connectdata *conn,
@@ -706,7 +709,6 @@ static int multi_getsock(struct SessionHandle *data,
return Curl_resolver_getsock(data->easy_conn, socks, numsocks);
case CURLM_STATE_PROTOCONNECT:
- case CURLM_STATE_SENDPROTOCONNECT:
return Curl_protocol_getsock(data->easy_conn, socks, numsocks);
case CURLM_STATE_DO:
@@ -714,8 +716,6 @@ static int multi_getsock(struct SessionHandle *data,
return Curl_doing_getsock(data->easy_conn, socks, numsocks);
case CURLM_STATE_WAITPROXYCONNECT:
- return waitproxyconnect_getsock(data->easy_conn, socks, numsocks);
-
case CURLM_STATE_WAITCONNECT:
return waitconnect_getsock(data->easy_conn, socks, numsocks);
@@ -916,62 +916,12 @@ CURLMcode curl_multi_wait(CURLM *multi_handle,
else
i = 0;
- free(ufds);
+ Curl_safefree(ufds);
if(ret)
*ret = i;
return CURLM_OK;
}
-/*
- * Curl_multi_connchanged() is called to tell that there is a connection in
- * this multi handle that has changed state (pipelining become possible, the
- * number of allowed streams changed or similar), and a subsequent use of this
- * multi handle should move CONNECT_PEND handles back to CONNECT to have them
- * retry.
- */
-void Curl_multi_connchanged(struct Curl_multi *multi)
-{
- multi->recheckstate = TRUE;
-}
-
-/*
- * multi_ischanged() is called
- *
- * Returns TRUE/FALSE whether the state is changed to trigger a CONNECT_PEND
- * => CONNECT action.
- *
- * Set 'clear' to TRUE to have it also clear the state variable.
- */
-static bool multi_ischanged(struct Curl_multi *multi, bool clear)
-{
- bool retval = multi->recheckstate;
- if(clear)
- multi->recheckstate = FALSE;
- return retval;
-}
-
-CURLMcode Curl_multi_add_perform(struct Curl_multi *multi,
- struct SessionHandle *data,
- struct connectdata *conn)
-{
- CURLMcode rc;
-
- rc = curl_multi_add_handle(multi, data);
- if(!rc) {
- struct SingleRequest *k = &data->req;
-
- /* pass in NULL for 'conn' here since we don't want to init the
- connection, only this transfer */
- Curl_init_do(data, NULL);
-
- /* take this handle to the perform state right away */
- multistate(data, CURLM_STATE_PERFORM);
- data->easy_conn = conn;
- k->keepon |= KEEP_RECV; /* setup to receive! */
- }
- return rc;
-}
-
static CURLMcode multi_runsingle(struct Curl_multi *multi,
struct timeval now,
struct SessionHandle *data)
@@ -1023,11 +973,6 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
return CURLM_INTERNAL_ERROR;
}
- if(multi_ischanged(multi, TRUE)) {
- DEBUGF(infof(data, "multi changed, check CONNECT_PEND queue!\n"));
- Curl_multi_process_pending_handles(multi);
- }
-
if(data->easy_conn && data->mstate > CURLM_STATE_CONNECT &&
data->mstate < CURLM_STATE_COMPLETED)
/* Make sure we set the connection's current owner */
@@ -1074,7 +1019,6 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
disconnect_conn = TRUE;
}
result = CURLE_OPERATION_TIMEDOUT;
- (void)Curl_done(&data->easy_conn, result, TRUE);
/* Skip the statemachine and go directly to error handling section. */
goto statemachine_end;
}
@@ -1132,7 +1076,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
rc = CURLM_CALL_MULTI_PERFORM;
if(protocol_connect)
- multistate(data, Curl_pipeline_wanted(multi, CURLPIPE_HTTP1)?
+ multistate(data, multi->pipelining_enabled?
CURLM_STATE_WAITDO:CURLM_STATE_DO);
else {
#ifndef CURL_DISABLE_HTTP
@@ -1154,9 +1098,13 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
struct connectdata *conn = data->easy_conn;
/* check if we have the name resolved by now */
+ if(data->share)
+ Curl_share_lock(data, CURL_LOCK_DATA_DNS, CURL_LOCK_ACCESS_SINGLE);
+
dns = Curl_fetch_addr(conn, conn->host.name, (int)conn->port);
if(dns) {
+ dns->inuse++; /* we use it! */
#ifdef CURLRES_ASYNCH
conn->async.dns = dns;
conn->async.done = TRUE;
@@ -1165,6 +1113,9 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
infof(data, "Hostname was found in DNS cache\n");
}
+ if(data->share)
+ Curl_share_unlock(data, CURL_LOCK_DATA_DNS);
+
if(!dns)
result = Curl_resolver_is_resolved(data->easy_conn, &dns);
@@ -1189,7 +1140,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
/* call again please so that we get the next socket setup */
rc = CURLM_CALL_MULTI_PERFORM;
if(protocol_connect)
- multistate(data, Curl_pipeline_wanted(multi, CURLPIPE_HTTP1)?
+ multistate(data, multi->pipelining_enabled?
CURLM_STATE_WAITDO:CURLM_STATE_DO);
else {
#ifndef CURL_DISABLE_HTTP
@@ -1215,29 +1166,40 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
/* this is HTTP-specific, but sending CONNECT to a proxy is HTTP... */
result = Curl_http_connect(data->easy_conn, &protocol_connect);
- rc = CURLM_CALL_MULTI_PERFORM;
if(data->easy_conn->bits.proxy_connect_closed) {
/* connect back to proxy again */
result = CURLE_OK;
- Curl_done(&data->easy_conn, CURLE_OK, FALSE);
+ rc = CURLM_CALL_MULTI_PERFORM;
multistate(data, CURLM_STATE_CONNECT);
}
else if(!result) {
if(data->easy_conn->tunnel_state[FIRSTSOCKET] == TUNNEL_COMPLETE)
- /* initiate protocol connect phase */
- multistate(data, CURLM_STATE_SENDPROTOCONNECT);
+ multistate(data, CURLM_STATE_WAITCONNECT);
}
break;
#endif
case CURLM_STATE_WAITCONNECT:
- /* awaiting a completion of an asynch TCP connect */
- result = Curl_is_connected(data->easy_conn, FIRSTSOCKET, &connected);
- if(connected && !result) {
+ /* awaiting a completion of an asynch connect */
+ result = Curl_is_connected(data->easy_conn,
+ FIRSTSOCKET,
+ &connected);
+ if(connected) {
+
+ if(!result)
+ /* if everything is still fine we do the protocol-specific connect
+ setup */
+ result = Curl_protocol_connect(data->easy_conn,
+ &protocol_connect);
+ }
+
+ if(data->easy_conn->bits.proxy_connect_closed) {
+ /* connect back to proxy again since it was closed in a proxy CONNECT
+ setup */
+ result = CURLE_OK;
rc = CURLM_CALL_MULTI_PERFORM;
- multistate(data, data->easy_conn->bits.tunnel_proxy?
- CURLM_STATE_WAITPROXYCONNECT:
- CURLM_STATE_SENDPROTOCONNECT);
+ multistate(data, CURLM_STATE_CONNECT);
+ break;
}
else if(result) {
/* failure detected */
@@ -1245,25 +1207,29 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
disconnect_conn = TRUE;
break;
}
- break;
- case CURLM_STATE_SENDPROTOCONNECT:
- result = Curl_protocol_connect(data->easy_conn, &protocol_connect);
- if(!protocol_connect)
- /* switch to waiting state */
- multistate(data, CURLM_STATE_PROTOCONNECT);
- else if(!result) {
- /* protocol connect has completed, go WAITDO or DO */
- multistate(data, Curl_pipeline_wanted(multi, CURLPIPE_HTTP1)?
- CURLM_STATE_WAITDO:CURLM_STATE_DO);
+ if(connected) {
+ if(!protocol_connect) {
+ /* We have a TCP connection, but 'protocol_connect' may be false
+ and then we continue to 'STATE_PROTOCONNECT'. If protocol
+ connect is TRUE, we move on to STATE_DO.
+ BUT if we are using a proxy we must change to WAITPROXYCONNECT
+ */
+#ifndef CURL_DISABLE_HTTP
+ if(data->easy_conn->tunnel_state[FIRSTSOCKET] == TUNNEL_CONNECT)
+ multistate(data, CURLM_STATE_WAITPROXYCONNECT);
+ else
+#endif
+ multistate(data, CURLM_STATE_PROTOCONNECT);
+
+ }
+ else
+ /* after the connect has completed, go WAITDO or DO */
+ multistate(data, multi->pipelining_enabled?
+ CURLM_STATE_WAITDO:CURLM_STATE_DO);
+
rc = CURLM_CALL_MULTI_PERFORM;
}
- else if(result) {
- /* failure detected */
- Curl_posttransfer(data);
- Curl_done(&data->easy_conn, result, TRUE);
- disconnect_conn = TRUE;
- }
break;
case CURLM_STATE_PROTOCONNECT:
@@ -1271,7 +1237,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
result = Curl_protocol_connecting(data->easy_conn, &protocol_connect);
if(!result && protocol_connect) {
/* after the connect has completed, go WAITDO or DO */
- multistate(data, Curl_pipeline_wanted(multi, CURLPIPE_HTTP1)?
+ multistate(data, multi->pipelining_enabled?
CURLM_STATE_WAITDO:CURLM_STATE_DO);
rc = CURLM_CALL_MULTI_PERFORM;
}
@@ -1285,8 +1251,19 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
case CURLM_STATE_WAITDO:
/* Wait for our turn to DO when we're pipelining requests */
- if(Curl_pipeline_checkget_write(data, data->easy_conn)) {
- /* Grabbed the channel */
+#ifdef DEBUGBUILD
+ infof(data, "WAITDO: Conn %ld send pipe %zu inuse %s athead %s\n",
+ data->easy_conn->connection_id,
+ data->easy_conn->send_pipe->size,
+ data->easy_conn->writechannel_inuse?"TRUE":"FALSE",
+ isHandleAtHead(data,
+ data->easy_conn->send_pipe)?"TRUE":"FALSE");
+#endif
+ if(!data->easy_conn->writechannel_inuse &&
+ isHandleAtHead(data,
+ data->easy_conn->send_pipe)) {
+ /* Grab the channel */
+ data->easy_conn->writechannel_inuse = TRUE;
multistate(data, CURLM_STATE_DO);
rc = CURLM_CALL_MULTI_PERFORM;
}
@@ -1469,11 +1446,24 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
case CURLM_STATE_WAITPERFORM:
/* Wait for our turn to PERFORM */
- if(Curl_pipeline_checkget_read(data, data->easy_conn)) {
- /* Grabbed the channel */
+ if(!data->easy_conn->readchannel_inuse &&
+ isHandleAtHead(data,
+ data->easy_conn->recv_pipe)) {
+ /* Grab the channel */
+ data->easy_conn->readchannel_inuse = TRUE;
multistate(data, CURLM_STATE_PERFORM);
rc = CURLM_CALL_MULTI_PERFORM;
}
+#ifdef DEBUGBUILD
+ else {
+ infof(data, "WAITPERFORM: Conn %ld recv pipe %zu inuse %s athead %s\n",
+ data->easy_conn->connection_id,
+ data->easy_conn->recv_pipe->size,
+ data->easy_conn->readchannel_inuse?"TRUE":"FALSE",
+ isHandleAtHead(data,
+ data->easy_conn->recv_pipe)?"TRUE":"FALSE");
+ }
+#endif
break;
case CURLM_STATE_TOOFAST: /* limit-rate exceeded in either direction */
@@ -1528,17 +1518,19 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
}
/* read/write data if it is ready to do so */
- result = Curl_readwrite(data->easy_conn, data, &done);
+ result = Curl_readwrite(data->easy_conn, &done);
k = &data->req;
- if(!(k->keepon & KEEP_RECV))
+ if(!(k->keepon & KEEP_RECV)) {
/* We're done receiving */
- Curl_pipeline_leave_read(data->easy_conn);
+ data->easy_conn->readchannel_inuse = FALSE;
+ }
- if(!(k->keepon & KEEP_SEND))
+ if(!(k->keepon & KEEP_SEND)) {
/* We're done sending */
- Curl_pipeline_leave_write(data->easy_conn);
+ data->easy_conn->writechannel_inuse = FALSE;
+ }
if(done || (result == CURLE_RECV_ERROR)) {
/* If CURLE_RECV_ERROR happens early enough, we assume it was a race
@@ -1594,7 +1586,8 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
if(!retry) {
/* if the URL is a follow-location and not just a retried request
then figure out the URL here */
- free(newurl);
+ if(newurl)
+ free(newurl);
newurl = data->req.newurl;
data->req.newurl = NULL;
follow = FOLLOW_REDIR;
@@ -1619,7 +1612,8 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
/* but first check to see if we got a location info even though we're
not following redirects */
if(data->req.location) {
- free(newurl);
+ if(newurl)
+ free(newurl);
newurl = data->req.location;
data->req.location = NULL;
result = Curl_follow(data, newurl, FOLLOW_FAKE);
@@ -1634,7 +1628,8 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
}
}
- free(newurl);
+ if(newurl)
+ free(newurl);
break;
}
@@ -1715,15 +1710,14 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
data->state.pipe_broke = FALSE;
- /* Check if we can move pending requests to send pipe */
- Curl_multi_process_pending_handles(multi);
-
if(data->easy_conn) {
/* if this has a connection, unsubscribe from the pipelines */
- Curl_pipeline_leave_write(data->easy_conn);
- Curl_pipeline_leave_read(data->easy_conn);
+ data->easy_conn->writechannel_inuse = FALSE;
+ data->easy_conn->readchannel_inuse = FALSE;
Curl_removeHandleFromPipeline(data, data->easy_conn->send_pipe);
Curl_removeHandleFromPipeline(data, data->easy_conn->recv_pipe);
+ /* Check if we can move pending requests to send pipe */
+ Curl_multi_process_pending_handles(multi);
if(disconnect_conn) {
/* Don't attempt to send data over a connection that timed out */
@@ -1770,7 +1764,7 @@ static CURLMcode multi_runsingle(struct Curl_multi *multi,
multistate(data, CURLM_STATE_MSGSENT);
}
- } while((rc == CURLM_CALL_MULTI_PERFORM) || multi_ischanged(multi, FALSE));
+ } while(rc == CURLM_CALL_MULTI_PERFORM);
data->result = result;
@@ -1850,7 +1844,7 @@ static void close_all_connections(struct Curl_multi *multi)
{
struct connectdata *conn;
- conn = Curl_conncache_find_first_connection(&multi->conn_cache);
+ conn = Curl_conncache_find_first_connection(multi->conn_cache);
while(conn) {
SIGPIPE_VARIABLE(pipe_st);
conn->data = multi->closure_handle;
@@ -1860,7 +1854,7 @@ static void close_all_connections(struct Curl_multi *multi)
(void)Curl_disconnect(conn, FALSE);
sigpipe_restore(&pipe_st);
- conn = Curl_conncache_find_first_connection(&multi->conn_cache);
+ conn = Curl_conncache_find_first_connection(multi->conn_cache);
}
}
@@ -1883,15 +1877,15 @@ CURLMcode curl_multi_cleanup(CURLM *multi_handle)
sigpipe_ignore(multi->closure_handle, &pipe_st);
restore_pipe = TRUE;
- multi->closure_handle->dns.hostcache = &multi->hostcache;
+ multi->closure_handle->dns.hostcache = multi->hostcache;
Curl_hostcache_clean(multi->closure_handle,
multi->closure_handle->dns.hostcache);
Curl_close(multi->closure_handle);
}
- Curl_hash_destroy(&multi->sockhash);
- Curl_conncache_destroy(&multi->conn_cache);
+ Curl_hash_destroy(multi->sockhash);
+ Curl_conncache_destroy(multi->conn_cache);
Curl_llist_destroy(multi->msglist, NULL);
Curl_llist_destroy(multi->pending, NULL);
@@ -1913,7 +1907,7 @@ CURLMcode curl_multi_cleanup(CURLM *multi_handle)
data = nextdata;
}
- Curl_hash_destroy(&multi->hostcache);
+ Curl_hash_destroy(multi->hostcache);
/* Free the blacklists by setting them to NULL */
Curl_pipeline_set_site_blacklist(NULL, &multi->pipelining_site_bl);
@@ -2002,7 +1996,7 @@ static void singlesocket(struct Curl_multi *multi,
s = socks[i];
/* get it from the hash */
- entry = Curl_hash_pick(&multi->sockhash, (char *)&s, sizeof(s));
+ entry = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
if(curraction & GETSOCK_READSOCK(i))
action |= CURL_POLL_IN;
@@ -2017,7 +2011,7 @@ static void singlesocket(struct Curl_multi *multi,
}
else {
/* this is a socket we didn't have before, add it! */
- entry = sh_addentry(&multi->sockhash, s, data);
+ entry = sh_addentry(multi->sockhash, s, data);
if(!entry)
/* fatal */
return;
@@ -2053,7 +2047,7 @@ static void singlesocket(struct Curl_multi *multi,
/* this socket has been removed. Tell the app to remove it */
remove_sock_from_hash = TRUE;
- entry = Curl_hash_pick(&multi->sockhash, (char *)&s, sizeof(s));
+ entry = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
if(entry) {
/* check if the socket to be removed serves a connection which has
other easy-s in a pipeline. In this case the socket should not be
@@ -2068,7 +2062,7 @@ static void singlesocket(struct Curl_multi *multi,
for the recv_pipe, or the first (in case this particular easy
isn't already) */
if(entry->easy == data) {
- if(Curl_recvpipe_head(data, easy_conn))
+ if(isHandleAtHead(data, easy_conn->recv_pipe))
entry->easy = easy_conn->recv_pipe->head->next->ptr;
else
entry->easy = easy_conn->recv_pipe->head->ptr;
@@ -2082,7 +2076,7 @@ static void singlesocket(struct Curl_multi *multi,
for the send_pipe, or the first (in case this particular easy
isn't already) */
if(entry->easy == data) {
- if(Curl_sendpipe_head(data, easy_conn))
+ if(isHandleAtHead(data, easy_conn->send_pipe))
entry->easy = easy_conn->send_pipe->head->next->ptr;
else
entry->easy = easy_conn->send_pipe->head->ptr;
@@ -2108,7 +2102,7 @@ static void singlesocket(struct Curl_multi *multi,
CURL_POLL_REMOVE,
multi->socket_userp,
entry->socketp);
- sh_delentry(&multi->sockhash, s);
+ sh_delentry(multi->sockhash, s);
}
}
@@ -2135,7 +2129,7 @@ void Curl_multi_closed(struct connectdata *conn, curl_socket_t s)
/* this is set if this connection is part of a handle that is added to
a multi handle, and only then this is necessary */
struct Curl_sh_entry *entry =
- Curl_hash_pick(&multi->sockhash, (char *)&s, sizeof(s));
+ Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
if(entry) {
if(multi->socket_cb)
@@ -2144,7 +2138,7 @@ void Curl_multi_closed(struct connectdata *conn, curl_socket_t s)
entry->socketp);
/* now remove it from the socket hash */
- sh_delentry(&multi->sockhash, s);
+ sh_delentry(multi->sockhash, s);
}
}
}
@@ -2237,7 +2231,7 @@ static CURLMcode multi_socket(struct Curl_multi *multi,
else if(s != CURL_SOCKET_TIMEOUT) {
struct Curl_sh_entry *entry =
- Curl_hash_pick(&multi->sockhash, (char *)&s, sizeof(s));
+ Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
if(!entry)
/* Unmatched socket, we can't act on it but we ignore this fact. In
@@ -2361,14 +2355,8 @@ CURLMcode curl_multi_setopt(CURLM *multi_handle,
case CURLMOPT_SOCKETDATA:
multi->socket_userp = va_arg(param, void *);
break;
- case CURLMOPT_PUSHFUNCTION:
- multi->push_cb = va_arg(param, curl_push_callback);
- break;
- case CURLMOPT_PUSHDATA:
- multi->push_userp = va_arg(param, void *);
- break;
case CURLMOPT_PIPELINING:
- multi->pipelining = va_arg(param, long);
+ multi->pipelining_enabled = (0 != va_arg(param, long)) ? TRUE : FALSE;
break;
case CURLMOPT_TIMERFUNCTION:
multi->timer_cb = va_arg(param, curl_multi_timer_callback);
@@ -2446,7 +2434,7 @@ CURLMcode curl_multi_socket_all(CURLM *multi_handle, int *running_handles)
static CURLMcode multi_timeout(struct Curl_multi *multi,
long *timeout_ms)
{
- static struct timeval tv_zero = {0, 0};
+ static struct timeval tv_zero = {0,0};
if(multi->timetree) {
/* we have a tree of expire times */
@@ -2504,7 +2492,7 @@ static int update_timer(struct Curl_multi *multi)
return -1;
}
if(timeout_ms < 0) {
- static const struct timeval none={0, 0};
+ static const struct timeval none={0,0};
if(Curl_splaycomparekeys(none, multi->timer_lastcall)) {
multi->timer_lastcall = none;
/* there's no timeout now but there was one previously, tell the app to
@@ -2526,6 +2514,16 @@ static int update_timer(struct Curl_multi *multi)
return multi->timer_cb((CURLM*)multi, timeout_ms, multi->timer_userp);
}
+static bool isHandleAtHead(struct SessionHandle *handle,
+ struct curl_llist *pipeline)
+{
+ struct curl_llist_element *curr = pipeline->head;
+ if(curr)
+ return (curr->ptr == handle) ? TRUE : FALSE;
+
+ return FALSE;
+}
+
/*
* multi_freetimeout()
*
@@ -2725,8 +2723,7 @@ CURLMcode curl_multi_assign(CURLM *multi_handle,
struct Curl_multi *multi = (struct Curl_multi *)multi_handle;
if(s != CURL_SOCKET_BAD)
- there = Curl_hash_pick(&multi->sockhash, (char *)&s,
- sizeof(curl_socket_t));
+ there = Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(curl_socket_t));
if(!there)
return CURLM_BAD_SOCKET;
@@ -2746,6 +2743,11 @@ size_t Curl_multi_max_total_connections(struct Curl_multi *multi)
return multi ? multi->max_total_connections : 0;
}
+size_t Curl_multi_max_pipeline_length(struct Curl_multi *multi)
+{
+ return multi ? multi->max_pipeline_length : 0;
+}
+
curl_off_t Curl_multi_content_length_penalty_size(struct Curl_multi *multi)
{
return multi ? multi->content_length_penalty_size : 0;
@@ -2805,7 +2807,7 @@ void Curl_multi_dump(const struct Curl_multi *multi_handle)
for(i=0; i < data->numsocks; i++) {
curl_socket_t s = data->sockets[i];
struct Curl_sh_entry *entry =
- Curl_hash_pick(&multi->sockhash, (char *)&s, sizeof(s));
+ Curl_hash_pick(multi->sockhash, (char *)&s, sizeof(s));
fprintf(stderr, "%d ", (int)s);
if(!entry) {
diff --git a/lib/multihandle.h b/lib/multihandle.h
index 6c24f50f1..1a4b1d966 100644
--- a/lib/multihandle.h
+++ b/lib/multihandle.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -22,8 +22,6 @@
*
***************************************************************************/
-#include "conncache.h"
-
struct Curl_message {
/* the 'CURLMsg' is the part that is visible to the external user */
struct CURLMsg extmsg;
@@ -37,23 +35,22 @@ typedef enum {
CURLM_STATE_CONNECT_PEND, /* 1 - no connections, waiting for one */
CURLM_STATE_CONNECT, /* 2 - resolve/connect has been sent off */
CURLM_STATE_WAITRESOLVE, /* 3 - awaiting the resolve to finalize */
- CURLM_STATE_WAITCONNECT, /* 4 - awaiting the TCP connect to finalize */
+ CURLM_STATE_WAITCONNECT, /* 4 - awaiting the connect to finalize */
CURLM_STATE_WAITPROXYCONNECT, /* 5 - awaiting proxy CONNECT to finalize */
- CURLM_STATE_SENDPROTOCONNECT, /* 6 - initiate protocol connect procedure */
- CURLM_STATE_PROTOCONNECT, /* 7 - completing the protocol-specific connect
+ CURLM_STATE_PROTOCONNECT, /* 6 - completing the protocol-specific connect
phase */
- CURLM_STATE_WAITDO, /* 8 - wait for our turn to send the request */
- CURLM_STATE_DO, /* 9 - start send off the request (part 1) */
- CURLM_STATE_DOING, /* 10 - sending off the request (part 1) */
- CURLM_STATE_DO_MORE, /* 11 - send off the request (part 2) */
- CURLM_STATE_DO_DONE, /* 12 - done sending off request */
- CURLM_STATE_WAITPERFORM, /* 13 - wait for our turn to read the response */
- CURLM_STATE_PERFORM, /* 14 - transfer data */
- CURLM_STATE_TOOFAST, /* 15 - wait because limit-rate exceeded */
- CURLM_STATE_DONE, /* 16 - post data transfer operation */
- CURLM_STATE_COMPLETED, /* 17 - operation complete */
- CURLM_STATE_MSGSENT, /* 18 - the operation complete message is sent */
- CURLM_STATE_LAST /* 19 - not a true state, never use this */
+ CURLM_STATE_WAITDO, /* 7 - wait for our turn to send the request */
+ CURLM_STATE_DO, /* 8 - start send off the request (part 1) */
+ CURLM_STATE_DOING, /* 9 - sending off the request (part 1) */
+ CURLM_STATE_DO_MORE, /* 10 - send off the request (part 2) */
+ CURLM_STATE_DO_DONE, /* 11 - done sending off request */
+ CURLM_STATE_WAITPERFORM, /* 12 - wait for our turn to read the response */
+ CURLM_STATE_PERFORM, /* 13 - transfer data */
+ CURLM_STATE_TOOFAST, /* 14 - wait because limit-rate exceeded */
+ CURLM_STATE_DONE, /* 15 - post data transfer operation */
+ CURLM_STATE_COMPLETED, /* 16 - operation complete */
+ CURLM_STATE_MSGSENT, /* 17 - the operation complete message is sent */
+ CURLM_STATE_LAST /* 18 - not a true state, never use this */
} CURLMstate;
/* we support N sockets per easy handle. Set the corresponding bit to what
@@ -62,8 +59,6 @@ typedef enum {
#define GETSOCK_READABLE (0x00ff)
#define GETSOCK_WRITABLE (0xff00)
-#define CURLPIPE_ANY (CURLPIPE_HTTP1 | CURLPIPE_MULTIPLEX)
-
/* This is the struct known as CURLM on the outside */
struct Curl_multi {
/* First a simple identifier to easier detect if a user mix up
@@ -87,12 +82,8 @@ struct Curl_multi {
curl_socket_callback socket_cb;
void *socket_userp;
- /* callback function and user data pointer for server push */
- curl_push_callback push_cb;
- void *push_userp;
-
/* Hostname cache */
- struct curl_hash hostcache;
+ struct curl_hash *hostcache;
/* timetree points to the splay-tree of time nodes to figure out expire
times of all currently set timers */
@@ -101,15 +92,13 @@ struct Curl_multi {
/* 'sockhash' is the lookup hash for socket descriptor => easy handles (note
the pluralis form, there can be more than one easy handle waiting on the
same actual socket) */
- struct curl_hash sockhash;
+ struct curl_hash *sockhash;
- /* pipelining wanted bits (CURLPIPE*) */
- long pipelining;
-
- bool recheckstate; /* see Curl_multi_connchanged */
+ /* Whether pipelining is enabled for this multi handle */
+ bool pipelining_enabled;
/* Shared connection cache (bundles)*/
- struct conncache conn_cache;
+ struct conncache *conn_cache;
/* This handle will be used for closing the cached connections in
curl_multi_cleanup() */
@@ -150,3 +139,4 @@ struct Curl_multi {
};
#endif /* HEADER_CURL_MULTIHANDLE_H */
+
diff --git a/lib/multiif.h b/lib/multiif.h
index e6323adf5..d8acfcabe 100644
--- a/lib/multiif.h
+++ b/lib/multiif.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -27,7 +27,8 @@
*/
void Curl_expire(struct SessionHandle *data, long milli);
void Curl_expire_latest(struct SessionHandle *data, long milli);
-bool Curl_pipeline_wanted(const struct Curl_multi* multi, int bits);
+
+bool Curl_multi_pipeline_enabled(const struct Curl_multi* multi);
void Curl_multi_handlePipeBreak(struct SessionHandle *data);
/* Internal version of curl_multi_init() accepts size parameters for the
@@ -59,6 +60,9 @@ void Curl_multi_process_pending_handles(struct Curl_multi *multi);
/* Return the value of the CURLMOPT_MAX_HOST_CONNECTIONS option */
size_t Curl_multi_max_host_connections(struct Curl_multi *multi);
+/* Return the value of the CURLMOPT_MAX_PIPELINE_LENGTH option */
+size_t Curl_multi_max_pipeline_length(struct Curl_multi *multi);
+
/* Return the value of the CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE option */
curl_off_t Curl_multi_content_length_penalty_size(struct Curl_multi *multi);
@@ -74,8 +78,6 @@ struct curl_llist *Curl_multi_pipelining_server_bl(struct Curl_multi *multi);
/* Return the value of the CURLMOPT_MAX_TOTAL_CONNECTIONS option */
size_t Curl_multi_max_total_connections(struct Curl_multi *multi);
-void Curl_multi_connchanged(struct Curl_multi *multi);
-
/*
* Curl_multi_closed()
*
@@ -88,10 +90,4 @@ void Curl_multi_connchanged(struct Curl_multi *multi);
void Curl_multi_closed(struct connectdata *conn, curl_socket_t s);
-/*
- * Add a handle and move it into PERFORM state at once. For pushed streams.
- */
-CURLMcode Curl_multi_add_perform(struct Curl_multi *multi,
- struct SessionHandle *data,
- struct connectdata *conn);
#endif /* HEADER_CURL_MULTIIF_H */
diff --git a/lib/netrc.c b/lib/netrc.c
index 06f8ea15a..7435d94c4 100644
--- a/lib/netrc.c
+++ b/lib/netrc.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -31,11 +31,13 @@
#include "strequal.h"
#include "strtok.h"
+#include "curl_memory.h"
#include "rawstr.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* Get user and password from .netrc when given a machine name */
@@ -102,16 +104,16 @@ int Curl_parsenetrc(const char *host,
netrcfile = curl_maprintf("%s%s%s", home, DIR_CHAR, NETRC);
if(home_alloc)
- free(home);
+ Curl_safefree(home);
if(!netrcfile) {
return -1;
}
netrc_alloc = TRUE;
}
- file = fopen(netrcfile, FOPEN_READTEXT);
+ file = fopen(netrcfile, "r");
if(netrc_alloc)
- free(netrcfile);
+ Curl_safefree(netrcfile);
if(file) {
char *tok;
char *tok_buf;
@@ -137,10 +139,6 @@ int Curl_parsenetrc(const char *host,
'password'. */
state=HOSTFOUND;
}
- else if(Curl_raw_equal("default", tok)) {
- state=HOSTVALID;
- retcode=0; /* we did find our host */
- }
break;
case HOSTFOUND:
if(Curl_raw_equal(host, tok)) {
diff --git a/lib/nwlib.c b/lib/nwlib.c
index bd3f27eac..252bf11ec 100644
--- a/lib/nwlib.c
+++ b/lib/nwlib.c
@@ -282,7 +282,9 @@ int DisposeLibraryData( void *data )
if(data) {
void *tenbytes = ((libdata_t *) data)->tenbytes;
- free(tenbytes);
+ if(tenbytes)
+ free(tenbytes);
+
free(data);
}
@@ -294,7 +296,9 @@ void DisposeThreadData( void *data )
if(data) {
void *twentybytes = ((libthreaddata_t *) data)->twentybytes;
- free(twentybytes);
+ if(twentybytes)
+ free(twentybytes);
+
free(data);
}
}
diff --git a/lib/openldap.c b/lib/openldap.c
index bee552f33..b94c0348f 100644
--- a/lib/openldap.c
+++ b/lib/openldap.c
@@ -5,8 +5,8 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2010, Howard Chu, <hyc@openldap.org>
- * Copyright (C) 2011 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2010, 2013, Howard Chu, <hyc@openldap.org>
+ * Copyright (C) 2011 - 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
@@ -44,12 +44,13 @@
#include "vtls/vtls.h"
#include "transfer.h"
#include "curl_ldap.h"
+#include "curl_memory.h"
#include "curl_base64.h"
#include "connect.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "memdebug.h"
#ifndef _LDAP_PVT_H
@@ -229,7 +230,7 @@ static CURLcode ldap_connecting(struct connectdata *conn, bool *done)
ldapconninfo *li = conn->proto.generic;
struct SessionHandle *data = conn->data;
LDAPMessage *msg = NULL;
- struct timeval tv = {0, 1}, *tvp;
+ struct timeval tv = {0,1}, *tvp;
int rc, err;
char *info = NULL;
@@ -380,7 +381,7 @@ static CURLcode ldap_do(struct connectdata *conn, bool *done)
failf(data, "LDAP local: ldap_search_ext %s", ldap_err2string(rc));
return CURLE_LDAP_SEARCH_FAILED;
}
- lr = calloc(1, sizeof(ldapreqinfo));
+ lr = calloc(1,sizeof(ldapreqinfo));
if(!lr)
return CURLE_OUT_OF_MEMORY;
lr->msgid = msgid;
@@ -422,7 +423,7 @@ static ssize_t ldap_recv(struct connectdata *conn, int sockindex, char *buf,
LDAPMessage *msg = NULL;
LDAPMessage *ent;
BerElement *ber = NULL;
- struct timeval tv = {0, 1};
+ struct timeval tv = {0,1};
(void)len;
(void)buf;
diff --git a/lib/pingpong.c b/lib/pingpong.c
index 167079272..2c2741f0a 100644
--- a/lib/pingpong.c
+++ b/lib/pingpong.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -34,7 +34,9 @@
#include "multiif.h"
#include "non-ascii.h"
#include "vtls/vtls.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
@@ -493,8 +495,10 @@ CURLcode Curl_pp_flushsend(struct pingpong *pp)
CURLcode Curl_pp_disconnect(struct pingpong *pp)
{
- free(pp->cache);
- pp->cache = NULL;
+ if(pp->cache) {
+ free(pp->cache);
+ pp->cache = NULL;
+ }
return CURLE_OK;
}
diff --git a/lib/pipeline.c b/lib/pipeline.c
index 1b38836cb..2645fdb48 100644
--- a/lib/pipeline.c
+++ b/lib/pipeline.c
@@ -6,7 +6,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2013, Linus Nielsen Feltzing, <linus@haxx.se>
- * Copyright (C) 2013-2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2013-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
@@ -32,6 +32,7 @@
#include "pipeline.h"
#include "sendf.h"
#include "rawstr.h"
+#include "bundles.h"
#include "curl_memory.h"
/* The last #include file should be: */
@@ -48,13 +49,15 @@ static void site_blacklist_llist_dtor(void *user, void *element)
(void)user;
Curl_safefree(entry->hostname);
- free(entry);
+ Curl_safefree(entry);
}
static void server_blacklist_llist_dtor(void *user, void *element)
{
+ char *server_name = element;
(void)user;
- free(element);
+
+ Curl_safefree(server_name);
}
bool Curl_pipeline_penalized(struct SessionHandle *data,
@@ -91,15 +94,6 @@ bool Curl_pipeline_penalized(struct SessionHandle *data,
return FALSE;
}
-static CURLcode addHandleToPipeline(struct SessionHandle *data,
- struct curl_llist *pipeline)
-{
- if(!Curl_llist_insert_next(pipeline, pipeline->tail, data))
- return CURLE_OUT_OF_MEMORY;
- return CURLE_OK;
-}
-
-
CURLcode Curl_add_handle_to_pipeline(struct SessionHandle *handle,
struct connectdata *conn)
{
@@ -109,11 +103,11 @@ CURLcode Curl_add_handle_to_pipeline(struct SessionHandle *handle,
pipeline = conn->send_pipe;
- result = addHandleToPipeline(handle, pipeline);
+ result = Curl_addHandleToPipeline(handle, pipeline);
if(pipeline == conn->send_pipe && sendhead != conn->send_pipe->head) {
/* this is a new one as head, expire it */
- Curl_pipeline_leave_write(conn); /* not in use yet */
+ conn->writechannel_inuse = FALSE; /* not in use yet */
Curl_expire(conn->send_pipe->head->ptr, 1);
}
@@ -144,7 +138,7 @@ void Curl_move_handle_from_send_to_recv_pipe(struct SessionHandle *handle,
if(conn->send_pipe->head) {
/* Since there's a new easy handle at the start of the send pipeline,
set its timeout value to 1ms to make it trigger instantly */
- Curl_pipeline_leave_write(conn); /* not used now */
+ conn->writechannel_inuse = FALSE; /* not used now */
#ifdef DEBUGBUILD
infof(conn->data, "%p is at send pipe head B!\n",
(void *)conn->send_pipe->head->ptr);
@@ -320,93 +314,6 @@ CURLMcode Curl_pipeline_set_server_blacklist(char **servers,
return CURLM_OK;
}
-static bool pipe_head(struct SessionHandle *data,
- struct curl_llist *pipeline)
-{
- struct curl_llist_element *curr = pipeline->head;
- if(curr)
- return (curr->ptr == data) ? TRUE : FALSE;
-
- return FALSE;
-}
-
-/* returns TRUE if the given handle is head of the recv pipe */
-bool Curl_recvpipe_head(struct SessionHandle *data,
- struct connectdata *conn)
-{
- return pipe_head(data, conn->recv_pipe);
-}
-
-/* returns TRUE if the given handle is head of the send pipe */
-bool Curl_sendpipe_head(struct SessionHandle *data,
- struct connectdata *conn)
-{
- return pipe_head(data, conn->send_pipe);
-}
-
-
-/*
- * Check if the write channel is available and this handle as at the head,
- * then grab the channel and return TRUE.
- *
- * If not available, return FALSE.
- */
-
-bool Curl_pipeline_checkget_write(struct SessionHandle *data,
- struct connectdata *conn)
-{
- if(conn->bits.multiplex)
- /* when multiplexing, we can use it at once */
- return TRUE;
-
- if(!conn->writechannel_inuse && Curl_sendpipe_head(data, conn)) {
- /* Grab the channel */
- conn->writechannel_inuse = TRUE;
- return TRUE;
- }
- return FALSE;
-}
-
-
-/*
- * Check if the read channel is available and this handle as at the head, then
- * grab the channel and return TRUE.
- *
- * If not available, return FALSE.
- */
-
-bool Curl_pipeline_checkget_read(struct SessionHandle *data,
- struct connectdata *conn)
-{
- if(conn->bits.multiplex)
- /* when multiplexing, we can use it at once */
- return TRUE;
-
- if(!conn->readchannel_inuse && Curl_recvpipe_head(data, conn)) {
- /* Grab the channel */
- conn->readchannel_inuse = TRUE;
- return TRUE;
- }
- return FALSE;
-}
-
-/*
- * The current user of the pipeline write channel gives it up.
- */
-void Curl_pipeline_leave_write(struct connectdata *conn)
-{
- conn->writechannel_inuse = FALSE;
-}
-
-/*
- * The current user of the pipeline read channel gives it up.
- */
-void Curl_pipeline_leave_read(struct connectdata *conn)
-{
- conn->readchannel_inuse = FALSE;
-}
-
-
#if 0
void print_pipeline(struct connectdata *conn)
{
diff --git a/lib/pipeline.h b/lib/pipeline.h
index bf229f199..96c4c33ec 100644
--- a/lib/pipeline.h
+++ b/lib/pipeline.h
@@ -7,7 +7,6 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 2013 - 2014, Linus Nielsen Feltzing, <linus@haxx.se>
*
* This software is licensed as described in the file COPYING, which
@@ -42,15 +41,4 @@ bool Curl_pipeline_server_blacklisted(struct SessionHandle *handle,
CURLMcode Curl_pipeline_set_server_blacklist(char **servers,
struct curl_llist **list_ptr);
-bool Curl_pipeline_checkget_write(struct SessionHandle *data,
- struct connectdata *conn);
-bool Curl_pipeline_checkget_read(struct SessionHandle *data,
- struct connectdata *conn);
-void Curl_pipeline_leave_write(struct connectdata *conn);
-void Curl_pipeline_leave_read(struct connectdata *conn);
-bool Curl_recvpipe_head(struct SessionHandle *data,
- struct connectdata *conn);
-bool Curl_sendpipe_head(struct SessionHandle *data,
- struct connectdata *conn);
-
#endif /* HEADER_CURL_PIPELINE_H */
diff --git a/lib/pop3.c b/lib/pop3.c
index 53510a210..66004599a 100644
--- a/lib/pop3.c
+++ b/lib/pop3.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -83,7 +83,10 @@
#include "curl_sasl.h"
#include "curl_md5.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -103,10 +106,10 @@ static CURLcode pop3_setup_connection(struct connectdata *conn);
static CURLcode pop3_parse_url_options(struct connectdata *conn);
static CURLcode pop3_parse_url_path(struct connectdata *conn);
static CURLcode pop3_parse_custom_request(struct connectdata *conn);
-static CURLcode pop3_perform_auth(struct connectdata *conn, const char *mech,
- const char *initresp);
-static CURLcode pop3_continue_auth(struct connectdata *conn, const char *resp);
-static void pop3_get_message(char *buffer, char** outptr);
+static CURLcode pop3_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ pop3state *state1, pop3state *state2);
/*
* POP3 protocol handler.
@@ -211,17 +214,6 @@ static const struct Curl_handler Curl_handler_pop3s_proxy = {
#endif
#endif
-/* SASL parameters for the pop3 protocol */
-static const struct SASLproto saslpop3 = {
- "pop", /* The service name */
- '+', /* Code received when continuation is expected */
- '+', /* Code to receive upon authentication success */
- 255 - 8, /* Maximum initial response length (no max) */
- pop3_perform_auth, /* Send authentication command */
- pop3_continue_auth, /* Send authentication continuation */
- pop3_get_message /* Get SASL response message */
-};
-
#ifdef USE_SSL
static void pop3_to_pop3s(struct connectdata *conn)
{
@@ -320,7 +312,20 @@ static void state(struct connectdata *conn, pop3state newstate)
"CAPA",
"STARTTLS",
"UPGRADETLS",
- "AUTH",
+ "AUTH_PLAIN",
+ "AUTH_LOGIN",
+ "AUTH_LOGIN_PASSWD",
+ "AUTH_CRAMMD5",
+ "AUTH_DIGESTMD5",
+ "AUTH_DIGESTMD5_RESP",
+ "AUTH_NTLM",
+ "AUTH_NTLM_TYPE2MSG",
+ "AUTH_GSSAPI",
+ "AUTH_GSSAPI_TOKEN",
+ "AUTH_GSSAPI_NO_DATA",
+ "AUTH_XOAUTH2",
+ "AUTH_CANCEL",
+ "AUTH_FINAL",
"APOP",
"USER",
"PASS",
@@ -349,9 +354,9 @@ static CURLcode pop3_perform_capa(struct connectdata *conn)
CURLcode result = CURLE_OK;
struct pop3_conn *pop3c = &conn->proto.pop3c;
- pop3c->sasl.authmechs = SASL_AUTH_NONE; /* No known auth. mechanisms yet */
- pop3c->sasl.authused = SASL_AUTH_NONE; /* Clear the auth. mechanism used */
- pop3c->tls_supported = FALSE; /* Clear the TLS capability */
+ pop3c->authmechs = 0; /* No known authentication mechanisms yet */
+ pop3c->authused = 0; /* Clear the authentication mechanism used */
+ pop3c->tls_supported = FALSE; /* Clear the TLS capability */
/* Send the CAPA command */
result = Curl_pp_sendf(&pop3c->pp, "%s", "CAPA");
@@ -495,18 +500,25 @@ static CURLcode pop3_perform_apop(struct connectdata *conn)
*/
static CURLcode pop3_perform_auth(struct connectdata *conn,
const char *mech,
- const char *initresp)
+ const char *initresp, size_t len,
+ pop3state state1, pop3state state2)
{
CURLcode result = CURLE_OK;
struct pop3_conn *pop3c = &conn->proto.pop3c;
- if(initresp) { /* AUTH <mech> ...<crlf> */
+ if(initresp && 8 + strlen(mech) + len <= 255) { /* AUTH <mech> ...<crlf> */
/* Send the AUTH command with the initial response */
result = Curl_pp_sendf(&pop3c->pp, "AUTH %s %s", mech, initresp);
+
+ if(!result)
+ state(conn, state2);
}
else {
/* Send the AUTH command */
result = Curl_pp_sendf(&pop3c->pp, "AUTH %s", mech);
+
+ if(!result)
+ state(conn, state1);
}
return result;
@@ -514,20 +526,6 @@ static CURLcode pop3_perform_auth(struct connectdata *conn,
/***********************************************************************
*
- * pop3_continue_auth()
- *
- * Sends SASL continuation data or cancellation.
- */
-static CURLcode pop3_continue_auth(struct connectdata *conn,
- const char *resp)
-{
- struct pop3_conn *pop3c = &conn->proto.pop3c;
-
- return Curl_pp_sendf(&pop3c->pp, "%s", resp);
-}
-
-/***********************************************************************
- *
* pop3_perform_authentication()
*
* Initiates the authentication sequence, with the appropriate SASL
@@ -538,32 +536,38 @@ static CURLcode pop3_perform_authentication(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct pop3_conn *pop3c = &conn->proto.pop3c;
- saslprogress progress = SASL_IDLE;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ pop3state state1 = POP3_STOP;
+ pop3state state2 = POP3_STOP;
- /* Check we have enough data to authenticate with and end the
+ /* Check we have a username and password to authenticate with and end the
connect phase if we don't */
- if(!Curl_sasl_can_authenticate(&pop3c->sasl, conn)) {
+ if(!conn->bits.user_passwd) {
state(conn, POP3_STOP);
+
return result;
}
- if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_SASL) {
- /* Calculate the SASL login details */
- result = Curl_sasl_start(&pop3c->sasl, conn, FALSE, &progress);
-
- if(!result)
- if(progress == SASL_INPROGRESS)
- state(conn, POP3_AUTH);
- }
+ /* Calculate the SASL login details */
+ if(pop3c->authtypes & POP3_TYPE_SASL)
+ result = pop3_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
- if(!result && progress == SASL_IDLE) {
+ if(!result) {
+ if(mech && (pop3c->preftype & POP3_TYPE_SASL)) {
+ /* Perform SASL based authentication */
+ result = pop3_perform_auth(conn, mech, initresp, len, state1, state2);
+ }
#ifndef CURL_DISABLE_CRYPTO_AUTH
- if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_APOP)
+ else if((pop3c->authtypes & POP3_TYPE_APOP) &&
+ (pop3c->preftype & POP3_TYPE_APOP))
/* Perform APOP authentication */
result = pop3_perform_apop(conn);
- else
#endif
- if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_CLEARTEXT)
+ else if((pop3c->authtypes & POP3_TYPE_CLEARTEXT) &&
+ (pop3c->preftype & POP3_TYPE_CLEARTEXT))
/* Perform clear text authentication */
result = pop3_perform_user(conn);
else {
@@ -573,6 +577,8 @@ static CURLcode pop3_perform_authentication(struct connectdata *conn)
}
}
+ Curl_safefree(initresp);
+
return result;
}
@@ -720,9 +726,6 @@ static CURLcode pop3_state_capa_resp(struct connectdata *conn, int pop3code,
/* Loop through the data line */
for(;;) {
- size_t llen;
- unsigned int mechbit;
-
while(len &&
(*line == ' ' || *line == '\t' ||
*line == '\r' || *line == '\n')) {
@@ -741,9 +744,22 @@ static CURLcode pop3_state_capa_resp(struct connectdata *conn, int pop3code,
wordlen++;
/* Test the word for a matching authentication mechanism */
- if((mechbit = Curl_sasl_decode_mech(line, wordlen, &llen)) &&
- llen == wordlen)
- pop3c->sasl.authmechs |= mechbit;
+ if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_LOGIN))
+ pop3c->authmechs |= SASL_MECH_LOGIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_PLAIN))
+ pop3c->authmechs |= SASL_MECH_PLAIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_CRAM_MD5))
+ pop3c->authmechs |= SASL_MECH_CRAM_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_DIGEST_MD5))
+ pop3c->authmechs |= SASL_MECH_DIGEST_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_GSSAPI))
+ pop3c->authmechs |= SASL_MECH_GSSAPI;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_EXTERNAL))
+ pop3c->authmechs |= SASL_MECH_EXTERNAL;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_NTLM))
+ pop3c->authmechs |= SASL_MECH_NTLM;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_XOAUTH2))
+ pop3c->authmechs |= SASL_MECH_XOAUTH2;
line += wordlen;
len -= wordlen;
@@ -801,42 +817,575 @@ static CURLcode pop3_state_starttls_resp(struct connectdata *conn,
return result;
}
-/* For SASL authentication responses */
-static CURLcode pop3_state_auth_resp(struct connectdata *conn,
- int pop3code,
- pop3state instate)
+/* For AUTH PLAIN (without initial response) responses */
+static CURLcode pop3_state_auth_plain_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
{
CURLcode result = CURLE_OK;
struct SessionHandle *data = conn->data;
- struct pop3_conn *pop3c = &conn->proto.pop3c;
- saslprogress progress;
+ size_t len = 0;
+ char *plainauth = NULL;
(void)instate; /* no use for this yet */
- result = Curl_sasl_continue(&pop3c->sasl, conn, pop3code, &progress);
- if(!result)
- switch(progress) {
- case SASL_DONE:
- state(conn, POP3_STOP); /* Authenticated */
- break;
- case SASL_IDLE: /* No mechanism left after cancellation */
+ if(pop3code != '+') {
+ failf(data, "Access denied. %c", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_plain_message(data, conn->user, conn->passwd,
+ &plainauth, &len);
+ if(!result && plainauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", plainauth);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(plainauth);
+
+ return result;
+}
+
+/* For AUTH LOGIN (without initial response) responses */
+static CURLcode pop3_state_auth_login_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authuser = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the user message */
+ result = Curl_sasl_create_login_message(data, conn->user,
+ &authuser, &len);
+ if(!result && authuser) {
+ /* Send the user */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", authuser);
+
+ if(!result)
+ state(conn, POP3_AUTH_LOGIN_PASSWD);
+ }
+ }
+
+ Curl_safefree(authuser);
+
+ return result;
+}
+
+/* For AUTH LOGIN user entry responses */
+static CURLcode pop3_state_auth_login_password_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authpasswd = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the password message */
+ result = Curl_sasl_create_login_message(data, conn->passwd,
+ &authpasswd, &len);
+ if(!result && authpasswd) {
+ /* Send the password */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", authpasswd);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(authpasswd);
+
+ return result;
+}
+
#ifndef CURL_DISABLE_CRYPTO_AUTH
- if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_APOP)
- /* Perform APOP authentication */
- result = pop3_perform_apop(conn);
- else
+/* For AUTH CRAM-MD5 responses */
+static CURLcode pop3_state_auth_cram_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg = NULL;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ pop3_get_message(data->state.buffer, &chlg64);
+
+ /* Decode the challenge message */
+ result = Curl_sasl_decode_cram_md5_message(chlg64, &chlg, &len);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", "*");
+
+ if(!result)
+ state(conn, POP3_AUTH_CANCEL);
+ }
+ else {
+ /* Create the response message */
+ result = Curl_sasl_create_cram_md5_message(data, chlg, conn->user,
+ conn->passwd, &rplyb64, &len);
+ if(!result && rplyb64) {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(chlg);
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTH DIGEST-MD5 challenge responses */
+static CURLcode pop3_state_auth_digest_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ pop3_get_message(data->state.buffer, &chlg64);
+
+ /* Create the response message */
+ result = Curl_sasl_create_digest_md5_message(data, chlg64,
+ conn->user, conn->passwd,
+ "pop", &rplyb64, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", "*");
+
+ if(!result)
+ state(conn, POP3_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, POP3_AUTH_DIGESTMD5_RESP);
+ }
+
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTH DIGEST-MD5 challenge-response responses */
+static CURLcode pop3_state_auth_digest_resp_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Authentication failed: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Send an empty response */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", "");
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+
+ return result;
+}
#endif
- if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_CLEARTEXT)
- /* Perform clear text authentication */
- result = pop3_perform_user(conn);
- else {
- failf(data, "Authentication cancelled");
- result = CURLE_LOGIN_DENIED;
+
+#ifdef USE_NTLM
+/* For AUTH NTLM (without initial response) responses */
+static CURLcode pop3_state_auth_ntlm_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *type1msg = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the type-1 message */
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ &type1msg, &len);
+ if(!result && type1msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", type1msg);
+
+ if(!result)
+ state(conn, POP3_AUTH_NTLM_TYPE2MSG);
+ }
+ }
+
+ Curl_safefree(type1msg);
+
+ return result;
+}
+
+/* For NTLM type-2 responses (sent in reponse to our type-1 message) */
+static CURLcode pop3_state_auth_ntlm_type2msg_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *type2msg = NULL;
+ char *type3msg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the type-2 message */
+ pop3_get_message(data->state.buffer, &type2msg);
+
+ /* Decode the type-2 message */
+ result = Curl_sasl_decode_ntlm_type2_message(data, type2msg, &conn->ntlm);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", "*");
+
+ if(!result)
+ state(conn, POP3_AUTH_CANCEL);
+ }
+ else {
+ /* Create the type-3 message */
+ result = Curl_sasl_create_ntlm_type3_message(data, conn->user,
+ conn->passwd, &conn->ntlm,
+ &type3msg, &len);
+ if(!result && type3msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", type3msg);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
}
- break;
- default:
- break;
}
+ }
+
+ Curl_safefree(type3msg);
+
+ return result;
+}
+#endif
+
+#if defined(USE_KERBEROS5)
+/* For AUTH GSSAPI (without initial response) responses */
+static CURLcode pop3_state_auth_gssapi_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct pop3_conn *pop3c = &conn->proto.pop3c;
+ size_t len = 0;
+ char *respmsg = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the initial response message */
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "pop",
+ pop3c->mutual_auth,
+ NULL, &conn->krb5,
+ &respmsg, &len);
+ if(!result && respmsg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&pop3c->pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, POP3_AUTH_GSSAPI_TOKEN);
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTH GSSAPI user token responses */
+static CURLcode pop3_state_auth_gssapi_token_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct pop3_conn *pop3c = &conn->proto.pop3c;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ pop3_get_message(data->state.buffer, &chlgmsg);
+
+ if(pop3c->mutual_auth)
+ /* Decode the user token challenge and create the optional response
+ message */
+ result = Curl_sasl_create_gssapi_user_message(data, NULL, NULL, NULL,
+ pop3c->mutual_auth,
+ chlgmsg, &conn->krb5,
+ &respmsg, &len);
+ else
+ /* Decode the security challenge and create the response message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&pop3c->pp, "%s", "*");
+
+ if(!result)
+ state(conn, POP3_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ if(respmsg)
+ result = Curl_pp_sendf(&pop3c->pp, "%s", respmsg);
+ else
+ result = Curl_pp_sendf(&pop3c->pp, "%s", "");
+
+ if(!result)
+ state(conn, (pop3c->mutual_auth ? POP3_AUTH_GSSAPI_NO_DATA :
+ POP3_AUTH_FINAL));
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTH GSSAPI no data responses */
+static CURLcode pop3_state_auth_gssapi_no_data_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ pop3_get_message(data->state.buffer, &chlgmsg);
+
+ /* Decode the security challenge and create the security message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", "*");
+
+ if(!result)
+ state(conn, POP3_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ if(respmsg) {
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+#endif
+
+/* For AUTH XOAUTH2 (without initial response) responses */
+static CURLcode pop3_state_auth_xoauth2_resp(struct connectdata *conn,
+ int pop3code, pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *xoauth = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Access denied: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_xoauth2_message(conn->data, conn->user,
+ conn->xoauth2_bearer,
+ &xoauth, &len);
+ if(!result && xoauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.pop3c.pp, "%s", xoauth);
+
+ if(!result)
+ state(conn, POP3_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(xoauth);
+
+ return result;
+}
+
+/* For AUTH cancellation responses */
+static CURLcode pop3_state_auth_cancel_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct pop3_conn *pop3c = &conn->proto.pop3c;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ pop3state state1 = POP3_STOP;
+ pop3state state2 = POP3_STOP;
+
+ (void)pop3code;
+ (void)instate; /* no use for this yet */
+
+ /* Remove the offending mechanism from the supported list */
+ pop3c->authmechs ^= pop3c->authused;
+
+ /* Calculate alternative SASL login details */
+ result = pop3_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
+
+ if(!result) {
+ /* Do we have any mechanisms left or can we fallback to another
+ authentication type? */
+ if(mech) {
+ /* Retry SASL based authentication */
+ result = pop3_perform_auth(conn, mech, initresp, len, state1, state2);
+
+ Curl_safefree(initresp);
+ }
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ else if((pop3c->authtypes & POP3_TYPE_APOP) &&
+ (pop3c->preftype & POP3_TYPE_APOP))
+ /* Perform APOP authentication */
+ result = pop3_perform_apop(conn);
+#endif
+ else if((pop3c->authtypes & POP3_TYPE_CLEARTEXT) &&
+ (pop3c->preftype & POP3_TYPE_CLEARTEXT))
+ /* Perform clear text authentication */
+ result = pop3_perform_user(conn);
+ else {
+ failf(data, "Authentication cancelled");
+
+ result = CURLE_LOGIN_DENIED;
+ }
+ }
+
+ return result;
+}
+
+/* For final responses in the AUTH sequence */
+static CURLcode pop3_state_auth_final_resp(struct connectdata *conn,
+ int pop3code,
+ pop3state instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(pop3code != '+') {
+ failf(data, "Authentication failed: %d", pop3code);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else
+ /* End of connect phase */
+ state(conn, POP3_STOP);
return result;
}
@@ -1003,8 +1552,69 @@ static CURLcode pop3_statemach_act(struct connectdata *conn)
result = pop3_state_starttls_resp(conn, pop3code, pop3c->state);
break;
- case POP3_AUTH:
- result = pop3_state_auth_resp(conn, pop3code, pop3c->state);
+ case POP3_AUTH_PLAIN:
+ result = pop3_state_auth_plain_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_LOGIN:
+ result = pop3_state_auth_login_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_LOGIN_PASSWD:
+ result = pop3_state_auth_login_password_resp(conn, pop3code,
+ pop3c->state);
+ break;
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ case POP3_AUTH_CRAMMD5:
+ result = pop3_state_auth_cram_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_DIGESTMD5:
+ result = pop3_state_auth_digest_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_DIGESTMD5_RESP:
+ result = pop3_state_auth_digest_resp_resp(conn, pop3code, pop3c->state);
+ break;
+#endif
+
+#ifdef USE_NTLM
+ case POP3_AUTH_NTLM:
+ result = pop3_state_auth_ntlm_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_NTLM_TYPE2MSG:
+ result = pop3_state_auth_ntlm_type2msg_resp(conn, pop3code,
+ pop3c->state);
+ break;
+#endif
+
+#if defined(USE_KERBEROS5)
+ case POP3_AUTH_GSSAPI:
+ result = pop3_state_auth_gssapi_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_GSSAPI_TOKEN:
+ result = pop3_state_auth_gssapi_token_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_GSSAPI_NO_DATA:
+ result = pop3_state_auth_gssapi_no_data_resp(conn, pop3code,
+ pop3c->state);
+ break;
+#endif
+
+ case POP3_AUTH_XOAUTH2:
+ result = pop3_state_auth_xoauth2_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_CANCEL:
+ result = pop3_state_auth_cancel_resp(conn, pop3code, pop3c->state);
+ break;
+
+ case POP3_AUTH_FINAL:
+ result = pop3_state_auth_final_resp(conn, pop3code, pop3c->state);
break;
#ifndef CURL_DISABLE_CRYPTO_AUTH
@@ -1117,7 +1727,7 @@ static CURLcode pop3_connect(struct connectdata *conn, bool *done)
/* Set the default preferred authentication type and mechanism */
pop3c->preftype = POP3_TYPE_ANY;
- Curl_sasl_init(&pop3c->sasl, &saslpop3);
+ pop3c->prefmech = SASL_AUTH_ANY;
/* Initialise the pingpong layer */
Curl_pp_init(pp);
@@ -1269,7 +1879,7 @@ static CURLcode pop3_disconnect(struct connectdata *conn, bool dead_connection)
Curl_pp_disconnect(&pop3c->pp);
/* Cleanup the SASL module */
- Curl_sasl_cleanup(conn, pop3c->sasl.authused);
+ Curl_sasl_cleanup(conn, pop3c->authused);
/* Cleanup our connection based variables */
Curl_safefree(pop3c->apoptimestamp);
@@ -1384,52 +1994,75 @@ static CURLcode pop3_parse_url_options(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct pop3_conn *pop3c = &conn->proto.pop3c;
- const char *ptr = conn->options;
+ const char *options = conn->options;
+ const char *ptr = options;
+ bool reset = TRUE;
- pop3c->sasl.resetprefs = TRUE;
-
- while(!result && ptr && *ptr) {
+ while(ptr && *ptr) {
const char *key = ptr;
- const char *value;
while(*ptr && *ptr != '=')
ptr++;
- value = ptr + 1;
+ if(strnequal(key, "AUTH", 4)) {
+ size_t len = 0;
+ const char *value = ++ptr;
- while(*ptr && *ptr != ';')
- ptr++;
+ if(reset) {
+ reset = FALSE;
+ pop3c->preftype = POP3_TYPE_NONE;
+ pop3c->prefmech = SASL_AUTH_NONE;
+ }
- if(strnequal(key, "AUTH=", 5)) {
- result = Curl_sasl_parse_url_auth_option(&pop3c->sasl,
- value, ptr - value);
+ while(*ptr && *ptr != ';') {
+ ptr++;
+ len++;
+ }
- if(result && strnequal(value, "+APOP", ptr - value)) {
+ if(strnequal(value, "*", len)) {
+ pop3c->preftype = POP3_TYPE_ANY;
+ pop3c->prefmech = SASL_AUTH_ANY;
+ }
+ else if(strnequal(value, "+APOP", len)) {
pop3c->preftype = POP3_TYPE_APOP;
- pop3c->sasl.prefmech = SASL_AUTH_NONE;
- result = CURLE_OK;
+ pop3c->prefmech = SASL_AUTH_NONE;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_LOGIN, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_LOGIN;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_PLAIN, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_PLAIN;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_CRAM_MD5, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_CRAM_MD5;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_DIGEST_MD5, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_DIGEST_MD5;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_GSSAPI, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_GSSAPI;
+ }
+ else if(strnequal(value, SASL_MECH_STRING_NTLM, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_NTLM;
}
+ else if(strnequal(value, SASL_MECH_STRING_XOAUTH2, len)) {
+ pop3c->preftype = POP3_TYPE_SASL;
+ pop3c->prefmech |= SASL_MECH_XOAUTH2;
+ }
+
+ if(*ptr == ';')
+ ptr++;
}
else
result = CURLE_URL_MALFORMAT;
-
- if(*ptr == ';')
- ptr++;
}
- if(pop3c->preftype != POP3_TYPE_APOP)
- switch(pop3c->sasl.prefmech) {
- case SASL_AUTH_NONE:
- pop3c->preftype = POP3_TYPE_NONE;
- break;
- case SASL_AUTH_DEFAULT:
- pop3c->preftype = POP3_TYPE_ANY;
- break;
- default:
- pop3c->preftype = POP3_TYPE_SASL;
- break;
- }
-
return result;
}
@@ -1472,6 +2105,110 @@ static CURLcode pop3_parse_custom_request(struct connectdata *conn)
/***********************************************************************
*
+ * pop3_calc_sasl_details()
+ *
+ * Calculate the required login details for SASL authentication.
+ */
+static CURLcode pop3_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ pop3state *state1, pop3state *state2)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct pop3_conn *pop3c = &conn->proto.pop3c;
+
+ /* Calculate the supported authentication mechanism, by decreasing order of
+ security, as well as the initial response where appropriate */
+#if defined(USE_KERBEROS5)
+ if((pop3c->authmechs & SASL_MECH_GSSAPI) &&
+ (pop3c->prefmech & SASL_MECH_GSSAPI)) {
+ pop3c->mutual_auth = FALSE; /* TODO: Calculate mutual authentication */
+
+ *mech = SASL_MECH_STRING_GSSAPI;
+ *state1 = POP3_AUTH_GSSAPI;
+ *state2 = POP3_AUTH_GSSAPI_TOKEN;
+ pop3c->authused = SASL_MECH_GSSAPI;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "pop",
+ pop3c->mutual_auth,
+ NULL, &conn->krb5,
+ initresp, len);
+ }
+ else
+#endif
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ if((pop3c->authmechs & SASL_MECH_DIGEST_MD5) &&
+ (pop3c->prefmech & SASL_MECH_DIGEST_MD5)) {
+ *mech = SASL_MECH_STRING_DIGEST_MD5;
+ *state1 = POP3_AUTH_DIGESTMD5;
+ pop3c->authused = SASL_MECH_DIGEST_MD5;
+ }
+ else if((pop3c->authmechs & SASL_MECH_CRAM_MD5) &&
+ (pop3c->prefmech & SASL_MECH_CRAM_MD5)) {
+ *mech = SASL_MECH_STRING_CRAM_MD5;
+ *state1 = POP3_AUTH_CRAMMD5;
+ pop3c->authused = SASL_MECH_CRAM_MD5;
+ }
+ else
+#endif
+#ifdef USE_NTLM
+ if((pop3c->authmechs & SASL_MECH_NTLM) &&
+ (pop3c->prefmech & SASL_MECH_NTLM)) {
+ *mech = SASL_MECH_STRING_NTLM;
+ *state1 = POP3_AUTH_NTLM;
+ *state2 = POP3_AUTH_NTLM_TYPE2MSG;
+ pop3c->authused = SASL_MECH_NTLM;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ initresp, len);
+ }
+ else
+#endif
+ if(((pop3c->authmechs & SASL_MECH_XOAUTH2) &&
+ (pop3c->prefmech & SASL_MECH_XOAUTH2) &&
+ (pop3c->prefmech != SASL_AUTH_ANY)) || conn->xoauth2_bearer) {
+ *mech = SASL_MECH_STRING_XOAUTH2;
+ *state1 = POP3_AUTH_XOAUTH2;
+ *state2 = POP3_AUTH_FINAL;
+ pop3c->authused = SASL_MECH_XOAUTH2;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_xoauth2_message(data, conn->user,
+ conn->xoauth2_bearer,
+ initresp, len);
+ }
+ else if((pop3c->authmechs & SASL_MECH_LOGIN) &&
+ (pop3c->prefmech & SASL_MECH_LOGIN)) {
+ *mech = SASL_MECH_STRING_LOGIN;
+ *state1 = POP3_AUTH_LOGIN;
+ *state2 = POP3_AUTH_LOGIN_PASSWD;
+ pop3c->authused = SASL_MECH_LOGIN;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_login_message(data, conn->user, initresp, len);
+ }
+ else if((pop3c->authmechs & SASL_MECH_PLAIN) &&
+ (pop3c->prefmech & SASL_MECH_PLAIN)) {
+ *mech = SASL_MECH_STRING_PLAIN;
+ *state1 = POP3_AUTH_PLAIN;
+ *state2 = POP3_AUTH_FINAL;
+ pop3c->authused = SASL_MECH_PLAIN;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_plain_message(data, conn->user, conn->passwd,
+ initresp, len);
+ }
+
+ return result;
+}
+
+/***********************************************************************
+ *
* Curl_pop3_write()
*
* This function scans the body after the end-of-body and writes everything
diff --git a/lib/pop3.h b/lib/pop3.h
index 7bc53aaf5..729a55ad5 100644
--- a/lib/pop3.h
+++ b/lib/pop3.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2009 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2009 - 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
@@ -23,7 +23,6 @@
***************************************************************************/
#include "pingpong.h"
-#include "curl_sasl.h"
/****************************************************************************
* POP3 unique setup
@@ -36,7 +35,20 @@ typedef enum {
POP3_STARTTLS,
POP3_UPGRADETLS, /* asynchronously upgrade the connection to SSL/TLS
(multi mode only) */
- POP3_AUTH,
+ POP3_AUTH_PLAIN,
+ POP3_AUTH_LOGIN,
+ POP3_AUTH_LOGIN_PASSWD,
+ POP3_AUTH_CRAMMD5,
+ POP3_AUTH_DIGESTMD5,
+ POP3_AUTH_DIGESTMD5_RESP,
+ POP3_AUTH_NTLM,
+ POP3_AUTH_NTLM_TYPE2MSG,
+ POP3_AUTH_GSSAPI,
+ POP3_AUTH_GSSAPI_TOKEN,
+ POP3_AUTH_GSSAPI_NO_DATA,
+ POP3_AUTH_XOAUTH2,
+ POP3_AUTH_CANCEL,
+ POP3_AUTH_FINAL,
POP3_APOP,
POP3_USER,
POP3_PASS,
@@ -65,11 +77,14 @@ struct pop3_conn {
have been received so far */
size_t strip; /* Number of bytes from the start to ignore as
non-body */
- struct SASL sasl; /* SASL-related storage */
unsigned int authtypes; /* Accepted authentication types */
+ unsigned int authmechs; /* Accepted SASL authentication mechanisms */
unsigned int preftype; /* Preferred authentication type */
+ unsigned int prefmech; /* Preferred SASL authentication mechanism */
+ unsigned int authused; /* SASL auth mechanism used for the connection */
char *apoptimestamp; /* APOP timestamp from the server greeting */
bool tls_supported; /* StartTLS capability supported by server */
+ bool mutual_auth; /* Mutual authentication enabled (GSSAPI only) */
};
extern const struct Curl_handler Curl_handler_pop3;
diff --git a/lib/progress.c b/lib/progress.c
index b46e27405..f147ce71e 100644
--- a/lib/progress.c
+++ b/lib/progress.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -25,7 +25,9 @@
#include "urldata.h"
#include "sendf.h"
#include "progress.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
/* Provide a string that is 2 + 1 + 2 + 1 + 2 = 8 letters long (plus the zero
byte) */
diff --git a/lib/rtsp.c b/lib/rtsp.c
index c30afd39d..029738d9b 100644
--- a/lib/rtsp.c
+++ b/lib/rtsp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -34,12 +34,14 @@
#include "progress.h"
#include "rtsp.h"
#include "rawstr.h"
+#include "curl_memory.h"
#include "select.h"
#include "connect.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -263,10 +265,11 @@ static CURLcode rtsp_do(struct connectdata *conn, bool *done)
* Since all RTSP requests are included here, there is no need to
* support custom requests like HTTP.
**/
+ DEBUGASSERT((rtspreq > RTSPREQ_NONE && rtspreq < RTSPREQ_LAST));
data->set.opt_no_body = TRUE; /* most requests don't contain a body */
switch(rtspreq) {
- default:
- failf(data, "Got invalid RTSP request");
+ case RTSPREQ_NONE:
+ failf(data, "Got invalid RTSP request: RTSPREQ_NONE");
return CURLE_BAD_FUNCTION_ARGUMENT;
case RTSPREQ_OPTIONS:
p_request = "OPTIONS";
@@ -322,7 +325,7 @@ static CURLcode rtsp_do(struct connectdata *conn, bool *done)
if(!p_session_id &&
(rtspreq & ~(RTSPREQ_OPTIONS | RTSPREQ_DESCRIBE | RTSPREQ_SETUP))) {
failf(data, "Refusing to issue an RTSP request [%s] without a session ID.",
- p_request);
+ p_request ? p_request : "");
return CURLE_BAD_FUNCTION_ARGUMENT;
}
@@ -440,7 +443,8 @@ static CURLcode rtsp_do(struct connectdata *conn, bool *done)
Curl_add_bufferf(req_buffer,
"%s %s RTSP/1.0\r\n" /* Request Stream-URI RTSP/1.0 */
"CSeq: %ld\r\n", /* CSeq */
- p_request, p_stream_uri, rtsp->CSeq_sent);
+ (p_request ? p_request : ""), p_stream_uri,
+ rtsp->CSeq_sent);
if(result)
return result;
@@ -494,8 +498,8 @@ static CURLcode rtsp_do(struct connectdata *conn, bool *done)
}
else {
- postsize = (data->state.infilesize != -1)?
- data->state.infilesize:
+ postsize = (data->set.postfieldsize != -1)?
+ data->set.postfieldsize:
(data->set.postfields? (curl_off_t)strlen(data->set.postfields):0);
data->set.httpreq = HTTPREQ_POST;
}
diff --git a/lib/security.c b/lib/security.c
index 014bbf1b8..607048cc1 100644
--- a/lib/security.c
+++ b/lib/security.c
@@ -7,10 +7,10 @@
* rewrite to work around the paragraph 2 in the BSD licenses as explained
* below.
*
- * Copyright (c) 1998, 1999 Kungliga Tekniska Högskolan
+ * Copyright (c) 1998, 1999, 2013 Kungliga Tekniska Högskolan
* (Royal Institute of Technology, Stockholm, Sweden).
*
- * Copyright (C) 2001 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2001 - 2014, Daniel Stenberg, <daniel@haxx.se>, et al.
*
* All rights reserved.
*
@@ -109,12 +109,19 @@ static char level_to_char(int level) {
return 'P';
}
+static const struct Curl_sec_client_mech * const mechs[] = {
+#ifdef HAVE_GSSAPI
+ &Curl_krb5_client_mech,
+#endif
+ NULL
+};
+
/* Send an FTP command defined by |message| and the optional arguments. The
function returns the ftp_code. If an error occurs, -1 is returned. */
static int ftp_send_command(struct connectdata *conn, const char *message, ...)
{
int ftp_code;
- ssize_t nread=0;
+ ssize_t nread;
va_list args;
char print_buffer[50];
@@ -359,7 +366,7 @@ int Curl_sec_read_msg(struct connectdata *conn, char *buffer,
int */
int decoded_len;
char *buf;
- int ret_code = 0;
+ int ret_code;
size_t decoded_sz = 0;
CURLcode error;
@@ -388,13 +395,13 @@ int Curl_sec_read_msg(struct connectdata *conn, char *buffer,
}
buf[decoded_len] = '\0';
- if(decoded_len <= 3)
- /* suspiciously short */
- return 0;
-
- if(buf[3] != '-')
- /* safe to ignore return code */
+ DEBUGASSERT(decoded_len > 3);
+ if(buf[3] == '-')
+ ret_code = 0;
+ else {
+ /* Check for error? */
(void)sscanf(buf, "%d", &ret_code);
+ }
if(buf[decoded_len - 1] == '\n')
buf[decoded_len - 1] = '\0';
@@ -437,8 +444,8 @@ static int sec_set_protection_level(struct connectdata *conn)
pbsz = strstr(conn->data->state.buffer, "PBSZ=");
if(pbsz) {
- /* ignore return code, use default value if it fails */
- (void)sscanf(pbsz, "PBSZ=%u", &buffer_size);
+ /* FIXME: Checks for errors in sscanf? */
+ sscanf(pbsz, "PBSZ=%u", &buffer_size);
if(buffer_size < conn->buffer_size)
conn->buffer_size = buffer_size;
}
@@ -477,63 +484,72 @@ static CURLcode choose_mech(struct connectdata *conn)
{
int ret;
struct SessionHandle *data = conn->data;
+ const struct Curl_sec_client_mech * const *mech;
void *tmp_allocation;
- const struct Curl_sec_client_mech *mech = &Curl_krb5_client_mech;
+ const char *mech_name;
+
+ for(mech = mechs; (*mech); ++mech) {
+ mech_name = (*mech)->name;
+ /* We have no mechanism with a NULL name but keep this check */
+ DEBUGASSERT(mech_name != NULL);
+ if(mech_name == NULL) {
+ infof(data, "Skipping mechanism with empty name (%p)\n", (void *)mech);
+ continue;
+ }
+ tmp_allocation = realloc(conn->app_data, (*mech)->size);
+ if(tmp_allocation == NULL) {
+ failf(data, "Failed realloc of size %u", (*mech)->size);
+ mech = NULL;
+ return CURLE_OUT_OF_MEMORY;
+ }
+ conn->app_data = tmp_allocation;
- tmp_allocation = realloc(conn->app_data, mech->size);
- if(tmp_allocation == NULL) {
- failf(data, "Failed realloc of size %u", mech->size);
- mech = NULL;
- return CURLE_OUT_OF_MEMORY;
- }
- conn->app_data = tmp_allocation;
-
- if(mech->init) {
- ret = mech->init(conn->app_data);
- if(ret) {
- infof(data, "Failed initialization for %s. Skipping it.\n",
- mech->name);
- return CURLE_FAILED_INIT;
+ if((*mech)->init) {
+ ret = (*mech)->init(conn->app_data);
+ if(ret != 0) {
+ infof(data, "Failed initialization for %s. Skipping it.\n", mech_name);
+ continue;
+ }
}
- }
- infof(data, "Trying mechanism %s...\n", mech->name);
- ret = ftp_send_command(conn, "AUTH %s", mech->name);
- if(ret < 0)
- /* FIXME: This error is too generic but it is OK for now. */
- return CURLE_COULDNT_CONNECT;
-
- if(ret/100 != 3) {
- switch(ret) {
- case 504:
- infof(data, "Mechanism %s is not supported by the server (server "
- "returned ftp code: 504).\n", mech->name);
- break;
- case 534:
- infof(data, "Mechanism %s was rejected by the server (server returned "
- "ftp code: 534).\n", mech->name);
- break;
- default:
- if(ret/100 == 5) {
- infof(data, "server does not support the security extensions\n");
- return CURLE_USE_SSL_FAILED;
+ infof(data, "Trying mechanism %s...\n", mech_name);
+ ret = ftp_send_command(conn, "AUTH %s", mech_name);
+ if(ret < 0)
+ /* FIXME: This error is too generic but it is OK for now. */
+ return CURLE_COULDNT_CONNECT;
+
+ if(ret/100 != 3) {
+ switch(ret) {
+ case 504:
+ infof(data, "Mechanism %s is not supported by the server (server "
+ "returned ftp code: 504).\n", mech_name);
+ break;
+ case 534:
+ infof(data, "Mechanism %s was rejected by the server (server returned "
+ "ftp code: 534).\n", mech_name);
+ break;
+ default:
+ if(ret/100 == 5) {
+ infof(data, "server does not support the security extensions\n");
+ return CURLE_USE_SSL_FAILED;
+ }
+ break;
}
- break;
+ continue;
}
- return CURLE_LOGIN_DENIED;
- }
- /* Authenticate */
- ret = mech->auth(conn->app_data, conn);
+ /* Authenticate */
+ ret = (*mech)->auth(conn->app_data, conn);
- if(ret != AUTH_CONTINUE) {
- if(ret != AUTH_OK) {
+ if(ret == AUTH_CONTINUE)
+ continue;
+ else if(ret != AUTH_OK) {
/* Mechanism has dumped the error to stderr, don't error here. */
return -1;
}
DEBUGASSERT(ret == AUTH_OK);
- conn->mech = mech;
+ conn->mech = *mech;
conn->sec_complete = 1;
conn->recv[FIRSTSOCKET] = sec_recv;
conn->send[FIRSTSOCKET] = sec_send;
@@ -543,9 +559,10 @@ static CURLcode choose_mech(struct connectdata *conn)
/* Set the requested protection level */
/* BLOCKING */
(void)sec_set_protection_level(conn);
+ break;
}
- return CURLE_OK;
+ return *mech != NULL ? CURLE_OK : CURLE_FAILED_INIT;
}
CURLcode
@@ -560,8 +577,10 @@ Curl_sec_end(struct connectdata *conn)
{
if(conn->mech != NULL && conn->mech->end)
conn->mech->end(conn->app_data);
- free(conn->app_data);
- conn->app_data = NULL;
+ if(conn->app_data) {
+ free(conn->app_data);
+ conn->app_data = NULL;
+ }
if(conn->in_buffer.data) {
free(conn->in_buffer.data);
conn->in_buffer.data = NULL;
diff --git a/lib/select.c b/lib/select.c
index 24dc5fd79..1c6481cb7 100644
--- a/lib/select.c
+++ b/lib/select.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -159,7 +159,7 @@ int Curl_socket_check(curl_socket_t readfd0, /* two sockets to read from */
fd_set fds_err;
curl_socket_t maxfd;
#endif
- struct timeval initial_tv = {0, 0};
+ struct timeval initial_tv = {0,0};
int pending_ms = 0;
int error;
int r;
@@ -393,7 +393,7 @@ int Curl_poll(struct pollfd ufds[], unsigned int nfds, int timeout_ms)
fd_set fds_err;
curl_socket_t maxfd;
#endif
- struct timeval initial_tv = {0, 0};
+ struct timeval initial_tv = {0,0};
bool fds_none = TRUE;
unsigned int i;
int pending_ms = 0;
@@ -573,6 +573,6 @@ int tpf_select_libcurl(int maxfds, fd_set* reads, fd_set* writes,
rc = tpf_select_bsd(maxfds, reads, writes, excepts, tv);
tpf_process_signals();
- return rc;
+ return(rc);
}
#endif /* TPF */
diff --git a/lib/sendf.c b/lib/sendf.c
index 5f39d1f2d..2d1a166bd 100644
--- a/lib/sendf.c
+++ b/lib/sendf.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -31,11 +31,14 @@
#include "ssh.h"
#include "multiif.h"
#include "non-ascii.h"
-#include "curl_printf.h"
-#include "strerror.h"
-/* The last #include files should be: */
+#define _MPRINTF_REPLACE /* use the internal *printf() functions */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
+#include "strerror.h"
+
+/* The last #include file should be: */
#include "memdebug.h"
#ifdef CURL_DO_LINEEND_CONV
@@ -52,7 +55,7 @@ static size_t convert_lineends(struct SessionHandle *data,
/* sanity check */
if((startPtr == NULL) || (size < 1)) {
- return size;
+ return(size);
}
if(data->state.prev_block_had_trailing_cr) {
@@ -114,9 +117,9 @@ static size_t convert_lineends(struct SessionHandle *data,
/* tidy up by null terminating the now shorter data */
*outPtr = '\0';
- return (outPtr - startPtr);
+ return(outPtr - startPtr);
}
- return size;
+ return(size);
}
#endif /* CURL_DO_LINEEND_CONV */
@@ -551,7 +554,7 @@ CURLcode Curl_read(struct connectdata *conn, /* connection data */
ssize_t nread = 0;
size_t bytesfromsocket = 0;
char *buffertofill = NULL;
- bool pipelining = Curl_pipeline_wanted(conn->data->multi, CURLPIPE_HTTP1);
+ bool pipelining = Curl_multi_pipeline_enabled(conn->data->multi);
/* Set 'num' to 0 or 1, depending on which socket that has been sent here.
If it is the second socket, we set num to 1. Otherwise to 0. This lets
diff --git a/lib/setup-vms.h b/lib/setup-vms.h
index 520a35daa..4b3dded9d 100644
--- a/lib/setup-vms.h
+++ b/lib/setup-vms.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -249,9 +249,6 @@ char * unix_path;
#define MD5_Init MD5_INIT
#define MD5_Update MD5_UPDATE
#define OPENSSL_add_all_algo_noconf OPENSSL_ADD_ALL_ALGO_NOCONF
-#ifndef __VAX
-#define OPENSSL_load_builtin_modules OPENSSL_LOAD_BUILTIN_MODULES
-#endif
#define PEM_read_X509 PEM_READ_X509
#define PEM_write_bio_X509 PEM_WRITE_BIO_X509
#define PKCS12_PBE_add PKCS12_PBE_ADD
@@ -275,7 +272,6 @@ char * unix_path;
#define SSL_CTX_set_cipher_list SSL_CTX_SET_CIPHER_LIST
#define SSL_CTX_set_def_passwd_cb_ud SSL_CTX_SET_DEF_PASSWD_CB_UD
#define SSL_CTX_set_default_passwd_cb SSL_CTX_SET_DEFAULT_PASSWD_CB
-#define SSL_CTX_set_msg_callback SSL_CTX_SET_MSG_CALLBACK
#define SSL_CTX_set_verify SSL_CTX_SET_VERIFY
#define SSL_CTX_use_PrivateKey SSL_CTX_USE_PRIVATEKEY
#define SSL_CTX_use_PrivateKey_file SSL_CTX_USE_PRIVATEKEY_FILE
@@ -305,7 +301,6 @@ char * unix_path;
#define SSL_set_fd SSL_SET_FD
#define SSL_set_session SSL_SET_SESSION
#define SSL_shutdown SSL_SHUTDOWN
-#define SSL_version SSL_VERSION
#define SSL_write SSL_WRITE
#define SSLeay SSLEAY
#define SSLv23_client_method SSLV23_CLIENT_METHOD
@@ -330,7 +325,6 @@ char * unix_path;
#define UI_set_result UI_SET_RESULT
#define X509V3_EXT_print X509V3_EXT_PRINT
#define X509_EXTENSION_get_critical X509_EXTENSION_GET_CRITICAL
-#define X509_EXTENSION_get_data X509_EXTENSION_GET_DATA
#define X509_EXTENSION_get_object X509_EXTENSION_GET_OBJECT
#define X509_LOOKUP_file X509_LOOKUP_FILE
#define X509_NAME_ENTRY_get_data X509_NAME_ENTRY_GET_DATA
@@ -355,12 +349,6 @@ char * unix_path;
#define sk_pop SK_POP
#define sk_pop_free SK_POP_FREE
#define sk_value SK_VALUE
-#ifdef __VAX
-#define OPENSSL_NO_SHA256
-#endif
-#define SHA256_Final SHA256_FINAL
-#define SHA256_Init SHA256_INIT
-#define SHA256_Update SHA256_UPDATE
#define USE_UPPERCASE_GSSAPI 1
#define gss_seal GSS_SEAL
@@ -426,7 +414,7 @@ char * unix_path;
static void des_ecb_encrypt(const_des_cblock *input,
des_cblock *output,
- des_key_schedule ks, int enc) {
+ des_key_schedule ks,int enc) {
DES_ECB_ENCRYPT(input, output, ks, enc);
}
#endif
diff --git a/lib/share.c b/lib/share.c
index 17202486c..b8b6bee80 100644
--- a/lib/share.c
+++ b/lib/share.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -35,15 +35,9 @@ CURLSH *
curl_share_init(void)
{
struct Curl_share *share = calloc(1, sizeof(struct Curl_share));
- if(share) {
+ if(share)
share->specifier |= (1<<CURL_LOCK_DATA_SHARE);
- if(Curl_mk_dnscache(&share->hostcache)) {
- free(share);
- return NULL;
- }
- }
-
return share;
}
@@ -73,6 +67,11 @@ curl_share_setopt(CURLSH *sh, CURLSHoption option, ...)
share->specifier |= (1<<type);
switch( type ) {
case CURL_LOCK_DATA_DNS:
+ if(!share->hostcache) {
+ share->hostcache = Curl_mk_dnscache();
+ if(!share->hostcache)
+ res = CURLSHE_NOMEM;
+ }
break;
case CURL_LOCK_DATA_COOKIE:
@@ -116,6 +115,10 @@ curl_share_setopt(CURLSH *sh, CURLSHoption option, ...)
share->specifier &= ~(1<<type);
switch( type ) {
case CURL_LOCK_DATA_DNS:
+ if(share->hostcache) {
+ Curl_hash_destroy(share->hostcache);
+ share->hostcache = NULL;
+ }
break;
case CURL_LOCK_DATA_COOKIE:
@@ -189,10 +192,14 @@ curl_share_cleanup(CURLSH *sh)
return CURLSHE_IN_USE;
}
- Curl_hash_destroy(&share->hostcache);
+ if(share->hostcache) {
+ Curl_hash_destroy(share->hostcache);
+ share->hostcache = NULL;
+ }
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
- Curl_cookie_cleanup(share->cookies);
+ if(share->cookies)
+ Curl_cookie_cleanup(share->cookies);
#endif
#ifdef USE_SSL
diff --git a/lib/share.h b/lib/share.h
index 8e6629b7b..9a5128e93 100644
--- a/lib/share.h
+++ b/lib/share.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -44,7 +44,7 @@ struct Curl_share {
curl_unlock_function unlockfunc;
void *clientdata;
- struct curl_hash hostcache;
+ struct curl_hash *hostcache;
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
struct CookieInfo *cookies;
#endif
diff --git a/lib/slist.c b/lib/slist.c
index 9c0b2a58a..3cac6ca21 100644
--- a/lib/slist.c
+++ b/lib/slist.c
@@ -22,10 +22,10 @@
#include "curl_setup.h"
+#include "curl_memory.h"
#include "slist.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
/* returns last node in linked list */
diff --git a/lib/smb.c b/lib/smb.c
index d461a712c..e66427ba3 100644
--- a/lib/smb.c
+++ b/lib/smb.c
@@ -44,11 +44,11 @@
#include "transfer.h"
#include "vtls/vtls.h"
#include "curl_ntlm_core.h"
+#include "curl_memory.h"
#include "escape.h"
#include "curl_endian.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
/* Local API functions */
@@ -783,15 +783,9 @@ static CURLcode smb_request_state(struct connectdata *conn, bool *done)
off = Curl_read16_le(((unsigned char *) msg) +
sizeof(struct smb_header) + 13);
if(len > 0) {
- struct smb_conn *smbc = &conn->proto.smbc;
- if(off + sizeof(unsigned int) + len > smbc->got) {
- failf(conn->data, "Invalid input packet");
- result = CURLE_RECV_ERROR;
- }
- else
- result = Curl_client_write(conn, CLIENTWRITE_BODY,
- (char *)msg + off + sizeof(unsigned int),
- len);
+ result = Curl_client_write(conn, CLIENTWRITE_BODY,
+ (char *)msg + off + sizeof(unsigned int),
+ len);
if(result) {
req->result = result;
next_state = SMB_CLOSE;
@@ -941,7 +935,7 @@ static CURLcode smb_parse_url_path(struct connectdata *conn)
/* Parse the path for the share */
req->share = strdup((*path == '/' || *path == '\\') ? path + 1 : path);
if(!req->share) {
- free(path);
+ Curl_safefree(path);
return CURLE_OUT_OF_MEMORY;
}
@@ -952,7 +946,7 @@ static CURLcode smb_parse_url_path(struct connectdata *conn)
/* The share must be present */
if(!slash) {
- free(path);
+ Curl_safefree(path);
return CURLE_URL_MALFORMAT;
}
@@ -966,7 +960,7 @@ static CURLcode smb_parse_url_path(struct connectdata *conn)
*slash = '\\';
}
- free(path);
+ Curl_safefree(path);
return CURLE_OK;
}
diff --git a/lib/smtp.c b/lib/smtp.c
index dada087a9..7bd5158bf 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -82,7 +82,10 @@
#include "curl_gethostname.h"
#include "curl_sasl.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -102,10 +105,10 @@ static CURLcode smtp_setup_connection(struct connectdata *conn);
static CURLcode smtp_parse_url_options(struct connectdata *conn);
static CURLcode smtp_parse_url_path(struct connectdata *conn);
static CURLcode smtp_parse_custom_request(struct connectdata *conn);
-static CURLcode smtp_perform_auth(struct connectdata *conn, const char *mech,
- const char *initresp);
-static CURLcode smtp_continue_auth(struct connectdata *conn, const char *resp);
-static void smtp_get_message(char *buffer, char** outptr);
+static CURLcode smtp_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ smtpstate *state1, smtpstate *state2);
/*
* SMTP protocol handler.
@@ -210,17 +213,6 @@ static const struct Curl_handler Curl_handler_smtps_proxy = {
#endif
#endif
-/* SASL parameters for the smtp protocol */
-static const struct SASLproto saslsmtp = {
- "smtp", /* The service name */
- 334, /* Code received when continuation is expected */
- 235, /* Code to receive upon authentication success */
- 512 - 8, /* Maximum initial response length (no max) */
- smtp_perform_auth, /* Send authentication command */
- smtp_continue_auth, /* Send authentication continuation */
- smtp_get_message /* Get SASL response message */
-};
-
#ifdef USE_SSL
static void smtp_to_smtps(struct connectdata *conn)
{
@@ -317,7 +309,20 @@ static void state(struct connectdata *conn, smtpstate newstate)
"HELO",
"STARTTLS",
"UPGRADETLS",
- "AUTH",
+ "AUTH_PLAIN",
+ "AUTH_LOGIN",
+ "AUTH_LOGIN_PASSWD",
+ "AUTH_CRAMMD5",
+ "AUTH_DIGESTMD5",
+ "AUTH_DIGESTMD5_RESP",
+ "AUTH_NTLM",
+ "AUTH_NTLM_TYPE2MSG",
+ "AUTH_GSSAPI",
+ "AUTH_GSSAPI_TOKEN",
+ "AUTH_GSSAPI_NO_DATA",
+ "AUTH_XOAUTH2",
+ "AUTH_CANCEL",
+ "AUTH_FINAL",
"COMMAND",
"MAIL",
"RCPT",
@@ -347,11 +352,11 @@ static CURLcode smtp_perform_ehlo(struct connectdata *conn)
CURLcode result = CURLE_OK;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- smtpc->sasl.authmechs = SASL_AUTH_NONE; /* No known auth. mechanism yet */
- smtpc->sasl.authused = SASL_AUTH_NONE; /* Clear the authentication mechanism
- used for esmtp connections */
- smtpc->tls_supported = FALSE; /* Clear the TLS capability */
- smtpc->auth_supported = FALSE; /* Clear the AUTH capability */
+ smtpc->authmechs = 0; /* No known authentication mechanisms yet */
+ smtpc->authused = 0; /* Clear the authentication mechanism used
+ for esmtp connections */
+ smtpc->tls_supported = FALSE; /* Clear the TLS capability */
+ smtpc->auth_supported = FALSE; /* Clear the AUTH capability */
/* Send the EHLO command */
result = Curl_pp_sendf(&smtpc->pp, "EHLO %s", smtpc->domain);
@@ -373,8 +378,8 @@ static CURLcode smtp_perform_helo(struct connectdata *conn)
CURLcode result = CURLE_OK;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- smtpc->sasl.authused = SASL_AUTH_NONE; /* No authentication mechanism used
- in smtp connections */
+ smtpc->authused = 0; /* No authentication mechanism used in smtp
+ connections */
/* Send the HELO command */
result = Curl_pp_sendf(&smtpc->pp, "HELO %s", smtpc->domain);
@@ -440,18 +445,25 @@ static CURLcode smtp_perform_upgrade_tls(struct connectdata *conn)
*/
static CURLcode smtp_perform_auth(struct connectdata *conn,
const char *mech,
- const char *initresp)
+ const char *initresp, size_t len,
+ smtpstate state1, smtpstate state2)
{
CURLcode result = CURLE_OK;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- if(initresp) { /* AUTH <mech> ...<crlf> */
+ if(initresp && 8 + strlen(mech) + len <= 512) { /* AUTH <mech> ...<crlf> */
/* Send the AUTH command with the initial response */
result = Curl_pp_sendf(&smtpc->pp, "AUTH %s %s", mech, initresp);
+
+ if(!result)
+ state(conn, state2);
}
else {
/* Send the AUTH command */
result = Curl_pp_sendf(&smtpc->pp, "AUTH %s", mech);
+
+ if(!result)
+ state(conn, state1);
}
return result;
@@ -459,19 +471,6 @@ static CURLcode smtp_perform_auth(struct connectdata *conn,
/***********************************************************************
*
- * smtp_continue_auth()
- *
- * Sends SASL continuation data or cancellation.
- */
-static CURLcode smtp_continue_auth(struct connectdata *conn, const char *resp)
-{
- struct smtp_conn *smtpc = &conn->proto.smtpc;
-
- return Curl_pp_sendf(&smtpc->pp, "%s", resp);
-}
-
-/***********************************************************************
- *
* smtp_perform_authentication()
*
* Initiates the authentication sequence, with the appropriate SASL
@@ -481,22 +480,31 @@ static CURLcode smtp_perform_authentication(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- saslprogress progress;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ smtpstate state1 = SMTP_STOP;
+ smtpstate state2 = SMTP_STOP;
- /* Check we have enough data to authenticate with, and the
+ /* Check we have a username and password to authenticate with, and the
server supports authentiation, and end the connect phase if not */
- if(!smtpc->auth_supported ||
- !Curl_sasl_can_authenticate(&smtpc->sasl, conn)) {
+ if(!conn->bits.user_passwd || !smtpc->auth_supported) {
state(conn, SMTP_STOP);
+
return result;
}
/* Calculate the SASL login details */
- result = Curl_sasl_start(&smtpc->sasl, conn, FALSE, &progress);
+ result = smtp_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
if(!result) {
- if(progress == SASL_INPROGRESS)
- state(conn, SMTP_AUTH);
+ if(mech) {
+ /* Perform SASL based authentication */
+ result = smtp_perform_auth(conn, mech, initresp, len, state1, state2);
+
+ Curl_safefree(initresp);
+ }
else {
/* Other mechanisms not supported */
infof(conn->data, "No known authentication mechanisms supported!\n");
@@ -563,7 +571,7 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
return CURLE_OUT_OF_MEMORY;
/* Calculate the optional AUTH parameter */
- if(data->set.str[STRING_MAIL_AUTH] && conn->proto.smtpc.sasl.authused) {
+ if(data->set.str[STRING_MAIL_AUTH] && conn->proto.smtpc.authused) {
if(data->set.str[STRING_MAIL_AUTH][0] != '\0')
auth = aprintf("%s", data->set.str[STRING_MAIL_AUTH]);
else
@@ -571,7 +579,7 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
auth = strdup("<>");
if(!auth) {
- free(from);
+ Curl_safefree(from);
return CURLE_OUT_OF_MEMORY;
}
@@ -582,8 +590,8 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
size = aprintf("%" CURL_FORMAT_CURL_OFF_T, data->state.infilesize);
if(!size) {
- free(from);
- free(auth);
+ Curl_safefree(from);
+ Curl_safefree(auth);
return CURLE_OUT_OF_MEMORY;
}
@@ -603,9 +611,9 @@ static CURLcode smtp_perform_mail(struct connectdata *conn)
result = Curl_pp_sendf(&conn->proto.smtpc.pp,
"MAIL FROM:%s SIZE=%s", from, size);
- free(from);
- free(auth);
- free(size);
+ Curl_safefree(from);
+ Curl_safefree(auth);
+ Curl_safefree(size);
if(!result)
state(conn, SMTP_MAIL);
@@ -745,9 +753,6 @@ static CURLcode smtp_state_ehlo_resp(struct connectdata *conn, int smtpcode,
/* Loop through the data line */
for(;;) {
- size_t llen;
- unsigned int mechbit;
-
while(len &&
(*line == ' ' || *line == '\t' ||
*line == '\r' || *line == '\n')) {
@@ -766,9 +771,22 @@ static CURLcode smtp_state_ehlo_resp(struct connectdata *conn, int smtpcode,
wordlen++;
/* Test the word for a matching authentication mechanism */
- if((mechbit = Curl_sasl_decode_mech(line, wordlen, &llen)) &&
- llen == wordlen)
- smtpc->sasl.authmechs |= mechbit;
+ if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_LOGIN))
+ smtpc->authmechs |= SASL_MECH_LOGIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_PLAIN))
+ smtpc->authmechs |= SASL_MECH_PLAIN;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_CRAM_MD5))
+ smtpc->authmechs |= SASL_MECH_CRAM_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_DIGEST_MD5))
+ smtpc->authmechs |= SASL_MECH_DIGEST_MD5;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_GSSAPI))
+ smtpc->authmechs |= SASL_MECH_GSSAPI;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_EXTERNAL))
+ smtpc->authmechs |= SASL_MECH_EXTERNAL;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_NTLM))
+ smtpc->authmechs |= SASL_MECH_NTLM;
+ else if(sasl_mech_equal(line, wordlen, SASL_MECH_STRING_XOAUTH2))
+ smtpc->authmechs |= SASL_MECH_XOAUTH2;
line += wordlen;
len -= wordlen;
@@ -817,31 +835,565 @@ static CURLcode smtp_state_helo_resp(struct connectdata *conn, int smtpcode,
return result;
}
-/* For SASL authentication responses */
-static CURLcode smtp_state_auth_resp(struct connectdata *conn,
- int smtpcode,
- smtpstate instate)
+/* For AUTH PLAIN (without initial response) responses */
+static CURLcode smtp_state_auth_plain_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *plainauth = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_plain_message(conn->data, conn->user,
+ conn->passwd, &plainauth, &len);
+ if(!result && plainauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", plainauth);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(plainauth);
+
+ return result;
+}
+
+/* For AUTH LOGIN (without initial response) responses */
+static CURLcode smtp_state_auth_login_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authuser = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the user message */
+ result = Curl_sasl_create_login_message(conn->data, conn->user,
+ &authuser, &len);
+ if(!result && authuser) {
+ /* Send the user */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", authuser);
+
+ if(!result)
+ state(conn, SMTP_AUTH_LOGIN_PASSWD);
+ }
+ }
+
+ Curl_safefree(authuser);
+
+ return result;
+}
+
+/* For AUTH LOGIN user entry responses */
+static CURLcode smtp_state_auth_login_password_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *authpasswd = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the password message */
+ result = Curl_sasl_create_login_message(conn->data, conn->passwd,
+ &authpasswd, &len);
+ if(!result && authpasswd) {
+ /* Send the password */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", authpasswd);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(authpasswd);
+
+ return result;
+}
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+/* For AUTH CRAM-MD5 responses */
+static CURLcode smtp_state_auth_cram_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg = NULL;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ smtp_get_message(data->state.buffer, &chlg64);
+
+ /* Decode the challenge message */
+ result = Curl_sasl_decode_cram_md5_message(chlg64, &chlg, &len);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, SMTP_AUTH_CANCEL);
+ }
+ else {
+ /* Create the response message */
+ result = Curl_sasl_create_cram_md5_message(data, chlg, conn->user,
+ conn->passwd, &rplyb64, &len);
+ if(!result && rplyb64) {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(chlg);
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTH DIGEST-MD5 challenge responses */
+static CURLcode smtp_state_auth_digest_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlg64 = NULL;
+ char *rplyb64 = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ return CURLE_LOGIN_DENIED;
+ }
+
+ /* Get the challenge message */
+ smtp_get_message(data->state.buffer, &chlg64);
+
+ /* Create the response message */
+ result = Curl_sasl_create_digest_md5_message(data, chlg64,
+ conn->user, conn->passwd,
+ "smtp", &rplyb64, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, SMTP_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", rplyb64);
+
+ if(!result)
+ state(conn, SMTP_AUTH_DIGESTMD5_RESP);
+ }
+
+ Curl_safefree(rplyb64);
+
+ return result;
+}
+
+/* For AUTH DIGEST-MD5 challenge-response responses */
+static CURLcode smtp_state_auth_digest_resp_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Authentication failed: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Send an empty response */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "");
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+
+ return result;
+}
+
+#endif
+
+#ifdef USE_NTLM
+/* For AUTH NTLM (without initial response) responses */
+static CURLcode smtp_state_auth_ntlm_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *type1msg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the type-1 message */
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ &type1msg, &len);
+ if(!result && type1msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", type1msg);
+
+ if(!result)
+ state(conn, SMTP_AUTH_NTLM_TYPE2MSG);
+ }
+ }
+
+ Curl_safefree(type1msg);
+
+ return result;
+}
+
+/* For NTLM type-2 responses (sent in reponse to our type-1 message) */
+static CURLcode smtp_state_auth_ntlm_type2msg_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *type2msg = NULL;
+ char *type3msg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the type-2 message */
+ smtp_get_message(data->state.buffer, &type2msg);
+
+ /* Decode the type-2 message */
+ result = Curl_sasl_decode_ntlm_type2_message(data, type2msg, &conn->ntlm);
+ if(result) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, SMTP_AUTH_CANCEL);
+ }
+ else {
+ /* Create the type-3 message */
+ result = Curl_sasl_create_ntlm_type3_message(data, conn->user,
+ conn->passwd, &conn->ntlm,
+ &type3msg, &len);
+ if(!result && type3msg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", type3msg);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+ }
+
+ Curl_safefree(type3msg);
+
+ return result;
+}
+#endif
+
+#if defined(USE_KERBEROS5)
+/* For AUTH GSSAPI (without initial response) responses */
+static CURLcode smtp_state_auth_gssapi_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
{
CURLcode result = CURLE_OK;
struct SessionHandle *data = conn->data;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- saslprogress progress;
+ char *respmsg = NULL;
+ size_t len = 0;
(void)instate; /* no use for this yet */
- result = Curl_sasl_continue(&smtpc->sasl, conn, smtpcode, &progress);
- if(!result)
- switch(progress) {
- case SASL_DONE:
- state(conn, SMTP_STOP); /* Authenticated */
- break;
- case SASL_IDLE: /* No mechanism left after cancellation */
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the initial response message */
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "smtp",
+ smtpc->mutual_auth, NULL,
+ &conn->krb5,
+ &respmsg, &len);
+ if(!result && respmsg) {
+ /* Send the message */
+ result = Curl_pp_sendf(&smtpc->pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, SMTP_AUTH_GSSAPI_TOKEN);
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTH GSSAPI user token responses */
+static CURLcode smtp_state_auth_gssapi_token_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct smtp_conn *smtpc = &conn->proto.smtpc;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ smtp_get_message(data->state.buffer, &chlgmsg);
+
+ if(smtpc->mutual_auth)
+ /* Decode the user token challenge and create the optional response
+ message */
+ result = Curl_sasl_create_gssapi_user_message(data, NULL, NULL, NULL,
+ smtpc->mutual_auth,
+ chlgmsg, &conn->krb5,
+ &respmsg, &len);
+ else
+ /* Decode the security challenge and create the response message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&smtpc->pp, "%s", "*");
+
+ if(!result)
+ state(conn, SMTP_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ if(respmsg)
+ result = Curl_pp_sendf(&smtpc->pp, "%s", respmsg);
+ else
+ result = Curl_pp_sendf(&smtpc->pp, "%s", "");
+
+ if(!result)
+ state(conn, (smtpc->mutual_auth ? SMTP_AUTH_GSSAPI_NO_DATA :
+ SMTP_AUTH_FINAL));
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+
+/* For AUTH GSSAPI no data responses */
+static CURLcode smtp_state_auth_gssapi_no_data_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ char *chlgmsg = NULL;
+ char *respmsg = NULL;
+ size_t len = 0;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Get the challenge message */
+ smtp_get_message(data->state.buffer, &chlgmsg);
+
+ /* Decode the security challenge and create the response message */
+ result = Curl_sasl_create_gssapi_security_message(data, chlgmsg,
+ &conn->krb5,
+ &respmsg, &len);
+ if(result) {
+ if(result == CURLE_BAD_CONTENT_ENCODING) {
+ /* Send the cancellation */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", "*");
+
+ if(!result)
+ state(conn, SMTP_AUTH_CANCEL);
+ }
+ }
+ else {
+ /* Send the response */
+ if(respmsg) {
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", respmsg);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+ }
+
+ Curl_safefree(respmsg);
+
+ return result;
+}
+#endif
+
+/* For AUTH XOAUTH2 (without initial response) responses */
+static CURLcode smtp_state_auth_xoauth2_resp(struct connectdata *conn,
+ int smtpcode, smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ size_t len = 0;
+ char *xoauth = NULL;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 334) {
+ failf(data, "Access denied: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else {
+ /* Create the authorisation message */
+ result = Curl_sasl_create_xoauth2_message(conn->data, conn->user,
+ conn->xoauth2_bearer,
+ &xoauth, &len);
+ if(!result && xoauth) {
+ /* Send the message */
+ result = Curl_pp_sendf(&conn->proto.smtpc.pp, "%s", xoauth);
+
+ if(!result)
+ state(conn, SMTP_AUTH_FINAL);
+ }
+ }
+
+ Curl_safefree(xoauth);
+
+ return result;
+}
+
+/* For AUTH cancellation responses */
+static CURLcode smtp_state_auth_cancel_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct smtp_conn *smtpc = &conn->proto.smtpc;
+ const char *mech = NULL;
+ char *initresp = NULL;
+ size_t len = 0;
+ smtpstate state1 = SMTP_STOP;
+ smtpstate state2 = SMTP_STOP;
+
+ (void)smtpcode;
+ (void)instate; /* no use for this yet */
+
+ /* Remove the offending mechanism from the supported list */
+ smtpc->authmechs ^= smtpc->authused;
+
+ /* Calculate alternative SASL login details */
+ result = smtp_calc_sasl_details(conn, &mech, &initresp, &len, &state1,
+ &state2);
+
+ if(!result) {
+ /* Do we have any mechanisms left? */
+ if(mech) {
+ /* Retry SASL based authentication */
+ result = smtp_perform_auth(conn, mech, initresp, len, state1, state2);
+
+ Curl_safefree(initresp);
+ }
+ else {
failf(data, "Authentication cancelled");
+
result = CURLE_LOGIN_DENIED;
- break;
- default:
- break;
}
+ }
+
+ return result;
+}
+
+/* For final responses in the AUTH sequence */
+static CURLcode smtp_state_auth_final_resp(struct connectdata *conn,
+ int smtpcode,
+ smtpstate instate)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+
+ (void)instate; /* no use for this yet */
+
+ if(smtpcode != 235) {
+ failf(data, "Authentication failed: %d", smtpcode);
+ result = CURLE_LOGIN_DENIED;
+ }
+ else
+ /* End of connect phase */
+ state(conn, SMTP_STOP);
return result;
}
@@ -1039,8 +1591,69 @@ static CURLcode smtp_statemach_act(struct connectdata *conn)
result = smtp_state_starttls_resp(conn, smtpcode, smtpc->state);
break;
- case SMTP_AUTH:
- result = smtp_state_auth_resp(conn, smtpcode, smtpc->state);
+ case SMTP_AUTH_PLAIN:
+ result = smtp_state_auth_plain_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_LOGIN:
+ result = smtp_state_auth_login_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_LOGIN_PASSWD:
+ result = smtp_state_auth_login_password_resp(conn, smtpcode,
+ smtpc->state);
+ break;
+
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ case SMTP_AUTH_CRAMMD5:
+ result = smtp_state_auth_cram_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_DIGESTMD5:
+ result = smtp_state_auth_digest_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_DIGESTMD5_RESP:
+ result = smtp_state_auth_digest_resp_resp(conn, smtpcode, smtpc->state);
+ break;
+#endif
+
+#ifdef USE_NTLM
+ case SMTP_AUTH_NTLM:
+ result = smtp_state_auth_ntlm_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_NTLM_TYPE2MSG:
+ result = smtp_state_auth_ntlm_type2msg_resp(conn, smtpcode,
+ smtpc->state);
+ break;
+#endif
+
+#if defined(USE_KERBEROS5)
+ case SMTP_AUTH_GSSAPI:
+ result = smtp_state_auth_gssapi_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_GSSAPI_TOKEN:
+ result = smtp_state_auth_gssapi_token_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_GSSAPI_NO_DATA:
+ result = smtp_state_auth_gssapi_no_data_resp(conn, smtpcode,
+ smtpc->state);
+ break;
+#endif
+
+ case SMTP_AUTH_XOAUTH2:
+ result = smtp_state_auth_xoauth2_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_CANCEL:
+ result = smtp_state_auth_cancel_resp(conn, smtpcode, smtpc->state);
+ break;
+
+ case SMTP_AUTH_FINAL:
+ result = smtp_state_auth_final_resp(conn, smtpcode, smtpc->state);
break;
case SMTP_COMMAND:
@@ -1153,8 +1766,8 @@ static CURLcode smtp_connect(struct connectdata *conn, bool *done)
pp->endofresp = smtp_endofresp;
pp->conn = conn;
- /* Initialize the SASL storage */
- Curl_sasl_init(&smtpc->sasl, &saslsmtp);
+ /* Set the default preferred authentication mechanism */
+ smtpc->prefmech = SASL_AUTH_ANY;
/* Initialise the pingpong layer */
Curl_pp_init(pp);
@@ -1372,7 +1985,7 @@ static CURLcode smtp_disconnect(struct connectdata *conn, bool dead_connection)
Curl_pp_disconnect(&smtpc->pp);
/* Cleanup the SASL module */
- Curl_sasl_cleanup(conn, smtpc->sasl.authused);
+ Curl_sasl_cleanup(conn, smtpc->authused);
/* Cleanup our connection based variables */
Curl_safefree(smtpc->domain);
@@ -1493,30 +2106,52 @@ static CURLcode smtp_parse_url_options(struct connectdata *conn)
{
CURLcode result = CURLE_OK;
struct smtp_conn *smtpc = &conn->proto.smtpc;
- const char *ptr = conn->options;
-
- smtpc->sasl.resetprefs = TRUE;
+ const char *options = conn->options;
+ const char *ptr = options;
+ bool reset = TRUE;
- while(!result && ptr && *ptr) {
+ while(ptr && *ptr) {
const char *key = ptr;
- const char *value;
while(*ptr && *ptr != '=')
ptr++;
- value = ptr + 1;
+ if(strnequal(key, "AUTH", 4)) {
+ size_t len = 0;
+ const char *value = ++ptr;
- while(*ptr && *ptr != ';')
- ptr++;
+ if(reset) {
+ reset = FALSE;
+ smtpc->prefmech = SASL_AUTH_NONE;
+ }
+
+ while(*ptr && *ptr != ';') {
+ ptr++;
+ len++;
+ }
- if(strnequal(key, "AUTH=", 5))
- result = Curl_sasl_parse_url_auth_option(&smtpc->sasl,
- value, ptr - value);
+ if(strnequal(value, "*", len))
+ smtpc->prefmech = SASL_AUTH_ANY;
+ else if(strnequal(value, SASL_MECH_STRING_LOGIN, len))
+ smtpc->prefmech |= SASL_MECH_LOGIN;
+ else if(strnequal(value, SASL_MECH_STRING_PLAIN, len))
+ smtpc->prefmech |= SASL_MECH_PLAIN;
+ else if(strnequal(value, SASL_MECH_STRING_CRAM_MD5, len))
+ smtpc->prefmech |= SASL_MECH_CRAM_MD5;
+ else if(strnequal(value, SASL_MECH_STRING_DIGEST_MD5, len))
+ smtpc->prefmech |= SASL_MECH_DIGEST_MD5;
+ else if(strnequal(value, SASL_MECH_STRING_GSSAPI, len))
+ smtpc->prefmech |= SASL_MECH_GSSAPI;
+ else if(strnequal(value, SASL_MECH_STRING_NTLM, len))
+ smtpc->prefmech |= SASL_MECH_NTLM;
+ else if(strnequal(value, SASL_MECH_STRING_XOAUTH2, len))
+ smtpc->prefmech |= SASL_MECH_XOAUTH2;
+
+ if(*ptr == ';')
+ ptr++;
+ }
else
result = CURLE_URL_MALFORMAT;
-
- if(*ptr == ';')
- ptr++;
}
return result;
@@ -1568,6 +2203,110 @@ static CURLcode smtp_parse_custom_request(struct connectdata *conn)
return result;
}
+/***********************************************************************
+ *
+ * smtp_calc_sasl_details()
+ *
+ * Calculate the required login details for SASL authentication.
+ */
+static CURLcode smtp_calc_sasl_details(struct connectdata *conn,
+ const char **mech,
+ char **initresp, size_t *len,
+ smtpstate *state1, smtpstate *state2)
+{
+ CURLcode result = CURLE_OK;
+ struct SessionHandle *data = conn->data;
+ struct smtp_conn *smtpc = &conn->proto.smtpc;
+
+ /* Calculate the supported authentication mechanism, by decreasing order of
+ security, as well as the initial response where appropriate */
+#if defined(USE_KERBEROS5)
+ if((smtpc->authmechs & SASL_MECH_GSSAPI) &&
+ (smtpc->prefmech & SASL_MECH_GSSAPI)) {
+ smtpc->mutual_auth = FALSE; /* TODO: Calculate mutual authentication */
+
+ *mech = SASL_MECH_STRING_GSSAPI;
+ *state1 = SMTP_AUTH_GSSAPI;
+ *state2 = SMTP_AUTH_GSSAPI_TOKEN;
+ smtpc->authused = SASL_MECH_GSSAPI;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_gssapi_user_message(data, conn->user,
+ conn->passwd, "smtp",
+ smtpc->mutual_auth,
+ NULL, &conn->krb5,
+ initresp, len);
+ }
+ else
+#endif
+#ifndef CURL_DISABLE_CRYPTO_AUTH
+ if((smtpc->authmechs & SASL_MECH_DIGEST_MD5) &&
+ (smtpc->prefmech & SASL_MECH_DIGEST_MD5)) {
+ *mech = SASL_MECH_STRING_DIGEST_MD5;
+ *state1 = SMTP_AUTH_DIGESTMD5;
+ smtpc->authused = SASL_MECH_DIGEST_MD5;
+ }
+ else if((smtpc->authmechs & SASL_MECH_CRAM_MD5) &&
+ (smtpc->prefmech & SASL_MECH_CRAM_MD5)) {
+ *mech = SASL_MECH_STRING_CRAM_MD5;
+ *state1 = SMTP_AUTH_CRAMMD5;
+ smtpc->authused = SASL_MECH_CRAM_MD5;
+ }
+ else
+#endif
+#ifdef USE_NTLM
+ if((smtpc->authmechs & SASL_MECH_NTLM) &&
+ (smtpc->prefmech & SASL_MECH_NTLM)) {
+ *mech = SASL_MECH_STRING_NTLM;
+ *state1 = SMTP_AUTH_NTLM;
+ *state2 = SMTP_AUTH_NTLM_TYPE2MSG;
+ smtpc->authused = SASL_MECH_NTLM;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_ntlm_type1_message(conn->user, conn->passwd,
+ &conn->ntlm,
+ initresp, len);
+ }
+ else
+#endif
+ if(((smtpc->authmechs & SASL_MECH_XOAUTH2) &&
+ (smtpc->prefmech & SASL_MECH_XOAUTH2) &&
+ (smtpc->prefmech != SASL_AUTH_ANY)) || conn->xoauth2_bearer) {
+ *mech = SASL_MECH_STRING_XOAUTH2;
+ *state1 = SMTP_AUTH_XOAUTH2;
+ *state2 = SMTP_AUTH_FINAL;
+ smtpc->authused = SASL_MECH_XOAUTH2;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_xoauth2_message(data, conn->user,
+ conn->xoauth2_bearer,
+ initresp, len);
+ }
+ else if((smtpc->authmechs & SASL_MECH_LOGIN) &&
+ (smtpc->prefmech & SASL_MECH_LOGIN)) {
+ *mech = SASL_MECH_STRING_LOGIN;
+ *state1 = SMTP_AUTH_LOGIN;
+ *state2 = SMTP_AUTH_LOGIN_PASSWD;
+ smtpc->authused = SASL_MECH_LOGIN;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_login_message(data, conn->user, initresp, len);
+ }
+ else if((smtpc->authmechs & SASL_MECH_PLAIN) &&
+ (smtpc->prefmech & SASL_MECH_PLAIN)) {
+ *mech = SASL_MECH_STRING_PLAIN;
+ *state1 = SMTP_AUTH_PLAIN;
+ *state2 = SMTP_AUTH_FINAL;
+ smtpc->authused = SASL_MECH_PLAIN;
+
+ if(data->set.sasl_ir)
+ result = Curl_sasl_create_plain_message(data, conn->user, conn->passwd,
+ initresp, len);
+ }
+
+ return result;
+}
+
CURLcode Curl_smtp_escape_eob(struct connectdata *conn, const ssize_t nread)
{
/* When sending a SMTP payload we must detect CRLF. sequences making sure
@@ -1657,13 +2396,13 @@ CURLcode Curl_smtp_escape_eob(struct connectdata *conn, const ssize_t nread)
data->state.scratch = scratch;
/* Free the old scratch buffer */
- free(oldscratch);
+ Curl_safefree(oldscratch);
/* Set the new amount too */
data->req.upload_present = si;
}
else
- free(newscratch);
+ Curl_safefree(newscratch);
return CURLE_OK;
}
diff --git a/lib/smtp.h b/lib/smtp.h
index 9fbe0c5bf..7a95efeaf 100644
--- a/lib/smtp.h
+++ b/lib/smtp.h
@@ -23,7 +23,6 @@
***************************************************************************/
#include "pingpong.h"
-#include "curl_sasl.h"
/****************************************************************************
* SMTP unique setup
@@ -37,7 +36,20 @@ typedef enum {
SMTP_STARTTLS,
SMTP_UPGRADETLS, /* asynchronously upgrade the connection to SSL/TLS
(multi mode only) */
- SMTP_AUTH,
+ SMTP_AUTH_PLAIN,
+ SMTP_AUTH_LOGIN,
+ SMTP_AUTH_LOGIN_PASSWD,
+ SMTP_AUTH_CRAMMD5,
+ SMTP_AUTH_DIGESTMD5,
+ SMTP_AUTH_DIGESTMD5_RESP,
+ SMTP_AUTH_NTLM,
+ SMTP_AUTH_NTLM_TYPE2MSG,
+ SMTP_AUTH_GSSAPI,
+ SMTP_AUTH_GSSAPI_TOKEN,
+ SMTP_AUTH_GSSAPI_NO_DATA,
+ SMTP_AUTH_XOAUTH2,
+ SMTP_AUTH_CANCEL,
+ SMTP_AUTH_FINAL,
SMTP_COMMAND, /* VRFY, EXPN, NOOP, RSET and HELP */
SMTP_MAIL, /* MAIL FROM */
SMTP_RCPT, /* RCPT TO */
@@ -67,11 +79,14 @@ struct smtp_conn {
smtpstate state; /* Always use smtp.c:state() to change state! */
bool ssldone; /* Is connect() over SSL done? */
char *domain; /* Client address/name to send in the EHLO */
- struct SASL sasl; /* SASL-related storage */
+ unsigned int authmechs; /* Accepted authentication mechanisms */
+ unsigned int prefmech; /* Preferred authentication mechanism */
+ unsigned int authused; /* Auth mechanism used for the connection */
bool tls_supported; /* StartTLS capability supported by server */
bool size_supported; /* If server supports SIZE extension according to
RFC 1870 */
bool auth_supported; /* AUTH capability supported by server */
+ bool mutual_auth; /* Mutual authentication enabled (GSSAPI only) */
};
extern const struct Curl_handler Curl_handler_smtp;
diff --git a/lib/socks.c b/lib/socks.c
index 7d3f782b4..6c6585b05 100644
--- a/lib/socks.c
+++ b/lib/socks.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -382,7 +382,7 @@ CURLcode Curl_SOCKS5(const char *proxy_name,
/* RFC1928 chapter 5 specifies max 255 chars for domain name in packet */
if(!socks5_resolve_local && hostname_len > 255) {
- infof(conn->data, "SOCKS5: server resolving disabled for hostnames of "
+ infof(conn->data,"SOCKS5: server resolving disabled for hostnames of "
"length > 255 [actual len=%zu]\n", hostname_len);
socks5_resolve_local = TRUE;
}
diff --git a/lib/socks_gssapi.c b/lib/socks_gssapi.c
index 8e575c279..f195c1a0e 100644
--- a/lib/socks_gssapi.c
+++ b/lib/socks_gssapi.c
@@ -6,7 +6,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2009, 2011, Markus Moeller, <markus_moeller@compuserve.com>
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -23,7 +23,16 @@
#include "curl_setup.h"
-#if defined(HAVE_GSSAPI) && !defined(CURL_DISABLE_PROXY)
+#ifndef CURL_DISABLE_PROXY
+
+#ifdef HAVE_GSSAPI
+#ifdef HAVE_OLD_GSSMIT
+#define GSS_C_NT_HOSTBASED_SERVICE gss_nt_service_name
+#define NCOMPAT 1
+#endif
+#ifndef gss_nt_service_name
+#define gss_nt_service_name GSS_C_NT_HOSTBASED_SERVICE
+#endif
#include "curl_gssapi.h"
#include "urldata.h"
@@ -32,7 +41,10 @@
#include "timeval.h"
#include "socks.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -48,7 +60,7 @@ static int check_gss_err(struct SessionHandle *data,
const char* function)
{
if(GSS_ERROR(major_status)) {
- OM_uint32 maj_stat, min_stat;
+ OM_uint32 maj_stat,min_stat;
OM_uint32 msg_ctx = 0;
gss_buffer_desc status_string;
char buf[1024];
@@ -92,10 +104,10 @@ static int check_gss_err(struct SessionHandle *data,
gss_release_buffer(&min_stat, &status_string);
}
failf(data, "GSS-API error: %s failed:\n%s", function, buf);
- return 1;
+ return(1);
}
- return 0;
+ return(0);
}
CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
@@ -131,7 +143,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
*/
/* prepare service name */
- if(strchr(serviceptr, '/')) {
+ if(strchr(serviceptr,'/')) {
service.value = malloc(strlen(serviceptr));
if(!service.value)
return CURLE_OUT_OF_MEMORY;
@@ -150,13 +162,13 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
serviceptr, conn->proxy.name);
gss_major_status = gss_import_name(&gss_minor_status, &service,
- GSS_C_NT_HOSTBASED_SERVICE, &server);
+ gss_nt_service_name, &server);
}
gss_release_buffer(&gss_status, &service); /* clear allocated memory */
- if(check_gss_err(data, gss_major_status,
- gss_minor_status, "gss_import_name()")) {
+ if(check_gss_err(data,gss_major_status,
+ gss_minor_status,"gss_import_name()")) {
failf(data, "Failed to create service name.");
gss_release_name(&gss_status, &server);
return CURLE_COULDNT_CONNECT;
@@ -178,8 +190,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
if(gss_token != GSS_C_NO_BUFFER)
gss_release_buffer(&gss_status, &gss_recv_token);
- if(check_gss_err(data, gss_major_status,
- gss_minor_status, "gss_init_sec_context")) {
+ if(check_gss_err(data,gss_major_status,
+ gss_minor_status,"gss_init_sec_context")) {
gss_release_name(&gss_status, &server);
gss_release_buffer(&gss_status, &gss_recv_token);
gss_release_buffer(&gss_status, &gss_send_token);
@@ -192,7 +204,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
socksreq[0] = 1; /* GSS-API subnegotiation version */
socksreq[1] = 1; /* authentication message type */
us_length = htons((short)gss_send_token.length);
- memcpy(socksreq+2, &us_length, sizeof(short));
+ memcpy(socksreq+2,&us_length,sizeof(short));
code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
if(code || (4 != written)) {
@@ -291,8 +303,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
gss_major_status = gss_inquire_context (&gss_minor_status, gss_context,
&gss_client_name, NULL, NULL, NULL,
NULL, NULL, NULL);
- if(check_gss_err(data, gss_major_status,
- gss_minor_status, "gss_inquire_context")) {
+ if(check_gss_err(data,gss_major_status,
+ gss_minor_status,"gss_inquire_context")) {
gss_delete_sec_context(&gss_status, &gss_context, NULL);
gss_release_name(&gss_status, &gss_client_name);
failf(data, "Failed to determine user name.");
@@ -300,8 +312,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
}
gss_major_status = gss_display_name(&gss_minor_status, gss_client_name,
&gss_send_token, NULL);
- if(check_gss_err(data, gss_major_status,
- gss_minor_status, "gss_display_name")) {
+ if(check_gss_err(data,gss_major_status,
+ gss_minor_status,"gss_display_name")) {
gss_delete_sec_context(&gss_status, &gss_context, NULL);
gss_release_name(&gss_status, &gss_client_name);
gss_release_buffer(&gss_status, &gss_send_token);
@@ -372,7 +384,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
*/
if(data->set.socks5_gssapi_nec) {
us_length = htons((short)1);
- memcpy(socksreq+2, &us_length, sizeof(short));
+ memcpy(socksreq+2,&us_length,sizeof(short));
}
else {
gss_send_token.length = 1;
@@ -387,7 +399,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
GSS_C_QOP_DEFAULT, &gss_send_token,
&gss_conf_state, &gss_w_token);
- if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_wrap")) {
+ if(check_gss_err(data,gss_major_status,gss_minor_status,"gss_wrap")) {
gss_release_buffer(&gss_status, &gss_send_token);
gss_release_buffer(&gss_status, &gss_w_token);
gss_delete_sec_context(&gss_status, &gss_context, NULL);
@@ -397,7 +409,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
gss_release_buffer(&gss_status, &gss_send_token);
us_length = htons((short)gss_w_token.length);
- memcpy(socksreq+2, &us_length, sizeof(short));
+ memcpy(socksreq+2,&us_length,sizeof(short));
}
code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
@@ -475,7 +487,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
&gss_recv_token, &gss_w_token,
0, GSS_C_QOP_DEFAULT);
- if(check_gss_err(data, gss_major_status, gss_minor_status, "gss_unwrap")) {
+ if(check_gss_err(data,gss_major_status,gss_minor_status,"gss_unwrap")) {
gss_release_buffer(&gss_status, &gss_recv_token);
gss_release_buffer(&gss_status, &gss_w_token);
gss_delete_sec_context(&gss_status, &gss_context, NULL);
@@ -492,7 +504,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
return CURLE_COULDNT_CONNECT;
}
- memcpy(socksreq, gss_w_token.value, gss_w_token.length);
+ memcpy(socksreq,gss_w_token.value,gss_w_token.length);
gss_release_buffer(&gss_status, &gss_w_token);
}
else {
@@ -504,7 +516,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
return CURLE_COULDNT_CONNECT;
}
- memcpy(socksreq, gss_recv_token.value, gss_recv_token.length);
+ memcpy(socksreq,gss_recv_token.value,gss_recv_token.length);
gss_release_buffer(&gss_status, &gss_recv_token);
}
@@ -518,5 +530,6 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
return CURLE_OK;
}
+#endif
-#endif /* HAVE_GSSAPI && !CURL_DISABLE_PROXY */
+#endif /* CURL_DISABLE_PROXY */
diff --git a/lib/socks_sspi.c b/lib/socks_sspi.c
index a7708b2d4..015862703 100644
--- a/lib/socks_sspi.c
+++ b/lib/socks_sspi.c
@@ -5,8 +5,8 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
* Copyright (C) 2009, 2011, Markus Moeller, <markus_moeller@compuserve.com>
+ * Copyright (C) 2012 - 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
@@ -34,7 +34,10 @@
#include "curl_sspi.h"
#include "curl_multibyte.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use the internal *printf() functions */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -104,8 +107,8 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
service_name = malloc(strlen(service) + strlen(conn->proxy.name) + 2);
if(!service_name)
return CURLE_OUT_OF_MEMORY;
- snprintf(service_name, strlen(service) +strlen(conn->proxy.name)+2,
- "%s/%s", service, conn->proxy.name);
+ snprintf(service_name,strlen(service) +strlen(conn->proxy.name)+2,"%s/%s",
+ service,conn->proxy.name);
}
input_desc.cBuffers = 1;
@@ -143,7 +146,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
if(check_sspi_err(conn, status, "AcquireCredentialsHandle")) {
failf(data, "Failed to acquire credentials.");
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
return CURLE_COULDNT_CONNECT;
}
@@ -182,7 +185,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
}
if(check_sspi_err(conn, status, "InitializeSecurityContext")) {
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
s_pSecFn->DeleteSecurityContext(&sspi_context);
if(sspi_recv_token.pvBuffer)
@@ -200,7 +203,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
if(code || (4 != written)) {
failf(data, "Failed to send SSPI authentication request.");
- free(service_name);
+ Curl_safefree(service_name);
if(sspi_send_token.pvBuffer)
s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
if(sspi_recv_token.pvBuffer)
@@ -214,7 +217,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
sspi_send_token.cbBuffer, &written);
if(code || (sspi_send_token.cbBuffer != (size_t)written)) {
failf(data, "Failed to send SSPI authentication token.");
- free(service_name);
+ Curl_safefree(service_name);
if(sspi_send_token.pvBuffer)
s_pSecFn->FreeContextBuffer(sspi_send_token.pvBuffer);
if(sspi_recv_token.pvBuffer)
@@ -254,7 +257,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
result = Curl_blockread_all(conn, sock, (char *)socksreq, 4, &actualread);
if(result || (actualread != 4)) {
failf(data, "Failed to receive SSPI authentication response.");
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
s_pSecFn->DeleteSecurityContext(&sspi_context);
return CURLE_COULDNT_CONNECT;
@@ -264,7 +267,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
if(socksreq[1] == 255) { /* status / message type */
failf(data, "User was rejected by the SOCKS5 server (%u %u).",
(unsigned int)socksreq[0], (unsigned int)socksreq[1]);
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
s_pSecFn->DeleteSecurityContext(&sspi_context);
return CURLE_COULDNT_CONNECT;
@@ -273,7 +276,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
if(socksreq[1] != 1) { /* status / messgae type */
failf(data, "Invalid SSPI authentication response type (%u %u).",
(unsigned int)socksreq[0], (unsigned int)socksreq[1]);
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
s_pSecFn->DeleteSecurityContext(&sspi_context);
return CURLE_COULDNT_CONNECT;
@@ -286,7 +289,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
sspi_recv_token.pvBuffer = malloc(us_length);
if(!sspi_recv_token.pvBuffer) {
- free(service_name);
+ Curl_safefree(service_name);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
s_pSecFn->DeleteSecurityContext(&sspi_context);
return CURLE_OUT_OF_MEMORY;
@@ -296,7 +299,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
if(result || (actualread != us_length)) {
failf(data, "Failed to receive SSPI authentication token.");
- free(service_name);
+ Curl_safefree(service_name);
if(sspi_recv_token.pvBuffer)
s_pSecFn->FreeContextBuffer(sspi_recv_token.pvBuffer);
s_pSecFn->FreeCredentialsHandle(&cred_handle);
@@ -307,7 +310,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
context_handle = &sspi_context;
}
- free(service_name);
+ Curl_safefree(service_name);
/* Everything is good so far, user was authenticated! */
status = s_pSecFn->QueryCredentialsAttributes(&cred_handle,
@@ -402,7 +405,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
return CURLE_OUT_OF_MEMORY;
}
- memcpy(sspi_w_token[1].pvBuffer, &gss_enc, 1);
+ memcpy(sspi_w_token[1].pvBuffer,&gss_enc,1);
sspi_w_token[2].BufferType = SECBUFFER_PADDING;
sspi_w_token[2].cbBuffer = sspi_sizes.cbBlockSize;
sspi_w_token[2].pvBuffer = malloc(sspi_sizes.cbBlockSize);
@@ -456,7 +459,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
sspi_w_token[2].cbBuffer = 0;
us_length = htons((short)sspi_send_token.cbBuffer);
- memcpy(socksreq+2, &us_length, sizeof(short));
+ memcpy(socksreq+2,&us_length,sizeof(short));
}
code = Curl_write_plain(conn, sock, (char *)socksreq, 4, &written);
@@ -469,7 +472,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
}
if(data->set.socks5_gssapi_nec) {
- memcpy(socksreq, &gss_enc, 1);
+ memcpy(socksreq,&gss_enc,1);
code = Curl_write_plain(conn, sock, (char *)socksreq, 1, &written);
if(code || (1 != written)) {
failf(data, "Failed to send SSPI encryption type.");
@@ -567,7 +570,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
return CURLE_COULDNT_CONNECT;
}
- memcpy(socksreq, sspi_w_token[1].pvBuffer, sspi_w_token[1].cbBuffer);
+ memcpy(socksreq,sspi_w_token[1].pvBuffer,sspi_w_token[1].cbBuffer);
s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
s_pSecFn->FreeContextBuffer(sspi_w_token[1].pvBuffer);
}
@@ -579,7 +582,7 @@ CURLcode Curl_SOCKS5_gssapi_negotiate(int sockindex,
s_pSecFn->DeleteSecurityContext(&sspi_context);
return CURLE_COULDNT_CONNECT;
}
- memcpy(socksreq, sspi_w_token[0].pvBuffer, sspi_w_token[0].cbBuffer);
+ memcpy(socksreq,sspi_w_token[0].pvBuffer,sspi_w_token[0].cbBuffer);
s_pSecFn->FreeContextBuffer(sspi_w_token[0].pvBuffer);
}
diff --git a/lib/splay.c b/lib/splay.c
index b87b6cfe2..5bb7065e4 100644
--- a/lib/splay.c
+++ b/lib/splay.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1997 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1997 - 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
@@ -101,13 +101,13 @@ struct Curl_tree *Curl_splayinsert(struct timeval i,
struct Curl_tree *t,
struct Curl_tree *node)
{
- static const struct timeval KEY_NOTUSED = {-1, -1}; /* will *NEVER* appear */
+ static const struct timeval KEY_NOTUSED = {-1,-1}; /* will *NEVER* appear */
if(node == NULL)
return t;
if(t != NULL) {
- t = Curl_splay(i, t);
+ t = Curl_splay(i,t);
if(compare(i, t->key)==0) {
/* There already exists a node in the tree with the very same key. Build
a linked list of nodes. We make the new 'node' struct the new master
@@ -162,7 +162,7 @@ struct Curl_tree *Curl_splaygetbest(struct timeval i,
return NULL;
}
- t = Curl_splay(i, t);
+ t = Curl_splay(i,t);
if(compare(i, t->key) < 0) {
/* too big node, try the smaller chain */
if(t->smaller)
@@ -223,7 +223,7 @@ int Curl_splayremovebyaddr(struct Curl_tree *t,
struct Curl_tree *removenode,
struct Curl_tree **newroot)
{
- static const struct timeval KEY_NOTUSED = {-1, -1}; /* will *NEVER* appear */
+ static const struct timeval KEY_NOTUSED = {-1,-1}; /* will *NEVER* appear */
struct Curl_tree *x;
if(!t || !removenode)
diff --git a/lib/ssh.c b/lib/ssh.c
index 94195a7b6..d7e88c6f7 100644
--- a/lib/ssh.c
+++ b/lib/ssh.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -83,7 +83,10 @@
#include "multiif.h"
#include "select.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -855,7 +858,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
}
if(out_of_memory || sshc->rsa == NULL) {
- free(home);
+ Curl_safefree(home);
Curl_safefree(sshc->rsa);
Curl_safefree(sshc->rsa_pub);
state(conn, SSH_SESSION_FREE);
@@ -867,7 +870,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
if(!sshc->passphrase)
sshc->passphrase = "";
- free(home);
+ Curl_safefree(home);
infof(data, "Using SSH public key file '%s'\n", sshc->rsa_pub);
infof(data, "Using SSH private key file '%s'\n", sshc->rsa);
@@ -935,7 +938,6 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
}
else {
state(conn, SSH_AUTH_HOST_INIT);
- rc = 0; /* clear rc and continue */
}
break;
@@ -1020,11 +1022,11 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
sshc->sshagent_identity);
if(rc < 0) {
- if(rc != LIBSSH2_ERROR_EAGAIN)
+ if(rc != LIBSSH2_ERROR_EAGAIN) {
/* tried and failed? go to next identity */
sshc->sshagent_prev_identity = sshc->sshagent_identity;
- else
- break;
+ }
+ break;
}
}
@@ -1038,10 +1040,8 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
infof(data, "Agent based authentication successful\n");
state(conn, SSH_AUTH_DONE);
}
- else {
+ else
state(conn, SSH_AUTH_KEY_INIT);
- rc = 0; /* clear rc and continue */
- }
#endif
break;
@@ -1740,8 +1740,8 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
BUFSIZE : curlx_sotouz(data->state.resume_from - passed);
size_t actuallyread =
- data->set.fread_func(data->state.buffer, 1, readthisamountnow,
- data->set.in);
+ conn->fread_func(data->state.buffer, 1, readthisamountnow,
+ conn->fread_in);
passed += actuallyread;
if((actuallyread == 0) || (actuallyread > readthisamountnow)) {
@@ -1921,7 +1921,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
}
result = Curl_client_write(conn, CLIENTWRITE_BODY,
tmpLine, sshc->readdir_len+1);
- free(tmpLine);
+ Curl_safefree(tmpLine);
if(result) {
state(conn, SSH_STOP);
@@ -2144,7 +2144,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
/* from is relative to end of file */
from += size;
}
- if(from > size) {
+ if(from >= size) {
failf(data, "Offset (%"
CURL_FORMAT_CURL_OFF_T ") was beyond file size (%"
CURL_FORMAT_CURL_OFF_T ")", from, attrs.filesize);
@@ -2245,7 +2245,7 @@ static CURLcode ssh_statemach_act(struct connectdata *conn, bool *block)
DEBUGF(infof(data, "SFTP DONE done\n"));
/* Check if nextstate is set and move .nextstate could be POSTQUOTE_INIT
- After nextstate is executed, the control should come back to
+ After nextstate is executed,the control should come back to
SSH_SFTP_CLOSE to pass the correct result back */
if(sshc->nextstate != SSH_NO_STATE &&
sshc->nextstate != SSH_SFTP_CLOSE) {
@@ -3270,8 +3270,8 @@ get_pathname(const char **cpp, char **path)
return CURLE_OK;
fail:
- Curl_safefree(*path);
- return CURLE_QUOTE_ERROR;
+ Curl_safefree(*path);
+ return CURLE_QUOTE_ERROR;
}
diff --git a/lib/ssh.h b/lib/ssh.h
index b3cc54cca..1bc334857 100644
--- a/lib/ssh.h
+++ b/lib/ssh.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -44,9 +44,9 @@ typedef enum {
SSH_AUTH_PKEY,
SSH_AUTH_PASS_INIT,
SSH_AUTH_PASS,
- SSH_AUTH_AGENT_INIT, /* initialize then wait for connection to agent */
- SSH_AUTH_AGENT_LIST, /* ask for list then wait for entire list to come */
- SSH_AUTH_AGENT, /* attempt one key at a time */
+ SSH_AUTH_AGENT_INIT,/* initialize then wait for connection to agent */
+ SSH_AUTH_AGENT_LIST,/* ask for list then wait for entire list to come */
+ SSH_AUTH_AGENT, /* attempt one key at a time */
SSH_AUTH_HOST_INIT,
SSH_AUTH_HOST,
SSH_AUTH_KEY_INIT,
diff --git a/lib/strdup.c b/lib/strdup.c
index 5685b8138..a997b12f2 100644
--- a/lib/strdup.c
+++ b/lib/strdup.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -44,7 +44,7 @@ char *curlx_strdup(const char *str)
if(!newstr)
return (char *)NULL;
- memcpy(newstr, str, (len+1)*sizeof(char));
+ memcpy(newstr,str,(len+1)*sizeof(char));
return newstr;
diff --git a/lib/strerror.c b/lib/strerror.c
index 565714188..b85b56839 100644
--- a/lib/strerror.c
+++ b/lib/strerror.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2004 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2004 - 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
@@ -40,7 +40,10 @@
#endif
#include "strerror.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -298,9 +301,6 @@ curl_easy_strerror(CURLcode error)
case CURLE_SSL_PINNEDPUBKEYNOTMATCH:
return "SSL public key does not match pinned public key";
- case CURLE_SSL_INVALIDCERTSTATUS:
- return "SSL server certificate status verification FAILED";
-
/* error codes not used by current libcurl */
case CURLE_OBSOLETE20:
case CURLE_OBSOLETE24:
@@ -641,7 +641,7 @@ const char *Curl_strerror(struct connectdata *conn, int err)
FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, err,
LANG_NEUTRAL, wbuf, sizeof(wbuf)/sizeof(wchar_t), NULL);
- wcstombs(buf, wbuf, max);
+ wcstombs(buf,wbuf,max);
}
#else
/* 'sys_nerr' is the maximum errno number, it is not widely portable */
@@ -708,9 +708,9 @@ const char *Curl_strerror(struct connectdata *conn, int err)
buf[max] = '\0'; /* make sure the string is zero terminated */
/* strip trailing '\r\n' or '\n'. */
- if((p = strrchr(buf, '\n')) != NULL && (p - buf) >= 2)
+ if((p = strrchr(buf,'\n')) != NULL && (p - buf) >= 2)
*p = '\0';
- if((p = strrchr(buf, '\r')) != NULL && (p - buf) >= 1)
+ if((p = strrchr(buf,'\r')) != NULL && (p - buf) >= 1)
*p = '\0';
if(old_errno != ERRNO)
@@ -824,9 +824,6 @@ const char *Curl_sspi_strerror (struct connectdata *conn, int err)
case SEC_E_OK:
txt = "No error";
break;
- case CRYPT_E_REVOKED:
- txt = "CRYPT_E_REVOKED";
- break;
case SEC_E_ALGORITHM_MISMATCH:
txt = "SEC_E_ALGORITHM_MISMATCH";
break;
@@ -1070,12 +1067,6 @@ const char *Curl_sspi_strerror (struct connectdata *conn, int err)
if(err == SEC_E_OK)
strncpy(outbuf, txt, outmax);
- else if(err == SEC_E_ILLEGAL_MESSAGE)
- snprintf(outbuf, outmax,
- "SEC_E_ILLEGAL_MESSAGE (0x%04X%04X) - This error usually occurs "
- "when a fatal SSL/TLS alert is received (e.g. handshake failed). "
- "More detail may be available in the Windows System event log.",
- (err >> 16) & 0xffff, err & 0xffff);
else {
str = txtbuf;
snprintf(txtbuf, sizeof(txtbuf), "%s (0x%04X%04X)",
@@ -1091,7 +1082,7 @@ const char *Curl_sspi_strerror (struct connectdata *conn, int err)
FORMAT_MESSAGE_IGNORE_INSERTS,
NULL, err, LANG_NEUTRAL,
wbuf, sizeof(wbuf)/sizeof(wchar_t), NULL)) {
- wcstombs(msgbuf, wbuf, sizeof(msgbuf)-1);
+ wcstombs(msgbuf,wbuf,sizeof(msgbuf)-1);
msg_formatted = TRUE;
}
}
@@ -1106,9 +1097,9 @@ const char *Curl_sspi_strerror (struct connectdata *conn, int err)
if(msg_formatted) {
msgbuf[sizeof(msgbuf)-1] = '\0';
/* strip trailing '\r\n' or '\n' */
- if((p = strrchr(msgbuf, '\n')) != NULL && (p - msgbuf) >= 2)
+ if((p = strrchr(msgbuf,'\n')) != NULL && (p - msgbuf) >= 2)
*p = '\0';
- if((p = strrchr(msgbuf, '\r')) != NULL && (p - msgbuf) >= 1)
+ if((p = strrchr(msgbuf,'\r')) != NULL && (p - msgbuf) >= 1)
*p = '\0';
msg = msgbuf;
}
diff --git a/lib/telnet.c b/lib/telnet.c
index aabf99d48..176e9940b 100644
--- a/lib/telnet.c
+++ b/lib/telnet.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -51,19 +51,21 @@
#include "telnet.h"
#include "connect.h"
#include "progress.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#define TELOPTS
#define TELCMDS
#include "arpa_telnet.h"
+#include "curl_memory.h"
#include "select.h"
#include "strequal.h"
#include "rawstr.h"
#include "warnless.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
#define SUBBUFSIZE 512
@@ -226,9 +228,9 @@ check_wsock2 ( struct SessionHandle *data )
if(LOBYTE(wsaData.wVersion) != LOBYTE(wVersionRequested) ||
HIBYTE(wsaData.wVersion) != HIBYTE(wVersionRequested)) {
/* Our version isn't supported */
- failf(data, "insufficient winsock version to support "
- "telnet");
- return CURLE_FAILED_INIT;
+ failf(data,"insufficient winsock version to support "
+ "telnet");
+ return CURLE_FAILED_INIT;
}
/* Our version is supported */
@@ -1174,7 +1176,7 @@ CURLcode telrcv(struct connectdata *conn,
if(c == CURL_IAC)
tn->telrcv_state = CURL_TS_SE;
else
- CURL_SB_ACCUM(tn, c);
+ CURL_SB_ACCUM(tn,c);
break;
case CURL_TS_SE:
@@ -1199,7 +1201,7 @@ CURLcode telrcv(struct connectdata *conn,
tn->telrcv_state = CURL_TS_IAC;
goto process_iac;
}
- CURL_SB_ACCUM(tn, c);
+ CURL_SB_ACCUM(tn,c);
tn->telrcv_state = CURL_TS_SB;
}
else
@@ -1280,7 +1282,7 @@ static CURLcode telnet_done(struct connectdata *conn,
static CURLcode telnet_do(struct connectdata *conn, bool *done)
{
- CURLcode result;
+ CURLcode code;
struct SessionHandle *data = conn->data;
curl_socket_t sockfd = conn->sock[FIRSTSOCKET];
#ifdef USE_WINSOCK
@@ -1313,61 +1315,65 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
*done = TRUE; /* unconditionally */
- result = init_telnet(conn);
- if(result)
- return result;
+ code = init_telnet(conn);
+ if(code)
+ return code;
tn = (struct TELNET *)data->req.protop;
- result = check_telnet_options(conn);
- if(result)
- return result;
+ code = check_telnet_options(conn);
+ if(code)
+ return code;
#ifdef USE_WINSOCK
/*
** This functionality only works with WinSock >= 2.0. So,
** make sure have it.
*/
- result = check_wsock2(data);
- if(result)
- return result;
+ code = check_wsock2(data);
+ if(code)
+ return code;
/* OK, so we have WinSock 2.0. We need to dynamically */
/* load ws2_32.dll and get the function pointers we need. */
wsock2 = LoadLibrary(TEXT("WS2_32.DLL"));
if(wsock2 == NULL) {
- failf(data, "failed to load WS2_32.DLL (%d)", ERRNO);
+ failf(data,"failed to load WS2_32.DLL (%d)", ERRNO);
return CURLE_FAILED_INIT;
}
/* Grab a pointer to WSACreateEvent */
- create_event_func = GetProcAddress(wsock2, "WSACreateEvent");
+ create_event_func = GetProcAddress(wsock2,"WSACreateEvent");
if(create_event_func == NULL) {
- failf(data, "failed to find WSACreateEvent function (%d)", ERRNO);
+ failf(data,"failed to find WSACreateEvent function (%d)",
+ ERRNO);
FreeLibrary(wsock2);
return CURLE_FAILED_INIT;
}
/* And WSACloseEvent */
- close_event_func = GetProcAddress(wsock2, "WSACloseEvent");
+ close_event_func = GetProcAddress(wsock2,"WSACloseEvent");
if(close_event_func == NULL) {
- failf(data, "failed to find WSACloseEvent function (%d)", ERRNO);
+ failf(data,"failed to find WSACloseEvent function (%d)",
+ ERRNO);
FreeLibrary(wsock2);
return CURLE_FAILED_INIT;
}
/* And WSAEventSelect */
- event_select_func = GetProcAddress(wsock2, "WSAEventSelect");
+ event_select_func = GetProcAddress(wsock2,"WSAEventSelect");
if(event_select_func == NULL) {
- failf(data, "failed to find WSAEventSelect function (%d)", ERRNO);
+ failf(data,"failed to find WSAEventSelect function (%d)",
+ ERRNO);
FreeLibrary(wsock2);
return CURLE_FAILED_INIT;
}
/* And WSAEnumNetworkEvents */
- enum_netevents_func = GetProcAddress(wsock2, "WSAEnumNetworkEvents");
+ enum_netevents_func = GetProcAddress(wsock2,"WSAEnumNetworkEvents");
if(enum_netevents_func == NULL) {
- failf(data, "failed to find WSAEnumNetworkEvents function (%d)", ERRNO);
+ failf(data,"failed to find WSAEnumNetworkEvents function (%d)",
+ ERRNO);
FreeLibrary(wsock2);
return CURLE_FAILED_INIT;
}
@@ -1380,7 +1386,7 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
/* First, create a sockets event object */
event_handle = (WSAEVENT)create_event_func();
if(event_handle == WSA_INVALID_EVENT) {
- failf(data, "WSACreateEvent failed (%d)", SOCKERRNO);
+ failf(data,"WSACreateEvent failed (%d)", SOCKERRNO);
FreeLibrary(wsock2);
return CURLE_FAILED_INIT;
}
@@ -1421,30 +1427,29 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
case WAIT_TIMEOUT:
{
for(;;) {
- if(data->set.is_fread_set) {
+ if(obj_count == 1) {
/* read from user-supplied method */
- result = (int)data->set.fread_func(buf, 1, BUFSIZE - 1,
- data->set.in);
- if(result == CURL_READFUNC_ABORT) {
+ code = (int)conn->fread_func(buf, 1, BUFSIZE - 1, conn->fread_in);
+ if(code == CURL_READFUNC_ABORT) {
keepon = FALSE;
- result = CURLE_READ_ERROR;
+ code = CURLE_READ_ERROR;
break;
}
- if(result == CURL_READFUNC_PAUSE)
+ if(code == CURL_READFUNC_PAUSE)
break;
- if(result == 0) /* no bytes */
+ if(code == 0) /* no bytes */
break;
- readfile_read = result; /* fall thru with number of bytes read */
+ readfile_read = code; /* fall thru with number of bytes read */
}
else {
/* read from stdin */
if(!PeekNamedPipe(stdin_handle, NULL, 0, NULL,
&readfile_read, NULL)) {
keepon = FALSE;
- result = CURLE_READ_ERROR;
+ code = CURLE_READ_ERROR;
break;
}
@@ -1454,13 +1459,13 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
if(!ReadFile(stdin_handle, buf, sizeof(data->state.buffer),
&readfile_read, NULL)) {
keepon = FALSE;
- result = CURLE_READ_ERROR;
+ code = CURLE_READ_ERROR;
break;
}
}
- result = send_telnet_data(conn, buf, readfile_read);
- if(result) {
+ code = send_telnet_data(conn, buf, readfile_read);
+ if(code) {
keepon = FALSE;
break;
}
@@ -1473,12 +1478,12 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
if(!ReadFile(stdin_handle, buf, sizeof(data->state.buffer),
&readfile_read, NULL)) {
keepon = FALSE;
- result = CURLE_READ_ERROR;
+ code = CURLE_READ_ERROR;
break;
}
- result = send_telnet_data(conn, buf, readfile_read);
- if(result) {
+ code = send_telnet_data(conn, buf, readfile_read);
+ if(code) {
keepon = FALSE;
break;
}
@@ -1490,20 +1495,20 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
events.lNetworkEvents = 0;
if(SOCKET_ERROR == enum_netevents_func(sockfd, event_handle, &events)) {
if((err = SOCKERRNO) != EINPROGRESS) {
- infof(data, "WSAEnumNetworkEvents failed (%d)", err);
+ infof(data,"WSAEnumNetworkEvents failed (%d)", err);
keepon = FALSE;
- result = CURLE_READ_ERROR;
+ code = CURLE_READ_ERROR;
}
break;
}
if(events.lNetworkEvents & FD_READ) {
/* read data from network */
- result = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
+ code = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
/* read would've blocked. Loop again */
- if(result == CURLE_AGAIN)
+ if(code == CURLE_AGAIN)
break;
/* returned not-zero, this an error */
- else if(result) {
+ else if(code) {
keepon = FALSE;
break;
}
@@ -1514,8 +1519,8 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
break;
}
- result = telrcv(conn, (unsigned char *) buf, nread);
- if(result) {
+ code = telrcv(conn, (unsigned char *)buf, nread);
+ if(code) {
keepon = FALSE;
break;
}
@@ -1539,7 +1544,7 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
now = Curl_tvnow();
if(Curl_tvdiff(now, conn->created) >= data->set.timeout) {
failf(data, "Time-out");
- result = CURLE_OPERATION_TIMEDOUT;
+ code = CURLE_OPERATION_TIMEDOUT;
keepon = FALSE;
}
}
@@ -1547,7 +1552,7 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
/* We called WSACreateEvent, so call WSACloseEvent */
if(!close_event_func(event_handle)) {
- infof(data, "WSACloseEvent failed (%d)", SOCKERRNO);
+ infof(data,"WSACloseEvent failed (%d)", SOCKERRNO);
}
/* "Forget" pointers into the library we're about to free */
@@ -1558,18 +1563,18 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
/* We called LoadLibrary, so call FreeLibrary */
if(!FreeLibrary(wsock2))
- infof(data, "FreeLibrary(wsock2) failed (%d)", ERRNO);
+ infof(data,"FreeLibrary(wsock2) failed (%d)", ERRNO);
#else
pfd[0].fd = sockfd;
pfd[0].events = POLLIN;
- if(data->set.fread_func != (curl_read_callback)fread) {
+ if(conn->fread_func != (curl_read_callback)fread) {
poll_cnt = 1;
interval_ms = 100; /* poll user-supplied read function */
}
else {
/* really using fread, so infile is a FILE* */
- pfd[1].fd = fileno((FILE *)data->set.in);
+ pfd[1].fd = fileno((FILE *)conn->fread_in);
pfd[1].events = POLLIN;
poll_cnt = 2;
interval_ms = 1 * 1000;
@@ -1587,12 +1592,12 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
default: /* read! */
if(pfd[0].revents & POLLIN) {
/* read data from network */
- result = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
+ code = Curl_read(conn, sockfd, buf, BUFSIZE - 1, &nread);
/* read would've blocked. Loop again */
- if(result == CURLE_AGAIN)
+ if(code == CURLE_AGAIN)
break;
/* returned not-zero, this an error */
- else if(result) {
+ else if(code) {
keepon = FALSE;
break;
}
@@ -1605,8 +1610,8 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
total_dl += nread;
Curl_pgrsSetDownloadCounter(data, total_dl);
- result = telrcv(conn, (unsigned char *)buf, nread);
- if(result) {
+ code = telrcv(conn, (unsigned char *)buf, nread);
+ if(code) {
keepon = FALSE;
break;
}
@@ -1628,7 +1633,7 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
}
else {
/* read from user-supplied method */
- nread = (int)data->set.fread_func(buf, 1, BUFSIZE - 1, data->set.in);
+ nread = (int)conn->fread_func(buf, 1, BUFSIZE - 1, conn->fread_in);
if(nread == CURL_READFUNC_ABORT) {
keepon = FALSE;
break;
@@ -1638,8 +1643,8 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
}
if(nread > 0) {
- result = send_telnet_data(conn, buf, nread);
- if(result) {
+ code = send_telnet_data(conn, buf, nread);
+ if(code) {
keepon = FALSE;
break;
}
@@ -1656,13 +1661,13 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
now = Curl_tvnow();
if(Curl_tvdiff(now, conn->created) >= data->set.timeout) {
failf(data, "Time-out");
- result = CURLE_OPERATION_TIMEDOUT;
+ code = CURLE_OPERATION_TIMEDOUT;
keepon = FALSE;
}
}
if(Curl_pgrsUpdate(conn)) {
- result = CURLE_ABORTED_BY_CALLBACK;
+ code = CURLE_ABORTED_BY_CALLBACK;
break;
}
}
@@ -1670,6 +1675,6 @@ static CURLcode telnet_do(struct connectdata *conn, bool *done)
/* mark this as "no further transfer wanted" */
Curl_setup_transfer(conn, -1, -1, FALSE, NULL, -1, NULL);
- return result;
+ return code;
}
#endif
diff --git a/lib/tftp.c b/lib/tftp.c
index 4c5796f55..b9723c000 100644
--- a/lib/tftp.c
+++ b/lib/tftp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -57,11 +57,14 @@
#include "url.h"
#include "rawstr.h"
#include "speedcheck.h"
-#include "curl_printf.h"
-#include "select.h"
-/* The last #include files should be: */
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
+#include "select.h"
+
+/* The last #include file should be: */
#include "memdebug.h"
/* RFC2348 allows the block size to be negotiated */
@@ -145,8 +148,8 @@ typedef struct tftp_state_data {
/* Forward declarations */
-static CURLcode tftp_rx(tftp_state_data_t *state, tftp_event_t event);
-static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event);
+static CURLcode tftp_rx(tftp_state_data_t *state, tftp_event_t event) ;
+static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event) ;
static CURLcode tftp_connect(struct connectdata *conn, bool *done);
static CURLcode tftp_disconnect(struct connectdata *conn,
bool dead_connection);
@@ -218,7 +221,7 @@ static CURLcode tftp_set_timeouts(tftp_state_data_t *state)
state->max_time = state->start_time+maxtime;
/* Set per-block timeout to total */
- timeout = maxtime;
+ timeout = maxtime ;
/* Average restart after 5 seconds */
state->retry_max = (int)timeout/5;
@@ -408,7 +411,7 @@ static size_t tftp_option_add(tftp_state_data_t *state, size_t csize,
if(( strlen(option) + csize + 1 ) > (size_t)state->blksize)
return 0;
strcpy(buf, option);
- return strlen(option) + 1;
+ return( strlen(option) + 1 );
}
static CURLcode tftp_connect_for_tx(tftp_state_data_t *state,
@@ -423,7 +426,7 @@ static CURLcode tftp_connect_for_tx(tftp_state_data_t *state,
state->state = TFTP_STATE_TX;
result = tftp_set_timeouts(state);
if(result)
- return result;
+ return(result);
return tftp_tx(state, event);
}
@@ -439,7 +442,7 @@ static CURLcode tftp_connect_for_rx(tftp_state_data_t *state,
state->state = TFTP_STATE_RX;
result = tftp_set_timeouts(state);
if(result)
- return result;
+ return(result);
return tftp_rx(state, event);
}
@@ -451,7 +454,7 @@ static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event)
char *filename;
char buf[64];
struct SessionHandle *data = state->conn->data;
- CURLcode result = CURLE_OK;
+ CURLcode res = CURLE_OK;
/* Set ascii mode if -B flag was used */
if(data->set.prefer_ascii)
@@ -466,7 +469,7 @@ static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event)
if(state->retries>state->retry_max) {
state->error = TFTP_ERR_NORESPONSE;
state->state = TFTP_STATE_FIN;
- return result;
+ return res;
}
if(data->set.upload) {
@@ -531,24 +534,24 @@ static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event)
if(senddata != (ssize_t)sbytes) {
failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
}
- free(filename);
+ Curl_safefree(filename);
break;
case TFTP_EVENT_OACK:
if(data->set.upload) {
- result = tftp_connect_for_tx(state, event);
+ res = tftp_connect_for_tx(state, event);
}
else {
- result = tftp_connect_for_rx(state, event);
+ res = tftp_connect_for_rx(state, event);
}
break;
case TFTP_EVENT_ACK: /* Connected for transmit */
- result = tftp_connect_for_tx(state, event);
+ res = tftp_connect_for_tx(state, event);
break;
case TFTP_EVENT_DATA: /* Connected for receive */
- result = tftp_connect_for_rx(state, event);
+ res = tftp_connect_for_rx(state, event);
break;
case TFTP_EVENT_ERROR:
@@ -559,8 +562,7 @@ static CURLcode tftp_send_first(tftp_state_data_t *state, tftp_event_t event)
failf(state->conn->data, "tftp_send_first: internal error");
break;
}
-
- return result;
+ return res;
}
/* the next blocknum is x + 1 but it needs to wrap at an unsigned 16bit
@@ -700,7 +702,7 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
struct SessionHandle *data = state->conn->data;
ssize_t sbytes;
int rblock;
- CURLcode result = CURLE_OK;
+ CURLcode res = CURLE_OK;
struct SingleRequest *k = &data->req;
switch(event) {
@@ -726,7 +728,7 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
if(state->retries>state->retry_max) {
failf(data, "tftp_tx: giving up waiting for block %d ack",
state->block);
- result = CURLE_SEND_ERROR;
+ res = CURLE_SEND_ERROR;
}
else {
/* Re-send the data packet */
@@ -737,11 +739,10 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
/* Check all sbytes were sent */
if(sbytes<0) {
failf(data, "%s", Curl_strerror(state->conn, SOCKERRNO));
- result = CURLE_SEND_ERROR;
+ res = CURLE_SEND_ERROR;
}
}
-
- return result;
+ return res;
}
/* This is the expected packet. Reset the counters and send the next
block */
@@ -758,13 +759,11 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
state->state = TFTP_STATE_FIN;
return CURLE_OK;
}
-
- result = Curl_fillreadbuffer(state->conn, state->blksize, &state->sbytes);
- if(result)
- return result;
-
- sbytes = sendto(state->sockfd, (void *) state->spacket.data,
- 4 + state->sbytes, SEND_4TH_ARG,
+ res = Curl_fillreadbuffer(state->conn, state->blksize, &state->sbytes);
+ if(res)
+ return res;
+ sbytes = sendto(state->sockfd, (void *)state->spacket.data,
+ 4+state->sbytes, SEND_4TH_ARG,
(struct sockaddr *)&state->remote_addr,
state->remote_addrlen);
/* Check all sbytes were sent */
@@ -820,7 +819,7 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
break;
}
- return result;
+ return res;
}
/**********************************************************
@@ -832,47 +831,48 @@ static CURLcode tftp_tx(tftp_state_data_t *state, tftp_event_t event)
**********************************************************/
static CURLcode tftp_translate_code(tftp_error_t error)
{
- CURLcode result = CURLE_OK;
+ CURLcode code = CURLE_OK;
if(error != TFTP_ERR_NONE) {
switch(error) {
case TFTP_ERR_NOTFOUND:
- result = CURLE_TFTP_NOTFOUND;
+ code = CURLE_TFTP_NOTFOUND;
break;
case TFTP_ERR_PERM:
- result = CURLE_TFTP_PERM;
+ code = CURLE_TFTP_PERM;
break;
case TFTP_ERR_DISKFULL:
- result = CURLE_REMOTE_DISK_FULL;
+ code = CURLE_REMOTE_DISK_FULL;
break;
case TFTP_ERR_UNDEF:
case TFTP_ERR_ILLEGAL:
- result = CURLE_TFTP_ILLEGAL;
+ code = CURLE_TFTP_ILLEGAL;
break;
case TFTP_ERR_UNKNOWNID:
- result = CURLE_TFTP_UNKNOWNID;
+ code = CURLE_TFTP_UNKNOWNID;
break;
case TFTP_ERR_EXISTS:
- result = CURLE_REMOTE_FILE_EXISTS;
+ code = CURLE_REMOTE_FILE_EXISTS;
break;
case TFTP_ERR_NOSUCHUSER:
- result = CURLE_TFTP_NOSUCHUSER;
+ code = CURLE_TFTP_NOSUCHUSER;
break;
case TFTP_ERR_TIMEOUT:
- result = CURLE_OPERATION_TIMEDOUT;
+ code = CURLE_OPERATION_TIMEDOUT;
break;
case TFTP_ERR_NORESPONSE:
- result = CURLE_COULDNT_CONNECT;
+ code = CURLE_COULDNT_CONNECT;
break;
default:
- result = CURLE_ABORTED_BY_CALLBACK;
+ code= CURLE_ABORTED_BY_CALLBACK;
break;
}
}
- else
- result = CURLE_OK;
+ else {
+ code = CURLE_OK;
+ }
- return result;
+ return(code);
}
/**********************************************************
@@ -885,21 +885,20 @@ static CURLcode tftp_translate_code(tftp_error_t error)
static CURLcode tftp_state_machine(tftp_state_data_t *state,
tftp_event_t event)
{
- CURLcode result = CURLE_OK;
+ CURLcode res = CURLE_OK;
struct SessionHandle *data = state->conn->data;
-
switch(state->state) {
case TFTP_STATE_START:
DEBUGF(infof(data, "TFTP_STATE_START\n"));
- result = tftp_send_first(state, event);
+ res = tftp_send_first(state, event);
break;
case TFTP_STATE_RX:
DEBUGF(infof(data, "TFTP_STATE_RX\n"));
- result = tftp_rx(state, event);
+ res = tftp_rx(state, event);
break;
case TFTP_STATE_TX:
DEBUGF(infof(data, "TFTP_STATE_TX\n"));
- result = tftp_tx(state, event);
+ res = tftp_tx(state, event);
break;
case TFTP_STATE_FIN:
infof(data, "%s\n", "TFTP finished");
@@ -907,11 +906,10 @@ static CURLcode tftp_state_machine(tftp_state_data_t *state,
default:
DEBUGF(infof(data, "STATE: %d\n", state->state));
failf(data, "%s", "Internal state machine error");
- result = CURLE_TFTP_ILLEGAL;
+ res = CURLE_TFTP_ILLEGAL;
break;
}
-
- return result;
+ return res;
}
/**********************************************************
@@ -945,6 +943,7 @@ static CURLcode tftp_disconnect(struct connectdata *conn, bool dead_connection)
**********************************************************/
static CURLcode tftp_connect(struct connectdata *conn, bool *done)
{
+ CURLcode code;
tftp_state_data_t *state;
int blksize, rc;
@@ -1018,8 +1017,8 @@ static CURLcode tftp_connect(struct connectdata *conn, bool *done)
Curl_pgrsStartNow(conn->data);
*done = TRUE;
-
- return CURLE_OK;
+ code = CURLE_OK;
+ return(code);
}
/**********************************************************
@@ -1032,7 +1031,7 @@ static CURLcode tftp_connect(struct connectdata *conn, bool *done)
static CURLcode tftp_done(struct connectdata *conn, CURLcode status,
bool premature)
{
- CURLcode result = CURLE_OK;
+ CURLcode code = CURLE_OK;
tftp_state_data_t *state = (tftp_state_data_t *)conn->proto.tftpc;
(void)status; /* unused */
@@ -1043,9 +1042,9 @@ static CURLcode tftp_done(struct connectdata *conn, CURLcode status,
/* If we have encountered an error */
if(state)
- result = tftp_translate_code(state->error);
+ code = tftp_translate_code(state->error);
- return result;
+ return code;
}
/**********************************************************
@@ -1210,7 +1209,7 @@ static CURLcode tftp_multi_statemach(struct connectdata *conn, bool *done)
else if(event != TFTP_EVENT_NONE) {
result = tftp_state_machine(state, event);
if(result)
- return result;
+ return(result);
*done = (state->state == TFTP_STATE_FIN) ? TRUE : FALSE;
if(*done)
/* Tell curl we're done */
@@ -1229,10 +1228,10 @@ static CURLcode tftp_multi_statemach(struct connectdata *conn, bool *done)
else if(rc != 0) {
result = tftp_receive_packet(conn);
if(result)
- return result;
+ return(result);
result = tftp_state_machine(state, state->event);
if(result)
- return result;
+ return(result);
*done = (state->state == TFTP_STATE_FIN) ? TRUE : FALSE;
if(*done)
/* Tell curl we're done */
diff --git a/lib/timeval.c b/lib/timeval.c
index 45731ac59..769eb3c49 100644
--- a/lib/timeval.c
+++ b/lib/timeval.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -118,7 +118,7 @@ struct timeval curlx_tvnow(void)
long curlx_tvdiff(struct timeval newer, struct timeval older)
{
return (newer.tv_sec-older.tv_sec)*1000+
- (long)(newer.tv_usec-older.tv_usec)/1000;
+ (newer.tv_usec-older.tv_usec)/1000;
}
/*
diff --git a/lib/transfer.c b/lib/transfer.c
index 718139b32..a7ab08ecf 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -75,14 +75,16 @@
#include "curl_ntlm.h"
#include "http_negotiate.h"
#include "share.h"
+#include "curl_memory.h"
#include "select.h"
#include "multiif.h"
#include "connect.h"
#include "non-ascii.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/*
@@ -115,8 +117,8 @@ CURLcode Curl_fillreadbuffer(struct connectdata *conn, int bytes, int *nreadp)
/* this function returns a size_t, so we typecast to int to prevent warnings
with picky compilers */
- nread = (int)data->set.fread_func(data->req.upload_fromhere, 1,
- buffersize, data->set.in);
+ nread = (int)conn->fread_func(data->req.upload_fromhere, 1,
+ buffersize, conn->fread_in);
if(nread == CURL_READFUNC_ABORT) {
failf(data, "operation aborted by callback");
@@ -214,7 +216,7 @@ CURLcode Curl_fillreadbuffer(struct connectdata *conn, int bytes, int *nreadp)
result = Curl_convert_to_network(data, data->req.upload_fromhere, length);
/* Curl_convert_to_network calls failf if unsuccessful */
if(result)
- return result;
+ return(result);
#endif /* CURL_DOES_CONVERSIONS */
if((nread - hexlen) == 0)
@@ -317,7 +319,8 @@ static int data_pending(const struct connectdata *conn)
TRUE. The thing is if we read everything, then http2_recv won't
be called and we cannot signal the HTTP/2 stream has closed. As
a workaround, we return nonzero here to call http2_recv. */
- ((conn->handler->protocol&PROTO_FAMILY_HTTP) && conn->httpversion == 20);
+ ((conn->handler->protocol&PROTO_FAMILY_HTTP) && conn->httpversion == 20 &&
+ conn->proto.httpc.closed);
#else
Curl_ssl_data_pending(conn, FIRSTSOCKET);
#endif
@@ -432,7 +435,6 @@ static CURLcode readwrite_data(struct SessionHandle *data,
else {
/* read nothing but since we wanted nothing we consider this an OK
situation to proceed from */
- DEBUGF(infof(data, "readwrite_data: we're done!\n"));
nread = 0;
}
@@ -494,7 +496,7 @@ static CURLcode readwrite_data(struct SessionHandle *data,
/* We've stopped dealing with input, get out of the do-while loop */
if(nread > 0) {
- if(Curl_pipeline_wanted(conn->data->multi, CURLPIPE_HTTP1)) {
+ if(Curl_multi_pipeline_enabled(conn->data->multi)) {
infof(data,
"Rewinding stream by : %zd"
" bytes on url %s (zero-length body)\n",
@@ -639,7 +641,7 @@ static CURLcode readwrite_data(struct SessionHandle *data,
if(dataleft != 0) {
infof(conn->data, "Leftovers after chunking: %zu bytes\n",
dataleft);
- if(Curl_pipeline_wanted(conn->data->multi, CURLPIPE_HTTP1)) {
+ if(Curl_multi_pipeline_enabled(conn->data->multi)) {
/* only attempt the rewind if we truly are pipelining */
infof(conn->data, "Rewinding %zu bytes\n",dataleft);
read_rewind(conn, dataleft);
@@ -662,7 +664,7 @@ static CURLcode readwrite_data(struct SessionHandle *data,
excess = (size_t)(k->bytecount + nread - k->maxdownload);
if(excess > 0 && !k->ignorebody) {
- if(Curl_pipeline_wanted(conn->data->multi, CURLPIPE_HTTP1)) {
+ if(Curl_multi_pipeline_enabled(conn->data->multi)) {
/* The 'excess' amount below can't be more than BUFSIZE which
always will fit in a size_t */
infof(data,
@@ -756,6 +758,7 @@ static CURLcode readwrite_data(struct SessionHandle *data,
result = Curl_unencode_gzip_write(conn, k, nread);
break;
+ case COMPRESS:
default:
failf (data, "Unrecognized content encoding type. "
"libcurl understands `identity', `deflate' and `gzip' "
@@ -827,6 +830,13 @@ static CURLcode readwrite_upload(struct SessionHandle *data,
*didwhat |= KEEP_SEND;
+ /*
+ * We loop here to do the READ and SEND loop until we run out of
+ * data to send or until we get EWOULDBLOCK back
+ *
+ * FIXME: above comment is misleading. Currently no looping is
+ * actually done in do-while loop below.
+ */
do {
/* only read more data if there's no upload data already
@@ -1012,9 +1022,9 @@ static CURLcode readwrite_upload(struct SessionHandle *data,
* be read and written to/from the connection.
*/
CURLcode Curl_readwrite(struct connectdata *conn,
- struct SessionHandle *data,
bool *done)
{
+ struct SessionHandle *data = conn->data;
struct SingleRequest *k = &data->req;
CURLcode result;
int didwhat=0;
@@ -1038,11 +1048,6 @@ CURLcode Curl_readwrite(struct connectdata *conn,
else
fd_write = CURL_SOCKET_BAD;
- if(conn->data->state.drain) {
- select_res |= CURL_CSELECT_IN;
- DEBUGF(infof(data, "Curl_readwrite: forcibly told to drain data\n"));
- }
-
if(!select_res) /* Call for select()/poll() only, if read/write/error
status is not known. */
select_res = Curl_socket_ready(fd_read, fd_write, 0);
@@ -1267,7 +1272,7 @@ long Curl_sleep_time(curl_off_t rate_bps, curl_off_t cur_rate_bps,
* the next packet at the adjusted rate. We should wait
* longer when using larger packets, for instance.
*/
- rv = ((curl_off_t)(pkt_size * 1000) / rate_bps);
+ rv = ((curl_off_t)((pkt_size * 8) * 1000) / rate_bps);
/* Catch rounding errors and always slow down at least 1ms if
* we are running too fast.
@@ -1314,11 +1319,6 @@ CURLcode Curl_pretransfer(struct SessionHandle *data)
Curl_safefree(data->info.wouldredirect);
data->info.wouldredirect = NULL;
- if(data->set.httpreq == HTTPREQ_PUT)
- data->state.infilesize = data->set.filesize;
- else
- data->state.infilesize = data->set.postfieldsize;
-
/* If there is a list of cookie files to read, do it now! */
if(data->change.cookielist)
Curl_cookie_loadfiles(data);
@@ -1342,7 +1342,6 @@ CURLcode Curl_pretransfer(struct SessionHandle *data)
#endif
Curl_initinfo(data); /* reset session-specific information "variables" */
- Curl_pgrsResetTimesSizes(data);
Curl_pgrsStartNow(data);
if(data->set.timeout)
@@ -1634,7 +1633,7 @@ CURLcode Curl_follow(struct SessionHandle *data,
if(type == FOLLOW_REDIR) {
if((data->set.maxredirs != -1) &&
(data->set.followlocation >= data->set.maxredirs)) {
- failf(data, "Maximum (%ld) redirects followed", data->set.maxredirs);
+ failf(data,"Maximum (%ld) redirects followed", data->set.maxredirs);
return CURLE_TOO_MANY_REDIRECTS;
}
diff --git a/lib/transfer.h b/lib/transfer.h
index 316aeaebc..ad4a3acd6 100644
--- a/lib/transfer.h
+++ b/lib/transfer.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -40,8 +40,7 @@ CURLcode Curl_follow(struct SessionHandle *data, char *newurl,
followtype type);
-CURLcode Curl_readwrite(struct connectdata *conn,
- struct SessionHandle *data, bool *done);
+CURLcode Curl_readwrite(struct connectdata *conn, bool *done);
int Curl_single_getsock(const struct connectdata *conn,
curl_socket_t *socks,
int numsocks);
diff --git a/lib/url.c b/lib/url.c
index 406c1f02c..d3bb5e011 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -124,12 +124,16 @@ int curl_win32_idn_to_ascii(const char *in, char **out);
#include "curl_rtmp.h"
#include "gopher.h"
#include "http_proxy.h"
+#include "bundles.h"
#include "conncache.h"
#include "multihandle.h"
#include "pipeline.h"
#include "dotdot.h"
#include "strdup.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -142,6 +146,7 @@ find_oldest_idle_connection_in_bundle(struct SessionHandle *data,
struct connectbundle *bundle);
static void conn_free(struct connectdata *conn);
static void signalPipeClose(struct curl_llist *pipeline, bool pipe_broke);
+static CURLcode do_init(struct connectdata *conn);
static CURLcode parse_url_login(struct SessionHandle *data,
struct connectdata *conn,
char **userptr, char **passwdptr,
@@ -446,8 +451,10 @@ CURLcode Curl_close(struct SessionHandle *data)
Curl_ssl_free_certinfo(data);
/* Cleanup possible redirect junk */
- free(data->req.newurl);
- data->req.newurl = NULL;
+ if(data->req.newurl) {
+ free(data->req.newurl);
+ data->req.newurl = NULL;
+ }
if(data->change.referer_alloc) {
Curl_safefree(data->change.referer);
@@ -574,30 +581,13 @@ CURLcode Curl_init_userdefined(struct UserDefined *set)
(char *) CURL_DEFAULT_SOCKS5_GSSAPI_SERVICE);
if(result)
return result;
-
- /* set default negotiate proxy service name */
- result = setstropt(&set->str[STRING_PROXY_SERVICE_NAME],
- (char *) CURL_DEFAULT_PROXY_SERVICE_NAME);
- if(result)
- return result;
-
- /* set default negotiate service name */
- result = setstropt(&set->str[STRING_SERVICE_NAME],
- (char *) CURL_DEFAULT_SERVICE_NAME);
- if(result)
- return result;
#endif
/* This is our preferred CA cert bundle/path since install time */
#if defined(CURL_CA_BUNDLE)
result = setstropt(&set->str[STRING_SSL_CAFILE], (char *) CURL_CA_BUNDLE);
- if(result)
- return result;
-#endif
-#if defined(CURL_CA_PATH)
+#elif defined(CURL_CA_PATH)
result = setstropt(&set->str[STRING_SSL_CAPATH], (char *) CURL_CA_PATH);
- if(result)
- return result;
#endif
set->wildcardmatch = FALSE;
@@ -615,7 +605,6 @@ CURLcode Curl_init_userdefined(struct UserDefined *set)
set->ssl_enable_alpn = TRUE;
set->expect_100_timeout = 1000L; /* Wait for a second by default. */
- set->sep_headers = TRUE; /* separated header lists by default */
return result;
}
@@ -677,7 +666,8 @@ CURLcode Curl_open(struct SessionHandle **curl)
if(result) {
Curl_resolver_cleanup(data->state.resolver);
- free(data->state.headerbuff);
+ if(data->state.headerbuff)
+ free(data->state.headerbuff);
Curl_freeset(data);
free(data);
data = NULL;
@@ -903,11 +893,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
* Set explicit SSL version to try to connect with, as some SSL
* implementations are lame.
*/
-#ifdef USE_SSL
data->set.ssl.version = va_arg(param, long);
-#else
- result = CURLE_UNKNOWN_OPTION;
-#endif
break;
#ifndef CURL_DISABLE_HTTP
@@ -1250,7 +1236,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
argptr = strdup(argptr);
if(!argptr || !data->cookies) {
result = CURLE_OUT_OF_MEMORY;
- free(argptr);
+ Curl_safefree(argptr);
}
else {
Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
@@ -1483,29 +1469,12 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
va_arg(param, char *));
break;
- case CURLOPT_PROXY_SERVICE_NAME:
- /*
- * Set negotiate proxy service name
- */
- result = setstropt(&data->set.str[STRING_PROXY_SERVICE_NAME],
- va_arg(param, char *));
- break;
-
case CURLOPT_SOCKS5_GSSAPI_NEC:
/*
* set flag for nec socks5 support
*/
data->set.socks5_gssapi_nec = (0 != va_arg(param, long))?TRUE:FALSE;
break;
-
- case CURLOPT_SERVICE_NAME:
- /*
- * Set negotiate service identity
- */
- result = setstropt(&data->set.str[STRING_SERVICE_NAME],
- va_arg(param, char *));
- break;
-
#endif
case CURLOPT_HEADERDATA:
@@ -2028,17 +1997,6 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
data->set.ssl.verifyhost = (0 != arg)?TRUE:FALSE;
break;
- case CURLOPT_SSL_VERIFYSTATUS:
- /*
- * Enable certificate status verifying.
- */
- if(!Curl_ssl_cert_status_request()) {
- result = CURLE_NOT_BUILT_IN;
- break;
- }
-
- data->set.ssl.verifystatus = (0 != va_arg(param, long))?TRUE:FALSE;
- break;
case CURLOPT_SSL_CTX_FUNCTION:
#ifdef have_curlssl_ssl_ctx
/*
@@ -2059,17 +2017,6 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
result = CURLE_NOT_BUILT_IN;
#endif
break;
- case CURLOPT_SSL_FALSESTART:
- /*
- * Enable TLS false start.
- */
- if(!Curl_ssl_false_start()) {
- result = CURLE_NOT_BUILT_IN;
- break;
- }
-
- data->set.ssl.falsestart = (0 != va_arg(param, long))?TRUE:FALSE;
- break;
case CURLOPT_CERTINFO:
#ifdef have_curlssl_certinfo
data->set.ssl.certinfo = (0 != va_arg(param, long))?TRUE:FALSE;
@@ -2185,15 +2132,16 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
data->share->dirty++;
- if(data->share->specifier & (1<< CURL_LOCK_DATA_DNS)) {
+ if(data->share->hostcache) {
/* use shared host cache */
- data->dns.hostcache = &data->share->hostcache;
+ data->dns.hostcache = data->share->hostcache;
data->dns.hostcachetype = HCACHE_SHARED;
}
#if !defined(CURL_DISABLE_HTTP) && !defined(CURL_DISABLE_COOKIES)
if(data->share->cookies) {
/* use shared cookie list, first free own one if any */
- Curl_cookie_cleanup(data->cookies);
+ if(data->cookies)
+ Curl_cookie_cleanup(data->cookies);
/* enable cookies since we now use a share that uses cookies! */
data->cookies = data->share->cookies;
}
@@ -2234,8 +2182,7 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
case CURLOPT_SSL_OPTIONS:
arg = va_arg(param, long);
- data->set.ssl_enable_beast = !!(arg & CURLSSLOPT_ALLOW_BEAST);
- data->set.ssl_no_revoke = !!(arg & CURLSSLOPT_NO_REVOKE);
+ data->set.ssl_enable_beast = arg&CURLSSLOPT_ALLOW_BEAST?TRUE:FALSE;
break;
#endif
@@ -2646,12 +2593,6 @@ CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
break;
#endif
- case CURLOPT_PATH_AS_IS:
- data->set.path_as_is = (0 != va_arg(param, long))?TRUE:FALSE;
- break;
- case CURLOPT_PIPEWAIT:
- data->set.pipewait = (0 != va_arg(param, long))?TRUE:FALSE;
- break;
default:
/* unknown tag and its companion, just ignore: */
result = CURLE_UNKNOWN_OPTION;
@@ -2777,15 +2718,16 @@ CURLcode Curl_disconnect(struct connectdata *conn, bool dead_connection)
free(conn->host.encalloc); /* encoded host name buffer, must be freed with
idn_free() since this was allocated by
curl_win32_idn_to_ascii */
- free(conn->proxy.encalloc); /* encoded proxy name buffer, must be freed
- with idn_free() since this was allocated by
- curl_win32_idn_to_ascii */
+ if(conn->proxy.encalloc)
+ free(conn->proxy.encalloc); /* encoded proxy name buffer, must be freed
+ with idn_free() since this was allocated by
+ curl_win32_idn_to_ascii */
#endif
Curl_ssl_close(conn, FIRSTSOCKET);
/* Indicate to all handles on the pipe that we're dead */
- if(Curl_pipeline_wanted(data->multi, CURLPIPE_ANY)) {
+ if(Curl_multi_pipeline_enabled(data->multi)) {
signalPipeClose(conn->send_pipe, TRUE);
signalPipeClose(conn->recv_pipe, TRUE);
}
@@ -2813,31 +2755,32 @@ static bool SocketIsDead(curl_socket_t sock)
return ret_val;
}
-/*
- * IsPipeliningPossible() returns TRUE if the options set would allow
- * pipelining/multiplexing and the connection is using a HTTP protocol.
- */
static bool IsPipeliningPossible(const struct SessionHandle *handle,
const struct connectdata *conn)
{
- /* If a HTTP protocol and pipelining is enabled */
- if(conn->handler->protocol & PROTO_FAMILY_HTTP) {
-
- if(Curl_pipeline_wanted(handle->multi, CURLPIPE_HTTP1) &&
- (handle->set.httpversion != CURL_HTTP_VERSION_1_0) &&
- (handle->set.httpreq == HTTPREQ_GET ||
- handle->set.httpreq == HTTPREQ_HEAD))
- /* didn't ask for HTTP/1.0 and a GET or HEAD */
- return TRUE;
+ if((conn->handler->protocol & PROTO_FAMILY_HTTP) &&
+ Curl_multi_pipeline_enabled(handle->multi) &&
+ (handle->set.httpreq == HTTPREQ_GET ||
+ handle->set.httpreq == HTTPREQ_HEAD) &&
+ handle->set.httpversion != CURL_HTTP_VERSION_1_0)
+ return TRUE;
- if(Curl_pipeline_wanted(handle->multi, CURLPIPE_MULTIPLEX) &&
- (handle->set.httpversion == CURL_HTTP_VERSION_2_0))
- /* allows HTTP/2 */
- return TRUE;
- }
return FALSE;
}
+bool Curl_isPipeliningEnabled(const struct SessionHandle *handle)
+{
+ return Curl_multi_pipeline_enabled(handle->multi);
+}
+
+CURLcode Curl_addHandleToPipeline(struct SessionHandle *data,
+ struct curl_llist *pipeline)
+{
+ if(!Curl_llist_insert_next(pipeline, pipeline->tail, data))
+ return CURLE_OUT_OF_MEMORY;
+ return CURLE_OK;
+}
+
int Curl_removeHandleFromPipeline(struct SessionHandle *handle,
struct curl_llist *pipeline)
{
@@ -2885,14 +2828,15 @@ void Curl_getoff_all_pipelines(struct SessionHandle *data,
struct connectdata *conn)
{
bool recv_head = (conn->readchannel_inuse &&
- Curl_recvpipe_head(data, conn));
+ (gethandleathead(conn->recv_pipe) == data)) ? TRUE : FALSE;
+
bool send_head = (conn->writechannel_inuse &&
- Curl_sendpipe_head(data, conn));
+ (gethandleathead(conn->send_pipe) == data)) ? TRUE : FALSE;
if(Curl_removeHandleFromPipeline(data, conn->recv_pipe) && recv_head)
- Curl_pipeline_leave_read(conn);
+ conn->readchannel_inuse = FALSE;
if(Curl_removeHandleFromPipeline(data, conn->send_pipe) && send_head)
- Curl_pipeline_leave_write(conn);
+ conn->writechannel_inuse = FALSE;
}
static void signalPipeClose(struct curl_llist *pipeline, bool pipe_broke)
@@ -2944,7 +2888,7 @@ find_oldest_idle_connection(struct SessionHandle *data)
now = Curl_tvnow();
- Curl_hash_start_iterate(&bc->hash, &iter);
+ Curl_hash_start_iterate(bc->hash, &iter);
he = Curl_hash_next_element(&iter);
while(he) {
@@ -3078,13 +3022,6 @@ static void prune_dead_connections(struct SessionHandle *data)
}
}
-
-static size_t max_pipeline_length(struct Curl_multi *multi)
-{
- return multi ? multi->max_pipeline_length : 0;
-}
-
-
/*
* Given one filled in connection struct (named needle), this function should
* detect if there already is one that has all the significant details
@@ -3101,21 +3038,17 @@ static bool
ConnectionExists(struct SessionHandle *data,
struct connectdata *needle,
struct connectdata **usethis,
- bool *force_reuse,
- bool *waitpipe)
+ bool *force_reuse)
{
struct connectdata *check;
struct connectdata *chosen = 0;
bool canPipeline = IsPipeliningPossible(data, needle);
-#ifdef USE_NTLM
bool wantNTLMhttp = ((data->state.authhost.want & CURLAUTH_NTLM) ||
(data->state.authhost.want & CURLAUTH_NTLM_WB)) &&
(needle->handler->protocol & PROTO_FAMILY_HTTP) ? TRUE : FALSE;
-#endif
struct connectbundle *bundle;
*force_reuse = FALSE;
- *waitpipe = FALSE;
/* We can't pipe if the site is blacklisted */
if(canPipeline && Curl_pipeline_site_blacklisted(data, needle)) {
@@ -3124,11 +3057,10 @@ ConnectionExists(struct SessionHandle *data,
/* Look up the bundle with all the connections to this
particular host */
- bundle = Curl_conncache_find_bundle(needle, data->state.conn_cache);
+ bundle = Curl_conncache_find_bundle(data->state.conn_cache,
+ needle->host.name);
if(bundle) {
- /* Max pipe length is zero (unlimited) for multiplexed connections */
- size_t max_pipe_len = (bundle->multiuse != BUNDLE_MULTIPLEX)?
- max_pipeline_length(data->multi):0;
+ size_t max_pipe_len = Curl_multi_max_pipeline_length(data->multi);
size_t best_pipe_len = max_pipe_len;
struct curl_llist_element *curr;
@@ -3136,17 +3068,9 @@ ConnectionExists(struct SessionHandle *data,
needle->host.name, (void *)bundle);
/* We can't pipe if we don't know anything about the server */
- if(canPipeline) {
- if(bundle->multiuse <= BUNDLE_UNKNOWN) {
- if((bundle->multiuse == BUNDLE_UNKNOWN) && data->set.pipewait) {
- infof(data, "Server doesn't support multi-use yet, wait\n");
- *waitpipe = TRUE;
- return FALSE; /* no re-use */
- }
-
- infof(data, "Server doesn't support multi-use (yet)\n");
- canPipeline = FALSE;
- }
+ if(canPipeline && !bundle->server_supports_pipelining) {
+ infof(data, "Server doesn't support pipelining\n");
+ canPipeline = FALSE;
}
curr = bundle->conn_list->head;
@@ -3170,19 +3094,16 @@ ConnectionExists(struct SessionHandle *data,
pipeLen = check->send_pipe->size + check->recv_pipe->size;
if(canPipeline) {
-
- if(!check->bits.multiplex) {
- /* If not multiplexing, make sure the pipe has only GET requests */
- struct SessionHandle* sh = gethandleathead(check->send_pipe);
- struct SessionHandle* rh = gethandleathead(check->recv_pipe);
- if(sh) {
- if(!IsPipeliningPossible(sh, check))
- continue;
- }
- else if(rh) {
- if(!IsPipeliningPossible(rh, check))
- continue;
- }
+ /* Make sure the pipe has only GET requests */
+ struct SessionHandle* sh = gethandleathead(check->send_pipe);
+ struct SessionHandle* rh = gethandleathead(check->recv_pipe);
+ if(sh) {
+ if(!IsPipeliningPossible(sh, check))
+ continue;
+ }
+ else if(rh) {
+ if(!IsPipeliningPossible(rh, check))
+ continue;
}
}
else {
@@ -3262,11 +3183,8 @@ ConnectionExists(struct SessionHandle *data,
continue;
}
- if((!(needle->handler->flags & PROTOPT_CREDSPERREQUEST))
-#ifdef USE_NTLM
- || (wantNTLMhttp || check->ntlm.state != NTLMSTATE_NONE)
-#endif
- ) {
+ if((!(needle->handler->flags & PROTOPT_CREDSPERREQUEST)) ||
+ wantNTLMhttp) {
/* This protocol requires credentials per connection or is HTTP+NTLM,
so verify that we're using the same name and password as well */
if(!strequal(needle->user, check->user) ||
@@ -3361,42 +3279,19 @@ ConnectionExists(struct SessionHandle *data,
}
/* We can't use the connection if the pipe is full */
- if(max_pipe_len && (pipeLen >= max_pipe_len)) {
- infof(data, "Pipe is full, skip (%zu)\n", pipeLen);
+ if(pipeLen >= max_pipe_len)
continue;
- }
-#ifdef USE_NGHTTP2
- /* If multiplexed, make sure we don't go over concurrency limit */
- if(check->bits.multiplex) {
- /* Multiplexed connections can only be HTTP/2 for now */
- struct http_conn *httpc = &check->proto.httpc;
- if(pipeLen >= httpc->settings.max_concurrent_streams) {
- infof(data, "MAX_CONCURRENT_STREAMS reached, skip (%zu)\n",
- pipeLen);
- continue;
- }
- }
-#endif
+
/* We can't use the connection if the pipe is penalized */
- if(Curl_pipeline_penalized(data, check)) {
- infof(data, "Penalized, skip\n");
+ if(Curl_pipeline_penalized(data, check))
continue;
- }
- if(max_pipe_len) {
- if(pipeLen < best_pipe_len) {
- /* This connection has a shorter pipe so far. We'll pick this
- and continue searching */
- chosen = check;
- best_pipe_len = pipeLen;
- continue;
- }
- }
- else {
- /* When not pipelining (== multiplexed), we have a match here! */
+ if(pipeLen < best_pipe_len) {
+ /* This connection has a shorter pipe so far. We'll pick this
+ and continue searching */
chosen = check;
- infof(data, "Multiplexed connection found!\n");
- break;
+ best_pipe_len = pipeLen;
+ continue;
}
}
else {
@@ -3448,6 +3343,20 @@ ConnectionDone(struct SessionHandle *data, struct connectdata *conn)
return (conn_candidate == conn) ? FALSE : TRUE;
}
+/*
+ * The given input connection struct pointer is to be stored in the connection
+ * cache. If the cache is already full, least interesting existing connection
+ * (if any) gets closed.
+ *
+ * The given connection should be unique. That must've been checked prior to
+ * this call.
+ */
+static CURLcode ConnectionStore(struct SessionHandle *data,
+ struct connectdata *conn)
+{
+ return Curl_conncache_add_conn(data->state.conn_cache, conn);
+}
+
/* after a TCP connection to the proxy has been verified, this function does
the next magic step.
@@ -3693,7 +3602,7 @@ static void fix_hostname(struct SessionHandle *data,
host->dispname = host->name;
len = strlen(host->name);
- if(len && (host->name[len-1] == '.'))
+ if(host->name[len-1] == '.')
/* strip off a single trailing dot if present, primarily for SNI but
there's no use for it */
host->name[len-1]=0;
@@ -3710,7 +3619,7 @@ static void fix_hostname(struct SessionHandle *data,
stringprep_locale_charset ());
if(rc != IDNA_SUCCESS)
infof(data, "Failed to convert %s to ACE; %s\n",
- host->name, Curl_idn_strerror(conn, rc));
+ host->name, Curl_idn_strerror(conn,rc));
else {
/* tld_check_name() displays a warning if the host name contains
"illegal" characters for this TLD */
@@ -3823,9 +3732,9 @@ static struct connectdata *allocate_conn(struct SessionHandle *data)
conn->response_header = NULL;
#endif
- if(Curl_pipeline_wanted(data->multi, CURLPIPE_HTTP1) &&
- !conn->master_buffer) {
- /* Allocate master_buffer to be used for HTTP/1 pipelining */
+ if(Curl_multi_pipeline_enabled(data->multi) &&
+ !conn->master_buffer) {
+ /* Allocate master_buffer to be used for pipelining */
conn->master_buffer = calloc(BUFSIZE, sizeof (char));
if(!conn->master_buffer)
goto error;
@@ -3864,9 +3773,9 @@ static struct connectdata *allocate_conn(struct SessionHandle *data)
conn->send_pipe = NULL;
conn->recv_pipe = NULL;
- free(conn->master_buffer);
- free(conn->localdev);
- free(conn);
+ Curl_safefree(conn->master_buffer);
+ Curl_safefree(conn->localdev);
+ Curl_safefree(conn);
return NULL;
}
@@ -4109,7 +4018,7 @@ static CURLcode parseurlandfillconn(struct SessionHandle *data,
path[0] = '/';
rebuild_url = TRUE;
}
- else if(!data->set.path_as_is) {
+ else {
/* sanitise paths and remove ../ and ./ sequences according to RFC3986 */
char *newp = Curl_dedotdotify(path);
if(!newp)
@@ -4504,7 +4413,8 @@ static char *detect_proxy(struct connectdata *conn)
}
} /* if(!check_noproxy(conn->host.name, no_proxy)) - it wasn't specified
non-proxy */
- free(no_proxy);
+ if(no_proxy)
+ free(no_proxy);
#else /* !CURL_DISABLE_HTTP */
@@ -4518,6 +4428,7 @@ static char *detect_proxy(struct connectdata *conn)
* If this is supposed to use a proxy, we need to figure out the proxy
* host name, so that we can re-use an existing connection
* that may exist registered to the same proxy host.
+ * proxy will be freed before this function returns.
*/
static CURLcode parse_proxy(struct SessionHandle *data,
struct connectdata *conn, char *proxy)
@@ -4591,8 +4502,8 @@ static CURLcode parse_proxy(struct SessionHandle *data,
}
}
- free(proxyuser);
- free(proxypasswd);
+ Curl_safefree(proxyuser);
+ Curl_safefree(proxypasswd);
if(result)
return result;
@@ -4804,9 +4715,9 @@ static CURLcode parse_url_login(struct SessionHandle *data,
out:
- free(userp);
- free(passwdp);
- free(optionsp);
+ Curl_safefree(userp);
+ Curl_safefree(passwdp);
+ Curl_safefree(optionsp);
return result;
}
@@ -4894,7 +4805,7 @@ static CURLcode parse_login_details(const char *login, const size_t len,
if(!result && passwdp && plen) {
pbuf = malloc(plen + 1);
if(!pbuf) {
- free(ubuf);
+ Curl_safefree(ubuf);
result = CURLE_OUT_OF_MEMORY;
}
}
@@ -4903,8 +4814,8 @@ static CURLcode parse_login_details(const char *login, const size_t len,
if(!result && optionsp && olen) {
obuf = malloc(olen + 1);
if(!obuf) {
- free(pbuf);
- free(ubuf);
+ Curl_safefree(pbuf);
+ Curl_safefree(ubuf);
result = CURLE_OUT_OF_MEMORY;
}
}
@@ -5266,7 +5177,8 @@ static CURLcode resolve_server(struct SessionHandle *data,
static void reuse_conn(struct connectdata *old_conn,
struct connectdata *conn)
{
- free(old_conn->proxy.rawalloc);
+ if(old_conn->proxy.rawalloc)
+ free(old_conn->proxy.rawalloc);
/* free the SSL config struct from this connection struct as this was
allocated in vain and is targeted for destruction */
@@ -5354,9 +5266,8 @@ static CURLcode create_conn(struct SessionHandle *data,
bool reuse;
char *proxy = NULL;
bool prot_missing = FALSE;
- bool connections_available = TRUE;
+ bool no_connections_available = FALSE;
bool force_reuse = FALSE;
- bool waitpipe = FALSE;
size_t max_host_connections = Curl_multi_max_host_connections(data->multi);
size_t max_total_connections = Curl_multi_max_total_connections(data->multi);
@@ -5516,8 +5427,10 @@ static CURLcode create_conn(struct SessionHandle *data,
if(data->set.str[STRING_NOPROXY] &&
check_noproxy(conn->host.name, data->set.str[STRING_NOPROXY])) {
- free(proxy); /* proxy is in exception list */
- proxy = NULL;
+ if(proxy) {
+ free(proxy); /* proxy is in exception list */
+ proxy = NULL;
+ }
}
else if(!proxy)
proxy = detect_proxy(conn);
@@ -5543,8 +5456,7 @@ static CURLcode create_conn(struct SessionHandle *data,
if(proxy) {
result = parse_proxy(data, conn, proxy);
- free(proxy); /* parse_proxy copies the proxy string */
- proxy = NULL;
+ Curl_safefree(proxy); /* parse_proxy copies the proxy string */
if(result)
goto out;
@@ -5565,10 +5477,8 @@ static CURLcode create_conn(struct SessionHandle *data,
conn->bits.httpproxy = TRUE;
#endif
}
- else {
+ else
conn->bits.httpproxy = FALSE; /* not a HTTP proxy */
- conn->bits.tunnel_proxy = FALSE; /* no tunneling if not HTTP */
- }
conn->bits.proxy = TRUE;
}
else {
@@ -5633,7 +5543,7 @@ static CURLcode create_conn(struct SessionHandle *data,
conn->data = data;
conn->bits.tcpconnect[FIRSTSOCKET] = TRUE; /* we are "connected */
- Curl_conncache_add_conn(data->state.conn_cache, conn);
+ ConnectionStore(data, conn);
/*
* Setup whatever necessary for a resumed transfer
@@ -5651,7 +5561,7 @@ static CURLcode create_conn(struct SessionHandle *data,
}
/* since we skip do_init() */
- Curl_init_do(data, conn);
+ do_init(conn);
goto out;
}
@@ -5698,7 +5608,7 @@ static CURLcode create_conn(struct SessionHandle *data,
if(data->set.reuse_fresh && !data->state.this_is_a_follow)
reuse = FALSE;
else
- reuse = ConnectionExists(data, conn, &conn_temp, &force_reuse, &waitpipe);
+ reuse = ConnectionExists(data, conn, &conn_temp, &force_reuse);
/* If we found a reusable connection, we may still want to
open a new connection if we are pipelining. */
@@ -5735,24 +5645,18 @@ static CURLcode create_conn(struct SessionHandle *data,
/* set a pointer to the hostname we display */
fix_hostname(data, conn, &conn->host);
- infof(data, "Re-using existing connection! (#%ld) with %s %s\n",
+ infof(data, "Re-using existing connection! (#%ld) with host %s\n",
conn->connection_id,
- conn->bits.proxy?"proxy":"host",
conn->proxy.name?conn->proxy.dispname:conn->host.dispname);
}
else {
/* We have decided that we want a new connection. However, we may not
be able to do that if we have reached the limit of how many
connections we are allowed to open. */
- struct connectbundle *bundle = NULL;
-
- if(waitpipe)
- /* There is a connection that *might* become usable for pipelining
- "soon", and we wait for that */
- connections_available = FALSE;
- else
- bundle = Curl_conncache_find_bundle(conn, data->state.conn_cache);
+ struct connectbundle *bundle;
+ bundle = Curl_conncache_find_bundle(data->state.conn_cache,
+ conn->host.name);
if(max_host_connections > 0 && bundle &&
(bundle->num_connections >= max_host_connections)) {
struct connectdata *conn_candidate;
@@ -5765,15 +5669,11 @@ static CURLcode create_conn(struct SessionHandle *data,
conn_candidate->data = data;
(void)Curl_disconnect(conn_candidate, /* dead_connection */ FALSE);
}
- else {
- infof(data, "No more connections allowed to host: %d\n",
- max_host_connections);
- connections_available = FALSE;
- }
+ else
+ no_connections_available = TRUE;
}
- if(connections_available &&
- (max_total_connections > 0) &&
+ if(max_total_connections > 0 &&
(data->state.conn_cache->num_connections >= max_total_connections)) {
struct connectdata *conn_candidate;
@@ -5785,13 +5685,12 @@ static CURLcode create_conn(struct SessionHandle *data,
conn_candidate->data = data;
(void)Curl_disconnect(conn_candidate, /* dead_connection */ FALSE);
}
- else {
- infof(data, "No connections available in cache\n");
- connections_available = FALSE;
- }
+ else
+ no_connections_available = TRUE;
}
- if(!connections_available) {
+
+ if(no_connections_available) {
infof(data, "No connections available.\n");
conn_free(conn);
@@ -5805,7 +5704,7 @@ static CURLcode create_conn(struct SessionHandle *data,
* This is a brand new connection, so let's store it in the connection
* cache of ours!
*/
- Curl_conncache_add_conn(data->state.conn_cache, conn);
+ ConnectionStore(data, conn);
}
#if defined(USE_NTLM)
@@ -5830,7 +5729,7 @@ static CURLcode create_conn(struct SessionHandle *data,
conn->inuse = TRUE;
/* Setup and init stuff before DO starts, in preparing for the transfer. */
- Curl_init_do(data, conn);
+ do_init(conn);
/*
* Setup whatever necessary for a resumed transfer
@@ -5845,6 +5744,8 @@ static CURLcode create_conn(struct SessionHandle *data,
* Inherit the proper values from the urldata struct AFTER we have arranged
* the persistent connection stuff
*/
+ conn->fread_func = data->set.fread_func;
+ conn->fread_in = data->set.in;
conn->seek_func = data->set.seek_func;
conn->seek_client = data->set.seek_client;
@@ -5855,10 +5756,10 @@ static CURLcode create_conn(struct SessionHandle *data,
out:
- free(options);
- free(passwd);
- free(user);
- free(proxy);
+ Curl_safefree(options);
+ Curl_safefree(passwd);
+ Curl_safefree(user);
+ Curl_safefree(proxy);
return result;
}
@@ -6002,19 +5903,37 @@ CURLcode Curl_done(struct connectdata **connp,
conn = *connp;
data = conn->data;
- DEBUGF(infof(data, "Curl_done\n"));
-
- if(data->state.done)
+ if(conn->bits.done)
/* Stop if Curl_done() has already been called */
return CURLE_OK;
Curl_getoff_all_pipelines(data, conn);
+ if((conn->send_pipe->size + conn->recv_pipe->size != 0 &&
+ !data->set.reuse_forbid &&
+ !conn->bits.close))
+ /* Stop if pipeline is not empty and we do not have to close
+ connection. */
+ return CURLE_OK;
+
+ conn->bits.done = TRUE; /* called just now! */
+
/* Cleanup possible redirect junk */
- free(data->req.newurl);
- data->req.newurl = NULL;
- free(data->req.location);
- data->req.location = NULL;
+ if(data->req.newurl) {
+ free(data->req.newurl);
+ data->req.newurl = NULL;
+ }
+ if(data->req.location) {
+ free(data->req.location);
+ data->req.location = NULL;
+ }
+
+ Curl_resolver_cancel(conn);
+
+ if(conn->dns_entry) {
+ Curl_resolv_unlock(data, conn->dns_entry); /* done with this */
+ conn->dns_entry = NULL;
+ }
switch(status) {
case CURLE_ABORTED_BY_CALLBACK:
@@ -6038,27 +5957,12 @@ CURLcode Curl_done(struct connectdata **connp,
if(!result && Curl_pgrsDone(conn))
result = CURLE_ABORTED_BY_CALLBACK;
- if((conn->send_pipe->size + conn->recv_pipe->size != 0 &&
- !data->set.reuse_forbid &&
- !conn->bits.close)) {
- /* Stop if pipeline is not empty and we do not have to close
- connection. */
- DEBUGF(infof(data, "Connection still in use, no more Curl_done now!\n"));
- return CURLE_OK;
- }
-
- data->state.done = TRUE; /* called just now! */
- Curl_resolver_cancel(conn);
-
- if(conn->dns_entry) {
- Curl_resolv_unlock(data, conn->dns_entry); /* done with this */
- conn->dns_entry = NULL;
- }
-
/* if the transfer was completed in a paused state there can be buffered
data left to write and then kill */
- free(data->state.tempwrite);
- data->state.tempwrite = NULL;
+ if(data->state.tempwrite) {
+ free(data->state.tempwrite);
+ data->state.tempwrite = NULL;
+ }
/* if data->set.reuse_forbid is TRUE, it means the libcurl client has
forced us to close this connection. This is ignored for requests taking
@@ -6112,24 +6016,20 @@ CURLcode Curl_done(struct connectdata **connp,
}
/*
- * Curl_init_do() inits the readwrite session. This is inited each time (in
- * the DO function before the protocol-specific DO functions are invoked) for
- * a transfer, sometimes multiple times on the same SessionHandle. Make sure
+ * do_init() inits the readwrite session. This is inited each time (in the DO
+ * function before the protocol-specific DO functions are invoked) for a
+ * transfer, sometimes multiple times on the same SessionHandle. Make sure
* nothing in here depends on stuff that are setup dynamically for the
* transfer.
- *
- * Allow this function to get called with 'conn' set to NULL.
*/
-CURLcode Curl_init_do(struct SessionHandle *data, struct connectdata *conn)
+static CURLcode do_init(struct connectdata *conn)
{
+ struct SessionHandle *data = conn->data;
struct SingleRequest *k = &data->req;
- if(conn)
- conn->bits.do_more = FALSE; /* by default there's no curl_do_more() to
- * use */
-
- data->state.done = FALSE; /* Curl_done() is not called yet */
+ conn->bits.done = FALSE; /* Curl_done() is not called yet */
+ conn->bits.do_more = FALSE; /* by default there's no curl_do_more() to use */
data->state.expect100header = FALSE;
if(data->set.opt_no_body)
diff --git a/lib/url.h b/lib/url.h
index f9667cbc3..cd46a92c3 100644
--- a/lib/url.h
+++ b/lib/url.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -27,7 +27,6 @@
* Prototypes for library-wide functions provided by url.c
*/
-CURLcode Curl_init_do(struct SessionHandle *data, struct connectdata *conn);
CURLcode Curl_open(struct SessionHandle **curl);
CURLcode Curl_init_userdefined(struct UserDefined *set);
CURLcode Curl_setopt(struct SessionHandle *data, CURLoption option,
@@ -70,9 +69,6 @@ void Curl_close_connections(struct SessionHandle *data);
#define CURL_DEFAULT_PROXY_PORT 1080 /* default proxy port unless specified */
#define CURL_DEFAULT_SOCKS5_GSSAPI_SERVICE "rcmd" /* default socks5 gssapi
service */
-#define CURL_DEFAULT_PROXY_SERVICE_NAME "HTTP" /* default negotiate proxy
- service */
-#define CURL_DEFAULT_SERVICE_NAME "HTTP" /* default negotiate service */
CURLcode Curl_connected_proxy(struct connectdata *conn, int sockindex);
diff --git a/lib/urldata.h b/lib/urldata.h
index b1c2056c5..5f774704a 100644
--- a/lib/urldata.h
+++ b/lib/urldata.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -82,12 +82,38 @@
#include "cookie.h"
#include "formdata.h"
+#ifdef USE_SSLEAY
#ifdef USE_OPENSSL
+#include <openssl/rsa.h>
+#include <openssl/crypto.h>
+#include <openssl/x509.h>
+#include <openssl/pem.h>
#include <openssl/ssl.h>
+#include <openssl/err.h>
#ifdef HAVE_OPENSSL_ENGINE_H
#include <openssl/engine.h>
#endif
+#ifdef HAVE_OPENSSL_PKCS12_H
+#include <openssl/pkcs12.h>
+#endif
+#else /* SSLeay-style includes */
+#include <rsa.h>
+#include <crypto.h>
+#include <x509.h>
+#include <pem.h>
+#include <ssl.h>
+#include <err.h>
+#ifdef HAVE_OPENSSL_ENGINE_H
+#include <engine.h>
+#endif
+#ifdef HAVE_OPENSSL_PKCS12_H
+#include <pkcs12.h>
+#endif
#endif /* USE_OPENSSL */
+#ifdef USE_GNUTLS
+#error Configuration error; cannot use GnuTLS *and* OpenSSL.
+#endif
+#endif /* USE_SSLEAY */
#ifdef USE_GNUTLS
#include <gnutls/gnutls.h>
@@ -120,7 +146,6 @@
#endif
#ifdef USE_AXTLS
-#include <axTLS/config.h>
#include <axTLS/ssl.h>
#undef malloc
#undef calloc
@@ -198,8 +223,6 @@
#define HEADERSIZE 256
#define CURLEASY_MAGIC_NUMBER 0xc0dedbadU
-#define GOOD_EASY_HANDLE(x) \
- ((x) && (((struct SessionHandle *)(x))->magic == CURLEASY_MAGIC_NUMBER))
/* Some convenience macros to get the larger/smaller value out of two given.
We prefix with CURL to prevent name collisions. */
@@ -265,13 +288,16 @@ struct ssl_connect_data {
current state of the connection. */
bool use;
ssl_connection_state state;
-#ifdef USE_OPENSSL
+#ifdef USE_NGHTTP2
+ bool asked_for_h2;
+#endif
+#ifdef USE_SSLEAY
/* these ones requires specific SSL-types */
SSL_CTX* ctx;
SSL* handle;
X509* server_cert;
ssl_connect_state connecting_state;
-#endif /* USE_OPENSSL */
+#endif /* USE_SSLEAY */
#ifdef USE_GNUTLS
gnutls_session_t session;
gnutls_certificate_credentials_t cred;
@@ -324,9 +350,6 @@ struct ssl_connect_data {
size_t encdata_offset, decdata_offset;
unsigned char *encdata_buffer, *decdata_buffer;
unsigned long req_flags, ret_flags;
- CURLcode recv_unrecoverable_err; /* schannel_recv had an unrecoverable err */
- bool recv_sspi_close_notify; /* true if connection closed by close_notify */
- bool recv_connection_closed; /* true if connection closed, regardless how */
#endif /* USE_SCHANNEL */
#ifdef USE_DARWINSSL
SSLContextRef ssl_ctx;
@@ -343,7 +366,6 @@ struct ssl_config_data {
bool verifypeer; /* set TRUE if this is desired */
bool verifyhost; /* set TRUE if CN/SAN must match hostname */
- bool verifystatus; /* set TRUE if certificate status must be checked */
char *CApath; /* certificate dir (doesn't work on windows) */
char *CAfile; /* certificate to verify peer against */
const char *CRLfile; /* CRL to check certificate revocation */
@@ -356,7 +378,6 @@ struct ssl_config_data {
void *fsslctxp; /* parameter for call back */
bool sessionid; /* cache session IDs or not */
bool certinfo; /* gather lots of certificate info */
- bool falsestart;
#ifdef USE_TLS_SRP
char *username; /* TLS username (for, e.g., SRP) */
@@ -521,6 +542,11 @@ struct ConnectBits {
requests */
bool netrc; /* name+password provided by netrc */
bool userpwd_in_url; /* name+password found in url */
+
+ bool done; /* set to FALSE when Curl_do() is called and set to TRUE
+ when Curl_done() is called, to prevent Curl_done() to
+ get invoked twice when the multi interface is
+ used. */
bool stream_was_rewound; /* Indicates that the stream was rewound after a
request read past the end of its response byte
boundary */
@@ -530,7 +556,6 @@ struct ConnectBits {
bool bound; /* set true if bind() has already been done on this socket/
connection */
bool type_set; /* type= was used in the URL */
- bool multiplex; /* connection is multiplexed */
};
struct hostname {
@@ -603,6 +628,12 @@ enum upgrade101 {
UPGR101_WORKING /* talking upgraded protocol */
};
+enum negotiatenpn {
+ NPN_INIT, /* default state */
+ NPN_HTTP1_1, /* HTTP/1.1 negotiated */
+ NPN_HTTP2 /* HTTP2 (draft-xx) negotiated */
+};
+
/*
* Request specific data in the easy handle (SessionHandle). Previously,
* these members were on the connectdata struct but since a conn struct may
@@ -660,6 +691,7 @@ struct SingleRequest {
#define IDENTITY 0 /* No encoding */
#define DEFLATE 1 /* zlib deflate [RFC 1950 & 1951] */
#define GZIP 2 /* gzip algorithm [RFC 1952] */
+#define COMPRESS 3 /* Not handled, added for completeness */
#ifdef HAVE_LIBZ
zlibInitState zlib_init; /* possible zlib init state;
@@ -992,6 +1024,10 @@ struct connectdata {
/*************** Request - specific items ************/
+ /* previously this was in the urldata struct */
+ curl_read_callback fread_func; /* function that reads the input */
+ void *fread_in; /* pointer to pass to the fread() above */
+
#if defined(USE_NTLM)
struct ntlmdata ntlm; /* NTLM differs from other authentication schemes
because it authenticates connections, not
@@ -1059,7 +1095,7 @@ struct connectdata {
} tunnel_state[2]; /* two separate ones to allow FTP */
struct connectbundle *bundle; /* The bundle we are member of */
- int negnpn; /* APLN or NPN TLS negotiated protocol, CURL_HTTP_VERSION* */
+ enum negotiatenpn negnpn;
};
/* The end of connectdata. */
@@ -1257,9 +1293,9 @@ struct UrlState {
void *resolver; /* resolver state, if it is used in the URL state -
ares_channel f.e. */
-#if defined(USE_OPENSSL) && defined(HAVE_OPENSSL_ENGINE_H)
+#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
ENGINE *engine;
-#endif /* USE_OPENSSL */
+#endif /* USE_SSLEAY */
struct timeval expiretime; /* set this with Curl_expire() only */
struct Curl_tree timenode; /* for the splay stuff */
struct curl_llist *timeoutlist; /* list of pending timeouts */
@@ -1305,13 +1341,6 @@ struct UrlState {
curl_off_t infilesize; /* size of file to upload, -1 means unknown.
Copied from set.filesize at start of operation */
-
- int drain; /* Increased when this stream has data to read, even if its
- socket not necessarily is readable. Decreased when
- checked. */
- bool done; /* set to FALSE when Curl_do() is called and set to TRUE when
- Curl_done() is called, to prevent Curl_done() to get invoked
- twice when the multi interface is used. */
};
@@ -1392,8 +1421,6 @@ enum dupstring {
#endif
#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
STRING_SOCKS5_GSSAPI_SERVICE, /* GSSAPI service name */
- STRING_PROXY_SERVICE_NAME, /* Proxy service name */
- STRING_SERVICE_NAME, /* Service name */
#endif
STRING_MAIL_FROM,
STRING_MAIL_AUTH,
@@ -1426,8 +1453,8 @@ struct UserDefined {
long proxyport; /* If non-zero, use this port number by default. If the
proxy string features a ":[port]" that one will override
this. */
- void *out; /* CURLOPT_WRITEDATA */
- void *in; /* CURLOPT_READDATA */
+ void *out; /* the fetched file goes here */
+ void *in; /* the uploaded file is read from here */
void *writeheader; /* write the header to this if non-NULL */
void *rtp_out; /* write RTP to this if non-NULL */
long use_port; /* which port to use (when not using default) */
@@ -1581,7 +1608,6 @@ struct UserDefined {
bool connect_only; /* make connection, let application use the socket */
bool ssl_enable_beast; /* especially allow this flaw for interoperability's
sake*/
- bool ssl_no_revoke; /* disable SSL certificate revocation checks */
long ssh_auth_types; /* allowed SSH auth types */
bool http_te_skip; /* pass the raw body data to the user, even when
transfer-encoded (chunked, compressed) */
@@ -1623,9 +1649,7 @@ struct UserDefined {
bool ssl_enable_npn; /* TLS NPN extension? */
bool ssl_enable_alpn; /* TLS ALPN extension? */
- bool path_as_is; /* allow dotdots? */
- bool pipewait; /* wait for pipe/multiplex status before starting a
- new connection */
+
long expect_100_timeout; /* in milliseconds */
};
diff --git a/lib/version.c b/lib/version.c
index 1727c5a7d..9ac922665 100644
--- a/lib/version.c
+++ b/lib/version.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -26,7 +26,9 @@
#include "urldata.h"
#include "vtls/vtls.h"
#include "http2.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use the internal *printf() functions */
+#include <curl/mprintf.h>
#ifdef USE_ARES
# if defined(CURL_STATICLIB) && !defined(CARES_STATICLIB) && \
diff --git a/lib/vtls/axtls.c b/lib/vtls/axtls.c
index 1038432b9..1b577b152 100644
--- a/lib/vtls/axtls.c
+++ b/lib/vtls/axtls.c
@@ -6,7 +6,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2010, DirecTV, Contact: Eric Hu, <ehu@directv.com>.
- * Copyright (C) 2010 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2010 - 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
@@ -29,7 +29,6 @@
#include "curl_setup.h"
#ifdef USE_AXTLS
-#include <axTLS/config.h>
#include <axTLS/ssl.h>
#include "axtls.h"
@@ -39,13 +38,13 @@
#include "parsedate.h"
#include "connect.h" /* for the connect timeout */
#include "select.h"
-#include "curl_printf.h"
-#include "hostcheck.h"
-#include <unistd.h>
-
-/* The last #include files should be: */
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
+#include <unistd.h>
+/* The last #include file should be: */
#include "memdebug.h"
+#include "hostcheck.h"
/* Global axTLS init, called from Curl_ssl_init() */
@@ -464,11 +463,9 @@ Curl_axtls_connect(struct connectdata *conn,
int sockindex)
{
- struct SessionHandle *data = conn->data;
CURLcode conn_step = connect_prep(conn, sockindex);
int ssl_fcn_return;
SSL *ssl = conn->ssl[sockindex].ssl;
- long timeout_ms;
if(conn_step != CURLE_OK) {
Curl_axtls_close(conn, sockindex);
@@ -477,23 +474,14 @@ Curl_axtls_connect(struct connectdata *conn,
/* Check to make sure handshake was ok. */
while(ssl_handshake_status(ssl) != SSL_OK) {
- /* check allowed time left */
- timeout_ms = Curl_timeleft(data, NULL, TRUE);
-
- if(timeout_ms < 0) {
- /* no need to continue if time already is up */
- failf(data, "SSL connection timeout");
- return CURLE_OPERATION_TIMEDOUT;
- }
-
ssl_fcn_return = ssl_read(ssl, NULL);
if(ssl_fcn_return < 0) {
Curl_axtls_close(conn, sockindex);
ssl_display_error(ssl_fcn_return); /* goes to stdout. */
return map_error_to_curl(ssl_fcn_return);
}
- /* TODO: avoid polling */
usleep(10000);
+ /* TODO: check for timeout as this could hang indefinitely otherwise */
}
infof (conn->data, "handshake completed successfully\n");
@@ -527,6 +515,12 @@ static ssize_t axtls_send(struct connectdata *conn,
return rc;
}
+void Curl_axtls_close_all(struct SessionHandle *data)
+{
+ (void)data;
+ infof(data, " Curl_axtls_close_all\n");
+}
+
void Curl_axtls_close(struct connectdata *conn, int sockindex)
{
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
@@ -683,7 +677,7 @@ int Curl_axtls_random(struct SessionHandle *data,
* race condition is that some global resources will leak. */
RNG_initialize();
}
- get_random((int)length, entropy);
+ get_random(length, entropy);
return 0;
}
diff --git a/lib/vtls/axtls.h b/lib/vtls/axtls.h
index 223ecb8c9..62b4ab0e6 100644
--- a/lib/vtls/axtls.h
+++ b/lib/vtls/axtls.h
@@ -8,7 +8,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2010, DirecTV, Contact: Eric Hu <ehu@directv.com>
- * Copyright (C) 2010 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2010 - 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
@@ -35,6 +35,10 @@ CURLcode Curl_axtls_connect_nonblocking(
int sockindex,
bool *done);
+/* tell axTLS to close down all open information regarding connections (and
+ thus session ID caching etc) */
+void Curl_axtls_close_all(struct SessionHandle *data);
+
/* close a SSL connection */
void Curl_axtls_close(struct connectdata *conn, int sockindex);
@@ -46,16 +50,13 @@ int Curl_axtls_random(struct SessionHandle *data,
unsigned char *entropy,
size_t length);
-/* Set the API backend definition to axTLS */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_AXTLS
-
/* API setup for axTLS */
#define curlssl_init Curl_axtls_init
#define curlssl_cleanup Curl_axtls_cleanup
#define curlssl_connect Curl_axtls_connect
#define curlssl_connect_nonblocking Curl_axtls_connect_nonblocking
#define curlssl_session_free(x) Curl_axtls_session_free(x)
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_axtls_close_all
#define curlssl_close Curl_axtls_close
#define curlssl_shutdown(x,y) Curl_axtls_shutdown(x,y)
#define curlssl_set_engine(x,y) ((void)x, (void)y, CURLE_NOT_BUILT_IN)
@@ -65,6 +66,7 @@ int Curl_axtls_random(struct SessionHandle *data,
#define curlssl_check_cxn(x) Curl_axtls_check_cxn(x)
#define curlssl_data_pending(x,y) ((void)x, (void)y, 0)
#define curlssl_random(x,y,z) Curl_axtls_random(x,y,z)
+#define CURL_SSL_BACKEND CURLSSLBACKEND_AXTLS
#endif /* USE_AXTLS */
#endif /* HEADER_CURL_AXTLS_H */
diff --git a/lib/vtls/darwinssl.c b/lib/vtls/curl_darwinssl.c
index 03adcef28..c056198bb 100644
--- a/lib/vtls/darwinssl.c
+++ b/lib/vtls/curl_darwinssl.c
@@ -102,8 +102,10 @@
#include "connect.h"
#include "select.h"
#include "vtls.h"
-#include "darwinssl.h"
-#include "curl_printf.h"
+#include "curl_darwinssl.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
@@ -1459,12 +1461,9 @@ static CURLcode darwinssl_connect_step1(struct connectdata *conn,
#if CURL_BUILD_MAC_10_9 || CURL_BUILD_IOS_7
/* We want to enable 1/n-1 when using a CBC cipher unless the user
specifically doesn't want us doing that: */
- if(SSLSetSessionOption != NULL) {
+ if(SSLSetSessionOption != NULL)
SSLSetSessionOption(connssl->ssl_ctx, kSSLSessionOptionSendOneByteRecord,
!data->set.ssl_enable_beast);
- SSLSetSessionOption(connssl->ssl_ctx, kSSLSessionOptionFalseStart,
- data->set.ssl.falsestart); /* false start support */
- }
#endif /* CURL_BUILD_MAC_10_9 || CURL_BUILD_IOS_7 */
/* Check if there's a cached ID we can/should use here! */
@@ -2230,6 +2229,12 @@ void Curl_darwinssl_close(struct connectdata *conn, int sockindex)
connssl->ssl_sockfd = 0;
}
+void Curl_darwinssl_close_all(struct SessionHandle *data)
+{
+ /* SecureTransport doesn't separate sessions from contexts, so... */
+ (void)data;
+}
+
int Curl_darwinssl_shutdown(struct connectdata *conn, int sockindex)
{
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
@@ -2367,14 +2372,6 @@ void Curl_darwinssl_md5sum(unsigned char *tmp, /* input */
(void)CC_MD5(tmp, (CC_LONG)tmplen, md5sum);
}
-bool Curl_darwinssl_false_start(void) {
-#if CURL_BUILD_MAC_10_9 || CURL_BUILD_IOS_7
- if(SSLSetSessionOption != NULL)
- return TRUE;
-#endif
- return FALSE;
-}
-
static ssize_t darwinssl_send(struct connectdata *conn,
int sockindex,
const void *mem,
diff --git a/lib/vtls/darwinssl.h b/lib/vtls/curl_darwinssl.h
index 3bb69c01a..7c80edfc6 100644
--- a/lib/vtls/darwinssl.h
+++ b/lib/vtls/curl_darwinssl.h
@@ -8,7 +8,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2012 - 2014, Nick Zitzmann, <nickzman@gmail.com>.
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -32,6 +32,9 @@ CURLcode Curl_darwinssl_connect_nonblocking(struct connectdata *conn,
int sockindex,
bool *done);
+/* this function doesn't actually do anything */
+void Curl_darwinssl_close_all(struct SessionHandle *data);
+
/* close a SSL connection */
void Curl_darwinssl_close(struct connectdata *conn, int sockindex);
@@ -48,10 +51,6 @@ void Curl_darwinssl_md5sum(unsigned char *tmp, /* input */
size_t tmplen,
unsigned char *md5sum, /* output */
size_t md5len);
-bool Curl_darwinssl_false_start(void);
-
-/* Set the API backend definition to SecureTransport */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_DARWINSSL
/* API setup for SecureTransport */
#define curlssl_init() (1)
@@ -59,7 +58,7 @@ bool Curl_darwinssl_false_start(void);
#define curlssl_connect Curl_darwinssl_connect
#define curlssl_connect_nonblocking Curl_darwinssl_connect_nonblocking
#define curlssl_session_free(x) Curl_darwinssl_session_free(x)
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_darwinssl_close_all
#define curlssl_close Curl_darwinssl_close
#define curlssl_shutdown(x,y) 0
#define curlssl_set_engine(x,y) ((void)x, (void)y, CURLE_NOT_BUILT_IN)
@@ -70,7 +69,7 @@ bool Curl_darwinssl_false_start(void);
#define curlssl_data_pending(x,y) Curl_darwinssl_data_pending(x, y)
#define curlssl_random(x,y,z) ((void)x, Curl_darwinssl_random(y,z))
#define curlssl_md5sum(a,b,c,d) Curl_darwinssl_md5sum(a,b,c,d)
-#define curlssl_false_start() Curl_darwinssl_false_start()
+#define CURL_SSL_BACKEND CURLSSLBACKEND_DARWINSSL
#endif /* USE_DARWINSSL */
#endif /* HEADER_CURL_DARWINSSL_H */
diff --git a/lib/vtls/schannel.c b/lib/vtls/curl_schannel.c
index 2174e21a3..b3fe52695 100644
--- a/lib/vtls/schannel.c
+++ b/lib/vtls/curl_schannel.c
@@ -5,9 +5,9 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 2012 - 2015, Marc Hoersken, <info@marc-hoersken.de>
+ * Copyright (C) 2012 - 2014, Marc Hoersken, <info@marc-hoersken.de>
* Copyright (C) 2012, Mark Salisbury, <mark.salisbury@hp.com>
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -38,6 +38,19 @@
* Thanks for code and inspiration!
*/
+/*
+ * TODO list for TLS/SSL implementation:
+ * - implement client certificate authentication
+ * - implement custom server certificate validation
+ * - implement cipher/algorithm option
+ *
+ * Related articles on MSDN:
+ * - Getting a Certificate for Schannel
+ * http://msdn.microsoft.com/en-us/library/windows/desktop/aa375447.aspx
+ * - Specifying Schannel Ciphers and Cipher Strengths
+ * http://msdn.microsoft.com/en-us/library/windows/desktop/aa380161.aspx
+ */
+
#include "curl_setup.h"
#ifdef USE_SCHANNEL
@@ -47,7 +60,7 @@
#endif
#include "curl_sspi.h"
-#include "schannel.h"
+#include "curl_schannel.h"
#include "vtls.h"
#include "sendf.h"
#include "connect.h" /* for the connect timeout */
@@ -56,7 +69,10 @@
#include "inet_pton.h" /* for IP addr SNI check */
#include "curl_multibyte.h"
#include "warnless.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -105,7 +121,7 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
struct in6_addr addr6;
#endif
TCHAR *host_name;
- CURLcode result;
+ CURLcode code;
infof(data, "schannel: SSL/TLS connection with %s port %hu (step 1/3)\n",
conn->host.name, conn->remote_port);
@@ -125,64 +141,56 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
/* certificate validation on CE doesn't seem to work right; we'll
do it following a more manual process. */
schannel_cred.dwFlags = SCH_CRED_MANUAL_CRED_VALIDATION |
- SCH_CRED_IGNORE_NO_REVOCATION_CHECK |
- SCH_CRED_IGNORE_REVOCATION_OFFLINE;
+ SCH_CRED_IGNORE_NO_REVOCATION_CHECK |
+ SCH_CRED_IGNORE_REVOCATION_OFFLINE;
#else
- schannel_cred.dwFlags = SCH_CRED_AUTO_CRED_VALIDATION;
- if(data->set.ssl_no_revoke)
- schannel_cred.dwFlags |= SCH_CRED_IGNORE_NO_REVOCATION_CHECK |
- SCH_CRED_IGNORE_REVOCATION_OFFLINE;
- else
- schannel_cred.dwFlags |= SCH_CRED_REVOCATION_CHECK_CHAIN;
+ schannel_cred.dwFlags = SCH_CRED_AUTO_CRED_VALIDATION |
+ SCH_CRED_REVOCATION_CHECK_CHAIN;
#endif
- if(data->set.ssl_no_revoke)
- infof(data, "schannel: disabled server certificate revocation "
- "checks\n");
- else
- infof(data, "schannel: checking server certificate revocation\n");
+ infof(data, "schannel: checking server certificate revocation\n");
}
else {
schannel_cred.dwFlags = SCH_CRED_MANUAL_CRED_VALIDATION |
- SCH_CRED_IGNORE_NO_REVOCATION_CHECK |
- SCH_CRED_IGNORE_REVOCATION_OFFLINE;
- infof(data, "schannel: disabled server certificate revocation checks\n");
+ SCH_CRED_IGNORE_NO_REVOCATION_CHECK |
+ SCH_CRED_IGNORE_REVOCATION_OFFLINE;
+ infof(data, "schannel: disable server certificate revocation checks\n");
}
if(!data->set.ssl.verifyhost) {
schannel_cred.dwFlags |= SCH_CRED_NO_SERVERNAME_CHECK;
infof(data, "schannel: verifyhost setting prevents Schannel from "
- "comparing the supplied target name with the subject "
- "names in server certificates. Also disables SNI.\n");
+ "comparing the supplied target name with the subject "
+ "names in server certificates. Also disables SNI.\n");
}
switch(data->set.ssl.version) {
- default:
- case CURL_SSLVERSION_DEFAULT:
- case CURL_SSLVERSION_TLSv1:
- schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_0_CLIENT |
- SP_PROT_TLS1_1_CLIENT |
- SP_PROT_TLS1_2_CLIENT;
- break;
- case CURL_SSLVERSION_TLSv1_0:
- schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_0_CLIENT;
- break;
- case CURL_SSLVERSION_TLSv1_1:
- schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_1_CLIENT;
- break;
- case CURL_SSLVERSION_TLSv1_2:
- schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_2_CLIENT;
- break;
- case CURL_SSLVERSION_SSLv3:
- schannel_cred.grbitEnabledProtocols = SP_PROT_SSL3_CLIENT;
- break;
- case CURL_SSLVERSION_SSLv2:
- schannel_cred.grbitEnabledProtocols = SP_PROT_SSL2_CLIENT;
- break;
+ default:
+ case CURL_SSLVERSION_DEFAULT:
+ case CURL_SSLVERSION_TLSv1:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_0_CLIENT |
+ SP_PROT_TLS1_1_CLIENT |
+ SP_PROT_TLS1_2_CLIENT;
+ break;
+ case CURL_SSLVERSION_TLSv1_0:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_0_CLIENT;
+ break;
+ case CURL_SSLVERSION_TLSv1_1:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_1_CLIENT;
+ break;
+ case CURL_SSLVERSION_TLSv1_2:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_TLS1_2_CLIENT;
+ break;
+ case CURL_SSLVERSION_SSLv3:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_SSL3_CLIENT;
+ break;
+ case CURL_SSLVERSION_SSLv2:
+ schannel_cred.grbitEnabledProtocols = SP_PROT_SSL2_CLIENT;
+ break;
}
/* allocate memory for the re-usable credential handle */
connssl->cred = (struct curl_schannel_cred *)
- malloc(sizeof(struct curl_schannel_cred));
+ malloc(sizeof(struct curl_schannel_cred));
if(!connssl->cred) {
failf(data, "schannel: unable to allocate memory");
return CURLE_OUT_OF_MEMORY;
@@ -190,12 +198,9 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
memset(connssl->cred, 0, sizeof(struct curl_schannel_cred));
/* http://msdn.microsoft.com/en-us/library/windows/desktop/aa374716.aspx */
- sspi_status =
- s_pSecFn->AcquireCredentialsHandle(NULL, (TCHAR *)UNISP_NAME,
- SECPKG_CRED_OUTBOUND, NULL,
- &schannel_cred, NULL, NULL,
- &connssl->cred->cred_handle,
- &connssl->cred->time_stamp);
+ sspi_status = s_pSecFn->AcquireCredentialsHandle(NULL, (TCHAR *)UNISP_NAME,
+ SECPKG_CRED_OUTBOUND, NULL, &schannel_cred, NULL, NULL,
+ &connssl->cred->cred_handle, &connssl->cred->time_stamp);
if(sspi_status != SEC_E_OK) {
if(sspi_status == SEC_E_WRONG_PRINCIPAL)
@@ -224,12 +229,12 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
/* setup request flags */
connssl->req_flags = ISC_REQ_SEQUENCE_DETECT | ISC_REQ_REPLAY_DETECT |
- ISC_REQ_CONFIDENTIALITY | ISC_REQ_ALLOCATE_MEMORY |
- ISC_REQ_STREAM;
+ ISC_REQ_CONFIDENTIALITY | ISC_REQ_ALLOCATE_MEMORY |
+ ISC_REQ_STREAM;
/* allocate memory for the security context handle */
connssl->ctxt = (struct curl_schannel_ctxt *)
- malloc(sizeof(struct curl_schannel_ctxt));
+ malloc(sizeof(struct curl_schannel_ctxt));
if(!connssl->ctxt) {
failf(data, "schannel: unable to allocate memory");
return CURLE_OUT_OF_MEMORY;
@@ -264,10 +269,10 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
"sending %lu bytes...\n", outbuf.cbBuffer);
/* send initial handshake data which is now stored in output buffer */
- result = Curl_write_plain(conn, conn->sock[sockindex], outbuf.pvBuffer,
- outbuf.cbBuffer, &written);
+ code = Curl_write_plain(conn, conn->sock[sockindex], outbuf.pvBuffer,
+ outbuf.cbBuffer, &written);
s_pSecFn->FreeContextBuffer(outbuf.pvBuffer);
- if((result != CURLE_OK) || (outbuf.cbBuffer != (size_t) written)) {
+ if((code != CURLE_OK) || (outbuf.cbBuffer != (size_t)written)) {
failf(data, "schannel: failed to send initial handshake data: "
"sent %zd of %lu bytes", written, outbuf.cbBuffer);
return CURLE_SSL_CONNECT_ERROR;
@@ -276,10 +281,6 @@ schannel_connect_step1(struct connectdata *conn, int sockindex)
infof(data, "schannel: sent initial handshake data: "
"sent %zd bytes\n", written);
- connssl->recv_unrecoverable_err = CURLE_OK;
- connssl->recv_sspi_close_notify = false;
- connssl->recv_connection_closed = false;
-
/* continue to second handshake step */
connssl->connecting_state = ssl_connect_2;
@@ -295,13 +296,13 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
unsigned char *reallocated_buffer;
size_t reallocated_length;
- SecBuffer outbuf[3];
+ SecBuffer outbuf[2];
SecBufferDesc outbuf_desc;
SecBuffer inbuf[2];
SecBufferDesc inbuf_desc;
SECURITY_STATUS sspi_status = SEC_E_OK;
TCHAR *host_name;
- CURLcode result;
+ CURLcode code;
bool doread;
doread = (connssl->connecting_state != ssl_connect_2_writing) ? TRUE : FALSE;
@@ -312,17 +313,6 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
if(!connssl->cred || !connssl->ctxt)
return CURLE_SSL_CONNECT_ERROR;
- /* buffer to store previously received and decrypted data */
- if(connssl->decdata_buffer == NULL) {
- connssl->decdata_offset = 0;
- connssl->decdata_length = CURL_SCHANNEL_BUFFER_INIT_SIZE;
- connssl->decdata_buffer = malloc(connssl->decdata_length);
- if(connssl->decdata_buffer == NULL) {
- failf(data, "schannel: unable to allocate memory");
- return CURLE_OUT_OF_MEMORY;
- }
- }
-
/* buffer to store previously received and encrypted data */
if(connssl->encdata_buffer == NULL) {
connssl->encdata_offset = 0;
@@ -339,7 +329,7 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
CURL_SCHANNEL_BUFFER_FREE_SIZE) {
/* increase internal encrypted data buffer */
reallocated_length = connssl->encdata_offset +
- CURL_SCHANNEL_BUFFER_FREE_SIZE;
+ CURL_SCHANNEL_BUFFER_FREE_SIZE;
reallocated_buffer = realloc(connssl->encdata_buffer,
reallocated_length);
@@ -356,20 +346,18 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
for(;;) {
if(doread) {
/* read encrypted handshake data from socket */
- result = Curl_read_plain(conn->sock[sockindex],
- (char *) (connssl->encdata_buffer +
- connssl->encdata_offset),
- connssl->encdata_length -
- connssl->encdata_offset,
- &nread);
- if(result == CURLE_AGAIN) {
+ code = Curl_read_plain(conn->sock[sockindex],
+ (char *) (connssl->encdata_buffer + connssl->encdata_offset),
+ connssl->encdata_length - connssl->encdata_offset,
+ &nread);
+ if(code == CURLE_AGAIN) {
if(connssl->connecting_state != ssl_connect_2_writing)
connssl->connecting_state = ssl_connect_2_reading;
infof(data, "schannel: failed to receive handshake, "
"need more data\n");
return CURLE_OK;
}
- else if((result != CURLE_OK) || (nread == 0)) {
+ else if((code != CURLE_OK) || (nread == 0)) {
failf(data, "schannel: failed to receive handshake, "
"SSL/TLS connection failed");
return CURLE_SSL_CONNECT_ERROR;
@@ -380,7 +368,7 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
}
infof(data, "schannel: encrypted data buffer: offset %zu length %zu\n",
- connssl->encdata_offset, connssl->encdata_length);
+ connssl->encdata_offset, connssl->encdata_length);
/* setup input buffers */
InitSecBuffer(&inbuf[0], SECBUFFER_TOKEN, malloc(connssl->encdata_offset),
@@ -391,8 +379,7 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
/* setup output buffers */
InitSecBuffer(&outbuf[0], SECBUFFER_TOKEN, NULL, 0);
InitSecBuffer(&outbuf[1], SECBUFFER_ALERT, NULL, 0);
- InitSecBuffer(&outbuf[2], SECBUFFER_EMPTY, NULL, 0);
- InitSecBufferDesc(&outbuf_desc, outbuf, 3);
+ InitSecBufferDesc(&outbuf_desc, outbuf, 2);
if(inbuf[0].pvBuffer == NULL) {
failf(data, "schannel: unable to allocate memory");
@@ -426,31 +413,19 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
return CURLE_OK;
}
- /* If the server has requested a client certificate, attempt to continue
- the handshake without one. This will allow connections to servers which
- request a client certificate but do not require it. */
- if(sspi_status == SEC_I_INCOMPLETE_CREDENTIALS &&
- !(connssl->req_flags & ISC_REQ_USE_SUPPLIED_CREDS)) {
- connssl->req_flags |= ISC_REQ_USE_SUPPLIED_CREDS;
- connssl->connecting_state = ssl_connect_2_writing;
- infof(data, "schannel: a client certificate has been requested\n");
- return CURLE_OK;
- }
-
/* check if the handshake needs to be continued */
if(sspi_status == SEC_I_CONTINUE_NEEDED || sspi_status == SEC_E_OK) {
- for(i = 0; i < 3; i++) {
+ for(i = 0; i < 2; i++) {
/* search for handshake tokens that need to be send */
if(outbuf[i].BufferType == SECBUFFER_TOKEN && outbuf[i].cbBuffer > 0) {
infof(data, "schannel: sending next handshake data: "
"sending %lu bytes...\n", outbuf[i].cbBuffer);
/* send handshake token to server */
- result = Curl_write_plain(conn, conn->sock[sockindex],
- outbuf[i].pvBuffer, outbuf[i].cbBuffer,
- &written);
- if((result != CURLE_OK) ||
- (outbuf[i].cbBuffer != (size_t) written)) {
+ code = Curl_write_plain(conn, conn->sock[sockindex],
+ outbuf[i].pvBuffer, outbuf[i].cbBuffer,
+ &written);
+ if((code != CURLE_OK) || (outbuf[i].cbBuffer != (size_t)written)) {
failf(data, "schannel: failed to send next handshake data: "
"sent %zd of %lu bytes", written, outbuf[i].cbBuffer);
return CURLE_SSL_CONNECT_ERROR;
@@ -477,21 +452,21 @@ schannel_connect_step2(struct connectdata *conn, int sockindex)
if(inbuf[1].BufferType == SECBUFFER_EXTRA && inbuf[1].cbBuffer > 0) {
infof(data, "schannel: encrypted data length: %lu\n", inbuf[1].cbBuffer);
/*
- There are two cases where we could be getting extra data here:
- 1) If we're renegotiating a connection and the handshake is already
- complete (from the server perspective), it can encrypted app data
- (not handshake data) in an extra buffer at this point.
- 2) (sspi_status == SEC_I_CONTINUE_NEEDED) We are negotiating a
- connection and this extra data is part of the handshake.
- We should process the data immediately; waiting for the socket to
- be ready may fail since the server is done sending handshake data.
- */
+ There are two cases where we could be getting extra data here:
+ 1) If we're renegotiating a connection and the handshake is already
+ complete (from the server perspective), it can encrypted app data
+ (not handshake data) in an extra buffer at this point.
+ 2) (sspi_status == SEC_I_CONTINUE_NEEDED) We are negotiating a
+ connection and this extra data is part of the handshake.
+ We should process the data immediately; waiting for the socket to
+ be ready may fail since the server is done sending handshake data.
+ */
/* check if the remaining data is less than the total amount
and therefore begins after the already processed data */
if(connssl->encdata_offset > inbuf[1].cbBuffer) {
memmove(connssl->encdata_buffer,
(connssl->encdata_buffer + connssl->encdata_offset) -
- inbuf[1].cbBuffer, inbuf[1].cbBuffer);
+ inbuf[1].cbBuffer, inbuf[1].cbBuffer);
connssl->encdata_offset = inbuf[1].cbBuffer;
if(sspi_status == SEC_I_CONTINUE_NEEDED) {
doread = FALSE;
@@ -716,14 +691,14 @@ schannel_send(struct connectdata *conn, int sockindex,
SecBuffer outbuf[4];
SecBufferDesc outbuf_desc;
SECURITY_STATUS sspi_status = SEC_E_OK;
- CURLcode result;
+ CURLcode code;
/* check if the maximum stream sizes were queried */
if(connssl->stream_sizes.cbMaximumMessage == 0) {
sspi_status = s_pSecFn->QueryContextAttributes(
- &connssl->ctxt->ctxt_handle,
- SECPKG_ATTR_STREAM_SIZES,
- &connssl->stream_sizes);
+ &connssl->ctxt->ctxt_handle,
+ SECPKG_ATTR_STREAM_SIZES,
+ &connssl->stream_sizes);
if(sspi_status != SEC_E_OK) {
*err = CURLE_SEND_ERROR;
return -1;
@@ -738,7 +713,7 @@ schannel_send(struct connectdata *conn, int sockindex,
/* calculate the complete message length and allocate a buffer for it */
data_len = connssl->stream_sizes.cbHeader + len +
- connssl->stream_sizes.cbTrailer;
+ connssl->stream_sizes.cbTrailer;
data = (unsigned char *) malloc(data_len);
if(data == NULL) {
*err = CURLE_OUT_OF_MEMORY;
@@ -771,19 +746,19 @@ schannel_send(struct connectdata *conn, int sockindex,
len = outbuf[0].cbBuffer + outbuf[1].cbBuffer + outbuf[2].cbBuffer;
/*
- It's important to send the full message which includes the header,
- encrypted payload, and trailer. Until the client receives all the
- data a coherent message has not been delivered and the client
- can't read any of it.
-
- If we wanted to buffer the unwritten encrypted bytes, we would
- tell the client that all data it has requested to be sent has been
- sent. The unwritten encrypted bytes would be the first bytes to
- send on the next invocation.
- Here's the catch with this - if we tell the client that all the
- bytes have been sent, will the client call this method again to
- send the buffered data? Looking at who calls this function, it
- seems the answer is NO.
+ It's important to send the full message which includes the header,
+ encrypted payload, and trailer. Until the client receives all the
+ data a coherent message has not been delivered and the client
+ can't read any of it.
+
+ If we wanted to buffer the unwritten encrypted bytes, we would
+ tell the client that all data it has requested to be sent has been
+ sent. The unwritten encrypted bytes would be the first bytes to
+ send on the next invocation.
+ Here's the catch with this - if we tell the client that all the
+ bytes have been sent, will the client call this method again to
+ send the buffered data? Looking at who calls this function, it
+ seems the answer is NO.
*/
/* send entire message or fail */
@@ -822,12 +797,12 @@ schannel_send(struct connectdata *conn, int sockindex,
}
/* socket is writable */
- result = Curl_write_plain(conn, conn->sock[sockindex], data + written,
- len - written, &this_write);
- if(result == CURLE_AGAIN)
+ code = Curl_write_plain(conn, conn->sock[sockindex], data + written,
+ len - written, &this_write);
+ if(code == CURLE_AGAIN)
continue;
- else if(result != CURLE_OK) {
- *err = result;
+ else if(code != CURLE_OK) {
+ *err = code;
written = -1;
break;
}
@@ -857,7 +832,8 @@ schannel_recv(struct connectdata *conn, int sockindex,
char *buf, size_t len, CURLcode *err)
{
size_t size = 0;
- ssize_t nread = -1;
+ ssize_t nread = 0, ret = -1;
+ CURLcode result;
struct SessionHandle *data = conn->data;
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
unsigned char *reallocated_buffer;
@@ -866,103 +842,72 @@ schannel_recv(struct connectdata *conn, int sockindex,
SecBuffer inbuf[4];
SecBufferDesc inbuf_desc;
SECURITY_STATUS sspi_status = SEC_E_OK;
- /* we want the length of the encrypted buffer to be at least large enough
- that it can hold all the bytes requested and some TLS record overhead. */
- size_t min_encdata_length = len + CURL_SCHANNEL_BUFFER_FREE_SIZE;
-
- /****************************************************************************
- * Don't return or set connssl->recv_unrecoverable_err unless in the cleanup.
- * The pattern for return error is set *err, optional infof, goto cleanup.
- *
- * Our priority is to always return as much decrypted data to the caller as
- * possible, even if an error occurs. The state of the decrypted buffer must
- * always be valid. Transfer of decrypted data to the caller's buffer is
- * handled in the cleanup.
- */
infof(data, "schannel: client wants to read %zu bytes\n", len);
*err = CURLE_OK;
- if(len && len <= connssl->decdata_offset) {
- infof(data, "schannel: enough decrypted data is already available\n");
- goto cleanup;
- }
- else if(connssl->recv_unrecoverable_err) {
- *err = connssl->recv_unrecoverable_err;
- infof(data, "schannel: an unrecoverable error occurred in a prior call\n");
- goto cleanup;
- }
- else if(connssl->recv_sspi_close_notify) {
- /* once a server has indicated shutdown there is no more encrypted data */
- infof(data, "schannel: server indicated shutdown in a prior call\n");
- goto cleanup;
- }
- else if(!len) {
- /* It's debatable what to return when !len. Regardless we can't return
- immediately because there may be data to decrypt (in the case we want to
- decrypt all encrypted cached data) so handle !len later in cleanup.
- */
- ; /* do nothing */
+ /* buffer to store previously received and decrypted data */
+ if(connssl->decdata_buffer == NULL) {
+ connssl->decdata_offset = 0;
+ connssl->decdata_length = CURL_SCHANNEL_BUFFER_INIT_SIZE;
+ connssl->decdata_buffer = malloc(connssl->decdata_length);
+ if(connssl->decdata_buffer == NULL) {
+ failf(data, "schannel: unable to allocate memory");
+ *err = CURLE_OUT_OF_MEMORY;
+ return -1;
+ }
}
- else if(!connssl->recv_connection_closed) {
- /* increase enc buffer in order to fit the requested amount of data */
- size = connssl->encdata_length - connssl->encdata_offset;
- if(size < CURL_SCHANNEL_BUFFER_FREE_SIZE ||
- connssl->encdata_length < min_encdata_length) {
- reallocated_length = connssl->encdata_offset +
- CURL_SCHANNEL_BUFFER_FREE_SIZE;
- if(reallocated_length < min_encdata_length) {
- reallocated_length = min_encdata_length;
- }
- reallocated_buffer = realloc(connssl->encdata_buffer,
- reallocated_length);
- if(reallocated_buffer == NULL) {
- *err = CURLE_OUT_OF_MEMORY;
- failf(data, "schannel: unable to re-allocate memory");
- goto cleanup;
- }
+ /* increase buffer in order to fit the requested amount of data */
+ if(connssl->encdata_length - connssl->encdata_offset <
+ CURL_SCHANNEL_BUFFER_FREE_SIZE || connssl->encdata_length < len) {
+ /* increase internal encrypted data buffer */
+ reallocated_length = connssl->encdata_offset +
+ CURL_SCHANNEL_BUFFER_FREE_SIZE;
+ /* make sure that the requested amount of data fits */
+ if(reallocated_length < len) {
+ reallocated_length = len;
+ }
+ reallocated_buffer = realloc(connssl->encdata_buffer,
+ reallocated_length);
+
+ if(reallocated_buffer == NULL) {
+ failf(data, "schannel: unable to re-allocate memory");
+ *err = CURLE_OUT_OF_MEMORY;
+ return -1;
+ }
+ else {
connssl->encdata_buffer = reallocated_buffer;
connssl->encdata_length = reallocated_length;
- size = connssl->encdata_length - connssl->encdata_offset;
- infof(data, "schannel: encdata_buffer resized %zu\n",
- connssl->encdata_length);
}
+ }
- infof(data, "schannel: encrypted data buffer: offset %zu length %zu\n",
- connssl->encdata_offset, connssl->encdata_length);
-
- /* read encrypted data from socket */
+ /* read encrypted data from socket */
+ infof(data, "schannel: encrypted data buffer: offset %zu length %zu\n",
+ connssl->encdata_offset, connssl->encdata_length);
+ size = connssl->encdata_length - connssl->encdata_offset;
+ if(size > 0) {
*err = Curl_read_plain(conn->sock[sockindex],
- (char *)(connssl->encdata_buffer +
- connssl->encdata_offset),
+ (char *) (connssl->encdata_buffer + connssl->encdata_offset),
size, &nread);
- if(*err) {
- nread = -1;
- if(*err == CURLE_AGAIN)
- infof(data, "schannel: Curl_read_plain returned CURLE_AGAIN\n");
- else if(*err == CURLE_RECV_ERROR)
- infof(data, "schannel: Curl_read_plain returned CURLE_RECV_ERROR\n");
- else
- infof(data, "schannel: Curl_read_plain returned error %d\n", *err);
- }
- else if(nread == 0) {
- connssl->recv_connection_closed = true;
- infof(data, "schannel: server closed the connection\n");
- }
- else if(nread > 0) {
- connssl->encdata_offset += (size_t)nread;
- infof(data, "schannel: encrypted data got %zd\n", nread);
+ /* check for received data */
+ if(*err != CURLE_OK)
+ ret = -1;
+ else {
+ if(nread > 0)
+ /* increase encrypted data buffer offset */
+ connssl->encdata_offset += nread;
+ ret = nread;
}
+ infof(data, "schannel: encrypted data got %zd\n", ret);
}
infof(data, "schannel: encrypted data buffer: offset %zu length %zu\n",
connssl->encdata_offset, connssl->encdata_length);
- /* decrypt loop */
+ /* check if we still have some data in our buffers */
while(connssl->encdata_offset > 0 && sspi_status == SEC_E_OK &&
- (!len || connssl->decdata_offset < len ||
- connssl->recv_connection_closed)) {
+ connssl->decdata_offset < len) {
/* prepare data buffer for DecryptMessage call */
InitSecBuffer(&inbuf[0], SECBUFFER_DATA, connssl->encdata_buffer,
curlx_uztoul(connssl->encdata_offset));
@@ -971,16 +916,24 @@ schannel_recv(struct connectdata *conn, int sockindex,
InitSecBuffer(&inbuf[1], SECBUFFER_EMPTY, NULL, 0);
InitSecBuffer(&inbuf[2], SECBUFFER_EMPTY, NULL, 0);
InitSecBuffer(&inbuf[3], SECBUFFER_EMPTY, NULL, 0);
+
InitSecBufferDesc(&inbuf_desc, inbuf, 4);
/* http://msdn.microsoft.com/en-us/library/windows/desktop/aa375348.aspx */
sspi_status = s_pSecFn->DecryptMessage(&connssl->ctxt->ctxt_handle,
&inbuf_desc, 0, NULL);
+ /* check if we need more data */
+ if(sspi_status == SEC_E_INCOMPLETE_MESSAGE) {
+ infof(data, "schannel: failed to decrypt data, need more data\n");
+ *err = CURLE_AGAIN;
+ return -1;
+ }
+
/* check if everything went fine (server may want to renegotiate
or shutdown the connection context) */
if(sspi_status == SEC_E_OK || sspi_status == SEC_I_RENEGOTIATE ||
- sspi_status == SEC_I_CONTEXT_EXPIRED) {
+ sspi_status == SEC_I_CONTEXT_EXPIRED) {
/* check for successfully decrypted data, even before actual
renegotiation or shutdown of the connection context */
if(inbuf[1].BufferType == SECBUFFER_DATA) {
@@ -1000,18 +953,21 @@ schannel_recv(struct connectdata *conn, int sockindex,
}
reallocated_buffer = realloc(connssl->decdata_buffer,
reallocated_length);
+
if(reallocated_buffer == NULL) {
- *err = CURLE_OUT_OF_MEMORY;
failf(data, "schannel: unable to re-allocate memory");
- goto cleanup;
+ *err = CURLE_OUT_OF_MEMORY;
+ return -1;
+ }
+ else {
+ connssl->decdata_buffer = reallocated_buffer;
+ connssl->decdata_length = reallocated_length;
}
- connssl->decdata_buffer = reallocated_buffer;
- connssl->decdata_length = reallocated_length;
}
/* copy decrypted data to internal buffer */
size = inbuf[1].cbBuffer;
- if(size) {
+ if(size > 0) {
memcpy(connssl->decdata_buffer + connssl->decdata_offset,
inbuf[1].pvBuffer, size);
connssl->decdata_offset += size;
@@ -1029,151 +985,83 @@ schannel_recv(struct connectdata *conn, int sockindex,
/* check if the remaining data is less than the total amount
* and therefore begins after the already processed data
- */
+ */
if(connssl->encdata_offset > inbuf[3].cbBuffer) {
/* move remaining encrypted data forward to the beginning of
buffer */
memmove(connssl->encdata_buffer,
(connssl->encdata_buffer + connssl->encdata_offset) -
- inbuf[3].cbBuffer, inbuf[3].cbBuffer);
+ inbuf[3].cbBuffer, inbuf[3].cbBuffer);
connssl->encdata_offset = inbuf[3].cbBuffer;
}
infof(data, "schannel: encrypted data cached: offset %zu length %zu\n",
connssl->encdata_offset, connssl->encdata_length);
}
- else {
+ else{
/* reset encrypted buffer offset, because there is no data remaining */
connssl->encdata_offset = 0;
}
+ }
- /* check if server wants to renegotiate the connection context */
- if(sspi_status == SEC_I_RENEGOTIATE) {
- infof(data, "schannel: remote party requests renegotiation\n");
- if(*err && *err != CURLE_AGAIN) {
- infof(data, "schannel: can't renogotiate, an error is pending\n");
- goto cleanup;
- }
- if(connssl->encdata_offset) {
- *err = CURLE_RECV_ERROR;
- infof(data, "schannel: can't renogotiate, "
- "encrypted data available\n");
- goto cleanup;
- }
- /* begin renegotiation */
- infof(data, "schannel: renegotiating SSL/TLS connection\n");
- connssl->state = ssl_connection_negotiating;
- connssl->connecting_state = ssl_connect_2_writing;
- *err = schannel_connect_common(conn, sockindex, FALSE, &done);
- if(*err) {
- infof(data, "schannel: renegotiation failed\n");
- goto cleanup;
- }
- /* now retry receiving data */
- sspi_status = SEC_E_OK;
+ /* check if server wants to renegotiate the connection context */
+ if(sspi_status == SEC_I_RENEGOTIATE) {
+ infof(data, "schannel: remote party requests SSL/TLS renegotiation\n");
+
+ /* begin renegotiation */
+ infof(data, "schannel: renegotiating SSL/TLS connection\n");
+ connssl->state = ssl_connection_negotiating;
+ connssl->connecting_state = ssl_connect_2_writing;
+ result = schannel_connect_common(conn, sockindex, FALSE, &done);
+ if(result)
+ *err = result;
+ else {
infof(data, "schannel: SSL/TLS connection renegotiated\n");
- continue;
- }
- /* check if the server closed the connection */
- else if(sspi_status == SEC_I_CONTEXT_EXPIRED) {
- /* In Windows 2000 SEC_I_CONTEXT_EXPIRED (close_notify) is not
- returned so we have to work around that in cleanup. */
- connssl->recv_sspi_close_notify = true;
- if(!connssl->recv_connection_closed) {
- connssl->recv_connection_closed = true;
- infof(data, "schannel: server closed the connection\n");
- }
- goto cleanup;
+ /* now retry receiving data */
+ return schannel_recv(conn, sockindex, buf, len, err);
}
}
- else if(sspi_status == SEC_E_INCOMPLETE_MESSAGE) {
- if(!*err)
- *err = CURLE_AGAIN;
- infof(data, "schannel: failed to decrypt data, need more data\n");
- goto cleanup;
- }
- else {
- *err = CURLE_RECV_ERROR;
- infof(data, "schannel: failed to read data from server: %s\n",
- Curl_sspi_strerror(conn, sspi_status));
- goto cleanup;
- }
}
- infof(data, "schannel: encrypted data buffer: offset %zu length %zu\n",
- connssl->encdata_offset, connssl->encdata_length);
-
infof(data, "schannel: decrypted data buffer: offset %zu length %zu\n",
connssl->decdata_offset, connssl->decdata_length);
-cleanup:
- /* Warning- there is no guarantee the encdata state is valid at this point */
- infof(data, "schannel: schannel_recv cleanup\n");
-
- /* Error if the connection has closed without a close_notify.
- Behavior here is a matter of debate. We don't want to be vulnerable to a
- truncation attack however there's some browser precedent for ignoring the
- close_notify for compatibility reasons.
- Additionally, Windows 2000 (v5.0) is a special case since it seems it doesn't
- return close_notify. In that case if the connection was closed we assume it
- was graceful (close_notify) since there doesn't seem to be a way to tell.
- */
- if(len && !connssl->decdata_offset && connssl->recv_connection_closed &&
- !connssl->recv_sspi_close_notify) {
- BOOL isWin2k;
- ULONGLONG cm;
- OSVERSIONINFOEX osver;
-
- memset(&osver, 0, sizeof(osver));
- osver.dwOSVersionInfoSize = sizeof(osver);
- osver.dwMajorVersion = 5;
-
- cm = VerSetConditionMask(0, VER_MAJORVERSION, VER_EQUAL);
- cm = VerSetConditionMask(cm, VER_MINORVERSION, VER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMAJOR, VER_GREATER_EQUAL);
- cm = VerSetConditionMask(cm, VER_SERVICEPACKMINOR, VER_GREATER_EQUAL);
-
- isWin2k = VerifyVersionInfo(&osver,
- (VER_MAJORVERSION | VER_MINORVERSION |
- VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR),
- cm);
-
- if(isWin2k && sspi_status == SEC_E_OK)
- connssl->recv_sspi_close_notify = true;
- else {
- *err = CURLE_RECV_ERROR;
- infof(data, "schannel: server closed abruptly (missing close_notify)\n");
- }
- }
-
- /* Any error other than CURLE_AGAIN is an unrecoverable error. */
- if(*err && *err != CURLE_AGAIN)
- connssl->recv_unrecoverable_err = *err;
-
+ /* copy requested decrypted data to supplied buffer */
size = len < connssl->decdata_offset ? len : connssl->decdata_offset;
- if(size) {
+ if(size > 0) {
memcpy(buf, connssl->decdata_buffer, size);
+ ret = size;
+
+ /* move remaining decrypted data forward to the beginning of buffer */
memmove(connssl->decdata_buffer, connssl->decdata_buffer + size,
connssl->decdata_offset - size);
connssl->decdata_offset -= size;
- infof(data, "schannel: decrypted data returned %zu\n", size);
+ infof(data, "schannel: decrypted data returned %zd\n", size);
infof(data, "schannel: decrypted data buffer: offset %zu length %zu\n",
connssl->decdata_offset, connssl->decdata_length);
- *err = CURLE_OK;
- return (ssize_t)size;
}
+ else
+ ret = 0;
- if(!*err && !connssl->recv_connection_closed)
- *err = CURLE_AGAIN;
-
- /* It's debatable what to return when !len. We could return whatever error we
- got from decryption but instead we override here so the return is consistent.
- */
- if(!len)
+ /* check if the server closed the connection */
+ if(ret <= 0 && ( /* special check for Windows 2000 Professional */
+ sspi_status == SEC_I_CONTEXT_EXPIRED || (sspi_status == SEC_E_OK &&
+ connssl->encdata_offset > 0 && connssl->encdata_buffer[0] == 0x15))) {
+ infof(data, "schannel: server closed the connection\n");
*err = CURLE_OK;
+ return 0;
+ }
- return *err ? -1 : 0;
+ /* check if something went wrong and we need to return an error */
+ if(ret < 0 && sspi_status != SEC_E_OK) {
+ infof(data, "schannel: failed to read data from server: %s\n",
+ Curl_sspi_strerror(conn, sspi_status));
+ *err = CURLE_RECV_ERROR;
+ return -1;
+ }
+
+ return ret;
}
CURLcode
@@ -1233,7 +1121,7 @@ int Curl_schannel_shutdown(struct connectdata *conn, int sockindex)
SECURITY_STATUS sspi_status;
SecBuffer outbuf;
SecBufferDesc outbuf_desc;
- CURLcode result;
+ CURLcode code;
TCHAR *host_name;
DWORD dwshut = SCHANNEL_SHUTDOWN;
@@ -1256,31 +1144,31 @@ int Curl_schannel_shutdown(struct connectdata *conn, int sockindex)
InitSecBufferDesc(&outbuf_desc, &outbuf, 1);
sspi_status = s_pSecFn->InitializeSecurityContext(
- &connssl->cred->cred_handle,
- &connssl->ctxt->ctxt_handle,
- host_name,
- connssl->req_flags,
- 0,
- 0,
- NULL,
- 0,
- &connssl->ctxt->ctxt_handle,
- &outbuf_desc,
- &connssl->ret_flags,
- &connssl->ctxt->time_stamp);
+ &connssl->cred->cred_handle,
+ &connssl->ctxt->ctxt_handle,
+ host_name,
+ connssl->req_flags,
+ 0,
+ 0,
+ NULL,
+ 0,
+ &connssl->ctxt->ctxt_handle,
+ &outbuf_desc,
+ &connssl->ret_flags,
+ &connssl->ctxt->time_stamp);
Curl_unicodefree(host_name);
if((sspi_status == SEC_E_OK) || (sspi_status == SEC_I_CONTEXT_EXPIRED)) {
/* send close message which is in output buffer */
ssize_t written;
- result = Curl_write_plain(conn, conn->sock[sockindex], outbuf.pvBuffer,
- outbuf.cbBuffer, &written);
+ code = Curl_write_plain(conn, conn->sock[sockindex], outbuf.pvBuffer,
+ outbuf.cbBuffer, &written);
s_pSecFn->FreeContextBuffer(outbuf.pvBuffer);
- if((result != CURLE_OK) || (outbuf.cbBuffer != (size_t) written)) {
+ if((code != CURLE_OK) || (outbuf.cbBuffer != (size_t)written)) {
infof(data, "schannel: failed to send close msg: %s"
- " (bytes written: %zd)\n", curl_easy_strerror(result), written);
+ " (bytes written: %zd)\n", curl_easy_strerror(code), written);
}
}
}
@@ -1330,14 +1218,9 @@ void Curl_schannel_session_free(void *ptr)
{
struct curl_schannel_cred *cred = ptr;
- if(cred && cred->cached) {
- if(cred->refcount == 0) {
- s_pSecFn->FreeCredentialsHandle(&cred->cred_handle);
- Curl_safefree(cred);
- }
- else {
- cred->cached = FALSE;
- }
+ if(cred && cred->cached && cred->refcount == 0) {
+ s_pSecFn->FreeCredentialsHandle(&cred->cred_handle);
+ Curl_safefree(cred);
}
}
@@ -1405,8 +1288,7 @@ static CURLcode verify_certificate(struct connectdata *conn, int sockindex)
NULL,
pCertContextServer->hCertStore,
&ChainPara,
- (data->set.ssl_no_revoke ? 0 :
- CERT_CHAIN_REVOCATION_CHECK_CHAIN),
+ 0,
NULL,
&pChainContext)) {
failf(data, "schannel: CertGetCertificateChain failed: %s",
@@ -1417,24 +1299,21 @@ static CURLcode verify_certificate(struct connectdata *conn, int sockindex)
if(result == CURLE_OK) {
CERT_SIMPLE_CHAIN *pSimpleChain = pChainContext->rgpChain[0];
- DWORD dwTrustErrorMask = ~(DWORD)(CERT_TRUST_IS_NOT_TIME_NESTED);
+ DWORD dwTrustErrorMask = ~(DWORD)(CERT_TRUST_IS_NOT_TIME_NESTED|
+ CERT_TRUST_REVOCATION_STATUS_UNKNOWN);
dwTrustErrorMask &= pSimpleChain->TrustStatus.dwErrorStatus;
if(dwTrustErrorMask) {
- if(dwTrustErrorMask & CERT_TRUST_IS_REVOKED)
- failf(data, "schannel: CertGetCertificateChain trust error"
- " CERT_TRUST_IS_REVOKED");
- else if(dwTrustErrorMask & CERT_TRUST_IS_PARTIAL_CHAIN)
+ if(dwTrustErrorMask & CERT_TRUST_IS_PARTIAL_CHAIN)
failf(data, "schannel: CertGetCertificateChain trust error"
- " CERT_TRUST_IS_PARTIAL_CHAIN");
- else if(dwTrustErrorMask & CERT_TRUST_IS_UNTRUSTED_ROOT)
+ " CERT_TRUST_IS_PARTIAL_CHAIN");
+ if(dwTrustErrorMask & CERT_TRUST_IS_UNTRUSTED_ROOT)
failf(data, "schannel: CertGetCertificateChain trust error"
- " CERT_TRUST_IS_UNTRUSTED_ROOT");
- else if(dwTrustErrorMask & CERT_TRUST_IS_NOT_TIME_VALID)
+ " CERT_TRUST_IS_UNTRUSTED_ROOT");
+ if(dwTrustErrorMask & CERT_TRUST_IS_NOT_TIME_VALID)
failf(data, "schannel: CertGetCertificateChain trust error"
- " CERT_TRUST_IS_NOT_TIME_VALID");
- else
- failf(data, "schannel: CertGetCertificateChain error mask: 0x%08x",
- dwTrustErrorMask);
+ " CERT_TRUST_IS_NOT_TIME_VALID");
+ failf(data, "schannel: CertGetCertificateChain error mask: 0x%08x",
+ dwTrustErrorMask);
result = CURLE_PEER_FAILED_VERIFICATION;
}
}
@@ -1450,14 +1329,6 @@ static CURLcode verify_certificate(struct connectdata *conn, int sockindex)
cert_hostname.const_tchar_ptr = cert_hostname_buff;
hostname.tchar_ptr = Curl_convert_UTF8_to_tchar(conn->host.name);
- /* TODO: Fix this for certificates with multiple alternative names.
- Right now we're only asking for the first preferred alternative name.
- Instead we'd need to do all via CERT_NAME_SEARCH_ALL_NAMES_FLAG
- (if WinCE supports that?) and run this section in a loop for each.
- https://msdn.microsoft.com/en-us/library/windows/desktop/aa376086.aspx
- curl: (51) schannel: CertGetNameString() certificate hostname
- (.google.com) did not match connection (google.com)
- */
len = CertGetNameString(pCertContextServer,
CERT_NAME_DNS_TYPE,
0,
diff --git a/lib/vtls/schannel.h b/lib/vtls/curl_schannel.h
index 532958483..11e83f9e5 100644
--- a/lib/vtls/schannel.h
+++ b/lib/vtls/curl_schannel.h
@@ -8,7 +8,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2012, Marc Hoersken, <info@marc-hoersken.de>, et al.
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -72,7 +72,6 @@
#define SECBUFFER_ALERT 17
#endif
-/* Both schannel buffer sizes must be > 0 */
#define CURL_SCHANNEL_BUFFER_INIT_SIZE 4096
#define CURL_SCHANNEL_BUFFER_FREE_SIZE 1024
@@ -94,9 +93,6 @@ size_t Curl_schannel_version(char *buffer, size_t size);
int Curl_schannel_random(unsigned char *entropy, size_t length);
-/* Set the API backend definition to Schannel */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_SCHANNEL
-
/* API setup for Schannel */
#define curlssl_init Curl_schannel_init
#define curlssl_cleanup Curl_schannel_cleanup
@@ -112,6 +108,7 @@ int Curl_schannel_random(unsigned char *entropy, size_t length);
#define curlssl_version Curl_schannel_version
#define curlssl_check_cxn(x) ((void)x, -1)
#define curlssl_data_pending Curl_schannel_data_pending
+#define CURL_SSL_BACKEND CURLSSLBACKEND_SCHANNEL
#define curlssl_random(x,y,z) ((void)x, Curl_schannel_random(y,z))
#endif /* USE_SCHANNEL */
diff --git a/lib/vtls/cyassl.c b/lib/vtls/cyassl.c
index 3ded7f11d..3333fc3a0 100644
--- a/lib/vtls/cyassl.c
+++ b/lib/vtls/cyassl.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -30,20 +30,6 @@
#ifdef USE_CYASSL
-#define WOLFSSL_OPTIONS_IGNORE_SYS
-/* CyaSSL's version.h, which should contain only the version, should come
-before all other CyaSSL includes and be immediately followed by build config
-aka options.h. http://curl.haxx.se/mail/lib-2015-04/0069.html */
-#include <cyassl/version.h>
-#if defined(HAVE_CYASSL_OPTIONS_H) && (LIBCYASSL_VERSION_HEX > 0x03004008)
-#if defined(CYASSL_API) || defined(WOLFSSL_API)
-/* Safety measure. If either is defined some API include was already included
-and that's a problem since options.h hasn't been included yet. */
-#error "CyaSSL API was included before the CyaSSL build options."
-#endif
-#include <cyassl/options.h>
-#endif
-
#ifdef HAVE_LIMITS_H
#include <limits.h>
#endif
@@ -57,8 +43,10 @@ and that's a problem since options.h hasn't been included yet. */
#include "connect.h" /* for the connect timeout */
#include "select.h"
#include "rawstr.h"
-#include "x509asn1.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+#include "curl_memory.h"
#include <cyassl/ssl.h>
#ifdef HAVE_CYASSL_ERROR_SSL_H
@@ -67,16 +55,10 @@ and that's a problem since options.h hasn't been included yet. */
#include <cyassl/error.h>
#endif
#include <cyassl/ctaocrypt/random.h>
-#include <cyassl/ctaocrypt/sha256.h>
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
-#if LIBCYASSL_VERSION_HEX < 0x02007002 /* < 2.7.2 */
-#define CYASSL_MAX_ERROR_SZ 80
-#endif
-
static Curl_recv cyassl_recv;
static Curl_send cyassl_send;
@@ -100,58 +82,42 @@ static CURLcode
cyassl_connect_step1(struct connectdata *conn,
int sockindex)
{
- char error_buffer[CYASSL_MAX_ERROR_SZ];
struct SessionHandle *data = conn->data;
struct ssl_connect_data* conssl = &conn->ssl[sockindex];
SSL_METHOD* req_method = NULL;
void* ssl_sessionid = NULL;
curl_socket_t sockfd = conn->sock[sockindex];
-#ifdef HAVE_SNI
- bool sni = FALSE;
-#define use_sni(x) sni = (x)
-#else
-#define use_sni(x) Curl_nop_stmt
-#endif
if(conssl->state == ssl_connection_complete)
return CURLE_OK;
+ /* CyaSSL doesn't support SSLv2 */
+ if(data->set.ssl.version == CURL_SSLVERSION_SSLv2) {
+ failf(data, "CyaSSL does not support SSLv2");
+ return CURLE_SSL_CONNECT_ERROR;
+ }
+
/* check to see if we've been told to use an explicit SSL/TLS version */
switch(data->set.ssl.version) {
+ default:
case CURL_SSLVERSION_DEFAULT:
case CURL_SSLVERSION_TLSv1:
-#if LIBCYASSL_VERSION_HEX >= 0x03003000 /* >= 3.3.0 */
- /* minimum protocol version is set later after the CTX object is created */
- req_method = SSLv23_client_method();
-#else
- infof(data, "CyaSSL <3.3.0 cannot be configured to use TLS 1.0-1.2, "
+ infof(data, "CyaSSL cannot be configured to use TLS 1.0-1.2, "
"TLS 1.0 is used exclusively\n");
req_method = TLSv1_client_method();
-#endif
- use_sni(TRUE);
break;
case CURL_SSLVERSION_TLSv1_0:
req_method = TLSv1_client_method();
- use_sni(TRUE);
break;
case CURL_SSLVERSION_TLSv1_1:
req_method = TLSv1_1_client_method();
- use_sni(TRUE);
break;
case CURL_SSLVERSION_TLSv1_2:
req_method = TLSv1_2_client_method();
- use_sni(TRUE);
break;
case CURL_SSLVERSION_SSLv3:
req_method = SSLv3_client_method();
- use_sni(FALSE);
break;
- case CURL_SSLVERSION_SSLv2:
- failf(data, "CyaSSL does not support SSLv2");
- return CURLE_SSL_CONNECT_ERROR;
- default:
- failf(data, "Unrecognized parameter passed via CURLOPT_SSLVERSION");
- return CURLE_SSL_CONNECT_ERROR;
}
if(!req_method) {
@@ -168,36 +134,15 @@ cyassl_connect_step1(struct connectdata *conn,
return CURLE_OUT_OF_MEMORY;
}
- switch(data->set.ssl.version) {
- case CURL_SSLVERSION_DEFAULT:
- case CURL_SSLVERSION_TLSv1:
-#if LIBCYASSL_VERSION_HEX > 0x03004006 /* > 3.4.6 */
- /* Versions 3.3.0 to 3.4.6 we know the minimum protocol version is whatever
- minimum version of TLS was built in and at least TLS 1.0. For later library
- versions that could change (eg TLS 1.0 built in but defaults to TLS 1.1) so
- we have this short circuit evaluation to find the minimum supported TLS
- version. We use wolfSSL_CTX_SetMinVersion and not CyaSSL_SetMinVersion
- because only the former will work before the user's CTX callback is called.
- */
- if((wolfSSL_CTX_SetMinVersion(conssl->ctx, WOLFSSL_TLSV1) != 1) &&
- (wolfSSL_CTX_SetMinVersion(conssl->ctx, WOLFSSL_TLSV1_1) != 1) &&
- (wolfSSL_CTX_SetMinVersion(conssl->ctx, WOLFSSL_TLSV1_2) != 1)) {
- failf(data, "SSL: couldn't set the minimum protocol version");
- return CURLE_SSL_CONNECT_ERROR;
- }
-#endif
- break;
- }
-
#ifndef NO_FILESYSTEM
/* load trusted cacert */
if(data->set.str[STRING_SSL_CAFILE]) {
- if(1 != SSL_CTX_load_verify_locations(conssl->ctx,
- data->set.str[STRING_SSL_CAFILE],
- data->set.str[STRING_SSL_CAPATH])) {
+ if(!SSL_CTX_load_verify_locations(conssl->ctx,
+ data->set.str[STRING_SSL_CAFILE],
+ data->set.str[STRING_SSL_CAPATH])) {
if(data->set.ssl.verifypeer) {
/* Fail if we insist on successfully verifying the server. */
- failf(data, "error setting certificate verify locations:\n"
+ failf(data,"error setting certificate verify locations:\n"
" CAfile: %s\n CApath: %s",
data->set.str[STRING_SSL_CAFILE]?
data->set.str[STRING_SSL_CAFILE]: "none",
@@ -243,7 +188,11 @@ cyassl_connect_step1(struct connectdata *conn,
return CURLE_SSL_CONNECT_ERROR;
}
}
-#endif /* !NO_FILESYSTEM */
+#else
+ if(CyaSSL_no_filesystem_verify(conssl->ctx)!= SSL_SUCCESS) {
+ return CURLE_SSL_CONNECT_ERROR;
+ }
+#endif /* NO_FILESYSTEM */
/* SSL always tries to verify the peer, this only says whether it should
* fail to connect if the verification fails, or if it should continue
@@ -253,46 +202,6 @@ cyassl_connect_step1(struct connectdata *conn,
data->set.ssl.verifypeer?SSL_VERIFY_PEER:SSL_VERIFY_NONE,
NULL);
-#ifdef HAVE_SNI
- if(sni) {
- struct in_addr addr4;
-#ifdef ENABLE_IPV6
- struct in6_addr addr6;
-#endif
- size_t hostname_len = strlen(conn->host.name);
- if((hostname_len < USHRT_MAX) &&
- (0 == Curl_inet_pton(AF_INET, conn->host.name, &addr4)) &&
-#ifdef ENABLE_IPV6
- (0 == Curl_inet_pton(AF_INET6, conn->host.name, &addr6)) &&
-#endif
- (CyaSSL_CTX_UseSNI(conssl->ctx, CYASSL_SNI_HOST_NAME, conn->host.name,
- (unsigned short)hostname_len) != 1)) {
- infof(data, "WARNING: failed to configure server name indication (SNI) "
- "TLS extension\n");
- }
- }
-#endif
-
- /* give application a chance to interfere with SSL set up. */
- if(data->set.ssl.fsslctx) {
- CURLcode result = CURLE_OK;
- result = (*data->set.ssl.fsslctx)(data, conssl->ctx,
- data->set.ssl.fsslctxp);
- if(result) {
- failf(data, "error signaled by ssl ctx callback");
- return result;
- }
- }
-#ifdef NO_FILESYSTEM
- else if(data->set.ssl.verifypeer) {
- failf(data, "SSL: Certificates couldn't be loaded because CyaSSL was built"
- " with \"no filesystem\". Either disable peer verification"
- " (insecure) or if you are building an application with libcurl you"
- " can load certificates via CURLOPT_SSL_CTX_FUNCTION.");
- return CURLE_SSL_CONNECT_ERROR;
- }
-#endif
-
/* Let's make an SSL structure */
if(conssl->handle)
SSL_free(conssl->handle);
@@ -307,7 +216,7 @@ cyassl_connect_step1(struct connectdata *conn,
/* we got a session id, use it! */
if(!SSL_set_session(conssl->handle, ssl_sessionid)) {
failf(data, "SSL: SSL_set_session failed: %s",
- ERR_error_string(SSL_get_error(conssl->handle, 0), error_buffer));
+ ERR_error_string(SSL_get_error(conssl->handle, 0),NULL));
return CURLE_SSL_CONNECT_ERROR;
}
/* Informational message */
@@ -333,6 +242,9 @@ cyassl_connect_step2(struct connectdata *conn,
struct SessionHandle *data = conn->data;
struct ssl_connect_data* conssl = &conn->ssl[sockindex];
+ infof(data, "CyaSSL: Connecting to %s:%d\n",
+ conn->host.name, conn->remote_port);
+
conn->recv[sockindex] = cyassl_recv;
conn->send[sockindex] = cyassl_send;
@@ -345,7 +257,7 @@ cyassl_connect_step2(struct connectdata *conn,
ret = SSL_connect(conssl->handle);
if(ret != 1) {
- char error_buffer[CYASSL_MAX_ERROR_SZ];
+ char error_buffer[80];
int detail = SSL_get_error(conssl->handle, ret);
if(SSL_ERROR_WANT_READ == detail) {
@@ -405,44 +317,6 @@ cyassl_connect_step2(struct connectdata *conn,
}
}
- if(data->set.str[STRING_SSL_PINNEDPUBLICKEY]) {
- X509 *x509;
- const char *x509_der;
- int x509_der_len;
- curl_X509certificate x509_parsed;
- curl_asn1Element *pubkey;
- CURLcode result;
-
- x509 = SSL_get_peer_certificate(conssl->handle);
- if(!x509) {
- failf(data, "SSL: failed retrieving server certificate");
- return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
- }
-
- x509_der = (const char *)CyaSSL_X509_get_der(x509, &x509_der_len);
- if(!x509_der) {
- failf(data, "SSL: failed retrieving ASN.1 server certificate");
- return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
- }
-
- memset(&x509_parsed, 0, sizeof x509_parsed);
- Curl_parseX509(&x509_parsed, x509_der, x509_der + x509_der_len);
-
- pubkey = &x509_parsed.subjectPublicKeyInfo;
- if(!pubkey->header || pubkey->end <= pubkey->header) {
- failf(data, "SSL: failed retrieving public key from server certificate");
- return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
- }
-
- result = Curl_pin_peer_pubkey(data->set.str[STRING_SSL_PINNEDPUBLICKEY],
- (const unsigned char *)pubkey->header,
- (size_t)(pubkey->end - pubkey->header));
- if(result) {
- failf(data, "SSL: public key does not match pinned public key!");
- return result;
- }
- }
-
conssl->connecting_state = ssl_connect_3;
infof(data, "SSL connected\n");
@@ -495,7 +369,7 @@ static ssize_t cyassl_send(struct connectdata *conn,
size_t len,
CURLcode *curlcode)
{
- char error_buffer[CYASSL_MAX_ERROR_SZ];
+ char error_buffer[80];
int memlen = (len > (size_t)INT_MAX) ? INT_MAX : (int)len;
int rc = SSL_write(conn->ssl[sockindex].handle, mem, memlen);
@@ -519,6 +393,11 @@ static ssize_t cyassl_send(struct connectdata *conn,
return rc;
}
+void Curl_cyassl_close_all(struct SessionHandle *data)
+{
+ (void)data;
+}
+
void Curl_cyassl_close(struct connectdata *conn, int sockindex)
{
struct ssl_connect_data *conssl = &conn->ssl[sockindex];
@@ -540,7 +419,7 @@ static ssize_t cyassl_recv(struct connectdata *conn,
size_t buffersize,
CURLcode *curlcode)
{
- char error_buffer[CYASSL_MAX_ERROR_SZ];
+ char error_buffer[80];
int buffsize = (buffersize > (size_t)INT_MAX) ? INT_MAX : (int)buffersize;
int nread = SSL_read(conn->ssl[num].handle, buf, buffsize);
@@ -576,9 +455,7 @@ void Curl_cyassl_session_free(void *ptr)
size_t Curl_cyassl_version(char *buffer, size_t size)
{
-#ifdef WOLFSSL_VERSION
- return snprintf(buffer, size, "wolfSSL/%s", WOLFSSL_VERSION);
-#elif defined(CYASSL_VERSION)
+#ifdef CYASSL_VERSION
return snprintf(buffer, size, "CyaSSL/%s", CYASSL_VERSION);
#else
return snprintf(buffer, size, "CyaSSL/%s", "<1.8.8");
@@ -588,7 +465,10 @@ size_t Curl_cyassl_version(char *buffer, size_t size)
int Curl_cyassl_init(void)
{
- return (CyaSSL_Init() == SSL_SUCCESS);
+ if(CyaSSL_Init() == 0)
+ return 1;
+
+ return -1;
}
@@ -764,23 +644,9 @@ int Curl_cyassl_random(struct SessionHandle *data,
(void)data;
if(InitRng(&rng))
return 1;
- if(length > UINT_MAX)
- return 1;
- if(RNG_GenerateBlock(&rng, entropy, (unsigned)length))
+ if(RNG_GenerateBlock(&rng, entropy, length))
return 1;
return 0;
}
-void Curl_cyassl_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum /* output */,
- size_t unused)
-{
- Sha256 SHA256pw;
- (void)unused;
- InitSha256(&SHA256pw);
- Sha256Update(&SHA256pw, tmp, tmplen);
- Sha256Final(&SHA256pw, sha256sum);
-}
-
#endif
diff --git a/lib/vtls/cyassl.h b/lib/vtls/cyassl.h
index 167de74f3..a691e16c3 100644
--- a/lib/vtls/cyassl.h
+++ b/lib/vtls/cyassl.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -26,9 +26,13 @@
#ifdef USE_CYASSL
CURLcode Curl_cyassl_connect(struct connectdata *conn, int sockindex);
-bool Curl_cyassl_data_pending(const struct connectdata* conn, int connindex);
+bool Curl_cyassl_data_pending(const struct connectdata* conn,int connindex);
int Curl_cyassl_shutdown(struct connectdata* conn, int sockindex);
+/* tell CyaSSL to close down all open information regarding connections (and
+ thus session ID caching etc) */
+void Curl_cyassl_close_all(struct SessionHandle *data);
+
/* close a SSL connection */
void Curl_cyassl_close(struct connectdata *conn, int sockindex);
@@ -42,16 +46,6 @@ CURLcode Curl_cyassl_connect_nonblocking(struct connectdata *conn,
int Curl_cyassl_random(struct SessionHandle *data,
unsigned char *entropy,
size_t length);
-void Curl_cyassl_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum, /* output */
- size_t unused);
-
-/* Set the API backend definition to Schannel */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_CYASSL
-
-/* this backend supports CURLOPT_SSL_CTX_* */
-#define have_curlssl_ssl_ctx 1
/* API setup for CyaSSL */
#define curlssl_init Curl_cyassl_init
@@ -59,7 +53,7 @@ void Curl_cyassl_sha256sum(const unsigned char *tmp, /* input */
#define curlssl_connect Curl_cyassl_connect
#define curlssl_connect_nonblocking Curl_cyassl_connect_nonblocking
#define curlssl_session_free(x) Curl_cyassl_session_free(x)
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_cyassl_close_all
#define curlssl_close Curl_cyassl_close
#define curlssl_shutdown(x,y) Curl_cyassl_shutdown(x,y)
#define curlssl_set_engine(x,y) ((void)x, (void)y, CURLE_NOT_BUILT_IN)
@@ -69,7 +63,7 @@ void Curl_cyassl_sha256sum(const unsigned char *tmp, /* input */
#define curlssl_check_cxn(x) ((void)x, -1)
#define curlssl_data_pending(x,y) Curl_cyassl_data_pending(x,y)
#define curlssl_random(x,y,z) Curl_cyassl_random(x,y,z)
-#define curlssl_sha256sum(a,b,c,d) Curl_cyassl_sha256sum(a,b,c,d)
+#define CURL_SSL_BACKEND CURLSSLBACKEND_CYASSL
#endif /* USE_CYASSL */
#endif /* HEADER_CURL_CYASSL_H */
diff --git a/lib/vtls/gskit.c b/lib/vtls/gskit.c
index d884bd4c4..ac05f05bb 100644
--- a/lib/vtls/gskit.c
+++ b/lib/vtls/gskit.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -74,7 +74,9 @@
#include "select.h"
#include "strequal.h"
#include "x509asn1.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
@@ -623,7 +625,7 @@ static CURLcode gskit_connect_step1(struct connectdata *conn, int sockindex)
sni = (char *) NULL;
break;
case CURL_SSLVERSION_SSLv3:
- protoflags = CURL_GSKPROTO_SSLV3_MASK;
+ protoflags = CURL_GSKPROTO_SSLV2_MASK;
sni = (char *) NULL;
break;
case CURL_SSLVERSION_TLSv1:
@@ -984,6 +986,13 @@ void Curl_gskit_close(struct connectdata *conn, int sockindex)
}
+void Curl_gskit_close_all(struct SessionHandle *data)
+{
+ /* Unimplemented. */
+ (void) data;
+}
+
+
int Curl_gskit_shutdown(struct connectdata *conn, int sockindex)
{
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
diff --git a/lib/vtls/gskit.h b/lib/vtls/gskit.h
index af31fafad..baec82323 100644
--- a/lib/vtls/gskit.h
+++ b/lib/vtls/gskit.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -32,17 +32,15 @@
#ifdef USE_GSKIT
int Curl_gskit_init(void);
void Curl_gskit_cleanup(void);
-CURLcode Curl_gskit_connect(struct connectdata *conn, int sockindex);
-CURLcode Curl_gskit_connect_nonblocking(struct connectdata *conn,
- int sockindex, bool *done);
+CURLcode Curl_gskit_connect(struct connectdata * conn, int sockindex);
+CURLcode Curl_gskit_connect_nonblocking(struct connectdata * conn,
+ int sockindex, bool * done);
void Curl_gskit_close(struct connectdata *conn, int sockindex);
-int Curl_gskit_shutdown(struct connectdata *conn, int sockindex);
+void Curl_gskit_close_all(struct SessionHandle * data);
+int Curl_gskit_shutdown(struct connectdata * conn, int sockindex);
-size_t Curl_gskit_version(char *buffer, size_t size);
-int Curl_gskit_check_cxn(struct connectdata *cxn);
-
-/* Set the API backend definition to GSKit */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_GSKIT
+size_t Curl_gskit_version(char * buffer, size_t size);
+int Curl_gskit_check_cxn(struct connectdata * cxn);
/* this backend supports CURLOPT_CERTINFO */
#define have_curlssl_certinfo 1
@@ -55,7 +53,7 @@ int Curl_gskit_check_cxn(struct connectdata *cxn);
/* No session handling for GSKit */
#define curlssl_session_free(x) Curl_nop_stmt
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_gskit_close_all
#define curlssl_close Curl_gskit_close
#define curlssl_shutdown(x,y) Curl_gskit_shutdown(x,y)
#define curlssl_set_engine(x,y) CURLE_NOT_BUILT_IN
@@ -65,7 +63,7 @@ int Curl_gskit_check_cxn(struct connectdata *cxn);
#define curlssl_check_cxn(x) Curl_gskit_check_cxn(x)
#define curlssl_data_pending(x,y) 0
#define curlssl_random(x,y,z) -1
-
+#define CURL_SSL_BACKEND CURLSSLBACKEND_GSKIT
#endif /* USE_GSKIT */
#endif /* HEADER_CURL_GSKIT_H */
diff --git a/lib/vtls/gtls.c b/lib/vtls/gtls.c
index c54dfc1d2..5d4e48a25 100644
--- a/lib/vtls/gtls.c
+++ b/lib/vtls/gtls.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -39,7 +39,6 @@
#ifdef USE_GNUTLS_NETTLE
#include <gnutls/crypto.h>
#include <nettle/md5.h>
-#include <nettle/sha2.h>
#else
#include <gcrypt.h>
#endif
@@ -54,8 +53,9 @@
#include "select.h"
#include "rawstr.h"
#include "warnless.h"
-#include "x509asn1.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -92,23 +92,14 @@ static bool gtls_inited = FALSE;
# define GNUTLS_MAPS_WINSOCK_ERRORS 1
# endif
-# if (GNUTLS_VERSION_NUMBER >= 0x030200)
-# define HAS_ALPN
-# endif
-
-# if (GNUTLS_VERSION_NUMBER >= 0x03020d)
-# define HAS_OCSP
-# endif
-
-# if (GNUTLS_VERSION_NUMBER >= 0x030306)
-# define HAS_CAPATH
+# ifdef USE_NGHTTP2
+# undef HAS_ALPN
+# if (GNUTLS_VERSION_NUMBER >= 0x030200)
+# define HAS_ALPN
+# endif
# endif
#endif
-#ifdef HAS_OCSP
-# include <gnutls/ocsp.h>
-#endif
-
/*
* Custom push and pull callback functions used by GNU TLS to read and write
* to the socket. These functions are simple wrappers to send() and recv()
@@ -213,7 +204,7 @@ static void showtime(struct SessionHandle *data,
snprintf(data->state.buffer,
BUFSIZE,
- "\t %s: %s, %02d %s %4d %02d:%02d:%02d GMT",
+ "\t %s: %s, %02d %s %4d %02d:%02d:%02d GMT\n",
text,
Curl_wkday[tm->tm_wday?tm->tm_wday-1:6],
tm->tm_mday,
@@ -232,7 +223,7 @@ static gnutls_datum_t load_file (const char *file)
long filelen;
void *ptr;
- if(!(f = fopen(file, "rb")))
+ if(!(f = fopen(file, "r")))
return loaded_file;
if(fseek(f, 0, SEEK_END) != 0
|| (filelen = ftell(f)) < 0
@@ -328,8 +319,7 @@ static CURLcode handshake(struct connectdata *conn,
if(strerr == NULL)
strerr = gnutls_strerror(rc);
- infof(data, "gnutls_handshake() warning: %s\n", strerr);
- continue;
+ failf(data, "gnutls_handshake() warning: %s", strerr);
}
else if(rc < 0) {
const char *strerr = NULL;
@@ -402,6 +392,10 @@ gtls_connect_step1(struct connectdata *conn,
const char* prioritylist;
const char *err = NULL;
#endif
+#ifdef HAS_ALPN
+ int protocols_size = 2;
+ gnutls_datum_t protocols[2];
+#endif
if(conn->ssl[sockindex].state == ssl_connection_complete)
/* to make us tolerant against being called more than once for the
@@ -469,24 +463,6 @@ gtls_connect_step1(struct connectdata *conn,
rc, data->set.ssl.CAfile);
}
-#ifdef HAS_CAPATH
- if(data->set.ssl.CApath) {
- /* set the trusted CA cert directory */
- rc = gnutls_certificate_set_x509_trust_dir(conn->ssl[sockindex].cred,
- data->set.ssl.CApath,
- GNUTLS_X509_FMT_PEM);
- if(rc < 0) {
- infof(data, "error reading ca cert file %s (%s)\n",
- data->set.ssl.CAfile, gnutls_strerror(rc));
- if(data->set.ssl.verifypeer)
- return CURLE_SSL_CACERT_BADFILE;
- }
- else
- infof(data, "found %d certificates in %s\n",
- rc, data->set.ssl.CApath);
- }
-#endif
-
if(data->set.ssl.CRLfile) {
/* set the CRL list file */
rc = gnutls_certificate_set_x509_crl_file(conn->ssl[sockindex].cred,
@@ -633,25 +609,20 @@ gtls_connect_step1(struct connectdata *conn,
#endif
#ifdef HAS_ALPN
- if(data->set.ssl_enable_alpn) {
- int cur = 0;
- gnutls_datum_t protocols[2];
-
-#ifdef USE_NGHTTP2
- if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
- protocols[cur].data = (unsigned char *)NGHTTP2_PROTO_VERSION_ID;
- protocols[cur].size = NGHTTP2_PROTO_VERSION_ID_LEN;
- cur++;
- infof(data, "ALPN, offering %s\n", NGHTTP2_PROTO_VERSION_ID);
+ if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
+ if(data->set.ssl_enable_alpn) {
+ protocols[0].data = NGHTTP2_PROTO_VERSION_ID;
+ protocols[0].size = NGHTTP2_PROTO_VERSION_ID_LEN;
+ protocols[1].data = ALPN_HTTP_1_1;
+ protocols[1].size = ALPN_HTTP_1_1_LENGTH;
+ gnutls_alpn_set_protocols(session, protocols, protocols_size, 0);
+ infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
+ ALPN_HTTP_1_1);
+ connssl->asked_for_h2 = TRUE;
+ }
+ else {
+ infof(data, "SSL, can't negotiate HTTP/2.0 without ALPN\n");
}
-#endif
-
- protocols[cur].data = (unsigned char *)ALPN_HTTP_1_1;
- protocols[cur].size = ALPN_HTTP_1_1_LENGTH;
- cur++;
- infof(data, "ALPN, offering %s\n", ALPN_HTTP_1_1);
-
- gnutls_alpn_set_protocols(session, protocols, cur, 0);
}
#endif
@@ -673,21 +644,13 @@ gtls_connect_step1(struct connectdata *conn,
if(data->set.ssl.authtype == CURL_TLSAUTH_SRP) {
rc = gnutls_credentials_set(session, GNUTLS_CRD_SRP,
conn->ssl[sockindex].srp_client_cred);
- if(rc != GNUTLS_E_SUCCESS) {
+ if(rc != GNUTLS_E_SUCCESS)
failf(data, "gnutls_credentials_set() failed: %s", gnutls_strerror(rc));
- return CURLE_SSL_CONNECT_ERROR;
- }
}
else
#endif
- {
rc = gnutls_credentials_set(session, GNUTLS_CRD_CERTIFICATE,
conn->ssl[sockindex].cred);
- if(rc != GNUTLS_E_SUCCESS) {
- failf(data, "gnutls_credentials_set() failed: %s", gnutls_strerror(rc));
- return CURLE_SSL_CONNECT_ERROR;
- }
- }
/* set the connection handle (file descriptor for the socket) */
gnutls_transport_set_ptr(session,
@@ -700,16 +663,6 @@ gtls_connect_step1(struct connectdata *conn,
/* lowat must be set to zero when using custom push and pull functions. */
gnutls_transport_set_lowat(session, 0);
-#ifdef HAS_OCSP
- if(data->set.ssl.verifystatus) {
- rc = gnutls_ocsp_status_request_enable_client(session, NULL, 0, NULL);
- if(rc != GNUTLS_E_SUCCESS) {
- failf(data, "gnutls_ocsp_status_request_enable_client() failed: %d", rc);
- return CURLE_SSL_CONNECT_ERROR;
- }
- }
-#endif
-
/* This might be a reconnect, so we check for a session ID in the cache
to speed up things */
@@ -789,8 +742,8 @@ gtls_connect_step3(struct connectdata *conn,
{
unsigned int cert_list_size;
const gnutls_datum_t *chainp;
- unsigned int verify_status = 0;
- gnutls_x509_crt_t x509_cert, x509_issuer;
+ unsigned int verify_status;
+ gnutls_x509_crt_t x509_cert,x509_issuer;
gnutls_datum_t issuerp;
char certbuf[256] = ""; /* big enough? */
size_t size;
@@ -808,16 +761,6 @@ gtls_connect_step3(struct connectdata *conn,
#endif
CURLcode result = CURLE_OK;
- gnutls_protocol_t version = gnutls_protocol_get_version(session);
-
- /* the name of the cipher suite used, e.g. ECDHE_RSA_AES_256_GCM_SHA384. */
- ptr = gnutls_cipher_suite_get_name(gnutls_kx_get(session),
- gnutls_cipher_get(session),
- gnutls_mac_get(session));
-
- infof(data, "SSL connection using %s / %s\n",
- gnutls_protocol_get_name(version), ptr);
-
/* This function will return the peer's raw certificate (chain) as sent by
the peer. These certificates are in raw format (DER encoded for
X.509). In case of a X.509 then a certificate list may be present. The
@@ -848,23 +791,6 @@ gtls_connect_step3(struct connectdata *conn,
infof(data, "\t common name: WARNING couldn't obtain\n");
}
- if(data->set.ssl.certinfo && chainp) {
- unsigned int i;
-
- result = Curl_ssl_init_certinfo(data, cert_list_size);
- if(result)
- return result;
-
- for(i = 0; i < cert_list_size; i++) {
- const char *beg = (const char *) chainp[i].data;
- const char *end = beg + chainp[i].size;
-
- result = Curl_extract_certinfo(conn, i, beg, end);
- if(result)
- return result;
- }
- }
-
if(data->set.ssl.verifypeer) {
/* This function will try to verify the peer's certificate and return its
status (trusted, invalid etc.). The value of status should be one or
@@ -896,111 +822,6 @@ gtls_connect_step3(struct connectdata *conn,
else
infof(data, "\t server certificate verification SKIPPED\n");
-#ifdef HAS_OCSP
- if(data->set.ssl.verifystatus) {
- if(gnutls_ocsp_status_request_is_checked(session, 0) == 0) {
- gnutls_datum_t status_request;
- gnutls_ocsp_resp_t ocsp_resp;
-
- gnutls_ocsp_cert_status_t status;
- gnutls_x509_crl_reason_t reason;
-
- rc = gnutls_ocsp_status_request_get(session, &status_request);
-
- infof(data, "\t server certificate status verification FAILED\n");
-
- if(rc == GNUTLS_E_REQUESTED_DATA_NOT_AVAILABLE) {
- failf(data, "No OCSP response received");
- return CURLE_SSL_INVALIDCERTSTATUS;
- }
-
- if(rc < 0) {
- failf(data, "Invalid OCSP response received");
- return CURLE_SSL_INVALIDCERTSTATUS;
- }
-
- gnutls_ocsp_resp_init(&ocsp_resp);
-
- rc = gnutls_ocsp_resp_import(ocsp_resp, &status_request);
- if(rc < 0) {
- failf(data, "Invalid OCSP response received");
- return CURLE_SSL_INVALIDCERTSTATUS;
- }
-
- rc = gnutls_ocsp_resp_get_single(ocsp_resp, 0, NULL, NULL, NULL, NULL,
- &status, NULL, NULL, NULL, &reason);
-
- switch(status) {
- case GNUTLS_OCSP_CERT_GOOD:
- break;
-
- case GNUTLS_OCSP_CERT_REVOKED: {
- const char *crl_reason;
-
- switch(reason) {
- default:
- case GNUTLS_X509_CRLREASON_UNSPECIFIED:
- crl_reason = "unspecified reason";
- break;
-
- case GNUTLS_X509_CRLREASON_KEYCOMPROMISE:
- crl_reason = "private key compromised";
- break;
-
- case GNUTLS_X509_CRLREASON_CACOMPROMISE:
- crl_reason = "CA compromised";
- break;
-
- case GNUTLS_X509_CRLREASON_AFFILIATIONCHANGED:
- crl_reason = "affiliation has changed";
- break;
-
- case GNUTLS_X509_CRLREASON_SUPERSEDED:
- crl_reason = "certificate superseded";
- break;
-
- case GNUTLS_X509_CRLREASON_CESSATIONOFOPERATION:
- crl_reason = "operation has ceased";
- break;
-
- case GNUTLS_X509_CRLREASON_CERTIFICATEHOLD:
- crl_reason = "certificate is on hold";
- break;
-
- case GNUTLS_X509_CRLREASON_REMOVEFROMCRL:
- crl_reason = "will be removed from delta CRL";
- break;
-
- case GNUTLS_X509_CRLREASON_PRIVILEGEWITHDRAWN:
- crl_reason = "privilege withdrawn";
- break;
-
- case GNUTLS_X509_CRLREASON_AACOMPROMISE:
- crl_reason = "AA compromised";
- break;
- }
-
- failf(data, "Server certificate was revoked: %s", crl_reason);
- break;
- }
-
- default:
- case GNUTLS_OCSP_CERT_UNKNOWN:
- failf(data, "Server certificate status is unknown");
- break;
- }
-
- gnutls_ocsp_resp_deinit(ocsp_resp);
-
- return CURLE_SSL_INVALIDCERTSTATUS;
- }
- else
- infof(data, "\t server certificate status verification OK\n");
- }
- else
- infof(data, "\t server certificate status verification SKIPPED\n");
-#endif
-
/* initialize an X.509 certificate structure. */
gnutls_x509_crt_init(&x509_cert);
@@ -1013,7 +834,7 @@ gtls_connect_step3(struct connectdata *conn,
gnutls_x509_crt_init(&x509_issuer);
issuerp = load_file(data->set.ssl.issuercert);
gnutls_x509_crt_import(x509_issuer, &issuerp, GNUTLS_X509_FMT_PEM);
- rc = gnutls_x509_crt_check_issuer(x509_cert, x509_issuer);
+ rc = gnutls_x509_crt_check_issuer(x509_cert,x509_issuer);
gnutls_x509_crt_deinit(x509_issuer);
unload_file(issuerp);
if(rc <= 0) {
@@ -1022,7 +843,7 @@ gtls_connect_step3(struct connectdata *conn,
gnutls_x509_crt_deinit(x509_cert);
return CURLE_SSL_ISSUER_ERROR;
}
- infof(data, "\t server certificate issuer check OK (Issuer Cert: %s)\n",
+ infof(data,"\t server certificate issuer check OK (Issuer Cert: %s)\n",
data->set.ssl.issuercert?data->set.ssl.issuercert:"none");
}
@@ -1162,6 +983,7 @@ gtls_connect_step3(struct connectdata *conn,
/* Show:
+ - ciphers used
- subject
- start date
- expire date
@@ -1201,6 +1023,14 @@ gtls_connect_step3(struct connectdata *conn,
/* the *_get_name() says "NULL" if GNUTLS_COMP_NULL is returned */
infof(data, "\t compression: %s\n", ptr);
+ /* the name of the cipher used. ie 3DES. */
+ ptr = gnutls_cipher_get_name(gnutls_cipher_get(session));
+ infof(data, "\t cipher: %s\n", ptr);
+
+ /* the MAC algorithms name. ie SHA1 */
+ ptr = gnutls_mac_get_name(gnutls_mac_get(session));
+ infof(data, "\t MAC: %s\n", ptr);
+
#ifdef HAS_ALPN
if(data->set.ssl_enable_alpn) {
rc = gnutls_alpn_get_selected_protocol(session, &proto);
@@ -1208,21 +1038,19 @@ gtls_connect_step3(struct connectdata *conn,
infof(data, "ALPN, server accepted to use %.*s\n", proto.size,
proto.data);
-#ifdef USE_NGHTTP2
if(proto.size == NGHTTP2_PROTO_VERSION_ID_LEN &&
- !memcmp(NGHTTP2_PROTO_VERSION_ID, proto.data,
- NGHTTP2_PROTO_VERSION_ID_LEN)) {
- conn->negnpn = CURL_HTTP_VERSION_2_0;
+ memcmp(NGHTTP2_PROTO_VERSION_ID, proto.data,
+ NGHTTP2_PROTO_VERSION_ID_LEN) == 0) {
+ conn->negnpn = NPN_HTTP2;
}
- else
-#endif
- if(proto.size == ALPN_HTTP_1_1_LENGTH &&
- !memcmp(ALPN_HTTP_1_1, proto.data, ALPN_HTTP_1_1_LENGTH)) {
- conn->negnpn = CURL_HTTP_VERSION_1_1;
+ else if(proto.size == ALPN_HTTP_1_1_LENGTH && memcmp(ALPN_HTTP_1_1,
+ proto.data, ALPN_HTTP_1_1_LENGTH) == 0) {
+ conn->negnpn = NPN_HTTP1_1;
}
}
- else
+ else if(connssl->asked_for_h2) {
infof(data, "ALPN, server did not agree to a protocol\n");
+ }
}
#endif
@@ -1354,6 +1182,12 @@ static ssize_t gtls_send(struct connectdata *conn,
return rc;
}
+void Curl_gtls_close_all(struct SessionHandle *data)
+{
+ /* FIX: make the OpenSSL code more generic and use parts of it here */
+ (void)data;
+}
+
static void close_one(struct connectdata *conn,
int idx)
{
@@ -1558,32 +1392,4 @@ void Curl_gtls_md5sum(unsigned char *tmp, /* input */
#endif
}
-void Curl_gtls_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum, /* output */
- size_t sha256len)
-{
-#if defined(USE_GNUTLS_NETTLE)
- struct sha256_ctx SHA256pw;
- sha256_init(&SHA256pw);
- sha256_update(&SHA256pw, (unsigned int)tmplen, tmp);
- sha256_digest(&SHA256pw, (unsigned int)sha256len, sha256sum);
-#elif defined(USE_GNUTLS)
- gcry_md_hd_t SHA256pw;
- gcry_md_open(&SHA256pw, GCRY_MD_SHA256, 0);
- gcry_md_write(SHA256pw, tmp, tmplen);
- memcpy(sha256sum, gcry_md_read (SHA256pw, 0), sha256len);
- gcry_md_close(SHA256pw);
-#endif
-}
-
-bool Curl_gtls_cert_status_request(void)
-{
-#ifdef HAS_OCSP
- return TRUE;
-#else
- return FALSE;
-#endif
-}
-
#endif /* USE_GNUTLS */
diff --git a/lib/vtls/gtls.h b/lib/vtls/gtls.h
index 0afd9b94a..12460beda 100644
--- a/lib/vtls/gtls.h
+++ b/lib/vtls/gtls.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -35,6 +35,10 @@ CURLcode Curl_gtls_connect_nonblocking(struct connectdata *conn,
int sockindex,
bool *done);
+/* tell GnuTLS to close down all open information regarding connections (and
+ thus session ID caching etc) */
+void Curl_gtls_close_all(struct SessionHandle *data);
+
/* close a SSL connection */
void Curl_gtls_close(struct connectdata *conn, int sockindex);
@@ -48,21 +52,6 @@ void Curl_gtls_md5sum(unsigned char *tmp, /* input */
size_t tmplen,
unsigned char *md5sum, /* output */
size_t md5len);
-void Curl_gtls_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum, /* output */
- size_t sha256len);
-
-bool Curl_gtls_cert_status_request(void);
-
-/* Set the API backend definition to GnuTLS */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_GNUTLS
-
-/* this backend supports the CAPATH option */
-#define have_curlssl_ca_path 1
-
-/* this backend supports CURLOPT_CERTINFO */
-#define have_curlssl_certinfo 1
/* API setup for GnuTLS */
#define curlssl_init Curl_gtls_init
@@ -70,7 +59,7 @@ bool Curl_gtls_cert_status_request(void);
#define curlssl_connect Curl_gtls_connect
#define curlssl_connect_nonblocking Curl_gtls_connect_nonblocking
#define curlssl_session_free(x) Curl_gtls_session_free(x)
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_gtls_close_all
#define curlssl_close Curl_gtls_close
#define curlssl_shutdown(x,y) Curl_gtls_shutdown(x,y)
#define curlssl_set_engine(x,y) ((void)x, (void)y, CURLE_NOT_BUILT_IN)
@@ -81,8 +70,7 @@ bool Curl_gtls_cert_status_request(void);
#define curlssl_data_pending(x,y) ((void)x, (void)y, 0)
#define curlssl_random(x,y,z) Curl_gtls_random(x,y,z)
#define curlssl_md5sum(a,b,c,d) Curl_gtls_md5sum(a,b,c,d)
-#define curlssl_sha256sum(a,b,c,d) Curl_gtls_sha256sum(a,b,c,d)
-#define curlssl_cert_status_request() Curl_gtls_cert_status_request()
+#define CURL_SSL_BACKEND CURLSSLBACKEND_GNUTLS
#endif /* USE_GNUTLS */
#endif /* HEADER_CURL_GTLS_H */
diff --git a/lib/vtls/nss.c b/lib/vtls/nss.c
index 91727c7c3..dd83a9d68 100644
--- a/lib/vtls/nss.c
+++ b/lib/vtls/nss.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -38,7 +38,10 @@
#include "select.h"
#include "vtls.h"
#include "llist.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use the internal *printf() functions */
+#include <curl/mprintf.h>
+
#include "nssg.h"
#include <nspr.h>
#include <nss.h>
@@ -56,20 +59,13 @@
#include <base64.h>
#include <cert.h>
#include <prerror.h>
-#include <keyhi.h> /* for SECKEY_DestroyPublicKey() */
-
-#define NSSVERNUM ((NSS_VMAJOR<<16)|(NSS_VMINOR<<8)|NSS_VPATCH)
-
-#if NSSVERNUM >= 0x030f00 /* 3.15.0 */
-#include <ocsp.h>
-#endif
+#include "curl_memory.h"
#include "rawstr.h"
#include "warnless.h"
#include "x509asn1.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
#define SSL_DIR "/etc/pki/nssdb"
@@ -643,34 +639,6 @@ static SECStatus nss_auth_cert_hook(void *arg, PRFileDesc *fd, PRBool checksig,
PRBool isServer)
{
struct connectdata *conn = (struct connectdata *)arg;
-
-#ifdef SSL_ENABLE_OCSP_STAPLING
- if(conn->data->set.ssl.verifystatus) {
- SECStatus cacheResult;
-
- const SECItemArray *csa = SSL_PeerStapledOCSPResponses(fd);
- if(!csa) {
- failf(conn->data, "Invalid OCSP response");
- return SECFailure;
- }
-
- if(csa->len == 0) {
- failf(conn->data, "No OCSP response received");
- return SECFailure;
- }
-
- cacheResult = CERT_CacheOCSPResponseFromSideChannel(
- CERT_GetDefaultCertDB(), SSL_PeerCertificate(fd),
- PR_Now(), &csa->items[0], arg
- );
-
- if(cacheResult != SECSuccess) {
- failf(conn->data, "Invalid OCSP response");
- return cacheResult;
- }
- }
-#endif
-
if(!conn->data->set.ssl.verifypeer) {
infof(conn->data, "skipping SSL peer certificate verification\n");
return SECSuccess;
@@ -684,6 +652,7 @@ static SECStatus nss_auth_cert_hook(void *arg, PRFileDesc *fd, PRBool checksig,
*/
static void HandshakeCallback(PRFileDesc *sock, void *arg)
{
+#ifdef USE_NGHTTP2
struct connectdata *conn = (struct connectdata*) arg;
unsigned int buflenmax = 50;
unsigned char buf[50];
@@ -699,7 +668,8 @@ static void HandshakeCallback(PRFileDesc *sock, void *arg)
switch(state) {
case SSL_NEXT_PROTO_NO_SUPPORT:
case SSL_NEXT_PROTO_NO_OVERLAP:
- infof(conn->data, "ALPN/NPN, server did not agree to a protocol\n");
+ if(connssl->asked_for_h2)
+ infof(conn->data, "TLS, neither ALPN nor NPN succeeded\n");
return;
#ifdef SSL_ENABLE_ALPN
case SSL_NEXT_PROTO_SELECTED:
@@ -711,79 +681,21 @@ static void HandshakeCallback(PRFileDesc *sock, void *arg)
break;
}
-#ifdef USE_NGHTTP2
if(buflen == NGHTTP2_PROTO_VERSION_ID_LEN &&
- !memcmp(NGHTTP2_PROTO_VERSION_ID, buf, NGHTTP2_PROTO_VERSION_ID_LEN)) {
- conn->negnpn = CURL_HTTP_VERSION_2_0;
+ memcmp(NGHTTP2_PROTO_VERSION_ID, buf, NGHTTP2_PROTO_VERSION_ID_LEN)
+ == 0) {
+ conn->negnpn = NPN_HTTP2;
}
- else
-#endif
- if(buflen == ALPN_HTTP_1_1_LENGTH &&
- !memcmp(ALPN_HTTP_1_1, buf, ALPN_HTTP_1_1_LENGTH)) {
- conn->negnpn = CURL_HTTP_VERSION_1_1;
+ else if(buflen == ALPN_HTTP_1_1_LENGTH && memcmp(ALPN_HTTP_1_1, buf,
+ ALPN_HTTP_1_1_LENGTH)) {
+ conn->negnpn = NPN_HTTP1_1;
}
}
-}
-
-#if NSSVERNUM >= 0x030f04 /* 3.15.4 */
-static SECStatus CanFalseStartCallback(PRFileDesc *sock, void *client_data,
- PRBool *canFalseStart)
-{
- struct connectdata *conn = client_data;
- struct SessionHandle *data = conn->data;
-
- SSLChannelInfo channelInfo;
- SSLCipherSuiteInfo cipherInfo;
-
- SECStatus rv;
- PRBool negotiatedExtension;
-
- *canFalseStart = PR_FALSE;
-
- if(SSL_GetChannelInfo(sock, &channelInfo, sizeof(channelInfo)) != SECSuccess)
- return SECFailure;
-
- if(SSL_GetCipherSuiteInfo(channelInfo.cipherSuite, &cipherInfo,
- sizeof(cipherInfo)) != SECSuccess)
- return SECFailure;
-
- /* Prevent version downgrade attacks from TLS 1.2, and avoid False Start for
- * TLS 1.3 and later. See https://bugzilla.mozilla.org/show_bug.cgi?id=861310
- */
- if(channelInfo.protocolVersion != SSL_LIBRARY_VERSION_TLS_1_2)
- goto end;
-
- /* Only allow ECDHE key exchange algorithm.
- * See https://bugzilla.mozilla.org/show_bug.cgi?id=952863 */
- if(cipherInfo.keaType != ssl_kea_ecdh)
- goto end;
-
- /* Prevent downgrade attacks on the symmetric cipher. We do not allow CBC
- * mode due to BEAST, POODLE, and other attacks on the MAC-then-Encrypt
- * design. See https://bugzilla.mozilla.org/show_bug.cgi?id=1109766 */
- if(cipherInfo.symCipher != ssl_calg_aes_gcm)
- goto end;
-
- /* Enforce ALPN or NPN to do False Start, as an indicator of server
- * compatibility. */
- rv = SSL_HandshakeNegotiatedExtension(sock, ssl_app_layer_protocol_xtn,
- &negotiatedExtension);
- if(rv != SECSuccess || !negotiatedExtension) {
- rv = SSL_HandshakeNegotiatedExtension(sock, ssl_next_proto_nego_xtn,
- &negotiatedExtension);
- }
-
- if(rv != SECSuccess || !negotiatedExtension)
- goto end;
-
- *canFalseStart = PR_TRUE;
-
- infof(data, "Trying TLS False Start\n");
-
-end:
- return SECSuccess;
-}
+#else
+ (void)sock;
+ (void)arg;
#endif
+}
static void display_cert_info(struct SessionHandle *data,
CERTCertificate *cert)
@@ -918,7 +830,7 @@ static SECStatus BadCertHandler(void *arg, PRFileDesc *sock)
static SECStatus check_issuer_cert(PRFileDesc *sock,
char *issuer_nickname)
{
- CERTCertificate *cert, *cert_issuer, *issuer;
+ CERTCertificate *cert,*cert_issuer,*issuer;
SECStatus res=SECSuccess;
void *proto_win = NULL;
@@ -929,7 +841,7 @@ static SECStatus check_issuer_cert(PRFileDesc *sock,
*/
cert = SSL_PeerCertificate(sock);
- cert_issuer = CERT_FindCertIssuer(cert, PR_Now(), certUsageObjectSigner);
+ cert_issuer = CERT_FindCertIssuer(cert,PR_Now(),certUsageObjectSigner);
proto_win = SSL_RevealPinArg(sock);
issuer = PK11_FindCertFromNickname(issuer_nickname, proto_win);
@@ -946,53 +858,6 @@ static SECStatus check_issuer_cert(PRFileDesc *sock,
return res;
}
-static CURLcode cmp_peer_pubkey(struct ssl_connect_data *connssl,
- const char *pinnedpubkey)
-{
- CURLcode result = CURLE_SSL_PINNEDPUBKEYNOTMATCH;
- struct SessionHandle *data = connssl->data;
- CERTCertificate *cert;
-
- if(!pinnedpubkey)
- /* no pinned public key specified */
- return CURLE_OK;
-
- /* get peer certificate */
- cert = SSL_PeerCertificate(connssl->handle);
- if(cert) {
- /* extract public key from peer certificate */
- SECKEYPublicKey *pubkey = CERT_ExtractPublicKey(cert);
- if(pubkey) {
- /* encode the public key as DER */
- SECItem *cert_der = PK11_DEREncodePublicKey(pubkey);
- if(cert_der) {
- /* compare the public key with the pinned public key */
- result = Curl_pin_peer_pubkey(pinnedpubkey,
- cert_der->data,
- cert_der->len);
- SECITEM_FreeItem(cert_der, PR_TRUE);
- }
- SECKEY_DestroyPublicKey(pubkey);
- }
- CERT_DestroyCertificate(cert);
- }
-
- /* report the resulting status */
- switch(result) {
- case CURLE_OK:
- infof(data, "pinned public key verified successfully!\n");
- break;
- case CURLE_SSL_PINNEDPUBKEYNOTMATCH:
- failf(data, "failed to verify pinned public key");
- break;
- default:
- /* OOM, etc. */
- break;
- }
-
- return result;
-}
-
/**
*
* Callback to pick the SSL client certificate.
@@ -1134,7 +999,6 @@ static PRStatus nspr_io_close(PRFileDesc *fd)
return close_fn(fd);
}
-/* data might be NULL */
static CURLcode nss_init_core(struct SessionHandle *data, const char *cert_dir)
{
NSSInitParameters initparams;
@@ -1172,7 +1036,6 @@ static CURLcode nss_init_core(struct SessionHandle *data, const char *cert_dir)
return CURLE_SSL_CACERT_BADFILE;
}
-/* data might be NULL */
static CURLcode nss_init(struct SessionHandle *data)
{
char *cert_dir;
@@ -1251,14 +1114,12 @@ int Curl_nss_init(void)
return 1;
}
-/* data might be NULL */
CURLcode Curl_nss_force_init(struct SessionHandle *data)
{
CURLcode result;
if(!nss_initlock) {
- if(data)
- failf(data, "unable to initialize NSS, curl_global_init() should have "
- "been called with CURL_GLOBAL_SSL or CURL_GLOBAL_ALL");
+ failf(data, "unable to initialize NSS, curl_global_init() should have "
+ "been called with CURL_GLOBAL_SSL or CURL_GLOBAL_ALL");
return CURLE_FAILED_INIT;
}
@@ -1349,8 +1210,10 @@ void Curl_nss_close(struct connectdata *conn, int sockindex)
* authentication data from a previous connection. */
SSL_InvalidateSession(connssl->handle);
- free(connssl->client_nickname);
- connssl->client_nickname = NULL;
+ if(connssl->client_nickname != NULL) {
+ free(connssl->client_nickname);
+ connssl->client_nickname = NULL;
+ }
/* destroy all NSS objects in order to avoid failure of NSS shutdown */
Curl_llist_destroy(connssl->obj_list, NULL);
connssl->obj_list = NULL;
@@ -1361,6 +1224,15 @@ void Curl_nss_close(struct connectdata *conn, int sockindex)
}
}
+/*
+ * This function is called when the 'data' struct is going away. Close
+ * down everything and free all resources!
+ */
+void Curl_nss_close_all(struct SessionHandle *data)
+{
+ (void)data;
+}
+
/* return true if NSS can provide error code (and possibly msg) for the
error */
static bool is_nss_error(CURLcode err)
@@ -1557,6 +1429,16 @@ static CURLcode nss_setup_connect(struct connectdata *conn, int sockindex)
SSL_LIBRARY_VERSION_TLS_1_0 /* max */
};
+#ifdef USE_NGHTTP2
+#if defined(SSL_ENABLE_NPN) || defined(SSL_ENABLE_ALPN)
+ unsigned int alpn_protos_len = NGHTTP2_PROTO_VERSION_ID_LEN +
+ ALPN_HTTP_1_1_LENGTH + 2;
+ unsigned char alpn_protos[NGHTTP2_PROTO_VERSION_ID_LEN + ALPN_HTTP_1_1_LENGTH
+ + 2];
+ int cur = 0;
+#endif
+#endif
+
connssl->data = data;
/* list of all NSS objects we need to destroy in Curl_nss_close() */
@@ -1736,57 +1618,43 @@ static CURLcode nss_setup_connect(struct connectdata *conn, int sockindex)
SSL_SetPKCS11PinArg(connssl->handle, data->set.str[STRING_KEY_PASSWD]);
}
-#ifdef SSL_ENABLE_OCSP_STAPLING
- if(data->set.ssl.verifystatus) {
- if(SSL_OptionSet(connssl->handle, SSL_ENABLE_OCSP_STAPLING, PR_TRUE)
- != SECSuccess)
- goto error;
- }
-#endif
-
+#ifdef USE_NGHTTP2
+ if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
#ifdef SSL_ENABLE_NPN
- if(SSL_OptionSet(connssl->handle, SSL_ENABLE_NPN, data->set.ssl_enable_npn
- ? PR_TRUE : PR_FALSE) != SECSuccess)
- goto error;
+ if(data->set.ssl_enable_npn) {
+ if(SSL_OptionSet(connssl->handle, SSL_ENABLE_NPN, PR_TRUE) != SECSuccess)
+ goto error;
+ }
#endif
#ifdef SSL_ENABLE_ALPN
- if(SSL_OptionSet(connssl->handle, SSL_ENABLE_ALPN, data->set.ssl_enable_alpn
- ? PR_TRUE : PR_FALSE) != SECSuccess)
- goto error;
-#endif
-
-#if NSSVERNUM >= 0x030f04 /* 3.15.4 */
- if(data->set.ssl.falsestart) {
- if(SSL_OptionSet(connssl->handle, SSL_ENABLE_FALSE_START, PR_TRUE)
- != SECSuccess)
- goto error;
-
- if(SSL_SetCanFalseStartCallback(connssl->handle, CanFalseStartCallback,
- conn) != SECSuccess)
- goto error;
- }
+ if(data->set.ssl_enable_alpn) {
+ if(SSL_OptionSet(connssl->handle, SSL_ENABLE_ALPN, PR_TRUE)
+ != SECSuccess)
+ goto error;
+ }
#endif
#if defined(SSL_ENABLE_NPN) || defined(SSL_ENABLE_ALPN)
- if(data->set.ssl_enable_npn || data->set.ssl_enable_alpn) {
- int cur = 0;
- unsigned char protocols[128];
-
-#ifdef USE_NGHTTP2
- if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
- protocols[cur++] = NGHTTP2_PROTO_VERSION_ID_LEN;
- memcpy(&protocols[cur], NGHTTP2_PROTO_VERSION_ID,
+ if(data->set.ssl_enable_npn || data->set.ssl_enable_alpn) {
+ alpn_protos[cur] = NGHTTP2_PROTO_VERSION_ID_LEN;
+ cur++;
+ memcpy(&alpn_protos[cur], NGHTTP2_PROTO_VERSION_ID,
NGHTTP2_PROTO_VERSION_ID_LEN);
cur += NGHTTP2_PROTO_VERSION_ID_LEN;
+ alpn_protos[cur] = ALPN_HTTP_1_1_LENGTH;
+ cur++;
+ memcpy(&alpn_protos[cur], ALPN_HTTP_1_1, ALPN_HTTP_1_1_LENGTH);
+
+ if(SSL_SetNextProtoNego(connssl->handle, alpn_protos, alpn_protos_len)
+ != SECSuccess)
+ goto error;
+ connssl->asked_for_h2 = TRUE;
+ }
+ else {
+ infof(data, "SSL, can't negotiate HTTP/2.0 with neither NPN nor ALPN\n");
}
#endif
- protocols[cur++] = ALPN_HTTP_1_1_LENGTH;
- memcpy(&protocols[cur], ALPN_HTTP_1_1, ALPN_HTTP_1_1_LENGTH);
- cur += ALPN_HTTP_1_1_LENGTH;
-
- if(SSL_SetNextProtoNego(connssl->handle, protocols, cur) != SECSuccess)
- goto error;
}
#endif
@@ -1847,7 +1715,7 @@ static CURLcode nss_do_connect(struct connectdata *conn, int sockindex)
}
if(SECFailure == ret) {
- infof(data, "SSL certificate issuer check failed\n");
+ infof(data,"SSL certificate issuer check failed\n");
result = CURLE_SSL_ISSUER_ERROR;
goto error;
}
@@ -1856,11 +1724,6 @@ static CURLcode nss_do_connect(struct connectdata *conn, int sockindex)
}
}
- result = cmp_peer_pubkey(connssl, data->set.str[STRING_SSL_PINNEDPUBLICKEY]);
- if(result)
- /* status already printed */
- goto error;
-
return CURLE_OK;
error:
@@ -2007,7 +1870,6 @@ size_t Curl_nss_version(char *buffer, size_t size)
return snprintf(buffer, size, "NSS/%s", NSS_VERSION);
}
-/* data might be NULL */
int Curl_nss_seed(struct SessionHandle *data)
{
/* make sure that NSS is initialized */
@@ -2019,11 +1881,14 @@ int Curl_nss_random(struct SessionHandle *data,
unsigned char *entropy,
size_t length)
{
- Curl_nss_seed(data); /* Initiate the seed if not already done */
+ if(data)
+ Curl_nss_seed(data); /* Initiate the seed if not already done */
- if(SECSuccess != PK11_GenerateRandom(entropy, curlx_uztosi(length)))
- /* signal a failure */
- return -1;
+ if(SECSuccess != PK11_GenerateRandom(entropy, curlx_uztosi(length))) {
+ /* no way to signal a failure from here, we have to abort */
+ failf(data, "PK11_GenerateRandom() failed, calling abort()...");
+ abort();
+ }
return 0;
}
@@ -2041,34 +1906,4 @@ void Curl_nss_md5sum(unsigned char *tmp, /* input */
PK11_DestroyContext(MD5pw, PR_TRUE);
}
-void Curl_nss_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum, /* output */
- size_t sha256len)
-{
- PK11Context *SHA256pw = PK11_CreateDigestContext(SEC_OID_SHA256);
- unsigned int SHA256out;
-
- PK11_DigestOp(SHA256pw, tmp, curlx_uztoui(tmplen));
- PK11_DigestFinal(SHA256pw, sha256sum, &SHA256out, curlx_uztoui(sha256len));
- PK11_DestroyContext(SHA256pw, PR_TRUE);
-}
-
-bool Curl_nss_cert_status_request(void)
-{
-#ifdef SSL_ENABLE_OCSP_STAPLING
- return TRUE;
-#else
- return FALSE;
-#endif
-}
-
-bool Curl_nss_false_start(void) {
-#if NSSVERNUM >= 0x030f04 /* 3.15.4 */
- return TRUE;
-#else
- return FALSE;
-#endif
-}
-
#endif /* USE_NSS */
diff --git a/lib/vtls/nssg.h b/lib/vtls/nssg.h
index 5fd72751d..74840e831 100644
--- a/lib/vtls/nssg.h
+++ b/lib/vtls/nssg.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -37,6 +37,10 @@ CURLcode Curl_nss_connect_nonblocking(struct connectdata *conn,
/* close a SSL connection */
void Curl_nss_close(struct connectdata *conn, int sockindex);
+/* tell NSS to close down all open information regarding connections (and
+ thus session ID caching etc) */
+void Curl_nss_close_all(struct SessionHandle *data);
+
int Curl_nss_init(void);
void Curl_nss_cleanup(void);
@@ -56,18 +60,6 @@ void Curl_nss_md5sum(unsigned char *tmp, /* input */
unsigned char *md5sum, /* output */
size_t md5len);
-void Curl_nss_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum, /* output */
- size_t sha256len);
-
-bool Curl_nss_cert_status_request(void);
-
-bool Curl_nss_false_start(void);
-
-/* Set the API backend definition to NSS */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_NSS
-
/* this backend supports the CAPATH option */
#define have_curlssl_ca_path 1
@@ -82,7 +74,7 @@ bool Curl_nss_false_start(void);
/* NSS has its own session ID cache */
#define curlssl_session_free(x) Curl_nop_stmt
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_nss_close_all
#define curlssl_close Curl_nss_close
/* NSS has no shutdown function provided and thus always fail */
#define curlssl_shutdown(x,y) ((void)x, (void)y, 1)
@@ -94,9 +86,7 @@ bool Curl_nss_false_start(void);
#define curlssl_data_pending(x,y) ((void)x, (void)y, 0)
#define curlssl_random(x,y,z) Curl_nss_random(x,y,z)
#define curlssl_md5sum(a,b,c,d) Curl_nss_md5sum(a,b,c,d)
-#define curlssl_sha256sum(a,b,c,d) Curl_nss_sha256sum(a,b,c,d)
-#define curlssl_cert_status_request() Curl_nss_cert_status_request()
-#define curlssl_false_start() Curl_nss_false_start()
+#define CURL_SSL_BACKEND CURLSSLBACKEND_NSS
#endif /* USE_NSS */
#endif /* HEADER_CURL_NSSG_H */
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c
index 90e4c2b32..a68d88eae 100644
--- a/lib/vtls/openssl.c
+++ b/lib/vtls/openssl.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -32,8 +32,6 @@
#include "curl_setup.h"
-#ifdef USE_OPENSSL
-
#ifdef HAVE_LIMITS_H
#include <limits.h>
#endif
@@ -51,9 +49,13 @@
#include "vtls.h"
#include "rawstr.h"
#include "hostcheck.h"
-#include "curl_printf.h"
-#include <openssl/ssl.h>
+#define _MPRINTF_REPLACE /* use the internal *printf() functions */
+#include <curl/mprintf.h>
+
+#ifdef USE_SSLEAY
+
+#ifdef USE_OPENSSL
#include <openssl/rand.h>
#include <openssl/x509v3.h>
#include <openssl/dsa.h>
@@ -62,28 +64,36 @@
#include <openssl/md5.h>
#include <openssl/conf.h>
#include <openssl/bn.h>
-#include <openssl/rsa.h>
-
-#ifdef HAVE_OPENSSL_PKCS12_H
-#include <openssl/pkcs12.h>
-#endif
-
-#if (OPENSSL_VERSION_NUMBER >= 0x0090808fL) && !defined(OPENSSL_IS_BORINGSSL)
-#include <openssl/ocsp.h>
+#else
+#include <rand.h>
+#include <x509v3.h>
+#include <md5.h>
#endif
#include "warnless.h"
+#include "curl_memory.h"
#include "non-ascii.h" /* for Curl_convert_from_utf8 prototype */
-/* The last #include files should be: */
-#include "curl_memory.h"
+/* The last #include file should be: */
#include "memdebug.h"
#ifndef OPENSSL_VERSION_NUMBER
#error "OPENSSL_VERSION_NUMBER not defined"
#endif
-#if OPENSSL_VERSION_NUMBER >= 0x00907001L && !defined(OPENSSL_IS_BORINGSSL)
+#if OPENSSL_VERSION_NUMBER >= 0x0090581fL
+#define HAVE_SSL_GET1_SESSION 1
+#else
+#undef HAVE_SSL_GET1_SESSION
+#endif
+
+#if OPENSSL_VERSION_NUMBER >= 0x00904100L
+#define HAVE_USERDATA_IN_PWD_CALLBACK 1
+#else
+#undef HAVE_USERDATA_IN_PWD_CALLBACK
+#endif
+
+#if OPENSSL_VERSION_NUMBER >= 0x00907001L
/* ENGINE_load_private_key() takes four arguments */
#define HAVE_ENGINE_LOAD_FOUR_ARGS
#include <openssl/ui.h>
@@ -92,16 +102,18 @@
#undef HAVE_ENGINE_LOAD_FOUR_ARGS
#endif
-#if (OPENSSL_VERSION_NUMBER >= 0x00903001L) && \
- defined(HAVE_OPENSSL_PKCS12_H) && \
- !defined(OPENSSL_IS_BORINGSSL)
-/* OpenSSL has PKCS 12 support, BoringSSL does not */
+#if (OPENSSL_VERSION_NUMBER >= 0x00903001L) && defined(HAVE_OPENSSL_PKCS12_H)
+/* OpenSSL has PKCS 12 support */
#define HAVE_PKCS12_SUPPORT
#else
-/* OpenSSL does not have PKCS12 support */
+/* OpenSSL/SSLEay does not have PKCS12 support */
#undef HAVE_PKCS12_SUPPORT
#endif
+#if OPENSSL_VERSION_NUMBER >= 0x00906001L
+#define HAVE_ERR_ERROR_STRING_N 1
+#endif
+
#if OPENSSL_VERSION_NUMBER >= 0x00909000L
#define SSL_METHOD_QUAL const
#else
@@ -115,10 +127,7 @@
#define X509_STORE_set_flags(x,y) Curl_nop_stmt
#endif
-#ifdef OPENSSL_IS_BORINGSSL
-/* BoringSSL has no ERR_remove_state() */
-#define ERR_remove_state(x)
-#elif (OPENSSL_VERSION_NUMBER >= 0x10000000L)
+#if OPENSSL_VERSION_NUMBER >= 0x10000000L
#define HAVE_ERR_REMOVE_THREAD_STATE 1
#endif
@@ -128,19 +137,6 @@
#define OPENSSL_NO_SSL2
#endif
-#if defined(OPENSSL_IS_BORINGSSL)
-#define NO_RAND_SEED 1
-/* In BoringSSL OpenSSL_add_all_algorithms does nothing */
-#define OpenSSL_add_all_algorithms()
-/* BoringSSL does not have CONF_modules_load_file */
-#define CONF_modules_load_file(a,b,c)
-#endif
-
-#if (OPENSSL_VERSION_NUMBER < 0x0090808fL) || defined(OPENSSL_IS_BORINGSSL)
-/* not present in BoringSSL or older OpenSSL */
-#define OPENSSL_load_builtin_modules(x)
-#endif
-
/*
* Number of bytes to read from the random number seed file. This must be
* a finite value (because some entropy "files" like /dev/urandom have
@@ -149,8 +145,18 @@
*/
#define RAND_LOAD_LENGTH 1024
-static int passwd_callback(char *buf, int num, int encrypting,
- void *global_passwd)
+#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
+static char global_passwd[64];
+#endif
+
+static int passwd_callback(char *buf, int num, int encrypting
+#ifdef HAVE_USERDATA_IN_PWD_CALLBACK
+ /* This was introduced in 0.9.4, we can set this
+ using SSL_CTX_set_default_passwd_cb_userdata()
+ */
+ , void *global_passwd
+#endif
+ )
{
DEBUGASSERT(0 == encrypting);
@@ -171,7 +177,6 @@ static int passwd_callback(char *buf, int num, int encrypting,
* pass in an argument that is never used.
*/
-#ifndef NO_RAND_SEED
#ifdef HAVE_RAND_STATUS
#define seed_enough(x) rand_enough()
static bool rand_enough(void)
@@ -256,7 +261,7 @@ static int ossl_seed(struct SessionHandle *data)
return nread;
}
-static void Curl_ossl_seed(struct SessionHandle *data)
+static int Curl_ossl_seed(struct SessionHandle *data)
{
/* we have the "SSL is seeded" boolean static to prevent multiple
time-consuming seedings in vain */
@@ -267,11 +272,8 @@ static void Curl_ossl_seed(struct SessionHandle *data)
ossl_seed(data);
ssl_seeded = TRUE;
}
+ return 0;
}
-#else
-/* BoringSSL needs no seeding */
-#define Curl_ossl_seed(x)
-#endif
#ifndef SSL_FILETYPE_ENGINE
@@ -355,23 +357,37 @@ int cert_stuff(struct connectdata *conn,
int cert_done = 0;
if(data->set.str[STRING_KEY_PASSWD]) {
- /* set the password in the callback userdata */
+#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
+ /*
+ * If password has been given, we store that in the global
+ * area (*shudder*) for a while:
+ */
+ size_t len = strlen(data->set.str[STRING_KEY_PASSWD]);
+ if(len < sizeof(global_passwd))
+ memcpy(global_passwd, data->set.str[STRING_KEY_PASSWD], len+1);
+ else
+ global_passwd[0] = '\0';
+#else
+ /*
+ * We set the password in the callback userdata
+ */
SSL_CTX_set_default_passwd_cb_userdata(ctx,
data->set.str[STRING_KEY_PASSWD]);
+#endif
/* Set passwd callback: */
SSL_CTX_set_default_passwd_cb(ctx, passwd_callback);
}
+#define SSL_CLIENT_CERT_ERR \
+ "unable to use client certificate (no key found or wrong pass phrase?)"
+
switch(file_type) {
case SSL_FILETYPE_PEM:
/* SSL_CTX_use_certificate_chain_file() only works on PEM files */
if(SSL_CTX_use_certificate_chain_file(ctx,
cert_file) != 1) {
- failf(data,
- "could not load PEM client certificate, OpenSSL error %s, "
- "(no key found, wrong pass phrase, or wrong file format?)",
- ERR_error_string(ERR_get_error(), NULL) );
+ failf(data, SSL_CLIENT_CERT_ERR);
return 0;
}
break;
@@ -383,10 +399,7 @@ int cert_stuff(struct connectdata *conn,
if(SSL_CTX_use_certificate_file(ctx,
cert_file,
file_type) != 1) {
- failf(data,
- "could not load ASN1 client certificate, OpenSSL error %s, "
- "(no key found, wrong pass phrase, or wrong file format?)",
- ERR_error_string(ERR_get_error(), NULL) );
+ failf(data, SSL_CLIENT_CERT_ERR);
return 0;
}
break;
@@ -452,7 +465,7 @@ int cert_stuff(struct connectdata *conn,
STACK_OF(X509) *ca = NULL;
int i;
- f = fopen(cert_file, "rb");
+ f = fopen(cert_file,"rb");
if(!f) {
failf(data, "could not open PKCS12 file '%s'", cert_file);
return 0;
@@ -461,7 +474,7 @@ int cert_stuff(struct connectdata *conn,
fclose(f);
if(!p12) {
- failf(data, "error reading PKCS12 file '%s'", cert_file);
+ failf(data, "error reading PKCS12 file '%s'", cert_file );
return 0;
}
@@ -479,9 +492,7 @@ int cert_stuff(struct connectdata *conn,
PKCS12_free(p12);
if(SSL_CTX_use_certificate(ctx, x509) != 1) {
- failf(data,
- "could not load PKCS12 client certificate, OpenSSL error %s",
- ERR_error_string(ERR_get_error(), NULL) );
+ failf(data, SSL_CLIENT_CERT_ERR);
goto fail;
}
@@ -575,7 +586,7 @@ int cert_stuff(struct connectdata *conn,
#endif
/* the typecast below was added to please mingw32 */
priv_key = (EVP_PKEY *)
- ENGINE_load_private_key(data->state.engine, key_file,
+ ENGINE_load_private_key(data->state.engine,key_file,
#ifdef HAVE_ENGINE_LOAD_FOUR_ARGS
ui_method,
#endif
@@ -617,7 +628,7 @@ int cert_stuff(struct connectdata *conn,
ssl=SSL_new(ctx);
if(!ssl) {
- failf(data, "unable to create an SSL structure");
+ failf(data,"unable to create an SSL structure");
return 0;
}
@@ -627,7 +638,7 @@ int cert_stuff(struct connectdata *conn,
leak memory as the previous version: */
if(x509) {
EVP_PKEY *pktmp = X509_get_pubkey(x509);
- EVP_PKEY_copy_parameters(pktmp, SSL_get_privatekey(ssl));
+ EVP_PKEY_copy_parameters(pktmp,SSL_get_privatekey(ssl));
EVP_PKEY_free(pktmp);
}
@@ -643,6 +654,10 @@ int cert_stuff(struct connectdata *conn,
failf(data, "Private key does not match the certificate public key");
return 0;
}
+#ifndef HAVE_USERDATA_IN_PWD_CALLBACK
+ /* erase it now */
+ memset(global_passwd, 0, sizeof(global_passwd));
+#endif
}
return 1;
}
@@ -677,17 +692,36 @@ static int x509_name_oneline(X509_NAME *a, char *buf, size_t size)
#endif
}
+static
+int cert_verify_callback(int ok, X509_STORE_CTX *ctx)
+{
+ X509 *err_cert;
+ char buf[256];
+
+ err_cert=X509_STORE_CTX_get_current_cert(ctx);
+ (void)x509_name_oneline(X509_get_subject_name(err_cert), buf, sizeof(buf));
+ return ok;
+}
+
/* Return error string for last OpenSSL error
*/
static char *SSL_strerror(unsigned long error, char *buf, size_t size)
{
+#ifdef HAVE_ERR_ERROR_STRING_N
/* OpenSSL 0.9.6 and later has a function named
- ERR_error_string_n() that takes the size of the buffer as a
+ ERRO_error_string_n() that takes the size of the buffer as a
third argument */
ERR_error_string_n(error, buf, size);
+#else
+ (void) size;
+ ERR_error_string(error, buf);
+#endif
return buf;
}
+#endif /* USE_SSLEAY */
+
+#ifdef USE_SSLEAY
/**
* Global SSL init
*
@@ -696,8 +730,6 @@ static char *SSL_strerror(unsigned long error, char *buf, size_t size)
*/
int Curl_ossl_init(void)
{
- OPENSSL_load_builtin_modules();
-
#ifdef HAVE_ENGINE_LOAD_BUILTIN_ENGINES
ENGINE_load_builtin_engines();
#endif
@@ -724,13 +756,17 @@ int Curl_ossl_init(void)
#define CONF_MFLAGS_DEFAULT_SECTION 0x0
#endif
- CONF_modules_load_file(NULL, NULL,
- CONF_MFLAGS_DEFAULT_SECTION|
- CONF_MFLAGS_IGNORE_MISSING_FILE);
+ (void)CONF_modules_load_file(NULL, NULL,
+ CONF_MFLAGS_DEFAULT_SECTION|
+ CONF_MFLAGS_IGNORE_MISSING_FILE);
return 1;
}
+#endif /* USE_SSLEAY */
+
+#ifdef USE_SSLEAY
+
/* Global cleanup */
void Curl_ossl_cleanup(void)
{
@@ -785,7 +821,7 @@ int Curl_ossl_check_cxn(struct connectdata *conn)
*/
CURLcode Curl_ossl_set_engine(struct SessionHandle *data, const char *engine)
{
-#if defined(USE_OPENSSL) && defined(HAVE_OPENSSL_ENGINE_H)
+#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
ENGINE *e;
#if OPENSSL_VERSION_NUMBER >= 0x00909000L
@@ -833,7 +869,7 @@ CURLcode Curl_ossl_set_engine_default(struct SessionHandle *data)
#ifdef HAVE_OPENSSL_ENGINE_H
if(data->state.engine) {
if(ENGINE_set_default(data->state.engine, ENGINE_METHOD_ALL) > 0) {
- infof(data, "set default crypto engine '%s'\n",
+ infof(data,"set default crypto engine '%s'\n",
ENGINE_get_id(data->state.engine));
}
else {
@@ -853,7 +889,7 @@ CURLcode Curl_ossl_set_engine_default(struct SessionHandle *data)
struct curl_slist *Curl_ossl_engines_list(struct SessionHandle *data)
{
struct curl_slist *list = NULL;
-#if defined(USE_OPENSSL) && defined(HAVE_OPENSSL_ENGINE_H)
+#if defined(USE_SSLEAY) && defined(HAVE_OPENSSL_ENGINE_H)
struct curl_slist *beg;
ENGINE *e;
@@ -1022,7 +1058,7 @@ static int asn1_output(const ASN1_UTCTIME *tm,
const char *asn1_string;
int gmt=FALSE;
int i;
- int year=0, month=0, day=0, hour=0, minute=0, second=0;
+ int year=0,month=0,day=0,hour=0,minute=0,second=0;
i=tm->length;
asn1_string=(const char *)tm->data;
@@ -1181,14 +1217,14 @@ static CURLcode verifyhost(struct connectdata *conn, X509 *server_cert)
else {
/* we have to look to the last occurrence of a commonName in the
distinguished one to get the most significant one. */
- int j, i=-1;
+ int j,i=-1 ;
/* The following is done because of a bug in 0.9.6b */
unsigned char *nulstr = (unsigned char *)"";
unsigned char *peer_CN = nulstr;
- X509_NAME *name = X509_get_subject_name(server_cert);
+ X509_NAME *name = X509_get_subject_name(server_cert) ;
if(name)
while((j = X509_NAME_get_index_by_NID(name, NID_commonName, i))>=0)
i=j;
@@ -1198,8 +1234,7 @@ static CURLcode verifyhost(struct connectdata *conn, X509 *server_cert)
UTF8 etc. */
if(i>=0) {
- ASN1_STRING *tmp =
- X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name, i));
+ ASN1_STRING *tmp = X509_NAME_ENTRY_get_data(X509_NAME_get_entry(name,i));
/* In OpenSSL 0.9.7d and earlier, ASN1_STRING_to_UTF8 fails if the input
is already UTF-8 encoded. We check for this case and copy the raw
@@ -1263,135 +1298,7 @@ static CURLcode verifyhost(struct connectdata *conn, X509 *server_cert)
return result;
}
-
-#if (OPENSSL_VERSION_NUMBER >= 0x0090808fL) && !defined(OPENSSL_NO_TLSEXT) && \
- !defined(OPENSSL_IS_BORINGSSL)
-static CURLcode verifystatus(struct connectdata *conn,
- struct ssl_connect_data *connssl)
-{
- int i, ocsp_status;
- const unsigned char *p;
- CURLcode result = CURLE_OK;
- struct SessionHandle *data = conn->data;
-
- OCSP_RESPONSE *rsp = NULL;
- OCSP_BASICRESP *br = NULL;
- X509_STORE *st = NULL;
- STACK_OF(X509) *ch = NULL;
-
- long len = SSL_get_tlsext_status_ocsp_resp(connssl->handle, &p);
-
- if(!p) {
- failf(data, "No OCSP response received");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- rsp = d2i_OCSP_RESPONSE(NULL, &p, len);
- if(!rsp) {
- failf(data, "Invalid OCSP response");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- ocsp_status = OCSP_response_status(rsp);
- if(ocsp_status != OCSP_RESPONSE_STATUS_SUCCESSFUL) {
- failf(data, "Invalid OCSP response status: %s (%d)",
- OCSP_response_status_str(ocsp_status), ocsp_status);
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- br = OCSP_response_get1_basic(rsp);
- if(!br) {
- failf(data, "Invalid OCSP response");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- ch = SSL_get_peer_cert_chain(connssl->handle);
- st = SSL_CTX_get_cert_store(connssl->ctx);
-
-#if ((OPENSSL_VERSION_NUMBER <= 0x1000201fL) /* Fixed after 1.0.2a */ || \
- defined(LIBRESSL_VERSION_NUMBER))
- /* The authorized responder cert in the OCSP response MUST be signed by the
- peer cert's issuer (see RFC6960 section 4.2.2.2). If that's a root cert,
- no problem, but if it's an intermediate cert OpenSSL has a bug where it
- expects this issuer to be present in the chain embedded in the OCSP
- response. So we add it if necessary. */
-
- /* First make sure the peer cert chain includes both a peer and an issuer,
- and the OCSP response contains a responder cert. */
- if(sk_X509_num(ch) >= 2 && sk_X509_num(br->certs) >= 1) {
- X509 *responder = sk_X509_value(br->certs, sk_X509_num(br->certs) - 1);
-
- /* Find issuer of responder cert and add it to the OCSP response chain */
- for(i = 0; i < sk_X509_num(ch); i++) {
- X509 *issuer = sk_X509_value(ch, i);
- if(X509_check_issued(issuer, responder) == X509_V_OK) {
- if(!OCSP_basic_add1_cert(br, issuer)) {
- failf(data, "Could not add issuer cert to OCSP response");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
- }
- }
- }
-#endif
-
- if(OCSP_basic_verify(br, ch, st, 0) <= 0) {
- failf(data, "OCSP response verification failed");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- for(i = 0; i < OCSP_resp_count(br); i++) {
- int cert_status, crl_reason;
- OCSP_SINGLERESP *single = NULL;
-
- ASN1_GENERALIZEDTIME *rev, *thisupd, *nextupd;
-
- if(!(single = OCSP_resp_get0(br, i)))
- continue;
-
- cert_status = OCSP_single_get0_status(single, &crl_reason, &rev,
- &thisupd, &nextupd);
-
- if(!OCSP_check_validity(thisupd, nextupd, 300L, -1L)) {
- failf(data, "OCSP response has expired");
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
-
- infof(data, "SSL certificate status: %s (%d)\n",
- OCSP_cert_status_str(cert_status), cert_status);
-
- switch(cert_status) {
- case V_OCSP_CERTSTATUS_GOOD:
- break;
-
- case V_OCSP_CERTSTATUS_REVOKED:
- result = CURLE_SSL_INVALIDCERTSTATUS;
-
- failf(data, "SSL certificate revocation reason: %s (%d)",
- OCSP_crl_reason_str(crl_reason), crl_reason);
- goto end;
-
- case V_OCSP_CERTSTATUS_UNKNOWN:
- result = CURLE_SSL_INVALIDCERTSTATUS;
- goto end;
- }
- }
-
-end:
- if(br) OCSP_BASICRESP_free(br);
- OCSP_RESPONSE_free(rsp);
-
- return result;
-}
-#endif
-
-#endif /* USE_OPENSSL */
+#endif /* USE_SSLEAY */
/* The SSL_CTRL_SET_MSG_CALLBACK doesn't exist in ancient OpenSSL versions
and thus this cannot be done there. */
@@ -1432,12 +1339,8 @@ static const char *ssl_msg_type(int ssl_ver, int msg)
return "Client hello";
case SSL3_MT_SERVER_HELLO:
return "Server hello";
-#ifdef SSL3_MT_NEWSESSION_TICKET
- case SSL3_MT_NEWSESSION_TICKET:
- return "Newsession Ticket";
-#endif
case SSL3_MT_CERTIFICATE:
- return "Certificate";
+ return "CERT";
case SSL3_MT_SERVER_KEY_EXCHANGE:
return "Server key exchange";
case SSL3_MT_CLIENT_KEY_EXCHANGE:
@@ -1450,10 +1353,6 @@ static const char *ssl_msg_type(int ssl_ver, int msg)
return "CERT verify";
case SSL3_MT_FINISHED:
return "Finished";
-#ifdef SSL3_MT_CERTIFICATE_STATUS
- case SSL3_MT_CERTIFICATE_STATUS:
- return "Certificate Status";
-#endif
}
}
return "Unknown";
@@ -1461,22 +1360,12 @@ static const char *ssl_msg_type(int ssl_ver, int msg)
static const char *tls_rt_type(int type)
{
- switch(type) {
-#ifdef SSL3_RT_HEADER
- case SSL3_RT_HEADER:
- return "TLS header";
-#endif
- case SSL3_RT_CHANGE_CIPHER_SPEC:
- return "TLS change cipher";
- case SSL3_RT_ALERT:
- return "TLS alert";
- case SSL3_RT_HANDSHAKE:
- return "TLS handshake";
- case SSL3_RT_APPLICATION_DATA:
- return "TLS app data";
- default:
- return "TLS Unknown";
- }
+ return (
+ type == SSL3_RT_CHANGE_CIPHER_SPEC ? "TLS change cipher, " :
+ type == SSL3_RT_ALERT ? "TLS alert, " :
+ type == SSL3_RT_HANDSHAKE ? "TLS handshake, " :
+ type == SSL3_RT_APPLICATION_DATA ? "TLS app data, " :
+ "TLS Unknown, ");
}
@@ -1484,16 +1373,15 @@ static const char *tls_rt_type(int type)
* Our callback from the SSL/TLS layers.
*/
static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
- const void *buf, size_t len, SSL *ssl,
- void *userp)
+ const void *buf, size_t len, const SSL *ssl,
+ struct connectdata *conn)
{
struct SessionHandle *data;
const char *msg_name, *tls_rt_name;
char ssl_buf[1024];
char unknown[32];
int msg_type, txt_len;
- const char *verstr = NULL;
- struct connectdata *conn = userp;
+ const char *verstr;
if(!conn || !conn->data || !conn->data->set.fdebug ||
(direction != 0 && direction != 1))
@@ -1502,8 +1390,8 @@ static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
data = conn->data;
switch(ssl_ver) {
-#ifdef SSL2_VERSION /* removed in recent versions */
- case SSL2_VERSION:
+#ifdef SSL2_VERSION_MAJOR /* removed in recent versions */
+ case SSL2_VERSION_MAJOR:
verstr = "SSLv2";
break;
#endif
@@ -1525,36 +1413,29 @@ static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
verstr = "TLSv1.2";
break;
#endif
- case 0:
- break;
default:
snprintf(unknown, sizeof(unknown), "(%x)", ssl_ver);
verstr = unknown;
break;
}
- if(ssl_ver) {
- /* the info given when the version is zero is not that useful for us */
+ ssl_ver >>= 8; /* check the upper 8 bits only below */
- ssl_ver >>= 8; /* check the upper 8 bits only below */
-
- /* SSLv2 doesn't seem to have TLS record-type headers, so OpenSSL
- * always pass-up content-type as 0. But the interesting message-type
- * is at 'buf[0]'.
- */
- if(ssl_ver == SSL3_VERSION_MAJOR && content_type)
- tls_rt_name = tls_rt_type(content_type);
- else
- tls_rt_name = "";
+ /* SSLv2 doesn't seem to have TLS record-type headers, so OpenSSL
+ * always pass-up content-type as 0. But the interesting message-type
+ * is at 'buf[0]'.
+ */
+ if(ssl_ver == SSL3_VERSION_MAJOR && content_type != 0)
+ tls_rt_name = tls_rt_type(content_type);
+ else
+ tls_rt_name = "";
- msg_type = *(char*)buf;
- msg_name = ssl_msg_type(ssl_ver, msg_type);
+ msg_type = *(char*)buf;
+ msg_name = ssl_msg_type(ssl_ver, msg_type);
- txt_len = snprintf(ssl_buf, sizeof(ssl_buf), "%s (%s), %s, %s (%d):\n",
- verstr, direction?"OUT":"IN",
- tls_rt_name, msg_name, msg_type);
- Curl_debug(data, CURLINFO_TEXT, ssl_buf, (size_t)txt_len, NULL);
- }
+ txt_len = snprintf(ssl_buf, sizeof(ssl_buf), "%s, %s%s (%d):\n",
+ verstr, tls_rt_name, msg_name, msg_type);
+ Curl_debug(data, CURLINFO_TEXT, ssl_buf, (size_t)txt_len, NULL);
Curl_debug(data, (direction == 1) ? CURLINFO_SSL_DATA_OUT :
CURLINFO_SSL_DATA_IN, (char *)buf, len, NULL);
@@ -1562,7 +1443,7 @@ static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
}
#endif
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
/* ====================================================== */
#ifdef SSL_CTRL_SET_TLSEXT_HOSTNAME
@@ -1571,6 +1452,8 @@ static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
# define use_sni(x) Curl_nop_stmt
#endif
+#ifdef USE_NGHTTP2
+
/* Check for OpenSSL 1.0.2 which has ALPN support. */
#undef HAS_ALPN
#if OPENSSL_VERSION_NUMBER >= 0x10002000L \
@@ -1592,23 +1475,6 @@ static void ssl_tls_trace(int direction, int ssl_ver, int content_type,
* in is a list of lenght prefixed strings. this function has to select
* the protocol we want to use from the list and write its string into out.
*/
-
-static int
-select_next_protocol(unsigned char **out, unsigned char *outlen,
- const unsigned char *in, unsigned int inlen,
- const char *key, unsigned int keylen)
-{
- unsigned int i;
- for(i = 0; i + keylen <= inlen; i += in[i] + 1) {
- if(memcmp(&in[i + 1], key, keylen) == 0) {
- *out = (unsigned char *) &in[i + 1];
- *outlen = in[i];
- return 0;
- }
- }
- return -1;
-}
-
static int
select_next_proto_cb(SSL *ssl,
unsigned char **out, unsigned char *outlen,
@@ -1616,43 +1482,40 @@ select_next_proto_cb(SSL *ssl,
void *arg)
{
struct connectdata *conn = (struct connectdata*) arg;
+ int retval = nghttp2_select_next_protocol(out, outlen, in, inlen);
(void)ssl;
-#ifdef USE_NGHTTP2
- if(conn->data->set.httpversion == CURL_HTTP_VERSION_2_0 &&
- !select_next_protocol(out, outlen, in, inlen, NGHTTP2_PROTO_VERSION_ID,
- NGHTTP2_PROTO_VERSION_ID_LEN)) {
+ if(retval == 1) {
infof(conn->data, "NPN, negotiated HTTP2 (%s)\n",
NGHTTP2_PROTO_VERSION_ID);
- conn->negnpn = CURL_HTTP_VERSION_2_0;
- return SSL_TLSEXT_ERR_OK;
+ conn->negnpn = NPN_HTTP2;
}
-#endif
-
- if(!select_next_protocol(out, outlen, in, inlen, ALPN_HTTP_1_1,
- ALPN_HTTP_1_1_LENGTH)) {
+ else if(retval == 0) {
infof(conn->data, "NPN, negotiated HTTP1.1\n");
- conn->negnpn = CURL_HTTP_VERSION_1_1;
- return SSL_TLSEXT_ERR_OK;
+ conn->negnpn = NPN_HTTP1_1;
+ }
+ else {
+ infof(conn->data, "NPN, no overlap, use HTTP1.1\n",
+ NGHTTP2_PROTO_VERSION_ID);
+ *out = (unsigned char*)"http/1.1";
+ *outlen = sizeof("http/1.1") - 1;
+ conn->negnpn = NPN_HTTP1_1;
}
-
- infof(conn->data, "NPN, no overlap, use HTTP1.1\n");
- *out = (unsigned char *)ALPN_HTTP_1_1;
- *outlen = ALPN_HTTP_1_1_LENGTH;
- conn->negnpn = CURL_HTTP_VERSION_1_1;
return SSL_TLSEXT_ERR_OK;
}
#endif /* HAS_NPN */
+#endif /* USE_NGHTTP2 */
+
static const char *
-get_ssl_version_txt(SSL *ssl)
+get_ssl_version_txt(SSL_SESSION *session)
{
- if(!ssl)
+ if(!session)
return "";
- switch(SSL_version(ssl)) {
+ switch(session->ssl_version) {
#if OPENSSL_VERSION_NUMBER >= 0x1000100FL
case TLS1_2_VERSION:
return "TLSv1.2";
@@ -1688,6 +1551,9 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
struct in_addr addr;
#endif
#endif
+#ifdef HAS_ALPN
+ unsigned char protocols[128];
+#endif
DEBUGASSERT(ssl_connect_1 == connssl->connecting_state);
@@ -1706,12 +1572,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
case CURL_SSLVERSION_TLSv1_1:
case CURL_SSLVERSION_TLSv1_2:
/* it will be handled later with the context options */
-#if (OPENSSL_VERSION_NUMBER >= 0x10100000L) && \
- !defined(LIBRESSL_VERSION_NUMBER) && !defined(OPENSSL_IS_BORINGSSL)
- req_method = TLS_client_method();
-#else
req_method = SSLv23_client_method();
-#endif
use_sni(TRUE);
break;
case CURL_SSLVERSION_SSLv2:
@@ -1728,10 +1589,6 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
break;
#endif
case CURL_SSLVERSION_SSLv3:
-#ifdef OPENSSL_NO_SSL3_METHOD
- failf(data, "OpenSSL was built without SSLv3 support");
- return CURLE_NOT_BUILT_IN;
-#else
#ifdef USE_TLS_SRP
if(data->set.ssl.authtype == CURL_TLSAUTH_SRP)
return CURLE_SSL_CONNECT_ERROR;
@@ -1739,7 +1596,6 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
req_method = SSLv3_client_method();
use_sni(FALSE);
break;
-#endif
}
if(connssl->ctx)
@@ -1758,9 +1614,16 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
#ifdef SSL_CTRL_SET_MSG_CALLBACK
if(data->set.fdebug && data->set.verbose) {
- /* the SSL trace callback is only used for verbose logging */
- SSL_CTX_set_msg_callback(connssl->ctx, ssl_tls_trace);
- SSL_CTX_set_msg_callback_arg(connssl->ctx, conn);
+ /* the SSL trace callback is only used for verbose logging so we only
+ inform about failures of setting it */
+ if(!SSL_CTX_callback_ctrl(connssl->ctx, SSL_CTRL_SET_MSG_CALLBACK,
+ (void (*)(void))ssl_tls_trace)) {
+ infof(data, "SSL: couldn't set callback!\n");
+ }
+ else if(!SSL_CTX_ctrl(connssl->ctx, SSL_CTRL_SET_MSG_CALLBACK_ARG, 0,
+ conn)) {
+ infof(data, "SSL: couldn't set callback argument!\n");
+ }
}
#endif
@@ -1773,7 +1636,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
The "-no_ticket" option was introduced in Openssl0.9.8j. It's a flag to
disable "rfc4507bis session ticket support". rfc4507bis was later turned
- into the proper RFC5077 it seems: https://tools.ietf.org/html/rfc5077
+ into the proper RFC5077 it seems: http://tools.ietf.org/html/rfc5077
The enabled extension concerns the session management. I wonder how often
libcurl stops a connection and then resumes a TLS session. also, sending
@@ -1793,7 +1656,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
this option regardless of OpenSSL version and SSL_OP_ALL definition.
OpenSSL added a work-around for a SSL 3.0/TLS 1.0 CBC vulnerability
- (https://www.openssl.org/~bodo/tls-cbc.txt). In 0.9.6e they added a bit to
+ (http://www.openssl.org/~bodo/tls-cbc.txt). In 0.9.6e they added a bit to
SSL_OP_ALL that _disables_ that work-around despite the fact that
SSL_OP_ALL is documented to do "rather harmless" workarounds. In order to
keep the secure work-around, the SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS bit
@@ -1886,36 +1749,36 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
SSL_CTX_set_options(connssl->ctx, ctx_options);
+#ifdef USE_NGHTTP2
+ if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
#ifdef HAS_NPN
- if(data->set.ssl_enable_npn)
- SSL_CTX_set_next_proto_select_cb(connssl->ctx, select_next_proto_cb, conn);
+ if(data->set.ssl_enable_npn) {
+ SSL_CTX_set_next_proto_select_cb(connssl->ctx, select_next_proto_cb,
+ conn);
+ }
#endif
#ifdef HAS_ALPN
- if(data->set.ssl_enable_alpn) {
- int cur = 0;
- unsigned char protocols[128];
+ if(data->set.ssl_enable_alpn) {
+ protocols[0] = NGHTTP2_PROTO_VERSION_ID_LEN;
+ memcpy(&protocols[1], NGHTTP2_PROTO_VERSION_ID,
+ NGHTTP2_PROTO_VERSION_ID_LEN);
-#ifdef USE_NGHTTP2
- if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
- protocols[cur++] = NGHTTP2_PROTO_VERSION_ID_LEN;
+ protocols[NGHTTP2_PROTO_VERSION_ID_LEN+1] = ALPN_HTTP_1_1_LENGTH;
+ memcpy(&protocols[NGHTTP2_PROTO_VERSION_ID_LEN+2], ALPN_HTTP_1_1,
+ ALPN_HTTP_1_1_LENGTH);
- memcpy(&protocols[cur], NGHTTP2_PROTO_VERSION_ID,
- NGHTTP2_PROTO_VERSION_ID_LEN);
- cur += NGHTTP2_PROTO_VERSION_ID_LEN;
- infof(data, "ALPN, offering %s\n", NGHTTP2_PROTO_VERSION_ID);
+ /* expects length prefixed preference ordered list of protocols in wire
+ * format
+ */
+ SSL_CTX_set_alpn_protos(connssl->ctx, protocols,
+ NGHTTP2_PROTO_VERSION_ID_LEN + ALPN_HTTP_1_1_LENGTH + 2);
+
+ infof(data, "ALPN, offering %s, %s\n", NGHTTP2_PROTO_VERSION_ID,
+ ALPN_HTTP_1_1);
+ connssl->asked_for_h2 = TRUE;
}
#endif
-
- protocols[cur++] = ALPN_HTTP_1_1_LENGTH;
- memcpy(&protocols[cur], ALPN_HTTP_1_1, ALPN_HTTP_1_1_LENGTH);
- cur += ALPN_HTTP_1_1_LENGTH;
- infof(data, "ALPN, offering %s\n", ALPN_HTTP_1_1);
-
- /* expects length prefixed preference ordered list of protocols in wire
- * format
- */
- SSL_CTX_set_alpn_protos(connssl->ctx, protocols, cur);
}
#endif
@@ -1938,7 +1801,6 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
failf(data, "failed setting cipher list: %s", ciphers);
return CURLE_SSL_CIPHER;
}
- infof(data, "Cipher selection: %s\n", ciphers);
#ifdef USE_TLS_SRP
if(data->set.ssl.authtype == CURL_TLSAUTH_SRP) {
@@ -1948,7 +1810,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
failf(data, "Unable to set SRP user name");
return CURLE_BAD_FUNCTION_ARGUMENT;
}
- if(!SSL_CTX_set_srp_password(connssl->ctx, data->set.ssl.password)) {
+ if(!SSL_CTX_set_srp_password(connssl->ctx,data->set.ssl.password)) {
failf(data, "failed setting SRP password");
return CURLE_BAD_FUNCTION_ARGUMENT;
}
@@ -1970,7 +1832,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
data->set.str[STRING_SSL_CAPATH])) {
if(data->set.ssl.verifypeer) {
/* Fail if we insist on successfully verifying the server. */
- failf(data, "error setting certificate verify locations:\n"
+ failf(data,"error setting certificate verify locations:\n"
" CAfile: %s\n CApath: %s",
data->set.str[STRING_SSL_CAFILE]?
data->set.str[STRING_SSL_CAFILE]: "none",
@@ -2004,9 +1866,9 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
lookup=X509_STORE_add_lookup(SSL_CTX_get_cert_store(connssl->ctx),
X509_LOOKUP_file());
if(!lookup ||
- (!X509_load_crl_file(lookup, data->set.str[STRING_SSL_CRLFILE],
+ (!X509_load_crl_file(lookup,data->set.str[STRING_SSL_CRLFILE],
X509_FILETYPE_PEM)) ) {
- failf(data, "error loading CRL file: %s",
+ failf(data,"error loading CRL file: %s",
data->set.str[STRING_SSL_CRLFILE]);
return CURLE_SSL_CRL_BADFILE;
}
@@ -2021,34 +1883,20 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
data->set.str[STRING_SSL_CRLFILE]: "none");
}
- /* Try building a chain using issuers in the trusted store first to avoid
- problems with server-sent legacy intermediates.
- Newer versions of OpenSSL do alternate chain checking by default which
- gives us the same fix without as much of a performance hit (slight), so we
- prefer that if available.
- https://rt.openssl.org/Ticket/Display.html?id=3621&user=guest&pass=guest
- */
-#if defined(X509_V_FLAG_TRUSTED_FIRST) && !defined(X509_V_FLAG_NO_ALT_CHAINS)
- if(data->set.ssl.verifypeer) {
- X509_STORE_set_flags(SSL_CTX_get_cert_store(connssl->ctx),
- X509_V_FLAG_TRUSTED_FIRST);
- }
-#endif
-
/* SSL always tries to verify the peer, this only says whether it should
* fail to connect if the verification fails, or if it should continue
* anyway. In the latter case the result of the verification is checked with
* SSL_get_verify_result() below. */
SSL_CTX_set_verify(connssl->ctx,
data->set.ssl.verifypeer?SSL_VERIFY_PEER:SSL_VERIFY_NONE,
- NULL);
+ cert_verify_callback);
/* give application a chance to interfere with SSL set up. */
if(data->set.ssl.fsslctx) {
result = (*data->set.ssl.fsslctx)(data, connssl->ctx,
data->set.ssl.fsslctxp);
if(result) {
- failf(data, "error signaled by ssl ctx callback");
+ failf(data,"error signaled by ssl ctx callback");
return result;
}
}
@@ -2061,13 +1909,6 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
failf(data, "SSL: couldn't create a context (handle)!");
return CURLE_OUT_OF_MEMORY;
}
-
-#if (OPENSSL_VERSION_NUMBER >= 0x0090808fL) && !defined(OPENSSL_NO_TLSEXT) && \
- !defined(OPENSSL_IS_BORINGSSL)
- if(data->set.ssl.verifystatus)
- SSL_set_tlsext_status_type(connssl->handle, TLSEXT_STATUSTYPE_ocsp);
-#endif
-
SSL_set_connect_state(connssl->handle);
connssl->server_cert = 0x0;
@@ -2088,7 +1929,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
/* we got a session id, use it! */
if(!SSL_set_session(connssl->handle, ssl_sessionid)) {
failf(data, "SSL: SSL_set_session failed: %s",
- ERR_error_string(ERR_get_error(), NULL));
+ ERR_error_string(ERR_get_error(),NULL));
return CURLE_SSL_CONNECT_ERROR;
}
/* Informational message */
@@ -2098,7 +1939,7 @@ static CURLcode ossl_connect_step1(struct connectdata *conn, int sockindex)
/* pass the raw socket into the SSL layers */
if(!SSL_set_fd(connssl->handle, (int)sockfd)) {
failf(data, "SSL: SSL_set_fd failed: %s",
- ERR_error_string(ERR_get_error(), NULL));
+ ERR_error_string(ERR_get_error(),NULL));
return CURLE_SSL_CONNECT_ERROR;
}
@@ -2137,9 +1978,10 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
else {
/* untreated error */
unsigned long errdetail;
- char error_buffer[256]=""; /* OpenSSL documents that this must be at
- least 256 bytes long. */
+ char error_buffer[256]; /* OpenSSL documents that this must be at least
+ 256 bytes long. */
CURLcode result;
+ const char *cert_problem = NULL;
long lerr;
connssl->connecting_state = ssl_connect_2; /* the connection failed,
@@ -2171,10 +2013,9 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
X509_verify_cert_error_string(lerr));
}
else
- /* strcpy() is fine here as long as the string fits within
- error_buffer */
- strcpy(error_buffer,
- "SSL certificate problem, check your CA cert");
+ cert_problem = "SSL certificate problem, verify that the CA cert is"
+ " OK.";
+
break;
default:
result = CURLE_SSL_CONNECT_ERROR;
@@ -2195,7 +2036,7 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
}
/* Could be a CERT problem */
- failf(data, "%s", error_buffer);
+ failf(data, "%s%s", cert_problem ? cert_problem : "", error_buffer);
return result;
}
@@ -2206,7 +2047,7 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
/* Informational message */
infof(data, "SSL connection using %s / %s\n",
- get_ssl_version_txt(connssl->handle),
+ get_ssl_version_txt(SSL_get_session(connssl->handle)),
SSL_get_cipher(connssl->handle));
#ifdef HAS_ALPN
@@ -2220,19 +2061,18 @@ static CURLcode ossl_connect_step2(struct connectdata *conn, int sockindex)
if(len != 0) {
infof(data, "ALPN, server accepted to use %.*s\n", len, neg_protocol);
-#ifdef USE_NGHTTP2
if(len == NGHTTP2_PROTO_VERSION_ID_LEN &&
- !memcmp(NGHTTP2_PROTO_VERSION_ID, neg_protocol, len)) {
- conn->negnpn = CURL_HTTP_VERSION_2_0;
+ memcmp(NGHTTP2_PROTO_VERSION_ID, neg_protocol, len) == 0) {
+ conn->negnpn = NPN_HTTP2;
}
- else
-#endif
- if(len == ALPN_HTTP_1_1_LENGTH &&
- !memcmp(ALPN_HTTP_1_1, neg_protocol, ALPN_HTTP_1_1_LENGTH)) {
- conn->negnpn = CURL_HTTP_VERSION_1_1;
+ else if(len ==
+ ALPN_HTTP_1_1_LENGTH && memcmp(ALPN_HTTP_1_1,
+ neg_protocol,
+ ALPN_HTTP_1_1_LENGTH) == 0) {
+ conn->negnpn = NPN_HTTP1_1;
}
}
- else
+ else if(connssl->asked_for_h2)
infof(data, "ALPN, server did not agree to a protocol\n");
}
#endif
@@ -2327,7 +2167,7 @@ static int X509V3_ext(struct SessionHandle *data,
X509_EXTENSION_get_critical(ext)?"(critical)":"");
if(!X509V3_EXT_print(bio_out, ext, 0, 0))
- ASN1_STRING_print(bio_out, (ASN1_STRING *)X509_EXTENSION_get_data(ext));
+ M_ASN1_OCTET_STRING_print(bio_out, ext->value);
BIO_get_mem_ptr(bio_out, &biomem);
@@ -2457,22 +2297,28 @@ static CURLcode get_cert_chain(struct connectdata *conn,
Curl_ssl_push_certinfo(data, i, "Version", bufp); /* hex */
num=X509_get_serialNumber(x);
- {
+ if(num->length <= 4) {
+ value = ASN1_INTEGER_get(num);
+ infof(data," Serial Number: %ld (0x%lx)\n", value, value);
+ snprintf(bufp, CERTBUFFERSIZE, "%lx", value);
+ }
+ else {
int left = CERTBUFFERSIZE;
ptr = bufp;
- if(num->type == V_ASN1_NEG_INTEGER) {
+ *ptr++ = 0;
+ if(num->type == V_ASN1_NEG_INTEGER)
*ptr++='-';
- left--;
- }
- for(j=0; (j<num->length) && (left>=3); j++) {
- snprintf(ptr, left, "%02x", num->data[j]);
- ptr += 2;
- left -= 2;
+ for(j=0; (j<num->length) && (left>=4); j++) {
+ /* TODO: length restrictions */
+ snprintf(ptr, 3, "%02x%c",num->data[j],
+ ((j+1 == num->length)?'\n':':'));
+ ptr += 3;
+ left-=4;
}
if(num->length)
- infof(data, " Serial Number: %s\n", bufp);
+ infof(data," Serial Number: %s\n", bufp);
else
bufp[0]=0;
}
@@ -2581,23 +2427,23 @@ static CURLcode pkp_pin_peer_pubkey(X509* cert, const char *pinnedpubkey)
/* Begin Gyrations to get the subjectPublicKeyInfo */
/* Thanks to Viktor Dukhovni on the OpenSSL mailing list */
- /* https://groups.google.com/group/mailing.openssl.users/browse_thread
+ /* http://groups.google.com/group/mailing.openssl.users/browse_thread
/thread/d61858dae102c6c7 */
len1 = i2d_X509_PUBKEY(X509_get_X509_PUBKEY(cert), NULL);
if(len1 < 1)
break; /* failed */
- /* https://www.openssl.org/docs/crypto/buffer.html */
+ /* http://www.openssl.org/docs/crypto/buffer.html */
buff1 = temp = OPENSSL_malloc(len1);
if(!buff1)
break; /* failed */
- /* https://www.openssl.org/docs/crypto/d2i_X509.html */
+ /* http://www.openssl.org/docs/crypto/d2i_X509.html */
len2 = i2d_X509_PUBKEY(X509_get_X509_PUBKEY(cert), &temp);
/*
* These checks are verifying we got back the same values as when we
- * sized the buffer. It's pretty weak since they should always be the
+ * sized the buffer.Its pretty weak since they should always be the
* same. But it gives us something to test.
*/
if((len1 != len2) || !temp || ((temp - buff1) != len1))
@@ -2609,7 +2455,7 @@ static CURLcode pkp_pin_peer_pubkey(X509* cert, const char *pinnedpubkey)
result = Curl_pin_peer_pubkey(pinnedpubkey, buff1, len1);
} while(0);
- /* https://www.openssl.org/docs/crypto/buffer.html */
+ /* http://www.openssl.org/docs/crypto/buffer.html */
if(buff1)
OPENSSL_free(buff1);
@@ -2687,7 +2533,7 @@ static CURLcode servercert(struct connectdata *conn,
/* e.g. match issuer name with provided issuer certificate */
if(data->set.str[STRING_SSL_ISSUERCERT]) {
- fp = fopen(data->set.str[STRING_SSL_ISSUERCERT], FOPEN_READTEXT);
+ fp = fopen(data->set.str[STRING_SSL_ISSUERCERT], "r");
if(!fp) {
if(strict)
failf(data, "SSL: Unable to open issuer cert (%s)",
@@ -2710,7 +2556,7 @@ static CURLcode servercert(struct connectdata *conn,
fclose(fp);
- if(X509_check_issued(issuer, connssl->server_cert) != X509_V_OK) {
+ if(X509_check_issued(issuer,connssl->server_cert) != X509_V_OK) {
if(strict)
failf(data, "SSL: Certificate issuer check failed (%s)",
data->set.str[STRING_SSL_ISSUERCERT]);
@@ -2746,22 +2592,6 @@ static CURLcode servercert(struct connectdata *conn,
infof(data, "\t SSL certificate verify ok.\n");
}
-#if (OPENSSL_VERSION_NUMBER >= 0x0090808fL) && !defined(OPENSSL_NO_TLSEXT) && \
- !defined(OPENSSL_IS_BORINGSSL)
- if(data->set.ssl.verifystatus) {
- result = verifystatus(conn, connssl);
- if(result) {
- X509_free(connssl->server_cert);
- connssl->server_cert = NULL;
- return result;
- }
- }
-#endif
-
- if(!strict)
- /* when not strict, we don't bother about the verify cert problems */
- result = CURLE_OK;
-
ptr = data->set.str[STRING_SSL_PINNEDPUBLICKEY];
if(!result && ptr) {
result = pkp_pin_peer_pubkey(connssl->server_cert, ptr);
@@ -2787,11 +2617,25 @@ static CURLcode ossl_connect_step3(struct connectdata *conn, int sockindex)
DEBUGASSERT(ssl_connect_3 == connssl->connecting_state);
+#ifdef HAVE_SSL_GET1_SESSION
our_ssl_sessionid = SSL_get1_session(connssl->handle);
- /* SSL_get1_session() will increment the reference count and the session
- will stay in memory until explicitly freed with SSL_SESSION_free(3),
- regardless of its state. */
+ /* SSL_get1_session() will increment the reference
+ count and the session will stay in memory until explicitly freed with
+ SSL_SESSION_free(3), regardless of its state.
+ This function was introduced in openssl 0.9.5a. */
+#else
+ our_ssl_sessionid = SSL_get_session(connssl->handle);
+
+ /* if SSL_get1_session() is unavailable, use SSL_get_session().
+ This is an inferior option because the session can be flushed
+ at any time by openssl. It is included only so curl compiles
+ under versions of openssl < 0.9.5a.
+
+ WARNING: How curl behaves if it's session is flushed is
+ untested.
+ */
+#endif
incache = !(Curl_ssl_getsessionid(conn, &old_ssl_sessionid, NULL));
if(incache) {
@@ -2810,6 +2654,7 @@ static CURLcode ossl_connect_step3(struct connectdata *conn, int sockindex)
return result;
}
}
+#ifdef HAVE_SSL_GET1_SESSION
else {
/* Session was incache, so refcount already incremented earlier.
* Avoid further increments with each SSL_get1_session() call.
@@ -2817,6 +2662,7 @@ static CURLcode ossl_connect_step3(struct connectdata *conn, int sockindex)
*/
SSL_SESSION_free(our_ssl_sessionid);
}
+#endif
/*
* We check certificates to authenticate the server; otherwise we risk
@@ -2825,8 +2671,10 @@ static CURLcode ossl_connect_step3(struct connectdata *conn, int sockindex)
* operations.
*/
- result = servercert(conn, connssl,
- (data->set.ssl.verifypeer || data->set.ssl.verifyhost));
+ if(!data->set.ssl.verifypeer && !data->set.ssl.verifyhost)
+ (void)servercert(conn, connssl, FALSE);
+ else
+ result = servercert(conn, connssl, TRUE);
if(!result)
connssl->connecting_state = ssl_connect_done;
@@ -3064,7 +2912,7 @@ static ssize_t ossl_recv(struct connectdata *conn, /* connection data */
default:
/* openssl/ssl.h for SSL_ERROR_SYSCALL says "look at error stack/return
value/errno" */
- /* https://www.openssl.org/docs/crypto/ERR_get_error.html */
+ /* http://www.openssl.org/docs/crypto/ERR_get_error.html */
sslerror = ERR_get_error();
if((nread < 0) || sslerror) {
/* If the return code was negative or there actually is an error in the
@@ -3087,11 +2935,8 @@ size_t Curl_ossl_version(char *buffer, size_t size)
to OpenSSL in all other aspects */
return snprintf(buffer, size, "yassl/%s", YASSL_VERSION);
#else /* YASSL_VERSION */
-#ifdef OPENSSL_IS_BORINGSSL
- return snprintf(buffer, size, "BoringSSL");
-#else /* OPENSSL_IS_BORINGSSL */
-#if(OPENSSL_VERSION_NUMBER >= 0x905000)
+#if(SSLEAY_VERSION_NUMBER >= 0x905000)
{
char sub[3];
unsigned long ssleay_value;
@@ -3119,44 +2964,47 @@ size_t Curl_ossl_version(char *buffer, size_t size)
}
return snprintf(buffer, size, "%s/%lx.%lx.%lx%s",
+#ifdef OPENSSL_IS_BORINGSSL
+ "BoringSSL"
+#else
#ifdef LIBRESSL_VERSION_NUMBER
"LibreSSL"
#else
"OpenSSL"
#endif
+#endif
, (ssleay_value>>28)&0xf,
(ssleay_value>>20)&0xff,
(ssleay_value>>12)&0xff,
sub);
}
-#else /* OPENSSL_VERSION_NUMBER is less than 0.9.5 */
+#else /* SSLEAY_VERSION_NUMBER is less than 0.9.5 */
-#if(OPENSSL_VERSION_NUMBER >= 0x900000)
+#if(SSLEAY_VERSION_NUMBER >= 0x900000)
return snprintf(buffer, size, "OpenSSL/%lx.%lx.%lx",
- (OPENSSL_VERSION_NUMBER>>28)&0xff,
- (OPENSSL_VERSION_NUMBER>>20)&0xff,
- (OPENSSL_VERSION_NUMBER>>12)&0xf);
+ (SSLEAY_VERSION_NUMBER>>28)&0xff,
+ (SSLEAY_VERSION_NUMBER>>20)&0xff,
+ (SSLEAY_VERSION_NUMBER>>12)&0xf);
-#else /* (OPENSSL_VERSION_NUMBER >= 0x900000) */
+#else /* (SSLEAY_VERSION_NUMBER >= 0x900000) */
{
char sub[2];
sub[1]='\0';
- if(OPENSSL_VERSION_NUMBER&0x0f) {
- sub[0]=(OPENSSL_VERSION_NUMBER&0x0f) + 'a' -1;
+ if(SSLEAY_VERSION_NUMBER&0x0f) {
+ sub[0]=(SSLEAY_VERSION_NUMBER&0x0f) + 'a' -1;
}
else
sub[0]='\0';
return snprintf(buffer, size, "SSL/%x.%x.%x%s",
- (OPENSSL_VERSION_NUMBER>>12)&0xff,
- (OPENSSL_VERSION_NUMBER>>8)&0xf,
- (OPENSSL_VERSION_NUMBER>>4)&0xf, sub);
+ (SSLEAY_VERSION_NUMBER>>12)&0xff,
+ (SSLEAY_VERSION_NUMBER>>8)&0xf,
+ (SSLEAY_VERSION_NUMBER>>4)&0xf, sub);
}
-#endif /* (OPENSSL_VERSION_NUMBER >= 0x900000) */
-#endif /* OPENSSL_VERSION_NUMBER is less than 0.9.5 */
+#endif /* (SSLEAY_VERSION_NUMBER >= 0x900000) */
+#endif /* SSLEAY_VERSION_NUMBER is less than 0.9.5 */
-#endif /* OPENSSL_IS_BORINGSSL */
#endif /* YASSL_VERSION */
}
@@ -3164,9 +3012,8 @@ size_t Curl_ossl_version(char *buffer, size_t size)
int Curl_ossl_random(struct SessionHandle *data, unsigned char *entropy,
size_t length)
{
- if(data) {
+ if(data)
Curl_ossl_seed(data); /* Initiate the seed if not already done */
- }
RAND_bytes(entropy, curlx_uztosi(length));
return 0; /* 0 as in no problem */
}
@@ -3182,28 +3029,4 @@ void Curl_ossl_md5sum(unsigned char *tmp, /* input */
MD5_Update(&MD5pw, tmp, tmplen);
MD5_Final(md5sum, &MD5pw);
}
-
-#ifndef OPENSSL_NO_SHA256
-void Curl_ossl_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum /* output */,
- size_t unused)
-{
- SHA256_CTX SHA256pw;
- (void)unused;
- SHA256_Init(&SHA256pw);
- SHA256_Update(&SHA256pw, tmp, tmplen);
- SHA256_Final(sha256sum, &SHA256pw);
-}
-#endif
-
-bool Curl_ossl_cert_status_request(void)
-{
-#if (OPENSSL_VERSION_NUMBER >= 0x0090808fL) && !defined(OPENSSL_NO_TLSEXT) && \
- !defined(OPENSSL_IS_BORINGSSL)
- return TRUE;
-#else
- return FALSE;
-#endif
-}
-#endif /* USE_OPENSSL */
+#endif /* USE_SSLEAY */
diff --git a/lib/vtls/openssl.h b/lib/vtls/openssl.h
index a1f347a05..9f5f3a28f 100644
--- a/lib/vtls/openssl.h
+++ b/lib/vtls/openssl.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -24,7 +24,7 @@
#include "curl_setup.h"
-#ifdef USE_OPENSSL
+#ifdef USE_SSLEAY
/*
* This header should only be needed to get included by vtls.c and openssl.c
*/
@@ -72,15 +72,6 @@ void Curl_ossl_md5sum(unsigned char *tmp, /* input */
size_t tmplen,
unsigned char *md5sum /* output */,
size_t unused);
-void Curl_ossl_sha256sum(const unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *sha256sum /* output */,
- size_t unused);
-
-bool Curl_ossl_cert_status_request(void);
-
-/* Set the API backend definition to OpenSSL */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_OPENSSL
/* this backend supports the CAPATH option */
#define have_curlssl_ca_path 1
@@ -108,13 +99,9 @@ bool Curl_ossl_cert_status_request(void);
#define curlssl_data_pending(x,y) Curl_ossl_data_pending(x,y)
#define curlssl_random(x,y,z) Curl_ossl_random(x,y,z)
#define curlssl_md5sum(a,b,c,d) Curl_ossl_md5sum(a,b,c,d)
-#ifndef OPENSSL_NO_SHA256
-#define curlssl_sha256sum(a,b,c,d) Curl_ossl_sha256sum(a,b,c,d)
-#endif
-#define curlssl_cert_status_request() Curl_ossl_cert_status_request()
+#define CURL_SSL_BACKEND CURLSSLBACKEND_OPENSSL
-#define DEFAULT_CIPHER_SELECTION \
- "ALL:!EXPORT:!EXPORT40:!EXPORT56:!aNULL:!LOW:!RC4:@STRENGTH"
+#define DEFAULT_CIPHER_SELECTION "ALL!EXPORT!EXPORT40!EXPORT56!aNULL!LOW!RC4"
-#endif /* USE_OPENSSL */
+#endif /* USE_SSLEAY */
#endif /* HEADER_CURL_SSLUSE_H */
diff --git a/lib/vtls/polarssl.c b/lib/vtls/polarssl.c
index 066c055e6..05fcfc208 100644
--- a/lib/vtls/polarssl.c
+++ b/lib/vtls/polarssl.c
@@ -6,7 +6,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2010 - 2011, Hoi-Ho Chan, <hoiho.chan@gmail.com>
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -55,7 +55,9 @@
#include "select.h"
#include "rawstr.h"
#include "polarssl_threadlock.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -118,8 +120,11 @@ static void polarssl_debug(void *context, int level, const char *line)
#endif
/* ALPN for http2? */
-#ifdef POLARSSL_SSL_ALPN
-# define HAS_ALPN
+#ifdef USE_NGHTTP2
+# undef HAS_ALPN
+# ifdef POLARSSL_SSL_ALPN
+# define HAS_ALPN
+# endif
#endif
static Curl_recv polarssl_recv;
@@ -284,36 +289,27 @@ polarssl_connect_step1(struct connectdata *conn,
switch(data->set.ssl.version) {
default:
case CURL_SSLVERSION_DEFAULT:
- case CURL_SSLVERSION_TLSv1:
ssl_set_min_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
SSL_MINOR_VERSION_1);
break;
case CURL_SSLVERSION_SSLv3:
ssl_set_min_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
SSL_MINOR_VERSION_0);
- ssl_set_max_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
- SSL_MINOR_VERSION_0);
infof(data, "PolarSSL: Forced min. SSL Version to be SSLv3\n");
break;
case CURL_SSLVERSION_TLSv1_0:
ssl_set_min_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
SSL_MINOR_VERSION_1);
- ssl_set_max_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
- SSL_MINOR_VERSION_1);
infof(data, "PolarSSL: Forced min. SSL Version to be TLS 1.0\n");
break;
case CURL_SSLVERSION_TLSv1_1:
ssl_set_min_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
SSL_MINOR_VERSION_2);
- ssl_set_max_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
- SSL_MINOR_VERSION_2);
infof(data, "PolarSSL: Forced min. SSL Version to be TLS 1.1\n");
break;
case CURL_SSLVERSION_TLSv1_2:
ssl_set_min_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
SSL_MINOR_VERSION_3);
- ssl_set_max_version(&connssl->ssl, SSL_MAJOR_VERSION_3,
- SSL_MINOR_VERSION_3);
infof(data, "PolarSSL: Forced min. SSL Version to be TLS 1.2\n");
break;
}
@@ -354,23 +350,16 @@ polarssl_connect_step1(struct connectdata *conn,
}
#ifdef HAS_ALPN
- if(data->set.ssl_enable_alpn) {
- static const char* protocols[3];
- int cur = 0;
-
-#ifdef USE_NGHTTP2
- if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
- protocols[cur++] = NGHTTP2_PROTO_VERSION_ID;
- infof(data, "ALPN, offering %s\n", NGHTTP2_PROTO_VERSION_ID);
+ if(data->set.httpversion == CURL_HTTP_VERSION_2_0) {
+ if(data->set.ssl_enable_alpn) {
+ static const char* protocols[] = {
+ NGHTTP2_PROTO_VERSION_ID, ALPN_HTTP_1_1, NULL
+ };
+ ssl_set_alpn_protocols(&connssl->ssl, protocols);
+ infof(data, "ALPN, offering %s, %s\n", protocols[0],
+ protocols[1]);
+ connssl->asked_for_h2 = TRUE;
}
-#endif
-
- protocols[cur++] = ALPN_HTTP_1_1;
- infof(data, "ALPN, offering %s\n", ALPN_HTTP_1_1);
-
- protocols[cur] = NULL;
-
- ssl_set_alpn_protocols(&connssl->ssl, protocols);
}
#endif
@@ -392,37 +381,47 @@ polarssl_connect_step2(struct connectdata *conn,
struct ssl_connect_data* connssl = &conn->ssl[sockindex];
char buffer[1024];
+#ifdef HAS_ALPN
+ const char* next_protocol;
+#endif
+
char errorbuf[128];
errorbuf[0] = 0;
conn->recv[sockindex] = polarssl_recv;
conn->send[sockindex] = polarssl_send;
- ret = ssl_handshake(&connssl->ssl);
-
- switch(ret) {
- case 0:
- break;
-
- case POLARSSL_ERR_NET_WANT_READ:
- connssl->connecting_state = ssl_connect_2_reading;
- return CURLE_OK;
-
- case POLARSSL_ERR_NET_WANT_WRITE:
- connssl->connecting_state = ssl_connect_2_writing;
- return CURLE_OK;
-
- default:
+ for(;;) {
+ if(!(ret = ssl_handshake(&connssl->ssl)))
+ break;
+ else if(ret != POLARSSL_ERR_NET_WANT_READ &&
+ ret != POLARSSL_ERR_NET_WANT_WRITE) {
#ifdef POLARSSL_ERROR_C
- error_strerror(ret, errorbuf, sizeof(errorbuf));
+ error_strerror(ret, errorbuf, sizeof(errorbuf));
#endif /* POLARSSL_ERROR_C */
- failf(data, "ssl_handshake returned - PolarSSL: (-0x%04X) %s",
- -ret, errorbuf);
- return CURLE_SSL_CONNECT_ERROR;
+ failf(data, "ssl_handshake returned - PolarSSL: (-0x%04X) %s",
+ -ret, errorbuf);
+
+ return CURLE_SSL_CONNECT_ERROR;
+ }
+ else {
+ if(ret == POLARSSL_ERR_NET_WANT_READ) {
+ connssl->connecting_state = ssl_connect_2_reading;
+ return CURLE_OK;
+ }
+ if(ret == POLARSSL_ERR_NET_WANT_WRITE) {
+ connssl->connecting_state = ssl_connect_2_writing;
+ return CURLE_OK;
+ }
+ failf(data, "SSL_connect failed with error %d.", ret);
+ return CURLE_SSL_CONNECT_ERROR;
+
+ }
}
infof(data, "PolarSSL: Handshake complete, cipher is %s\n",
- ssl_get_ciphersuite(&conn->ssl[sockindex].ssl) );
+ ssl_get_ciphersuite(&conn->ssl[sockindex].ssl)
+ );
ret = ssl_get_verify_result(&conn->ssl[sockindex].ssl);
@@ -455,24 +454,22 @@ polarssl_connect_step2(struct connectdata *conn,
#ifdef HAS_ALPN
if(data->set.ssl_enable_alpn) {
- const char *next_protocol = ssl_get_alpn_protocol(&connssl->ssl);
+ next_protocol = ssl_get_alpn_protocol(&connssl->ssl);
if(next_protocol != NULL) {
infof(data, "ALPN, server accepted to use %s\n", next_protocol);
-#ifdef USE_NGHTTP2
- if(!strncmp(next_protocol, NGHTTP2_PROTO_VERSION_ID,
+ if(strncmp(next_protocol, NGHTTP2_PROTO_VERSION_ID,
NGHTTP2_PROTO_VERSION_ID_LEN)) {
- conn->negnpn = CURL_HTTP_VERSION_2_0;
+ conn->negnpn = NPN_HTTP2;
}
- else
-#endif
- if(!strncmp(next_protocol, ALPN_HTTP_1_1, ALPN_HTTP_1_1_LENGTH)) {
- conn->negnpn = CURL_HTTP_VERSION_1_1;
+ else if(strncmp(next_protocol, ALPN_HTTP_1_1, ALPN_HTTP_1_1_LENGTH)) {
+ conn->negnpn = NPN_HTTP1_1;
}
}
- else
+ else if(connssl->asked_for_h2) {
infof(data, "ALPN, server did not agree to a protocol\n");
+ }
}
#endif
@@ -490,7 +487,7 @@ polarssl_connect_step3(struct connectdata *conn,
struct ssl_connect_data *connssl = &conn->ssl[sockindex];
struct SessionHandle *data = conn->data;
void *old_ssl_sessionid = NULL;
- ssl_session *our_ssl_sessionid = &conn->ssl[sockindex].ssn;
+ ssl_session *our_ssl_sessionid = &conn->ssl[sockindex].ssn ;
bool incache;
DEBUGASSERT(ssl_connect_3 == connssl->connecting_state);
@@ -547,6 +544,11 @@ static ssize_t polarssl_send(struct connectdata *conn,
return ret;
}
+void Curl_polarssl_close_all(struct SessionHandle *data)
+{
+ (void)data;
+}
+
void Curl_polarssl_close(struct connectdata *conn, int sockindex)
{
rsa_free(&conn->ssl[sockindex].rsa);
@@ -587,15 +589,11 @@ void Curl_polarssl_session_free(void *ptr)
free(ptr);
}
-/* 1.3.10 was the first rebranded version. All new releases (in 1.3 branch and
- higher) will be mbed TLS branded.. */
-
size_t Curl_polarssl_version(char *buffer, size_t size)
{
unsigned int version = version_get_number();
- return snprintf(buffer, size, "%s/%d.%d.%d",
- version >= 0x01030A00?"mbedTLS":"PolarSSL",
- version>>24, (version>>16)&0xff, (version>>8)&0xff);
+ return snprintf(buffer, size, "PolarSSL/%d.%d.%d", version>>24,
+ (version>>16)&0xff, (version>>8)&0xff);
}
static CURLcode
diff --git a/lib/vtls/polarssl.h b/lib/vtls/polarssl.h
index f980dbb2e..57dfb6763 100644
--- a/lib/vtls/polarssl.h
+++ b/lib/vtls/polarssl.h
@@ -8,7 +8,7 @@
* \___|\___/|_| \_\_____|
*
* Copyright (C) 2010, Hoi-Ho Chan, <hoiho.chan@gmail.com>
- * Copyright (C) 2012 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2012 - 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
@@ -37,6 +37,10 @@ CURLcode Curl_polarssl_connect_nonblocking(struct connectdata *conn,
int sockindex,
bool *done);
+/* tell PolarSSL to close down all open information regarding connections (and
+ thus session ID caching etc) */
+void Curl_polarssl_close_all(struct SessionHandle *data);
+
/* close a SSL connection */
void Curl_polarssl_close(struct connectdata *conn, int sockindex);
@@ -44,9 +48,6 @@ void Curl_polarssl_session_free(void *ptr);
size_t Curl_polarssl_version(char *buffer, size_t size);
int Curl_polarssl_shutdown(struct connectdata *conn, int sockindex);
-/* Set the API backend definition to PolarSSL */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_POLARSSL
-
/* this backend supports the CAPATH option */
#define have_curlssl_ca_path 1
@@ -56,7 +57,7 @@ int Curl_polarssl_shutdown(struct connectdata *conn, int sockindex);
#define curlssl_connect Curl_polarssl_connect
#define curlssl_connect_nonblocking Curl_polarssl_connect_nonblocking
#define curlssl_session_free(x) Curl_polarssl_session_free(x)
-#define curlssl_close_all(x) ((void)x)
+#define curlssl_close_all Curl_polarssl_close_all
#define curlssl_close Curl_polarssl_close
#define curlssl_shutdown(x,y) 0
#define curlssl_set_engine(x,y) ((void)x, (void)y, CURLE_NOT_BUILT_IN)
@@ -65,6 +66,7 @@ int Curl_polarssl_shutdown(struct connectdata *conn, int sockindex);
#define curlssl_version Curl_polarssl_version
#define curlssl_check_cxn(x) ((void)x, -1)
#define curlssl_data_pending(x,y) ((void)x, (void)y, 0)
+#define CURL_SSL_BACKEND CURLSSLBACKEND_POLARSSL
/* This might cause libcurl to use a weeker random!
TODO: implement proper use of Polarssl's CTR-DRBG or HMAC-DRBG and use that
diff --git a/lib/vtls/polarssl_threadlock.c b/lib/vtls/polarssl_threadlock.c
index 62abf43b2..ad1871537 100644
--- a/lib/vtls/polarssl_threadlock.c
+++ b/lib/vtls/polarssl_threadlock.c
@@ -36,7 +36,10 @@
#endif
#include "polarssl_threadlock.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c
index 01bbc6130..a53ff4ad6 100644
--- a/lib/vtls/vtls.c
+++ b/lib/vtls/vtls.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -63,16 +63,18 @@
#include "sendf.h"
#include "rawstr.h"
#include "url.h"
+#include "curl_memory.h"
#include "progress.h"
#include "share.h"
#include "timeval.h"
#include "curl_md5.h"
#include "warnless.h"
#include "curl_base64.h"
-#include "curl_printf.h"
-/* The last #include files should be: */
-#include "curl_memory.h"
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
+/* The last #include file should be: */
#include "memdebug.h"
/* convenience macro to check if this handle is using a shared SSL session */
@@ -276,25 +278,10 @@ void Curl_ssl_cleanup(void)
}
}
-static bool ssl_prefs_check(struct SessionHandle *data)
-{
- /* check for CURLOPT_SSLVERSION invalid parameter value */
- if((data->set.ssl.version < 0)
- || (data->set.ssl.version >= CURL_SSLVERSION_LAST)) {
- failf(data, "Unrecognized parameter value passed via CURLOPT_SSLVERSION");
- return FALSE;
- }
- return TRUE;
-}
-
CURLcode
Curl_ssl_connect(struct connectdata *conn, int sockindex)
{
CURLcode result;
-
- if(!ssl_prefs_check(conn->data))
- return CURLE_SSL_CONNECT_ERROR;
-
/* mark this is being ssl-enabled from here on. */
conn->ssl[sockindex].use = TRUE;
conn->ssl[sockindex].state = ssl_connection_negotiating;
@@ -312,10 +299,6 @@ Curl_ssl_connect_nonblocking(struct connectdata *conn, int sockindex,
bool *done)
{
CURLcode result;
-
- if(!ssl_prefs_check(conn->data))
- return CURLE_SSL_CONNECT_ERROR;
-
/* mark this is being ssl requested from here on. */
conn->ssl[sockindex].use = TRUE;
#ifdef curlssl_connect_nonblocking
@@ -482,8 +465,9 @@ CURLcode Curl_ssl_addsessionid(struct connectdata *conn,
store->sessionid = ssl_sessionid;
store->idsize = idsize;
store->age = *general_age; /* set current age */
+ if(store->name)
/* free it if there's one already present */
- free(store->name);
+ free(store->name);
store->name = clone_host; /* clone host name */
store->remote_port = conn->remote_port; /* port number */
@@ -774,78 +758,12 @@ CURLcode Curl_pin_peer_pubkey(const char *pinnedpubkey,
size_t size, pem_len;
CURLcode pem_read;
CURLcode result = CURLE_SSL_PINNEDPUBKEYNOTMATCH;
-#ifdef curlssl_sha256sum
- size_t pinkeylen;
- char *pinkeycopy, *begin_pos, *end_pos;
- unsigned char *sha256sumdigest = NULL, *expectedsha256sumdigest = NULL;
-#endif
/* if a path wasn't specified, don't pin */
if(!pinnedpubkey)
return CURLE_OK;
if(!pubkey || !pubkeylen)
return result;
-
-#ifdef curlssl_sha256sum
- /* only do this if pinnedpubkey starts with "sha256//", length 8 */
- if(strncmp(pinnedpubkey, "sha256//", 8) == 0) {
- /* compute sha256sum of public key */
- sha256sumdigest = malloc(SHA256_DIGEST_LENGTH);
- if(!sha256sumdigest)
- return CURLE_OUT_OF_MEMORY;
- curlssl_sha256sum(pubkey, pubkeylen,
- sha256sumdigest, SHA256_DIGEST_LENGTH);
-
- /* it starts with sha256//, copy so we can modify it */
- pinkeylen = strlen(pinnedpubkey) + 1;
- pinkeycopy = malloc(pinkeylen);
- if(!pinkeycopy) {
- Curl_safefree(sha256sumdigest);
- return CURLE_OUT_OF_MEMORY;
- }
- memcpy(pinkeycopy, pinnedpubkey, pinkeylen);
- /* point begin_pos to the copy, and start extracting keys */
- begin_pos = pinkeycopy;
- do {
- end_pos = strstr(begin_pos, ";sha256//");
- /*
- * if there is an end_pos, null terminate,
- * otherwise it'll go to the end of the original string
- */
- if(end_pos)
- end_pos[0] = '\0';
-
- /* decode base64 pinnedpubkey, 8 is length of "sha256//" */
- pem_read = Curl_base64_decode(begin_pos + 8,
- &expectedsha256sumdigest, &size);
- /* if not valid base64, don't bother comparing or freeing */
- if(!pem_read) {
- /* compare sha256 digests directly */
- if(SHA256_DIGEST_LENGTH == size &&
- !memcmp(sha256sumdigest, expectedsha256sumdigest,
- SHA256_DIGEST_LENGTH)) {
- result = CURLE_OK;
- Curl_safefree(expectedsha256sumdigest);
- break;
- }
- Curl_safefree(expectedsha256sumdigest);
- }
-
- /*
- * change back the null-terminator we changed earlier,
- * and look for next begin
- */
- if(end_pos) {
- end_pos[0] = ';';
- begin_pos = strstr(end_pos, "sha256//");
- }
- } while(end_pos && begin_pos);
- Curl_safefree(sha256sumdigest);
- Curl_safefree(pinkeycopy);
- return result;
- }
-#endif
-
fp = fopen(pinnedpubkey, "rb");
if(!fp)
return result;
@@ -912,11 +830,10 @@ CURLcode Curl_pin_peer_pubkey(const char *pinnedpubkey,
return result;
}
-#ifndef CURL_DISABLE_CRYPTO_AUTH
-CURLcode Curl_ssl_md5sum(unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *md5sum, /* output */
- size_t md5len)
+void Curl_ssl_md5sum(unsigned char *tmp, /* input */
+ size_t tmplen,
+ unsigned char *md5sum, /* output */
+ size_t md5len)
{
#ifdef curlssl_md5sum
curlssl_md5sum(tmp, tmplen, md5sum, md5len);
@@ -926,37 +843,9 @@ CURLcode Curl_ssl_md5sum(unsigned char *tmp, /* input */
(void) md5len;
MD5pw = Curl_MD5_init(Curl_DIGEST_MD5);
- if(!MD5pw)
- return CURLE_OUT_OF_MEMORY;
Curl_MD5_update(MD5pw, tmp, curlx_uztoui(tmplen));
Curl_MD5_final(MD5pw, md5sum);
#endif
- return CURLE_OK;
-}
-#endif
-
-/*
- * Check whether the SSL backend supports the status_request extension.
- */
-bool Curl_ssl_cert_status_request(void)
-{
-#ifdef curlssl_cert_status_request
- return curlssl_cert_status_request();
-#else
- return FALSE;
-#endif
-}
-
-/*
- * Check whether the SSL backend supports false start.
- */
-bool Curl_ssl_false_start(void)
-{
-#ifdef curlssl_false_start
- return curlssl_false_start();
-#else
- return FALSE;
-#endif
}
#endif /* USE_SSL */
diff --git a/lib/vtls/vtls.h b/lib/vtls/vtls.h
index 2349e5b93..19ef1cd6e 100644
--- a/lib/vtls/vtls.h
+++ b/lib/vtls/vtls.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -30,8 +30,8 @@
#include "polarssl.h" /* PolarSSL versions */
#include "axtls.h" /* axTLS versions */
#include "cyassl.h" /* CyaSSL versions */
-#include "schannel.h" /* Schannel SSPI version */
-#include "darwinssl.h" /* SecureTransport (Darwin) version */
+#include "curl_schannel.h" /* Schannel SSPI version */
+#include "curl_darwinssl.h" /* SecureTransport (Darwin) version */
#ifndef MAX_PINNED_PUBKEY_SIZE
#define MAX_PINNED_PUBKEY_SIZE 1048576 /* 1MB */
@@ -41,10 +41,6 @@
#define MD5_DIGEST_LENGTH 16 /* fixed size */
#endif
-#ifndef SHA256_DIGEST_LENGTH
-#define SHA256_DIGEST_LENGTH 32 /* fixed size */
-#endif
-
/* see http://tools.ietf.org/html/draft-ietf-tls-applayerprotoneg-04 */
#define ALPN_HTTP_1_1_LENGTH 8
#define ALPN_HTTP_1_1 "http/1.1"
@@ -112,24 +108,17 @@ void Curl_ssl_delsessionid(struct connectdata *conn, void *ssl_sessionid);
in */
int Curl_ssl_random(struct SessionHandle *data, unsigned char *buffer,
size_t length);
-CURLcode Curl_ssl_md5sum(unsigned char *tmp, /* input */
- size_t tmplen,
- unsigned char *md5sum, /* output */
- size_t md5len);
+void Curl_ssl_md5sum(unsigned char *tmp, /* input */
+ size_t tmplen,
+ unsigned char *md5sum, /* output */
+ size_t md5len);
/* Check pinned public key. */
CURLcode Curl_pin_peer_pubkey(const char *pinnedpubkey,
const unsigned char *pubkey, size_t pubkeylen);
-bool Curl_ssl_cert_status_request(void);
-
-bool Curl_ssl_false_start(void);
-
#define SSL_SHUTDOWN_TIMEOUT 10000 /* ms */
#else
-/* Set the API backend definition to none */
-#define CURL_SSL_BACKEND CURLSSLBACKEND_NONE
-
/* When SSL support is not present, just define away these function calls */
#define Curl_ssl_init() 1
#define Curl_ssl_cleanup() Curl_nop_stmt
@@ -150,8 +139,7 @@ bool Curl_ssl_false_start(void);
#define Curl_ssl_connect_nonblocking(x,y,z) CURLE_NOT_BUILT_IN
#define Curl_ssl_kill_session(x) Curl_nop_stmt
#define Curl_ssl_random(x,y,z) ((void)x, CURLE_NOT_BUILT_IN)
-#define Curl_ssl_cert_status_request() FALSE
-#define Curl_ssl_false_start() FALSE
+#define CURL_SSL_BACKEND CURLSSLBACKEND_NONE
#endif
#endif /* HEADER_CURL_VTLS_H */
diff --git a/lib/wildcard.c b/lib/wildcard.c
index 6f55839db..7130d5e49 100644
--- a/lib/wildcard.c
+++ b/lib/wildcard.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2010, 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
@@ -25,7 +25,10 @@
#include "wildcard.h"
#include "llist.h"
#include "fileinfo.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -59,10 +62,15 @@ void Curl_wildcard_dtor(struct WildcardData *wc)
wc->filelist = NULL;
}
- free(wc->path);
- wc->path = NULL;
- free(wc->pattern);
- wc->pattern = NULL;
+ if(wc->path) {
+ free(wc->path);
+ wc->path = NULL;
+ }
+
+ if(wc->pattern) {
+ free(wc->pattern);
+ wc->pattern = NULL;
+ }
wc->customptr = NULL;
wc->state = CURLWC_INIT;
diff --git a/lib/x509asn1.c b/lib/x509asn1.c
index a3dfd646b..af08cee54 100644
--- a/lib/x509asn1.c
+++ b/lib/x509asn1.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -22,8 +22,7 @@
#include "curl_setup.h"
-#if defined(USE_GSKIT) || defined(USE_NSS) || defined(USE_GNUTLS) || \
- defined(USE_CYASSL)
+#if defined(USE_GSKIT) || defined(USE_NSS)
#include <curl/curl.h>
#include "urldata.h"
@@ -34,7 +33,10 @@
#include "inet_pton.h"
#include "curl_base64.h"
#include "x509asn1.h"
-#include "curl_printf.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "curl_memory.h"
/* The last #include file should be: */
#include "memdebug.h"
@@ -210,6 +212,7 @@ static const char * octet2str(const char * beg, const char * end)
}
static const char * bit2str(const char * beg, const char * end)
+
{
/* Convert an ASN.1 bit string to a printable string.
Return the dynamically allocated string, or NULL if an error occurs. */
@@ -298,10 +301,8 @@ utf8asn1str(char * * to, int type, const char * from, const char * end)
case 4:
wc = (wc << 8) | *(const unsigned char *) from++;
wc = (wc << 8) | *(const unsigned char *) from++;
- /* fallthrough */
case 2:
wc = (wc << 8) | *(const unsigned char *) from++;
- /* fallthrough */
default: /* case 1: */
wc = (wc << 8) | *(const unsigned char *) from++;
}
@@ -539,6 +540,8 @@ static const char * UTime2str(const char * beg, const char * end)
const char * Curl_ASN1tostr(curl_asn1Element * elem, int type)
{
+ static const char zero = '\0';
+
/* Convert an ASN.1 element to a printable string.
Return the dynamically allocated string, or NULL if an error occurs. */
@@ -559,7 +562,7 @@ const char * Curl_ASN1tostr(curl_asn1Element * elem, int type)
case CURL_ASN1_OCTET_STRING:
return octet2str(elem->beg, elem->end);
case CURL_ASN1_NULL:
- return strdup("");
+ return strdup(&zero);
case CURL_ASN1_OBJECT_IDENTIFIER:
return OID2str(elem->beg, elem->end, TRUE);
case CURL_ASN1_UTC_TIME:
@@ -821,7 +824,7 @@ static void do_pubkey(struct SessionHandle * data, int certnum,
/* Compute key length. */
for(q = elem.beg; !*q && q < elem.end; q++)
;
- len = (unsigned long)((elem.end - q) * 8);
+ len = (elem.end - q) * 8;
if(len)
for(i = *(unsigned char *) q; !(i & 0x80); i <<= 1)
len--;
@@ -1024,7 +1027,7 @@ CURLcode Curl_extract_certinfo(struct connectdata * conn,
return CURLE_OK;
}
-#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_CYASSL */
+#endif /* USE_GSKIT or USE_NSS */
#if defined(USE_GSKIT)
@@ -1116,7 +1119,8 @@ CURLcode Curl_verifyhost(struct connectdata * conn,
if(len > 0)
if(strlen(dnsname) == (size_t) len)
i = Curl_cert_hostcheck((const char *) dnsname, conn->host.name);
- free(dnsname);
+ if(dnsname)
+ free(dnsname);
if(!i)
return CURLE_PEER_FAILED_VERIFICATION;
matched = i;
diff --git a/lib/x509asn1.h b/lib/x509asn1.h
index eb23e506a..075c424f3 100644
--- a/lib/x509asn1.h
+++ b/lib/x509asn1.h
@@ -8,7 +8,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -25,8 +25,7 @@
#include "curl_setup.h"
-#if defined(USE_GSKIT) || defined(USE_NSS) || defined(USE_GNUTLS) || \
- defined(USE_CYASSL)
+#if defined(USE_GSKIT) || defined(USE_NSS)
#include "urldata.h"
@@ -128,5 +127,5 @@ CURLcode Curl_extract_certinfo(struct connectdata * conn, int certnum,
CURLcode Curl_verifyhost(struct connectdata * conn,
const char * beg, const char * end);
-#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_CYASSL */
+#endif /* USE_GSKIT or USE_NSS */
#endif /* HEADER_CURL_X509ASN1_H */
diff --git a/m4/curl-confopts.m4 b/m4/curl-confopts.m4
index 05c2d4b10..44b018e40 100644
--- a/m4/curl-confopts.m4
+++ b/m4/curl-confopts.m4
@@ -316,42 +316,6 @@ dnl AC_MSG_ERROR([options --enable-ares and --enable-threads are mutually ex
dnl fi
dnl ])
-dnl CURL_CHECK_OPTION_RT
-dnl -------------------------------------------------
-dnl Verify if configure has been involed with option
-dnl --disable-rt and set shell variable dontwant_rt
-dnl as appropriate.
-
-AC_DEFUN([CURL_CHECK_OPTION_RT], [
- AC_BEFORE([$0], [CURL_CHECK_LIB_THREADS])dnl
- AC_MSG_CHECKING([whether to disable dependency on -lrt])
- OPT_RT="default"
- AC_ARG_ENABLE(rt,
- AC_HELP_STRING([--disable-rt],[disable dependency on -lrt]),
- OPT_RT=$enableval)
- case "$OPT_RT" in
- no)
- dnl --disable-rt used (reverse logic)
- dontwant_rt="yes"
- AC_MSG_RESULT([yes])
- ;;
- default)
- dnl configure option not specified (so not disabled)
- dontwant_rt="no"
- AC_MSG_RESULT([(assumed no)]
- ;;
- *)
- dnl --enable-rt option used (reverse logic)
- dontwant_rt="no"
- AC_MSG_RESULT([no])
- ;;
- esac
- dnl TODO: may require mutual exclusion
- if test "$dontwant_rt" = "yes" && test "$want_thres" = "yes" ; then
- AC_MSG_ERROR([options --disable-rt and --enable-thread-resolver are mutually exclusive, at most one can be selected.])
- fi
-])
-
dnl CURL_CHECK_OPTION_WARNINGS
dnl -------------------------------------------------
diff --git a/m4/curl-openssl.m4 b/m4/curl-openssl.m4
index 5f5f87ae8..cd9074b02 100644
--- a/m4/curl-openssl.m4
+++ b/m4/curl-openssl.m4
@@ -67,7 +67,6 @@ AC_DEFUN([CURL_CHECK_OPENSSL_API_HEADERS], [
esac
case $tst_api in
0x110) tst_show="1.1.0" ;;
- 0x102) tst_show="1.0.2" ;;
0x101) tst_show="1.0.1" ;;
0x100) tst_show="1.0.0" ;;
0x099) tst_show="0.9.9" ;;
@@ -141,13 +140,6 @@ AC_DEFUN([CURL_CHECK_OPENSSL_API_LIBRARY], [
fi
if test "$tst_api" = "unknown"; then
AC_LINK_IFELSE([
- AC_LANG_FUNC_LINK_TRY([SSL_CONF_CTX_new])
- ],[
- tst_api="0x102"
- ])
- fi
- if test "$tst_api" = "unknown"; then
- AC_LINK_IFELSE([
AC_LANG_FUNC_LINK_TRY([SSL_renegotiate_abbreviated])
],[
tst_api="0x101"
@@ -218,7 +210,6 @@ AC_DEFUN([CURL_CHECK_OPENSSL_API_LIBRARY], [
fi
case $tst_api in
0x110) tst_show="1.1.0" ;;
- 0x102) tst_show="1.0.2" ;;
0x101) tst_show="1.0.1" ;;
0x100) tst_show="1.0.0" ;;
0x099) tst_show="0.9.9" ;;
diff --git a/maketgz b/maketgz
index d80461c1c..5aba1a3dc 100755
--- a/maketgz
+++ b/maketgz
@@ -9,7 +9,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -60,9 +60,8 @@ sed -e 's/^#define LIBCURL_VERSION .*/#define LIBCURL_VERSION "'$libversion'"/g'
# Replace version number in header file:
sed 's/#define CURL_VERSION .*/#define CURL_VERSION "'$curlversion'"/g' $CHEADER >$CHEADER.dist
-# Generate VC7, VC8, VC9, VC10, VC11, VC12 and VC14 versions from the VC6
-# Makefile versions
-for ver in vc7 vc8 vc9 vc10 vc11 vc12 vc14; do
+# Generate VC8, VC9, and VC10 versions from the VC6 Makefile versions
+for ver in vc8 vc9 vc10; do
make -f Makefile.dist $ver
mv src/Makefile.$ver src/Makefile.$ver.dist
mv lib/Makefile.$ver lib/Makefile.$ver.dist
@@ -129,7 +128,7 @@ echo "make vc-ide"
make -s vc-ide
echo "produce CHANGES"
-git log --pretty=fuller --no-color --date=short --decorate=full -1000 | ./scripts/log2changes.pl > CHANGES.dist
+git log --pretty=fuller --no-color --date=short --decorate=full -1000 | ./log2changes.pl > CHANGES.dist
############################################################################
#
diff --git a/missing b/missing
index f62bbae30..a9f9d941e 100755
--- a/missing
+++ b/missing
@@ -1,10 +1,7 @@
#! /bin/sh
-# Common wrapper for a few potentially missing GNU programs.
-
-scriptversion=2013-10-28.13; # UTC
-
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
-# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+# Common stub for a few missing GNU programs while installing.
+# Copyright 1996, 1997, 1999, 2000 Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
@@ -17,7 +14,9 @@ scriptversion=2013-10-28.13; # UTC
# GNU General Public License for more details.
# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
# As a special exception to the GNU General Public License, if you
# distribute this file as part of a program that contains a
@@ -25,191 +24,260 @@ scriptversion=2013-10-28.13; # UTC
# the same distribution terms that you use for the rest of that program.
if test $# -eq 0; then
- echo 1>&2 "Try '$0 --help' for more information"
+ echo 1>&2 "Try \`$0 --help' for more information"
exit 1
fi
-case $1 in
+run=:
- --is-lightweight)
- # Used by our autoconf macros to check whether the available missing
- # script is modern enough.
- exit 0
- ;;
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+ configure_ac=configure.ac
+else
+ configure_ac=configure.in
+fi
- --run)
- # Back-compat with the calling convention used by older automake.
- shift
- ;;
+case "$1" in
+--run)
+ # Try to run requested program, and just exit if it succeeds.
+ run=
+ shift
+ "$@" && exit 0
+ ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
-h|--h|--he|--hel|--help)
echo "\
$0 [OPTION]... PROGRAM [ARGUMENT]...
-Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
-to PROGRAM being missing or too old.
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
Options:
-h, --help display this help and exit
-v, --version output version information and exit
+ --run try to run the given command, and emulate it if it fails
Supported PROGRAM values:
- aclocal autoconf autoheader autom4te automake makeinfo
- bison yacc flex lex help2man
-
-Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
-'g' are ignored when checking the name.
-
-Send bug reports to <bug-automake@gnu.org>."
- exit $?
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`curl_config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ help2man touch the output file
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ tar try tar, gnutar, gtar, then tar without non-portable flags
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]"
;;
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
- echo "missing $scriptversion (GNU Automake)"
- exit $?
+ echo "missing 0.3 - GNU automake"
;;
-*)
- echo 1>&2 "$0: unknown '$1' option"
- echo 1>&2 "Try '$0 --help' for more information"
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
exit 1
;;
-esac
+ aclocal)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
-# Run the given program, remember its exit status.
-"$@"; st=$?
-
-# If it succeeded, we are done.
-test $st -eq 0 && exit 0
-
-# Also exit now if we it failed (or wasn't found), and '--version' was
-# passed; such an option is passed most likely to detect whether the
-# program is present and works.
-case $2 in --version|--help) exit $st;; esac
-
-# Exit code 63 means version mismatch. This often happens when the user
-# tries to use an ancient version of a tool on a file that requires a
-# minimum version.
-if test $st -eq 63; then
- msg="probably too old"
-elif test $st -eq 127; then
- # Program was missing.
- msg="missing on your system"
-else
- # Program was found and executed, but failed. Give up.
- exit $st
-fi
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`${configure_ac}'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+ test -z "$files" && files="curl_config.h"
+ touch_files=
+ for f in $files; do
+ case "$f" in
+ *:*) touch_files="$touch_files "`echo "$f" |
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+ *) touch_files="$touch_files $f.in";;
+ esac
+ done
+ touch $touch_files
+ ;;
+
+ automake)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print |
+ sed 's/\.am$/.in/' |
+ while read f; do touch "$f"; done
+ ;;
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
-
-program_details ()
-{
- case $1 in
- aclocal|automake)
- echo "The '$1' program is part of the GNU Automake package:"
- echo "<$gnu_software_URL/automake>"
- echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
- echo "<$gnu_software_URL/autoconf>"
- echo "<$gnu_software_URL/m4/>"
- echo "<$perl_URL>"
- ;;
- autoconf|autom4te|autoheader)
- echo "The '$1' program is part of the GNU Autoconf package:"
- echo "<$gnu_software_URL/autoconf/>"
- echo "It also requires GNU m4 and Perl in order to run:"
- echo "<$gnu_software_URL/m4/>"
- echo "<$perl_URL>"
- ;;
- esac
-}
-
-give_advice ()
-{
- # Normalize program name to check for.
- normalized_program=`echo "$1" | sed '
- s/^gnu-//; t
- s/^gnu//; t
- s/^g//; t'`
-
- printf '%s\n' "'$1' is $msg."
-
- configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
- case $normalized_program in
- autoconf*)
- echo "You should only need it if you modified 'configure.ac',"
- echo "or m4 files included by it."
- program_details 'autoconf'
- ;;
- autoheader*)
- echo "You should only need it if you modified 'acconfig.h' or"
- echo "$configure_deps."
- program_details 'autoheader'
- ;;
- automake*)
- echo "You should only need it if you modified 'Makefile.am' or"
- echo "$configure_deps."
- program_details 'automake'
- ;;
- aclocal*)
- echo "You should only need it if you modified 'acinclude.m4' or"
- echo "$configure_deps."
- program_details 'aclocal'
- ;;
- autom4te*)
- echo "You might have modified some maintainer files that require"
- echo "the 'autom4te' program to be rebuilt."
- program_details 'autom4te'
- ;;
- bison*|yacc*)
- echo "You should only need it if you modified a '.y' file."
- echo "You may want to install the GNU Bison package:"
- echo "<$gnu_software_URL/bison/>"
- ;;
- lex*|flex*)
- echo "You should only need it if you modified a '.l' file."
- echo "You may want to install the Fast Lexical Analyzer package:"
- echo "<$flex_URL>"
- ;;
- help2man*)
- echo "You should only need it if you modified a dependency" \
- "of a man page."
- echo "You may want to install the GNU Help2man package:"
- echo "<$gnu_software_URL/help2man/>"
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
;;
- makeinfo*)
- echo "You should only need it if you modified a '.texi' file, or"
- echo "any other file indirectly affecting the aspect of the manual."
- echo "You might want to install the Texinfo package:"
- echo "<$gnu_software_URL/texinfo/>"
- echo "The spurious makeinfo call might also be the consequence of"
- echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
- echo "want to install GNU make:"
- echo "<$gnu_software_URL/make/>"
- ;;
- *)
- echo "You might have modified some files without having the proper"
- echo "tools for further handling them. Check the 'README' file, it"
- echo "often tells you about the needed prerequisites for installing"
- echo "this package. You may also peek at any GNU archive site, in"
- echo "case some other package contains this missing '$1' program."
- ;;
- esac
-}
-
-give_advice "$1" | sed -e '1s/^/WARNING: /' \
- -e '2,$s/^/ /' >&2
-
-# Propagate the correct exit status (expected to be 127 for a program
-# not found, 63 for a program that failed due to version mismatch).
-exit $st
-
-# Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ help2man)
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a dependency of a manual page. You may need the
+ \`Help2man' package in order for those modifications to take
+ effect. You can get \`Help2man' from any GNU archive site."
+
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+ fi
+ if [ -f "$file" ]; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo ".ab help2man is required to generate this page"
+ exit 1
+ fi
+ ;;
+
+ makeinfo)
+ if test -z "$run" && (makeinfo --version) > /dev/null 2>&1; then
+ # We have makeinfo, but it failed.
+ exit 1
+ fi
+
+ echo 1>&2 "\
+WARNING: \`$1' is missing on your system. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ the \`GNU make' package. Grab either from any GNU archive site."
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
+ fi
+ touch $file
+ ;;
+
+ tar)
+ shift
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ fi
+
+ # We have already tried tar in the generic part.
+ # Look for gnutar/gtar before invocation to avoid ugly error
+ # messages.
+ if (gnutar --version > /dev/null 2>&1); then
+ gnutar ${1+"$@"} && exit 0
+ fi
+ if (gtar --version > /dev/null 2>&1); then
+ gtar ${1+"$@"} && exit 0
+ fi
+ firstarg="$1"
+ if shift; then
+ case "$firstarg" in
+ *o*)
+ firstarg=`echo "$firstarg" | sed s/o//`
+ tar "$firstarg" ${1+"$@"} && exit 0
+ ;;
+ esac
+ case "$firstarg" in
+ *h*)
+ firstarg=`echo "$firstarg" | sed s/h//`
+ tar "$firstarg" ${1+"$@"} && exit 0
+ ;;
+ esac
+ fi
+
+ echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+ You may want to install GNU tar or Free paxutils, or check the
+ command line arguments."
+ exit 1
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and you do not seem to have it handy on your
+ system. You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequirements for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/mkinstalldirs b/mkinstalldirs
new file mode 100755
index 000000000..55d537f87
--- /dev/null
+++ b/mkinstalldirs
@@ -0,0 +1,162 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+
+scriptversion=2009-04-28.21; # UTC
+
+# Original author: Noah Friedman <friedman@prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain.
+#
+# This file is maintained in Automake, please report
+# bugs to <bug-automake@gnu.org> or send patches to
+# <automake-patches@gnu.org>.
+
+nl='
+'
+IFS=" "" $nl"
+errstatus=0
+dirmode=
+
+usage="\
+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
+
+Create each directory DIR (with mode MODE, if specified), including all
+leading file name components.
+
+Report bugs to <bug-automake@gnu.org>."
+
+# process command line arguments
+while test $# -gt 0 ; do
+ case $1 in
+ -h | --help | --h*) # -h for help
+ echo "$usage"
+ exit $?
+ ;;
+ -m) # -m PERM arg
+ shift
+ test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
+ dirmode=$1
+ shift
+ ;;
+ --version)
+ echo "$0 $scriptversion"
+ exit $?
+ ;;
+ --) # stop option processing
+ shift
+ break
+ ;;
+ -*) # unknown option
+ echo "$usage" 1>&2
+ exit 1
+ ;;
+ *) # first non-opt arg
+ break
+ ;;
+ esac
+done
+
+for file
+do
+ if test -d "$file"; then
+ shift
+ else
+ break
+ fi
+done
+
+case $# in
+ 0) exit 0 ;;
+esac
+
+# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
+# mkdir -p a/c at the same time, both will detect that a is missing,
+# one will create a, then the other will try to create a and die with
+# a "File exists" error. This is a problem when calling mkinstalldirs
+# from a parallel make. We use --version in the probe to restrict
+# ourselves to GNU mkdir, which is thread-safe.
+case $dirmode in
+ '')
+ if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ echo "mkdir -p -- $*"
+ exec mkdir -p -- "$@"
+ else
+ # On NextStep and OpenStep, the 'mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because '.' already
+ # exists.
+ test -d ./-p && rmdir ./-p
+ test -d ./--version && rmdir ./--version
+ fi
+ ;;
+ *)
+ if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
+ test ! -d ./--version; then
+ echo "mkdir -m $dirmode -p -- $*"
+ exec mkdir -m "$dirmode" -p -- "$@"
+ else
+ # Clean up after NextStep and OpenStep mkdir.
+ for d in ./-m ./-p ./--version "./$dirmode";
+ do
+ test -d $d && rmdir $d
+ done
+ fi
+ ;;
+esac
+
+for file
+do
+ case $file in
+ /*) pathcomp=/ ;;
+ *) pathcomp= ;;
+ esac
+ oIFS=$IFS
+ IFS=/
+ set fnord $file
+ shift
+ IFS=$oIFS
+
+ for d
+ do
+ test "x$d" = x && continue
+
+ pathcomp=$pathcomp$d
+ case $pathcomp in
+ -*) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ echo "mkdir $pathcomp"
+
+ mkdir "$pathcomp" || lasterr=$?
+
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ else
+ if test ! -z "$dirmode"; then
+ echo "chmod $dirmode $pathcomp"
+ lasterr=
+ chmod "$dirmode" "$pathcomp" || lasterr=$?
+
+ if test ! -z "$lasterr"; then
+ errstatus=$lasterr
+ fi
+ fi
+ fi
+ fi
+
+ pathcomp=$pathcomp/
+ done
+done
+
+exit $errstatus
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/packages/AIX/Makefile.in b/packages/AIX/Makefile.in
index 1b8b5de8b..b898d16a0 100644
--- a/packages/AIX/Makefile.in
+++ b/packages/AIX/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/AIX
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -169,7 +160,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -253,7 +243,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -306,7 +296,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -323,6 +312,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -399,6 +389,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/AIX/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/AIX/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -693,8 +684,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/AIX/RPM/Makefile.in b/packages/AIX/RPM/Makefile.in
index 76e6a336a..a8d5ba535 100644
--- a/packages/AIX/RPM/Makefile.in
+++ b/packages/AIX/RPM/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/AIX/RPM
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs $(srcdir)/curl.spec.in README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES = curl.spec
@@ -134,7 +125,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/curl.spec.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -193,7 +183,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -246,7 +236,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -263,6 +252,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -338,6 +328,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/AIX/RPM/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/AIX/RPM/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -514,8 +505,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/EPM/Makefile.in b/packages/EPM/Makefile.in
index 9339d7cd1..489dd95b0 100644
--- a/packages/EPM/Makefile.in
+++ b/packages/EPM/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/EPM
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs $(srcdir)/curl.list.in README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES = curl.list
@@ -134,7 +125,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/curl.list.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -193,7 +183,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -246,7 +236,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -263,6 +252,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -339,6 +329,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/EPM/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/EPM/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -515,8 +506,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/Linux/Makefile.in b/packages/Linux/Makefile.in
index fa9b56533..1ddd000cd 100644
--- a/packages/Linux/Makefile.in
+++ b/packages/Linux/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/Linux
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -169,7 +160,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -253,7 +243,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -306,7 +296,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -323,6 +312,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -398,6 +388,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Linux/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Linux/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -692,8 +683,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/Linux/RPM/Makefile.in b/packages/Linux/RPM/Makefile.in
index 023994bc8..164e0e014 100644
--- a/packages/Linux/RPM/Makefile.in
+++ b/packages/Linux/RPM/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,9 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/Linux/RPM
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs $(srcdir)/curl.spec.in \
+ $(srcdir)/curl-ssl.spec.in README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +101,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES = curl.spec curl-ssl.spec
@@ -134,8 +126,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/curl-ssl.spec.in \
- $(srcdir)/curl.spec.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -194,7 +184,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -247,7 +237,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -264,6 +253,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -339,6 +329,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Linux/RPM/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Linux/RPM/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -517,8 +508,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/Makefile.in b/packages/Makefile.in
index 0d49b63ba..7bbde3da4 100644
--- a/packages/Makefile.in
+++ b/packages/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -169,7 +160,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -253,7 +243,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -306,7 +296,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -323,6 +312,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -430,6 +420,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -724,8 +715,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/OS400/README.OS400 b/packages/OS400/README.OS400
index 269ead33e..99b606c89 100644
--- a/packages/OS400/README.OS400
+++ b/packages/OS400/README.OS400
@@ -93,14 +93,12 @@ options:
CURLOPT_PROXYPASSWORD
CURLOPT_PROXYUSERNAME
CURLOPT_PROXYUSERPWD
- CURLOPT_PROXY_SERVICE_NAME
CURLOPT_RANDOM_FILE
CURLOPT_RANGE
CURLOPT_REFERER
CURLOPT_RTSP_SESSION_UID
CURLOPT_RTSP_STREAM_URI
CURLOPT_RTSP_TRANSPORT
- CURLOPT_SERVICE_NAME
CURLOPT_SOCKS5_GSSAPI_SERVICE
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 Note: SSH not available on OS400.
CURLOPT_SSH_KNOWNHOSTS Note: SSH not available on OS400.
@@ -148,7 +146,7 @@ parameter/array boundary.
Please note that CURLFORM_PTRCONTENTS and CURLFORM_BUFFERPTR are considered
unconvertible strings and thus are NOT followed by a CCSID.
-_ curl_easy_getinfo_ccsid()
+_ curl_easy_getinfo_ccsid
The following options are followed by a 'char * *' and a CCSID. Unlike
curl_easy_getinfo(), the value returned in the pointer should be freed after
use:
@@ -169,14 +167,6 @@ CCSID. Returned structures sould be free'ed using curl_certinfo_free_all() after
use.
Other options are processed like in curl_easy_getinfo().
-_ curl_pushheader_bynum_cssid() and curl_pushheader_byname_ccsid()
- Although the prototypes are self-explanatory, the returned string pointer
-should be freed after use, as opposite to the non-ccsid versions of these
-procedures.
- Please note that HTTP2 is not (yet) implemented on OS/400, thus these
-functions will always return NULL.
-
-
Standard compilation environment does support neither autotools nor make;
in fact, very few common utilities are available. As a consequence, the
config-os400.h has been coded manually and the compilation scripts are
@@ -273,14 +263,14 @@ _ Do not use original source include files unless you know what you are doing.
ILE/RPG support:
Since 95% of the OS/400 programmers use ILE/RPG exclusively, a definition
- /INCLUDE member is provided for this language. To include all libcurl
+ /COPY member is provided for this language. To include all libcurl
definitions in an ILE/RPG module, line
h bnddir('CURL/CURL')
must figure in the program header, and line
- d/include curl/h,curl.inc
+ d/copy curl/h,curl.inc
in the global data section of the module's source code.
diff --git a/packages/OS400/ccsidcurl.c b/packages/OS400/ccsidcurl.c
index 7b7607130..d0e6827b7 100644
--- a/packages/OS400/ccsidcurl.c
+++ b/packages/OS400/ccsidcurl.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -1154,14 +1154,12 @@ curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
case CURLOPT_PROXYPASSWORD:
case CURLOPT_PROXYUSERNAME:
case CURLOPT_PROXYUSERPWD:
- case CURLOPT_PROXY_SERVICE_NAME:
case CURLOPT_RANDOM_FILE:
case CURLOPT_RANGE:
case CURLOPT_REFERER:
case CURLOPT_RTSP_SESSION_ID:
case CURLOPT_RTSP_STREAM_URI:
case CURLOPT_RTSP_TRANSPORT:
- case CURLOPT_SERVICE_NAME:
case CURLOPT_SOCKS5_GSSAPI_SERVICE:
case CURLOPT_SSH_HOST_PUBLIC_KEY_MD5:
case CURLOPT_SSH_KNOWNHOSTS:
@@ -1195,7 +1193,10 @@ curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...)
}
result = curl_easy_setopt(curl, tag, s);
- free(s);
+
+ if(s)
+ free(s);
+
break;
case CURLOPT_COPYPOSTFIELDS:
@@ -1278,42 +1279,3 @@ curl_form_long_value(long value)
return (char *) value;
}
-
-
-char *
-curl_pushheader_bynum_cssid(struct curl_pushheaders *h,
- size_t num, unsigned int ccsid)
-
-{
- char *d = (char *) NULL;
- char *s = curl_pushheader_bynum(h, num);
-
- if(s)
- d = dynconvert(ccsid, s, -1, ASCII_CCSID);
-
- return d;
-}
-
-
-char *
-curl_pushheader_byname_ccsid(struct curl_pushheaders *h, const char *header,
- unsigned int ccsidin, unsigned int ccsidout)
-
-{
- char *d = (char *) NULL;
- char *s;
-
- if(header) {
- header = dynconvert(ASCII_CCSID, header, -1, ccsidin);
-
- if(header) {
- s = curl_pushheader_byname(h, header);
- free((char *) header);
-
- if(s)
- d = dynconvert(ccsidout, s, -1, ASCII_CCSID);
- }
- }
-
- return d;
-}
diff --git a/packages/OS400/ccsidcurl.h b/packages/OS400/ccsidcurl.h
index cb15cced8..3d1fe7949 100644
--- a/packages/OS400/ccsidcurl.h
+++ b/packages/OS400/ccsidcurl.h
@@ -61,11 +61,5 @@ CURL_EXTERN int curl_formget_ccsid(struct curl_httppost * form, void * arg,
unsigned int ccsid);
CURL_EXTERN CURLcode curl_easy_setopt_ccsid(CURL * curl, CURLoption tag, ...);
CURL_EXTERN void curl_certinfo_free_all(struct curl_certinfo *info);
-CURL_EXTERN char *curl_pushheader_bynum_cssid(struct curl_pushheaders *h,
- size_t num, unsigned int ccsid);
-CURL_EXTERN char *curl_pushheader_byname_ccsid(struct curl_pushheaders *h,
- const char *header,
- unsigned int ccsidin,
- unsigned int ccsidout);
#endif
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
index 1221015e5..fcbf7c7c5 100644
--- a/packages/OS400/curl.inc.in
+++ b/packages/OS400/curl.inc.in
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -222,8 +222,6 @@
d c 2
d CURL_HTTP_VERSION_2_0...
d c 3
- d CURL_HTTP_VERSION_2...
- d c 3
*
d CURL_NETRC_IGNORED...
d c 0
@@ -278,9 +276,6 @@
d CURL_CSELECT_ERR...
d c X'00000004'
*
- d CURL_PUSH_OK c 0
- d CURL_PUSH_DENY c 1
- *
d CURLPAUSE_RECV c X'00000001'
d CURLPAUSE_RECV_CONT...
d c X'00000000'
@@ -522,8 +517,6 @@
d c 89
d CURLE_SSL_PINNEDPUBKEYNOTMATCH...
d c 90
- d CURLE_SSL_INVALIDCERTSTATUS...
- d c 91
*
/if not defined(CURL_NO_OLDIES)
d CURLE_URL_MALFORMAT_USER...
@@ -681,9 +674,7 @@
d c 3
*
d CURLSSLOPT_ALLOW_BEAST...
- d c X'0001'
- d CURLSSLOPT_NO_REVOKE...
- d c X'0002'
+ d c 1
*
/if not defined(CURL_NO_OLDIES)
d curl_ftpssl s like(curl_usessl)
@@ -1212,18 +1203,6 @@
d c 10230
d CURLOPT_UNIX_SOCKET_PATH...
d c 10231
- d CURLOPT_SSL_VERIFYSTATUS...
- d c 00232
- d CURLOPT_SSL_FALSESTART...
- d c 00233
- d CURLOPT_PATH_AS_IS...
- d c 00234
- d CURLOPT_PROXY_SERVICE_NAME...
- d c 10235
- d CURLOPT_SERVICE_NAME...
- d c 10236
- d CURLOPT_PIPEWAIT...
- d c 00237
*
/if not defined(CURL_NO_OLDIES)
d CURLOPT_FILE c 10001
@@ -1582,18 +1561,6 @@
d c 10012
d CURLMOPT_MAX_TOTAL_CONNECTIONS...
d c 00013
- d CURLMOPT_PUSHFUNCTION...
- d c 20014
- d CURLMOPT_PUSHDATA...
- d c 10015
- *
- * Bitmask bits for CURLMOPT_PIPELING.
- *
- d CURLPIPE_NOTHING...
- d c x'00000000'
- d CURLPIPE_HTTP1 c x'00000001'
- d CURLPIPE_MULTIPLEX...
- d c x'00000002'
*
* Public API enums for RTSP requests.
*
@@ -1812,12 +1779,6 @@
d curl_socket_callback...
d s * based(######ptr######) procptr
*
- d curl_multi_timer_callback...
- d s * based(######ptr######) procptr
- *
- d curl_push_callback...
- d s * based(######ptr######) procptr
- *
d curl_opensocket_callback...
d s * based(######ptr######) procptr
*
@@ -2133,16 +2094,6 @@
d pr * extproc('curl_multi_strerror') char *
d code value like(CURLMcode)
*
- d curl_pushheader_bynum...
- d pr * extproc('curl_pushheader_bynum') char *
- d h * value curl_pushheaders *
- d num 10u 0 value
- *
- d curl_pushheader_byname...
- d pr * extproc('curl_pushheader_byname') char *
- d h * value curl_pushheaders *
- d header * value options(*string) const char *
- *
d curl_multi_socket...
d pr extproc('curl_multi_socket')
d like(CURLMcode)
@@ -2310,19 +2261,4 @@
d objectarg * value options(*string: *nopass)
d ccsid 10u 0 value options(*nopass)
*
- d curl_pushheader_bynum_ccsid...
- d pr * extproc( char *
- d 'curl_pushheader_bynum_ccsid')
- d h * value curl_pushheaders *
- d num 10u 0 value
- d ccsid 10u 0 value
- *
- d curl_pushheader_byname_ccsid...
- d pr * extproc( char *
- d 'curl_pushheader_byname_ccsid')
- d h * value curl_pushheaders *
- d header * value options(*string) const char *
- d ccsidin 10u 0 value
- d ccsidout 10u 0 value
- *
/endif
diff --git a/packages/OS400/makefile.sh b/packages/OS400/makefile.sh
index 141d8778c..d2b6bc98a 100644
--- a/packages/OS400/makefile.sh
+++ b/packages/OS400/makefile.sh
@@ -21,7 +21,7 @@ fi
# Create the DOCS source file if it does not exist.
if action_needed "${LIBIFSNAME}/DOCS.FILE"
-then CMD="CRTSRCPF FILE(${TARGETLIB}/DOCS) RCDLEN(240)"
+then CMD="CRTSRCPF FILE(${TARGETLIB}/DOCS) RCDLEN(112)"
CMD="${CMD} CCSID(${TGTCCSID}) TEXT('Documentation texts')"
system "${CMD}"
fi
diff --git a/packages/OS400/os400sys.c b/packages/OS400/os400sys.c
index 4be1deaa5..caeaa9559 100644
--- a/packages/OS400/os400sys.c
+++ b/packages/OS400/os400sys.c
@@ -99,7 +99,9 @@ thdbufdestroy(void * private)
localkey_t i;
for(i = (localkey_t) 0; i < LK_LAST; i++) {
- free(p->buf);
+ if(p->buf)
+ free(p->buf);
+
p++;
}
@@ -279,7 +281,9 @@ Curl_getnameinfo_a(const struct sockaddr * sa, curl_socklen_t salen,
if(servname && servnamelen)
if(!(eservname = malloc(servnamelen))) {
- free(enodename);
+ if(enodename)
+ free(enodename);
+
return EAI_MEMORY;
}
@@ -300,8 +304,12 @@ Curl_getnameinfo_a(const struct sockaddr * sa, curl_socklen_t salen,
}
}
- free(enodename);
- free(eservname);
+ if(enodename)
+ free(enodename);
+
+ if(eservname)
+ free(eservname);
+
return status;
}
@@ -334,7 +342,9 @@ Curl_getaddrinfo_a(const char * nodename, const char * servname,
i = strlen(servname);
if(!(eservname = malloc(i + 1))) {
- free(enodename);
+ if(enodename)
+ free(enodename);
+
return EAI_MEMORY;
}
@@ -343,8 +353,13 @@ Curl_getaddrinfo_a(const char * nodename, const char * servname,
}
status = getaddrinfo(enodename, eservname, hints, res);
- free(enodename);
- free(eservname);
+
+ if(enodename)
+ free(enodename);
+
+ if(eservname)
+ free(eservname);
+
return status;
}
@@ -871,7 +886,9 @@ Curl_gss_init_sec_context_a(OM_uint32 * minor_status,
target_name, mech_type, req_flags, time_req,
input_chan_bindings, inp, actual_mech_type,
output_token, ret_flags, time_rec);
- free(in.value);
+
+ if(in.value)
+ free(in.value);
if(rc != GSS_S_COMPLETE || !output_token ||
!output_token->length || !output_token->value)
@@ -968,7 +985,9 @@ Curl_ldap_simple_bind_s_a(void * ld, char * dn, char * passwd)
i = strlen(passwd);
if(!(epasswd = malloc(i + 1))) {
- free(edn);
+ if(edn)
+ free(edn);
+
return LDAP_NO_MEMORY;
}
@@ -977,8 +996,13 @@ Curl_ldap_simple_bind_s_a(void * ld, char * dn, char * passwd)
}
i = ldap_simple_bind_s(ld, edn, epasswd);
- free(epasswd);
- free(edn);
+
+ if(epasswd)
+ free(epasswd);
+
+ if(edn)
+ free(edn);
+
return i;
}
@@ -1055,8 +1079,12 @@ Curl_ldap_search_s_a(void * ld, char * base, int scope, char * filter,
free(eattrs);
}
- free(efilter);
- free(ebase);
+ if(efilter)
+ free(efilter);
+
+ if(ebase)
+ free(ebase);
+
return status;
}
@@ -1084,7 +1112,9 @@ Curl_ldap_get_values_len_a(void * ld, LDAPMessage * entry, const char * attr)
}
result = ldap_get_values_len(ld, entry, cp);
- free(cp);
+
+ if(cp)
+ free(cp);
/* Result data are binary in nature, so they haven't been
converted to EBCDIC. Therefore do not convert. */
diff --git a/packages/Solaris/Makefile.in b/packages/Solaris/Makefile.in
index 0e43d89b8..60a005adb 100644
--- a/packages/Solaris/Makefile.in
+++ b/packages/Solaris/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -17,17 +17,7 @@
#
#
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -91,6 +81,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/Solaris
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -111,8 +103,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -137,7 +128,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -196,7 +186,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -249,7 +239,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -266,6 +255,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -345,6 +335,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Solaris/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Solaris/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -519,8 +510,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
package:
if [ ! -f release ]; then echo 0 > release; fi
diff --git a/packages/Symbian/group/libcurl.mmp b/packages/Symbian/group/libcurl.mmp
index 545cdee94..2419c206c 100644
--- a/packages/Symbian/group/libcurl.mmp
+++ b/packages/Symbian/group/libcurl.mmp
@@ -16,7 +16,7 @@ MACRO BUILDING_LIBCURL
MACRO HAVE_LIBZ
#endif
#ifdef ENABLE_SSL
-MACRO USE_OPENSSL
+MACRO USE_SSLEAY
#endif
SOURCEPATH ../../../lib
@@ -38,9 +38,9 @@ SOURCE \
vtls/axtls.c idn_win32.c http_negotiate_sspi.c vtls/cyassl.c \
http_proxy.c non-ascii.c asyn-ares.c asyn-thread.c curl_gssapi.c \
curl_ntlm.c curl_ntlm_wb.c curl_ntlm_core.c curl_ntlm_msgs.c \
- curl_sasl.c vtls/schannel.c curl_multibyte.c vtls/darwinssl.c \
- conncache.c curl_sasl_sspi.c smb.c curl_sasl_gssapi.c \
- curl_endian.c curl_des.c
+ curl_sasl.c vtls/curl_schannel.c curl_multibyte.c \
+ vtls/curl_darwinssl.c bundles.c conncache.c curl_sasl_sspi.c smb.c \
+ curl_sasl_gssapi.c curl_endian.c
USERINCLUDE ../../../lib ../../../include/curl
#ifdef ENABLE_SSL
diff --git a/packages/TPF/curl.mak b/packages/TPF/curl.mak
index 5ef2ae16d..6e9340464 100644
--- a/packages/TPF/curl.mak
+++ b/packages/TPF/curl.mak
@@ -43,6 +43,7 @@ CFLAGS_CURL += -w
# use SSL
# (overrides Curl's lib/config-tpf.h file)
CFLAGS_CURL += -DUSE_OPENSSL
+CFLAGS_CURL += -DUSE_SSLEAY
# disable all protocols except FTP and HTTP
# (overrides Curl's lib/config-tpf.h file)
diff --git a/packages/Win32/Makefile.in b/packages/Win32/Makefile.in
index eb8ec1ce3..9c818362e 100644
--- a/packages/Win32/Makefile.in
+++ b/packages/Win32/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/Win32
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -169,7 +160,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -253,7 +243,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -306,7 +296,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -323,6 +312,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -399,6 +389,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Win32/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Win32/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -693,8 +684,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/Win32/cygwin/Makefile.in b/packages/Win32/cygwin/Makefile.in
index 1b05aeee3..eedce1183 100644
--- a/packages/Win32/cygwin/Makefile.in
+++ b/packages/Win32/cygwin/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/Win32/cygwin
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -134,7 +125,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -193,7 +183,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -246,7 +236,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -263,6 +252,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -355,6 +345,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/Win32/cygwin/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/Win32/cygwin/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -529,8 +520,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
cygwinbin:
rm -rf $(cygwintmp)
diff --git a/packages/vms/Makefile.in b/packages/vms/Makefile.in
index 35cd98139..99e63137d 100644
--- a/packages/vms/Makefile.in
+++ b/packages/vms/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = packages/vms
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -134,7 +125,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -193,7 +183,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -246,7 +236,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -263,6 +252,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -374,6 +364,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign packages/vms/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign packages/vms/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -548,8 +539,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/packages/vms/build_gnv_curl_pcsi_desc.com b/packages/vms/build_gnv_curl_pcsi_desc.com
index 3b4cd803f..572b9b8ba 100644
--- a/packages/vms/build_gnv_curl_pcsi_desc.com
+++ b/packages/vms/build_gnv_curl_pcsi_desc.com
@@ -113,7 +113,6 @@ $! Required product dependencies.
$!----------------------------------
$ vmsprd = "DEC"
$ if base .eqs. "I64VMS" then vmsprd = "HP"
-$ vsiprd = "VSI"
$!
$ write pdsc " software ''vmsprd' ''base' VMS ;"
$ arch_type = f$getsyi("ARCH_NAME")
@@ -127,11 +126,8 @@ $ if dashver .eqs. "-" then dashver = ""
$ vmstag = majver + minver + dashver
$ code = f$extract(0, 1, arch_type)
$ arch_code = f$extract(0, 1, arch_type)
-$ line_out = -
- " if ((not <software ''vsiprd' ''base' VMS version minimum" + -
- " ''node_swvers'>) and" + -
- " (not <software ''vmsprd' ''base' VMS version minimum ''node_swvers'>));"
-$ write pdsc line_out
+$ write pdsc -
+ " if (not <software ''vmsprd' ''base' VMS version minimum ''node_swvers'>) ;"
$ write pdsc " error NEED_VMS''vmstag';"
$ write pdsc " end if;"
$!
diff --git a/packages/vms/build_vms.com b/packages/vms/build_vms.com
index e21e57c47..d7edc463e 100644
--- a/packages/vms/build_vms.com
+++ b/packages/vms/build_vms.com
@@ -549,7 +549,7 @@ $ if (.not. nossl)
$ then
$ if (f$trnlnm("OPENSSL") .nes. "")
$ then
-$! cc_defs = cc_defs + ", USE_OPENSSL=1"
+$! cc_defs = cc_defs + ", USE_SSLEAY=1"
$ if ((f$trnlnm("SSL$INCLUDE") .nes. "") .and. (.not. nohpssl))
$ then
$! Use HP SSL.
diff --git a/packages/vms/gnv_link_curl.com b/packages/vms/gnv_link_curl.com
index b7e608386..960c24392 100644
--- a/packages/vms/gnv_link_curl.com
+++ b/packages/vms/gnv_link_curl.com
@@ -173,17 +173,9 @@ $ full_version = f$element(1, " ", hp_ssl_version)
$ ver_maj = f$element(0, ".", full_version)
$ ver_min = f$element(1, ".", full_version)
$ ver_patch = f$element(2, ".", full_version)
-$! ! ver_patch is typically both a number and some letters
$ ver_patch_len = f$length(ver_patch)
-$ ver_patchltr = ""
-$ver_patch_loop:
-$ ver_patchltr_c = f$extract(ver_patch_len - 1, 1, ver_patch)
-$ if ver_patchltr_c .les. "9" then goto ver_patch_loop_end
-$ ver_patchltr = ver_patchltr_c + ver_patchltr
-$ ver_patch_len = ver_patch_len - 1
-$ goto ver_patch_loop
-$ver_patch_loop_end:
-$ ver_patchnum = ver_patch - ver_patchltr
+$ ver_patchnum = f$extract(0, ver_patch_len - 1, ver_patch)
+$ ver_patchltr = f$extract(ver_patch_len - 1, 1, ver_patch)
$ if 'ver_maj' .ge. 0
$ then
$ if 'ver_min' .ge. 9
@@ -194,7 +186,6 @@ $ if ver_patchltr .ges. "w" then use_hp_ssl = 1
$ endif
$ endif
$ endif
-$set nover
$ if use_hp_ssl .eq. 0
$ then
$ write sys$output -
diff --git a/projects/README b/projects/README
index f83302813..b45d78397 100644
--- a/projects/README
+++ b/projects/README
@@ -88,46 +88,6 @@ Building with Visual C++
well as a configuration that includes both, it is recommend that you use the
all-in-one configuration.
-Running DLL based configurations
-================================
-
- If you are a developer and plan to run the curl tool from Visual Studio (eg
- you are debugging) with any third-party libraries (such as OpenSSL, wolfSSL
- or LibSSH2) then you will need to add the search path of these DLLs to the
- configuration's PATH environment. To do that:
-
- * Open the 'curl-all.sln' or 'curl.sln' solutions
-
- * Right-click on the 'curl' project and select Properties
-
- * Navigate to 'Configuration Properties > Debugging > Environment'
-
- * Add PATH='Path to DLL';C:\Windows\system32;C:\Windows;
- C:\Windows\System32\Wbem
-
- ... where 'Path to DLL` is the configuration specific path. For example the
- following configurations in Visual Studio 2010 might be:
-
- DLL Debug - DLL OpenSSL (Win32):
- PATH=..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;C:\Windows\system32;
- C:\Windows;C:\Windows\System32\Wbem
-
- DLL Debug - DLL OpenSSL (x64):
- PATH=..\..\..\..\..\openssl\build\Win64\VC10\DLL Debug;C:\Windows\system32;
- C:\Windows;C:\Windows\System32\Wbem
-
- DLL Debug - DLL wolfSSL (Win32):
- PATH=..\..\..\..\..\wolfssl\build\Win32\VC10\DLL Debug;C:\Windows\system32;
- C:\Windows;C:\Windows\System32\Wbem
-
- DLL Debug - DLL wolfSSL (x64):
- PATH=..\..\..\..\..\wolfssl\build\Win64\VC10\DLL Debug;C:\Windows\system32;
- C:\Windows;C:\Windows\System32\Wbem
-
- If you are using a configuration that uses multiple third-party library DLLs
- (such as DLL Debug - DLL OpenSSL - DLL LibSSH2) then 'Path to DLL' will need
- to contain the path to both of these.
-
Notes
=====
@@ -150,16 +110,6 @@ Notes
stored in the git repositoty) will need to be modified rather than the
generated project files that Visual Studio uses.
-Legacy Windows and SSL
-======================
-
- Some of the project configurations allow the use of WinSSL (specifically
- SChannel from Windows SSPI), the native SSL library in Windows. However,
- WinSSL in Windows <= XP is unable to connect to servers that no longer
- support the legacy handshakes and algorithms used by those versions. If
- you will be using curl in one of those earlier versions of Windows you
- should choose another SSL backend such as OpenSSL.
-
TODO
====
@@ -171,6 +121,5 @@ TODO
* Generate *.vcxproj.filters files for VC10, VC11 and VC12
* Add the Test Suite components
* Support for other development IDEs
- * Add PATH environment variables for third-party DLLs
Any additional help would be appreciated ;-) \ No newline at end of file
diff --git a/projects/Windows/VC10/curl-all.sln b/projects/Windows/VC10/curl.sln
index 7bd131c35..450127210 100644
--- a/projects/Windows/VC10/curl-all.sln
+++ b/projects/Windows/VC10/curl.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
@@ -17,8 +17,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -29,8 +27,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -45,8 +41,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -61,8 +55,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -83,10 +75,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -107,10 +95,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -139,10 +123,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -171,10 +151,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
@@ -195,10 +171,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -219,10 +191,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -251,10 +219,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -283,10 +247,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC10/lib/libcurl.sln b/projects/Windows/VC10/lib/libcurl.sln
index 15461ef9a..f29eccdda 100644
--- a/projects/Windows/VC10/lib/libcurl.sln
+++ b/projects/Windows/VC10/lib/libcurl.sln
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,34 +70,26 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC10/lib/libcurl.vcxproj b/projects/Windows/VC10/lib/libcurl.vcxproj
index ed43a1580..5023bf7dd 100644
--- a/projects/Windows/VC10/lib/libcurl.vcxproj
+++ b/projects/Windows/VC10/lib/libcurl.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -336,41 +304,21 @@
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -476,41 +424,21 @@
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -577,27 +505,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -661,70 +577,38 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -822,9 +706,7 @@
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)lib\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -834,9 +716,7 @@
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -854,6 +734,7 @@
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -862,11 +743,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -876,52 +758,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -930,11 +787,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -944,50 +802,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1002,6 +836,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1010,50 +845,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1068,6 +878,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1076,73 +887,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1151,8 +918,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1161,34 +933,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1197,8 +947,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<ClCompile>
@@ -1210,6 +965,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1217,28 +973,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1253,6 +994,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1260,36 +1002,19 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1298,11 +1023,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1312,18 +1038,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1332,11 +1067,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1346,17 +1082,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1366,11 +1111,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1379,16 +1125,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1398,11 +1153,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1411,15 +1167,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1428,11 +1193,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1442,18 +1208,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1462,11 +1237,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1476,18 +1252,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1496,11 +1281,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1510,17 +1296,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1529,11 +1324,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1543,17 +1339,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1568,6 +1373,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1576,16 +1382,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1600,6 +1415,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1608,16 +1424,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1632,6 +1457,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1640,15 +1466,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1663,6 +1498,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1671,15 +1507,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1688,11 +1533,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1702,18 +1548,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1722,11 +1577,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1736,17 +1592,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC10\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1756,11 +1621,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1769,16 +1635,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC10\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1788,11 +1663,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1801,20 +1677,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC10\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1823,8 +1708,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1833,11 +1723,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1846,18 +1737,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1866,8 +1763,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1876,11 +1778,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1889,18 +1792,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1909,18 +1818,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1929,8 +1844,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1939,11 +1859,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1952,8 +1873,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1962,11 +1888,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1975,18 +1902,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1995,8 +1928,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -2005,11 +1943,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2018,18 +1957,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2038,8 +1983,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2048,11 +1998,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2061,19 +2012,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2081,8 +2038,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2092,11 +2054,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2104,19 +2067,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2124,8 +2093,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2135,11 +2109,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2147,8 +2122,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<ClCompile>
@@ -2160,6 +2140,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2167,8 +2148,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
@@ -2180,6 +2166,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2187,8 +2174,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2203,6 +2195,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2210,8 +2203,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2226,6 +2224,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2233,19 +2232,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2253,8 +2258,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2264,11 +2274,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2276,19 +2287,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2296,8 +2313,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2307,11 +2329,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2319,20 +2342,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\amigaos.c" />
<ClCompile Include="..\..\..\..\lib\asyn-ares.c" />
<ClCompile Include="..\..\..\..\lib\asyn-thread.c" />
<ClCompile Include="..\..\..\..\lib\base64.c" />
+ <ClCompile Include="..\..\..\..\lib\bundles.c" />
<ClCompile Include="..\..\..\..\lib\conncache.c" />
<ClCompile Include="..\..\..\..\lib\connect.c" />
<ClCompile Include="..\..\..\..\lib\content_encoding.c" />
<ClCompile Include="..\..\..\..\lib\cookie.c" />
<ClCompile Include="..\..\..\..\lib\curl_addrinfo.c" />
- <ClCompile Include="..\..\..\..\lib\curl_des.c" />
<ClCompile Include="..\..\..\..\lib\curl_endian.c" />
<ClCompile Include="..\..\..\..\lib\curl_fnmatch.c" />
<ClCompile Include="..\..\..\..\lib\curl_gethostname.c" />
@@ -2428,21 +2456,22 @@
<ClCompile Include="..\..\..\..\lib\wildcard.c" />
<ClCompile Include="..\..\..\..\lib\x509asn1.c" />
<ClCompile Include="..\..\..\..\lib\vtls\axtls.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_darwinssl.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\cyassl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\darwinssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />
<ClCompile Include="..\..\..\..\lib\vtls\nss.c" />
<ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl_threadlock.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\vtls.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\lib\amigaos.h" />
<ClInclude Include="..\..\..\..\lib\arpa_telnet.h" />
<ClInclude Include="..\..\..\..\lib\asyn.h" />
+ <ClInclude Include="..\..\..\..\lib\bundles.h" />
<ClInclude Include="..\..\..\..\lib\config-win32.h" />
<ClInclude Include="..\..\..\..\lib\conncache.h" />
<ClInclude Include="..\..\..\..\lib\connect.h" />
@@ -2450,7 +2479,6 @@
<ClInclude Include="..\..\..\..\lib\cookie.h" />
<ClInclude Include="..\..\..\..\lib\curl_addrinfo.h" />
<ClInclude Include="..\..\..\..\lib\curl_base64.h" />
- <ClInclude Include="..\..\..\..\lib\curl_des.h" />
<ClInclude Include="..\..\..\..\lib\curl_endian.h" />
<ClInclude Include="..\..\..\..\lib\curl_fnmatch.h" />
<ClInclude Include="..\..\..\..\lib\curl_gethostname.h" />
@@ -2466,7 +2494,6 @@
<ClInclude Include="..\..\..\..\lib\curl_ntlm.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_msgs.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_wb.h" />
- <ClInclude Include="..\..\..\..\lib\curl_printf.h" />
<ClInclude Include="..\..\..\..\lib\curl_rtmp.h" />
<ClInclude Include="..\..\..\..\lib\curl_sasl.h" />
<ClInclude Include="..\..\..\..\lib\curl_sec.h" />
@@ -2541,15 +2568,15 @@
<ClInclude Include="..\..\..\..\lib\wildcard.h" />
<ClInclude Include="..\..\..\..\lib\x509asn1.h" />
<ClInclude Include="..\..\..\..\lib\vtls\axtls.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_darwinssl.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\cyassl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\darwinssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />
<ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />
<ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl_threadlock.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\vtls.h" />
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC10/src/curl.sln b/projects/Windows/VC10/src/curlsrc.sln
index 131f27b7a..13fc1d354 100644
--- a/projects/Windows/VC10/src/curl.sln
+++ b/projects/Windows/VC10/src/curlsrc.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,10 +70,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -102,10 +90,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC10/src/curl.vcxproj b/projects/Windows/VC10/src/curlsrc.vcxproj
index 13ee0b505..d25946558 100644
--- a/projects/Windows/VC10/src/curl.vcxproj
+++ b/projects/Windows/VC10/src/curlsrc.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -228,7 +196,7 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5228E9CE-A216-422F-A5E6-58E95E2DD71D}</ProjectGuid>
- <RootNamespace>curl</RootNamespace>
+ <RootNamespace>curlsrc</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="Configuration">
@@ -336,41 +304,21 @@
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -476,41 +424,21 @@
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -577,27 +505,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -661,78 +577,42 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC10\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -853,62 +733,54 @@
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(ProjectName)</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">curl</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
@@ -925,6 +797,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -934,41 +807,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
@@ -986,6 +836,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -995,42 +846,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<Midl>
@@ -1047,6 +874,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1056,41 +884,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1108,6 +913,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1117,42 +923,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<Midl>
@@ -1163,11 +945,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1178,43 +961,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1226,11 +986,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1241,44 +1002,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">
<Midl>
@@ -1289,42 +1026,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1335,12 +1042,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
@@ -1352,43 +1067,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1399,12 +1083,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -1415,11 +1107,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1430,12 +1123,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1447,11 +1148,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1462,12 +1164,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -1478,11 +1188,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1493,12 +1204,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1509,11 +1228,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1524,12 +1244,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1541,11 +1269,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1556,12 +1285,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1573,11 +1310,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1588,12 +1326,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
@@ -1610,6 +1356,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1619,10 +1366,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
@@ -1640,6 +1395,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1649,10 +1405,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -1669,6 +1433,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1678,10 +1443,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1698,6 +1471,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1707,10 +1481,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
@@ -1728,6 +1510,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1737,10 +1520,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1758,6 +1549,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1767,10 +1559,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1781,11 +1581,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1796,12 +1597,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1813,11 +1622,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1828,12 +1638,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1850,6 +1668,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1859,10 +1678,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1880,6 +1707,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1889,10 +1717,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<Midl>
@@ -1903,11 +1739,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1918,12 +1755,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -1935,11 +1780,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1950,12 +1796,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<Midl>
@@ -1972,6 +1826,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1981,10 +1836,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2002,6 +1865,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2011,10 +1875,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2025,11 +1897,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2040,12 +1913,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2057,11 +1938,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2072,12 +1954,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC10\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2094,6 +1984,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2103,10 +1994,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2124,6 +2023,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2133,10 +2033,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC10\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -2147,11 +2055,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2162,12 +2071,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -2179,11 +2096,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2194,12 +2112,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<Midl>
@@ -2216,6 +2142,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2225,10 +2152,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2246,6 +2181,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2255,10 +2191,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2269,11 +2213,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2284,12 +2229,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2301,11 +2254,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2316,12 +2270,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC10\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2338,6 +2300,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2347,10 +2310,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC10\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2368,6 +2339,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2377,10 +2349,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libssh2.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC10\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC10\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -2391,11 +2371,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2406,12 +2387,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2422,11 +2411,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2437,12 +2427,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -2454,11 +2452,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2469,12 +2468,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2486,11 +2493,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2501,12 +2509,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -2523,6 +2539,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2532,10 +2549,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2552,6 +2577,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2561,10 +2587,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2582,6 +2616,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2591,10 +2626,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2612,6 +2655,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2621,10 +2665,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC10\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\nonblock.c" />
diff --git a/projects/Windows/VC11/curl-all.sln b/projects/Windows/VC11/curl.sln
index bec0ad84c..c9085a936 100644
--- a/projects/Windows/VC11/curl-all.sln
+++ b/projects/Windows/VC11/curl.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
@@ -17,8 +17,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -29,8 +27,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -45,8 +41,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -61,8 +55,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -83,10 +75,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -107,10 +95,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -139,10 +123,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -171,10 +151,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
@@ -195,10 +171,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -219,10 +191,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -251,10 +219,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -283,10 +247,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC11/lib/libcurl.sln b/projects/Windows/VC11/lib/libcurl.sln
index 780dc91a2..9e3b9edf5 100644
--- a/projects/Windows/VC11/lib/libcurl.sln
+++ b/projects/Windows/VC11/lib/libcurl.sln
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,34 +70,26 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC11/lib/libcurl.vcxproj b/projects/Windows/VC11/lib/libcurl.vcxproj
index 714e36af1..6a13105d3 100644
--- a/projects/Windows/VC11/lib/libcurl.vcxproj
+++ b/projects/Windows/VC11/lib/libcurl.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -357,48 +325,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -525,48 +469,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -633,27 +553,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -717,70 +625,38 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -878,9 +754,7 @@
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)lib\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -890,9 +764,7 @@
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -910,6 +782,7 @@
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -918,11 +791,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -932,52 +806,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -986,11 +835,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1000,50 +850,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1058,6 +884,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1066,50 +893,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1124,6 +926,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1132,73 +935,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1207,8 +966,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1217,34 +981,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1253,8 +995,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<ClCompile>
@@ -1266,6 +1013,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1273,28 +1021,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1309,6 +1042,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1316,36 +1050,19 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1354,11 +1071,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1368,18 +1086,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1388,11 +1115,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1402,17 +1130,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1422,11 +1159,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1435,16 +1173,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1454,11 +1201,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1467,15 +1215,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1484,11 +1241,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1498,18 +1256,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1518,11 +1285,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1532,18 +1300,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1552,11 +1329,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1566,17 +1344,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1585,11 +1372,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1599,17 +1387,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1624,6 +1421,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1632,16 +1430,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1656,6 +1463,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1664,16 +1472,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1688,6 +1505,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1696,15 +1514,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1719,6 +1546,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1727,15 +1555,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1744,11 +1581,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1758,18 +1596,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC11\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1778,11 +1625,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1792,17 +1640,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC11\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1812,11 +1669,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1825,16 +1683,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC11\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1844,11 +1711,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1857,20 +1725,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC11\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1879,8 +1756,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1889,11 +1771,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1902,18 +1785,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1922,8 +1811,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1932,11 +1826,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1945,18 +1840,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1965,18 +1866,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1985,8 +1892,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1995,11 +1907,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2008,8 +1921,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2018,11 +1936,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2031,18 +1950,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2051,8 +1976,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -2061,11 +1991,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2074,18 +2005,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2094,8 +2031,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2104,11 +2046,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2117,19 +2060,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2137,8 +2086,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2148,11 +2102,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2160,19 +2115,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2180,8 +2141,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2191,11 +2157,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2203,8 +2170,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<ClCompile>
@@ -2216,6 +2188,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2223,8 +2196,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
@@ -2236,6 +2214,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2243,8 +2222,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2259,6 +2243,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2266,8 +2251,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2282,6 +2272,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2289,19 +2280,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2309,8 +2306,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2320,11 +2322,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2332,19 +2335,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2352,8 +2361,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2363,11 +2377,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2375,20 +2390,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\amigaos.c" />
<ClCompile Include="..\..\..\..\lib\asyn-ares.c" />
<ClCompile Include="..\..\..\..\lib\asyn-thread.c" />
<ClCompile Include="..\..\..\..\lib\base64.c" />
+ <ClCompile Include="..\..\..\..\lib\bundles.c" />
<ClCompile Include="..\..\..\..\lib\conncache.c" />
<ClCompile Include="..\..\..\..\lib\connect.c" />
<ClCompile Include="..\..\..\..\lib\content_encoding.c" />
<ClCompile Include="..\..\..\..\lib\cookie.c" />
<ClCompile Include="..\..\..\..\lib\curl_addrinfo.c" />
- <ClCompile Include="..\..\..\..\lib\curl_des.c" />
<ClCompile Include="..\..\..\..\lib\curl_endian.c" />
<ClCompile Include="..\..\..\..\lib\curl_fnmatch.c" />
<ClCompile Include="..\..\..\..\lib\curl_gethostname.c" />
@@ -2484,21 +2504,22 @@
<ClCompile Include="..\..\..\..\lib\wildcard.c" />
<ClCompile Include="..\..\..\..\lib\x509asn1.c" />
<ClCompile Include="..\..\..\..\lib\vtls\axtls.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_darwinssl.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\cyassl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\darwinssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />
<ClCompile Include="..\..\..\..\lib\vtls\nss.c" />
<ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl_threadlock.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\vtls.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\lib\amigaos.h" />
<ClInclude Include="..\..\..\..\lib\arpa_telnet.h" />
<ClInclude Include="..\..\..\..\lib\asyn.h" />
+ <ClInclude Include="..\..\..\..\lib\bundles.h" />
<ClInclude Include="..\..\..\..\lib\config-win32.h" />
<ClInclude Include="..\..\..\..\lib\conncache.h" />
<ClInclude Include="..\..\..\..\lib\connect.h" />
@@ -2506,7 +2527,6 @@
<ClInclude Include="..\..\..\..\lib\cookie.h" />
<ClInclude Include="..\..\..\..\lib\curl_addrinfo.h" />
<ClInclude Include="..\..\..\..\lib\curl_base64.h" />
- <ClInclude Include="..\..\..\..\lib\curl_des.h" />
<ClInclude Include="..\..\..\..\lib\curl_endian.h" />
<ClInclude Include="..\..\..\..\lib\curl_fnmatch.h" />
<ClInclude Include="..\..\..\..\lib\curl_gethostname.h" />
@@ -2522,7 +2542,6 @@
<ClInclude Include="..\..\..\..\lib\curl_ntlm.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_msgs.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_wb.h" />
- <ClInclude Include="..\..\..\..\lib\curl_printf.h" />
<ClInclude Include="..\..\..\..\lib\curl_rtmp.h" />
<ClInclude Include="..\..\..\..\lib\curl_sasl.h" />
<ClInclude Include="..\..\..\..\lib\curl_sec.h" />
@@ -2597,15 +2616,15 @@
<ClInclude Include="..\..\..\..\lib\wildcard.h" />
<ClInclude Include="..\..\..\..\lib\x509asn1.h" />
<ClInclude Include="..\..\..\..\lib\vtls\axtls.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_darwinssl.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\cyassl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\darwinssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />
<ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />
<ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl_threadlock.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\vtls.h" />
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC11/src/curl.sln b/projects/Windows/VC11/src/curlsrc.sln
index e12253e9b..88b4f7eb6 100644
--- a/projects/Windows/VC11/src/curl.sln
+++ b/projects/Windows/VC11/src/curlsrc.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,10 +70,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -102,10 +90,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC11/src/curl.vcxproj b/projects/Windows/VC11/src/curlsrc.vcxproj
index 92463c00c..297262dfc 100644
--- a/projects/Windows/VC11/src/curl.vcxproj
+++ b/projects/Windows/VC11/src/curlsrc.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -228,7 +196,7 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5228E9CE-A216-422F-A5E6-58E95E2DD71D}</ProjectGuid>
- <RootNamespace>curl</RootNamespace>
+ <RootNamespace>curlsrc</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="Configuration">
@@ -357,48 +325,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -525,48 +469,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v110</PlatformToolset>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -633,27 +553,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -717,78 +625,42 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC11\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -909,62 +781,54 @@
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(ProjectName)</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">curl</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
@@ -981,6 +845,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -990,41 +855,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
@@ -1042,6 +884,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1051,42 +894,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<Midl>
@@ -1103,6 +922,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1112,41 +932,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1164,6 +961,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1173,42 +971,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<Midl>
@@ -1219,11 +993,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1234,43 +1009,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1282,11 +1034,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1297,44 +1050,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">
<Midl>
@@ -1345,42 +1074,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1391,12 +1090,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
@@ -1408,43 +1115,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1455,12 +1131,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -1471,11 +1155,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1486,12 +1171,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1503,11 +1196,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1518,12 +1212,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -1534,11 +1236,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1549,12 +1252,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1565,11 +1276,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1580,12 +1292,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1597,11 +1317,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1612,12 +1333,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1629,11 +1358,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1644,12 +1374,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
@@ -1666,6 +1404,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1675,10 +1414,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
@@ -1696,6 +1443,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1705,10 +1453,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -1725,6 +1481,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1734,10 +1491,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1754,6 +1519,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1763,10 +1529,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
@@ -1784,6 +1558,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1793,10 +1568,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1814,6 +1597,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1823,10 +1607,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1837,11 +1629,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1852,12 +1645,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1869,11 +1670,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1884,12 +1686,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1906,6 +1716,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1915,10 +1726,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1936,6 +1755,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1945,10 +1765,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<Midl>
@@ -1959,11 +1787,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1974,12 +1803,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -1991,11 +1828,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2006,12 +1844,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<Midl>
@@ -2028,6 +1874,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2037,10 +1884,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2058,6 +1913,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2067,10 +1923,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2081,11 +1945,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2096,12 +1961,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2113,11 +1986,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2128,12 +2002,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC11\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2150,6 +2032,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2159,10 +2042,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2180,6 +2071,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2189,10 +2081,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC11\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -2203,11 +2103,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2218,12 +2119,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -2235,11 +2144,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2250,12 +2160,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<Midl>
@@ -2272,6 +2190,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2281,10 +2200,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2302,6 +2229,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2311,10 +2239,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2325,11 +2261,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2340,12 +2277,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2357,11 +2302,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2372,12 +2318,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC11\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2394,6 +2348,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2403,10 +2358,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC11\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2424,6 +2387,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2433,10 +2397,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libssh2.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC11\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC11\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -2447,11 +2419,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2462,12 +2435,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2478,11 +2459,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2493,12 +2475,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -2510,11 +2500,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2525,12 +2516,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2542,11 +2541,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2557,12 +2557,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -2579,6 +2587,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2588,10 +2597,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2608,6 +2625,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2617,10 +2635,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2638,6 +2664,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2647,10 +2674,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2668,6 +2703,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2677,10 +2713,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC11\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\nonblock.c" />
diff --git a/projects/Windows/VC12/curl-all.sln b/projects/Windows/VC12/curl.sln
index 38b33e6f5..57064c49f 100644
--- a/projects/Windows/VC12/curl-all.sln
+++ b/projects/Windows/VC12/curl.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
@@ -17,8 +17,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -29,8 +27,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -45,8 +41,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -61,8 +55,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -83,10 +75,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -107,10 +95,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -139,10 +123,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -171,10 +151,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
@@ -195,10 +171,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -219,10 +191,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -251,10 +219,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -283,10 +247,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC12/lib/libcurl.sln b/projects/Windows/VC12/lib/libcurl.sln
index 860a06028..6fe27721b 100644
--- a/projects/Windows/VC12/lib/libcurl.sln
+++ b/projects/Windows/VC12/lib/libcurl.sln
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,34 +70,26 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC12/lib/libcurl.vcxproj b/projects/Windows/VC12/lib/libcurl.vcxproj
index bab12fb76..739efa2d9 100644
--- a/projects/Windows/VC12/lib/libcurl.vcxproj
+++ b/projects/Windows/VC12/lib/libcurl.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -357,48 +325,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -525,48 +469,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="Configuration">
<ConfigurationType>DynamicLibrary</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -633,27 +553,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -717,70 +625,38 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -878,9 +754,7 @@
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)lib\</IntDir>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -890,9 +764,7 @@
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
<TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
@@ -910,6 +782,7 @@
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -918,11 +791,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -932,52 +806,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -986,11 +835,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1000,50 +850,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1058,6 +884,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1066,50 +893,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1124,6 +926,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1132,73 +935,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1207,8 +966,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1217,34 +981,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1253,8 +995,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<ClCompile>
@@ -1266,6 +1013,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1273,28 +1021,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1309,6 +1042,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1316,36 +1050,19 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1354,11 +1071,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1368,18 +1086,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1388,11 +1115,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1402,17 +1130,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1422,11 +1159,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1435,16 +1173,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1454,11 +1201,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1467,15 +1215,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1484,11 +1241,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1498,18 +1256,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1518,11 +1285,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1532,18 +1300,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1552,11 +1329,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1566,17 +1344,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1585,11 +1372,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1599,17 +1387,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1624,6 +1421,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1632,16 +1430,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1656,6 +1463,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1664,16 +1472,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1688,6 +1505,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1696,15 +1514,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1719,6 +1546,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1727,15 +1555,24 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1744,11 +1581,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1758,18 +1596,27 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC12\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1778,11 +1625,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1792,17 +1640,26 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC12\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>Win32</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1812,11 +1669,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1825,16 +1683,25 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC12\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MkTypLibCompatible>true</MkTypLibCompatible>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetEnvironment>X64</TargetEnvironment>
<TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
<HeaderFileName>
@@ -1844,11 +1711,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1857,20 +1725,29 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC12\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1879,8 +1756,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1889,11 +1771,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1902,18 +1785,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1922,8 +1811,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1932,11 +1826,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1945,18 +1840,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1965,18 +1866,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1985,8 +1892,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1995,11 +1907,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2008,8 +1921,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2018,11 +1936,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2031,18 +1950,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2051,8 +1976,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -2061,11 +1991,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2074,18 +2005,24 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2094,8 +2031,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2104,11 +2046,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2117,19 +2060,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2137,8 +2086,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2148,11 +2102,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2160,19 +2115,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2180,8 +2141,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2191,11 +2157,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2203,8 +2170,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<ClCompile>
@@ -2216,6 +2188,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2223,8 +2196,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<ClCompile>
@@ -2236,6 +2214,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2243,8 +2222,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2259,6 +2243,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2266,8 +2251,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2282,6 +2272,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2289,19 +2280,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2309,8 +2306,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2320,11 +2322,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2332,19 +2335,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<ClCompile>
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2352,8 +2361,13 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX86</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2363,11 +2377,12 @@
<Optimization>MaxSpeed</Optimization>
<InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<StringPooling>true</StringPooling>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2375,20 +2390,25 @@
</ResourceCompile>
<Lib>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<TargetMachine>MachineX64</TargetMachine>
</Lib>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(OutDir)$(ProjectName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\amigaos.c" />
<ClCompile Include="..\..\..\..\lib\asyn-ares.c" />
<ClCompile Include="..\..\..\..\lib\asyn-thread.c" />
<ClCompile Include="..\..\..\..\lib\base64.c" />
+ <ClCompile Include="..\..\..\..\lib\bundles.c" />
<ClCompile Include="..\..\..\..\lib\conncache.c" />
<ClCompile Include="..\..\..\..\lib\connect.c" />
<ClCompile Include="..\..\..\..\lib\content_encoding.c" />
<ClCompile Include="..\..\..\..\lib\cookie.c" />
<ClCompile Include="..\..\..\..\lib\curl_addrinfo.c" />
- <ClCompile Include="..\..\..\..\lib\curl_des.c" />
<ClCompile Include="..\..\..\..\lib\curl_endian.c" />
<ClCompile Include="..\..\..\..\lib\curl_fnmatch.c" />
<ClCompile Include="..\..\..\..\lib\curl_gethostname.c" />
@@ -2484,21 +2504,22 @@
<ClCompile Include="..\..\..\..\lib\wildcard.c" />
<ClCompile Include="..\..\..\..\lib\x509asn1.c" />
<ClCompile Include="..\..\..\..\lib\vtls\axtls.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_darwinssl.c" />
+ <ClCompile Include="..\..\..\..\lib\vtls\curl_schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\cyassl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\darwinssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />
<ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />
<ClCompile Include="..\..\..\..\lib\vtls\nss.c" />
<ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />
<ClCompile Include="..\..\..\..\lib\vtls\polarssl_threadlock.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\schannel.c" />
<ClCompile Include="..\..\..\..\lib\vtls\vtls.c" />
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\..\..\..\lib\amigaos.h" />
<ClInclude Include="..\..\..\..\lib\arpa_telnet.h" />
<ClInclude Include="..\..\..\..\lib\asyn.h" />
+ <ClInclude Include="..\..\..\..\lib\bundles.h" />
<ClInclude Include="..\..\..\..\lib\config-win32.h" />
<ClInclude Include="..\..\..\..\lib\conncache.h" />
<ClInclude Include="..\..\..\..\lib\connect.h" />
@@ -2506,7 +2527,6 @@
<ClInclude Include="..\..\..\..\lib\cookie.h" />
<ClInclude Include="..\..\..\..\lib\curl_addrinfo.h" />
<ClInclude Include="..\..\..\..\lib\curl_base64.h" />
- <ClInclude Include="..\..\..\..\lib\curl_des.h" />
<ClInclude Include="..\..\..\..\lib\curl_endian.h" />
<ClInclude Include="..\..\..\..\lib\curl_fnmatch.h" />
<ClInclude Include="..\..\..\..\lib\curl_gethostname.h" />
@@ -2522,7 +2542,6 @@
<ClInclude Include="..\..\..\..\lib\curl_ntlm.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_msgs.h" />
<ClInclude Include="..\..\..\..\lib\curl_ntlm_wb.h" />
- <ClInclude Include="..\..\..\..\lib\curl_printf.h" />
<ClInclude Include="..\..\..\..\lib\curl_rtmp.h" />
<ClInclude Include="..\..\..\..\lib\curl_sasl.h" />
<ClInclude Include="..\..\..\..\lib\curl_sec.h" />
@@ -2597,15 +2616,15 @@
<ClInclude Include="..\..\..\..\lib\wildcard.h" />
<ClInclude Include="..\..\..\..\lib\x509asn1.h" />
<ClInclude Include="..\..\..\..\lib\vtls\axtls.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_darwinssl.h" />
+ <ClInclude Include="..\..\..\..\lib\vtls\curl_schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\cyassl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\darwinssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />
<ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />
<ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />
<ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />
<ClInclude Include="..\..\..\..\lib\vtls\polarssl_threadlock.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\schannel.h" />
<ClInclude Include="..\..\..\..\lib\vtls\vtls.h" />
</ItemGroup>
<ItemGroup>
diff --git a/projects/Windows/VC12/src/curl.sln b/projects/Windows/VC12/src/curlsrc.sln
index 7b5244c1f..292699cab 100644
--- a/projects/Windows/VC12/src/curl.sln
+++ b/projects/Windows/VC12/src/curlsrc.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
@@ -12,8 +12,6 @@ Global
DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
DLL Debug|Win32 = DLL Debug|Win32
DLL Debug|x64 = DLL Debug|x64
DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -24,8 +22,6 @@ Global
DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
DLL Release|Win32 = DLL Release|Win32
DLL Release|x64 = DLL Release|x64
LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
@@ -40,8 +36,6 @@ Global
LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
LIB Debug|Win32 = LIB Debug|Win32
LIB Debug|x64 = LIB Debug|x64
LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
@@ -56,8 +50,6 @@ Global
LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
LIB Release|Win32 = LIB Release|Win32
LIB Release|x64 = LIB Release|x64
EndGlobalSection
@@ -78,10 +70,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
@@ -102,10 +90,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
@@ -134,10 +118,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
@@ -166,10 +146,6 @@ Global
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
{5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
diff --git a/projects/Windows/VC12/src/curl.vcxproj b/projects/Windows/VC12/src/curlsrc.vcxproj
index 24d0a6295..7fc0c29a6 100644
--- a/projects/Windows/VC12/src/curl.vcxproj
+++ b/projects/Windows/VC12/src/curlsrc.vcxproj
@@ -1,14 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -49,14 +41,6 @@
<Configuration>DLL Debug</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
<Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -129,14 +113,6 @@
<Configuration>LIB Debug - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -193,14 +169,6 @@
<Configuration>LIB Release - DLL Windows SSPI</Configuration>
<Platform>x64</Platform>
</ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
<ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
<Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
<Platform>Win32</Platform>
@@ -228,7 +196,7 @@
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{5228E9CE-A216-422F-A5E6-58E95E2DD71D}</ProjectGuid>
- <RootNamespace>curl</RootNamespace>
+ <RootNamespace>curlsrc</RootNamespace>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="Configuration">
@@ -357,48 +325,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
@@ -525,48 +469,24 @@
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseOfMfc>false</UseOfMfc>
<CharacterSet>MultiByte</CharacterSet>
<PlatformToolset>v120</PlatformToolset>
</PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v120</PlatformToolset>
- </PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
@@ -633,27 +553,15 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
@@ -717,78 +625,42 @@
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup>
<_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
<OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC12\$(Configuration)\</OutDir>
<IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
@@ -909,62 +781,54 @@
<IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">false</LinkIncremental>
<LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(ProjectName)</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">curld</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">curl</TargetName>
+ <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">curl</TargetName>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
<Midl>
@@ -981,6 +845,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -990,41 +855,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
<Midl>
@@ -1042,6 +884,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1051,42 +894,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
<Midl>
@@ -1103,6 +922,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1112,41 +932,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
<Midl>
@@ -1164,6 +961,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1173,42 +971,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
<Midl>
@@ -1219,11 +993,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1234,43 +1009,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
<Midl>
@@ -1282,11 +1034,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1297,44 +1050,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">
<Midl>
@@ -1345,42 +1074,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1391,12 +1090,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
<Midl>
@@ -1408,43 +1115,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1455,12 +1131,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -1471,11 +1155,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1486,12 +1171,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
<Midl>
@@ -1503,11 +1196,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1518,12 +1212,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -1534,11 +1236,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1549,12 +1252,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1565,11 +1276,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1580,12 +1292,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -1597,11 +1317,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1612,12 +1333,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1629,11 +1358,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1644,12 +1374,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
<Midl>
@@ -1666,6 +1404,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1675,10 +1414,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
<Midl>
@@ -1696,6 +1443,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1705,10 +1453,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -1725,6 +1481,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1734,10 +1491,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -1754,6 +1519,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1763,10 +1529,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
<Midl>
@@ -1784,6 +1558,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1793,10 +1568,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -1814,6 +1597,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1823,10 +1607,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1837,11 +1629,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1852,12 +1645,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1869,11 +1670,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1884,12 +1686,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -1906,6 +1716,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1915,10 +1726,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -1936,6 +1755,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -1945,10 +1765,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
<Midl>
@@ -1959,11 +1787,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -1974,12 +1803,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
<Midl>
@@ -1991,11 +1828,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2006,12 +1844,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
<Midl>
@@ -2028,6 +1874,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2037,10 +1884,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
<Midl>
@@ -2058,6 +1913,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2067,10 +1923,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2081,11 +1945,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2096,12 +1961,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2113,11 +1986,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2128,12 +2002,20 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC12\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
<Midl>
@@ -2150,6 +2032,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2159,10 +2042,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
<Midl>
@@ -2180,6 +2071,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2189,10 +2081,18 @@
<Link>
<AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC12\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
<Midl>
@@ -2203,11 +2103,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2218,12 +2119,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
<Midl>
@@ -2235,11 +2144,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2250,12 +2160,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
<Midl>
@@ -2272,6 +2190,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2281,10 +2200,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
<Midl>
@@ -2302,6 +2229,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2311,10 +2239,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2325,11 +2261,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2340,12 +2277,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2357,11 +2302,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2372,12 +2318,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC12\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
<Midl>
@@ -2394,6 +2348,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2403,10 +2358,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC12\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
<Midl>
@@ -2424,6 +2387,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2433,10 +2397,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libssh2.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC12\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC12\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
<Midl>
@@ -2447,11 +2419,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2462,12 +2435,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2478,11 +2459,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2493,12 +2475,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
<Midl>
@@ -2510,11 +2500,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2525,12 +2516,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2542,11 +2541,12 @@
<ClCompile>
<Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>_DEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<MinimalRebuild>true</MinimalRebuild>
<BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
<RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<ResourceCompile>
@@ -2557,12 +2557,20 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<GenerateDebugInformation>true</GenerateDebugInformation>
<ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
<Midl>
@@ -2579,6 +2587,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2588,10 +2597,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
<Midl>
@@ -2608,6 +2625,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2617,10 +2635,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX86</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
<Midl>
@@ -2638,6 +2664,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2647,10 +2674,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
<Midl>
@@ -2668,6 +2703,7 @@
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<FunctionLevelLinking>true</FunctionLevelLinking>
<WarningLevel>Level3</WarningLevel>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
</ClCompile>
<ResourceCompile>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
@@ -2677,10 +2713,18 @@
<Link>
<AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
<OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
<AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC12\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
<SubSystem>Console</SubSystem>
+ <RandomizedBaseAddress>false</RandomizedBaseAddress>
+ <DataExecutionPrevention>
+ </DataExecutionPrevention>
<TargetMachine>MachineX64</TargetMachine>
</Link>
+ <Bscmake>
+ <SuppressStartupBanner>true</SuppressStartupBanner>
+ <OutputFile>$(TargetDir)$(TargetName).bsc</OutputFile>
+ </Bscmake>
</ItemDefinitionGroup>
<ItemGroup>
<ClCompile Include="..\..\..\..\lib\nonblock.c" />
diff --git a/projects/Windows/VC14/curl-all.sln b/projects/Windows/VC14/curl-all.sln
deleted file mode 100644
index 05820e1f4..000000000
--- a/projects/Windows/VC14/curl-all.sln
+++ /dev/null
@@ -1,298 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2015
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
- ProjectSection(ProjectDependencies) = postProject
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
- EndProjectSection
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcurl", "lib\libcurl.vcxproj", "{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Debug - DLL OpenSSL - DLL LibSSH2|x64 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- DLL Debug - DLL OpenSSL|Win32 = DLL Debug - DLL OpenSSL|Win32
- DLL Debug - DLL OpenSSL|x64 = DLL Debug - DLL OpenSSL|x64
- DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
- DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
- DLL Debug|Win32 = DLL Debug|Win32
- DLL Debug|x64 = DLL Debug|x64
- DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Release - DLL OpenSSL - DLL LibSSH2|x64 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- DLL Release - DLL OpenSSL|Win32 = DLL Release - DLL OpenSSL|Win32
- DLL Release - DLL OpenSSL|x64 = DLL Release - DLL OpenSSL|x64
- DLL Release - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
- DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
- DLL Release|Win32 = DLL Release|Win32
- DLL Release|x64 = DLL Release|x64
- LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Debug - DLL OpenSSL - DLL LibSSH2|x64 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- LIB Debug - DLL OpenSSL|Win32 = LIB Debug - DLL OpenSSL|Win32
- LIB Debug - DLL OpenSSL|x64 = LIB Debug - DLL OpenSSL|x64
- LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Debug - DLL Windows SSPI - DLL WinIDN|x64 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- LIB Debug - DLL Windows SSPI|Win32 = LIB Debug - DLL Windows SSPI|Win32
- LIB Debug - DLL Windows SSPI|x64 = LIB Debug - DLL Windows SSPI|x64
- LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
- LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
- LIB Debug|Win32 = LIB Debug|Win32
- LIB Debug|x64 = LIB Debug|x64
- LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Release - DLL OpenSSL - DLL LibSSH2|x64 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- LIB Release - DLL OpenSSL|Win32 = LIB Release - DLL OpenSSL|Win32
- LIB Release - DLL OpenSSL|x64 = LIB Release - DLL OpenSSL|x64
- LIB Release - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Release - DLL Windows SSPI - DLL WinIDN|x64 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- LIB Release - DLL Windows SSPI|Win32 = LIB Release - DLL Windows SSPI|Win32
- LIB Release - DLL Windows SSPI|x64 = LIB Release - DLL Windows SSPI|x64
- LIB Release - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
- LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
- LIB Release|Win32 = LIB Release|Win32
- LIB Release|x64 = LIB Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.Build.0 = DLL Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|Win32.ActiveCfg = LIB Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|Win32.Build.0 = LIB Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|x64.ActiveCfg = LIB Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|x64.Build.0 = LIB Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|Win32.Build.0 = LIB Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|x64.ActiveCfg = LIB Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|x64.Build.0 = LIB Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.ActiveCfg = LIB Debug - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.Build.0 = LIB Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|Win32.ActiveCfg = LIB Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|Win32.Build.0 = LIB Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|x64.ActiveCfg = LIB Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|x64.Build.0 = LIB Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|Win32.ActiveCfg = LIB Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|Win32.Build.0 = LIB Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|x64.ActiveCfg = LIB Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|x64.Build.0 = LIB Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.ActiveCfg = LIB Release - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.Build.0 = LIB Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.Build.0 = DLL Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|Win32.ActiveCfg = LIB Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|Win32.Build.0 = LIB Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|x64.ActiveCfg = LIB Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|x64.Build.0 = LIB Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|Win32.Build.0 = LIB Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|x64.ActiveCfg = LIB Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|x64.Build.0 = LIB Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.ActiveCfg = LIB Debug - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.Build.0 = LIB Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|Win32.ActiveCfg = LIB Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|Win32.Build.0 = LIB Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|x64.ActiveCfg = LIB Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|x64.Build.0 = LIB Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|Win32.ActiveCfg = LIB Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|Win32.Build.0 = LIB Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|x64.ActiveCfg = LIB Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|x64.Build.0 = LIB Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.ActiveCfg = LIB Release - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.Build.0 = LIB Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/projects/Windows/VC14/lib/libcurl.sln b/projects/Windows/VC14/lib/libcurl.sln
deleted file mode 100644
index cd8afe248..000000000
--- a/projects/Windows/VC14/lib/libcurl.sln
+++ /dev/null
@@ -1,181 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2015
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcurl", "libcurl.vcxproj", "{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Debug - DLL OpenSSL - DLL LibSSH2|x64 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- DLL Debug - DLL OpenSSL|Win32 = DLL Debug - DLL OpenSSL|Win32
- DLL Debug - DLL OpenSSL|x64 = DLL Debug - DLL OpenSSL|x64
- DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
- DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
- DLL Debug|Win32 = DLL Debug|Win32
- DLL Debug|x64 = DLL Debug|x64
- DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Release - DLL OpenSSL - DLL LibSSH2|x64 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- DLL Release - DLL OpenSSL|Win32 = DLL Release - DLL OpenSSL|Win32
- DLL Release - DLL OpenSSL|x64 = DLL Release - DLL OpenSSL|x64
- DLL Release - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
- DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
- DLL Release|Win32 = DLL Release|Win32
- DLL Release|x64 = DLL Release|x64
- LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Debug - DLL OpenSSL - DLL LibSSH2|x64 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- LIB Debug - DLL OpenSSL|Win32 = LIB Debug - DLL OpenSSL|Win32
- LIB Debug - DLL OpenSSL|x64 = LIB Debug - DLL OpenSSL|x64
- LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Debug - DLL Windows SSPI - DLL WinIDN|x64 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- LIB Debug - DLL Windows SSPI|Win32 = LIB Debug - DLL Windows SSPI|Win32
- LIB Debug - DLL Windows SSPI|x64 = LIB Debug - DLL Windows SSPI|x64
- LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
- LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
- LIB Debug|Win32 = LIB Debug|Win32
- LIB Debug|x64 = LIB Debug|x64
- LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Release - DLL OpenSSL - DLL LibSSH2|x64 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- LIB Release - DLL OpenSSL|Win32 = LIB Release - DLL OpenSSL|Win32
- LIB Release - DLL OpenSSL|x64 = LIB Release - DLL OpenSSL|x64
- LIB Release - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Release - DLL Windows SSPI - DLL WinIDN|x64 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- LIB Release - DLL Windows SSPI|Win32 = LIB Release - DLL Windows SSPI|Win32
- LIB Release - DLL Windows SSPI|x64 = LIB Release - DLL Windows SSPI|x64
- LIB Release - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
- LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
- LIB Release|Win32 = LIB Release|Win32
- LIB Release|x64 = LIB Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.Build.0 = DLL Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.ActiveCfg = DLL Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|x64.Build.0 = DLL Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|Win32.ActiveCfg = LIB Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|Win32.Build.0 = LIB Debug - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|x64.ActiveCfg = LIB Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL OpenSSL|x64.Build.0 = LIB Debug - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|Win32.Build.0 = LIB Debug - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|x64.ActiveCfg = LIB Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - DLL Windows SSPI|x64.Build.0 = LIB Debug - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.ActiveCfg = LIB Debug - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Debug|x64.Build.0 = LIB Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|Win32.ActiveCfg = LIB Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|Win32.Build.0 = LIB Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|x64.ActiveCfg = LIB Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL OpenSSL|x64.Build.0 = LIB Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|Win32.ActiveCfg = LIB Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|Win32.Build.0 = LIB Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|x64.ActiveCfg = LIB Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - DLL Windows SSPI|x64.Build.0 = LIB Release - DLL Windows SSPI|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.ActiveCfg = LIB Release - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|Win32.Build.0 = LIB Release|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.ActiveCfg = LIB Release|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.LIB Release|x64.Build.0 = LIB Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/projects/Windows/VC14/lib/libcurl.vcxproj b/projects/Windows/VC14/lib/libcurl.vcxproj
deleted file mode 100644
index e5fc80ec0..000000000
--- a/projects/Windows/VC14/lib/libcurl.vcxproj
+++ /dev/null
@@ -1,2617 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL|Win32">
- <Configuration>DLL Debug - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL|x64">
- <Configuration>DLL Debug - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>DLL Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>DLL Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI|Win32">
- <Configuration>DLL Debug - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI|x64">
- <Configuration>DLL Debug - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug|Win32">
- <Configuration>DLL Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug|x64">
- <Configuration>DLL Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL|Win32">
- <Configuration>DLL Release - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL|x64">
- <Configuration>DLL Release - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>DLL Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>DLL Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI|Win32">
- <Configuration>DLL Release - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI|x64">
- <Configuration>DLL Release - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release|Win32">
- <Configuration>DLL Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release|x64">
- <Configuration>DLL Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>LIB Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>LIB Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL|Win32">
- <Configuration>LIB Debug - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL|x64">
- <Configuration>LIB Debug - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>LIB Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>LIB Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI|Win32">
- <Configuration>LIB Debug - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI|x64">
- <Configuration>LIB Debug - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
- <Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|x64">
- <Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL|Win32">
- <Configuration>LIB Debug - LIB OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL|x64">
- <Configuration>LIB Debug - LIB OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug|Win32">
- <Configuration>LIB Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug|x64">
- <Configuration>LIB Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>LIB Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>LIB Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL|Win32">
- <Configuration>LIB Release - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL|x64">
- <Configuration>LIB Release - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>LIB Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>LIB Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI|Win32">
- <Configuration>LIB Release - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI|x64">
- <Configuration>LIB Release - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
- <Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|x64">
- <Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL|Win32">
- <Configuration>LIB Release - LIB OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL|x64">
- <Configuration>LIB Release - LIB OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release|Win32">
- <Configuration>LIB Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release|x64">
- <Configuration>LIB Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}</ProjectGuid>
- <RootNamespace>libcurl</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>StaticLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>DynamicLibrary</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(OutDir)lib\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(OutDir)lib\</IntDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)lib\</IntDir>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)d</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win32\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;WOLFSSL_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\wolfssl\build\Win64\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\wolfssl;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_CYASSL;HAVE_CYASSL_OPTIONS_H;HAVE_CYASSL_ERROR_SSL_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC14\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC14\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>Win32</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win32\VC14\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ManifestFile>$(IntDir)$(TargetFileName).intermediate.manifest</ManifestFile>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MkTypLibCompatible>true</MkTypLibCompatible>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(OutDir)$(ProjectName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\..\openssl\build\Win64\VC14\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <ImportLibrary>$(TargetDir)$(TargetName).lib</ImportLibrary>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX86</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- </ResourceCompile>
- <Lib>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <TargetMachine>MachineX64</TargetMachine>
- </Lib>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\..\..\..\lib\amigaos.c" />
- <ClCompile Include="..\..\..\..\lib\asyn-ares.c" />
- <ClCompile Include="..\..\..\..\lib\asyn-thread.c" />
- <ClCompile Include="..\..\..\..\lib\base64.c" />
- <ClCompile Include="..\..\..\..\lib\conncache.c" />
- <ClCompile Include="..\..\..\..\lib\connect.c" />
- <ClCompile Include="..\..\..\..\lib\content_encoding.c" />
- <ClCompile Include="..\..\..\..\lib\cookie.c" />
- <ClCompile Include="..\..\..\..\lib\curl_addrinfo.c" />
- <ClCompile Include="..\..\..\..\lib\curl_des.c" />
- <ClCompile Include="..\..\..\..\lib\curl_endian.c" />
- <ClCompile Include="..\..\..\..\lib\curl_fnmatch.c" />
- <ClCompile Include="..\..\..\..\lib\curl_gethostname.c" />
- <ClCompile Include="..\..\..\..\lib\curl_gssapi.c" />
- <ClCompile Include="..\..\..\..\lib\curl_memrchr.c" />
- <ClCompile Include="..\..\..\..\lib\curl_multibyte.c" />
- <ClCompile Include="..\..\..\..\lib\curl_ntlm.c" />
- <ClCompile Include="..\..\..\..\lib\curl_ntlm_core.c" />
- <ClCompile Include="..\..\..\..\lib\curl_ntlm_msgs.c" />
- <ClCompile Include="..\..\..\..\lib\curl_ntlm_wb.c" />
- <ClCompile Include="..\..\..\..\lib\curl_rtmp.c" />
- <ClCompile Include="..\..\..\..\lib\curl_sasl.c" />
- <ClCompile Include="..\..\..\..\lib\curl_sasl_gssapi.c" />
- <ClCompile Include="..\..\..\..\lib\curl_sasl_sspi.c" />
- <ClCompile Include="..\..\..\..\lib\curl_sspi.c" />
- <ClCompile Include="..\..\..\..\lib\curl_threads.c" />
- <ClCompile Include="..\..\..\..\lib\dict.c" />
- <ClCompile Include="..\..\..\..\lib\dotdot.c" />
- <ClCompile Include="..\..\..\..\lib\easy.c" />
- <ClCompile Include="..\..\..\..\lib\escape.c" />
- <ClCompile Include="..\..\..\..\lib\file.c" />
- <ClCompile Include="..\..\..\..\lib\fileinfo.c" />
- <ClCompile Include="..\..\..\..\lib\formdata.c" />
- <ClCompile Include="..\..\..\..\lib\ftp.c" />
- <ClCompile Include="..\..\..\..\lib\ftplistparser.c" />
- <ClCompile Include="..\..\..\..\lib\getenv.c" />
- <ClCompile Include="..\..\..\..\lib\getinfo.c" />
- <ClCompile Include="..\..\..\..\lib\gopher.c" />
- <ClCompile Include="..\..\..\..\lib\hash.c" />
- <ClCompile Include="..\..\..\..\lib\hmac.c" />
- <ClCompile Include="..\..\..\..\lib\hostasyn.c" />
- <ClCompile Include="..\..\..\..\lib\hostcheck.c" />
- <ClCompile Include="..\..\..\..\lib\hostip4.c" />
- <ClCompile Include="..\..\..\..\lib\hostip6.c" />
- <ClCompile Include="..\..\..\..\lib\hostip.c" />
- <ClCompile Include="..\..\..\..\lib\hostsyn.c" />
- <ClCompile Include="..\..\..\..\lib\http2.c" />
- <ClCompile Include="..\..\..\..\lib\http.c" />
- <ClCompile Include="..\..\..\..\lib\http_chunks.c" />
- <ClCompile Include="..\..\..\..\lib\http_digest.c" />
- <ClCompile Include="..\..\..\..\lib\http_negotiate.c" />
- <ClCompile Include="..\..\..\..\lib\http_negotiate_sspi.c" />
- <ClCompile Include="..\..\..\..\lib\http_proxy.c" />
- <ClCompile Include="..\..\..\..\lib\idn_win32.c" />
- <ClCompile Include="..\..\..\..\lib\if2ip.c" />
- <ClCompile Include="..\..\..\..\lib\imap.c" />
- <ClCompile Include="..\..\..\..\lib\inet_ntop.c" />
- <ClCompile Include="..\..\..\..\lib\inet_pton.c" />
- <ClCompile Include="..\..\..\..\lib\krb5.c" />
- <ClCompile Include="..\..\..\..\lib\ldap.c" />
- <ClCompile Include="..\..\..\..\lib\llist.c" />
- <ClCompile Include="..\..\..\..\lib\md4.c" />
- <ClCompile Include="..\..\..\..\lib\md5.c" />
- <ClCompile Include="..\..\..\..\lib\memdebug.c" />
- <ClCompile Include="..\..\..\..\lib\mprintf.c" />
- <ClCompile Include="..\..\..\..\lib\multi.c" />
- <ClCompile Include="..\..\..\..\lib\netrc.c" />
- <ClCompile Include="..\..\..\..\lib\non-ascii.c" />
- <ClCompile Include="..\..\..\..\lib\nonblock.c" />
- <ClCompile Include="..\..\..\..\lib\openldap.c" />
- <ClCompile Include="..\..\..\..\lib\parsedate.c" />
- <ClCompile Include="..\..\..\..\lib\pingpong.c" />
- <ClCompile Include="..\..\..\..\lib\pipeline.c" />
- <ClCompile Include="..\..\..\..\lib\pop3.c" />
- <ClCompile Include="..\..\..\..\lib\progress.c" />
- <ClCompile Include="..\..\..\..\lib\rawstr.c" />
- <ClCompile Include="..\..\..\..\lib\rtsp.c" />
- <ClCompile Include="..\..\..\..\lib\security.c" />
- <ClCompile Include="..\..\..\..\lib\select.c" />
- <ClCompile Include="..\..\..\..\lib\sendf.c" />
- <ClCompile Include="..\..\..\..\lib\share.c" />
- <ClCompile Include="..\..\..\..\lib\slist.c" />
- <ClCompile Include="..\..\..\..\lib\smb.c" />
- <ClCompile Include="..\..\..\..\lib\smtp.c" />
- <ClCompile Include="..\..\..\..\lib\socks.c" />
- <ClCompile Include="..\..\..\..\lib\socks_gssapi.c" />
- <ClCompile Include="..\..\..\..\lib\socks_sspi.c" />
- <ClCompile Include="..\..\..\..\lib\speedcheck.c" />
- <ClCompile Include="..\..\..\..\lib\splay.c" />
- <ClCompile Include="..\..\..\..\lib\ssh.c" />
- <ClCompile Include="..\..\..\..\lib\strdup.c" />
- <ClCompile Include="..\..\..\..\lib\strequal.c" />
- <ClCompile Include="..\..\..\..\lib\strerror.c" />
- <ClCompile Include="..\..\..\..\lib\strtok.c" />
- <ClCompile Include="..\..\..\..\lib\strtoofft.c" />
- <ClCompile Include="..\..\..\..\lib\telnet.c" />
- <ClCompile Include="..\..\..\..\lib\tftp.c" />
- <ClCompile Include="..\..\..\..\lib\timeval.c" />
- <ClCompile Include="..\..\..\..\lib\transfer.c" />
- <ClCompile Include="..\..\..\..\lib\url.c" />
- <ClCompile Include="..\..\..\..\lib\version.c" />
- <ClCompile Include="..\..\..\..\lib\warnless.c" />
- <ClCompile Include="..\..\..\..\lib\wildcard.c" />
- <ClCompile Include="..\..\..\..\lib\x509asn1.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\axtls.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\cyassl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\darwinssl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\gskit.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\gtls.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\nss.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\openssl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\polarssl.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\polarssl_threadlock.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\schannel.c" />
- <ClCompile Include="..\..\..\..\lib\vtls\vtls.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="..\..\..\..\lib\amigaos.h" />
- <ClInclude Include="..\..\..\..\lib\arpa_telnet.h" />
- <ClInclude Include="..\..\..\..\lib\asyn.h" />
- <ClInclude Include="..\..\..\..\lib\config-win32.h" />
- <ClInclude Include="..\..\..\..\lib\conncache.h" />
- <ClInclude Include="..\..\..\..\lib\connect.h" />
- <ClInclude Include="..\..\..\..\lib\content_encoding.h" />
- <ClInclude Include="..\..\..\..\lib\cookie.h" />
- <ClInclude Include="..\..\..\..\lib\curl_addrinfo.h" />
- <ClInclude Include="..\..\..\..\lib\curl_base64.h" />
- <ClInclude Include="..\..\..\..\lib\curl_des.h" />
- <ClInclude Include="..\..\..\..\lib\curl_endian.h" />
- <ClInclude Include="..\..\..\..\lib\curl_fnmatch.h" />
- <ClInclude Include="..\..\..\..\lib\curl_gethostname.h" />
- <ClInclude Include="..\..\..\..\lib\curl_gssapi.h" />
- <ClInclude Include="..\..\..\..\lib\curl_hmac.h" />
- <ClInclude Include="..\..\..\..\lib\curl_ldap.h" />
- <ClInclude Include="..\..\..\..\lib\curl_md4.h" />
- <ClInclude Include="..\..\..\..\lib\curl_md5.h" />
- <ClInclude Include="..\..\..\..\lib\curl_memory.h" />
- <ClInclude Include="..\..\..\..\lib\curl_memrchr.h" />
- <ClInclude Include="..\..\..\..\lib\curl_multibyte.h" />
- <ClInclude Include="..\..\..\..\lib\curl_ntlm_core.h" />
- <ClInclude Include="..\..\..\..\lib\curl_ntlm.h" />
- <ClInclude Include="..\..\..\..\lib\curl_ntlm_msgs.h" />
- <ClInclude Include="..\..\..\..\lib\curl_ntlm_wb.h" />
- <ClInclude Include="..\..\..\..\lib\curl_printf.h" />
- <ClInclude Include="..\..\..\..\lib\curl_rtmp.h" />
- <ClInclude Include="..\..\..\..\lib\curl_sasl.h" />
- <ClInclude Include="..\..\..\..\lib\curl_sec.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup_once.h" />
- <ClInclude Include="..\..\..\..\lib\curl_sspi.h" />
- <ClInclude Include="..\..\..\..\lib\curl_threads.h" />
- <ClInclude Include="..\..\..\..\lib\curlx.h" />
- <ClInclude Include="..\..\..\..\lib\dict.h" />
- <ClInclude Include="..\..\..\..\lib\dotdot.h" />
- <ClInclude Include="..\..\..\..\lib\easyif.h" />
- <ClInclude Include="..\..\..\..\lib\escape.h" />
- <ClInclude Include="..\..\..\..\lib\file.h" />
- <ClInclude Include="..\..\..\..\lib\fileinfo.h" />
- <ClInclude Include="..\..\..\..\lib\formdata.h" />
- <ClInclude Include="..\..\..\..\lib\ftp.h" />
- <ClInclude Include="..\..\..\..\lib\ftplistparser.h" />
- <ClInclude Include="..\..\..\..\lib\getinfo.h" />
- <ClInclude Include="..\..\..\..\lib\gopher.h" />
- <ClInclude Include="..\..\..\..\lib\hash.h" />
- <ClInclude Include="..\..\..\..\lib\hostcheck.h" />
- <ClInclude Include="..\..\..\..\lib\hostip.h" />
- <ClInclude Include="..\..\..\..\lib\http2.h" />
- <ClInclude Include="..\..\..\..\lib\http_chunks.h" />
- <ClInclude Include="..\..\..\..\lib\http_digest.h" />
- <ClInclude Include="..\..\..\..\lib\http.h" />
- <ClInclude Include="..\..\..\..\lib\http_negotiate.h" />
- <ClInclude Include="..\..\..\..\lib\http_proxy.h" />
- <ClInclude Include="..\..\..\..\lib\if2ip.h" />
- <ClInclude Include="..\..\..\..\lib\imap.h" />
- <ClInclude Include="..\..\..\..\lib\inet_ntop.h" />
- <ClInclude Include="..\..\..\..\lib\inet_pton.h" />
- <ClInclude Include="..\..\..\..\lib\llist.h" />
- <ClInclude Include="..\..\..\..\lib\memdebug.h" />
- <ClInclude Include="..\..\..\..\lib\multihandle.h" />
- <ClInclude Include="..\..\..\..\lib\multiif.h" />
- <ClInclude Include="..\..\..\..\lib\netrc.h" />
- <ClInclude Include="..\..\..\..\lib\non-ascii.h" />
- <ClInclude Include="..\..\..\..\lib\nonblock.h" />
- <ClInclude Include="..\..\..\..\lib\parsedate.h" />
- <ClInclude Include="..\..\..\..\lib\pingpong.h" />
- <ClInclude Include="..\..\..\..\lib\pipeline.h" />
- <ClInclude Include="..\..\..\..\lib\pop3.h" />
- <ClInclude Include="..\..\..\..\lib\progress.h" />
- <ClInclude Include="..\..\..\..\lib\rawstr.h" />
- <ClInclude Include="..\..\..\..\lib\rtsp.h" />
- <ClInclude Include="..\..\..\..\lib\select.h" />
- <ClInclude Include="..\..\..\..\lib\sendf.h" />
- <ClInclude Include="..\..\..\..\lib\setup-vms.h" />
- <ClInclude Include="..\..\..\..\lib\share.h" />
- <ClInclude Include="..\..\..\..\lib\sigpipe.h" />
- <ClInclude Include="..\..\..\..\lib\slist.h" />
- <ClInclude Include="..\..\..\..\lib\smb.h" />
- <ClInclude Include="..\..\..\..\lib\smtp.h" />
- <ClInclude Include="..\..\..\..\lib\sockaddr.h" />
- <ClInclude Include="..\..\..\..\lib\socks.h" />
- <ClInclude Include="..\..\..\..\lib\speedcheck.h" />
- <ClInclude Include="..\..\..\..\lib\splay.h" />
- <ClInclude Include="..\..\..\..\lib\ssh.h" />
- <ClInclude Include="..\..\..\..\lib\strdup.h" />
- <ClInclude Include="..\..\..\..\lib\strequal.h" />
- <ClInclude Include="..\..\..\..\lib\strerror.h" />
- <ClInclude Include="..\..\..\..\lib\strtok.h" />
- <ClInclude Include="..\..\..\..\lib\strtoofft.h" />
- <ClInclude Include="..\..\..\..\lib\telnet.h" />
- <ClInclude Include="..\..\..\..\lib\tftp.h" />
- <ClInclude Include="..\..\..\..\lib\timeval.h" />
- <ClInclude Include="..\..\..\..\lib\transfer.h" />
- <ClInclude Include="..\..\..\..\lib\urldata.h" />
- <ClInclude Include="..\..\..\..\lib\url.h" />
- <ClInclude Include="..\..\..\..\lib\warnless.h" />
- <ClInclude Include="..\..\..\..\lib\wildcard.h" />
- <ClInclude Include="..\..\..\..\lib\x509asn1.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\axtls.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\cyassl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\darwinssl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\gskit.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\gtls.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\nssg.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\openssl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\polarssl.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\polarssl_threadlock.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\schannel.h" />
- <ClInclude Include="..\..\..\..\lib\vtls\vtls.h" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\..\..\lib\libcurl.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
diff --git a/projects/Windows/VC14/src/curl.sln b/projects/Windows/VC14/src/curl.sln
deleted file mode 100644
index b40c18bed..000000000
--- a/projects/Windows/VC14/src/curl.sln
+++ /dev/null
@@ -1,181 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2015
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcxproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Debug - DLL OpenSSL - DLL LibSSH2|x64 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- DLL Debug - DLL OpenSSL|Win32 = DLL Debug - DLL OpenSSL|Win32
- DLL Debug - DLL OpenSSL|x64 = DLL Debug - DLL OpenSSL|x64
- DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Debug - DLL Windows SSPI - DLL WinIDN|x64 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- DLL Debug - DLL Windows SSPI|Win32 = DLL Debug - DLL Windows SSPI|Win32
- DLL Debug - DLL Windows SSPI|x64 = DLL Debug - DLL Windows SSPI|x64
- DLL Debug - DLL wolfSSL|Win32 = DLL Debug - DLL wolfSSL|Win32
- DLL Debug - DLL wolfSSL|x64 = DLL Debug - DLL wolfSSL|x64
- DLL Debug|Win32 = DLL Debug|Win32
- DLL Debug|x64 = DLL Debug|x64
- DLL Release - DLL OpenSSL - DLL LibSSH2|Win32 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- DLL Release - DLL OpenSSL - DLL LibSSH2|x64 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- DLL Release - DLL OpenSSL|Win32 = DLL Release - DLL OpenSSL|Win32
- DLL Release - DLL OpenSSL|x64 = DLL Release - DLL OpenSSL|x64
- DLL Release - DLL Windows SSPI - DLL WinIDN|Win32 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- DLL Release - DLL Windows SSPI - DLL WinIDN|x64 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- DLL Release - DLL Windows SSPI|Win32 = DLL Release - DLL Windows SSPI|Win32
- DLL Release - DLL Windows SSPI|x64 = DLL Release - DLL Windows SSPI|x64
- DLL Release - DLL wolfSSL|Win32 = DLL Release - DLL wolfSSL|Win32
- DLL Release - DLL wolfSSL|x64 = DLL Release - DLL wolfSSL|x64
- DLL Release|Win32 = DLL Release|Win32
- DLL Release|x64 = DLL Release|x64
- LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Debug - DLL OpenSSL - DLL LibSSH2|x64 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- LIB Debug - DLL OpenSSL|Win32 = LIB Debug - DLL OpenSSL|Win32
- LIB Debug - DLL OpenSSL|x64 = LIB Debug - DLL OpenSSL|x64
- LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Debug - DLL Windows SSPI - DLL WinIDN|x64 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- LIB Debug - DLL Windows SSPI|Win32 = LIB Debug - DLL Windows SSPI|Win32
- LIB Debug - DLL Windows SSPI|x64 = LIB Debug - DLL Windows SSPI|x64
- LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Debug - LIB OpenSSL - LIB LibSSH2|x64 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- LIB Debug - LIB OpenSSL|Win32 = LIB Debug - LIB OpenSSL|Win32
- LIB Debug - LIB OpenSSL|x64 = LIB Debug - LIB OpenSSL|x64
- LIB Debug - LIB wolfSSL|Win32 = LIB Debug - LIB wolfSSL|Win32
- LIB Debug - LIB wolfSSL|x64 = LIB Debug - LIB wolfSSL|x64
- LIB Debug|Win32 = LIB Debug|Win32
- LIB Debug|x64 = LIB Debug|x64
- LIB Release - DLL OpenSSL - DLL LibSSH2|Win32 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- LIB Release - DLL OpenSSL - DLL LibSSH2|x64 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- LIB Release - DLL OpenSSL|Win32 = LIB Release - DLL OpenSSL|Win32
- LIB Release - DLL OpenSSL|x64 = LIB Release - DLL OpenSSL|x64
- LIB Release - DLL Windows SSPI - DLL WinIDN|Win32 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- LIB Release - DLL Windows SSPI - DLL WinIDN|x64 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- LIB Release - DLL Windows SSPI|Win32 = LIB Release - DLL Windows SSPI|Win32
- LIB Release - DLL Windows SSPI|x64 = LIB Release - DLL Windows SSPI|x64
- LIB Release - LIB OpenSSL - LIB LibSSH2|Win32 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- LIB Release - LIB OpenSSL - LIB LibSSH2|x64 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- LIB Release - LIB OpenSSL|Win32 = LIB Release - LIB OpenSSL|Win32
- LIB Release - LIB OpenSSL|x64 = LIB Release - LIB OpenSSL|x64
- LIB Release - LIB wolfSSL|Win32 = LIB Release - LIB wolfSSL|Win32
- LIB Release - LIB wolfSSL|x64 = LIB Release - LIB wolfSSL|x64
- LIB Release|Win32 = LIB Release|Win32
- LIB Release|x64 = LIB Release|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.ActiveCfg = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL Windows SSPI|x64.Build.0 = DLL Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.ActiveCfg = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|Win32.Build.0 = DLL Debug - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.ActiveCfg = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug - DLL wolfSSL|x64.Build.0 = DLL Debug - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.ActiveCfg = DLL Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.ActiveCfg = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|Win32.Build.0 = DLL Release - DLL wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.ActiveCfg = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release - DLL wolfSSL|x64.Build.0 = DLL Release - DLL wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|Win32.Build.0 = DLL Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.ActiveCfg = DLL Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.DLL Release|x64.Build.0 = DLL Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Debug - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|Win32.ActiveCfg = LIB Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|Win32.Build.0 = LIB Debug - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|x64.ActiveCfg = LIB Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL OpenSSL|x64.Build.0 = LIB Debug - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Debug - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|Win32.ActiveCfg = LIB Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|Win32.Build.0 = LIB Debug - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|x64.ActiveCfg = LIB Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - DLL Windows SSPI|x64.Build.0 = LIB Debug - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Debug - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.ActiveCfg = LIB Debug - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|Win32.Build.0 = LIB Debug - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.ActiveCfg = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB OpenSSL|x64.Build.0 = LIB Debug - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.ActiveCfg = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|Win32.Build.0 = LIB Debug - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.ActiveCfg = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug - LIB wolfSSL|x64.Build.0 = LIB Debug - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.ActiveCfg = LIB Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|Win32.Build.0 = LIB Debug|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.ActiveCfg = LIB Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Debug|x64.Build.0 = LIB Debug|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = LIB Release - DLL OpenSSL - DLL LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|Win32.ActiveCfg = LIB Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|Win32.Build.0 = LIB Release - DLL OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|x64.ActiveCfg = LIB Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL OpenSSL|x64.Build.0 = LIB Release - DLL OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = LIB Release - DLL Windows SSPI - DLL WinIDN|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|Win32.ActiveCfg = LIB Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|Win32.Build.0 = LIB Release - DLL Windows SSPI|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|x64.ActiveCfg = LIB Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - DLL Windows SSPI|x64.Build.0 = LIB Release - DLL Windows SSPI|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|Win32.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.ActiveCfg = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL - LIB LibSSH2|x64.Build.0 = LIB Release - LIB OpenSSL - LIB LibSSH2|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.ActiveCfg = LIB Release - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|Win32.Build.0 = LIB Release - LIB OpenSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.ActiveCfg = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB OpenSSL|x64.Build.0 = LIB Release - LIB OpenSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.ActiveCfg = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|Win32.Build.0 = LIB Release - LIB wolfSSL|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.ActiveCfg = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release - LIB wolfSSL|x64.Build.0 = LIB Release - LIB wolfSSL|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.ActiveCfg = LIB Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|Win32.Build.0 = LIB Release|Win32
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.ActiveCfg = LIB Release|x64
- {5228E9CE-A216-422F-A5E6-58E95E2DD71D}.LIB Release|x64.Build.0 = LIB Release|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/projects/Windows/VC14/src/curl.vcxproj b/projects/Windows/VC14/src/curl.vcxproj
deleted file mode 100644
index 91c090bbe..000000000
--- a/projects/Windows/VC14/src/curl.vcxproj
+++ /dev/null
@@ -1,2786 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
- <ItemGroup Label="ProjectConfigurations">
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|Win32">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL wolfSSL|x64">
- <Configuration>DLL Debug - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>DLL Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL|Win32">
- <Configuration>DLL Debug - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL OpenSSL|x64">
- <Configuration>DLL Debug - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>DLL Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>DLL Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI|Win32">
- <Configuration>DLL Debug - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug - DLL Windows SSPI|x64">
- <Configuration>DLL Debug - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug|Win32">
- <Configuration>DLL Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Debug|x64">
- <Configuration>DLL Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|Win32">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL wolfSSL|x64">
- <Configuration>DLL Release - DLL wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>DLL Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL|Win32">
- <Configuration>DLL Release - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL OpenSSL|x64">
- <Configuration>DLL Release - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>DLL Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>DLL Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI|Win32">
- <Configuration>DLL Release - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release - DLL Windows SSPI|x64">
- <Configuration>DLL Release - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release|Win32">
- <Configuration>DLL Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="DLL Release|x64">
- <Configuration>DLL Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>LIB Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>LIB Debug - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL|Win32">
- <Configuration>LIB Debug - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL OpenSSL|x64">
- <Configuration>LIB Debug - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>LIB Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>LIB Debug - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI|Win32">
- <Configuration>LIB Debug - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - DLL Windows SSPI|x64">
- <Configuration>LIB Debug - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|Win32">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB wolfSSL|x64">
- <Configuration>LIB Debug - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32">
- <Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL - LIB LibSSH2|x64">
- <Configuration>LIB Debug - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL|Win32">
- <Configuration>LIB Debug - LIB OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug - LIB OpenSSL|x64">
- <Configuration>LIB Debug - LIB OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug|Win32">
- <Configuration>LIB Debug</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Debug|x64">
- <Configuration>LIB Debug</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL - DLL LibSSH2|Win32">
- <Configuration>LIB Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL - DLL LibSSH2|x64">
- <Configuration>LIB Release - DLL OpenSSL - DLL LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL|Win32">
- <Configuration>LIB Release - DLL OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL OpenSSL|x64">
- <Configuration>LIB Release - DLL OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI - DLL WinIDN|Win32">
- <Configuration>LIB Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI - DLL WinIDN|x64">
- <Configuration>LIB Release - DLL Windows SSPI - DLL WinIDN</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI|Win32">
- <Configuration>LIB Release - DLL Windows SSPI</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - DLL Windows SSPI|x64">
- <Configuration>LIB Release - DLL Windows SSPI</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|Win32">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB wolfSSL|x64">
- <Configuration>LIB Release - LIB wolfSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|Win32">
- <Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL - LIB LibSSH2|x64">
- <Configuration>LIB Release - LIB OpenSSL - LIB LibSSH2</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL|Win32">
- <Configuration>LIB Release - LIB OpenSSL</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release - LIB OpenSSL|x64">
- <Configuration>LIB Release - LIB OpenSSL</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release|Win32">
- <Configuration>LIB Release</Configuration>
- <Platform>Win32</Platform>
- </ProjectConfiguration>
- <ProjectConfiguration Include="LIB Release|x64">
- <Configuration>LIB Release</Configuration>
- <Platform>x64</Platform>
- </ProjectConfiguration>
- </ItemGroup>
- <PropertyGroup Label="Globals">
- <ProjectGuid>{5228E9CE-A216-422F-A5E6-58E95E2DD71D}</ProjectGuid>
- <RootNamespace>curl</RootNamespace>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="Configuration">
- <ConfigurationType>Application</ConfigurationType>
- <UseOfMfc>false</UseOfMfc>
- <CharacterSet>MultiByte</CharacterSet>
- <PlatformToolset>v140</PlatformToolset>
- </PropertyGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
- <ImportGroup Label="ExtensionSettings">
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <ImportGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'" Label="PropertySheets">
- <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
- </ImportGroup>
- <PropertyGroup Label="UserMacros" />
- <PropertyGroup>
- <_ProjectFileVersion>10.0.30319.1</_ProjectFileVersion>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">..\..\..\..\build\Win32\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">false</LinkIncremental>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <OutDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">..\..\..\..\build\Win64\VC14\$(Configuration)\</OutDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(OutDir)src\</IntDir>
- <IntDir Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(OutDir)src\</IntDir>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">false</LinkIncremental>
- <LinkIncremental Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">false</LinkIncremental>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)d</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">$(ProjectName)</TargetName>
- <TargetName Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">$(ProjectName)</TargetName>
- </PropertyGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\wolfssl\build\Win32\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;wolfssl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\wolfssl\build\Win64\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL wolfSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Debug - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='DLL Release - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - LIB OpenSSL - LIB LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC14\LIB Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - LIB OpenSSL - LIB LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>crypt32.lib;ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC14\LIB Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;libeay32.lib;ssleay32.lib;libssh2d.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC14\DLL Debug;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libeay32.lib;ssleay32.lib;libssh2.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win32\VC14\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL OpenSSL - DLL LibSSH2|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;libssh2.lib;libeay32.lib;ssleay32.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);..\..\..\..\..\openssl\build\Win64\VC14\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC14\DLL Release;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Debug - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>Disabled</Optimization>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <MinimalRebuild>true</MinimalRebuild>
- <BasicRuntimeChecks>EnableFastChecks</BasicRuntimeChecks>
- <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary>
- <WarningLevel>Level3</WarningLevel>
- <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurld.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <GenerateDebugInformation>true</GenerateDebugInformation>
- <ProgramDatabaseFile>$(TargetDir)$(TargetName).pdb</ProgramDatabaseFile>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|Win32'">
- <Midl>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win32\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX86</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='LIB Release - DLL Windows SSPI - DLL WinIDN|x64'">
- <Midl>
- <TargetEnvironment>X64</TargetEnvironment>
- <TypeLibraryName>$(TargetDir)$(TargetName).tlb</TypeLibraryName>
- <HeaderFileName>
- </HeaderFileName>
- </Midl>
- <ClCompile>
- <Optimization>MaxSpeed</Optimization>
- <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion>
- <AdditionalIncludeDirectories>..\..\..\..\include;..\..\..\..\lib;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- <PreprocessorDefinitions>NDEBUG;_CONSOLE;CURL_STATICLIB;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <StringPooling>true</StringPooling>
- <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
- <FunctionLevelLinking>true</FunctionLevelLinking>
- <WarningLevel>Level3</WarningLevel>
- </ClCompile>
- <ResourceCompile>
- <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
- <Culture>0x0409</Culture>
- <AdditionalIncludeDirectories>..\..\..\..\include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
- </ResourceCompile>
- <Link>
- <AdditionalDependencies>ws2_32.lib;wldap32.lib;normaliz.lib;libcurl.lib;%(AdditionalDependencies)</AdditionalDependencies>
- <OutputFile>$(OutDir)$(TargetName)$(TargetExt)</OutputFile>
- <AdditionalLibraryDirectories>..\..\..\..\build\Win64\VC14\$(Configuration);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
- <SubSystem>Console</SubSystem>
- <TargetMachine>MachineX64</TargetMachine>
- </Link>
- </ItemDefinitionGroup>
- <ItemGroup>
- <ClCompile Include="..\..\..\..\lib\nonblock.c" />
- <ClCompile Include="..\..\..\..\lib\rawstr.c" />
- <ClCompile Include="..\..\..\..\lib\strtoofft.c" />
- <ClCompile Include="..\..\..\..\lib\warnless.c" />
- <ClCompile Include="..\..\..\..\src\tool_binmode.c" />
- <ClCompile Include="..\..\..\..\src\tool_bname.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_dbg.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_hdr.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_prg.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_rea.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_see.c" />
- <ClCompile Include="..\..\..\..\src\tool_cb_wrt.c" />
- <ClCompile Include="..\..\..\..\src\tool_cfgable.c" />
- <ClCompile Include="..\..\..\..\src\tool_convert.c" />
- <ClCompile Include="..\..\..\..\src\tool_dirhie.c" />
- <ClCompile Include="..\..\..\..\src\tool_doswin.c" />
- <ClCompile Include="..\..\..\..\src\tool_easysrc.c" />
- <ClCompile Include="..\..\..\..\src\tool_formparse.c" />
- <ClCompile Include="..\..\..\..\src\tool_getparam.c" />
- <ClCompile Include="..\..\..\..\src\tool_getpass.c" />
- <ClCompile Include="..\..\..\..\src\tool_help.c" />
- <ClCompile Include="..\..\..\..\src\tool_helpers.c" />
- <ClCompile Include="..\..\..\..\src\tool_homedir.c" />
- <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />
- <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />
- <ClCompile Include="..\..\..\..\src\tool_main.c" />
- <ClCompile Include="..\..\..\..\src\tool_metalink.c" />
- <ClCompile Include="..\..\..\..\src\tool_mfiles.c" />
- <ClCompile Include="..\..\..\..\src\tool_msgs.c" />
- <ClCompile Include="..\..\..\..\src\tool_operate.c" />
- <ClCompile Include="..\..\..\..\src\tool_operhlp.c" />
- <ClCompile Include="..\..\..\..\src\tool_panykey.c" />
- <ClCompile Include="..\..\..\..\src\tool_paramhlp.c" />
- <ClCompile Include="..\..\..\..\src\tool_parsecfg.c" />
- <ClCompile Include="..\..\..\..\src\tool_setopt.c" />
- <ClCompile Include="..\..\..\..\src\tool_sleep.c" />
- <ClCompile Include="..\..\..\..\src\tool_strdup.c" />
- <ClCompile Include="..\..\..\..\src\tool_urlglob.c" />
- <ClCompile Include="..\..\..\..\src\tool_util.c" />
- <ClCompile Include="..\..\..\..\src\tool_vms.c" />
- <ClCompile Include="..\..\..\..\src\tool_writeenv.c" />
- <ClCompile Include="..\..\..\..\src\tool_writeout.c" />
- <ClCompile Include="..\..\..\..\src\tool_xattr.c" />
- </ItemGroup>
- <ItemGroup>
- <ClInclude Include="..\..\..\..\lib\config-win32.h" />
- <ClInclude Include="..\..\..\..\lib\curl_setup.h" />
- <ClInclude Include="..\..\..\..\lib\nonblock.h" />
- <ClInclude Include="..\..\..\..\lib\rawstr.h" />
- <ClInclude Include="..\..\..\..\lib\strtoofft.h" />
- <ClInclude Include="..\..\..\..\lib\warnless.h" />
- <ClInclude Include="..\..\..\..\src\tool_binmode.h" />
- <ClInclude Include="..\..\..\..\src\tool_bname.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_dbg.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_hdr.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_prg.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_rea.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_see.h" />
- <ClInclude Include="..\..\..\..\src\tool_cb_wrt.h" />
- <ClInclude Include="..\..\..\..\src\tool_cfgable.h" />
- <ClInclude Include="..\..\..\..\src\tool_convert.h" />
- <ClInclude Include="..\..\..\..\src\tool_dirhie.h" />
- <ClInclude Include="..\..\..\..\src\tool_doswin.h" />
- <ClInclude Include="..\..\..\..\src\tool_easysrc.h" />
- <ClInclude Include="..\..\..\..\src\tool_formparse.h" />
- <ClInclude Include="..\..\..\..\src\tool_getparam.h" />
- <ClInclude Include="..\..\..\..\src\tool_getpass.h" />
- <ClInclude Include="..\..\..\..\src\tool_helpers.h" />
- <ClInclude Include="..\..\..\..\src\tool_help.h" />
- <ClInclude Include="..\..\..\..\src\tool_homedir.h" />
- <ClInclude Include="..\..\..\..\src\tool_hugehelp.h" />
- <ClInclude Include="..\..\..\..\src\tool_libinfo.h" />
- <ClInclude Include="..\..\..\..\src\tool_main.h" />
- <ClInclude Include="..\..\..\..\src\tool_metalink.h" />
- <ClInclude Include="..\..\..\..\src\tool_mfiles.h" />
- <ClInclude Include="..\..\..\..\src\tool_msgs.h" />
- <ClInclude Include="..\..\..\..\src\tool_operate.h" />
- <ClInclude Include="..\..\..\..\src\tool_operhlp.h" />
- <ClInclude Include="..\..\..\..\src\tool_panykey.h" />
- <ClInclude Include="..\..\..\..\src\tool_paramhlp.h" />
- <ClInclude Include="..\..\..\..\src\tool_parsecfg.h" />
- <ClInclude Include="..\..\..\..\src\tool_sdecls.h" />
- <ClInclude Include="..\..\..\..\src\tool_setopt.h" />
- <ClInclude Include="..\..\..\..\src\tool_setup.h" />
- <ClInclude Include="..\..\..\..\src\tool_sleep.h" />
- <ClInclude Include="..\..\..\..\src\tool_strdup.h" />
- <ClInclude Include="..\..\..\..\src\tool_urlglob.h" />
- <ClInclude Include="..\..\..\..\src\tool_util.h" />
- <ClInclude Include="..\..\..\..\src\tool_version.h" />
- <ClInclude Include="..\..\..\..\src\tool_vms.h" />
- <ClInclude Include="..\..\..\..\src\tool_writeenv.h" />
- <ClInclude Include="..\..\..\..\src\tool_writeout.h" />
- <ClInclude Include="..\..\..\..\src\tool_xattr.h" />
- </ItemGroup>
- <ItemGroup>
- <ResourceCompile Include="..\..\..\..\src\curl.rc" />
- </ItemGroup>
- <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
- <ImportGroup Label="ExtensionTargets">
- </ImportGroup>
-</Project>
diff --git a/projects/Windows/VC6/curl-all.dsw b/projects/Windows/VC6/curl.dsw
index a718e59a9..0d368d61f 100644
--- a/projects/Windows/VC6/curl-all.dsw
+++ b/projects/Windows/VC6/curl.dsw
@@ -15,7 +15,7 @@ Package=<4>
###############################################################################
-Project: "curl"=".\src\curl.dsp" - Package Owner=<4>
+Project: "curlsrc"=".\src\curlsrc.dsp" - Package Owner=<4>
Package=<5>
{{{
diff --git a/projects/Windows/VC6/lib/libcurl.dsp b/projects/Windows/VC6/lib/libcurl.dsp
index dbffdfec9..2c0f531f2 100644
--- a/projects/Windows/VC6/lib/libcurl.dsp
+++ b/projects/Windows/VC6/lib/libcurl.dsp
@@ -63,8 +63,8 @@ CFG=libcurl - Win32 LIB Debug
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /FD /EHsc /GZ /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /win32
# ADD MTL /nologo /D "_DEBUG" /win32
@@ -93,8 +93,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_OPENSSL" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /win32
# ADD MTL /nologo /D "_DEBUG" /win32
@@ -123,8 +123,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /win32
# ADD MTL /nologo /D "_DEBUG" /win32
@@ -153,8 +153,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /FD /EHsc /GZ /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /win32
# ADD MTL /nologo /D "_DEBUG" /win32
@@ -183,8 +183,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "_DEBUG" /win32
# ADD MTL /nologo /D "_DEBUG" /win32
@@ -242,8 +242,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_OPENSSL" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "NDEBUG" /win32
# ADD MTL /nologo /D "NDEBUG" /win32
@@ -272,8 +272,8 @@ LINK32=link.exe
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
MTL=midl.exe
# ADD BASE MTL /nologo /D "NDEBUG" /win32
# ADD MTL /nologo /D "NDEBUG" /win32
@@ -360,8 +360,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -385,8 +385,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -410,8 +410,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL - DLL LibSSH2\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -435,8 +435,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -460,8 +460,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_WINDOWS_SSPI" /D "USE_SCHANNEL" /D "USE_WIN32_IDN" /D "WANT_IDN_PROTOTYPES" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -485,8 +485,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -510,8 +510,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL - LIB LibSSH2\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "DEBUGBUILD" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "_DEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /GZ /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "_DEBUG"
# ADD RSC /l 0x409 /d "_DEBUG"
@@ -560,8 +560,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -585,8 +585,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL - DLL LibSSH2\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -660,8 +660,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /FD /EHsc /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -685,8 +685,8 @@ LIB32=link.exe -lib
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL - LIB LibSSH2\lib"
# PROP Target_Dir ""
CPP=cl.exe
-# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
-# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD BASE CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
+# ADD CPP /nologo /MD /W3 /O2 /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\..\openssl\inc32" /I "..\..\..\..\..\libssh2\include" /D "NDEBUG" /D "BUILDING_LIBCURL" /D "CURL_STATICLIB" /D "USE_SSLEAY" /D "USE_OPENSSL" /D "USE_LIBSSH2" /D "HAVE_LIBSSH2_H" /FD /EHsc /c
RSC=rc.exe
# ADD BASE RSC /l 0x409 /d "NDEBUG"
# ADD RSC /l 0x409 /d "NDEBUG"
@@ -746,6 +746,10 @@ SOURCE=..\..\..\..\lib\base64.c
# End Source File
# Begin Source File
+SOURCE=..\..\..\..\lib\bundles.c
+# End Source File
+# Begin Source File
+
SOURCE=..\..\..\..\lib\conncache.c
# End Source File
# Begin Source File
@@ -766,10 +770,6 @@ SOURCE=..\..\..\..\lib\curl_addrinfo.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\curl_des.c
-# End Source File
-# Begin Source File
-
SOURCE=..\..\..\..\lib\curl_endian.c
# End Source File
# Begin Source File
@@ -1150,11 +1150,15 @@ SOURCE=..\..\..\..\lib\vtls\axtls.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\cyassl.c
+SOURCE=..\..\..\..\lib\vtls\curl_darwinssl.c
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\..\lib\vtls\curl_schannel.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\darwinssl.c
+SOURCE=..\..\..\..\lib\vtls\cyassl.c
# End Source File
# Begin Source File
@@ -1182,10 +1186,6 @@ SOURCE=..\..\..\..\lib\vtls\polarssl_threadlock.c
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\schannel.c
-# End Source File
-# Begin Source File
-
SOURCE=..\..\..\..\lib\vtls\vtls.c
# End Source File
# End Group
@@ -1206,6 +1206,10 @@ SOURCE=..\..\..\..\lib\asyn.h
# End Source File
# Begin Source File
+SOURCE=..\..\..\..\lib\bundles.h
+# End Source File
+# Begin Source File
+
SOURCE=..\..\..\..\lib\config-win32.h
# End Source File
# Begin Source File
@@ -1234,10 +1238,6 @@ SOURCE=..\..\..\..\lib\curl_base64.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\curl_des.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\..\..\lib\curl_endian.h
# End Source File
# Begin Source File
@@ -1298,10 +1298,6 @@ SOURCE=..\..\..\..\lib\curl_ntlm_wb.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\curl_printf.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\..\..\lib\curl_rtmp.h
# End Source File
# Begin Source File
@@ -1598,11 +1594,15 @@ SOURCE=..\..\..\..\lib\vtls\axtls.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\cyassl.h
+SOURCE=..\..\..\..\lib\vtls\curl_darwinssl.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\darwinssl.h
+SOURCE=..\..\..\..\lib\vtls\curl_schannel.h
+# End Source File
+# Begin Source File
+
+SOURCE=..\..\..\..\lib\vtls\cyassl.h
# End Source File
# Begin Source File
@@ -1630,10 +1630,6 @@ SOURCE=..\..\..\..\lib\vtls\polarssl_threadlock.h
# End Source File
# Begin Source File
-SOURCE=..\..\..\..\lib\vtls\schannel.h
-# End Source File
-# Begin Source File
-
SOURCE=..\..\..\..\lib\vtls\vtls.h
# End Source File
# End Group
diff --git a/projects/Windows/VC6/src/curl.dsp b/projects/Windows/VC6/src/curlsrc.dsp
index 902d1682c..e13674cce 100644
--- a/projects/Windows/VC6/src/curl.dsp
+++ b/projects/Windows/VC6/src/curlsrc.dsp
@@ -1,46 +1,46 @@
-# Microsoft Developer Studio Project File - Name="curl" - Package Owner=<4>
+# Microsoft Developer Studio Project File - Name="curlsrc" - Package Owner=<4>
# Microsoft Developer Studio Generated Build File, Format Version 6.00
# ** DO NOT EDIT **
# TARGTYPE "Win32 (x86) Console Application" 0x0103
-CFG=curl - Win32 LIB Debug
+CFG=curlsrc - Win32 LIB Debug
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
!MESSAGE use the Export Makefile command and run
!MESSAGE
-!MESSAGE NMAKE /f "curl.mak".
+!MESSAGE NMAKE /f "curlsrc.mak".
!MESSAGE
!MESSAGE You can specify a configuration when running NMAKE
!MESSAGE by defining the macro CFG on the command line. For example:
!MESSAGE
-!MESSAGE NMAKE /f "curl.mak" CFG="curl - Win32 LIB Debug"
+!MESSAGE NMAKE /f "curlsrc.mak" CFG="curlsrc - Win32 LIB Debug"
!MESSAGE
!MESSAGE Possible choices for configuration are:
!MESSAGE
-!MESSAGE "curl - Win32 DLL Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Debug DLL OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Debug DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Debug DLL Windows SSPI" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Debug DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Release DLL OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Release DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Release DLL Windows SSPI" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 DLL Release DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug DLL OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug DLL Windows SSPI" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug LIB OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Debug LIB OpenSSL LIB LibSSH2" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release DLL OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release DLL Windows SSPI" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release LIB OpenSSL" (based on "Win32 (x86) Console Application")
-!MESSAGE "curl - Win32 LIB Release LIB OpenSSL LIB LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Debug DLL OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Debug DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Debug DLL Windows SSPI" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Debug DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Release DLL OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Release DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Release DLL Windows SSPI" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 DLL Release DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug DLL OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug DLL Windows SSPI" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug LIB OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Debug LIB OpenSSL LIB LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release DLL OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release DLL OpenSSL DLL LibSSH2" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release DLL Windows SSPI" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release DLL Windows SSPI DLL WinIDN" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release LIB OpenSSL" (based on "Win32 (x86) Console Application")
+!MESSAGE "curlsrc - Win32 LIB Release LIB OpenSSL LIB LibSSH2" (based on "Win32 (x86) Console Application")
!MESSAGE
# Begin Project
@@ -50,7 +50,7 @@ CFG=curl - Win32 LIB Debug
CPP=cl.exe
RSC=rc.exe
-!IF "$(CFG)" == "curl - Win32 DLL Debug"
+!IF "$(CFG)" == "curlsrc - Win32 DLL Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -63,8 +63,8 @@ RSC=rc.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\DLL Debug\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_CONSOLE" /D "_DEBUG" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -74,7 +74,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Debug DLL OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Debug DLL OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -88,8 +88,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -99,7 +99,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Debug DLL OpenSSL DLL LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Debug DLL OpenSSL DLL LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -113,8 +113,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL - DLL LibSSH2\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -124,7 +124,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL - DLL LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL - DLL LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL OpenSSL" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Debug DLL Windows SSPI"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Debug DLL Windows SSPI"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -138,8 +138,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -149,7 +149,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Debug DLL Windows SSPI DLL WinIDN"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Debug DLL Windows SSPI DLL WinIDN"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -163,8 +163,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI - DLL WinIDN\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -174,7 +174,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI - DLL WinIDN\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI - DLL WinIDN" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI - DLL WinIDN\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\DLL Debug - DLL Windows SSPI - DLL WinIDN" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Release"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -198,7 +198,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Release DLL OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Release DLL OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -223,7 +223,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Release DLL OpenSSL DLL LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Release DLL OpenSSL DLL LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -248,7 +248,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL - DLL LibSSH2\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL - DLL LibSSH2\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL OpenSSL" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Release DLL Windows SSPI"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Release DLL Windows SSPI"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -273,7 +273,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 DLL Release DLL Windows SSPI DLL WinIDN"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 DLL Release DLL Windows SSPI DLL WinIDN"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -298,7 +298,7 @@ LINK32=link.exe
# ADD BASE LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI - DLL WinIDN\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI - DLL WinIDN" /fixed:no
# ADD LINK32 wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI - DLL WinIDN\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\DLL Release - DLL Windows SSPI - DLL WinIDN" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -311,8 +311,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_CONSOLE" /D "_DEBUG" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -322,7 +322,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug\curl.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug DLL OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug DLL OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -336,8 +336,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -347,7 +347,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug DLL OpenSSL DLL LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug DLL OpenSSL DLL LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -361,8 +361,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL - DLL LibSSH2\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -372,7 +372,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL - DLL LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Debug" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\DLL Debug" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL - DLL LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Debug" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\DLL Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug DLL Windows SSPI"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug DLL Windows SSPI"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -386,8 +386,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -397,7 +397,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug DLL Windows SSPI DLL WinIDN"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug DLL Windows SSPI DLL WinIDN"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -411,8 +411,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -422,7 +422,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib normaliz.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN" /fixed:no
# ADD LINK32 advapi32.lib normaliz.lib wldap32.lib ws2_32.lib libcurld.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - DLL Windows SSPI - DLL WinIDN" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug LIB OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug LIB OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -436,8 +436,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -447,7 +447,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL" /fixed:no
# ADD LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\LIB Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Debug LIB OpenSSL LIB LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Debug LIB OpenSSL LIB LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
@@ -461,8 +461,8 @@ LINK32=link.exe
# PROP Intermediate_Dir "..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL - LIB LibSSH2\src"
# PROP Ignore_Export_Lib 0
# PROP Target_Dir ""
-# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
-# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "DEBUGBUILD" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD BASE CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
+# ADD CPP /nologo /MDd /W3 /Zi /Od /I "$(ProgramFiles)\Microsoft Platform SDK\Include" /I "..\..\..\..\include" /I "..\..\..\..\lib" /I "..\..\..\..\src" /D "_DEBUG" /D "_CONSOLE" /D "CURL_STATICLIB" /FD /EHsc /GZ /c
# ADD BASE RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
# ADD RSC /l 0x409 /i "..\..\..\..\include" /d "_DEBUG"
BSC32=bscmake.exe
@@ -472,7 +472,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL - LIB LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\LIB Debug" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\LIB Debug" /fixed:no
# ADD LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib /nologo /subsystem:console /incremental:no /debug /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL - LIB LibSSH2\curld.exe" /pdbtype:con /libpath:"..\..\..\..\build\Win32\VC6\LIB Debug - LIB OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\LIB Debug" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\LIB Debug" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -496,7 +496,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release DLL OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release DLL OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -521,7 +521,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Release" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release DLL OpenSSL DLL LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release DLL OpenSSL DLL LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -546,7 +546,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL - DLL LibSSH2\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Release" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\DLL Release" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL - DLL LibSSH2\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\DLL Release" /libpath:"..\..\..\..\..\libssh2\build\Win32\VC6\DLL Release" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release DLL Windows SSPI"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release DLL Windows SSPI"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -571,7 +571,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI" /fixed:no
# ADD LINK32 advapi32.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release DLL Windows SSPI DLL WinIDN"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release DLL Windows SSPI DLL WinIDN"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -596,7 +596,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib normaliz.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI - DLL WinIDN\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI - DLL WinIDN" /fixed:no
# ADD LINK32 advapi32.lib normaliz.lib wldap32.lib ws2_32.lib libcurl.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI - DLL WinIDN\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - DLL Windows SSPI - DLL WinIDN" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release LIB OpenSSL"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release LIB OpenSSL"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -621,7 +621,7 @@ LINK32=link.exe
# ADD BASE LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL" /fixed:no
# ADD LINK32 advapi32.lib crypt32.lib gdi32.lib user32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL\curl.exe" /libpath:"..\..\..\..\build\Win32\VC6\LIB Release - LIB OpenSSL" /libpath:"..\..\..\..\..\openssl\build\Win32\VC6\LIB Release" /fixed:no
-!ELSEIF "$(CFG)" == "curl - Win32 LIB Release LIB OpenSSL LIB LibSSH2"
+!ELSEIF "$(CFG)" == "curlsrc - Win32 LIB Release LIB OpenSSL LIB LibSSH2"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
@@ -650,30 +650,30 @@ LINK32=link.exe
# Begin Target
-# Name "curl - Win32 DLL Debug"
-# Name "curl - Win32 DLL Debug DLL OpenSSL"
-# Name "curl - Win32 DLL Debug DLL OpenSSL DLL LibSSH2"
-# Name "curl - Win32 DLL Debug DLL Windows SSPI"
-# Name "curl - Win32 DLL Debug DLL Windows SSPI DLL WinIDN"
-# Name "curl - Win32 DLL Release"
-# Name "curl - Win32 DLL Release DLL OpenSSL"
-# Name "curl - Win32 DLL Release DLL OpenSSL DLL LibSSH2"
-# Name "curl - Win32 DLL Release DLL Windows SSPI"
-# Name "curl - Win32 DLL Release DLL Windows SSPI DLL WinIDN"
-# Name "curl - Win32 LIB Debug"
-# Name "curl - Win32 LIB Debug DLL OpenSSL"
-# Name "curl - Win32 LIB Debug DLL OpenSSL DLL LibSSH2"
-# Name "curl - Win32 LIB Debug DLL Windows SSPI"
-# Name "curl - Win32 LIB Debug DLL Windows SSPI DLL WinIDN"
-# Name "curl - Win32 LIB Debug LIB OpenSSL"
-# Name "curl - Win32 LIB Debug LIB OpenSSL LIB LibSSH2"
-# Name "curl - Win32 LIB Release"
-# Name "curl - Win32 LIB Release DLL OpenSSL"
-# Name "curl - Win32 LIB Release DLL OpenSSL DLL LibSSH2"
-# Name "curl - Win32 LIB Release DLL Windows SSPI"
-# Name "curl - Win32 LIB Release DLL Windows SSPI DLL WinIDN"
-# Name "curl - Win32 LIB Release LIB OpenSSL"
-# Name "curl - Win32 LIB Release LIB OpenSSL LIB LibSSH2"
+# Name "curlsrc - Win32 DLL Debug"
+# Name "curlsrc - Win32 DLL Debug DLL OpenSSL"
+# Name "curlsrc - Win32 DLL Debug DLL OpenSSL DLL LibSSH2"
+# Name "curlsrc - Win32 DLL Debug DLL Windows SSPI"
+# Name "curlsrc - Win32 DLL Debug DLL Windows SSPI DLL WinIDN"
+# Name "curlsrc - Win32 DLL Release"
+# Name "curlsrc - Win32 DLL Release DLL OpenSSL"
+# Name "curlsrc - Win32 DLL Release DLL OpenSSL DLL LibSSH2"
+# Name "curlsrc - Win32 DLL Release DLL Windows SSPI"
+# Name "curlsrc - Win32 DLL Release DLL Windows SSPI DLL WinIDN"
+# Name "curlsrc - Win32 LIB Debug"
+# Name "curlsrc - Win32 LIB Debug DLL OpenSSL"
+# Name "curlsrc - Win32 LIB Debug DLL OpenSSL DLL LibSSH2"
+# Name "curlsrc - Win32 LIB Debug DLL Windows SSPI"
+# Name "curlsrc - Win32 LIB Debug DLL Windows SSPI DLL WinIDN"
+# Name "curlsrc - Win32 LIB Debug LIB OpenSSL"
+# Name "curlsrc - Win32 LIB Debug LIB OpenSSL LIB LibSSH2"
+# Name "curlsrc - Win32 LIB Release"
+# Name "curlsrc - Win32 LIB Release DLL OpenSSL"
+# Name "curlsrc - Win32 LIB Release DLL OpenSSL DLL LibSSH2"
+# Name "curlsrc - Win32 LIB Release DLL Windows SSPI"
+# Name "curlsrc - Win32 LIB Release DLL Windows SSPI DLL WinIDN"
+# Name "curlsrc - Win32 LIB Release LIB OpenSSL"
+# Name "curlsrc - Win32 LIB Release LIB OpenSSL LIB LibSSH2"
# Begin Group "Source Files"
# PROP Default_Filter ""
diff --git a/projects/Windows/VC6/src/curl.dsw b/projects/Windows/VC6/src/curlsrc.dsw
index a7adbce26..2aec0107d 100644
--- a/projects/Windows/VC6/src/curl.dsw
+++ b/projects/Windows/VC6/src/curlsrc.dsw
@@ -3,7 +3,7 @@ Microsoft Developer Studio Workspace File, Format Version 6.00
###############################################################################
-Project: "curl"=".\curl.dsp" - Package Owner=<4>
+Project: "curlsrc"=".\curlsrc.dsp" - Package Owner=<4>
Package=<5>
{{{
diff --git a/projects/Windows/VC7.1/curl-all.sln b/projects/Windows/VC7.1/curl.sln
index fc51b9dc0..4475c7759 100644
--- a/projects/Windows/VC7.1/curl-all.sln
+++ b/projects/Windows/VC7.1/curl.sln
@@ -1,5 +1,5 @@
Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
diff --git a/projects/Windows/VC7.1/lib/libcurl.vcproj b/projects/Windows/VC7.1/lib/libcurl.vcproj
index 5b750e90a..a7d5bf3d1 100644
--- a/projects/Windows/VC7.1/lib/libcurl.vcproj
+++ b/projects/Windows/VC7.1/lib/libcurl.vcproj
@@ -23,7 +23,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -81,7 +81,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -140,7 +140,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -198,7 +198,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -245,7 +245,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -349,7 +349,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -396,7 +396,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -443,7 +443,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -547,7 +547,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -652,7 +652,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -710,7 +710,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -804,7 +804,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -851,7 +851,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -898,7 +898,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -945,7 +945,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1004,7 +1004,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1051,7 +1051,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1166,7 +1166,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1268,6 +1268,9 @@
RelativePath="..\..\..\..\lib\base64.c">
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.c">
+ </File>
+ <File
RelativePath="..\..\..\..\lib\conncache.c">
</File>
<File
@@ -1283,9 +1286,6 @@
RelativePath="..\..\..\..\lib\curl_addrinfo.c">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.c">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.c">
</File>
<File
@@ -1581,6 +1581,9 @@
RelativePath="..\..\..\..\lib\asyn.h">
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.h">
+ </File>
+ <File
RelativePath="..\..\..\..\lib\config-win32.h">
</File>
<File
@@ -1602,9 +1605,6 @@
RelativePath="..\..\..\..\lib\curl_base64.h">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.h">
</File>
<File
@@ -1650,9 +1650,6 @@
RelativePath="..\..\..\..\lib\curl_ntlm_wb.h">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_printf.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_rtmp.h">
</File>
<File
@@ -1889,10 +1886,13 @@
RelativePath="..\..\..\..\lib\vtls\axtls.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.c">
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.c">
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.c">
</File>
<File
RelativePath="..\..\..\..\lib\vtls\gskit.c">
@@ -1913,9 +1913,6 @@
RelativePath="..\..\..\..\lib\vtls\polarssl_threadlock.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.c">
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.c">
</File>
</Filter>
@@ -1926,10 +1923,13 @@
RelativePath="..\..\..\..\lib\vtls\axtls.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.h">
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.h">
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.h">
</File>
<File
RelativePath="..\..\..\..\lib\vtls\gskit.h">
@@ -1950,9 +1950,6 @@
RelativePath="..\..\..\..\lib\vtls\polarssl_threadlock.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.h">
</File>
</Filter>
diff --git a/projects/Windows/VC7.1/src/curl.sln b/projects/Windows/VC7.1/src/curlsrc.sln
index 41ebb61ea..cba3b6066 100644
--- a/projects/Windows/VC7.1/src/curl.sln
+++ b/projects/Windows/VC7.1/src/curlsrc.sln
@@ -1,5 +1,5 @@
Microsoft Visual Studio Solution File, Format Version 8.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
diff --git a/projects/Windows/VC7.1/src/curl.vcproj b/projects/Windows/VC7.1/src/curlsrc.vcproj
index 954f0e56c..024e9d777 100644
--- a/projects/Windows/VC7.1/src/curl.vcproj
+++ b/projects/Windows/VC7.1/src/curlsrc.vcproj
@@ -2,7 +2,7 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="7.10"
- Name="curl"
+ Name="curlsrc"
SccProjectName=""
SccLocalPath="">
<Platforms>
@@ -35,7 +35,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\LIB Release"
@@ -90,7 +90,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -145,7 +145,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -187,7 +187,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -200,7 +200,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\DLL Debug,..\..\..\..\..\libssh2\build\Win32\VC7.1\DLL Debug"
@@ -244,7 +244,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -257,7 +257,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\LIB Debug"
@@ -301,7 +301,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -314,7 +314,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -358,7 +358,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -371,7 +371,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\LIB Debug,..\..\..\..\..\libssh2\build\Win32\VC7.1\LIB Debug"
@@ -428,7 +428,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\DLL Release"
@@ -483,7 +483,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\DLL Release,..\..\..\..\..\libssh2\build\Win32\VC7.1\DLL Release"
@@ -538,7 +538,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -593,7 +593,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\LIB Release,..\..\..\..\..\libssh2\build\Win32\VC7.1\LIB Release"
@@ -635,7 +635,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -648,7 +648,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7.1\DLL Debug"
@@ -692,7 +692,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -705,7 +705,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -749,7 +749,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -762,7 +762,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -819,7 +819,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -874,7 +874,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -916,7 +916,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -929,7 +929,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -973,7 +973,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -986,7 +986,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1043,7 +1043,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1085,7 +1085,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1098,7 +1098,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1142,7 +1142,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1155,7 +1155,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1212,7 +1212,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1254,7 +1254,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1267,7 +1267,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="normaliz.lib wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
@@ -1324,7 +1324,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="normaliz.lib wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7.1\$(ConfigurationName)"
diff --git a/projects/Windows/VC7/curl-all.sln b/projects/Windows/VC7/curl.sln
index b0746d834..fb7b89a42 100644
--- a/projects/Windows/VC7/curl-all.sln
+++ b/projects/Windows/VC7/curl.sln
@@ -1,5 +1,5 @@
Microsoft Visual Studio Solution File, Format Version 7.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libcurl", "lib\libcurl.vcproj", "{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}"
EndProject
diff --git a/projects/Windows/VC7/lib/libcurl.vcproj b/projects/Windows/VC7/lib/libcurl.vcproj
index ee17474eb..e3cbba18e 100644
--- a/projects/Windows/VC7/lib/libcurl.vcproj
+++ b/projects/Windows/VC7/lib/libcurl.vcproj
@@ -23,7 +23,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -75,7 +75,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -128,7 +128,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -180,7 +180,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -221,7 +221,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -313,7 +313,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -354,7 +354,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -395,7 +395,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -487,7 +487,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -580,7 +580,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -632,7 +632,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -714,7 +714,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -755,7 +755,7 @@
AdditionalOptions="/EHsc "
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="TRUE"
RuntimeLibrary="2"
EnableFunctionLevelLinking="TRUE"
@@ -796,7 +796,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -837,7 +837,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32,..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -890,7 +890,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -931,7 +931,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1034,7 +1034,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1122,6 +1122,9 @@
RelativePath="..\..\..\..\lib\base64.c">
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.c">
+ </File>
+ <File
RelativePath="..\..\..\..\lib\conncache.c">
</File>
<File
@@ -1137,9 +1140,6 @@
RelativePath="..\..\..\..\lib\curl_addrinfo.c">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.c">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.c">
</File>
<File
@@ -1435,6 +1435,9 @@
RelativePath="..\..\..\..\lib\asyn.h">
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.h">
+ </File>
+ <File
RelativePath="..\..\..\..\lib\config-win32.h">
</File>
<File
@@ -1456,9 +1459,6 @@
RelativePath="..\..\..\..\lib\curl_base64.h">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.h">
</File>
<File
@@ -1504,9 +1504,6 @@
RelativePath="..\..\..\..\lib\curl_ntlm_wb.h">
</File>
<File
- RelativePath="..\..\..\..\lib\curl_printf.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_rtmp.h">
</File>
<File
@@ -1743,10 +1740,13 @@
RelativePath="..\..\..\..\lib\vtls\axtls.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.c">
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.c">
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.c">
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.c">
</File>
<File
RelativePath="..\..\..\..\lib\vtls\gskit.c">
@@ -1767,9 +1767,6 @@
RelativePath="..\..\..\..\lib\vtls\polarssl_threadlock.c">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.c">
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.c">
</File>
</Filter>
@@ -1780,10 +1777,13 @@
RelativePath="..\..\..\..\lib\vtls\axtls.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.h">
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.h">
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.h">
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.h">
</File>
<File
RelativePath="..\..\..\..\lib\vtls\gskit.h">
@@ -1804,9 +1804,6 @@
RelativePath="..\..\..\..\lib\vtls\polarssl_threadlock.h">
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.h">
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.h">
</File>
</Filter>
diff --git a/projects/Windows/VC7/src/curl.sln b/projects/Windows/VC7/src/curlsrc.sln
index 69554619d..651c9b2be 100644
--- a/projects/Windows/VC7/src/curl.sln
+++ b/projects/Windows/VC7/src/curlsrc.sln
@@ -1,5 +1,5 @@
Microsoft Visual Studio Solution File, Format Version 7.00
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
diff --git a/projects/Windows/VC7/src/curl.vcproj b/projects/Windows/VC7/src/curlsrc.vcproj
index b032c5458..bab5237bd 100644
--- a/projects/Windows/VC7/src/curl.vcproj
+++ b/projects/Windows/VC7/src/curlsrc.vcproj
@@ -2,7 +2,7 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="7.00"
- Name="curl"
+ Name="curlsrc"
SccProjectName=""
SccLocalPath="">
<Platforms>
@@ -35,7 +35,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\LIB Release"
@@ -84,7 +84,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -133,7 +133,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -169,7 +169,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -182,7 +182,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\DLL Debug,..\..\..\..\..\libssh2\build\Win32\VC7\DLL Debug"
@@ -220,7 +220,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -233,7 +233,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\LIB Debug"
@@ -271,7 +271,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -284,7 +284,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -322,7 +322,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -335,7 +335,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\LIB Debug,..\..\..\..\..\libssh2\build\Win32\VC7\LIB Debug"
@@ -386,7 +386,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\DLL Release"
@@ -435,7 +435,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\DLL Release,..\..\..\..\..\libssh2\build\Win32\VC7\DLL Release"
@@ -484,7 +484,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -533,7 +533,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="crypt32.lib wldap32.lib ws2_32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\LIB Release,..\..\..\..\..\libssh2\build\Win32\VC7\LIB Release"
@@ -569,7 +569,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -582,7 +582,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName),..\..\..\..\..\openssl\build\Win32\VC7\DLL Debug"
@@ -620,7 +620,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -633,7 +633,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -671,7 +671,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -684,7 +684,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -735,7 +735,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -784,7 +784,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -820,7 +820,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -833,7 +833,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -871,7 +871,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -884,7 +884,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -935,7 +935,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -971,7 +971,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -984,7 +984,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -1022,7 +1022,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1035,7 +1035,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -1086,7 +1086,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -1122,7 +1122,7 @@
AdditionalOptions="/EHsc "
Optimization="0"
AdditionalIncludeDirectories="$(ProgramFiles)\Microsoft Platform SDK\Include,..\..\..\..\include,..\..\..\..\lib,..\..\..\..\src"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
@@ -1135,7 +1135,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="normaliz.lib wldap32.lib ws2_32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
@@ -1186,7 +1186,7 @@
Name="VCLinkerTool"
AdditionalOptions="/MACHINE:I386 /FIXED:NO"
AdditionalDependencies="normaliz.lib wldap32.lib ws2_32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
SuppressStartupBanner="TRUE"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC7\$(ConfigurationName)"
diff --git a/projects/Windows/VC8/curl-all.sln b/projects/Windows/VC8/curl.sln
index 9e2c22df4..0dfbd1a41 100644
--- a/projects/Windows/VC8/curl-all.sln
+++ b/projects/Windows/VC8/curl.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
diff --git a/projects/Windows/VC8/lib/libcurl.sln b/projects/Windows/VC8/lib/libcurl.sln
index f844fdff1..e0cd36c6c 100644
--- a/projects/Windows/VC8/lib/libcurl.sln
+++ b/projects/Windows/VC8/lib/libcurl.sln
@@ -74,20 +74,20 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
diff --git a/projects/Windows/VC8/lib/libcurl.vcproj b/projects/Windows/VC8/lib/libcurl.vcproj
index 8bfb8e313..06ace9667 100644
--- a/projects/Windows/VC8/lib/libcurl.vcproj
+++ b/projects/Windows/VC8/lib/libcurl.vcproj
@@ -42,6 +42,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -50,11 +51,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -73,6 +75,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
@@ -91,6 +94,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -130,6 +135,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -138,11 +144,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -161,6 +168,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -178,6 +186,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -217,6 +227,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -231,6 +242,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -248,6 +260,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
ImportLibrary="$(TargetDir)$(TargetName).lib"
@@ -264,6 +277,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -303,6 +318,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -317,6 +333,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -334,6 +351,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
@@ -349,6 +367,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -391,11 +411,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -412,6 +433,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -421,6 +443,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -458,11 +482,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -479,6 +504,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -488,6 +514,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -530,6 +558,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -545,6 +574,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -554,6 +584,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -597,6 +629,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -612,6 +645,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -621,6 +655,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -654,6 +690,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -662,11 +699,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -685,6 +723,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC8\DLL Debug"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
@@ -703,6 +742,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -742,6 +783,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -750,11 +792,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -773,6 +816,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -790,6 +834,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -829,6 +875,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -838,11 +885,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -860,6 +908,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC8\DLL Release"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
ImportLibrary="$(TargetDir)$(TargetName).lib"
@@ -876,6 +925,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -915,6 +966,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -924,11 +976,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -946,6 +999,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC8\DLL Release"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
@@ -961,6 +1015,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1000,6 +1056,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1008,11 +1065,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1031,6 +1089,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
@@ -1049,6 +1108,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1088,6 +1149,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1096,11 +1158,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1119,6 +1182,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1136,6 +1200,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1175,6 +1241,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1189,6 +1256,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1206,6 +1274,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
ImportLibrary="$(TargetDir)$(TargetName).lib"
@@ -1222,6 +1291,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1261,6 +1332,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1275,6 +1347,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1292,6 +1365,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
@@ -1307,6 +1381,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1346,6 +1422,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1354,11 +1431,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1377,6 +1455,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2d.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC8\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC8\DLL Debug"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
@@ -1395,6 +1474,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1434,6 +1515,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1442,11 +1524,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1465,6 +1548,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2d.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC8\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1482,6 +1566,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1521,6 +1607,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1530,11 +1617,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1552,6 +1640,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC8\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC8\DLL Release"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
ImportLibrary="$(TargetDir)$(TargetName).lib"
@@ -1568,6 +1657,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1607,6 +1698,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1616,11 +1708,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1638,6 +1731,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC8\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC8\DLL Release"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
@@ -1653,6 +1747,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1695,11 +1791,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1716,6 +1813,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1725,6 +1823,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1762,11 +1862,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1783,6 +1884,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1792,6 +1894,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1828,11 +1932,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1849,6 +1954,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1858,6 +1964,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1895,11 +2003,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1916,6 +2025,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1925,6 +2035,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1961,11 +2073,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1982,6 +2095,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1991,6 +2105,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2028,11 +2144,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2049,6 +2166,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2058,6 +2176,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2094,11 +2214,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2115,6 +2236,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2124,6 +2246,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2161,11 +2285,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2182,6 +2307,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2191,6 +2317,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2227,11 +2355,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2248,6 +2377,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2257,6 +2387,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2294,11 +2426,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2315,6 +2448,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2324,6 +2458,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2361,11 +2497,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2381,6 +2518,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2390,6 +2528,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2428,11 +2568,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2448,6 +2589,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2457,6 +2599,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2494,11 +2638,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2514,6 +2659,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2523,6 +2669,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2561,11 +2709,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2581,6 +2730,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2590,6 +2740,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2632,6 +2784,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2647,6 +2800,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2656,6 +2810,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2699,6 +2855,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2714,6 +2871,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2723,6 +2881,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2760,11 +2920,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2780,6 +2941,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2789,6 +2951,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2827,11 +2991,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2847,6 +3012,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2856,6 +3022,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2893,11 +3061,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2913,6 +3082,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2922,6 +3092,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2960,11 +3132,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2980,6 +3153,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2989,6 +3163,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3022,6 +3198,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3030,11 +3207,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3053,6 +3231,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
@@ -3071,6 +3250,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3110,6 +3291,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3118,11 +3300,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3141,6 +3324,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3158,6 +3342,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3197,6 +3383,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3211,6 +3398,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3228,6 +3416,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
ImportLibrary="$(TargetDir)$(TargetName).lib"
@@ -3244,6 +3433,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3283,6 +3474,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3297,6 +3489,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3314,6 +3507,7 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
@@ -3329,6 +3523,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3371,11 +3567,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3392,6 +3589,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3401,6 +3599,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3438,11 +3638,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3459,6 +3660,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3468,6 +3670,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3510,6 +3714,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3525,6 +3730,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3534,6 +3740,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3577,6 +3785,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3592,6 +3801,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3601,6 +3811,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3633,6 +3845,10 @@
>
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\..\lib\conncache.c"
>
</File>
@@ -3653,10 +3869,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.c"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.c"
>
</File>
@@ -4049,6 +4261,10 @@
>
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\..\lib\config-win32.h"
>
</File>
@@ -4077,10 +4293,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.h"
>
</File>
@@ -4141,10 +4353,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_printf.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_rtmp.h"
>
</File>
@@ -4456,11 +4664,15 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.c"
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.c"
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.c"
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.c"
>
</File>
<File
@@ -4488,10 +4700,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.c"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.c"
>
</File>
@@ -4504,11 +4712,15 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.h"
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.h"
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.h"
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.h"
>
</File>
<File
@@ -4536,10 +4748,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.h"
>
</File>
diff --git a/projects/Windows/VC8/src/curl.sln b/projects/Windows/VC8/src/curlsrc.sln
index 0c43cbe24..2e8ad0752 100644
--- a/projects/Windows/VC8/src/curl.sln
+++ b/projects/Windows/VC8/src/curlsrc.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 9.00
# Visual Studio 2005
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/projects/Windows/VC8/src/curl.vcproj b/projects/Windows/VC8/src/curlsrc.vcproj
index 6b3fdaefa..627bf9798 100644
--- a/projects/Windows/VC8/src/curl.vcproj
+++ b/projects/Windows/VC8/src/curlsrc.vcproj
@@ -2,9 +2,9 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="8.00"
- Name="curl"
+ Name="curlsrc"
ProjectGUID="{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
- RootNamespace="curl"
+ RootNamespace="curlsrc"
>
<Platforms>
<Platform
@@ -53,6 +53,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -69,8 +70,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -86,6 +88,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -137,6 +141,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -153,8 +158,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -170,6 +176,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -220,6 +228,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -236,8 +245,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -253,6 +263,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -304,6 +316,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -320,8 +333,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -337,6 +351,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -381,11 +397,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -403,8 +420,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -422,6 +440,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -467,11 +487,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -489,8 +510,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -508,6 +530,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -552,11 +576,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -574,8 +599,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -593,6 +619,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -638,11 +666,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -660,8 +689,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -679,6 +709,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -723,11 +755,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -745,8 +778,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -764,6 +798,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -809,11 +845,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -831,8 +868,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -850,6 +888,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -894,11 +934,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -916,8 +957,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -935,6 +977,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -980,11 +1024,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1002,8 +1047,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1021,6 +1067,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1071,6 +1119,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1087,8 +1136,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -1104,6 +1154,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1155,6 +1207,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1171,8 +1224,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -1188,6 +1242,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1238,6 +1294,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1254,8 +1311,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -1271,6 +1329,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1322,6 +1382,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1338,8 +1399,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -1355,6 +1417,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1399,11 +1463,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1421,8 +1486,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1440,6 +1506,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1485,11 +1553,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1507,8 +1576,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1526,6 +1596,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1576,6 +1648,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1592,8 +1665,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -1609,6 +1683,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1660,6 +1736,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1676,8 +1753,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -1693,6 +1771,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1737,11 +1817,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1759,8 +1840,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1778,6 +1860,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1823,11 +1907,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1845,8 +1930,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -1864,6 +1950,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1914,6 +2002,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1930,8 +2019,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\LIB Release"
SubSystem="1"
TargetMachine="1"
@@ -1947,6 +2037,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1998,6 +2090,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2014,8 +2107,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\LIB Release"
SubSystem="1"
TargetMachine="17"
@@ -2031,6 +2125,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2075,11 +2171,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2097,8 +2194,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC8\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2116,6 +2214,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2161,11 +2261,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2183,8 +2284,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC8\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2202,6 +2304,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2252,6 +2356,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2268,8 +2373,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC8\LIB Release"
SubSystem="1"
TargetMachine="1"
@@ -2285,6 +2391,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2336,6 +2444,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2352,8 +2461,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC8\LIB Release"
SubSystem="1"
TargetMachine="17"
@@ -2369,6 +2479,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2413,11 +2525,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2435,8 +2548,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2454,6 +2568,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2499,11 +2615,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2521,8 +2638,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2540,6 +2658,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2590,6 +2710,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2606,8 +2727,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\DLL Release"
SubSystem="1"
TargetMachine="1"
@@ -2623,6 +2745,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2674,6 +2798,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2690,8 +2815,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\DLL Release"
SubSystem="1"
TargetMachine="17"
@@ -2707,6 +2833,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2751,11 +2879,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2773,8 +2902,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2792,6 +2922,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2837,11 +2969,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2859,8 +2992,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC8\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -2878,6 +3012,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2928,6 +3064,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2944,8 +3081,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC8\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC8\DLL Release"
SubSystem="1"
TargetMachine="1"
@@ -2961,6 +3099,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3012,6 +3152,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3028,8 +3169,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libssh2.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC8\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC8\DLL Release"
SubSystem="1"
TargetMachine="17"
@@ -3045,6 +3187,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3089,11 +3233,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3111,8 +3256,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3130,6 +3276,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3175,11 +3323,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3197,8 +3346,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3216,6 +3366,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3266,6 +3418,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3282,8 +3435,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -3299,6 +3453,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3350,6 +3506,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3366,8 +3523,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -3383,6 +3541,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3427,11 +3587,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3449,8 +3610,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3468,6 +3630,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3513,11 +3677,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3535,8 +3700,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3554,6 +3720,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3604,6 +3772,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3620,8 +3789,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -3637,6 +3807,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3688,6 +3860,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3704,8 +3877,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -3721,6 +3895,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3765,11 +3941,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3787,8 +3964,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3806,6 +3984,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3851,11 +4031,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3873,8 +4054,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
@@ -3892,6 +4074,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3942,6 +4126,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3958,8 +4143,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="1"
@@ -3975,6 +4161,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -4026,6 +4214,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -4042,8 +4231,9 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC8\$(ConfigurationName)"
SubSystem="1"
TargetMachine="17"
@@ -4059,6 +4249,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
diff --git a/projects/Windows/VC9/curl-all.sln b/projects/Windows/VC9/curl.sln
index 2007cf7ed..44151862b 100644
--- a/projects/Windows/VC9/curl-all.sln
+++ b/projects/Windows/VC9/curl.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "src\curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "src\curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
ProjectSection(ProjectDependencies) = postProject
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB} = {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}
EndProjectSection
diff --git a/projects/Windows/VC9/lib/libcurl.sln b/projects/Windows/VC9/lib/libcurl.sln
index a6619d50e..acfbaca5e 100644
--- a/projects/Windows/VC9/lib/libcurl.sln
+++ b/projects/Windows/VC9/lib/libcurl.sln
@@ -74,20 +74,20 @@ Global
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|Win32.Build.0 = DLL Debug|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.ActiveCfg = DLL Debug|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Debug|x64.Build.0 = DLL Debug|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.ActiveCfg = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|Win32.Build.0 = DLL Debug - DLL OpenSSL - DLL LibSSH2|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.ActiveCfg = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL - DLL LibSSH2|x64.Build.0 = DLL Release - DLL OpenSSL - DLL LibSSH2|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Release - DLL OpenSSL|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Release - DLL OpenSSL|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.ActiveCfg = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|Win32.Build.0 = DLL Debug - DLL OpenSSL|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.ActiveCfg = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL OpenSSL|x64.Build.0 = DLL Debug - DLL OpenSSL|x64
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|Win32.Build.0 = DLL Debug - DLL Windows SSPI - DLL WinIDN|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.ActiveCfg = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI - DLL WinIDN|x64.Build.0 = DLL Release - DLL Windows SSPI - DLL WinIDN|x64
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Release - DLL Windows SSPI|Win32
- {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Release - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.ActiveCfg = DLL Debug - DLL Windows SSPI|Win32
+ {DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|Win32.Build.0 = DLL Debug - DLL Windows SSPI|Win32
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.ActiveCfg = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release - DLL Windows SSPI|x64.Build.0 = DLL Release - DLL Windows SSPI|x64
{DA6F56B4-06A4-441D-AD70-AC5A7D51FADB}.DLL Release|Win32.ActiveCfg = DLL Release|Win32
diff --git a/projects/Windows/VC9/lib/libcurl.vcproj b/projects/Windows/VC9/lib/libcurl.vcproj
index 7f5f81c7f..d609a543c 100644
--- a/projects/Windows/VC9/lib/libcurl.vcproj
+++ b/projects/Windows/VC9/lib/libcurl.vcproj
@@ -43,6 +43,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -51,11 +52,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -74,10 +76,13 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -92,6 +97,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -128,6 +135,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -136,11 +144,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -159,9 +168,12 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -176,6 +188,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -212,6 +226,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -226,6 +241,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -243,8 +259,11 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -259,6 +278,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -295,6 +316,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -309,6 +331,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -326,7 +349,10 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -341,6 +367,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -380,11 +408,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -401,6 +430,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -410,6 +440,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -447,11 +479,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -468,6 +501,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -477,6 +511,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -519,6 +555,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -534,6 +571,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -543,6 +581,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -586,6 +626,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -601,6 +642,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -610,6 +652,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -643,6 +687,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -651,11 +696,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -674,10 +720,13 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC9\DLL Debug"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -692,6 +741,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -728,6 +779,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -736,11 +788,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -759,9 +812,12 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -776,6 +832,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -812,6 +870,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -821,11 +880,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -843,8 +903,11 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC9\DLL Release"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -859,6 +922,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -895,6 +960,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -904,11 +970,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -926,7 +993,10 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC9\DLL Release"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -941,6 +1011,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -977,6 +1049,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -985,11 +1058,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1008,10 +1082,13 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -1026,6 +1103,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1062,6 +1141,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1070,11 +1150,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1093,9 +1174,12 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -1110,6 +1194,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1146,6 +1232,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1160,6 +1247,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1177,8 +1265,11 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -1193,6 +1284,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1229,6 +1322,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1243,6 +1337,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1260,7 +1355,10 @@
AdditionalDependencies="ws2_32.lib wldap32.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -1275,6 +1373,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1311,6 +1411,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1319,11 +1420,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1342,10 +1444,13 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2d.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC9\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC9\DLL Debug"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -1360,6 +1465,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1396,6 +1503,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1404,11 +1512,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1427,9 +1536,12 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2d.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC9\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -1444,6 +1556,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1480,6 +1594,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1489,11 +1604,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1511,8 +1627,11 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win32\VC9\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC9\DLL Release"
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -1527,6 +1646,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1563,6 +1684,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -1572,11 +1694,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1594,7 +1717,10 @@
AdditionalDependencies="ws2_32.lib wldap32.lib libeay32.lib ssleay32.lib libssh2.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\..\openssl\build\Win64\VC9\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC9\DLL Release"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -1609,6 +1735,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1648,11 +1776,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1669,6 +1798,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1678,6 +1808,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1715,11 +1847,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1736,6 +1869,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1745,6 +1879,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1781,11 +1917,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1802,6 +1939,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1811,6 +1949,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1848,11 +1988,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1869,6 +2010,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1878,6 +2020,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1914,11 +2058,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1935,6 +2080,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -1944,6 +2090,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1981,11 +2129,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2002,6 +2151,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2011,6 +2161,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2047,11 +2199,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2068,6 +2221,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2077,6 +2231,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2114,11 +2270,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2135,6 +2292,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2144,6 +2302,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2180,11 +2340,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2201,6 +2362,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2210,6 +2372,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2247,11 +2411,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2268,6 +2433,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2277,6 +2443,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2314,11 +2482,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2334,6 +2503,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2343,6 +2513,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2381,11 +2553,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2401,6 +2574,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2410,6 +2584,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2447,11 +2623,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2467,6 +2644,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2476,6 +2654,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2514,11 +2694,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2534,6 +2715,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2543,6 +2725,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2585,6 +2769,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2600,6 +2785,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2609,6 +2795,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2652,6 +2840,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2667,6 +2856,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2676,6 +2866,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2713,11 +2905,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2733,6 +2926,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2742,6 +2936,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2780,11 +2976,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2800,6 +2997,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2809,6 +3007,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2846,11 +3046,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2866,6 +3067,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2875,6 +3077,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2913,11 +3117,12 @@
Optimization="2"
InlineFunctionExpansion="1"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib;..\..\..\..\..\openssl\inc32;..\..\..\..\..\libssh2\include"
- PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
+ PreprocessorDefinitions="NDEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_SSLEAY;USE_OPENSSL;USE_LIBSSH2;HAVE_LIBSSH2_H"
StringPooling="true"
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2933,6 +3138,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -2942,6 +3148,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2975,6 +3183,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -2983,11 +3192,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3006,10 +3216,13 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -3024,6 +3237,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3060,6 +3275,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="_DEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3068,11 +3284,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3091,9 +3308,12 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName)d.dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -3108,6 +3328,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3144,6 +3366,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="1"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3158,6 +3381,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3175,8 +3399,11 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
ManifestFile="$(IntDir)\$(TargetFileName).intermediate.manifest"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="1"
/>
@@ -3191,6 +3418,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3227,6 +3456,7 @@
Name="VCMIDLTool"
PreprocessorDefinitions="NDEBUG"
MkTypLibCompatible="true"
+ SuppressStartupBanner="true"
TargetEnvironment="3"
TypeLibraryName="$(OutDir)\$(ProjectName).tlb"
HeaderFileName=""
@@ -3241,6 +3471,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3258,7 +3489,10 @@
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib"
OutputFile="$(OutDir)\$(ProjectName).dll"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories=""
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
ImportLibrary="$(TargetDir)$(TargetName).lib"
TargetMachine="17"
/>
@@ -3273,6 +3507,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3312,11 +3548,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3333,6 +3570,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3342,6 +3580,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3379,11 +3619,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;DEBUGBUILD;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
+ PreprocessorDefinitions="_DEBUG;BUILDING_LIBCURL;CURL_STATICLIB;USE_WINDOWS_SSPI;USE_SCHANNEL;USE_WIN32_IDN;WANT_IDN_PROTOTYPES"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3400,6 +3641,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName)d.lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3409,6 +3651,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3451,6 +3695,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3466,6 +3711,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3475,6 +3721,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3518,6 +3766,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3533,6 +3782,7 @@
<Tool
Name="VCLibrarianTool"
OutputFile="$(OutDir)\$(ProjectName).lib"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCALinkTool"
@@ -3542,6 +3792,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(OutDir)\$(ProjectName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3574,6 +3826,10 @@
>
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.c"
+ >
+ </File>
+ <File
RelativePath="..\..\..\..\lib\conncache.c"
>
</File>
@@ -3594,10 +3850,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.c"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.c"
>
</File>
@@ -3990,6 +4242,10 @@
>
</File>
<File
+ RelativePath="..\..\..\..\lib\bundles.h"
+ >
+ </File>
+ <File
RelativePath="..\..\..\..\lib\config-win32.h"
>
</File>
@@ -4018,10 +4274,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_des.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_endian.h"
>
</File>
@@ -4082,10 +4334,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\curl_printf.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\curl_rtmp.h"
>
</File>
@@ -4397,11 +4645,15 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.c"
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.c"
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.c"
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.c"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.c"
>
</File>
<File
@@ -4429,10 +4681,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.c"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.c"
>
</File>
@@ -4445,11 +4693,15 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\cyassl.h"
+ RelativePath="..\..\..\..\lib\vtls\curl_darwinssl.h"
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\darwinssl.h"
+ RelativePath="..\..\..\..\lib\vtls\curl_schannel.h"
+ >
+ </File>
+ <File
+ RelativePath="..\..\..\..\lib\vtls\cyassl.h"
>
</File>
<File
@@ -4477,10 +4729,6 @@
>
</File>
<File
- RelativePath="..\..\..\..\lib\vtls\schannel.h"
- >
- </File>
- <File
RelativePath="..\..\..\..\lib\vtls\vtls.h"
>
</File>
diff --git a/projects/Windows/VC9/src/curl.sln b/projects/Windows/VC9/src/curlsrc.sln
index 0fb0586fa..d673349ea 100644
--- a/projects/Windows/VC9/src/curl.sln
+++ b/projects/Windows/VC9/src/curlsrc.sln
@@ -1,6 +1,6 @@
Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curl", "curl.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curlsrc", "curlsrc.vcproj", "{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/projects/Windows/VC9/src/curl.vcproj b/projects/Windows/VC9/src/curlsrc.vcproj
index a3d06e174..d074b7913 100644
--- a/projects/Windows/VC9/src/curl.vcproj
+++ b/projects/Windows/VC9/src/curlsrc.vcproj
@@ -2,9 +2,9 @@
<VisualStudioProject
ProjectType="Visual C++"
Version="9.00"
- Name="curl"
+ Name="curlsrc"
ProjectGUID="{5228E9CE-A216-422F-A5E6-58E95E2DD71D}"
- RootNamespace="curl"
+ RootNamespace="curlsrc"
TargetFrameworkVersion="131072"
>
<Platforms>
@@ -54,6 +54,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -70,10 +71,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -87,6 +91,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -135,6 +141,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -151,10 +158,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -168,6 +178,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -215,6 +227,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -231,10 +244,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -248,6 +264,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -296,6 +314,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -312,10 +331,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -329,6 +351,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -370,11 +394,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -392,12 +417,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -411,6 +439,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -453,11 +483,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -475,12 +506,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -494,6 +528,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -535,11 +571,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -557,12 +594,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -576,6 +616,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -618,11 +660,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -640,12 +683,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -659,6 +705,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -700,11 +748,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -722,12 +771,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -741,6 +793,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -783,11 +837,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -805,12 +860,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -824,6 +882,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -865,11 +925,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -887,12 +948,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -906,6 +970,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -948,11 +1014,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -970,12 +1037,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -989,6 +1059,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1036,6 +1108,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1052,10 +1125,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1069,6 +1145,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1117,6 +1195,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1133,10 +1212,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1150,6 +1232,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1197,6 +1281,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1213,10 +1298,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1230,6 +1318,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1278,6 +1368,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1294,10 +1385,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1311,6 +1405,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1352,11 +1448,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1374,12 +1471,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1393,6 +1493,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1435,11 +1537,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1457,12 +1560,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1476,6 +1582,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1523,6 +1631,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1539,10 +1648,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1556,6 +1668,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1604,6 +1718,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1620,10 +1735,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1637,6 +1755,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1678,11 +1798,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1700,12 +1821,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1719,6 +1843,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1761,11 +1887,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -1783,12 +1910,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1802,6 +1932,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1849,6 +1981,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1865,10 +1998,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\LIB Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -1882,6 +2018,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -1930,6 +2068,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -1946,10 +2085,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\LIB Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -1963,6 +2105,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2004,11 +2148,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2026,12 +2171,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\LIB Debug;..\..\..\..\..\libssh2\build\Win32\VC9\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2045,6 +2193,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2087,11 +2237,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2109,12 +2260,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\LIB Debug;..\..\..\..\..\libssh2\build\Win64\VC9\LIB Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2128,6 +2282,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2175,6 +2331,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2191,10 +2348,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\LIB Release;..\..\..\..\..\libssh2\build\Win32\VC9\LIB Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2208,6 +2368,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2256,6 +2418,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2272,10 +2435,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="crypt32.lib ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\LIB Release;..\..\..\..\..\libssh2\build\Win64\VC9\LIB Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2289,6 +2455,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2330,11 +2498,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2352,12 +2521,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2371,6 +2543,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2413,11 +2587,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2435,12 +2610,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2454,6 +2632,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2501,6 +2681,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2517,10 +2698,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\DLL Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2534,6 +2718,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2582,6 +2768,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2598,10 +2785,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\DLL Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2615,6 +2805,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2656,11 +2848,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2678,12 +2871,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\DLL Debug;..\..\..\..\..\libssh2\build\Win32\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2697,6 +2893,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2739,11 +2937,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -2761,12 +2960,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib libeay32.lib ssleay32.lib libssh2d.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\DLL Debug;..\..\..\..\..\libssh2\build\Win64\VC9\DLL Debug"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2780,6 +2982,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2827,6 +3031,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2843,10 +3048,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libeay32.lib ssleay32.lib libssh2.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win32\VC9\DLL Release;..\..\..\..\..\libssh2\build\Win32\VC9\DLL Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -2860,6 +3068,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2908,6 +3118,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -2924,10 +3135,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib libssh2.lib libeay32.lib ssleay32.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName);..\..\..\..\..\openssl\build\Win64\VC9\DLL Release;..\..\..\..\..\libssh2\build\Win64\VC9\DLL Release"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -2941,6 +3155,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -2982,11 +3198,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3004,12 +3221,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3023,6 +3243,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3065,11 +3287,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3087,12 +3310,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3106,6 +3332,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3153,6 +3381,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3169,10 +3398,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3186,6 +3418,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3234,6 +3468,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3250,10 +3485,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3267,6 +3505,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3308,11 +3548,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3330,12 +3571,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3349,6 +3593,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3391,11 +3637,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3413,12 +3660,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3432,6 +3682,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3479,6 +3731,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3495,10 +3748,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3512,6 +3768,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3560,6 +3818,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3576,10 +3835,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3593,6 +3855,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3634,11 +3898,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3656,12 +3921,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3675,6 +3943,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3717,11 +3987,12 @@
Name="VCCLCompilerTool"
Optimization="0"
AdditionalIncludeDirectories="..\..\..\..\include;..\..\..\..\lib"
- PreprocessorDefinitions="_DEBUG;_CONSOLE;DEBUGBUILD;CURL_STATICLIB"
+ PreprocessorDefinitions="_DEBUG;_CONSOLE;CURL_STATICLIB"
MinimalRebuild="true"
BasicRuntimeChecks="3"
RuntimeLibrary="3"
WarningLevel="3"
+ SuppressStartupBanner="true"
DebugInformationFormat="3"
/>
<Tool
@@ -3739,12 +4010,15 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurld.lib"
- OutputFile="$(OutDir)\$(ProjectName)d.exe"
+ OutputFile="$(OutDir)\curld.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
GenerateDebugInformation="true"
ProgramDatabaseFile="$(TargetDir)$(TargetName).pdb"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3758,6 +4032,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3805,6 +4081,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3821,10 +4098,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win32\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="1"
/>
<Tool
@@ -3838,6 +4118,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
@@ -3886,6 +4168,7 @@
RuntimeLibrary="2"
EnableFunctionLevelLinking="true"
WarningLevel="3"
+ SuppressStartupBanner="true"
/>
<Tool
Name="VCManagedResourceCompilerTool"
@@ -3902,10 +4185,13 @@
<Tool
Name="VCLinkerTool"
AdditionalDependencies="ws2_32.lib wldap32.lib normaliz.lib libcurl.lib"
- OutputFile="$(OutDir)\$(ProjectName).exe"
+ OutputFile="$(OutDir)\curl.exe"
LinkIncremental="1"
+ SuppressStartupBanner="true"
AdditionalLibraryDirectories="..\..\..\..\build\Win64\VC9\$(ConfigurationName)"
SubSystem="1"
+ RandomizedBaseAddress="1"
+ DataExecutionPrevention="0"
TargetMachine="17"
/>
<Tool
@@ -3919,6 +4205,8 @@
/>
<Tool
Name="VCBscMakeTool"
+ SuppressStartupBanner="true"
+ OutputFile="$(TargetDir)$(TargetName).bsc"
/>
<Tool
Name="VCFxCopTool"
diff --git a/projects/build-openssl.bat b/projects/build-openssl.bat
index 19b7357cf..3703a3f2d 100644
--- a/projects/build-openssl.bat
+++ b/projects/build-openssl.bat
@@ -6,7 +6,7 @@ rem * / __| | | | |_) | |
rem * | (__| |_| | _ <| |___
rem * \___|\___/|_| \_\_____|
rem *
-rem * Copyright (C) 2012 - 2015, Steve Holme, <steve_holme@hotmail.com>.
+rem * Copyright (C) 2012 - 2014, Steve Holme, <steve_holme@hotmail.com>.
rem *
rem * This software is licensed as described in the file COPYING, which
rem * you should have received as part of this distribution. The terms
@@ -24,14 +24,13 @@ rem ***************************************************************************
:begin
rem Check we are running on a Windows NT derived OS
if not "%OS%" == "Windows_NT" goto nodos
-
- rem Set our variables
setlocal
- set VC_VER=
- set BUILD_PLATFORM=
-
- rem Ensure we have the required arguments
+
+ rem Display the help
if /i "%~1" == "" goto syntax
+ if /i "%~1" == "-?" goto syntax
+ if /i "%~1" == "-h" goto syntax
+ if /i "%~1" == "-help" goto syntax
:parseArgs
if "%~1" == "" goto prerequisites
@@ -68,10 +67,6 @@ rem ***************************************************************************
set VC_VER=12.0
set VC_DESC=VC12
set "VC_PATH=Microsoft Visual Studio 12.0\VC"
- ) else if /i "%~1" == "vc14" (
- set VC_VER=14.0
- set VC_DESC=VC14
- set "VC_PATH=Microsoft Visual Studio 14.0\VC"
) else if /i "%~1%" == "x86" (
set BUILD_PLATFORM=x86
) else if /i "%~1%" == "x64" (
@@ -80,12 +75,6 @@ rem ***************************************************************************
set BUILD_CONFIG=debug
) else if /i "%~1%" == "release" (
set BUILD_CONFIG=release
- ) else if /i "%~1" == "-?" (
- goto syntax
- ) else if /i "%~1" == "-h" (
- goto syntax
- ) else if /i "%~1" == "-help" (
- goto syntax
) else (
if not defined START_DIR (
set START_DIR=%~1%
@@ -97,10 +86,6 @@ rem ***************************************************************************
shift & goto parseArgs
:prerequisites
- rem Compiler and platform are required parameters.
- if not defined VC_VER goto syntax
- if not defined BUILD_PLATFORM goto syntax
-
rem Default the start directory if one isn't specified
if not defined START_DIR set START_DIR=..\..\openssl
@@ -120,14 +105,6 @@ rem ***************************************************************************
rem Check we have Visual Studio installed
if not exist "%PF%\%VC_PATH%" goto novc
- rem Check we have Perl installed
- echo %PATH% | findstr /I /C:"\Perl" 1>nul
- if errorlevel 1 (
- if not exist "%SystemDrive%\Perl" (
- if not exist "%SystemDrive%\Perl64" goto noperl
- )
- )
-
rem Check the start directory exists
if not exist "%START_DIR%" goto noopenssl
@@ -155,7 +132,6 @@ rem ***************************************************************************
if "%VC_VER%" == "10.0" set VCVARS_PLATFORM=%BUILD_PLATFORM%
if "%VC_VER%" == "11.0" set VCVARS_PLATFORM=amd64
if "%VC_VER%" == "12.0" set VCVARS_PLATFORM=amd64
- if "%VC_VER%" == "14.0" set VCVARS_PLATFORM=amd64
)
:start
@@ -180,7 +156,7 @@ rem ***************************************************************************
set OUTDIR=build\Win64\%VC_DESC%
if not exist %OUTDIR% md %OUTDIR%
- if "%BUILD_CONFIG%" == "release" goto x64release
+ if "%BUILD_CONFIG%" == "release" goto x64release
:x64debug
rem Configuring 64-bit Debug Build
@@ -296,7 +272,6 @@ rem ***************************************************************************
echo vc10 - Use Visual Studio 2010
echo vc11 - Use Visual Studio 2012
echo vc12 - Use Visual Studio 2013
- echo vc14 - Use Visual Studio 2015
echo.
echo Platform:
echo.
@@ -333,11 +308,6 @@ rem ***************************************************************************
echo Error: %VC_DESC% is not installed
goto error
-:noperl
- echo.
- echo Error: Perl is not installed
- goto error
-
:nox64
echo.
echo Error: %VC_DESC% does not support 64-bit builds
diff --git a/projects/build-wolfssl.bat b/projects/build-wolfssl.bat
deleted file mode 100644
index 52f714d6a..000000000
--- a/projects/build-wolfssl.bat
+++ /dev/null
@@ -1,353 +0,0 @@
-@echo off
-rem ***************************************************************************
-rem * _ _ ____ _
-rem * Project ___| | | | _ \| |
-rem * / __| | | | |_) | |
-rem * | (__| |_| | _ <| |___
-rem * \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 2012 - 2015, Steve Holme, <steve_holme@hotmail.com>.
-rem * Copyright (C) 2015, Jay Satiro, <raysatiro@yahoo.com>.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at http://curl.haxx.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-:begin
- rem Check we are running on a Windows NT derived OS
- if not "%OS%" == "Windows_NT" goto nodos
-
- rem Set our variables
- setlocal
- set SUCCESSFUL_BUILDS=
- set VC_VER=
- set BUILD_PLATFORM=
-
- rem Ensure we have the required arguments
- if /i "%~1" == "" goto syntax
-
-:parseArgs
- if "%~1" == "" goto prerequisites
-
- if /i "%~1" == "vc10" (
- set VC_VER=10.0
- set VC_DESC=VC10
- set VC_TOOLSET=v100
- set "VC_PATH=Microsoft Visual Studio 10.0\VC"
- ) else if /i "%~1" == "vc11" (
- set VC_VER=11.0
- set VC_DESC=VC11
- set VC_TOOLSET=v110
- set "VC_PATH=Microsoft Visual Studio 11.0\VC"
- ) else if /i "%~1" == "vc12" (
- set VC_VER=12.0
- set VC_DESC=VC12
- set VC_TOOLSET=v120
- set "VC_PATH=Microsoft Visual Studio 12.0\VC"
- ) else if /i "%~1" == "vc14" (
- set VC_VER=14.0
- set VC_DESC=VC14
- set VC_TOOLSET=v140
- set "VC_PATH=Microsoft Visual Studio 14.0\VC"
- ) else if /i "%~1" == "x86" (
- set BUILD_PLATFORM=x86
- ) else if /i "%~1" == "x64" (
- set BUILD_PLATFORM=x64
- ) else if /i "%~1" == "debug" (
- set BUILD_CONFIG=debug
- ) else if /i "%~1" == "release" (
- set BUILD_CONFIG=release
- ) else if /i "%~1" == "-?" (
- goto syntax
- ) else if /i "%~1" == "-h" (
- goto syntax
- ) else if /i "%~1" == "-help" (
- goto syntax
- ) else (
- if not defined START_DIR (
- set START_DIR=%~1
- ) else (
- goto unknown
- )
- )
-
- shift & goto parseArgs
-
-:prerequisites
- rem Compiler and platform are required parameters.
- if not defined VC_VER goto syntax
- if not defined BUILD_PLATFORM goto syntax
-
- rem Default the start directory if one isn't specified
- if not defined START_DIR set START_DIR=..\..\wolfssl
-
- rem Calculate the program files directory
- if defined PROGRAMFILES (
- set "PF=%PROGRAMFILES%"
- set OS_PLATFORM=x86
- )
- if defined PROGRAMFILES(x86) (
- set "PF=%PROGRAMFILES(x86)%"
- set OS_PLATFORM=x64
- )
-
- rem Check we have a program files directory
- if not defined PF goto nopf
-
- rem Check we have Visual Studio installed
- if not exist "%PF%\%VC_PATH%" goto novc
-
- rem Check the start directory exists
- if not exist "%START_DIR%" goto nowolfssl
-
-:configure
- if "%BUILD_PLATFORM%" == "" set BUILD_PLATFORM=%OS_PLATFORM%
-
- if "%BUILD_PLATFORM%" == "x86" (
- set VCVARS_PLATFORM=x86
- ) else if "%BUILD_PLATFORM%" == "x64" (
- if "%VC_VER%" == "10.0" set VCVARS_PLATFORM=%BUILD_PLATFORM%
- if "%VC_VER%" == "11.0" set VCVARS_PLATFORM=amd64
- if "%VC_VER%" == "12.0" set VCVARS_PLATFORM=amd64
- if "%VC_VER%" == "14.0" set VCVARS_PLATFORM=amd64
- )
-
-:start
- echo.
- call "%PF%\%VC_PATH%\vcvarsall" %VCVARS_PLATFORM%
-
- echo.
- set SAVED_PATH=%CD%
- cd %START_DIR%
- goto %BUILD_PLATFORM%
-
-:x64
- rem Calculate our output directory
- set OUTDIR=build\Win64\%VC_DESC%
- if not exist %OUTDIR% md %OUTDIR%
-
- if "%BUILD_CONFIG%" == "release" goto x64release
-
-:x64debug
- rem Perform 64-bit Debug Build
-
- call :build Debug x64
- if errorlevel 1 goto error
-
- call :build "DLL Debug" x64
- if errorlevel 1 goto error
-
- if "%BUILD_CONFIG%" == "debug" goto success
-
-:x64release
- rem Perform 64-bit Release Build
-
- call :build Release x64
- if errorlevel 1 goto error
-
- call :build "DLL Release" x64
- if errorlevel 1 goto error
-
- goto success
-
-:x86
- rem Calculate our output directory
- set OUTDIR=build\Win32\%VC_DESC%
- if not exist %OUTDIR% md %OUTDIR%
-
- if "%BUILD_CONFIG%" == "release" goto x86release
-
-:x86debug
- rem Perform 32-bit Debug Build
-
- call :build Debug Win32
- if errorlevel 1 goto error
-
- call :build "DLL Debug" Win32
- if errorlevel 1 goto error
-
- if "%BUILD_CONFIG%" == "debug" goto success
-
-:x86release
- rem Perform 32-bit Release Build
-
- call :build Release Win32
- if errorlevel 1 goto error
-
- call :build "DLL Release" Win32
- if errorlevel 1 goto error
-
- goto success
-
-:build
- rem This function builds wolfSSL.
- rem Usage: CALL :build <configuration> <platform>
- rem The current directory must be the wolfSSL directory.
- rem VS Configuration: Debug, Release, DLL Debug or DLL Release.
- rem VS Platform: Win32 or x64.
- rem Returns: 1 on fail, 0 on success.
- rem An informational message should be shown before any return.
- setlocal
- set MSBUILD_CONFIG=%~1
- set MSBUILD_PLATFORM=%~2
-
- if not exist wolfssl64.sln (
- echo.
- echo Error: build: wolfssl64.sln not found in "%CD%"
- exit /b 1
- )
-
- rem OUTDIR isn't a full path, only relative. MSBUILD_OUTDIR must be full and
- rem not have trailing backslashes, which are handled later.
- if "%MSBUILD_CONFIG%" == "Debug" (
- set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Debug"
- ) else if "%MSBUILD_CONFIG%" == "Release" (
- set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Release"
- ) else if "%MSBUILD_CONFIG%" == "DLL Debug" (
- set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Debug"
- ) else if "%MSBUILD_CONFIG%" == "DLL Release" (
- set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Release"
- ) else (
- echo.
- echo Error: build: Configuration not recognized.
- exit /b 1
- )
-
- if not "%MSBUILD_PLATFORM%" == "Win32" if not "%MSBUILD_PLATFORM%" == "x64" (
- echo.
- echo Error: build: Platform not recognized.
- exit /b 1
- )
-
- copy /v /y "%~dp0\wolfssl_options.h" .\cyassl\options.h
- if %ERRORLEVEL% neq 0 (
- echo.
- echo Error: build: Couldn't replace .\cyassl\options.h
- exit /b 1
- )
-
- copy /v /y "%~dp0\wolfssl_options.h" .\wolfssl\options.h
- if %ERRORLEVEL% neq 0 (
- echo.
- echo Error: build: Couldn't replace .\wolfssl\options.h
- exit /b 1
- )
-
- rem Extra trailing \ in Dirs because otherwise it thinks a quote is escaped
- msbuild wolfssl64.sln ^
- -p:CustomAfterMicrosoftCommonTargets="%~dp0\wolfssl_override.props" ^
- -p:Configuration="%MSBUILD_CONFIG%" ^
- -p:Platform="%MSBUILD_PLATFORM%" ^
- -p:PlatformToolset="%VC_TOOLSET%" ^
- -p:OutDir="%MSBUILD_OUTDIR%\\" ^
- -p:IntDir="%MSBUILD_OUTDIR%\obj\\"
-
- if %ERRORLEVEL% neq 0 (
- echo.
- echo Error: Failed building wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
- exit /b 1
- )
-
- rem For tests to run properly the wolfSSL directory must remain the current.
- set "PATH=%MSBUILD_OUTDIR%;%PATH%"
- "%MSBUILD_OUTDIR%\testsuite.exe"
-
- if %ERRORLEVEL% neq 0 (
- echo.
- echo Error: Failed testing wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
- exit /b 1
- )
-
- echo.
- echo Success: Built and tested wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
- echo.
- echo.
- rem This is necessary to export our local variables back to the caller.
- endlocal & set SUCCESSFUL_BUILDS="%MSBUILD_CONFIG%|%MSBUILD_PLATFORM%" ^
- %SUCCESSFUL_BUILDS%
- exit /b 0
-
-:syntax
- rem Display the help
- echo.
- echo Usage: build-wolfssl ^<compiler^> ^<platform^> [configuration] [directory]
- echo.
- echo Compiler:
- echo.
- echo vc10 - Use Visual Studio 2010
- echo vc11 - Use Visual Studio 2012
- echo vc12 - Use Visual Studio 2013
- echo vc14 - Use Visual Studio 2015
- echo.
- echo Platform:
- echo.
- echo x86 - Perform a 32-bit build
- echo x64 - Perform a 64-bit build
- echo.
- echo Configuration:
- echo.
- echo debug - Perform a debug build
- echo release - Perform a release build
- echo.
- echo Other:
- echo.
- echo directory - Specifies the wolfSSL source directory
- goto error
-
-:unknown
- echo.
- echo Error: Unknown argument '%1'
- goto error
-
-:nodos
- echo.
- echo Error: Only a Windows NT based Operating System is supported
- goto error
-
-:nopf
- echo.
- echo Error: Cannot obtain the directory for Program Files
- goto error
-
-:novc
- echo.
- echo Error: %VC_DESC% is not installed
- goto error
-
-:nox64
- echo.
- echo Error: %VC_DESC% does not support 64-bit builds
- goto error
-
-:nowolfssl
- echo.
- echo Error: Cannot locate wolfSSL source directory, expected "%START_DIR%"
- goto error
-
-:error
- if "%OS%" == "Windows_NT" endlocal
- exit /B 1
-
-:success
- if defined SUCCESSFUL_BUILDS (
- echo.
- echo.
- echo Build complete.
- echo.
- echo The following configurations were built and tested successfully:
- echo.
- echo %SUCCESSFUL_BUILDS%
- echo.
- )
- cd %SAVED_PATH%
- endlocal
- exit /B 0
diff --git a/projects/checksrc.bat b/projects/checksrc.bat
index fa7a7fbed..139914dd8 100644
--- a/projects/checksrc.bat
+++ b/projects/checksrc.bat
@@ -6,7 +6,7 @@ rem * / __| | | | |_) | |
rem * | (__| |_| | _ <| |___
rem * \___|\___/|_| \_\_____|
rem *
-rem * Copyright (C) 2014 - 2015, Steve Holme, <steve_holme@hotmail.com>.
+rem * Copyright (C) 2014, Steve Holme, <steve_holme@hotmail.com>.
rem *
rem * This software is licensed as described in the file COPYING, which
rem * you should have received as part of this distribution. The terms
@@ -24,61 +24,29 @@ rem ***************************************************************************
:begin
rem Check we are running on a Windows NT derived OS
if not "%OS%" == "Windows_NT" goto nodos
-
- rem Set our variables
setlocal
-:parseArgs
- if "%~1" == "" goto prerequisites
-
- if /i "%~1" == "-?" (
- goto syntax
- ) else if /i "%~1" == "-h" (
- goto syntax
- ) else if /i "%~1" == "-help" (
- goto syntax
- ) else (
- if not defined SRC_DIR (
- set SRC_DIR=%~1%
- ) else (
- goto unknown
- )
- )
-
- shift & goto parseArgs
+ rem Display the help
+ if /i "%~1" == "-?" goto syntax
+ if /i "%~1" == "-h" goto syntax
+ if /i "%~1" == "-help" goto syntax
:prerequisites
rem Check we have Perl installed
- echo %PATH% | findstr /I /C:"\Perl" 1>nul
- if errorlevel 1 (
- if not exist "%SystemDrive%\Perl" (
- if not exist "%SystemDrive%\Perl64" goto noperl
- )
+ if not exist "C:\Perl" (
+ if not exist "C:\Perl64" goto noperl
)
:configure
- if "%SRC_DIR%" == "" set SRC_DIR=..
+ if "%1" == "" set SRC_DIR=..
+ if not "%1" == "" set SRC_DIR=%~1%
if not exist "%SRC_DIR%" goto nosrc
:start
- rem Check the src directory
- if exist %SRC_DIR%\src (
- for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" -Wtool_hugehelp.c "%%i"
- for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" "%%i"
- )
-
- rem Check the lib directory
- if exist %SRC_DIR%\lib (
- for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" "%%i"
- for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" -Wcurl_config.h.cmake "%%i"
- )
-
- rem Check the lib\vtls directory
- if exist %SRC_DIR%\lib\vtls (
- for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
- for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
- )
-
+ for /f "delims=" %%i in ('dir %SRC_DIR%\src\*.c.* /b') do @perl %SRC_DIR%\lib\checksrc.pl -D%SRC_DIR%\src "%%i"
+ for /f "delims=" %%i in ('dir %SRC_DIR%\src\*.h.* /b') do @perl %SRC_DIR%\lib\checksrc.pl -D%SRC_DIR%\src "%%i"
+ for /f "delims=" %%i in ('dir %SRC_DIR%\lib\*.c.* /b') do @perl %SRC_DIR%\lib\checksrc.pl -D%SRC_DIR%\lib "%%i"
+ for /f "delims=" %%i in ('dir %SRC_DIR%\lib\*.h.* /b') do @perl %SRC_DIR%\lib\checksrc.pl -D%SRC_DIR%\lib -Wcurl_config.h.cmake "%%i"
goto success
:syntax
@@ -89,11 +57,6 @@ rem ***************************************************************************
echo directory - Specifies the curl source directory
goto success
-:unknown
- echo.
- echo Error: Unknown argument '%1'
- goto error
-
:nodos
echo.
echo Error: Only a Windows NT based Operating System is supported
diff --git a/scripts/zsh.pl b/scripts/zsh.pl
deleted file mode 100755
index 7520a15a6..000000000
--- a/scripts/zsh.pl
+++ /dev/null
@@ -1,77 +0,0 @@
-#!/usr/bin/perl
-
-# Generate ZSH completion
-
-use strict;
-use warnings;
-
-my $curl = $ARGV[0] || 'curl';
-
-my $regex = '\s+(?:(-[^\s]+),\s)?(--[^\s]+)\s([^\s.]+)?\s+(.*)';
-my @opts = parse_main_opts('--help', $regex);
-
-my $opts_str;
-
-$opts_str .= qq{ $_ \\\n} foreach (@opts);
-chomp $opts_str;
-
-my $tmpl = <<"EOS";
-#compdef curl
-
-# curl zsh completion
-
-local curcontext="\$curcontext" state state_descr line
-typeset -A opt_args
-
-local rc=1
-
-_arguments -C -S \\
-$opts_str
- '*:URL:_urls' && rc=0
-
-return rc
-EOS
-
-print $tmpl;
-
-sub parse_main_opts {
- my ($cmd, $regex) = @_;
-
- my @list;
- my @lines = split /\n/, `"$curl" $cmd`;
-
- foreach my $line (@lines) {
- my ($short, $long, $arg, $desc) = ($line =~ /^$regex/) or next;
-
- my $option = '';
-
- $desc =~ s/'/''/g if defined $desc;
- $desc =~ s/\[/\\\[/g if defined $desc;
- $desc =~ s/\]/\\\]/g if defined $desc;
-
- $option .= '{' . trim($short) . ',' if defined $short;
- $option .= trim($long) if defined $long;
- $option .= '}' if defined $short;
- $option .= '\'[' . trim($desc) . ']\'' if defined $desc;
-
- $option .= ":$arg" if defined $arg;
-
- $option .= ':_files'
- if defined $arg and ($arg eq 'FILE' || $arg eq 'DIR');
-
- push @list, $option;
- }
-
- # Sort longest first, because zsh won't complete an option listed
- # after one that's a prefix of it.
- @list = sort {
- $a =~ /([^=]*)/; my $ma = $1;
- $b =~ /([^=]*)/; my $mb = $1;
-
- length($mb) <=> length($ma)
- } @list;
-
- return @list;
-}
-
-sub trim { my $s = shift; $s =~ s/^\s+|\s+$//g; return $s };
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index bfb866bd9..9c1fd54ab 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -6,18 +6,18 @@ if(USE_MANUAL)
# embedded text. NROFF and MANOPT are set in the parent CMakeLists.txt
add_custom_command(
OUTPUT tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "#include \"tool_setup.h\"" > tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "#ifndef HAVE_LIBZ" >> tool_hugehelp.c
+ COMMAND echo "#include \"tool_setup.h\"" > tool_hugehelp.c
+ COMMAND echo "#ifndef HAVE_LIBZ" >> tool_hugehelp.c
COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT}
"${CURL_SOURCE_DIR}/docs/curl.1" |
"${PERL}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl"
"${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "#else" >> tool_hugehelp.c
+ COMMAND echo "#else" >> tool_hugehelp.c
COMMAND env LC_ALL=C "${NROFF}" ${NROFF_MANOPT}
"${CURL_SOURCE_DIR}/docs/curl.1" |
"${PERL}" "${CMAKE_CURRENT_SOURCE_DIR}/mkhelp.pl" -c
"${CURL_SOURCE_DIR}/docs/MANUAL" >> tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "#endif /* HAVE_LIBZ */" >> tool_hugehelp.c
+ COMMAND echo "#endif /* HAVE_LIBZ */" >> tool_hugehelp.c
DEPENDS
"${CURL_SOURCE_DIR}/docs/MANUAL"
"${CURL_SOURCE_DIR}/docs/curl.1"
@@ -27,13 +27,12 @@ if(USE_MANUAL)
else()
add_custom_command(
OUTPUT tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "/* built-in manual is disabled, blank function */" > tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "#include \"tool_hugehelp.h\"" >> tool_hugehelp.c
- COMMAND ${CMAKE_COMMAND} -E echo "void hugehelp(void) {}" >> tool_hugehelp.c
+ COMMAND echo "/* built-in manual is disabled, blank function */" > tool_hugehelp.c
+ COMMAND echo "#include \"tool_hugehelp.h\"" >> tool_hugehelp.c
+ COMMAND echo "void hugehelp(void) {}" >> tool_hugehelp.c
DEPENDS
"${CMAKE_CURRENT_SOURCE_DIR}/tool_hugehelp.h"
VERBATIM)
-
endif()
transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
diff --git a/src/Makefile.Watcom b/src/Makefile.Watcom
index 6ec598d46..c48566560 100644
--- a/src/Makefile.Watcom
+++ b/src/Makefile.Watcom
@@ -75,7 +75,7 @@ CFLAGS += -d_WIN32_WINNT=0x0501 -dENABLE_IPV6
!endif
!ifdef %use_ssl
-CFLAGS += -wcd=138 -dUSE_OPENSSL -dUSE_OPENSSL -I"$(OPENSSL_ROOT)/inc32"
+CFLAGS += -wcd=138 -dUSE_OPENSSL -dUSE_SSLEAY -I"$(OPENSSL_ROOT)/inc32"
!endif
!ifdef %curl_static
@@ -96,7 +96,7 @@ ZLIB_ROOT = ../../zlib-1.2.8
!ifdef %libssh2_root
LIBSSH2_ROOT = $(%libssh2_root)
!else
-LIBSSH2_ROOT = ../../libssh2-1.5.0
+LIBSSH2_ROOT = ../../libssh2-1.4.3
!endif
!ifdef %librtmp_root
@@ -108,7 +108,7 @@ LIBRTMP_ROOT = ../../rtmpdump-2.3
!ifdef %openssl_root
OPENSSL_ROOT = $(%openssl_root)
!else
-OPENSSL_ROOT = ../../openssl-1.0.2a
+OPENSSL_ROOT = ../../openssl-0.9.8zc
!endif
!ifdef %ares_root
diff --git a/src/Makefile.am b/src/Makefile.am
index f4bc6c9a2..f96618e5e 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2013, 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
@@ -62,7 +62,7 @@ LIBS = $(BLANK_AT_MAKETIME)
if USE_EXPLICIT_LIB_DEPS
curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @LIBCURL_LIBS@
else
-curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @SSL_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
+curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
endif
curl_LDFLAGS = @LIBMETALINK_LDFLAGS@
@@ -84,11 +84,11 @@ CLEANFILES = tool_hugehelp.c
# embedded text.
NROFF=env LC_ALL=C @NROFF@ @MANOPT@ # figured out by the configure script
-EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 \
- Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT \
- macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga \
- curl.rc Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt \
- checksrc.whitelist
+EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 Makefile.m32 \
+ macos/curl.mcp.xml.sit.hqx \
+ macos/MACINSTALL.TXT macos/src/curl_GUSIConfig.cpp \
+ macos/src/macos_main.cpp makefile.amiga curl.rc \
+ Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt
MANPAGE=$(top_srcdir)/docs/curl.1
README=$(top_srcdir)/docs/MANUAL
diff --git a/src/Makefile.b32 b/src/Makefile.b32
index 85fe49f8d..6638a0115 100644
--- a/src/Makefile.b32
+++ b/src/Makefile.b32
@@ -27,7 +27,7 @@ ZLIB_PATH = ..\..\zlib-1.2.8
# Edit the path below to point to the base of your OpenSSL package.
!ifndef OPENSSL_PATH
-OPENSSL_PATH = ..\..\openssl-1.0.2a
+OPENSSL_PATH = ..\..\openssl-0.9.8zc
!endif
# Set program's name
@@ -67,7 +67,7 @@ LINKLIB = $(LINKLIB) $(ZLIB_PATH)\zlib.lib
# SSL support is enabled setting WITH_SSL=1
!ifdef WITH_SSL
-DEFINES = $(DEFINES) -DUSE_OPENSSL
+DEFINES = $(DEFINES) -DUSE_SSLEAY
INCDIRS = $(INCDIRS);$(OPENSSL_PATH)\inc32;$(OPENSSL_PATH)\inc32\openssl
LINKLIB = $(LINKLIB) $(OPENSSL_PATH)\out32\ssleay32.lib $(OPENSSL_PATH)\out32\libeay32.lib
!endif
diff --git a/src/Makefile.in b/src/Makefile.in
index 8fae4cd88..ed6cc0d21 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -25,17 +25,7 @@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -100,6 +90,9 @@ build_triplet = @build@
host_triplet = @host@
bin_PROGRAMS = curl$(EXEEXT)
@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_1 = -DCURL_STATICLIB
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs \
+ $(top_srcdir)/depcomp
subdir = src
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
@@ -121,8 +114,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -281,8 +273,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -343,7 +333,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -400,7 +390,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -417,6 +406,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -484,7 +474,7 @@ top_srcdir = @top_srcdir@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2013, 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
@@ -619,7 +609,7 @@ CURL_HFILES = \
CURL_RCFILES = curl.rc
curl_SOURCES = $(CURL_CFILES) $(CURLX_CFILES) $(CURL_HFILES)
-@USE_EXPLICIT_LIB_DEPS_FALSE@curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @SSL_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
+@USE_EXPLICIT_LIB_DEPS_FALSE@curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @NSS_LIBS@ @ZLIB_LIBS@ @CURL_NETWORK_AND_TIME_LIBS@
@USE_EXPLICIT_LIB_DEPS_TRUE@curl_LDADD = $(top_builddir)/lib/libcurl.la @LIBMETALINK_LIBS@ @LIBCURL_LIBS@
curl_LDFLAGS = @LIBMETALINK_LDFLAGS@
curl_CPPFLAGS = $(AM_CPPFLAGS) $(LIBMETALINK_CPPFLAGS)
@@ -633,11 +623,11 @@ curl_DEPENDENCIES = $(top_builddir)/lib/libcurl.la
@BUILD_UNITTESTS_TRUE@libcurltool_la_SOURCES = $(curl_SOURCES)
BUILT_SOURCES = tool_hugehelp.c
CLEANFILES = tool_hugehelp.c
-EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 \
- Makefile.m32 macos/curl.mcp.xml.sit.hqx macos/MACINSTALL.TXT \
- macos/src/curl_GUSIConfig.cpp macos/src/macos_main.cpp makefile.amiga \
- curl.rc Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt \
- checksrc.whitelist
+EXTRA_DIST = mkhelp.pl makefile.dj Makefile.vc6 Makefile.b32 Makefile.m32 \
+ macos/curl.mcp.xml.sit.hqx \
+ macos/MACINSTALL.TXT macos/src/curl_GUSIConfig.cpp \
+ macos/src/macos_main.cpp makefile.amiga curl.rc \
+ Makefile.netware Makefile.inc Makefile.Watcom CMakeLists.txt
MANPAGE = $(top_srcdir)/docs/curl.1
README = $(top_srcdir)/docs/MANUAL
@@ -660,6 +650,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign src/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -668,7 +659,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -2011,8 +2002,6 @@ uninstall-am: uninstall-binPROGRAMS
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am uninstall-binPROGRAMS
-.PRECIOUS: Makefile
-
# remove targets if the command fails
.DELETE_ON_ERROR:
diff --git a/src/Makefile.m32 b/src/Makefile.m32
index 509380686..e54175ced 100644
--- a/src/Makefile.m32
+++ b/src/Makefile.m32
@@ -1,7 +1,7 @@
###########################################################################
#
## Makefile for building curl.exe with MingW (GCC-3.2 or later)
-## and optionally OpenSSL (1.0.2a), libssh2 (1.5), zlib (1.2.8), librtmp (2.4)
+## and optionally OpenSSL (0.9.8), libssh2 (1.3), zlib (1.2.5), librtmp (2.3)
##
## Usage: mingw32-make -f Makefile.m32 CFG=-feature1[-feature2][-feature3][...]
## Example: mingw32-make -f Makefile.m32 CFG=-zlib-ssl-spi-winidn
@@ -18,19 +18,19 @@ ZLIB_PATH = ../../zlib-1.2.8
endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your librtmp package.
ifndef LIBRTMP_PATH
-LIBRTMP_PATH = ../../librtmp-2.4
+LIBRTMP_PATH = ../../librtmp-2.3
endif
# Edit the path below to point to the base of your libmetalink package.
ifndef LIBMETALINK_PATH
-LIBMETALINK_PATH = ../../libmetalink-0.1.3
+LIBMETALINK_PATH = ../../libmetalink-0.1.2
endif
# Edit the path below to point to the base of your libexpat package.
ifndef LIBEXPAT_PATH
@@ -38,15 +38,15 @@ LIBEXPAT_PATH = ../../expat-2.1.0
endif
# Edit the path below to point to the base of your libxml2 package.
ifndef LIBXML2_PATH
-LIBXML2_PATH = ../../libxml2-2.9.2
+LIBXML2_PATH = ../../libxml2-2.9.0
endif
# Edit the path below to point to the base of your libidn package.
ifndef LIBIDN_PATH
-LIBIDN_PATH = ../../libidn-1.32
+LIBIDN_PATH = ../../libidn-1.18
endif
# Edit the path below to point to the base of your MS IDN package.
# Microsoft Internationalized Domain Names (IDN) Mitigation APIs 1.1
-# https://www.microsoft.com/en-us/download/details.aspx?id=734
+# http://www.microsoft.com/downloads/en/details.aspx?FamilyID=ad6158d7-ddba-416a-9109-07607425a815
ifndef WINIDN_PATH
WINIDN_PATH = ../../Microsoft IDN Mitigation APIs
endif
@@ -56,7 +56,7 @@ LDAP_SDK = c:/novell/ndk/cldapsdk/win32
endif
# Edit the path below to point to the base of your nghttp2 package.
ifndef NGHTTP2_PATH
-NGHTTP2_PATH = ../../nghttp2-1.0.0
+NGHTTP2_PATH = ../../nghttp2-0.6.7
endif
PROOT = ..
@@ -90,12 +90,10 @@ endif
endif
ifeq ($(ARCH),w64)
-CFLAGS += -m64 -D_AMD64_
-LDFLAGS += -m64
+CFLAGS += -D_AMD64_
RCFLAGS += -F pe-x86-64
else
CFLAGS += -m32
-LDFLAGS += -m32
RCFLAGS += -F pe-i386
endif
@@ -243,7 +241,7 @@ ifdef SSL
OPENSSL_LIBS += -lgdi32 -lcrypt32
endif
INCLUDES += -I"$(OPENSSL_INCLUDE)"
- CFLAGS += -DUSE_OPENSSL
+ CFLAGS += -DUSE_SSLEAY -DUSE_OPENSSL
curl_LDADD += -L"$(OPENSSL_LIBPATH)" $(OPENSSL_LIBS)
endif
ifdef ZLIB
@@ -342,3 +340,4 @@ endif
distclean vclean: clean
@$(call DEL, $(curl_PROGRAMS))
+
diff --git a/src/Makefile.netware b/src/Makefile.netware
index 5065cbfe8..b6b4861c8 100644
--- a/src/Makefile.netware
+++ b/src/Makefile.netware
@@ -19,12 +19,12 @@ endif
# Edit the path below to point to the base of your OpenSSL package.
ifndef OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
endif
# Edit the path below to point to the base of your LibSSH2 package.
ifndef LIBSSH2_PATH
-LIBSSH2_PATH = ../../libssh2-1.5.0
+LIBSSH2_PATH = ../../libssh2-1.4.3
endif
# Edit the path below to point to the base of your axTLS package.
diff --git a/src/Makefile.vc10 b/src/Makefile.vc10
index 82af5cedf..348a76354 100644
--- a/src/Makefile.vc10
+++ b/src/Makefile.vc10
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -56,7 +56,7 @@ PROGRAM_NAME = curl.exe
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF ZLIB_PATH
@@ -77,7 +77,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -95,7 +95,7 @@ ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
ZLIB_LIBS = zlib.lib
ZLIB_IMP_LIBS = zdll.lib
-SSL_CFLAGS = /DUSE_OPENSSL
+SSL_CFLAGS = /DUSE_SSLEAY
SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
diff --git a/src/Makefile.vc11 b/src/Makefile.vc11
deleted file mode 100644
index cb7fc2052..000000000
--- a/src/Makefile.vc11
+++ /dev/null
@@ -1,544 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-users.
-
-#############################################################
-#
-## Makefile for building curl.exe with MSVC11
-## Use: nmake -f makefile.vc11 [release | debug] [CFG=release-ssl]
-## (default is release)
-## "nmake -f makefile.vc11 CFG=release-ssl" statically links OpenSSL
-## into curl.exe producing a standalone SSL-enabled executable.
-##
-#
-#############################################################
-
-PROGRAM_NAME = curl.exe
-
-# -------------------------------------------
-# Verify that current subdir is curl's 'src'
-# -------------------------------------------
-
-!IF ! EXIST(.\tool_main.c)
-! MESSAGE Can not process this makefile from outside of curl's 'src' subdirectory.
-! MESSAGE Change to curl's 'src' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC11 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-########################################################
-## Nothing more to do below this line!
-
-ZLIB_CFLAGS = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
-ZLIB_LIBS = zlib.lib
-ZLIB_IMP_LIBS = zdll.lib
-
-SSL_CFLAGS = /DUSE_OPENSSL
-SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
-SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
-SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-
-WINSSL_CFLAGS = /DUSE_SCHANNEL
-#WINSSL_LIBS = gdi32.lib user32.lib
-
-!IFDEF USE_IDN
-WINLIBS = $(WINLIBS) normaliz.lib
-!ENDIF
-
-# Runtime library configuration
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-## Release
-CCR = cl.exe $(RTLIB) /O2 /DNDEBUG
-LINKR = link.exe /incremental:no /libpath:"../lib"
-RCR = rc.exe /dDEBUGBUILD=0
-
-## Debug
-CCD = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /RTC1
-LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
-RCD = rc.exe /dDEBUGBUILD=1
-
-CFLAGS = /I../lib /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-LFLAGS = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE)
-RESFLAGS = /i../include
-
-# This manifest thing is for VC8, enabled by the maketgz script that
-# builds the VC8 version of this makefile. Left commented out in the VC11
-# version!
-#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-RELEASE_OBJS= \
- nonblockr.obj \
- rawstrr.obj \
- strtoofftr.obj \
- warnless.obj \
- tool_binmoder.obj \
- tool_bnamer.obj \
- tool_cb_dbgr.obj \
- tool_cb_hdrr.obj \
- tool_cb_prgr.obj \
- tool_cb_rear.obj \
- tool_cb_seer.obj \
- tool_cb_wrtr.obj \
- tool_cfgabler.obj \
- tool_convertr.obj \
- tool_dirhier.obj \
- tool_doswinr.obj \
- tool_easysrcr.obj \
- tool_formparser.obj \
- tool_getparamr.obj \
- tool_getpassr.obj \
- tool_helpr.obj \
- tool_helpersr.obj \
- tool_homedirr.obj \
- tool_hugehelpr.obj \
- tool_libinfor.obj \
- tool_mainr.obj \
- tool_metalinkr.obj \
- tool_mfilesr.obj \
- tool_msgsr.obj \
- tool_operater.obj \
- tool_operhlpr.obj \
- tool_panykeyr.obj \
- tool_paramhlpr.obj \
- tool_parsecfgr.obj \
- tool_setoptr.obj \
- tool_sleepr.obj \
- tool_urlglobr.obj \
- tool_utilr.obj \
- tool_vmsr.obj \
- tool_writeenvr.obj \
- tool_writeoutr.obj \
- tool_xattrr.obj \
- curlr.res
-
-DEBUG_OBJS= \
- nonblockd.obj \
- rawstrd.obj \
- strtoofftd.obj \
- warnlessd.obj \
- tool_binmoded.obj \
- tool_bnamed.obj \
- tool_cb_dbgd.obj \
- tool_cb_hdrd.obj \
- tool_cb_prgd.obj \
- tool_cb_read.obj \
- tool_cb_seed.obj \
- tool_cb_wrtd.obj \
- tool_cfgabled.obj \
- tool_convertd.obj \
- tool_dirhied.obj \
- tool_doswind.obj \
- tool_easysrcd.obj \
- tool_formparsed.obj \
- tool_getparamd.obj \
- tool_getpassd.obj \
- tool_helpd.obj \
- tool_helpersd.obj \
- tool_homedird.obj \
- tool_hugehelpd.obj \
- tool_libinfod.obj \
- tool_maind.obj \
- tool_metalinkd.obj \
- tool_mfilesd.obj \
- tool_msgsd.obj \
- tool_operated.obj \
- tool_operhlpd.obj \
- tool_panykeyd.obj \
- tool_paramhlpd.obj \
- tool_parsecfgd.obj \
- tool_setoptd.obj \
- tool_sleepd.obj \
- tool_urlglobd.obj \
- tool_utild.obj \
- tool_vmsd.obj \
- tool_writeenvd.obj \
- tool_writeoutd.obj \
- tool_xattrd.obj \
- curld.res
-
-#################################################
-# If CFG not specified, use static libs
-
-CFLAGS = $(CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG)
-
-#################################################
-# release dynamic library
-
-!IF "$(CFG)" == "release-dll"
-LINKLIBS = $(LIBCURL_IMP_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG)
-!ENDIF
-
-#################################################
-# release static library with zlib
-
-!IF "$(CFG)" == "release-zlib"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl
-
-!IF "$(CFG)" == "release-ssl"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl and zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with winssl and zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-CFLAGS = $(CFLAGS) $(WINSSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(WINSSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl
-
-!IF "$(CFG)" == "release-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic zlib
-
-!IF "$(CFG)" == "release-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic zlib
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-LINKLIBS = $(LINKLIBS) $(WINLIBS)
-LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) $(WINLIBS)
-
-all : release
-
-release: $(RELEASE_OBJS)
- $(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
- $(MANIFESTTOOL)
-
-debug: $(DEBUG_OBJS)
- $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
- $(MANIFESTTOOL)
-
-## Release
-nonblockr.obj: ../lib/nonblock.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrr.obj: ../lib/rawstr.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftr.obj: ../lib/strtoofft.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnless.obj: ../lib/warnless.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoder.obj: tool_binmode.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamer.obj: tool_bname.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgr.obj: tool_cb_dbg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrr.obj: tool_cb_hdr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgr.obj: tool_cb_prg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_rear.obj: tool_cb_rea.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seer.obj: tool_cb_see.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtr.obj: tool_cb_wrt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabler.obj: tool_cfgable.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertr.obj: tool_convert.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhier.obj: tool_dirhie.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswinr.obj: tool_doswin.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcr.obj: tool_easysrc.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparser.obj: tool_formparse.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamr.obj: tool_getparam.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassr.obj: tool_getpass.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpr.obj: tool_help.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersr.obj: tool_helpers.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedirr.obj: tool_homedir.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpr.obj: tool_hugehelp.c
- $(CCR) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfor.obj: tool_libinfo.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_mainr.obj: tool_main.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkr.obj: tool_metalink.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesr.obj: tool_mfiles.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsr.obj: tool_msgs.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operater.obj: tool_operate.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpr.obj: tool_operhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyr.obj: tool_panykey.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpr.obj: tool_paramhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgr.obj: tool_parsecfg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptr.obj: tool_setopt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepr.obj: tool_sleep.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobr.obj: tool_urlglob.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utilr.obj: tool_util.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsr.obj: tool_vms.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvr.obj: tool_writeenv.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutr.obj: tool_writeout.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrr.obj: tool_xattr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_xattr.c
-curlr.res : curl.rc
- $(RCR) $(RESFLAGS) /Fo"$@" curl.rc
-
-## Debug
-nonblockd.obj: ../lib/nonblock.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrd.obj: ../lib/rawstr.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftd.obj: ../lib/strtoofft.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnlessd.obj: ../lib/warnless.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoded.obj: tool_binmode.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamed.obj: tool_bname.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgd.obj: tool_cb_dbg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrd.obj: tool_cb_hdr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgd.obj: tool_cb_prg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_read.obj: tool_cb_rea.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seed.obj: tool_cb_see.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtd.obj: tool_cb_wrt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabled.obj: tool_cfgable.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertd.obj: tool_convert.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhied.obj: tool_dirhie.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswind.obj: tool_doswin.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcd.obj: tool_easysrc.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparsed.obj: tool_formparse.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamd.obj: tool_getparam.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassd.obj: tool_getpass.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpd.obj: tool_help.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersd.obj: tool_helpers.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedird.obj: tool_homedir.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpd.obj: tool_hugehelp.c
- $(CCD) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfod.obj: tool_libinfo.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_maind.obj: tool_main.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkd.obj: tool_metalink.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesd.obj: tool_mfiles.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsd.obj: tool_msgs.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operated.obj: tool_operate.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpd.obj: tool_operhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyd.obj: tool_panykey.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpd.obj: tool_paramhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgd.obj: tool_parsecfg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptd.obj: tool_setopt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepd.obj: tool_sleep.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobd.obj: tool_urlglob.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utild.obj: tool_util.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsd.obj: tool_vms.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvd.obj: tool_writeenv.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutd.obj: tool_writeout.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrd.obj: tool_xattr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_xattr.c
-curld.res : curl.rc
- $(RCD) $(RESFLAGS) /Fo"$@" curl.rc
-
-clean:
- @-erase $(PROGRAM_NAME) 2> NUL
- @-erase $(RELEASE_OBJS) 2> NUL
- @-erase $(DEBUG_OBJS) 2> NUL
- @-erase *.idb 2> NUL
- @-erase *.pdb 2> NUL
- @-erase *.pch 2> NUL
- @-erase *.ilk 2> NUL
diff --git a/src/Makefile.vc12 b/src/Makefile.vc12
deleted file mode 100644
index c81ffbf9c..000000000
--- a/src/Makefile.vc12
+++ /dev/null
@@ -1,544 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-users.
-
-#############################################################
-#
-## Makefile for building curl.exe with MSVC12
-## Use: nmake -f makefile.vc12 [release | debug] [CFG=release-ssl]
-## (default is release)
-## "nmake -f makefile.vc12 CFG=release-ssl" statically links OpenSSL
-## into curl.exe producing a standalone SSL-enabled executable.
-##
-#
-#############################################################
-
-PROGRAM_NAME = curl.exe
-
-# -------------------------------------------
-# Verify that current subdir is curl's 'src'
-# -------------------------------------------
-
-!IF ! EXIST(.\tool_main.c)
-! MESSAGE Can not process this makefile from outside of curl's 'src' subdirectory.
-! MESSAGE Change to curl's 'src' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC12 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-########################################################
-## Nothing more to do below this line!
-
-ZLIB_CFLAGS = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
-ZLIB_LIBS = zlib.lib
-ZLIB_IMP_LIBS = zdll.lib
-
-SSL_CFLAGS = /DUSE_OPENSSL
-SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
-SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
-SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-
-WINSSL_CFLAGS = /DUSE_SCHANNEL
-#WINSSL_LIBS = gdi32.lib user32.lib
-
-!IFDEF USE_IDN
-WINLIBS = $(WINLIBS) normaliz.lib
-!ENDIF
-
-# Runtime library configuration
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-## Release
-CCR = cl.exe $(RTLIB) /O2 /DNDEBUG
-LINKR = link.exe /incremental:no /libpath:"../lib"
-RCR = rc.exe /dDEBUGBUILD=0
-
-## Debug
-CCD = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /RTC1
-LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
-RCD = rc.exe /dDEBUGBUILD=1
-
-CFLAGS = /I../lib /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-LFLAGS = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE)
-RESFLAGS = /i../include
-
-# This manifest thing is for VC8, enabled by the maketgz script that
-# builds the VC8 version of this makefile. Left commented out in the VC12
-# version!
-#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-RELEASE_OBJS= \
- nonblockr.obj \
- rawstrr.obj \
- strtoofftr.obj \
- warnless.obj \
- tool_binmoder.obj \
- tool_bnamer.obj \
- tool_cb_dbgr.obj \
- tool_cb_hdrr.obj \
- tool_cb_prgr.obj \
- tool_cb_rear.obj \
- tool_cb_seer.obj \
- tool_cb_wrtr.obj \
- tool_cfgabler.obj \
- tool_convertr.obj \
- tool_dirhier.obj \
- tool_doswinr.obj \
- tool_easysrcr.obj \
- tool_formparser.obj \
- tool_getparamr.obj \
- tool_getpassr.obj \
- tool_helpr.obj \
- tool_helpersr.obj \
- tool_homedirr.obj \
- tool_hugehelpr.obj \
- tool_libinfor.obj \
- tool_mainr.obj \
- tool_metalinkr.obj \
- tool_mfilesr.obj \
- tool_msgsr.obj \
- tool_operater.obj \
- tool_operhlpr.obj \
- tool_panykeyr.obj \
- tool_paramhlpr.obj \
- tool_parsecfgr.obj \
- tool_setoptr.obj \
- tool_sleepr.obj \
- tool_urlglobr.obj \
- tool_utilr.obj \
- tool_vmsr.obj \
- tool_writeenvr.obj \
- tool_writeoutr.obj \
- tool_xattrr.obj \
- curlr.res
-
-DEBUG_OBJS= \
- nonblockd.obj \
- rawstrd.obj \
- strtoofftd.obj \
- warnlessd.obj \
- tool_binmoded.obj \
- tool_bnamed.obj \
- tool_cb_dbgd.obj \
- tool_cb_hdrd.obj \
- tool_cb_prgd.obj \
- tool_cb_read.obj \
- tool_cb_seed.obj \
- tool_cb_wrtd.obj \
- tool_cfgabled.obj \
- tool_convertd.obj \
- tool_dirhied.obj \
- tool_doswind.obj \
- tool_easysrcd.obj \
- tool_formparsed.obj \
- tool_getparamd.obj \
- tool_getpassd.obj \
- tool_helpd.obj \
- tool_helpersd.obj \
- tool_homedird.obj \
- tool_hugehelpd.obj \
- tool_libinfod.obj \
- tool_maind.obj \
- tool_metalinkd.obj \
- tool_mfilesd.obj \
- tool_msgsd.obj \
- tool_operated.obj \
- tool_operhlpd.obj \
- tool_panykeyd.obj \
- tool_paramhlpd.obj \
- tool_parsecfgd.obj \
- tool_setoptd.obj \
- tool_sleepd.obj \
- tool_urlglobd.obj \
- tool_utild.obj \
- tool_vmsd.obj \
- tool_writeenvd.obj \
- tool_writeoutd.obj \
- tool_xattrd.obj \
- curld.res
-
-#################################################
-# If CFG not specified, use static libs
-
-CFLAGS = $(CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG)
-
-#################################################
-# release dynamic library
-
-!IF "$(CFG)" == "release-dll"
-LINKLIBS = $(LIBCURL_IMP_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG)
-!ENDIF
-
-#################################################
-# release static library with zlib
-
-!IF "$(CFG)" == "release-zlib"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl
-
-!IF "$(CFG)" == "release-ssl"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl and zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with winssl and zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-CFLAGS = $(CFLAGS) $(WINSSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(WINSSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl
-
-!IF "$(CFG)" == "release-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic zlib
-
-!IF "$(CFG)" == "release-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic zlib
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-LINKLIBS = $(LINKLIBS) $(WINLIBS)
-LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) $(WINLIBS)
-
-all : release
-
-release: $(RELEASE_OBJS)
- $(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
- $(MANIFESTTOOL)
-
-debug: $(DEBUG_OBJS)
- $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
- $(MANIFESTTOOL)
-
-## Release
-nonblockr.obj: ../lib/nonblock.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrr.obj: ../lib/rawstr.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftr.obj: ../lib/strtoofft.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnless.obj: ../lib/warnless.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoder.obj: tool_binmode.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamer.obj: tool_bname.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgr.obj: tool_cb_dbg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrr.obj: tool_cb_hdr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgr.obj: tool_cb_prg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_rear.obj: tool_cb_rea.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seer.obj: tool_cb_see.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtr.obj: tool_cb_wrt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabler.obj: tool_cfgable.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertr.obj: tool_convert.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhier.obj: tool_dirhie.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswinr.obj: tool_doswin.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcr.obj: tool_easysrc.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparser.obj: tool_formparse.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamr.obj: tool_getparam.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassr.obj: tool_getpass.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpr.obj: tool_help.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersr.obj: tool_helpers.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedirr.obj: tool_homedir.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpr.obj: tool_hugehelp.c
- $(CCR) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfor.obj: tool_libinfo.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_mainr.obj: tool_main.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkr.obj: tool_metalink.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesr.obj: tool_mfiles.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsr.obj: tool_msgs.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operater.obj: tool_operate.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpr.obj: tool_operhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyr.obj: tool_panykey.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpr.obj: tool_paramhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgr.obj: tool_parsecfg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptr.obj: tool_setopt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepr.obj: tool_sleep.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobr.obj: tool_urlglob.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utilr.obj: tool_util.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsr.obj: tool_vms.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvr.obj: tool_writeenv.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutr.obj: tool_writeout.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrr.obj: tool_xattr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_xattr.c
-curlr.res : curl.rc
- $(RCR) $(RESFLAGS) /Fo"$@" curl.rc
-
-## Debug
-nonblockd.obj: ../lib/nonblock.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrd.obj: ../lib/rawstr.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftd.obj: ../lib/strtoofft.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnlessd.obj: ../lib/warnless.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoded.obj: tool_binmode.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamed.obj: tool_bname.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgd.obj: tool_cb_dbg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrd.obj: tool_cb_hdr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgd.obj: tool_cb_prg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_read.obj: tool_cb_rea.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seed.obj: tool_cb_see.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtd.obj: tool_cb_wrt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabled.obj: tool_cfgable.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertd.obj: tool_convert.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhied.obj: tool_dirhie.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswind.obj: tool_doswin.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcd.obj: tool_easysrc.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparsed.obj: tool_formparse.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamd.obj: tool_getparam.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassd.obj: tool_getpass.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpd.obj: tool_help.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersd.obj: tool_helpers.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedird.obj: tool_homedir.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpd.obj: tool_hugehelp.c
- $(CCD) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfod.obj: tool_libinfo.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_maind.obj: tool_main.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkd.obj: tool_metalink.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesd.obj: tool_mfiles.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsd.obj: tool_msgs.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operated.obj: tool_operate.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpd.obj: tool_operhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyd.obj: tool_panykey.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpd.obj: tool_paramhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgd.obj: tool_parsecfg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptd.obj: tool_setopt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepd.obj: tool_sleep.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobd.obj: tool_urlglob.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utild.obj: tool_util.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsd.obj: tool_vms.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvd.obj: tool_writeenv.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutd.obj: tool_writeout.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrd.obj: tool_xattr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_xattr.c
-curld.res : curl.rc
- $(RCD) $(RESFLAGS) /Fo"$@" curl.rc
-
-clean:
- @-erase $(PROGRAM_NAME) 2> NUL
- @-erase $(RELEASE_OBJS) 2> NUL
- @-erase $(DEBUG_OBJS) 2> NUL
- @-erase *.idb 2> NUL
- @-erase *.pdb 2> NUL
- @-erase *.pch 2> NUL
- @-erase *.ilk 2> NUL
diff --git a/src/Makefile.vc14 b/src/Makefile.vc14
deleted file mode 100644
index 16c4667a3..000000000
--- a/src/Makefile.vc14
+++ /dev/null
@@ -1,544 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-users.
-
-#############################################################
-#
-## Makefile for building curl.exe with MSVC14
-## Use: nmake -f makefile.vc14 [release | debug] [CFG=release-ssl]
-## (default is release)
-## "nmake -f makefile.vc14 CFG=release-ssl" statically links OpenSSL
-## into curl.exe producing a standalone SSL-enabled executable.
-##
-#
-#############################################################
-
-PROGRAM_NAME = curl.exe
-
-# -------------------------------------------
-# Verify that current subdir is curl's 'src'
-# -------------------------------------------
-
-!IF ! EXIST(.\tool_main.c)
-! MESSAGE Can not process this makefile from outside of curl's 'src' subdirectory.
-! MESSAGE Change to curl's 'src' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC14 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-########################################################
-## Nothing more to do below this line!
-
-ZLIB_CFLAGS = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
-ZLIB_LIBS = zlib.lib
-ZLIB_IMP_LIBS = zdll.lib
-
-SSL_CFLAGS = /DUSE_OPENSSL
-SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
-SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
-SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-
-WINSSL_CFLAGS = /DUSE_SCHANNEL
-#WINSSL_LIBS = gdi32.lib user32.lib
-
-!IFDEF USE_IDN
-WINLIBS = $(WINLIBS) normaliz.lib
-!ENDIF
-
-# Runtime library configuration
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-## Release
-CCR = cl.exe $(RTLIB) /O2 /DNDEBUG
-LINKR = link.exe /incremental:no /libpath:"../lib"
-RCR = rc.exe /dDEBUGBUILD=0
-
-## Debug
-CCD = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /RTC1
-LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
-RCD = rc.exe /dDEBUGBUILD=1
-
-CFLAGS = /I../lib /I../include /nologo /W3 /EHsc /DWIN32 /FD /c /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-LFLAGS = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE)
-RESFLAGS = /i../include
-
-# This manifest thing is for VC8, enabled by the maketgz script that
-# builds the VC8 version of this makefile. Left commented out in the VC14
-# version!
-#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-RELEASE_OBJS= \
- nonblockr.obj \
- rawstrr.obj \
- strtoofftr.obj \
- warnless.obj \
- tool_binmoder.obj \
- tool_bnamer.obj \
- tool_cb_dbgr.obj \
- tool_cb_hdrr.obj \
- tool_cb_prgr.obj \
- tool_cb_rear.obj \
- tool_cb_seer.obj \
- tool_cb_wrtr.obj \
- tool_cfgabler.obj \
- tool_convertr.obj \
- tool_dirhier.obj \
- tool_doswinr.obj \
- tool_easysrcr.obj \
- tool_formparser.obj \
- tool_getparamr.obj \
- tool_getpassr.obj \
- tool_helpr.obj \
- tool_helpersr.obj \
- tool_homedirr.obj \
- tool_hugehelpr.obj \
- tool_libinfor.obj \
- tool_mainr.obj \
- tool_metalinkr.obj \
- tool_mfilesr.obj \
- tool_msgsr.obj \
- tool_operater.obj \
- tool_operhlpr.obj \
- tool_panykeyr.obj \
- tool_paramhlpr.obj \
- tool_parsecfgr.obj \
- tool_setoptr.obj \
- tool_sleepr.obj \
- tool_urlglobr.obj \
- tool_utilr.obj \
- tool_vmsr.obj \
- tool_writeenvr.obj \
- tool_writeoutr.obj \
- tool_xattrr.obj \
- curlr.res
-
-DEBUG_OBJS= \
- nonblockd.obj \
- rawstrd.obj \
- strtoofftd.obj \
- warnlessd.obj \
- tool_binmoded.obj \
- tool_bnamed.obj \
- tool_cb_dbgd.obj \
- tool_cb_hdrd.obj \
- tool_cb_prgd.obj \
- tool_cb_read.obj \
- tool_cb_seed.obj \
- tool_cb_wrtd.obj \
- tool_cfgabled.obj \
- tool_convertd.obj \
- tool_dirhied.obj \
- tool_doswind.obj \
- tool_easysrcd.obj \
- tool_formparsed.obj \
- tool_getparamd.obj \
- tool_getpassd.obj \
- tool_helpd.obj \
- tool_helpersd.obj \
- tool_homedird.obj \
- tool_hugehelpd.obj \
- tool_libinfod.obj \
- tool_maind.obj \
- tool_metalinkd.obj \
- tool_mfilesd.obj \
- tool_msgsd.obj \
- tool_operated.obj \
- tool_operhlpd.obj \
- tool_panykeyd.obj \
- tool_paramhlpd.obj \
- tool_parsecfgd.obj \
- tool_setoptd.obj \
- tool_sleepd.obj \
- tool_urlglobd.obj \
- tool_utild.obj \
- tool_vmsd.obj \
- tool_writeenvd.obj \
- tool_writeoutd.obj \
- tool_xattrd.obj \
- curld.res
-
-#################################################
-# If CFG not specified, use static libs
-
-CFLAGS = $(CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG)
-
-#################################################
-# release dynamic library
-
-!IF "$(CFG)" == "release-dll"
-LINKLIBS = $(LIBCURL_IMP_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG)
-!ENDIF
-
-#################################################
-# release static library with zlib
-
-!IF "$(CFG)" == "release-zlib"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl
-
-!IF "$(CFG)" == "release-ssl"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl and zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with winssl and zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-CFLAGS = $(CFLAGS) $(WINSSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(WINSSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl
-
-!IF "$(CFG)" == "release-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic zlib
-
-!IF "$(CFG)" == "release-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic zlib
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-LINKLIBS = $(LINKLIBS) $(WINLIBS)
-LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) $(WINLIBS)
-
-all : release
-
-release: $(RELEASE_OBJS)
- $(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
- $(MANIFESTTOOL)
-
-debug: $(DEBUG_OBJS)
- $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
- $(MANIFESTTOOL)
-
-## Release
-nonblockr.obj: ../lib/nonblock.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrr.obj: ../lib/rawstr.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftr.obj: ../lib/strtoofft.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnless.obj: ../lib/warnless.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoder.obj: tool_binmode.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamer.obj: tool_bname.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgr.obj: tool_cb_dbg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrr.obj: tool_cb_hdr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgr.obj: tool_cb_prg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_rear.obj: tool_cb_rea.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seer.obj: tool_cb_see.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtr.obj: tool_cb_wrt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabler.obj: tool_cfgable.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertr.obj: tool_convert.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhier.obj: tool_dirhie.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswinr.obj: tool_doswin.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcr.obj: tool_easysrc.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparser.obj: tool_formparse.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamr.obj: tool_getparam.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassr.obj: tool_getpass.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpr.obj: tool_help.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersr.obj: tool_helpers.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedirr.obj: tool_homedir.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpr.obj: tool_hugehelp.c
- $(CCR) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfor.obj: tool_libinfo.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_mainr.obj: tool_main.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkr.obj: tool_metalink.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesr.obj: tool_mfiles.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsr.obj: tool_msgs.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operater.obj: tool_operate.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpr.obj: tool_operhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyr.obj: tool_panykey.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpr.obj: tool_paramhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgr.obj: tool_parsecfg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptr.obj: tool_setopt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepr.obj: tool_sleep.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobr.obj: tool_urlglob.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utilr.obj: tool_util.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsr.obj: tool_vms.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvr.obj: tool_writeenv.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutr.obj: tool_writeout.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrr.obj: tool_xattr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_xattr.c
-curlr.res : curl.rc
- $(RCR) $(RESFLAGS) /Fo"$@" curl.rc
-
-## Debug
-nonblockd.obj: ../lib/nonblock.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrd.obj: ../lib/rawstr.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftd.obj: ../lib/strtoofft.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnlessd.obj: ../lib/warnless.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoded.obj: tool_binmode.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamed.obj: tool_bname.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgd.obj: tool_cb_dbg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrd.obj: tool_cb_hdr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgd.obj: tool_cb_prg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_read.obj: tool_cb_rea.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seed.obj: tool_cb_see.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtd.obj: tool_cb_wrt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabled.obj: tool_cfgable.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertd.obj: tool_convert.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhied.obj: tool_dirhie.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswind.obj: tool_doswin.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcd.obj: tool_easysrc.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparsed.obj: tool_formparse.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamd.obj: tool_getparam.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassd.obj: tool_getpass.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpd.obj: tool_help.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersd.obj: tool_helpers.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedird.obj: tool_homedir.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpd.obj: tool_hugehelp.c
- $(CCD) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfod.obj: tool_libinfo.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_maind.obj: tool_main.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkd.obj: tool_metalink.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesd.obj: tool_mfiles.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsd.obj: tool_msgs.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operated.obj: tool_operate.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpd.obj: tool_operhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyd.obj: tool_panykey.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpd.obj: tool_paramhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgd.obj: tool_parsecfg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptd.obj: tool_setopt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepd.obj: tool_sleep.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobd.obj: tool_urlglob.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utild.obj: tool_util.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsd.obj: tool_vms.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvd.obj: tool_writeenv.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutd.obj: tool_writeout.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrd.obj: tool_xattr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_xattr.c
-curld.res : curl.rc
- $(RCD) $(RESFLAGS) /Fo"$@" curl.rc
-
-clean:
- @-erase $(PROGRAM_NAME) 2> NUL
- @-erase $(RELEASE_OBJS) 2> NUL
- @-erase $(DEBUG_OBJS) 2> NUL
- @-erase *.idb 2> NUL
- @-erase *.pdb 2> NUL
- @-erase *.pch 2> NUL
- @-erase *.ilk 2> NUL
diff --git a/src/Makefile.vc6 b/src/Makefile.vc6
index eec89c25c..c8693afb9 100644
--- a/src/Makefile.vc6
+++ b/src/Makefile.vc6
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -56,7 +56,7 @@ PROGRAM_NAME = curl.exe
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF ZLIB_PATH
@@ -77,7 +77,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -95,7 +95,7 @@ ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
ZLIB_LIBS = zlib.lib
ZLIB_IMP_LIBS = zdll.lib
-SSL_CFLAGS = /DUSE_OPENSSL
+SSL_CFLAGS = /DUSE_SSLEAY
SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
diff --git a/src/Makefile.vc7 b/src/Makefile.vc7
deleted file mode 100644
index 2420d2bd5..000000000
--- a/src/Makefile.vc7
+++ /dev/null
@@ -1,544 +0,0 @@
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 1999 - 2015, 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 http://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.
-#
-#***************************************************************************
-
-# All files in the Makefile.vc* series are generated automatically from the
-# one made for MSVC version 6. Alas, if you want to do changes to any of the
-# files and send back to the project, edit the version six, make your diff and
-# mail curl-users.
-
-#############################################################
-#
-## Makefile for building curl.exe with MSVC7
-## Use: nmake -f makefile.vc6 [release | debug] [CFG=release-ssl]
-## (default is release)
-## "nmake -f makefile.vc6 CFG=release-ssl" statically links OpenSSL
-## into curl.exe producing a standalone SSL-enabled executable.
-##
-#
-#############################################################
-
-PROGRAM_NAME = curl.exe
-
-# -------------------------------------------
-# Verify that current subdir is curl's 'src'
-# -------------------------------------------
-
-!IF ! EXIST(.\tool_main.c)
-! MESSAGE Can not process this makefile from outside of curl's 'src' subdirectory.
-! MESSAGE Change to curl's 'src' subdirectory, and try again.
-! ERROR See previous message.
-!ENDIF
-
-# ------------------------------------------------
-# Makefile.msvc.names provides libcurl file names
-# ------------------------------------------------
-
-!INCLUDE ..\winbuild\Makefile.msvc.names
-
-
-!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
-!ENDIF
-
-!IFNDEF ZLIB_PATH
-ZLIB_PATH = ../../zlib-1.2.8
-!ENDIF
-
-!IFNDEF MACHINE
-MACHINE = X86
-!ENDIF
-
-# USE_WINDOWS_SSPI uses windows libraries to allow NTLM authentication
-# without an openssl installation and offers the ability to authenticate
-# using the "current logged in user". Since at least with MSVC7 the sspi.h
-# header is broken it is either required to install the Windows SDK,
-# or to fix sspi.h with adding this define at the beginning of sspi.h:
-# #define FreeCredentialHandle FreeCredentialsHandle
-#
-# If, for some reason the Windows SDK is installed but not installed
-# in the default location, you can specify WINDOWS_SDK_PATH.
-# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
-
-# WINDOWS_SSPI = 1
-
-!IFDEF WINDOWS_SSPI
-!IFNDEF WINDOWS_SDK_PATH
-WINDOWS_SDK_PATH = "$(PROGRAMFILES)\Microsoft SDK"
-!ENDIF
-!ENDIF
-
-########################################################
-## Nothing more to do below this line!
-
-ZLIB_CFLAGS = /DHAVE_ZLIB_H /DHAVE_ZLIB /DHAVE_LIBZ /I "$(ZLIB_PATH)"
-ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
-ZLIB_LIBS = zlib.lib
-ZLIB_IMP_LIBS = zdll.lib
-
-SSL_CFLAGS = /DUSE_OPENSSL
-SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
-SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
-SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
-WINLIBS = ws2_32.lib wldap32.lib advapi32.lib
-
-WINSSL_CFLAGS = /DUSE_SCHANNEL
-#WINSSL_LIBS = gdi32.lib user32.lib
-
-!IFDEF USE_IDN
-WINLIBS = $(WINLIBS) normaliz.lib
-!ENDIF
-
-# Runtime library configuration
-RTLIB = /MD
-RTLIBD = /MDd
-
-!IF "$(RTLIBCFG)" == "static"
-RTLIB = /MT
-RTLIBD = /MTd
-!ENDIF
-
-## Release
-CCR = cl.exe $(RTLIB) /O2 /DNDEBUG
-LINKR = link.exe /incremental:no /libpath:"../lib"
-RCR = rc.exe /dDEBUGBUILD=0
-
-## Debug
-CCD = cl.exe $(RTLIBD) /Gm /ZI /Od /D_DEBUG /GZ
-LINKD = link.exe /incremental:yes /debug /libpath:"../lib"
-RCD = rc.exe /dDEBUGBUILD=1
-
-CFLAGS = /I../lib /I../include /nologo /W3 /GX /DWIN32 /YX /FD /c /D_BIND_TO_CURRENT_VCLIBS_VERSION=1
-LFLAGS = /nologo /out:$(PROGRAM_NAME) /subsystem:console /machine:$(MACHINE)
-RESFLAGS = /i../include
-
-# This manifest thing is for VC8, enabled by the maketgz script that
-# builds the VC8 version of this makefile. Left commented out in the VC7
-# version!
-#MANIFESTTOOL = mt -manifest $(PROGRAM_NAME).manifest -outputresource:$(PROGRAM_NAME);1
-
-!IFDEF WINDOWS_SSPI
-CFLAGS = $(CFLAGS) /DUSE_WINDOWS_SSPI /I$(WINDOWS_SDK_PATH)\include
-!ENDIF
-
-RELEASE_OBJS= \
- nonblockr.obj \
- rawstrr.obj \
- strtoofftr.obj \
- warnless.obj \
- tool_binmoder.obj \
- tool_bnamer.obj \
- tool_cb_dbgr.obj \
- tool_cb_hdrr.obj \
- tool_cb_prgr.obj \
- tool_cb_rear.obj \
- tool_cb_seer.obj \
- tool_cb_wrtr.obj \
- tool_cfgabler.obj \
- tool_convertr.obj \
- tool_dirhier.obj \
- tool_doswinr.obj \
- tool_easysrcr.obj \
- tool_formparser.obj \
- tool_getparamr.obj \
- tool_getpassr.obj \
- tool_helpr.obj \
- tool_helpersr.obj \
- tool_homedirr.obj \
- tool_hugehelpr.obj \
- tool_libinfor.obj \
- tool_mainr.obj \
- tool_metalinkr.obj \
- tool_mfilesr.obj \
- tool_msgsr.obj \
- tool_operater.obj \
- tool_operhlpr.obj \
- tool_panykeyr.obj \
- tool_paramhlpr.obj \
- tool_parsecfgr.obj \
- tool_setoptr.obj \
- tool_sleepr.obj \
- tool_urlglobr.obj \
- tool_utilr.obj \
- tool_vmsr.obj \
- tool_writeenvr.obj \
- tool_writeoutr.obj \
- tool_xattrr.obj \
- curlr.res
-
-DEBUG_OBJS= \
- nonblockd.obj \
- rawstrd.obj \
- strtoofftd.obj \
- warnlessd.obj \
- tool_binmoded.obj \
- tool_bnamed.obj \
- tool_cb_dbgd.obj \
- tool_cb_hdrd.obj \
- tool_cb_prgd.obj \
- tool_cb_read.obj \
- tool_cb_seed.obj \
- tool_cb_wrtd.obj \
- tool_cfgabled.obj \
- tool_convertd.obj \
- tool_dirhied.obj \
- tool_doswind.obj \
- tool_easysrcd.obj \
- tool_formparsed.obj \
- tool_getparamd.obj \
- tool_getpassd.obj \
- tool_helpd.obj \
- tool_helpersd.obj \
- tool_homedird.obj \
- tool_hugehelpd.obj \
- tool_libinfod.obj \
- tool_maind.obj \
- tool_metalinkd.obj \
- tool_mfilesd.obj \
- tool_msgsd.obj \
- tool_operated.obj \
- tool_operhlpd.obj \
- tool_panykeyd.obj \
- tool_paramhlpd.obj \
- tool_parsecfgd.obj \
- tool_setoptd.obj \
- tool_sleepd.obj \
- tool_urlglobd.obj \
- tool_utild.obj \
- tool_vmsd.obj \
- tool_writeenvd.obj \
- tool_writeoutd.obj \
- tool_xattrd.obj \
- curld.res
-
-#################################################
-# If CFG not specified, use static libs
-
-CFLAGS = $(CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG)
-
-#################################################
-# release dynamic library
-
-!IF "$(CFG)" == "release-dll"
-LINKLIBS = $(LIBCURL_IMP_LIB_REL)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG)
-!ENDIF
-
-#################################################
-# release static library with zlib
-
-!IF "$(CFG)" == "release-zlib"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl
-
-!IF "$(CFG)" == "release-ssl"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl
-
-!IF "$(CFG)" == "release-dll-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with ssl and zlib
-
-!IF "$(CFG)" == "release-ssl-zlib"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with winssl and zlib
-
-!IF "$(CFG)" == "release-winssl-zlib"
-CFLAGS = $(CFLAGS) $(WINSSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(WINSSL_LIBS) $(ZLIB_LIBS)
-LFLAGS = $(LFLAGS) $(WINSSL_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl
-
-!IF "$(CFG)" == "release-ssl-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic zlib
-
-!IF "$(CFG)" == "release-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic zlib
-
-!IF "$(CFG)" == "release-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release static library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS) /DCURL_STATICLIB
-LINKLIBS = $(LIBCURL_STA_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_STA_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-#################################################
-# release dynamic library with dynamic ssl and dynamic zlib
-
-!IF "$(CFG)" == "release-dll-ssl-dll-zlib-dll"
-CFLAGS = $(CFLAGS) $(SSL_CFLAGS) $(ZLIB_CFLAGS)
-LINKLIBS = $(LIBCURL_IMP_LIB_REL) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LINKLIBS_DEBUG = $(LIBCURL_IMP_LIB_DBG) $(SSL_LIBS) $(ZLIB_IMP_LIBS)
-LFLAGS = $(LFLAGS) $(SSL_IMP_LFLAGS) $(ZLIB_LFLAGS)
-!ENDIF
-
-LINKLIBS = $(LINKLIBS) $(WINLIBS)
-LINKLIBS_DEBUG = $(LINKLIBS_DEBUG) $(WINLIBS)
-
-all : release
-
-release: $(RELEASE_OBJS)
- $(LINKR) $(LFLAGS) $(LINKLIBS) $(RELEASE_OBJS)
- $(MANIFESTTOOL)
-
-debug: $(DEBUG_OBJS)
- $(LINKD) $(LFLAGS) $(LINKLIBS_DEBUG) $(DEBUG_OBJS)
- $(MANIFESTTOOL)
-
-## Release
-nonblockr.obj: ../lib/nonblock.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrr.obj: ../lib/rawstr.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftr.obj: ../lib/strtoofft.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnless.obj: ../lib/warnless.c
- $(CCR) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoder.obj: tool_binmode.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamer.obj: tool_bname.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgr.obj: tool_cb_dbg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrr.obj: tool_cb_hdr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgr.obj: tool_cb_prg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_rear.obj: tool_cb_rea.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seer.obj: tool_cb_see.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtr.obj: tool_cb_wrt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabler.obj: tool_cfgable.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertr.obj: tool_convert.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhier.obj: tool_dirhie.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswinr.obj: tool_doswin.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcr.obj: tool_easysrc.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparser.obj: tool_formparse.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamr.obj: tool_getparam.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassr.obj: tool_getpass.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpr.obj: tool_help.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersr.obj: tool_helpers.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedirr.obj: tool_homedir.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpr.obj: tool_hugehelp.c
- $(CCR) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfor.obj: tool_libinfo.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_mainr.obj: tool_main.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkr.obj: tool_metalink.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesr.obj: tool_mfiles.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsr.obj: tool_msgs.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operater.obj: tool_operate.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpr.obj: tool_operhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyr.obj: tool_panykey.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpr.obj: tool_paramhlp.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgr.obj: tool_parsecfg.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptr.obj: tool_setopt.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepr.obj: tool_sleep.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobr.obj: tool_urlglob.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utilr.obj: tool_util.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsr.obj: tool_vms.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvr.obj: tool_writeenv.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutr.obj: tool_writeout.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrr.obj: tool_xattr.c
- $(CCR) $(CFLAGS) /Fo"$@" tool_xattr.c
-curlr.res : curl.rc
- $(RCR) $(RESFLAGS) /Fo"$@" curl.rc
-
-## Debug
-nonblockd.obj: ../lib/nonblock.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/nonblock.c
-rawstrd.obj: ../lib/rawstr.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/rawstr.c
-strtoofftd.obj: ../lib/strtoofft.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/strtoofft.c
-warnlessd.obj: ../lib/warnless.c
- $(CCD) $(CFLAGS) /Fo"$@" ../lib/warnless.c
-tool_binmoded.obj: tool_binmode.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_binmode.c
-tool_bnamed.obj: tool_bname.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_bname.c
-tool_cb_dbgd.obj: tool_cb_dbg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_dbg.c
-tool_cb_hdrd.obj: tool_cb_hdr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_hdr.c
-tool_cb_prgd.obj: tool_cb_prg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_prg.c
-tool_cb_read.obj: tool_cb_rea.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_rea.c
-tool_cb_seed.obj: tool_cb_see.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_see.c
-tool_cb_wrtd.obj: tool_cb_wrt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cb_wrt.c
-tool_cfgabled.obj: tool_cfgable.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_cfgable.c
-tool_convertd.obj: tool_convert.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_convert.c
-tool_dirhied.obj: tool_dirhie.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_dirhie.c
-tool_doswind.obj: tool_doswin.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_doswin.c
-tool_easysrcd.obj: tool_easysrc.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_easysrc.c
-tool_formparsed.obj: tool_formparse.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_formparse.c
-tool_getparamd.obj: tool_getparam.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getparam.c
-tool_getpassd.obj: tool_getpass.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_getpass.c
-tool_helpd.obj: tool_help.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_help.c
-tool_helpersd.obj: tool_helpers.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_helpers.c
-tool_homedird.obj: tool_homedir.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_homedir.c
-tool_hugehelpd.obj: tool_hugehelp.c
- $(CCD) $(CFLAGS) /Zm200 /Fo"$@" tool_hugehelp.c
-tool_libinfod.obj: tool_libinfo.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_libinfo.c
-tool_maind.obj: tool_main.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_main.c
-tool_metalinkd.obj: tool_metalink.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_metalink.c
-tool_mfilesd.obj: tool_mfiles.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_mfiles.c
-tool_msgsd.obj: tool_msgs.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_msgs.c
-tool_operated.obj: tool_operate.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operate.c
-tool_operhlpd.obj: tool_operhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_operhlp.c
-tool_panykeyd.obj: tool_panykey.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_panykey.c
-tool_paramhlpd.obj: tool_paramhlp.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_paramhlp.c
-tool_parsecfgd.obj: tool_parsecfg.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_parsecfg.c
-tool_setoptd.obj: tool_setopt.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_setopt.c
-tool_sleepd.obj: tool_sleep.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_sleep.c
-tool_urlglobd.obj: tool_urlglob.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_urlglob.c
-tool_utild.obj: tool_util.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_util.c
-tool_vmsd.obj: tool_vms.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_vms.c
-tool_writeenvd.obj: tool_writeenv.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeenv.c
-tool_writeoutd.obj: tool_writeout.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_writeout.c
-tool_xattrd.obj: tool_xattr.c
- $(CCD) $(CFLAGS) /Fo"$@" tool_xattr.c
-curld.res : curl.rc
- $(RCD) $(RESFLAGS) /Fo"$@" curl.rc
-
-clean:
- @-erase $(PROGRAM_NAME) 2> NUL
- @-erase $(RELEASE_OBJS) 2> NUL
- @-erase $(DEBUG_OBJS) 2> NUL
- @-erase *.idb 2> NUL
- @-erase *.pdb 2> NUL
- @-erase *.pch 2> NUL
- @-erase *.ilk 2> NUL
diff --git a/src/Makefile.vc8 b/src/Makefile.vc8
index 4399c2819..7243799f0 100644
--- a/src/Makefile.vc8
+++ b/src/Makefile.vc8
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -56,7 +56,7 @@ PROGRAM_NAME = curl.exe
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF ZLIB_PATH
@@ -77,7 +77,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -95,7 +95,7 @@ ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
ZLIB_LIBS = zlib.lib
ZLIB_IMP_LIBS = zdll.lib
-SSL_CFLAGS = /DUSE_OPENSSL
+SSL_CFLAGS = /DUSE_SSLEAY
SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
diff --git a/src/Makefile.vc9 b/src/Makefile.vc9
index b149a938d..9d60e63ac 100644
--- a/src/Makefile.vc9
+++ b/src/Makefile.vc9
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -56,7 +56,7 @@ PROGRAM_NAME = curl.exe
!IFNDEF OPENSSL_PATH
-OPENSSL_PATH = ../../openssl-1.0.2a
+OPENSSL_PATH = ../../openssl-0.9.8zc
!ENDIF
!IFNDEF ZLIB_PATH
@@ -77,7 +77,7 @@ MACHINE = X86
# If, for some reason the Windows SDK is installed but not installed
# in the default location, you can specify WINDOWS_SDK_PATH.
# It can be downloaded from:
-# https://msdn.microsoft.com/windows/bb980924.aspx
+# http://www.microsoft.com/msdownload/platformsdk/sdkupdate/
# WINDOWS_SSPI = 1
@@ -95,7 +95,7 @@ ZLIB_LFLAGS = "/LIBPATH:$(ZLIB_PATH)"
ZLIB_LIBS = zlib.lib
ZLIB_IMP_LIBS = zdll.lib
-SSL_CFLAGS = /DUSE_OPENSSL
+SSL_CFLAGS = /DUSE_SSLEAY
SSL_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32"
SSL_IMP_LFLAGS = /LIBPATH:"$(OPENSSL_PATH)/out32dll"
SSL_LIBS = libeay32.lib ssleay32.lib gdi32.lib user32.lib
diff --git a/src/checksrc.whitelist b/src/checksrc.whitelist
deleted file mode 100644
index b078ac1ae..000000000
--- a/src/checksrc.whitelist
+++ /dev/null
@@ -1,3 +0,0 @@
- * 'name=@filename,filename2,filename3'
- * 'name=@filename;type=image/gif,filename2,filename3'
- file = fopen(name, "r"); /* VMS */
diff --git a/src/mkhelp.pl b/src/mkhelp.pl
index 088a09a06..7ed86f7cd 100644
--- a/src/mkhelp.pl
+++ b/src/mkhelp.pl
@@ -54,9 +54,6 @@ while (<STDIN>) {
# this should be removed:
$line =~ s/(.|_)//g;
- # remove trailing CR from line. msysgit checks out files as line+CRLF
- $line =~ s/\r$//;
-
if($line =~ /^([ \t]*\n|curl)/i) {
# cut off headers and empty lines
$wline++; # count number of cut off lines
@@ -93,12 +90,7 @@ open(READ, "<$README") ||
die "couldn't read the README infile $README";
while(<READ>) {
- my $line = $_;
-
- # remove trailing CR from line. msysgit checks out files as line+CRLF
- $line =~ s/\r$//;
-
- push @out, $line;
+ push @out, $_;
}
close(READ);
diff --git a/src/tool_cb_dbg.c b/src/tool_cb_dbg.c
index f52714683..4add67c55 100644
--- a/src/tool_cb_dbg.c
+++ b/src/tool_cb_dbg.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -79,7 +79,7 @@ int tool_debug_cb(CURL *handle, curl_infotype type,
/* Ok, this is somewhat hackish but we do it undocumented for now */
config->trace_stream = config->errors; /* aka stderr */
else {
- config->trace_stream = fopen(config->trace_dump, FOPEN_WRITETEXT);
+ config->trace_stream = fopen(config->trace_dump, "w");
config->trace_fopened = TRUE;
}
}
@@ -88,7 +88,7 @@ int tool_debug_cb(CURL *handle, curl_infotype type,
output = config->trace_stream;
if(!output) {
- warnf(config, "Failed to create/open output");
+ warnf(operation, "Failed to create/open output");
return 0;
}
diff --git a/src/tool_cb_hdr.c b/src/tool_cb_hdr.c
index fd208e862..ef340f798 100644
--- a/src/tool_cb_hdr.c
+++ b/src/tool_cb_hdr.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -61,8 +61,7 @@ size_t tool_header_cb(void *ptr, size_t size, size_t nmemb, void *userdata)
#ifdef DEBUGBUILD
if(size * nmemb > (size_t)CURL_MAX_HTTP_HEADER) {
- warnf(heads->config->global, "Header data exceeds single call write "
- "limit!\n");
+ warnf(heads->config, "Header data exceeds single call write limit!\n");
return failure;
}
#endif
@@ -75,8 +74,6 @@ size_t tool_header_cb(void *ptr, size_t size, size_t nmemb, void *userdata)
size_t rc = fwrite(ptr, size, nmemb, heads->stream);
if(rc != cb)
return rc;
- /* flush the stream to send off what we got earlier */
- (void)fflush(heads->stream);
}
/*
diff --git a/src/tool_cb_wrt.c b/src/tool_cb_wrt.c
index 9be393ff2..dfbf95cc6 100644
--- a/src/tool_cb_wrt.c
+++ b/src/tool_cb_wrt.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -31,43 +31,6 @@
#include "memdebug.h" /* keep this as LAST include */
-/* create a local file for writing, return TRUE on success */
-bool tool_create_output_file(struct OutStruct *outs)
-{
- struct GlobalConfig *global = outs->config->global;
- FILE *file;
-
- if(!outs->filename || !*outs->filename) {
- warnf(global, "Remote filename has no length!\n");
- return FALSE;
- }
-
- if(outs->is_cd_filename) {
- /* don't overwrite existing files */
- file = fopen(outs->filename, "rb");
- if(file) {
- fclose(file);
- warnf(global, "Refusing to overwrite %s: %s\n", outs->filename,
- strerror(EEXIST));
- return FALSE;
- }
- }
-
- /* open file for writing */
- file = fopen(outs->filename, "wb");
- if(!file) {
- warnf(global, "Failed to create the file %s: %s\n", outs->filename,
- strerror(errno));
- return FALSE;
- }
- outs->s_isreg = TRUE;
- outs->fopened = TRUE;
- outs->stream = file;
- outs->bytes = 0;
- outs->init = 0;
- return TRUE;
-}
-
/*
** callback for CURLOPT_WRITEFUNCTION
*/
@@ -92,14 +55,13 @@ size_t tool_write_cb(void *buffer, size_t sz, size_t nmemb, void *userdata)
#ifdef DEBUGBUILD
if(config->include_headers) {
if(sz * nmemb > (size_t)CURL_MAX_HTTP_HEADER) {
- warnf(config->global, "Header data size exceeds single call write "
- "limit!\n");
+ warnf(config, "Header data size exceeds single call write limit!\n");
return failure;
}
}
else {
if(sz * nmemb > (size_t)CURL_MAX_WRITE_SIZE) {
- warnf(config->global, "Data size exceeds single call write limit!\n");
+ warnf(config, "Data size exceeds single call write limit!\n");
return failure;
}
}
@@ -128,14 +90,44 @@ size_t tool_write_cb(void *buffer, size_t sz, size_t nmemb, void *userdata)
check_fails = TRUE;
}
if(check_fails) {
- warnf(config->global, "Invalid output struct data for write callback\n");
+ warnf(config, "Invalid output struct data for write callback\n");
return failure;
}
}
#endif
- if(!outs->stream && !tool_create_output_file(outs))
- return failure;
+ if(!outs->stream) {
+ FILE *file;
+
+ if(!outs->filename || !*outs->filename) {
+ warnf(config, "Remote filename has no length!\n");
+ return failure;
+ }
+
+ if(outs->is_cd_filename) {
+ /* don't overwrite existing files */
+ file = fopen(outs->filename, "rb");
+ if(file) {
+ fclose(file);
+ warnf(config, "Refusing to overwrite %s: %s\n", outs->filename,
+ strerror(EEXIST));
+ return failure;
+ }
+ }
+
+ /* open file for writing */
+ file = fopen(outs->filename, "wb");
+ if(!file) {
+ warnf(config, "Failed to create the file %s: %s\n", outs->filename,
+ strerror(errno));
+ return failure;
+ }
+ outs->s_isreg = TRUE;
+ outs->fopened = TRUE;
+ outs->stream = file;
+ outs->bytes = 0;
+ outs->init = 0;
+ }
rc = fwrite(buffer, sz, nmemb, outs->stream);
@@ -157,3 +149,4 @@ size_t tool_write_cb(void *buffer, size_t sz, size_t nmemb, void *userdata)
return rc;
}
+
diff --git a/src/tool_cb_wrt.h b/src/tool_cb_wrt.h
index ecbefa808..380d8dd6a 100644
--- a/src/tool_cb_wrt.h
+++ b/src/tool_cb_wrt.h
@@ -29,8 +29,5 @@
size_t tool_write_cb(void *buffer, size_t sz, size_t nmemb, void *userdata);
-/* create a local file for writing, return TRUE on success */
-bool tool_create_output_file(struct OutStruct *outs);
-
#endif /* HEADER_CURL_TOOL_CB_WRT_H */
diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c
index ba6c468c5..c9ee41703 100644
--- a/src/tool_cfgable.c
+++ b/src/tool_cfgable.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -136,8 +136,6 @@ static void free_config_fields(struct OperationConfig *config)
Curl_safefree(config->socksproxy);
Curl_safefree(config->socks5_gssapi_service);
- Curl_safefree(config->proxy_service_name);
- Curl_safefree(config->service_name);
Curl_safefree(config->ftp_account);
Curl_safefree(config->ftp_alternative_to_user);
diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h
index c6a691447..cf8d563b0 100644
--- a/src/tool_cfgable.h
+++ b/src/tool_cfgable.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -126,7 +126,6 @@ struct OperationConfig {
bool globoff;
bool use_httpget;
bool insecure_ok; /* set TRUE to allow insecure SSL connects */
- bool verifystatus;
bool create_dirs;
bool ftp_create_dirs;
bool ftp_skip_ip;
@@ -166,12 +165,8 @@ struct OperationConfig {
int socksver; /* set to CURLPROXY_SOCKS* define */
char *socks5_gssapi_service; /* set service name for gssapi principal
* default rcmd */
- char *proxy_service_name; /* set service name for proxy negotiation
- * default HTTP */
int socks5_gssapi_nec ; /* The NEC reference server does not protect
* the encryption type exchange */
- char *service_name; /* set negotiation service name
- * default HTTP */
bool tcp_nodelay;
long req_retry; /* number of retries */
@@ -199,7 +194,6 @@ struct OperationConfig {
bool xattr; /* store metadata in extended attributes */
long gssapi_delegation;
bool ssl_allow_beast; /* allow this SSL vulnerability */
- bool ssl_no_revoke; /* disable SSL certificate revocation checks */
bool use_metalink; /* process given URLs as metalink XML file */
metalinkfile *metalinkfile_list; /* point to the first node */
@@ -211,8 +205,7 @@ struct OperationConfig {
bool nonpn; /* enable/disable TLS NPN extension */
bool noalpn; /* enable/disable TLS ALPN extension */
char *unix_socket_path; /* path to Unix domain socket */
- bool falsestart;
- bool path_as_is;
+
struct GlobalConfig *global;
struct OperationConfig *prev;
struct OperationConfig *next; /* Always last in the struct */
diff --git a/src/tool_dirhie.c b/src/tool_dirhie.c
index b6a8067c9..5965f7a74 100644
--- a/src/tool_dirhie.c
+++ b/src/tool_dirhie.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -129,7 +129,7 @@ CURLcode create_dir_hierarchy(const char *outfile, FILE *errors)
snprintf(dirbuildup, outlen, "%s%s", DIR_CHAR, tempdir);
}
if(access(dirbuildup, F_OK) == -1) {
- if(-1 == mkdir(dirbuildup, (mode_t)0000750)) {
+ if(-1 == mkdir(dirbuildup,(mode_t)0000750)) {
show_dir_errno(errors, dirbuildup);
result = CURLE_WRITE_ERROR;
break; /* get out of loop */
diff --git a/src/tool_easysrc.c b/src/tool_easysrc.c
index 0482ef6ae..3db27bb5a 100644
--- a/src/tool_easysrc.c
+++ b/src/tool_easysrc.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -176,13 +176,13 @@ void dumpeasysrc(struct GlobalConfig *config)
FILE *out;
bool fopened = FALSE;
if(strcmp(o, "-")) {
- out = fopen(o, FOPEN_WRITETEXT);
+ out = fopen(o, "w");
fopened = TRUE;
}
else
out = stdout;
if(!out)
- warnf(config, "Failed to open %s to write libcurl code!\n", o);
+ warnf(config->current, "Failed to open %s to write libcurl code!\n", o);
else {
int i;
const char *c;
diff --git a/src/tool_formparse.c b/src/tool_formparse.c
index f26f2595c..1dcd897e6 100644
--- a/src/tool_formparse.c
+++ b/src/tool_formparse.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2013, 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
@@ -206,8 +206,7 @@ int formparse(struct OperationConfig *config,
/* verify that this is a fine type specifier */
if(2 != sscanf(type, "%127[^/]/%127[^;,\n]",
type_major, type_minor)) {
- warnf(config->global,
- "Illegally formatted content-type field!\n");
+ warnf(config, "Illegally formatted content-type field!\n");
Curl_safefree(contents);
FreeMultiInfo(&multi_start, &multi_current);
return 2; /* illegal content-type syntax! */
@@ -247,7 +246,7 @@ int formparse(struct OperationConfig *config,
semicolon = (';' == *ptr) ? TRUE : FALSE;
if(*unknown) {
*word_end = '\0';
- warnf(config->global, "skip unknown form field: %s\n", unknown);
+ warnf(config, "skip unknown form field: %s\n", unknown);
}
}
}
@@ -258,7 +257,7 @@ int formparse(struct OperationConfig *config,
if(*contp && !AddMultiFiles(contp, type, filename, &multi_start,
&multi_current)) {
- warnf(config->global, "Error building form post!\n");
+ warnf(config, "Error building form post!\n");
Curl_safefree(contents);
FreeMultiInfo(&multi_start, &multi_current);
return 3;
@@ -292,7 +291,7 @@ int formparse(struct OperationConfig *config,
if(curl_formadd(httppost, last_post,
CURLFORM_COPYNAME, name,
CURLFORM_ARRAY, forms, CURLFORM_END) != 0) {
- warnf(config->global, "curl_formadd failed!\n");
+ warnf(config, "curl_formadd failed!\n");
Curl_safefree(forms);
Curl_safefree(contents);
return 5;
@@ -324,8 +323,8 @@ int formparse(struct OperationConfig *config,
if(curl_formadd(httppost, last_post,
CURLFORM_ARRAY, info, CURLFORM_END ) != 0) {
- warnf(config->global, "curl_formadd failed, possibly the file %s is "
- "bad!\n", contp + 1);
+ warnf(config, "curl_formadd failed, possibly the file %s is bad!\n",
+ contp+1);
Curl_safefree(contents);
return 6;
}
@@ -333,7 +332,7 @@ int formparse(struct OperationConfig *config,
else {
#ifdef CURL_DOES_CONVERSIONS
if(convert_to_network(contp, strlen(contp))) {
- warnf(config->global, "curl_formadd failed!\n");
+ warnf(config, "curl_formadd failed!\n");
Curl_safefree(contents);
return 7;
}
@@ -344,7 +343,7 @@ int formparse(struct OperationConfig *config,
info[i].option = CURLFORM_END;
if(curl_formadd(httppost, last_post,
CURLFORM_ARRAY, info, CURLFORM_END) != 0) {
- warnf(config->global, "curl_formadd failed!\n");
+ warnf(config, "curl_formadd failed!\n");
Curl_safefree(contents);
return 8;
}
@@ -353,9 +352,10 @@ int formparse(struct OperationConfig *config,
}
else {
- warnf(config->global, "Illegally formatted input field!\n");
+ warnf(config, "Illegally formatted input field!\n");
return 1;
}
Curl_safefree(contents);
return 0;
}
+
diff --git a/src/tool_getparam.c b/src/tool_getparam.c
index 4405bce87..3932ccbf5 100644
--- a/src/tool_getparam.c
+++ b/src/tool_getparam.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -145,7 +145,7 @@ static const struct LongShort aliases[]= {
{"$v", "ssl-reqd", FALSE},
/* 'ssl-reqd' new in 7.20.0, previously this was ftp-ssl-reqd */
{"$w", "sessionid", FALSE},
- /* 'sessionid' listed as --no-sessionid in the help */
+ /* ¡sessionid' listed as --no-sessionid in the help */
{"$x", "ftp-ssl-control", FALSE},
{"$y", "ftp-ssl-ccc", FALSE},
{"$j", "ftp-ssl-ccc-mode", TRUE},
@@ -158,10 +158,10 @@ static const struct LongShort aliases[]= {
{"$3", "keepalive-time", TRUE},
{"$4", "post302", FALSE},
{"$5", "noproxy", TRUE},
+#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
{"$6", "socks5-gssapi-service", TRUE},
{"$7", "socks5-gssapi-nec", FALSE},
- {"$O", "proxy-service-name", TRUE},
- {"$P", "service-name", TRUE},
+#endif
{"$8", "proxy1.0", TRUE},
{"$9", "tftp-blksize", TRUE},
{"$A", "mail-from", TRUE},
@@ -177,7 +177,6 @@ static const struct LongShort aliases[]= {
{"$K", "sasl-ir", FALSE},
{"$L", "test-event", FALSE},
{"$M", "unix-socket", TRUE},
- {"$N", "path-as-is", FALSE},
{"0", "http1.0", FALSE},
{"01", "http1.1", FALSE},
{"02", "http2", FALSE},
@@ -196,7 +195,6 @@ static const struct LongShort aliases[]= {
{"c", "cookie-jar", TRUE},
{"C", "continue-at", TRUE},
{"d", "data", TRUE},
- {"dr", "data-raw", TRUE},
{"da", "data-ascii", TRUE},
{"db", "data-binary", TRUE},
{"de", "data-urlencode", TRUE},
@@ -219,9 +217,6 @@ static const struct LongShort aliases[]= {
{"En", "ssl-allow-beast", FALSE},
{"Eo", "login-options", TRUE},
{"Ep", "pinnedpubkey", TRUE},
- {"Eq", "cert-status", FALSE},
- {"Er", "false-start", FALSE},
- {"Es", "ssl-no-revoke", FALSE},
{"f", "fail", FALSE},
{"F", "form", TRUE},
{"Fs", "form-string", TRUE},
@@ -527,7 +522,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
case 'g': /* --trace */
GetStr(&global->trace_dump, nextarg);
if(global->tracetype && (global->tracetype != TRACE_BIN))
- warnf(global, "--trace overrides an earlier trace/verbose option\n");
+ warnf(config, "--trace overrides an earlier trace/verbose option\n");
global->tracetype = TRACE_BIN;
break;
case 'G': /* --npn */
@@ -536,7 +531,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
case 'h': /* --trace-ascii */
GetStr(&global->trace_dump, nextarg);
if(global->tracetype && (global->tracetype != TRACE_ASCII))
- warnf(global,
+ warnf(config,
"--trace-ascii overrides an earlier trace/verbose option\n");
global->tracetype = TRACE_ASCII;
break;
@@ -572,7 +567,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
/* for plain bytes, leave as-is */
break;
default:
- warnf(global, "unsupported rate unit. Use G, M, K or B!\n");
+ warnf(config, "unsupported rate unit. Use G, M, K or B!\n");
return PARAM_BAD_USE;
}
config->recvpersecond = value;
@@ -680,9 +675,9 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
case 'v': /* --stderr */
if(strcmp(nextarg, "-")) {
- FILE *newfile = fopen(nextarg, FOPEN_WRITETEXT);
+ FILE *newfile = fopen(nextarg, "wt");
if(!newfile)
- warnf(global, "Failed to open %s!\n", nextarg);
+ warnf(config, "Failed to open %s!\n", nextarg);
else {
if(global->errors_fopened)
fclose(global->errors);
@@ -834,7 +829,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
else {
config->localportrange -= config->localport;
if(config->localportrange < 1) {
- warnf(global, "bad range input\n");
+ warnf(config, "bad range input\n");
return PARAM_BAD_USE;
}
}
@@ -866,7 +861,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
break;
case 'z': /* --libcurl */
#ifdef CURL_DISABLE_LIBCURL_OPTION
- warnf(global,
+ warnf(config,
"--libcurl option was disabled at build-time!\n");
return PARAM_OPTION_UNKNOWN;
#else
@@ -897,18 +892,14 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
/* This specifies the noproxy list */
GetStr(&config->noproxy, nextarg);
break;
+#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
case '6': /* --socks5-gssapi-service */
GetStr(&config->socks5_gssapi_service, nextarg);
break;
case '7': /* --socks5-gssapi-nec*/
config->socks5_gssapi_nec = toggle;
break;
- case 'O': /* --proxy-service-name */
- GetStr(&config->proxy_service_name, nextarg);
- break;
- case 'P': /* --service-name */
- GetStr(&config->service_name, nextarg);
- break;
+#endif
case '8': /* --proxy1.0 */
/* http 1.0 proxy */
GetStr(&config->proxy, nextarg);
@@ -958,7 +949,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
int mlmaj, mlmin, mlpatch;
metalink_get_version(&mlmaj, &mlmin, &mlpatch);
if((mlmaj*10000)+(mlmin*100)+mlpatch < CURL_REQ_LIBMETALINK_VERS) {
- warnf(global,
+ warnf(config,
"--metalink option cannot be used because the version of "
"the linked libmetalink library is too old. "
"Required: %d.%d.%d, found %d.%d.%d\n",
@@ -971,7 +962,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
else
config->use_metalink = toggle;
#else
- warnf(global, "--metalink option is ignored because the binary is "
+ warnf(config, "--metalink option is ignored because the binary is "
"built without the Metalink support.\n");
#endif
break;
@@ -983,15 +974,12 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
#ifdef CURLDEBUG
config->test_event_based = toggle;
#else
- warnf(global, "--test-event is ignored unless a debug build!\n");
+ warnf(config, "--test-event is ignored unless a debug build!\n");
#endif
break;
case 'M': /* --unix-socket */
GetStr(&config->unix_socket_path, nextarg);
break;
- case 'N': /* --path-as-is */
- config->path_as_is = toggle;
- break;
}
break;
case '#': /* --progress-bar */
@@ -1105,7 +1093,6 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
char *postdata = NULL;
FILE *file;
size_t size = 0;
- bool raw_mode = (subletter == 'r');
if(subletter == 'e') { /* --data-urlencode*/
/* [name]=[content], we encode the content part only
@@ -1131,6 +1118,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
}
if('@' == is_file) {
/* a '@' letter, it means that a file name or - (stdin) follows */
+
if(curlx_strequal("-", p)) {
file = stdin;
set_binmode(stdin);
@@ -1138,7 +1126,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
else {
file = fopen(p, "rb");
if(!file)
- warnf(global,
+ warnf(config,
"Couldn't read data from file \"%s\", this makes "
"an empty POST.\n", nextarg);
}
@@ -1191,7 +1179,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
return PARAM_NO_MEM;
}
}
- else if('@' == *nextarg && !raw_mode) {
+ else if('@' == *nextarg) {
/* the data begins with a '@' letter, it means that a file name
or - (stdin) follows */
nextarg++; /* pass the @ */
@@ -1204,7 +1192,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
else {
file = fopen(nextarg, "rb");
if(!file)
- warnf(global, "Couldn't read data from file \"%s\", this makes "
+ warnf(config, "Couldn't read data from file \"%s\", this makes "
"an empty POST.\n", nextarg);
}
@@ -1321,7 +1309,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
break;
case 'f': /* crypto engine */
GetStr(&config->engine, nextarg);
- if(config->engine && curlx_raw_equal(config->engine, "list"))
+ if(config->engine && curlx_raw_equal(config->engine,"list"))
return PARAM_ENGINES_REQUESTED;
break;
case 'g': /* CA info PEM file */
@@ -1375,19 +1363,6 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
GetStr(&config->pinnedpubkey, nextarg);
break;
- case 'q': /* --cert-status */
- config->verifystatus = TRUE;
- break;
-
- case 'r': /* --false-start */
- config->falsestart = TRUE;
- break;
-
- case 's': /* --ssl-no-revoke */
- if(curlinfo->features & CURL_VERSION_SSL)
- config->ssl_no_revoke = TRUE;
- break;
-
default: /* certificate file */
{
char *certname, *passphrase;
@@ -1461,7 +1436,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
break;
case 'J': /* --remote-header-name */
if(config->include_headers) {
- warnf(global,
+ warnf(config,
"--include and --remote-header-name cannot be combined.\n");
return PARAM_BAD_USE;
}
@@ -1472,7 +1447,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
break;
case 'K': /* parse config file */
if(parseconfig(nextarg, global))
- warnf(global, "error trying read config from the '%s' file\n",
+ warnf(config, "error trying read config from the '%s' file\n",
nextarg);
break;
case 'l':
@@ -1499,7 +1474,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
#ifdef USE_MANUAL
return PARAM_MANUAL_REQUESTED;
#else
- warnf(global,
+ warnf(config,
"built-in manual was disabled at build-time!\n");
return PARAM_OPTION_UNKNOWN;
#endif
@@ -1618,7 +1593,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
if(ISDIGIT(*nextarg) && !strchr(nextarg, '-')) {
char buffer[32];
curl_off_t off;
- warnf(global,
+ warnf(config,
"A specified range MUST include at least one dash (-). "
"Appending one for you!\n");
off = curlx_strtoofft(nextarg, NULL, 10);
@@ -1634,7 +1609,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
tmp_range = nextarg;
while(*tmp_range != '\0') {
if(!ISDIGIT(*tmp_range) && *tmp_range != '-' && *tmp_range != ',') {
- warnf(global, "Invalid character is found in given range. "
+ warnf(config,"Invalid character is found in given range. "
"A specified range MUST have only digits in "
"\'start\'-\'stop\'. The server's response to this "
"request is uncertain.\n");
@@ -1723,7 +1698,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
if(!global->trace_dump)
return PARAM_NO_MEM;
if(global->tracetype && (global->tracetype != TRACE_PLAIN))
- warnf(global,
+ warnf(config,
"-v, --verbose overrides an earlier trace/verbose option\n");
global->tracetype = TRACE_PLAIN;
}
@@ -1750,7 +1725,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
}
else {
fname = nextarg;
- file = fopen(nextarg, FOPEN_READTEXT);
+ file = fopen(nextarg, "r");
}
err = file2string(&config->writeout, file);
if(file && (file != stdin))
@@ -1758,7 +1733,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
if(err)
return err;
if(!config->writeout)
- warnf(global, "Failed to read %s", fname);
+ warnf(config, "Failed to read %s", fname);
}
else
GetStr(&config->writeout, nextarg);
@@ -1816,7 +1791,7 @@ ParameterError getparameter(char *flag, /* f or -long-flag */
if(-1 == stat(nextarg, &statbuf)) {
/* failed, remove time condition */
config->timecond = CURL_TIMECOND_NONE;
- warnf(global,
+ warnf(config,
"Illegal date format for -z, --timecond (and not "
"a file name). Disabling time condition. "
"See curl_getdate(3) for valid date syntax.\n");
diff --git a/src/tool_getpass.c b/src/tool_getpass.c
index 0f7ed01f7..4c8dcb9f1 100644
--- a/src/tool_getpass.c
+++ b/src/tool_getpass.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -52,9 +52,9 @@
# endif
#endif
-#ifdef HAVE_UNISTD_H
-#include <unistd.h>
-#endif
+#define _MPRINTF_REPLACE
+#include <curl/mprintf.h>
+
#include "tool_getpass.h"
#include "memdebug.h" /* keep this as LAST include */
@@ -229,7 +229,7 @@ char *getpass_r(const char *prompt, /* prompt to display */
bool disabled;
int fd = open("/dev/tty", O_RDONLY);
if(-1 == fd)
- fd = STDIN_FILENO; /* use stdin if the tty couldn't be used */
+ fd = 1; /* use stdin if the tty couldn't be used */
disabled = ttyecho(FALSE, fd); /* disable terminal echo */
@@ -246,7 +246,7 @@ char *getpass_r(const char *prompt, /* prompt to display */
(void)ttyecho(TRUE, fd); /* enable echo */
}
- if(STDIN_FILENO != fd)
+ if(1 != fd)
close(fd);
return password; /* return pointer to buffer */
diff --git a/src/tool_help.c b/src/tool_help.c
index 6ad51cb5b..424a2fa9c 100644
--- a/src/tool_help.c
+++ b/src/tool_help.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -52,7 +52,6 @@ static const char *const helptext[] = {
" --cacert FILE CA certificate to verify peer against (SSL)",
" --capath DIR CA directory to verify peer against (SSL)",
" -E, --cert CERT[:PASSWD] Client certificate file and password (SSL)",
- " --cert-status Verify the status of the server certificate (SSL)",
" --cert-type TYPE Certificate file type (DER/PEM/ENG) (SSL)",
" --ciphers LIST SSL ciphers to use (SSL)",
" --compressed Request compressed response (using deflate or gzip)",
@@ -65,7 +64,6 @@ static const char *const helptext[] = {
" --crlf Convert LF to CRLF in upload",
" --crlfile FILE Get a CRL list in PEM format from the given file",
" -d, --data DATA HTTP POST data (H)",
- " --data-raw DATA HTTP POST data, '@' allowed (H)",
" --data-ascii DATA HTTP POST ASCII data (H)",
" --data-binary DATA HTTP POST binary data (H)",
" --data-urlencode DATA HTTP POST data url encoded (H)",
@@ -84,7 +82,6 @@ static const char *const helptext[] = {
" --environment Write results to environment variables (RISC OS)",
#endif
" -f, --fail Fail silently (no output at all) on HTTP errors (H)",
- " --false-start Enable TLS False Start.",
" -F, --form CONTENT Specify HTTP multipart POST data (H)",
" --form-string STRING Specify HTTP multipart POST data (H)",
" --ftp-account DATA Account data string (F)",
@@ -143,7 +140,7 @@ static const char *const helptext[] = {
" -n, --netrc Must read .netrc for user name and password",
" --netrc-optional Use either .netrc or URL; overrides -n",
" --netrc-file FILE Specify FILE for netrc",
- " -:, --next "
+ " -: --next "
"Allows the following URL to use a separate set of options",
" --no-alpn Disable the ALPN TLS extension (H)",
" -N, --no-buffer Disable buffering of the output stream",
@@ -155,8 +152,8 @@ static const char *const helptext[] = {
" --oauth2-bearer TOKEN OAuth 2 Bearer Token (IMAP, POP3, SMTP)",
" -o, --output FILE Write to FILE instead of stdout",
" --pass PASS Pass phrase for the private key (SSL/SSH)",
- " --path-as-is Do not squash .. sequences in URL path",
- " --pinnedpubkey FILE/HASHES Public key to verify peer against (SSL)",
+ " --pinnedpubkey FILE Public key (PEM/DER) to verify peer against "
+ "(OpenSSL/GnuTLS/GSKit only)",
" --post301 "
"Do not switch to GET after following a 301 redirect (H)",
" --post302 "
@@ -173,8 +170,6 @@ static const char *const helptext[] = {
" --proxy-negotiate "
"Use HTTP Negotiate (SPNEGO) authentication on the proxy (H)",
" --proxy-ntlm Use NTLM authentication on the proxy (H)",
- " --proxy-service-name NAME SPNEGO proxy service name",
- " --service-name NAME SPNEGO service name",
" -U, --proxy-user USER[:PASSWORD] Proxy user and password",
" --proxy1.0 HOST[:PORT] Use HTTP/1.0 proxy on given port",
" -p, --proxytunnel Operate through a HTTP proxy tunnel (using CONNECT)",
@@ -203,8 +198,10 @@ static const char *const helptext[] = {
" --socks5 HOST[:PORT] SOCKS5 proxy on given host + port",
" --socks5-hostname HOST[:PORT] "
"SOCKS5 proxy, pass host name to proxy",
+#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
" --socks5-gssapi-service NAME SOCKS5 proxy service name for GSS-API",
" --socks5-gssapi-nec Compatibility with NEC SOCKS5 server",
+#endif
" -Y, --speed-limit RATE "
"Stop transfers below RATE for 'speed-time' secs",
" -y, --speed-time SECONDS "
@@ -214,13 +211,12 @@ static const char *const helptext[] = {
" -2, --sslv2 Use SSLv2 (SSL)",
" -3, --sslv3 Use SSLv3 (SSL)",
" --ssl-allow-beast Allow security flaw to improve interop (SSL)",
- " --ssl-no-revoke Disable cert revocation checks (WinSSL)",
" --stderr FILE Where to redirect stderr (use \"-\" for stdout)",
" --tcp-nodelay Use the TCP_NODELAY option",
" -t, --telnet-option OPT=VAL Set telnet option",
" --tftp-blksize VALUE Set TFTP BLKSIZE option (must be >512)",
" -z, --time-cond TIME Transfer based on a time condition",
- " -1, --tlsv1 Use >= TLSv1 (SSL)",
+ " -1, --tlsv1 Use => TLSv1 (SSL)",
" --tlsv1.0 Use TLSv1.0 (SSL)",
" --tlsv1.1 Use TLSv1.1 (SSL)",
" --tlsv1.2 Use TLSv1.2 (SSL)",
diff --git a/src/tool_helpers.c b/src/tool_helpers.c
index 5479a1c03..dbf32f8bd 100644
--- a/src/tool_helpers.c
+++ b/src/tool_helpers.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -72,8 +72,6 @@ int SetHTTPrequest(struct OperationConfig *config, HttpReq req, HttpReq *store)
*store = req;
return 0;
}
-
- warnf(config->global, "You can only select one HTTP request!\n");
-
+ warnf(config, "You can only select one HTTP request!\n");
return 1;
}
diff --git a/src/tool_homedir.c b/src/tool_homedir.c
index 73a66f8f6..11bb4ef3d 100644
--- a/src/tool_homedir.c
+++ b/src/tool_homedir.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -44,11 +44,11 @@ static char *GetEnv(const char *variable, char do_expand)
env = buf1;
variable = buf1;
}
- if(do_expand && strchr(variable, '%')) {
+ if(do_expand && strchr(variable,'%')) {
/* buf2 == variable if not expanded */
rc = ExpandEnvironmentStrings (variable, buf2, sizeof(buf2));
if(rc > 0 && rc < sizeof(buf2) &&
- !strchr(buf2, '%')) /* no vars still unexpanded */
+ !strchr(buf2,'%')) /* no vars still unexpanded */
env = buf2;
}
#else
diff --git a/src/tool_hugehelp.c b/src/tool_hugehelp.c
index 0a2970a82..3010880b4 100644
--- a/src/tool_hugehelp.c
+++ b/src/tool_hugehelp.c
@@ -2,7 +2,7 @@
#ifndef HAVE_LIBZ
/*
* NEVER EVER edit this manually, fix the mkhelp.pl script instead!
- * Generation time: Mon Aug 3 00:00:36 2015
+ * Generation time: Sun Dec 28 14:36:38 2014
*/
#ifdef USE_MANUAL
#include "tool_hugehelp.h"
@@ -359,13 +359,13 @@ void hugehelp(void)
" (SSL) Specifies which ciphers to use in the connection. The list\n"
" of ciphers must specify valid ciphers. Read up on SSL cipher\n"
" list details on this URL:\n"
-" https://www.openssl.org/docs/apps/ciphers.html\n"
+" http://www.openssl.org/docs/apps/ciphers.html\n"
"\n"
" NSS ciphers are done differently than OpenSSL and GnuTLS. The\n"
, stdout);
fputs(
" full list of NSS ciphers is in the NSSCipherSuite entry at this\n"
-" URL: https://git.fedora-\n"
+" URL: http://git.fedora-\n"
" hosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives\n"
"\n"
" If this option is used several times, the last one will be used.\n"
@@ -425,44 +425,38 @@ void hugehelp(void)
fputs(
" application/x-www-form-urlencoded. Compare to -F, --form.\n"
"\n"
-" -d, --data is the same as --data-ascii. --data-raw is almost the\n"
-" same but does not have a special interpretation of the @ charac-\n"
-" ter. To post data purely binary, you should instead use the\n"
-" --data-binary option. To URL-encode the value of a form field\n"
-" you may use --data-urlencode.\n"
+" -d, --data is the same as --data-ascii. To post data purely\n"
+" binary, you should instead use the --data-binary option. To URL-\n"
+" encode the value of a form field you may use --data-urlencode.\n"
"\n"
-, stdout);
- fputs(
" If any of these options is used more than once on the same com-\n"
" mand line, the data pieces specified will be merged together\n"
+, stdout);
+ fputs(
" with a separating &-symbol. Thus, using '-d name=daniel -d\n"
" skill=lousy' would generate a post chunk that looks like\n"
" 'name=daniel&skill=lousy'.\n"
"\n"
" If you start the data with the letter @, the rest should be a\n"
-, stdout);
- fputs(
" file name to read the data from, or - if you want curl to read\n"
" the data from stdin. Multiple files can also be specified. Post-\n"
-" ing data from a file named 'foobar' would thus be done with\n"
-" --data @foobar. When --data is told to read from a file like\n"
-" that, carriage returns and newlines will be stripped out. If you\n"
-" don't want the @ character to have a special interpretation use\n"
, stdout);
fputs(
-" --data-raw instead.\n"
+" ing data from a file named 'foobar' would thus be done with\n"
+" --data @foobar. When --data is told to read from a file like\n"
+" that, carriage returns and newlines will be stripped out.\n"
"\n"
" -D, --dump-header <file>\n"
" Write the protocol headers to the specified file.\n"
"\n"
" This option is handy to use when you want to store the headers\n"
" that an HTTP site sends to you. Cookies from the headers could\n"
+, stdout);
+ fputs(
" then be read in a second curl invocation by using the -b,\n"
" --cookie option! The -c, --cookie-jar option is a better way to\n"
" store cookies.\n"
"\n"
-, stdout);
- fputs(
" When used in FTP, the FTP server response lines are considered\n"
" being \"headers\" and thus are saved there.\n"
"\n"
@@ -472,35 +466,30 @@ void hugehelp(void)
" See -d, --data.\n"
"\n"
" --data-binary <data>\n"
+, stdout);
+ fputs(
" (HTTP) This posts data exactly as specified with no extra pro-\n"
" cessing whatsoever.\n"
"\n"
" If you start the data with the letter @, the rest should be a\n"
-, stdout);
- fputs(
" filename. Data is posted in a similar manner as --data-ascii\n"
" does, except that newlines and carriage returns are preserved\n"
" and conversions are never done.\n"
"\n"
" If this option is used several times, the ones following the\n"
-" first will append data as described in -d, --data.\n"
-"\n"
-" --data-raw <data>\n"
-" (HTTP) This posts data similarly to --data but without the spe-\n"
, stdout);
fputs(
-" cial interpretation of the @ character. See -d, --data. (Added\n"
-" in 7.43.0)\n"
+" first will append data as described in -d, --data.\n"
"\n"
" --data-urlencode <data>\n"
" (HTTP) This posts data, similar to the other --data options with\n"
" the exception that this performs URL-encoding. (Added in 7.18.0)\n"
" To be CGI-compliant, the <data> part should begin with a name\n"
" followed by a separator and a content specification. The <data>\n"
-, stdout);
- fputs(
" part can be passed to curl using one of the following syntaxes:\n"
"\n"
+, stdout);
+ fputs(
" content\n"
" This will make curl URL-encode the content and pass that\n"
" on. Just be careful so that the content doesn't contain\n"
@@ -509,10 +498,10 @@ void hugehelp(void)
"\n"
" =content\n"
" This will make curl URL-encode the content and pass that\n"
-, stdout);
- fputs(
" on. The preceding = symbol is not included in the data.\n"
"\n"
+, stdout);
+ fputs(
" name=content\n"
" This will make curl URL-encode the content part and pass\n"
" that on. Note that the name part is expected to be URL-\n"
@@ -521,11 +510,11 @@ void hugehelp(void)
" @filename\n"
" This will make curl load data from the given file\n"
" (including any newlines), URL-encode that data and pass\n"
-, stdout);
- fputs(
" it on in the POST.\n"
"\n"
" name@filename\n"
+, stdout);
+ fputs(
" This will make curl load data from the given file\n"
" (including any newlines), URL-encode that data and pass\n"
" it on in the POST. The name part gets an equal sign\n"
@@ -533,9 +522,9 @@ void hugehelp(void)
" that the name is expected to be URL-encoded already.\n"
"\n"
" --delegation LEVEL\n"
+" Set LEVEL to tell the server what it is allowed to delegate when\n"
, stdout);
fputs(
-" Set LEVEL to tell the server what it is allowed to delegate when\n"
" it comes to user credentials. Used with GSS/kerberos.\n"
"\n"
" none Don't allow any delegation.\n"
@@ -547,9 +536,9 @@ void hugehelp(void)
" always Unconditionally allow the server to delegate.\n"
"\n"
" --digest\n"
+" (HTTP) Enables HTTP Digest authentication. This is an authenti-\n"
, stdout);
fputs(
-" (HTTP) Enables HTTP Digest authentication. This is an authenti-\n"
" cation scheme that prevents the password from being sent over\n"
" the wire in clear text. Use this in combination with the normal\n"
" -u, --user option to set user name and password. See also\n"
@@ -558,9 +547,9 @@ void hugehelp(void)
" If this option is used several times, only the first one is\n"
" used.\n"
"\n"
+" --disable-eprt\n"
, stdout);
fputs(
-" --disable-eprt\n"
" (FTP) Tell curl to disable the use of the EPRT and LPRT commands\n"
" when doing active FTP transfers. Curl will normally always first\n"
" attempt to use EPRT, then LPRT before using PORT, but with this\n"
@@ -763,68 +752,35 @@ void hugehelp(void)
" If this option is set, the default capath value will be ignored,\n"
" and if it is used several times, the last one will be used.\n"
"\n"
-" --pinnedpubkey <pinned public key (hashes)>\n"
-" (SSL) Tells curl to use the specified public key file (or\n"
-" hashes) to verify the peer. This can be a path to a file which\n"
-" contains a single public key in PEM or DER format, or any number\n"
-, stdout);
- fputs(
-" of base64 encoded sha256 hashes preceded by 'sha256//' and\n"
-" seperated by ';'\n"
+" --pinnedpubkey <pinned public key>\n"
+" (SSL) Tells curl to use the specified public key file to verify\n"
+" the peer. The file must contain a single public key in PEM or\n"
+" DER format.\n"
"\n"
" When negotiating a TLS or SSL connection, the server sends a\n"
+, stdout);
+ fputs(
" certificate indicating its identity. A public key is extracted\n"
" from this certificate and if it does not exactly match the pub-\n"
" lic key provided to this option, curl will abort the connection\n"
" before sending or receiving any data.\n"
"\n"
-, stdout);
- fputs(
-" Added in 7.39.0 for OpenSSL, GnuTLS and GSKit. Added in 7.43.0\n"
-" for NSS and wolfSSL/CyaSSL. sha256 support added in 7.44.0 for\n"
-" OpenSSL, GnuTLS, NSS and wolfSSL/CyaSSL. Other SSL backends not\n"
-" supported.\n"
-"\n"
-" If this option is used several times, the last one will be used.\n"
-"\n"
-" --cert-status\n"
-" (SSL) Tells curl to verify the status of the server certificate\n"
-, stdout);
- fputs(
-" by using the Certificate Status Request (aka. OCSP stapling) TLS\n"
-" extension.\n"
-"\n"
-" If this option is enabled and the server sends an invalid (e.g.\n"
-" expired) response, if the response suggests that the server cer-\n"
-" tificate has been revoked, or no response at all is received,\n"
-" the verification fails.\n"
-"\n"
" This is currently only implemented in the OpenSSL, GnuTLS and\n"
-, stdout);
- fputs(
-" NSS backends. (Added in 7.41.0)\n"
-"\n"
-" --false-start\n"
+" GSKit backends.\n"
"\n"
-" (SSL) Tells curl to use false start during the TLS handshake.\n"
-" False start is a mode where a TLS client will start sending\n"
-" application data before verifying the server's Finished message,\n"
-" thus saving a round trip when performing a full handshake.\n"
-"\n"
-" This is currently only implemented in the NSS and Secure Trans-\n"
+" If this option is used several times, the last one will be used.\n"
, stdout);
fputs(
-" port (on iOS 7.0 or later, or OS X 10.9 or later) backends.\n"
-" (Added in 7.42.0)\n"
+" (Added in 7.39.0)\n"
"\n"
" -f, --fail\n"
" (HTTP) Fail silently (no output at all) on server errors. This\n"
" is mostly done to better enable scripts etc to better deal with\n"
" failed attempts. In normal cases when an HTTP server fails to\n"
" deliver a document, it returns an HTML document stating so\n"
+" (which often also describes why and more). This flag will pre-\n"
, stdout);
fputs(
-" (which often also describes why and more). This flag will pre-\n"
" vent curl from outputting that and return error 22.\n"
"\n"
" This method is not fail-safe and there are occasions where non-\n"
@@ -833,17 +789,17 @@ void hugehelp(void)
"\n"
" -F, --form <name=content>\n"
" (HTTP) This lets curl emulate a filled-in form in which a user\n"
+" has pressed the submit button. This causes curl to POST data\n"
, stdout);
fputs(
-" has pressed the submit button. This causes curl to POST data\n"
" using the Content-Type multipart/form-data according to RFC\n"
" 2388. This enables uploading of binary files etc. To force the\n"
" 'content' part to be a file, prefix the file name with an @\n"
" sign. To just get the content part from a file, prefix the file\n"
" name with the symbol <. The difference between @ and < is then\n"
+" that @ makes a file get attached in the post as a file upload,\n"
, stdout);
fputs(
-" that @ makes a file get attached in the post as a file upload,\n"
" while the < makes a text field and just get the contents for\n"
" that text field from a file.\n"
"\n"
@@ -853,20 +809,16 @@ void hugehelp(void)
"\n"
" curl -F password=@/etc/passwd www.mypasswords.com\n"
"\n"
+" To read content from stdin instead of a file, use - as the file-\n"
, stdout);
fputs(
-" To read content from stdin instead of a file, use - as the file-\n"
-" name. This goes for both @ and < constructs. Unfortunately it\n"
-" does not support reading the file from a named pipe or similar,\n"
-" as it needs the full size before the transfer starts.\n"
+" name. This goes for both @ and < constructs.\n"
"\n"
" You can also tell curl what Content-Type to use by using\n"
" 'type=', in a manner similar to:\n"
"\n"
" curl -F \"web=@index.html;type=text/html\" url.com\n"
"\n"
-, stdout);
- fputs(
" or\n"
"\n"
" curl -F \"name=daniel;type=text/foo\" url.com\n"
@@ -874,6 +826,8 @@ void hugehelp(void)
" You can also explicitly change the name field of a file upload\n"
" part by setting filename=, like this:\n"
"\n"
+, stdout);
+ fputs(
" curl -F \"file=@localfile;filename=nameinpost\" url.com\n"
"\n"
" If filename/path contains ',' or ';', it must be quoted by dou-\n"
@@ -883,11 +837,11 @@ void hugehelp(void)
"\n"
" or\n"
"\n"
-, stdout);
- fputs(
" curl -F 'file=@\"localfile\";filename=\"nameinpost\"' url.com\n"
"\n"
" Note that if a filename/path is quoted by double-quotes, any\n"
+, stdout);
+ fputs(
" double-quote or backslash within the filename must be escaped by\n"
" backslash.\n"
"\n"
@@ -897,22 +851,22 @@ void hugehelp(void)
"\n"
" --ftp-account [data]\n"
" (FTP) When an FTP server asks for \"account data\" after user name\n"
-, stdout);
- fputs(
" and password has been provided, this data is sent off using the\n"
" ACCT command. (Added in 7.13.0)\n"
"\n"
+, stdout);
+ fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" --ftp-alternative-to-user <command>\n"
" (FTP) If authenticating with the USER and PASS commands fails,\n"
" send this command. When connecting to Tumbleweed's Secure\n"
" Transport server over FTPS using a client certificate, using\n"
-, stdout);
- fputs(
" \"SITE AUTH\" will tell the server to retrieve the username from\n"
" the certificate. (Added in 7.15.5)\n"
"\n"
+, stdout);
+ fputs(
" --ftp-create-dirs\n"
" (FTP/SFTP) When an FTP or SFTP URL/operation uses a path that\n"
" doesn't currently exist on the server, the standard behavior of\n"
@@ -920,149 +874,146 @@ void hugehelp(void)
" create missing directories.\n"
"\n"
" --ftp-method [method]\n"
-, stdout);
- fputs(
" (FTP) Control what method curl should use to reach a file on an\n"
" FTP(S) server. The method argument should be one of the follow-\n"
+, stdout);
+ fputs(
" ing alternatives:\n"
"\n"
" multicwd\n"
" curl does a single CWD operation for each path part in\n"
" the given URL. For deep hierarchies this means very many\n"
" commands. This is how RFC 1738 says it should be done.\n"
-, stdout);
- fputs(
" This is the default but the slowest behavior.\n"
"\n"
" nocwd curl does no CWD at all. curl will do SIZE, RETR, STOR\n"
+, stdout);
+ fputs(
" etc and give a full path to the server for all these com-\n"
" mands. This is the fastest behavior.\n"
"\n"
" singlecwd\n"
" curl does one CWD with the full target directory and then\n"
" operates on the file \"normally\" (like in the multicwd\n"
-, stdout);
- fputs(
" case). This is somewhat more standards compliant than\n"
" 'nocwd' but without the full penalty of 'multicwd'.\n"
+" (Added in 7.15.1)\n"
"\n"
-" (Added in 7.15.1)\n"
-"\n"
+, stdout);
+ fputs(
" --ftp-pasv\n"
" (FTP) Use passive mode for the data connection. Passive is the\n"
" internal default behavior, but using this option can be used to\n"
" override a previous -P/-ftp-port option. (Added in 7.11.0)\n"
"\n"
-, stdout);
- fputs(
" If this option is used several times, only the first one is\n"
" used. Undoing an enforced passive really isn't doable but you\n"
" must then instead enforce the correct -P, --ftp-port again.\n"
"\n"
+, stdout);
+ fputs(
" Passive mode means that curl will try the EPSV command first and\n"
" then PASV, unless --disable-epsv is used.\n"
"\n"
" --ftp-skip-pasv-ip\n"
" (FTP) Tell curl to not use the IP address the server suggests in\n"
-, stdout);
- fputs(
" its response to curl's PASV command when curl connects the data\n"
" connection. Instead curl will re-use the same IP address it\n"
" already uses for the control connection. (Added in 7.14.2)\n"
"\n"
+, stdout);
+ fputs(
" This option has no effect if PORT, EPRT or EPSV is used instead\n"
" of PASV.\n"
"\n"
" --ftp-pret\n"
" (FTP) Tell curl to send a PRET command before PASV (and EPSV).\n"
-, stdout);
- fputs(
" Certain FTP servers, mainly drftpd, require this non-standard\n"
" command for directory listings as well as up and downloads in\n"
" PASV mode. (Added in 7.20.x)\n"
"\n"
" --ftp-ssl-ccc\n"
+, stdout);
+ fputs(
" (FTP) Use CCC (Clear Command Channel) Shuts down the SSL/TLS\n"
" layer after authenticating. The rest of the control channel com-\n"
" munication will be unencrypted. This allows NAT routers to fol-\n"
-, stdout);
- fputs(
" low the FTP transaction. The default mode is passive. See --ftp-\n"
" ssl-ccc-mode for other modes. (Added in 7.16.1)\n"
"\n"
" --ftp-ssl-ccc-mode [active/passive]\n"
+, stdout);
+ fputs(
" (FTP) Use CCC (Clear Command Channel) Sets the CCC mode. The\n"
" passive mode will not initiate the shutdown, but instead wait\n"
" for the server to do it, and will not reply to the shutdown from\n"
-, stdout);
- fputs(
" the server. The active mode initiates the shutdown and waits for\n"
" a reply from the server. (Added in 7.16.2)\n"
"\n"
" --ftp-ssl-control\n"
" (FTP) Require SSL/TLS for the FTP login, clear for transfer.\n"
+, stdout);
+ fputs(
" Allows secure authentication, but non-encrypted data transfers\n"
" for efficiency. Fails the transfer if the server doesn't sup-\n"
" port SSL/TLS. (Added in 7.16.0) that can still be used but will\n"
-, stdout);
- fputs(
" be removed in a future version.\n"
"\n"
" --form-string <name=string>\n"
" (HTTP) Similar to --form except that the value string for the\n"
" named parameter is used literally. Leading '@' and '<' charac-\n"
+, stdout);
+ fputs(
" ters, and the ';type=' string in the value have no special mean-\n"
" ing. Use this in preference to --form if there's any possibility\n"
" that the string value may accidentally trigger the '@' or '<'\n"
-, stdout);
- fputs(
" features of --form.\n"
"\n"
" -g, --globoff\n"
" This option switches off the \"URL globbing parser\". When you set\n"
" this option, you can specify URLs that contain the letters {}[]\n"
+, stdout);
+ fputs(
" without having them being interpreted by curl itself. Note that\n"
" these letters are not normal legal URL contents but they should\n"
" be encoded according to the URI standard.\n"
"\n"
" -G, --get\n"
-, stdout);
- fputs(
" When used, this option will make all data specified with -d,\n"
" --data, --data-binary or --data-urlencode to be used in an HTTP\n"
" GET request instead of the POST request that otherwise would be\n"
+, stdout);
+ fputs(
" used. The data will be appended to the URL with a '?' separator.\n"
" If used in combination with -I, the POST data will instead be\n"
" appended to the URL with a HEAD request.\n"
"\n"
-, stdout);
- fputs(
" If this option is used several times, only the first one is\n"
" used. This is because undoing a GET doesn't make sense, but you\n"
" should then instead enforce the alternative method you prefer.\n"
"\n"
" -H, --header <header>\n"
-" (HTTP) Extra header to include in the request when sending HTTP\n"
-" to a server. You may specify any number of extra headers. Note\n"
, stdout);
fputs(
+" (HTTP) Extra header to include in the request when sending HTTP\n"
+" to a server. You may specify any number of extra headers. Note\n"
" that if you should add a custom header that has the same name as\n"
" one of the internal ones curl would use, your externally set\n"
" header will be used instead of the internal one. This allows you\n"
" to make even trickier stuff than curl would normally do. You\n"
-" should not replace internally set headers without knowing per-\n"
-" fectly well what you're doing. Remove an internal header by giv-\n"
, stdout);
fputs(
+" should not replace internally set headers without knowing per-\n"
+" fectly well what you're doing. Remove an internal header by giv-\n"
" ing a replacement without content on the right side of the\n"
" colon, as in: -H \"Host:\". If you send the custom header with no-\n"
" value then its header must be terminated with a semicolon, such\n"
" as -H \"X-Custom-Header;\" to send \"X-Custom-Header:\".\n"
"\n"
-" curl will make sure that each header you add/replace is sent\n"
-" with the proper end-of-line marker, you should thus not add that\n"
, stdout);
fputs(
+" curl will make sure that each header you add/replace is sent\n"
+" with the proper end-of-line marker, you should thus not add that\n"
" as a part of the header content: do not add newlines or carriage\n"
" returns, they will only mess things up for you.\n"
"\n"
@@ -1071,84 +1022,78 @@ void hugehelp(void)
" Starting in 7.37.0, you need --proxy-header to send custom head-\n"
" ers intended for a proxy.\n"
"\n"
+, stdout);
+ fputs(
" Example:\n"
"\n"
" # curl -H \"X-First-Name: Joe\" http://192.168.0.1/\n"
"\n"
-, stdout);
- fputs(
-" WARNING: headers set with this option will be set in all\n"
-" requests - even after redirects are followed, like when told\n"
-" with -L, --location. This can lead to the header being sent to\n"
-" other hosts than the original host, so sensitive headers should\n"
-" be used with caution combined with following redirects.\n"
-"\n"
" This option can be used multiple times to add/replace/remove\n"
" multiple headers.\n"
"\n"
-, stdout);
- fputs(
" --hostpubmd5 <md5>\n"
" (SCP/SFTP) Pass a string containing 32 hexadecimal digits. The\n"
" string should be the 128 bit MD5 checksum of the remote host's\n"
" public key, curl will refuse the connection with the host unless\n"
+, stdout);
+ fputs(
" the md5sums match. (Added in 7.17.1)\n"
"\n"
" --ignore-content-length\n"
" (HTTP) Ignore the Content-Length header. This is particularly\n"
-, stdout);
- fputs(
" useful for servers running Apache 1.x, which will report incor-\n"
" rect Content-Length for files larger than 2 gigabytes.\n"
"\n"
" -i, --include\n"
" (HTTP) Include the HTTP-header in the output. The HTTP-header\n"
" includes things like server-name, date of the document, HTTP-\n"
+, stdout);
+ fputs(
" version and more...\n"
"\n"
" -I, --head\n"
" (HTTP/FTP/FILE) Fetch the HTTP-header only! HTTP-servers feature\n"
-, stdout);
- fputs(
" the command HEAD which this uses to get nothing but the header\n"
" of a document. When used on an FTP or FILE file, curl displays\n"
" the file size and last modification time only.\n"
"\n"
" --interface <name>\n"
" Perform an operation using a specified interface. You can enter\n"
+, stdout);
+ fputs(
" interface name, IP address or host name. An example could look\n"
" like:\n"
"\n"
" curl --interface eth0:1 http://www.netscape.com/\n"
"\n"
-, stdout);
- fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" -j, --junk-session-cookies\n"
" (HTTP) When curl is told to read cookies from a given file, this\n"
" option will make it discard all \"session cookies\". This will\n"
+, stdout);
+ fputs(
" basically have the same effect as if a new session is started.\n"
" Typical browsers always discard session cookies when they're\n"
" closed down.\n"
"\n"
" -J, --remote-header-name\n"
-, stdout);
- fputs(
" (HTTP) This option tells the -O, --remote-name option to use the\n"
" server-specified Content-Disposition filename instead of\n"
" extracting a filename from the URL.\n"
"\n"
+, stdout);
+ fputs(
" There's no attempt to decode %-sequences (yet) in the provided\n"
" file name, so this option may provide you with rather unexpected\n"
" file names.\n"
"\n"
" -k, --insecure\n"
" (SSL) This option explicitly allows curl to perform \"insecure\"\n"
-, stdout);
- fputs(
" SSL connections and transfers. All SSL connections are attempted\n"
" to be made secure by using the CA certificate bundle installed\n"
+, stdout);
+ fputs(
" by default. This makes all connections considered \"insecure\"\n"
" fail unless -k, --insecure is used.\n"
"\n"
@@ -1156,73 +1101,73 @@ void hugehelp(void)
" http://curl.haxx.se/docs/sslcerts.html\n"
"\n"
" -K, --config <config file>\n"
-, stdout);
- fputs(
" Specify which config file to read curl arguments from. The con-\n"
" fig file is a text file in which command line arguments can be\n"
+, stdout);
+ fputs(
" written which then will be used as if they were written on the\n"
" actual command line.\n"
"\n"
" Options and their parameters must be specified on the same con-\n"
" fig file line, separated by whitespace, colon, or the equals\n"
-, stdout);
- fputs(
" sign. Long option names can optionally be given in the config\n"
" file without the initial double dashes and if so, the colon or\n"
+, stdout);
+ fputs(
" equals characters can be used as separators. If the option is\n"
" specified with one or two dashes, there can be no colon or\n"
" equals character between the option and its parameter.\n"
"\n"
" If the parameter is to contain whitespace, the parameter must be\n"
-, stdout);
- fputs(
" enclosed within quotes. Within double quotes, the following\n"
" escape sequences are available: \\\\, \\\", \\t, \\n, \\r and \\v. A\n"
+, stdout);
+ fputs(
" backslash preceding any other letter is ignored. If the first\n"
" column of a config line is a '#' character, the rest of the line\n"
" will be treated as a comment. Only write one option per physical\n"
" line in the config file.\n"
"\n"
-, stdout);
- fputs(
" Specify the filename to -K, --config as '-' to make curl read\n"
" the file from stdin.\n"
"\n"
" Note that to be able to specify a URL in the config file, you\n"
+, stdout);
+ fputs(
" need to specify it using the --url option, and not by simply\n"
" writing the URL on its own line. So, it could look similar to\n"
" this:\n"
"\n"
" url = \"http://curl.haxx.se/docs/\"\n"
"\n"
-, stdout);
- fputs(
" When curl is invoked, it always (unless -q is used) checks for a\n"
" default config file and uses it if found. The default config\n"
" file is checked for in the following places in this order:\n"
"\n"
+, stdout);
+ fputs(
" 1) curl tries to find the \"home dir\": It first checks for the\n"
" CURL_HOME and then the HOME environment variables. Failing that,\n"
" it uses getpwuid() on Unix-like systems (which returns the home\n"
-, stdout);
- fputs(
" dir given the current user in your system). On Windows, it then\n"
" checks for the APPDATA variable, or as a last resort the '%USER-\n"
" PROFILE%\\Application Data'.\n"
"\n"
+, stdout);
+ fputs(
" 2) On windows, if there is no _curlrc file in the home dir, it\n"
" checks for one in the same dir the curl executable is placed. On\n"
" Unix-like systems, it will simply try to load .curlrc from the\n"
" determined home dir.\n"
"\n"
-, stdout);
- fputs(
" # --- Example file ---\n"
" # this is a comment\n"
" url = \"curl.haxx.se\"\n"
" output = \"curlhere.html\"\n"
" user-agent = \"superagent/1.0\"\n"
"\n"
+, stdout);
+ fputs(
" # and fetch another URL too\n"
" url = \"curl.haxx.se/docs/manpage.html\"\n"
" -O\n"
@@ -1232,19 +1177,19 @@ void hugehelp(void)
" This option can be used multiple times to load multiple config\n"
" files.\n"
"\n"
-, stdout);
- fputs(
" --keepalive-time <seconds>\n"
" This option sets the time a connection needs to remain idle\n"
+, stdout);
+ fputs(
" before sending keepalive probes and the time between individual\n"
" keepalive probes. It is currently effective on operating systems\n"
" offering the TCP_KEEPIDLE and TCP_KEEPINTVL socket options\n"
" (meaning Linux, recent AIX, HP-UX and more). This option has no\n"
" effect if --no-keepalive is used. (Added in 7.18.0)\n"
"\n"
+" If this option is used several times, the last one will be used.\n"
, stdout);
fputs(
-" If this option is used several times, the last one will be used.\n"
" If unspecified, the option defaults to 60 seconds.\n"
"\n"
" --key <key>\n"
@@ -1253,11 +1198,11 @@ void hugehelp(void)
" tries the following candidates in order: '~/.ssh/id_rsa',\n"
" '~/.ssh/id_dsa', './id_rsa', './id_dsa'.\n"
"\n"
-, stdout);
- fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" --key-type <type>\n"
+, stdout);
+ fputs(
" (SSL) Private key file type. Specify which type your --key pro-\n"
" vided private key is. DER, PEM, and ENG are supported. If not\n"
" specified, PEM is assumed.\n"
@@ -1266,9 +1211,9 @@ void hugehelp(void)
"\n"
" --krb <level>\n"
" (FTP) Enable Kerberos authentication and use. The level must be\n"
+" entered and should be one of 'clear', 'safe', 'confidential', or\n"
, stdout);
fputs(
-" entered and should be one of 'clear', 'safe', 'confidential', or\n"
" 'private'. Should you use a level that is not one of these,\n"
" 'private' will instead be used.\n"
"\n"
@@ -1279,18 +1224,18 @@ void hugehelp(void)
" If this option is used several times, the last one will be used.\n"
"\n"
" -l, --list-only\n"
+" (FTP) When listing an FTP directory, this switch forces a name-\n"
, stdout);
fputs(
-" (FTP) When listing an FTP directory, this switch forces a name-\n"
" only view. This is especially useful if the user wants to\n"
" machine-parse the contents of an FTP directory since the normal\n"
" directory view doesn't use a standard look or format. When used\n"
" like this, the option causes a NLST command to be sent to the\n"
" server instead of LIST.\n"
"\n"
+" Note: Some FTP servers list only files in their response to\n"
, stdout);
fputs(
-" Note: Some FTP servers list only files in their response to\n"
" NLST; they do not include sub-directories and symbolic links.\n"
"\n"
" (POP3) When retrieving a specific email from POP3, this switch\n"
@@ -1298,9 +1243,9 @@ void hugehelp(void)
" particularly useful if the user wants to see if a specific mes-\n"
" sage id exists on the server and what size it is.\n"
"\n"
+" Note: When combined with -X, --request <command>, this option\n"
, stdout);
fputs(
-" Note: When combined with -X, --request <command>, this option\n"
" can be used to send an UIDL command instead, so the user may use\n"
" the email's unique identifier rather than it's message id to\n"
" make the request. (Added in 7.21.5)\n"
@@ -1308,27 +1253,27 @@ void hugehelp(void)
" -L, --location\n"
" (HTTP/HTTPS) If the server reports that the requested page has\n"
" moved to a different location (indicated with a Location: header\n"
+" and a 3XX response code), this option will make curl redo the\n"
, stdout);
fputs(
-" and a 3XX response code), this option will make curl redo the\n"
" request on the new place. If used together with -i, --include or\n"
" -I, --head, headers from all requested pages will be shown. When\n"
" authentication is used, curl only sends its credentials to the\n"
" initial host. If a redirect takes curl to a different host, it\n"
" won't be able to intercept the user+password. See also --loca-\n"
+" tion-trusted on how to change this. You can limit the amount of\n"
, stdout);
fputs(
-" tion-trusted on how to change this. You can limit the amount of\n"
" redirects to follow by using the --max-redirs option.\n"
"\n"
" When curl follows a redirect and the request is not a plain GET\n"
" (for example POST or PUT), it will do the following request with\n"
" a GET if the HTTP response was 301, 302, or 303. If the response\n"
" code was any other 3xx code, curl will re-send the following\n"
-, stdout);
- fputs(
" request using the same unmodified method.\n"
"\n"
+, stdout);
+ fputs(
" You can tell curl to not change the non-GET request method to\n"
" GET after a 30x response by using the dedicated options for\n"
" that: --post301, --post302 and -post303.\n"
@@ -1336,10 +1281,10 @@ void hugehelp(void)
" --libcurl <file>\n"
" Append this option to any ordinary curl command line, and you\n"
" will get a libcurl-using C source code written to the file that\n"
-, stdout);
- fputs(
" does the equivalent of what your command-line operation does!\n"
"\n"
+, stdout);
+ fputs(
" If this option is used several times, the last given file name\n"
" will be used. (Added in 7.16.1)\n"
"\n"
@@ -1347,19 +1292,19 @@ void hugehelp(void)
" Specify the maximum transfer rate you want curl to use - for\n"
" both downloads and uploads. This feature is useful if you have a\n"
" limited pipe and you'd like your transfer not to use your entire\n"
-, stdout);
- fputs(
" bandwidth. To make it slower than it otherwise would be.\n"
"\n"
+, stdout);
+ fputs(
" The given speed is measured in bytes/second, unless a suffix is\n"
" appended. Appending 'k' or 'K' will count the number as kilo-\n"
" bytes, 'm' or M' makes it megabytes, while 'g' or 'G' makes it\n"
" gigabytes. Examples: 200K, 3m and 1G.\n"
"\n"
" The given rate is the average speed counted during the entire\n"
+" transfer. It means that curl might use higher transfer speeds in\n"
, stdout);
fputs(
-" transfer. It means that curl might use higher transfer speeds in\n"
" short bursts, but over time it uses no more than the given rate.\n"
" If you also use the -Y, --speed-limit option, that option will\n"
" take precedence and might cripple the rate-limiting slightly, to\n"
@@ -1368,9 +1313,9 @@ void hugehelp(void)
" If this option is used several times, the last one will be used.\n"
"\n"
" --local-port <num>[-num]\n"
+" Set a preferred number or range of local port numbers to use for\n"
, stdout);
fputs(
-" Set a preferred number or range of local port numbers to use for\n"
" the connection(s). Note that port numbers by nature are a\n"
" scarce resource that will be busy at times so setting this range\n"
" to something too narrow might cause unnecessary connection setup\n"
@@ -1378,18 +1323,18 @@ void hugehelp(void)
"\n"
" --location-trusted\n"
" (HTTP/HTTPS) Like -L, --location, but will allow sending the\n"
+" name + password to all hosts that the site may redirect to. This\n"
, stdout);
fputs(
-" name + password to all hosts that the site may redirect to. This\n"
" may or may not introduce a security breach if the site redirects\n"
" you to a site to which you'll send your authentication info\n"
" (which is plaintext in the case of HTTP Basic authentication).\n"
"\n"
" -m, --max-time <seconds>\n"
" Maximum time in seconds that you allow the whole operation to\n"
+" take. This is useful for preventing your batch jobs from hang-\n"
, stdout);
fputs(
-" take. This is useful for preventing your batch jobs from hang-\n"
" ing for hours due to slow networks or links going down. Since\n"
" 7.32.0, this option accepts decimal values, but the actual time-\n"
" out will decrease in accuracy as the specified timeout increases\n"
@@ -1397,9 +1342,9 @@ void hugehelp(void)
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
+" --login-options <options>\n"
, stdout);
fputs(
-" --login-options <options>\n"
" Specify the login options to use during server authentication.\n"
"\n"
" You can use the login options to specify protocol specific\n"
@@ -1505,13 +1450,13 @@ void hugehelp(void)
" Makes curl scan the .netrc (_netrc on Windows) file in the\n"
" user's home directory for login name and password. This is typi-\n"
" cally used for FTP on Unix. If used with HTTP, curl will enable\n"
-" user authentication. See netrc(5) ftp(1) for details on the file\n"
-" format. Curl will not complain if that file doesn't have the\n"
-" right permissions (it should not be either world- or group-read-\n"
+" user authentication. See netrc(4) or ftp(1) for details on the\n"
+" file format. Curl will not complain if that file doesn't have\n"
+" the right permissions (it should not be either world- or group-\n"
, stdout);
fputs(
-" able). The environment variable \"HOME\" is used to find the home\n"
-" directory.\n"
+" readable). The environment variable \"HOME\" is used to find the\n"
+" home directory.\n"
"\n"
" A quick and very simple example of how to setup a .netrc to\n"
" allow curl to FTP to the machine host.domain.com with user name\n"
@@ -1743,79 +1688,70 @@ void hugehelp(void)
fputs(
" for the control connection\n"
"\n"
-" If this option is used several times, the last one will be used.\n"
-" Disable the use of PORT with --ftp-pasv. Disable the attempt to\n"
-" use the EPRT command instead of PORT by using --disable-eprt.\n"
-" EPRT is really PORT++.\n"
+" If this option is used several times, the last one will be used. Dis-\n"
+" able the use of PORT with --ftp-pasv. Disable the attempt to use the\n"
+" EPRT command instead of PORT by using --disable-eprt. EPRT is really\n"
+" PORT++.\n"
"\n"
-" Starting in 7.19.5, you can append \":[start]-[end]\" to the right\n"
-" of the address, to tell curl what TCP port range to use. That\n"
+" Starting in 7.19.5, you can append \":[start]-[end]\" to the right of the\n"
+" address, to tell curl what TCP port range to use. That means you spec-\n"
, stdout);
fputs(
-" means you specify a port range, from a lower to a higher number.\n"
-" A single number works as well, but do note that it increases the\n"
-" risk of failure since the port may not be available.\n"
+" ify a port range, from a lower to a higher number. A single number\n"
+" works as well, but do note that it increases the risk of failure since\n"
+" the port may not be available.\n"
"\n"
" --pass <phrase>\n"
" (SSL/SSH) Passphrase for the private key\n"
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
-" --path-as-is\n"
-" Tell curl to not handle sequences of /../ or /./ in the given\n"
-, stdout);
- fputs(
-" URL path. Normally curl will squash or merge them according to\n"
-" standards but with this option set you tell it not to do that.\n"
-"\n"
-" (Added in 7.42.0)\n"
-"\n"
" --post301\n"
" (HTTP) Tells curl to respect RFC 2616/10.3.2 and not convert\n"
-" POST requests into GET requests when following a 301 redirect-\n"
-" ion. The non-RFC behaviour is ubiquitous in web browsers, so\n"
, stdout);
fputs(
+" POST requests into GET requests when following a 301 redirect-\n"
+" ion. The non-RFC behaviour is ubiquitous in web browsers, so\n"
" curl does the conversion by default to maintain consistency.\n"
" However, a server may require a POST to remain a POST after such\n"
" a redirection. This option is meaningful only when using -L,\n"
" --location (Added in 7.17.1)\n"
"\n"
" --post302\n"
-" (HTTP) Tells curl to respect RFC 2616/10.3.2 and not convert\n"
-" POST requests into GET requests when following a 302 redirect-\n"
, stdout);
fputs(
+" (HTTP) Tells curl to respect RFC 2616/10.3.2 and not convert\n"
+" POST requests into GET requests when following a 302 redirect-\n"
" ion. The non-RFC behaviour is ubiquitous in web browsers, so\n"
" curl does the conversion by default to maintain consistency.\n"
" However, a server may require a POST to remain a POST after such\n"
" a redirection. This option is meaningful only when using -L,\n"
+, stdout);
+ fputs(
" --location (Added in 7.19.1)\n"
"\n"
" --post303\n"
" (HTTP) Tells curl to respect RFC 2616/10.3.2 and not convert\n"
-, stdout);
- fputs(
" POST requests into GET requests when following a 303 redirect-\n"
" ion. The non-RFC behaviour is ubiquitous in web browsers, so\n"
" curl does the conversion by default to maintain consistency.\n"
" However, a server may require a POST to remain a POST after such\n"
+, stdout);
+ fputs(
" a redirection. This option is meaningful only when using -L,\n"
" --location (Added in 7.26.0)\n"
"\n"
" --proto <protocols>\n"
-, stdout);
- fputs(
" Tells curl to use the listed protocols for its initial\n"
" retrieval. Protocols are evaluated left to right, are comma sep-\n"
" arated, and are each a protocol name or 'all', optionally pre-\n"
" fixed by zero or more modifiers. Available modifiers are:\n"
"\n"
+, stdout);
+ fputs(
" + Permit this protocol in addition to protocols already permit-\n"
" ted (this is the default if no modifier is used).\n"
"\n"
-, stdout);
- fputs(
" - Deny this protocol, removing it from the list of protocols\n"
" already permitted.\n"
"\n"
@@ -1823,13 +1759,13 @@ void hugehelp(void)
" ted), though subject to later modification by subsequent\n"
" entries in the comma separated list.\n"
"\n"
+, stdout);
+ fputs(
" For example:\n"
"\n"
" --proto -ftps uses the default protocols, but disables ftps\n"
"\n"
" --proto -all,https,+http\n"
-, stdout);
- fputs(
" only enables http and https\n"
"\n"
" --proto =http,https\n"
@@ -1837,11 +1773,11 @@ void hugehelp(void)
"\n"
" Unknown protocols produce a warning. This allows scripts to\n"
" safely rely on being able to disable potentially dangerous pro-\n"
+, stdout);
+ fputs(
" tocols, without relying upon support for that protocol being\n"
" built into curl to avoid an error.\n"
"\n"
-, stdout);
- fputs(
" This option can be used multiple times, in which case the effect\n"
" is the same as concatenating the protocols into one instance of\n"
" the option.\n"
@@ -1850,23 +1786,23 @@ void hugehelp(void)
"\n"
" --proto-redir <protocols>\n"
" Tells curl to use the listed protocols after a redirect. See\n"
+, stdout);
+ fputs(
" --proto for how protocols are represented.\n"
"\n"
" (Added in 7.20.2)\n"
"\n"
" --proxy-anyauth\n"
-, stdout);
- fputs(
" Tells curl to pick a suitable authentication method when commu-\n"
" nicating with the given proxy. This might cause an extra\n"
" request/response round-trip. (Added in 7.13.2)\n"
"\n"
" --proxy-basic\n"
" Tells curl to use HTTP Basic authentication when communicating\n"
-" with the given proxy. Use --basic for enabling HTTP Basic with a\n"
-" remote host. Basic is the default authentication method curl\n"
, stdout);
fputs(
+" with the given proxy. Use --basic for enabling HTTP Basic with a\n"
+" remote host. Basic is the default authentication method curl\n"
" uses with proxies.\n"
"\n"
" --proxy-digest\n"
@@ -1875,10 +1811,10 @@ void hugehelp(void)
" a remote host.\n"
"\n"
" --proxy-negotiate\n"
-" Tells curl to use HTTP Negotiate (SPNEGO) authentication when\n"
-" communicating with the given proxy. Use --negotiate for enabling\n"
, stdout);
fputs(
+" Tells curl to use HTTP Negotiate (SPNEGO) authentication when\n"
+" communicating with the given proxy. Use --negotiate for enabling\n"
" HTTP Negotiate (SPNEGO) with a remote host. (Added in 7.17.1)\n"
"\n"
" --proxy-ntlm\n"
@@ -1886,119 +1822,110 @@ void hugehelp(void)
" with the given proxy. Use --ntlm for enabling NTLM with a remote\n"
" host.\n"
"\n"
-" --proxy-service-name <servicename>\n"
-" This option allows you to change the service name for proxy\n"
-" negotiation.\n"
-"\n"
+" --proxy1.0 <proxyhost[:port]>\n"
, stdout);
fputs(
-" Examples: --proxy-negotiate proxy-name --proxy-service-name\n"
-" sockd would use sockd/proxy-name. (Added in 7.43.0).\n"
-"\n"
-" --proxy1.0 <proxyhost[:port]>\n"
" Use the specified HTTP 1.0 proxy. If the port number is not\n"
" specified, it is assumed at port 1080.\n"
"\n"
" The only difference between this and the HTTP proxy option (-x,\n"
" --proxy), is that attempts to use CONNECT through the proxy will\n"
-, stdout);
- fputs(
" specify an HTTP 1.0 protocol instead of the default HTTP 1.1.\n"
"\n"
" --pubkey <key>\n"
" (SSH) Public key file name. Allows you to provide your public\n"
+, stdout);
+ fputs(
" key in this separate file.\n"
"\n"
" If this option is used several times, the last one will be used.\n"
" (As of 7.39.0, curl attempts to automatically extract the public\n"
" key from the private key file, so passing this option is gener-\n"
-, stdout);
- fputs(
" ally not required. Note that this public key extraction requires\n"
" libcurl to be linked against a copy of libssh2 1.2.8 or higher\n"
" that is itself linked against OpenSSL.)\n"
"\n"
+, stdout);
+ fputs(
" -q If used as the first parameter on the command line, the curlrc\n"
" config file will not be read and used. See the -K, --config for\n"
" details on the default config file search path.\n"
"\n"
" -Q, --quote <command>\n"
-, stdout);
- fputs(
" (FTP/SFTP) Send an arbitrary command to the remote FTP or SFTP\n"
" server. Quote commands are sent BEFORE the transfer takes place\n"
" (just after the initial PWD command in an FTP transfer, to be\n"
+, stdout);
+ fputs(
" exact). To make commands take place after a successful transfer,\n"
" prefix them with a dash '-'. To make commands be sent after\n"
" curl has changed the working directory, just before the transfer\n"
-, stdout);
- fputs(
" command(s), prefix the command with a '+' (this is only sup-\n"
" ported for FTP). You may specify any number of commands. If the\n"
" server returns failure for one of the commands, the entire oper-\n"
+, stdout);
+ fputs(
" ation will be aborted. You must send syntactically correct FTP\n"
" commands as RFC 959 defines to FTP servers, or one of the com-\n"
" mands listed below to SFTP servers. This option can be used\n"
-, stdout);
- fputs(
" multiple times. When speaking to an FTP server, prefix the com-\n"
" mand with an asterisk (*) to make curl continue even if the com-\n"
" mand fails as by default curl will stop at first failure.\n"
"\n"
+, stdout);
+ fputs(
" SFTP is a binary protocol. Unlike for FTP, curl interprets SFTP\n"
" quote commands itself before sending them to the server. File\n"
" names may be quoted shell-style to embed spaces or special char-\n"
-, stdout);
- fputs(
" acters. Following is the list of all supported SFTP quote com-\n"
" mands:\n"
"\n"
" chgrp group file\n"
" The chgrp command sets the group ID of the file named by\n"
+, stdout);
+ fputs(
" the file operand to the group ID specified by the group\n"
" operand. The group operand is a decimal integer group ID.\n"
"\n"
" chmod mode file\n"
" The chmod command modifies the file mode bits of the\n"
-, stdout);
- fputs(
" specified file. The mode operand is an octal integer mode\n"
" number.\n"
"\n"
" chown user file\n"
" The chown command sets the owner of the file named by the\n"
+, stdout);
+ fputs(
" file operand to the user ID specified by the user oper-\n"
" and. The user operand is a decimal integer user ID.\n"
"\n"
" ln source_file target_file\n"
" The ln and symlink commands create a symbolic link at the\n"
-, stdout);
- fputs(
" target_file location pointing to the source_file loca-\n"
" tion.\n"
"\n"
" mkdir directory_name\n"
" The mkdir command creates the directory named by the\n"
+, stdout);
+ fputs(
" directory_name operand.\n"
"\n"
" pwd The pwd command returns the absolute pathname of the cur-\n"
" rent working directory.\n"
"\n"
" rename source target\n"
-, stdout);
- fputs(
" The rename command renames the file or directory named by\n"
" the source operand to the destination path named by the\n"
" target operand.\n"
"\n"
" rm file\n"
+, stdout);
+ fputs(
" The rm command removes the file specified by the file op-\n"
" erand.\n"
"\n"
" rmdir directory\n"
" The rmdir command removes the directory entry specified\n"
-, stdout);
- fputs(
" by the directory operand, provided it is empty.\n"
"\n"
" symlink source_file target_file\n"
@@ -2006,13 +1933,13 @@ void hugehelp(void)
"\n"
" -r, --range <range>\n"
" (HTTP/FTP/SFTP/FILE) Retrieve a byte range (i.e a partial docu-\n"
+, stdout);
+ fputs(
" ment) from a HTTP/1.1, FTP or SFTP server or a local FILE.\n"
" Ranges can be specified in a number of ways.\n"
"\n"
" 0-499 specifies the first 500 bytes\n"
"\n"
-, stdout);
- fputs(
" 500-999 specifies the second 500 bytes\n"
"\n"
" -500 specifies the last 500 bytes\n"
@@ -2022,36 +1949,36 @@ void hugehelp(void)
" 0-0,-1 specifies the first and last byte only(*)(H)\n"
"\n"
" 500-700,600-799\n"
+, stdout);
+ fputs(
" specifies 300 bytes from offset 500(H)\n"
"\n"
" 100-199,500-599\n"
" specifies two separate 100-byte ranges(*)(H)\n"
"\n"
-, stdout);
- fputs(
-" (*) = NOTE that this will cause the server to reply with a mul-\n"
-" tipart response!\n"
-"\n"
-" Only digit characters (0-9) are valid in the 'start' and 'stop'\n"
-" fields of the 'start-stop' range syntax. If a non-digit charac-\n"
-" ter is given in the range, the server's response will be unspec-\n"
-" ified, depending on the server's configuration.\n"
+" (*) = NOTE that this will cause the server to reply with a multipart\n"
+" response!\n"
"\n"
-" You should also be aware that many HTTP/1.1 servers do not have\n"
+" Only digit characters (0-9) are valid in the 'start' and 'stop' fields\n"
+" of the 'start-stop' range syntax. If a non-digit character is given in\n"
+" the range, the server's response will be unspecified, depending on the\n"
, stdout);
fputs(
-" this feature enabled, so that when you attempt to get a range,\n"
-" you'll instead get the whole document.\n"
+" server's configuration.\n"
"\n"
-" FTP and SFTP range downloads only support the simple 'start-\n"
-" stop' syntax (optionally with one of the numbers omitted). FTP\n"
-" use depends on the extended FTP command SIZE.\n"
+" You should also be aware that many HTTP/1.1 servers do not have this\n"
+" feature enabled, so that when you attempt to get a range, you'll\n"
+" instead get the whole document.\n"
"\n"
-" If this option is used several times, the last one will be used.\n"
+" FTP and SFTP range downloads only support the simple 'start-stop' syn-\n"
+" tax (optionally with one of the numbers omitted). FTP use depends on\n"
+" the extended FTP command SIZE.\n"
+"\n"
+" If this option is used several times, the last one will be used.\n"
"\n"
-" -R, --remote-time\n"
, stdout);
fputs(
+" -R, --remote-time\n"
" When used, this will make curl attempt to figure out the time-\n"
" stamp of the remote file, and if that is available make the\n"
" local file get that same timestamp.\n"
@@ -2153,151 +2080,138 @@ void hugehelp(void)
" Enable initial response in SASL authentication. (Added in\n"
" 7.31.0)\n"
"\n"
-" --service-name <servicename>\n"
-" This option allows you to change the service name for SPNEGO.\n"
-"\n"
-" Examples: --negotiate --service-name sockd would use\n"
-, stdout);
- fputs(
-" sockd/server-name. (Added in 7.43.0).\n"
-"\n"
" -S, --show-error\n"
-" When used with -s it makes curl show an error message if it\n"
+" When used with -s it makes curl show an error message if it\n"
" fails.\n"
"\n"
-" --ssl (FTP, POP3, IMAP, SMTP) Try to use SSL/TLS for the connection.\n"
+" --ssl (FTP, POP3, IMAP, SMTP) Try to use SSL/TLS for the connection.\n"
+, stdout);
+ fputs(
" Reverts to a non-secure connection if the server doesn't support\n"
-" SSL/TLS. See also --ftp-ssl-control and --ssl-reqd for differ-\n"
+" SSL/TLS. See also --ftp-ssl-control and --ssl-reqd for differ-\n"
" ent levels of encryption required. (Added in 7.20.0)\n"
"\n"
-, stdout);
- fputs(
-" This option was formerly known as --ftp-ssl (Added in 7.11.0).\n"
-" That option name can still be used but will be removed in a\n"
+" This option was formerly known as --ftp-ssl (Added in 7.11.0).\n"
+" That option name can still be used but will be removed in a\n"
" future version.\n"
"\n"
" --ssl-reqd\n"
-" (FTP, POP3, IMAP, SMTP) Require SSL/TLS for the connection.\n"
+, stdout);
+ fputs(
+" (FTP, POP3, IMAP, SMTP) Require SSL/TLS for the connection.\n"
" Terminates the connection if the server doesn't support SSL/TLS.\n"
" (Added in 7.20.0)\n"
"\n"
-" This option was formerly known as --ftp-ssl-reqd (added in\n"
-, stdout);
- fputs(
-" 7.15.5). That option name can still be used but will be removed\n"
+" This option was formerly known as --ftp-ssl-reqd (added in\n"
+" 7.15.5). That option name can still be used but will be removed\n"
" in a future version.\n"
"\n"
" --ssl-allow-beast\n"
-" (SSL) This option tells curl to not work around a security flaw\n"
-" in the SSL3 and TLS1.0 protocols known as BEAST. If this option\n"
-" isn't used, the SSL layer may use workarounds known to cause\n"
-" interoperability problems with some older SSL implementations.\n"
+" (SSL) This option tells curl to not work around a security flaw\n"
, stdout);
fputs(
+" in the SSL3 and TLS1.0 protocols known as BEAST. If this option\n"
+" isn't used, the SSL layer may use workarounds known to cause\n"
+" interoperability problems with some older SSL implementations.\n"
" WARNING: this option loosens the SSL security, and by using this\n"
" flag you ask for exactly that. (Added in 7.25.0)\n"
"\n"
-" --ssl-no-revoke\n"
-" (WinSSL) This option tells curl to disable certificate revoca-\n"
-" tion checks. WARNING: this option loosens the SSL security, and\n"
-" by using this flag you ask for exactly that. (Added in 7.44.0)\n"
-"\n"
" --socks4 <host[:port]>\n"
+" Use the specified SOCKS4 proxy. If the port number is not speci-\n"
, stdout);
fputs(
-" Use the specified SOCKS4 proxy. If the port number is not speci-\n"
" fied, it is assumed at port 1080. (Added in 7.15.2)\n"
"\n"
-" This option overrides any previous use of -x, --proxy, as they\n"
+" This option overrides any previous use of -x, --proxy, as they\n"
" are mutually exclusive.\n"
"\n"
" Since 7.21.7, this option is superfluous since you can specify a\n"
" socks4 proxy with -x, --proxy using a socks4:// protocol prefix.\n"
-, stdout);
- fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" --socks4a <host[:port]>\n"
+, stdout);
+ fputs(
" Use the specified SOCKS4a proxy. If the port number is not spec-\n"
" ified, it is assumed at port 1080. (Added in 7.18.0)\n"
"\n"
-" This option overrides any previous use of -x, --proxy, as they\n"
+" This option overrides any previous use of -x, --proxy, as they\n"
" are mutually exclusive.\n"
"\n"
" Since 7.21.7, this option is superfluous since you can specify a\n"
-, stdout);
- fputs(
-" socks4a proxy with -x, --proxy using a socks4a:// protocol pre-\n"
+" socks4a proxy with -x, --proxy using a socks4a:// protocol pre-\n"
" fix.\n"
"\n"
+, stdout);
+ fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" --socks5-hostname <host[:port]>\n"
-" Use the specified SOCKS5 proxy (and let the proxy resolve the\n"
-" host name). If the port number is not specified, it is assumed\n"
+" Use the specified SOCKS5 proxy (and let the proxy resolve the\n"
+" host name). If the port number is not specified, it is assumed\n"
" at port 1080. (Added in 7.18.0)\n"
"\n"
-, stdout);
- fputs(
-" This option overrides any previous use of -x, --proxy, as they\n"
+" This option overrides any previous use of -x, --proxy, as they\n"
" are mutually exclusive.\n"
"\n"
+, stdout);
+ fputs(
" Since 7.21.7, this option is superfluous since you can specify a\n"
" socks5 hostname proxy with -x, --proxy using a socks5h:// proto-\n"
" col prefix.\n"
"\n"
" If this option is used several times, the last one will be used.\n"
-" (This option was previously wrongly documented and used as\n"
-, stdout);
- fputs(
+" (This option was previously wrongly documented and used as\n"
" --socks without the number appended.)\n"
"\n"
" --socks5 <host[:port]>\n"
-" Use the specified SOCKS5 proxy - but resolve the host name\n"
-" locally. If the port number is not specified, it is assumed at\n"
+, stdout);
+ fputs(
+" Use the specified SOCKS5 proxy - but resolve the host name\n"
+" locally. If the port number is not specified, it is assumed at\n"
" port 1080.\n"
"\n"
-" This option overrides any previous use of -x, --proxy, as they\n"
+" This option overrides any previous use of -x, --proxy, as they\n"
" are mutually exclusive.\n"
"\n"
" Since 7.21.7, this option is superfluous since you can specify a\n"
+" socks5 proxy with -x, --proxy using a socks5:// protocol prefix.\n"
, stdout);
fputs(
-" socks5 proxy with -x, --proxy using a socks5:// protocol prefix.\n"
" If this option is used several times, the last one will be used.\n"
-" (This option was previously wrongly documented and used as\n"
+" (This option was previously wrongly documented and used as\n"
" --socks without the number appended.)\n"
"\n"
-" This option (as well as --socks4) does not work with IPV6, FTPS\n"
+" This option (as well as --socks4) does not work with IPV6, FTPS\n"
" or LDAP.\n"
"\n"
" --socks5-gssapi-service <servicename>\n"
-, stdout);
- fputs(
" The default service name for a socks server is rcmd/server-fqdn.\n"
" This option allows you to change it.\n"
"\n"
-" Examples: --socks5 proxy-name --socks5-gssapi-service sockd\n"
-" would use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-\n"
-" service sockd/real-name would use sockd/real-name for cases\n"
-" where the proxy-name does not match the principal name. (Added\n"
+, stdout);
+ fputs(
+" Examples: --socks5 proxy-name --socks5-gssapi-service sockd\n"
+" would use sockd/proxy-name --socks5 proxy-name --socks5-gssapi-\n"
+" service sockd/real-name would use sockd/real-name for cases\n"
+" where the proxy-name does not match the principal name. (Added\n"
" in 7.19.4).\n"
"\n"
+" --socks5-gssapi-nec\n"
+" As part of the GSS-API negotiation a protection mode is negoti-\n"
, stdout);
fputs(
-" --socks5-gssapi-nec\n"
-" As part of the GSS-API negotiation a protection mode is negoti-\n"
-" ated. RFC 1961 says in section 4.3/4.4 it should be protected,\n"
-" but the NEC reference implementation does not. The option\n"
-" --socks5-gssapi-nec allows the unprotected exchange of the pro-\n"
+" ated. RFC 1961 says in section 4.3/4.4 it should be protected,\n"
+" but the NEC reference implementation does not. The option\n"
+" --socks5-gssapi-nec allows the unprotected exchange of the pro-\n"
" tection mode negotiation. (Added in 7.19.4).\n"
"\n"
" --stderr <file>\n"
-, stdout);
- fputs(
-" Redirect all writes to stderr to the specified file instead. If\n"
+" Redirect all writes to stderr to the specified file instead. If\n"
" the file name is a plain '-', it is instead written to stdout.\n"
"\n"
+, stdout);
+ fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" -t, --telnet-option <OPT=val>\n"
@@ -2307,46 +2221,46 @@ void hugehelp(void)
"\n"
" XDISPLOC=<X display> Sets the X display location.\n"
"\n"
-, stdout);
- fputs(
" NEW_ENV=<var,val> Sets an environment variable.\n"
"\n"
" -T, --upload-file <file>\n"
-" This transfers the specified local file to the remote URL. If\n"
+" This transfers the specified local file to the remote URL. If\n"
+, stdout);
+ fputs(
" there is no file part in the specified URL, Curl will append the\n"
" local file name. NOTE that you must use a trailing / on the last\n"
-" directory to really prove to Curl that there is no file name or\n"
+" directory to really prove to Curl that there is no file name or\n"
" curl will think that your last directory name is the remote file\n"
-, stdout);
- fputs(
" name to use. That will most likely cause the upload operation to\n"
" fail. If this is used on an HTTP(S) server, the PUT command will\n"
" be used.\n"
"\n"
-" Use the file name \"-\" (a single dash) to use stdin instead of a\n"
-" given file. Alternately, the file name \".\" (a single period)\n"
-" may be specified instead of \"-\" to use stdin in non-blocking\n"
-" mode to allow reading server output while stdin is being\n"
, stdout);
fputs(
+" Use the file name \"-\" (a single dash) to use stdin instead of a\n"
+" given file. Alternately, the file name \".\" (a single period)\n"
+" may be specified instead of \"-\" to use stdin in non-blocking\n"
+" mode to allow reading server output while stdin is being\n"
" uploaded.\n"
"\n"
" You can specify one -T for each URL on the command line. Each -T\n"
+, stdout);
+ fputs(
" + URL pair specifies what to upload and to where. curl also sup-\n"
" ports \"globbing\" of the -T argument, meaning that you can upload\n"
-" multiple files to a single URL by using the same URL globbing\n"
+" multiple files to a single URL by using the same URL globbing\n"
" style supported in the URL, like this:\n"
"\n"
" curl -T \"{file1,file2}\" http://www.uploadtothissite.com\n"
"\n"
" or even\n"
"\n"
-, stdout);
- fputs(
" curl -T \"img[1-1000].png\" ftp://ftp.picturemania.com/upload/\n"
"\n"
" --tcp-nodelay\n"
-" Turn on the TCP_NODELAY option. See the curl_easy_setopt(3) man\n"
+, stdout);
+ fputs(
+" Turn on the TCP_NODELAY option. See the curl_easy_setopt(3) man\n"
" page for details about this option. (Added in 7.11.2)\n"
"\n"
" --tftp-blksize <value>\n"
@@ -2354,37 +2268,37 @@ void hugehelp(void)
" size that curl will try to use when transferring data to or from\n"
" a TFTP server. By default 512 bytes will be used.\n"
"\n"
-, stdout);
- fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
+, stdout);
+ fputs(
" (Added in 7.20.0)\n"
"\n"
" --tlsauthtype <authtype>\n"
-" Set TLS authentication type. Currently, the only supported\n"
-" option is \"SRP\", for TLS-SRP (RFC 5054). If --tlsuser and\n"
-" --tlspassword are specified but --tlsauthtype is not, then this\n"
+" Set TLS authentication type. Currently, the only supported\n"
+" option is \"SRP\", for TLS-SRP (RFC 5054). If --tlsuser and\n"
+" --tlspassword are specified but --tlsauthtype is not, then this\n"
" option defaults to \"SRP\". (Added in 7.21.4)\n"
"\n"
" --tlspassword <password>\n"
+" Set password for use with the TLS authentication method speci-\n"
, stdout);
fputs(
-" Set password for use with the TLS authentication method speci-\n"
-" fied with --tlsauthtype. Requires that --tlsuser also be set.\n"
+" fied with --tlsauthtype. Requires that --tlsuser also be set.\n"
" (Added in 7.21.4)\n"
"\n"
" --tlsuser <user>\n"
-" Set username for use with the TLS authentication method speci-\n"
-" fied with --tlsauthtype. Requires that --tlspassword also be\n"
+" Set username for use with the TLS authentication method speci-\n"
+" fied with --tlsauthtype. Requires that --tlspassword also be\n"
" set. (Added in 7.21.4)\n"
"\n"
" --tlsv1.0\n"
-, stdout);
- fputs(
" (SSL) Forces curl to use TLS version 1.0 when negotiating with a\n"
" remote TLS server. (Added in 7.34.0)\n"
"\n"
" --tlsv1.1\n"
+, stdout);
+ fputs(
" (SSL) Forces curl to use TLS version 1.1 when negotiating with a\n"
" remote TLS server. (Added in 7.34.0)\n"
"\n"
@@ -2393,44 +2307,42 @@ void hugehelp(void)
" remote TLS server. (Added in 7.34.0)\n"
"\n"
" --tr-encoding\n"
-, stdout);
- fputs(
" (HTTP) Request a compressed Transfer-Encoding response using one\n"
-" of the algorithms curl supports, and uncompress the data while\n"
+" of the algorithms curl supports, and uncompress the data while\n"
" receiving it.\n"
"\n"
+, stdout);
+ fputs(
" (Added in 7.21.6)\n"
"\n"
" --trace <file>\n"
-" Enables a full trace dump of all incoming and outgoing data,\n"
+" Enables a full trace dump of all incoming and outgoing data,\n"
" including descriptive information, to the given output file. Use\n"
" \"-\" as filename to have the output sent to stdout.\n"
"\n"
-, stdout);
- fputs(
" This option overrides previous uses of -v, --verbose or --trace-\n"
" ascii.\n"
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
" --trace-ascii <file>\n"
-" Enables a full trace dump of all incoming and outgoing data,\n"
+, stdout);
+ fputs(
+" Enables a full trace dump of all incoming and outgoing data,\n"
" including descriptive information, to the given output file. Use\n"
" \"-\" as filename to have the output sent to stdout.\n"
"\n"
-, stdout);
- fputs(
" This is very similar to --trace, but leaves out the hex part and\n"
-" only shows the ASCII part of the dump. It makes smaller output\n"
+" only shows the ASCII part of the dump. It makes smaller output\n"
" that might be easier to read for untrained humans.\n"
"\n"
+, stdout);
+ fputs(
" This option overrides previous uses of -v, --verbose or --trace.\n"
" If this option is used several times, the last one will be used.\n"
"\n"
" --trace-time\n"
-" Prepends a time stamp to each trace or verbose line that curl\n"
-, stdout);
- fputs(
+" Prepends a time stamp to each trace or verbose line that curl\n"
" displays. (Added in 7.14.0)\n"
"\n"
" --unix-socket <path>\n"
@@ -2438,167 +2350,167 @@ void hugehelp(void)
" the network. (Added in 7.40.0)\n"
"\n"
" -u, --user <user:password>\n"
+, stdout);
+ fputs(
" Specify the user name and password to use for server authentica-\n"
" tion. Overrides -n, --netrc and --netrc-optional.\n"
"\n"
-" If you simply specify the user name, curl will prompt for a\n"
+" If you simply specify the user name, curl will prompt for a\n"
" password.\n"
"\n"
-, stdout);
- fputs(
-" The user name and passwords are split up on the first colon,\n"
-" which makes it impossible to use a colon in the user name with\n"
+" The user name and passwords are split up on the first colon,\n"
+" which makes it impossible to use a colon in the user name with\n"
" this option. The password can, still.\n"
"\n"
-" When using Kerberos V5 with a Windows based server you should\n"
-" include the Windows domain name in the user name, in order for\n"
-" the server to successfully obtain a Kerberos Ticket. If you\n"
, stdout);
fputs(
-" don't then the initial authentication handshake may fail.\n"
+" When using Kerberos V5 with a Windows based server you should\n"
+" include the Windows domain name in the user name, in order for\n"
+" the server to succesfully obtain a Kerberos Ticket. If you don't\n"
+" then the initial authentication handshake may fail.\n"
"\n"
-" When using NTLM, the user name can be specified simply as the\n"
-" user name, without the domain, if there is a single domain and\n"
+" When using NTLM, the user name can be specified simply as the\n"
+" user name, without the domain, if there is a single domain and\n"
+, stdout);
+ fputs(
" forest in your setup for example.\n"
"\n"
-" To specify the domain name use either Down-Level Logon Name or\n"
+" To specify the domain name use either Down-Level Logon Name or\n"
" UPN (User Principal Name) formats. For example, EXAMPLE\\user and\n"
" user@example.com respectively.\n"
"\n"
+" If you use a Windows SSPI-enabled curl binary and perform Ker-\n"
+" beros V5, Negotiate, NTLM or Digest authentication then you can\n"
+" tell curl to select the user name and password from your envi-\n"
, stdout);
fputs(
-" If you use a Windows SSPI-enabled curl binary and perform Ker-\n"
-" beros V5, Negotiate, NTLM or Digest authentication then you can\n"
-" tell curl to select the user name and password from your envi-\n"
" ronment by specifying a single colon with this option: \"-u :\".\n"
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
" -U, --proxy-user <user:password>\n"
-, stdout);
- fputs(
-" Specify the user name and password to use for proxy authentica-\n"
+" Specify the user name and password to use for proxy authentica-\n"
" tion.\n"
"\n"
-" If you use a Windows SSPI-enabled curl binary and do either\n"
-" Negotiate or NTLM authentication then you can tell curl to\n"
+" If you use a Windows SSPI-enabled curl binary and do either\n"
+" Negotiate or NTLM authentication then you can tell curl to\n"
+, stdout);
+ fputs(
" select the user name and password from your environment by spec-\n"
" ifying a single colon with this option: \"-U :\".\n"
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
" --url <URL>\n"
-, stdout);
- fputs(
-" Specify a URL to fetch. This option is mostly handy when you\n"
+" Specify a URL to fetch. This option is mostly handy when you\n"
" want to specify URL(s) in a config file.\n"
"\n"
-" This option may be used any number of times. To control where\n"
-" this URL is written, use the -o, --output or the -O, --remote-\n"
+" This option may be used any number of times. To control where\n"
+, stdout);
+ fputs(
+" this URL is written, use the -o, --output or the -O, --remote-\n"
" name options.\n"
" -v, --verbose\n"
-" Be more verbose/talkative during the operation. Useful for\n"
-" debugging and seeing what's going on \"under the hood\". A line\n"
+" Be more verbose/talkative during the operation. Useful for\n"
+" debugging and seeing what's going on \"under the hood\". A line\n"
+" starting with '>' means \"header data\" sent by curl, '<' means\n"
+" \"header data\" received by curl that is hidden in normal cases,\n"
, stdout);
fputs(
-" starting with '>' means \"header data\" sent by curl, '<' means\n"
-" \"header data\" received by curl that is hidden in normal cases,\n"
-" and a line starting with '*' means additional info provided by\n"
+" and a line starting with '*' means additional info provided by\n"
" curl.\n"
"\n"
-" Note that if you only want HTTP headers in the output, -i,\n"
+" Note that if you only want HTTP headers in the output, -i,\n"
" --include might be the option you're looking for.\n"
"\n"
-" If you think this option still doesn't give you enough details,\n"
-, stdout);
- fputs(
+" If you think this option still doesn't give you enough details,\n"
" consider using --trace or --trace-ascii instead.\n"
"\n"
" This option overrides previous uses of --trace-ascii or --trace.\n"
"\n"
+, stdout);
+ fputs(
" Use -s, --silent to make curl quiet.\n"
"\n"
" -w, --write-out <format>\n"
" Make curl display information on stdout after a completed trans-\n"
-" fer. The format is a string that may contain plain text mixed\n"
-" with any number of variables. The format can be specified as a\n"
+" fer. The format is a string that may contain plain text mixed\n"
+" with any number of variables. The format can be specified as a\n"
+" literal \"string\", or you can have curl read the format from a\n"
+" file with \"@filename\" and to tell curl to read the format from\n"
, stdout);
fputs(
-" literal \"string\", or you can have curl read the format from a\n"
-" file with \"@filename\" and to tell curl to read the format from\n"
" stdin you write \"@-\".\n"
"\n"
-" The variables present in the output format will be substituted\n"
-" by the value or text that curl thinks fit, as described below.\n"
-" All variables are specified as %{variable_name} and to output a\n"
-, stdout);
- fputs(
-" normal % you just write them as %%. You can output a newline by\n"
+" The variables present in the output format will be substituted\n"
+" by the value or text that curl thinks fit, as described below.\n"
+" All variables are specified as %{variable_name} and to output a\n"
+" normal % you just write them as %%. You can output a newline by\n"
" using \\n, a carriage return with \\r and a tab space with \\t.\n"
"\n"
+, stdout);
+ fputs(
" NOTE: The %-symbol is a special symbol in the win32-environment,\n"
-" where all occurrences of % must be doubled when using this\n"
+" where all occurrences of % must be doubled when using this\n"
" option.\n"
"\n"
" The variables available are:\n"
"\n"
-" content_type The Content-Type of the requested document, if\n"
-, stdout);
- fputs(
+" content_type The Content-Type of the requested document, if\n"
" there was any.\n"
"\n"
" filename_effective\n"
-" The ultimate filename that curl writes out to.\n"
-" This is only meaningful if curl is told to write\n"
-" to a file with the --remote-name or --output\n"
-" option. It's most useful in combination with the\n"
-" --remote-header-name option. (Added in 7.25.1)\n"
-"\n"
+" The ultimate filename that curl writes out to.\n"
, stdout);
fputs(
+" This is only meaningful if curl is told to write\n"
+" to a file with the --remote-name or --output\n"
+" option. It's most useful in combination with the\n"
+" --remote-header-name option. (Added in 7.25.1)\n"
+"\n"
" ftp_entry_path The initial path curl ended up in when logging on\n"
" to the remote FTP server. (Added in 7.15.4)\n"
"\n"
+, stdout);
+ fputs(
" http_code The numerical response code that was found in the\n"
-" last retrieved HTTP(S) or FTP(s) transfer. In\n"
-" 7.18.2 the alias response_code was added to show\n"
+" last retrieved HTTP(S) or FTP(s) transfer. In\n"
+" 7.18.2 the alias response_code was added to show\n"
" the same info.\n"
"\n"
-, stdout);
- fputs(
-" http_connect The numerical code that was found in the last\n"
-" response (from a proxy) to a curl CONNECT\n"
+" http_connect The numerical code that was found in the last\n"
+" response (from a proxy) to a curl CONNECT\n"
" request. (Added in 7.12.4)\n"
"\n"
-" local_ip The IP address of the local end of the most\n"
-" recently done connection - can be either IPv4 or\n"
-" IPv6 (Added in 7.29.0)\n"
-"\n"
, stdout);
fputs(
-" local_port The local port number of the most recently done\n"
+" local_ip The IP address of the local end of the most\n"
+" recently done connection - can be either IPv4 or\n"
+" IPv6 (Added in 7.29.0)\n"
+"\n"
+" local_port The local port number of the most recently done\n"
" connection (Added in 7.29.0)\n"
"\n"
-" num_connects Number of new connects made in the recent trans-\n"
+" num_connects Number of new connects made in the recent trans-\n"
" fer. (Added in 7.12.3)\n"
"\n"
-" num_redirects Number of redirects that were followed in the\n"
-" request. (Added in 7.12.3)\n"
-"\n"
-" redirect_url When an HTTP request was made without -L to fol-\n"
, stdout);
fputs(
+" num_redirects Number of redirects that were followed in the\n"
+" request. (Added in 7.12.3)\n"
+"\n"
+" redirect_url When an HTTP request was made without -L to fol-\n"
" low redirects, this variable will show the actual\n"
-" URL a redirect would take you to. (Added in\n"
+" URL a redirect would take you to. (Added in\n"
" 7.18.2)\n"
"\n"
-" remote_ip The remote IP address of the most recently done\n"
+" remote_ip The remote IP address of the most recently done\n"
+, stdout);
+ fputs(
" connection - can be either IPv4 or IPv6 (Added in\n"
" 7.29.0)\n"
"\n"
-" remote_port The remote port number of the most recently done\n"
-, stdout);
- fputs(
+" remote_port The remote port number of the most recently done\n"
" connection (Added in 7.29.0)\n"
"\n"
" size_download The total amount of bytes that were downloaded.\n"
@@ -2606,156 +2518,151 @@ void hugehelp(void)
" size_header The total amount of bytes of the downloaded head-\n"
" ers.\n"
"\n"
-" size_request The total amount of bytes that were sent in the\n"
+, stdout);
+ fputs(
+" size_request The total amount of bytes that were sent in the\n"
" HTTP request.\n"
"\n"
" size_upload The total amount of bytes that were uploaded.\n"
"\n"
-, stdout);
- fputs(
" speed_download The average download speed that curl measured for\n"
" the complete download. Bytes per second.\n"
"\n"
-" speed_upload The average upload speed that curl measured for\n"
+" speed_upload The average upload speed that curl measured for\n"
" the complete upload. Bytes per second.\n"
"\n"
-" ssl_verify_result\n"
-" The result of the SSL peer certificate verifica-\n"
-" tion that was requested. 0 means the verification\n"
, stdout);
fputs(
+" ssl_verify_result\n"
+" The result of the SSL peer certificate verifica-\n"
+" tion that was requested. 0 means the verification\n"
" was successful. (Added in 7.19.0)\n"
"\n"
" time_appconnect\n"
-" The time, in seconds, it took from the start\n"
-" until the SSL/SSH/etc connect/handshake to the\n"
-" remote host was completed. (Added in 7.19.0)\n"
-"\n"
-" time_connect The time, in seconds, it took from the start\n"
-" until the TCP connect to the remote host (or\n"
+" The time, in seconds, it took from the start\n"
+" until the SSL/SSH/etc connect/handshake to the\n"
, stdout);
fputs(
+" remote host was completed. (Added in 7.19.0)\n"
+"\n"
+" time_connect The time, in seconds, it took from the start\n"
+" until the TCP connect to the remote host (or\n"
" proxy) was completed.\n"
"\n"
" time_namelookup\n"
-" The time, in seconds, it took from the start\n"
+" The time, in seconds, it took from the start\n"
" until the name resolving was completed.\n"
"\n"
" time_pretransfer\n"
-" The time, in seconds, it took from the start\n"
-" until the file transfer was just about to begin.\n"
-" This includes all pre-transfer commands and nego-\n"
, stdout);
fputs(
+" The time, in seconds, it took from the start\n"
+" until the file transfer was just about to begin.\n"
+" This includes all pre-transfer commands and nego-\n"
" tiations that are specific to the particular pro-\n"
" tocol(s) involved.\n"
"\n"
" time_redirect The time, in seconds, it took for all redirection\n"
-" steps include name lookup, connect, pretransfer\n"
-" and transfer before the final transaction was\n"
-" started. time_redirect shows the complete execu-\n"
, stdout);
fputs(
-" tion time for multiple redirections. (Added in\n"
+" steps include name lookup, connect, pretransfer\n"
+" and transfer before the final transaction was\n"
+" started. time_redirect shows the complete execu-\n"
+" tion time for multiple redirections. (Added in\n"
" 7.12.3)\n"
"\n"
" time_starttransfer\n"
-" The time, in seconds, it took from the start\n"
-" until the first byte was just about to be trans-\n"
-" ferred. This includes time_pretransfer and also\n"
-" the time the server needed to calculate the\n"
+" The time, in seconds, it took from the start\n"
, stdout);
fputs(
+" until the first byte was just about to be trans-\n"
+" ferred. This includes time_pretransfer and also\n"
+" the time the server needed to calculate the\n"
" result.\n"
"\n"
-" time_total The total time, in seconds, that the full opera-\n"
+" time_total The total time, in seconds, that the full opera-\n"
" tion lasted. The time will be displayed with mil-\n"
" lisecond resolution.\n"
"\n"
+, stdout);
+ fputs(
" url_effective The URL that was fetched last. This is most mean-\n"
-" ingful if you've told curl to follow location:\n"
+" ingful if you've told curl to follow location:\n"
" headers.\n"
"\n"
-, stdout);
- fputs(
-" If this option is used several times, the last one will be used.\n"
+" If this option is used several times, the last one will be used.\n"
"\n"
" -x, --proxy <[protocol://][user:password@]proxyhost[:port]>\n"
" Use the specified proxy.\n"
"\n"
-" The proxy string can be specified with a protocol:// prefix to\n"
-" specify alternative proxy protocols. Use socks4://, socks4a://,\n"
-" socks5:// or socks5h:// to request the specific SOCKS version to\n"
+" The proxy string can be specified with a protocol:// prefix to\n"
, stdout);
fputs(
-" be used. No protocol specified, http:// and all others will be\n"
+" specify alternative proxy protocols. Use socks4://, socks4a://,\n"
+" socks5:// or socks5h:// to request the specific SOCKS version to\n"
+" be used. No protocol specified, http:// and all others will be\n"
" treated as HTTP proxies. (The protocol support was added in curl\n"
" 7.21.7)\n"
"\n"
-" If the port number is not specified in the proxy string, it is\n"
+" If the port number is not specified in the proxy string, it is\n"
" assumed to be 1080.\n"
"\n"
-" This option overrides existing environment variables that set\n"
-" the proxy to use. If there's an environment variable setting a\n"
, stdout);
fputs(
+" This option overrides existing environment variables that set\n"
+" the proxy to use. If there's an environment variable setting a\n"
" proxy, you can set proxy to \"\" to override it.\n"
"\n"
" All operations that are performed over an HTTP proxy will trans-\n"
-" parently be converted to HTTP. It means that certain protocol\n"
+" parently be converted to HTTP. It means that certain protocol\n"
" specific operations might not be available. This is not the case\n"
+, stdout);
+ fputs(
" if you can tunnel through the proxy, as one with the -p, --prox-\n"
" ytunnel option.\n"
"\n"
" User and password that might be provided in the proxy string are\n"
-, stdout);
- fputs(
-" URL decoded by curl. This allows you to pass in special charac-\n"
+" URL decoded by curl. This allows you to pass in special charac-\n"
" ters such as @ by using %40 or pass in a colon with %3a.\n"
"\n"
-" The proxy host can be specified the exact same way as the proxy\n"
-" environment variables, including the protocol prefix (http://)\n"
+" The proxy host can be specified the exact same way as the proxy\n"
+" environment variables, including the protocol prefix (http://)\n"
+, stdout);
+ fputs(
" and the embedded user + password.\n"
"\n"
" If this option is used several times, the last one will be used.\n"
"\n"
" -X, --request <command>\n"
-, stdout);
- fputs(
" (HTTP) Specifies a custom request method to use when communicat-\n"
-" ing with the HTTP server. The specified request method will be\n"
-" used instead of the method otherwise used (which defaults to\n"
-" GET). Read the HTTP 1.1 specification for details and explana-\n"
-" tions. Common additional HTTP requests include PUT and DELETE,\n"
-" but related technologies like WebDAV offers PROPFIND, COPY, MOVE\n"
-" and more.\n"
-"\n"
+" ing with the HTTP server. The specified request will be used\n"
+" instead of the method otherwise used (which defaults to GET).\n"
+" Read the HTTP 1.1 specification for details and explanations.\n"
, stdout);
fputs(
-" Normally you don't need this option. All sorts of GET, HEAD,\n"
+" Common additional HTTP requests include PUT and DELETE, but\n"
+" related technologies like WebDAV offers PROPFIND, COPY, MOVE and\n"
+" more.\n"
+"\n"
+" Normally you don't need this option. All sorts of GET, HEAD,\n"
" POST and PUT requests are rather invoked by using dedicated com-\n"
" mand line options.\n"
"\n"
-" This option only changes the actual word used in the HTTP\n"
-" request, it does not alter the way curl behaves. So for example\n"
-" if you want to make a proper HEAD request, using -X HEAD will\n"
-" not suffice. You need to use the -I, --head option.\n"
-"\n"
+" This option only changes the actual word used in the HTTP\n"
, stdout);
fputs(
-" The method string you set with -X will be used for all requests,\n"
-" which if you for example use -L, --location may cause unintended\n"
-" side-effects when curl doesn't change request method according\n"
-" to the HTTP 30x response codes - and similar.\n"
+" request, it does not alter the way curl behaves. So for example\n"
+" if you want to make a proper HEAD request, using -X HEAD will\n"
+" not suffice. You need to use the -I, --head option.\n"
"\n"
" (FTP) Specifies a custom FTP command to use instead of LIST when\n"
" doing file lists with FTP.\n"
"\n"
" (POP3) Specifies a custom POP3 command to use instead of LIST or\n"
-, stdout);
- fputs(
" RETR. (Added in 7.26.0)\n"
"\n"
+, stdout);
+ fputs(
" (IMAP) Specifies a custom IMAP command to use instead of LIST.\n"
" (Added in 7.30.0)\n"
"\n"
@@ -2766,9 +2673,9 @@ void hugehelp(void)
"\n"
" --xattr\n"
" When saving output to a file, this option tells curl to store\n"
+" certain file metadata in extended file attributes. Currently,\n"
, stdout);
fputs(
-" certain file metadata in extended file attributes. Currently,\n"
" the URL is stored in the xdg.origin.url attribute and, for HTTP,\n"
" the content type is stored in the mime_type attribute. If the\n"
" file system does not support extended attributes, a warning is\n"
@@ -2776,9 +2683,9 @@ void hugehelp(void)
"\n"
" -y, --speed-time <time>\n"
" If a download is slower than speed-limit bytes per second during\n"
+" a speed-time period, the download gets aborted. If speed-time is\n"
, stdout);
fputs(
-" a speed-time period, the download gets aborted. If speed-time is\n"
" used, the default speed-limit will be 1 unless set with -Y.\n"
"\n"
" This option controls transfers and thus will not affect slow\n"
@@ -2788,9 +2695,9 @@ void hugehelp(void)
" If this option is used several times, the last one will be used.\n"
"\n"
" -Y, --speed-limit <speed>\n"
+" If a download is slower than this given speed (in bytes per sec-\n"
, stdout);
fputs(
-" If a download is slower than this given speed (in bytes per sec-\n"
" ond) for speed-time seconds it gets aborted. speed-time is set\n"
" with -y and is 30 if not set.\n"
"\n"
@@ -2799,9 +2706,9 @@ void hugehelp(void)
" -z, --time-cond <date expression>|<file>\n"
" (HTTP/FTP) Request a file that has been modified later than the\n"
" given time and date, or one that has been modified before that\n"
+" time. The <date expression> can be all sorts of date strings or\n"
, stdout);
fputs(
-" time. The <date expression> can be all sorts of date strings or\n"
" if it doesn't match any internal ones, it is taken as a filename\n"
" and tries to get the modification date (mtime) from <file>\n"
" instead. See the curl_getdate(3) man pages for date expression\n"
@@ -2809,10 +2716,10 @@ void hugehelp(void)
"\n"
" Start the date expression with a dash (-) to make it request for\n"
" a document that is older than the given date/time, default is a\n"
-, stdout);
- fputs(
" document that is newer than the specified date/time.\n"
"\n"
+, stdout);
+ fputs(
" If this option is used several times, the last one will be used.\n"
"\n"
" -h, --help\n"
@@ -2824,9 +2731,9 @@ void hugehelp(void)
"\n"
" -V, --version\n"
" Displays information about curl and the libcurl version it uses.\n"
+" The first line includes the full version of curl, libcurl and\n"
, stdout);
fputs(
-" The first line includes the full version of curl, libcurl and\n"
" other 3rd party libraries linked with the executable.\n"
"\n"
" The second line (starts with \"Protocols:\") shows all protocols\n"
@@ -2837,10 +2744,10 @@ void hugehelp(void)
"\n"
" IPv6 You can use IPv6 with this.\n"
"\n"
-, stdout);
- fputs(
" krb4 Krb4 for FTP is supported.\n"
"\n"
+, stdout);
+ fputs(
" SSL SSL versions of various protocols are supported, such as\n"
" HTTPS, FTPS, POP3S and so on.\n"
"\n"
@@ -2850,11 +2757,11 @@ void hugehelp(void)
" NTLM NTLM authentication is supported.\n"
"\n"
" Debug This curl uses a libcurl built with Debug. This enables\n"
-, stdout);
- fputs(
" more error-tracking and memory debugging etc. For curl-\n"
" developers only!\n"
"\n"
+, stdout);
+ fputs(
" AsynchDNS\n"
" This curl uses asynchronous name resolves. Asynchronous\n"
" name resolves can be done using either the c-ares or the\n"
@@ -2863,13 +2770,13 @@ void hugehelp(void)
" SPNEGO SPNEGO authentication is supported.\n"
"\n"
" Largefile\n"
-, stdout);
- fputs(
" This curl supports transfers of large files, files larger\n"
" than 2GB.\n"
"\n"
" IDN This curl supports IDN - international domain names.\n"
"\n"
+, stdout);
+ fputs(
" GSS-API\n"
" GSS-API is supported.\n"
"\n"
@@ -2881,11 +2788,11 @@ void hugehelp(void)
"\n"
" HTTP2 HTTP/2 support has been built-in.\n"
"\n"
-, stdout);
- fputs(
" Metalink\n"
" This curl supports Metalink (both version 3 and 4 (RFC\n"
" 5854)), which describes mirrors and hashes. curl will\n"
+, stdout);
+ fputs(
" use mirrors for failover if there are errors (such as the\n"
" file or server not being available).\n"
"\n"
@@ -2895,11 +2802,11 @@ void hugehelp(void)
"\n"
"ENVIRONMENT\n"
" The environment variables can be specified in lower case or upper case.\n"
-, stdout);
- fputs(
" The lower case version has precedence. http_proxy is an exception as it\n"
" is only available in lower case.\n"
"\n"
+, stdout);
+ fputs(
" Using an environment variable to set the proxy has the same effect as\n"
" using the --proxy option.\n"
"\n"
@@ -2909,9 +2816,9 @@ void hugehelp(void)
" Sets the proxy server to use for HTTPS.\n"
"\n"
" [url-protocol]_PROXY [protocol://]<host>[:port]\n"
+" Sets the proxy server to use for [url-protocol], where the pro-\n"
, stdout);
fputs(
-" Sets the proxy server to use for [url-protocol], where the pro-\n"
" tocol is a protocol that curl supports and as specified in a\n"
" URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP etc.\n"
"\n"
@@ -2921,11 +2828,11 @@ void hugehelp(void)
"\n"
" NO_PROXY <comma-separated list of hosts>\n"
" list of host names that shouldn't go through any proxy. If set\n"
-, stdout);
- fputs(
" to a asterisk '*' only, it matches all hosts.\n"
"\n"
"PROXY PROTOCOL PREFIXES\n"
+, stdout);
+ fputs(
" Since curl version 7.21.7, the proxy string may be specified with a\n"
" protocol:// prefix to specify alternative proxy protocols.\n"
"\n"
@@ -2936,11 +2843,11 @@ void hugehelp(void)
" The supported proxy protocol prefixes are as follows:\n"
"\n"
" socks4://\n"
-, stdout);
- fputs(
" Makes it the equivalent of --socks4\n"
"\n"
" socks4a://\n"
+, stdout);
+ fputs(
" Makes it the equivalent of --socks4a\n"
"\n"
" socks5://\n"
@@ -2954,9 +2861,9 @@ void hugehelp(void)
" error messages that may appear during bad conditions. At the time of\n"
" this writing, the exit codes are:\n"
"\n"
+" 1 Unsupported protocol. This build of curl has no support for this\n"
, stdout);
fputs(
-" 1 Unsupported protocol. This build of curl has no support for this\n"
" protocol.\n"
"\n"
" 2 Failed to initialize.\n"
@@ -2968,11 +2875,11 @@ void hugehelp(void)
" time. To make curl able to do this, you probably need another\n"
" build of libcurl!\n"
"\n"
-, stdout);
- fputs(
" 5 Couldn't resolve proxy. The given proxy host could not be\n"
" resolved.\n"
"\n"
+, stdout);
+ fputs(
" 6 Couldn't resolve host. The given remote host was not resolved.\n"
"\n"
" 7 Failed to connect to host.\n"
@@ -2982,11 +2889,11 @@ void hugehelp(void)
"\n"
" 9 FTP access denied. The server denied login or denied access to\n"
" the particular resource or directory you wanted to reach. Most\n"
-, stdout);
- fputs(
" often you tried to change to a directory that doesn't exist on\n"
" the server.\n"
"\n"
+, stdout);
+ fputs(
" 11 FTP weird PASS reply. Curl couldn't parse the reply sent to the\n"
" PASS request.\n"
"\n"
@@ -2996,11 +2903,11 @@ void hugehelp(void)
" 14 FTP weird 227 format. Curl couldn't parse the 227-line the\n"
" server sent.\n"
"\n"
-, stdout);
- fputs(
" 15 FTP can't get host. Couldn't resolve the host IP we got in the\n"
" 227-line.\n"
"\n"
+, stdout);
+ fputs(
" 17 FTP couldn't set binary. Couldn't change transfer method to\n"
" binary.\n"
"\n"
@@ -3010,9 +2917,9 @@ void hugehelp(void)
" lar) command failed.\n"
"\n"
" 21 FTP quote error. A quote command returned error from the server.\n"
+" 22 HTTP page not retrieved. The requested url was not found or\n"
, stdout);
fputs(
-" 22 HTTP page not retrieved. The requested url was not found or\n"
" returned another error with the HTTP error code being 400 or\n"
" above. This return code only appears if -f, --fail is used.\n"
"\n"
@@ -3022,12 +2929,12 @@ void hugehelp(void)
" 25 FTP couldn't STOR file. The server denied the STOR operation,\n"
" used for FTP uploading.\n"
"\n"
-, stdout);
- fputs(
" 26 Read error. Various reading problems.\n"
"\n"
" 27 Out of memory. A memory allocation request failed.\n"
"\n"
+, stdout);
+ fputs(
" 28 Operation timeout. The specified time-out period was reached\n"
" according to the conditions.\n"
"\n"
@@ -3035,13 +2942,13 @@ void hugehelp(void)
" support the PORT command, try doing a transfer using PASV\n"
" instead!\n"
"\n"
-, stdout);
- fputs(
" 31 FTP couldn't use REST. The REST command failed. This command is\n"
" used for resumed FTP transfers.\n"
"\n"
" 33 HTTP range error. The range \"command\" didn't work.\n"
"\n"
+, stdout);
+ fputs(
" 34 HTTP post error. Internal post-request generation error.\n"
"\n"
" 35 SSL connect error. The SSL handshaking failed.\n"
@@ -3049,8 +2956,6 @@ void hugehelp(void)
" 36 FTP bad download resume. Couldn't continue an earlier aborted\n"
" download.\n"
"\n"
-, stdout);
- fputs(
" 37 FILE couldn't read file. Failed to open the file. Permissions?\n"
"\n"
" 38 LDAP cannot bind. LDAP bind operation failed.\n"
@@ -3059,13 +2964,13 @@ void hugehelp(void)
"\n"
" 41 Function not found. A required LDAP function was not found.\n"
"\n"
+, stdout);
+ fputs(
" 42 Aborted by callback. An application told curl to abort the oper-\n"
" ation.\n"
"\n"
" 43 Internal error. A function was called with a bad parameter.\n"
"\n"
-, stdout);
- fputs(
" 45 Interface error. A specified outgoing interface could not be\n"
" used.\n"
"\n"
@@ -3073,13 +2978,13 @@ void hugehelp(void)
" mum amount.\n"
"\n"
" 48 Unknown option specified to libcurl. This indicates that you\n"
+, stdout);
+ fputs(
" passed a weird option to curl that was passed on to libcurl and\n"
" rejected. Read up in the manual!\n"
"\n"
" 49 Malformed telnet option.\n"
"\n"
-, stdout);
- fputs(
" 51 The peer's SSL certificate or SSH MD5 fingerprint was not OK.\n"
"\n"
" 52 The server didn't reply anything, which here is considered an\n"
@@ -3091,14 +2996,14 @@ void hugehelp(void)
"\n"
" 55 Failed sending network data.\n"
"\n"
+, stdout);
+ fputs(
" 56 Failure in receiving network data.\n"
"\n"
" 58 Problem with the local certificate.\n"
"\n"
" 59 Couldn't use specified SSL cipher.\n"
"\n"
-, stdout);
- fputs(
" 60 Peer certificate cannot be authenticated with known CA certifi-\n"
" cates.\n"
"\n"
@@ -3112,13 +3017,13 @@ void hugehelp(void)
"\n"
" 65 Sending the data requires a rewind that failed.\n"
"\n"
+, stdout);
+ fputs(
" 66 Failed to initialise SSL Engine.\n"
"\n"
" 67 The user name, password, or similar was not accepted and curl\n"
" failed to log in.\n"
"\n"
-, stdout);
- fputs(
" 68 File not found on TFTP server.\n"
"\n"
" 69 Permission problem on TFTP server.\n"
@@ -3133,14 +3038,14 @@ void hugehelp(void)
"\n"
" 74 No such user (TFTP).\n"
"\n"
+, stdout);
+ fputs(
" 75 Character conversion failed.\n"
"\n"
" 76 Character conversion functions required.\n"
"\n"
" 77 Problem with reading the SSL CA cert (path? access rights?).\n"
"\n"
-, stdout);
- fputs(
" 78 The resource referenced in the URL does not exist.\n"
"\n"
" 79 An unspecified error occurred during the SSH session.\n"
@@ -3150,6 +3055,8 @@ void hugehelp(void)
" 82 Could not load CRL file, missing or wrong format (added in\n"
" 7.19.0).\n"
"\n"
+, stdout);
+ fputs(
" 83 Issuer check failed (added in 7.19.0).\n"
"\n"
" 84 The FTP PRET command failed\n"
@@ -3158,8 +3065,6 @@ void hugehelp(void)
"\n"
" 86 RTSP: mismatch of Session Identifiers\n"
"\n"
-, stdout);
- fputs(
" 87 unable to parse FTP file list\n"
"\n"
" 88 FTP chunk callback reported error\n"
@@ -3168,13 +3073,13 @@ void hugehelp(void)
"\n"
" 90 SSL public key does not matched pinned public key\n"
"\n"
+, stdout);
+ fputs(
" XX More error codes will appear here in future releases. The exist-\n"
" ing ones are meant to never change.\n"
"\n"
"AUTHORS / CONTRIBUTORS\n"
" Daniel Stenberg is the main author, but the whole list of contributors\n"
-, stdout);
- fputs(
" is found in the separate THANKS file.\n"
"\n"
"WWW\n"
@@ -3189,6 +3094,8 @@ void hugehelp(void)
"LATEST VERSION\n"
"\n"
" You always find news about what's going on as well as the latest versions\n"
+, stdout);
+ fputs(
" from the curl web pages, located at:\n"
"\n"
" http://curl.haxx.se\n"
@@ -3200,8 +3107,6 @@ void hugehelp(void)
" curl http://www.netscape.com/\n"
"\n"
" Get the README file the user's home directory at funet's ftp-server:\n"
-, stdout);
- fputs(
"\n"
" curl ftp://ftp.funet.fi/README\n"
"\n"
@@ -3213,6 +3118,8 @@ void hugehelp(void)
"\n"
" curl ftp://cool.haxx.se/\n"
"\n"
+, stdout);
+ fputs(
" Get the definition of curl from a dictionary:\n"
"\n"
" curl dict://dict.org/m:curl\n"
@@ -3225,8 +3132,6 @@ void hugehelp(void)
"\n"
" curl ftps://files.are.secure.com/secrets.txt\n"
"\n"
-, stdout);
- fputs(
" or use the more appropriate FTPS way to get the same file:\n"
"\n"
" curl --ftp-ssl ftp://files.are.secure.com/secrets.txt\n"
@@ -3235,6 +3140,8 @@ void hugehelp(void)
"\n"
" curl -u username sftp://example.com/etc/issue\n"
"\n"
+, stdout);
+ fputs(
" Get a file from an SSH server using SCP using a private key\n"
" (not password-protected) to authenticate:\n"
"\n"
@@ -3242,8 +3149,6 @@ void hugehelp(void)
" scp://example.com/~/file.txt\n"
"\n"
" Get a file from an SSH server using SCP using a private key\n"
-, stdout);
- fputs(
" (password-protected) to authenticate:\n"
"\n"
" curl -u username: --key ~/.ssh/id_rsa --pass private_key_password \\\n"
@@ -3251,6 +3156,8 @@ void hugehelp(void)
"\n"
" Get the main page from an IPv6 web server:\n"
"\n"
+, stdout);
+ fputs(
" curl \"http://[2001:1890:1112:1::20]/\"\n"
"\n"
" Get a file from an SMB server:\n"
@@ -3261,14 +3168,14 @@ void hugehelp(void)
"\n"
" Get a web page and store in a local file with a specific name:\n"
"\n"
-, stdout);
- fputs(
" curl -o thatpage.html http://www.netscape.com/\n"
"\n"
" Get a web page and store in a local file, make the local file get the name\n"
" of the remote document (if no file name part is specified in the URL, this\n"
" will fail):\n"
"\n"
+, stdout);
+ fputs(
" curl -O http://www.netscape.com/index.html\n"
"\n"
" Fetch two files and store them with their remote names:\n"
@@ -3281,8 +3188,6 @@ void hugehelp(void)
"\n"
" To ftp files using name+passwd, include them in the URL like:\n"
"\n"
-, stdout);
- fputs(
" curl ftp://name:passwd@machine.domain:port/full/path/to/file\n"
"\n"
" or specify them with the -u flag like\n"
@@ -3291,6 +3196,8 @@ void hugehelp(void)
"\n"
" FTPS\n"
"\n"
+, stdout);
+ fputs(
" It is just like for FTP, but you may also want to specify and use\n"
" SSL-specific options for certificates etc.\n"
"\n"
@@ -3298,18 +3205,16 @@ void hugehelp(void)
" standards while the recommended \"explicit\" way is done by using FTP:// and\n"
" the --ftp-ssl option.\n"
"\n"
-, stdout);
- fputs(
" SFTP / SCP\n"
"\n"
" This is similar to FTP, but you can use the --key option to specify a\n"
" private key to use instead of a password. Note that the private key may\n"
+, stdout);
+ fputs(
" itself be protected by a password that is unrelated to the login password\n"
" of the remote system; this password is specified using the --pass option.\n"
" Typically, curl will automatically extract the public key from the private\n"
" key file, but in cases where curl does not have the proper library support,\n"
-, stdout);
- fputs(
" a matching public key file must be specified using the --pubkey option.\n"
"\n"
" HTTP\n"
@@ -3317,6 +3222,8 @@ void hugehelp(void)
" Curl also supports user and password in HTTP URLs, thus you can pick a file\n"
" like:\n"
"\n"
+, stdout);
+ fputs(
" curl http://name:passwd@machine.domain/full/path/to/file\n"
"\n"
" or specify user and password separately like in\n"
@@ -3324,18 +3231,16 @@ void hugehelp(void)
" curl -u name:passwd http://machine.domain/full/path/to/file\n"
"\n"
" HTTP offers many different methods of authentication and curl supports\n"
-, stdout);
- fputs(
" several: Basic, Digest, NTLM and Negotiate (SPNEGO). Without telling which\n"
" method to use, curl defaults to Basic. You can also ask curl to pick the\n"
" most secure ones out of the ones that the server accepts for the given URL,\n"
+, stdout);
+ fputs(
" by using --anyauth.\n"
"\n"
" NOTE! According to the URL specification, HTTP URLs can not contain a user\n"
" and password, so that style will not work when using curl via a proxy, even\n"
" though curl allows it at other times. When using a proxy, you _must_ use\n"
-, stdout);
- fputs(
" the -u style for user and password.\n"
"\n"
" HTTPS\n"
@@ -3345,13 +3250,13 @@ void hugehelp(void)
"PROXY\n"
"\n"
" curl supports both HTTP and SOCKS proxy servers, with optional authentication.\n"
+, stdout);
+ fputs(
" It does not have special support for FTP proxy servers since there are no\n"
" standards for those, but it can still be made to work with many of them. You\n"
" can also use both HTTP and SOCKS proxies to transfer files to and from FTP\n"
" servers.\n"
"\n"
-, stdout);
- fputs(
" Get an ftp file using an HTTP proxy named my-proxy that uses port 888:\n"
"\n"
" curl -x my-proxy:888 ftp://ftp.leachsite.com/README\n"
@@ -3359,20 +3264,22 @@ void hugehelp(void)
" Get a file from an HTTP server that requires user and password, using the\n"
" same proxy as above:\n"
"\n"
+, stdout);
+ fputs(
" curl -u user:passwd -x my-proxy:888 http://www.get.this/\n"
"\n"
" Some proxies require special authentication. Specify by using -U as above:\n"
"\n"
" curl -U user:passwd -x my-proxy:888 http://www.get.this/\n"
"\n"
-, stdout);
- fputs(
" A comma-separated list of hosts and domains which do not use the proxy can\n"
" be specified as:\n"
"\n"
" curl --noproxy localhost,get.this -x my-proxy:888 http://www.get.this/\n"
"\n"
" If the proxy is specified with --proxy1.0 instead of --proxy or -x, then\n"
+, stdout);
+ fputs(
" curl will use HTTP/1.0 instead of HTTP/1.1 for any CONNECT attempts.\n"
"\n"
" curl also supports SOCKS4 and SOCKS5 proxies with --socks4 and --socks5.\n"
@@ -3380,24 +3287,24 @@ void hugehelp(void)
" See also the environment variables Curl supports that offer further proxy\n"
" control.\n"
"\n"
-, stdout);
- fputs(
" Most FTP proxy servers are set up to appear as a normal FTP server from the\n"
" client's perspective, with special commands to select the remote FTP server.\n"
" curl supports the -u, -Q and --ftp-account options that can be used to\n"
+, stdout);
+ fputs(
" set up transfers through many FTP proxies. For example, a file can be\n"
" uploaded to a remote FTP server using a Blue Coat FTP proxy with the\n"
" options:\n"
"\n"
" curl -u \"Remote-FTP-Username@remote.ftp.server Proxy-Username:Remote-Pass\" \\\n"
-, stdout);
- fputs(
" --ftp-account Proxy-Password --upload-file local-file \\\n"
" ftp://my-ftp.proxy.server:21/remote/upload/path/\n"
"\n"
" See the manual for your FTP proxy to determine the form it expects to set up\n"
" transfers, and curl's -v option to see exactly what curl is sending.\n"
"\n"
+, stdout);
+ fputs(
"RANGES\n"
"\n"
" HTTP 1.1 introduced byte-ranges. Using this, a client can request\n"
@@ -3406,8 +3313,6 @@ void hugehelp(void)
"\n"
" Get the first 100 bytes of a document:\n"
"\n"
-, stdout);
- fputs(
" curl -r 0-99 http://www.get.this/\n"
"\n"
" Get the last 500 bytes of a document:\n"
@@ -3417,6 +3322,8 @@ void hugehelp(void)
" Curl also supports simple ranges for FTP files as well. Then you can only\n"
" specify start and stop position.\n"
"\n"
+, stdout);
+ fputs(
" Get the first 100 bytes of a document using FTP:\n"
"\n"
" curl -r 0-99 ftp://www.get.this/README\n"
@@ -3429,8 +3336,6 @@ void hugehelp(void)
"\n"
" curl -T - ftp://ftp.upload.com/myfile\n"
"\n"
-, stdout);
- fputs(
" Upload data from a specified file, login with user and password:\n"
"\n"
" curl -T uploadfile -u user:passwd ftp://ftp.upload.com/myfile\n"
@@ -3438,6 +3343,8 @@ void hugehelp(void)
" Upload a local file to the remote site, and use the local file name at the remote\n"
" site too:\n"
"\n"
+, stdout);
+ fputs(
" curl -T uploadfile -u user:passwd ftp://ftp.upload.com/\n"
"\n"
" Upload a local file to get appended to the remote file:\n"
@@ -3445,8 +3352,6 @@ void hugehelp(void)
" curl -T localfile -a ftp://ftp.upload.com/remotefile\n"
"\n"
" Curl also supports ftp upload through a proxy, but only if the proxy is\n"
-, stdout);
- fputs(
" configured to allow that kind of tunneling. If it does, you can run curl in\n"
" a fashion similar to:\n"
"\n"
@@ -3455,6 +3360,8 @@ void hugehelp(void)
"SMB / SMBS\n"
"\n"
" curl -T file.txt -u \"domain\\username:passwd\" \n"
+, stdout);
+ fputs(
" smb://server.example.com/share/\n"
"\n"
" HTTP\n"
@@ -3466,22 +3373,20 @@ void hugehelp(void)
" Note that the HTTP server must have been configured to accept PUT before\n"
" this can be done successfully.\n"
"\n"
-, stdout);
- fputs(
" For other ways to do HTTP data upload, see the POST section below.\n"
"\n"
"VERBOSE / DEBUG\n"
"\n"
" If curl fails where it isn't supposed to, if the servers don't let you in,\n"
" if you can't understand the responses: use the -v flag to get verbose\n"
+, stdout);
+ fputs(
" fetching. Curl will output lots of info and what it sends and receives in\n"
" order to let the user see all client-server interaction (but it won't show\n"
" you the actual data).\n"
"\n"
" curl -v ftp://ftp.upload.com/\n"
"\n"
-, stdout);
- fputs(
" To get even more details and information on what curl does, try using the\n"
" --trace or --trace-ascii options with a given file name to log to, like\n"
" this:\n"
@@ -3491,23 +3396,23 @@ void hugehelp(void)
"\n"
"DETAILED INFORMATION\n"
"\n"
+, stdout);
+ fputs(
" Different protocols provide different ways of getting detailed information\n"
" about specific files/documents. To get curl to show detailed information\n"
" about a single file, you should use -I/--head option. It displays all\n"
-, stdout);
- fputs(
" available info on a single file for HTTP and FTP. The HTTP information is a\n"
" lot more extensive.\n"
"\n"
" For HTTP, you can get the header information (the same as -I would show)\n"
" shown before the data by using -i/--include. Curl understands the\n"
+, stdout);
+ fputs(
" -D/--dump-header option when getting files from both FTP and HTTP, and it\n"
" will then store the headers in the specified file.\n"
"\n"
" Store the HTTP headers in a separate file (headers.txt in the example):\n"
"\n"
-, stdout);
- fputs(
" curl --dump-header headers.txt curl.haxx.se\n"
"\n"
" Note that headers stored in a separate file can be very useful at a later\n"
@@ -3516,14 +3421,14 @@ void hugehelp(void)
"\n"
"POST (HTTP)\n"
"\n"
+, stdout);
+ fputs(
" It's easy to post data using curl. This is done using the -d <data>\n"
" option. The post data must be urlencoded.\n"
"\n"
" Post a simple \"name\" and \"phone\" guestbook.\n"
"\n"
" curl -d \"name=Rafael%20Sagula&phone=3320780\" \\\n"
-, stdout);
- fputs(
" http://www.where.com/guest.cgi\n"
"\n"
" How to post a form with curl, lesson #1:\n"
@@ -3531,17 +3436,19 @@ void hugehelp(void)
" Dig out all the <input> tags in the form that you want to fill in. (There's\n"
" a perl program called formfind.pl on the curl site that helps with this).\n"
"\n"
+, stdout);
+ fputs(
" If there's a \"normal\" post, you use -d to post. -d takes a full \"post\n"
" string\", which is in the format\n"
"\n"
" <variable1>=<data1>&<variable2>=<data2>&...\n"
"\n"
" The 'variable' names are the names set with \"name=\" in the <input> tags, and\n"
-, stdout);
- fputs(
" the data is the contents you want to fill in for the inputs. The data *must*\n"
" be properly URL encoded. That means you replace space with + and that you\n"
" replace weird letters with %XX where XX is the hexadecimal representation of\n"
+, stdout);
+ fputs(
" the letter's ASCII code.\n"
"\n"
" Example:\n"
@@ -3551,8 +3458,6 @@ void hugehelp(void)
" <form action=\"post.cgi\" method=\"post\">\n"
" <input name=user size=10>\n"
" <input name=pass type=password size=10>\n"
-, stdout);
- fputs(
" <input name=id type=hidden value=\"blablabla\">\n"
" <input name=ding value=\"submit\">\n"
" </form>\n"
@@ -3561,47 +3466,49 @@ void hugehelp(void)
"\n"
" To post to this, you enter a curl command line like:\n"
"\n"
+, stdout);
+ fputs(
" curl -d \"user=foobar&pass=12345&id=blablabla&ding=submit\" (continues)\n"
" http://www.formpost.com/getthis/post.cgi\n"
"\n"
"\n"
" While -d uses the application/x-www-form-urlencoded mime-type, generally\n"
-, stdout);
- fputs(
" understood by CGI's and similar, curl also supports the more capable\n"
" multipart/form-data type. This latter type supports things like file upload.\n"
"\n"
" -F accepts parameters like -F \"name=contents\". If you want the contents to\n"
+, stdout);
+ fputs(
" be read from a file, use <@filename> as contents. When specifying a file,\n"
" you can also specify the file content type by appending ';type=<mime type>'\n"
" to the file name. You can also post the contents of several files in one\n"
-, stdout);
- fputs(
" field. For example, the field name 'coolfiles' is used to send three files,\n"
" with different content types using the following syntax:\n"
"\n"
" curl -F \"coolfiles=@fil1.gif;type=image/gif,fil2.txt,fil3.html\" \\\n"
" http://www.post.com/postit.cgi\n"
"\n"
+, stdout);
+ fputs(
" If the content-type is not specified, curl will try to guess from the file\n"
" extension (it only knows a few), or use the previously specified type (from\n"
" an earlier file if several files are specified in a list) or else it will\n"
-, stdout);
- fputs(
" use the default type 'application/octet-stream'.\n"
"\n"
" Emulate a fill-in form with -F. Let's say you fill in three fields in a\n"
" form. One field is a file name which to post, one field is your name and one\n"
+, stdout);
+ fputs(
" field is a file description. We want to post the file we have written named\n"
" \"cooltext.txt\". To let curl do the posting of this data instead of your\n"
" favourite browser, you have to read the HTML source of the form page and\n"
-, stdout);
- fputs(
" find the names of the input fields. In our example, the input field names\n"
" are 'file', 'yourname' and 'filedescription'.\n"
"\n"
" curl -F \"file=@cooltext.txt\" -F \"yourname=Daniel\" \\\n"
" -F \"filedescription=Cool text file with cool text inside\" \\\n"
+, stdout);
+ fputs(
" http://www.post.com/postit.cgi\n"
"\n"
" To send two files in one post you can do it in two ways:\n"
@@ -3610,14 +3517,14 @@ void hugehelp(void)
"\n"
" curl -F \"pictures=@dog.gif,cat.gif\"\n"
"\n"
-, stdout);
- fputs(
" 2. Send two fields with two field names:\n"
"\n"
" curl -F \"docpicture=@dog.gif\" -F \"catpicture=@cat.gif\"\n"
"\n"
" To send a field value literally without interpreting a leading '@'\n"
" or '<', or an embedded ';type=', use --form-string instead of\n"
+, stdout);
+ fputs(
" -F. This is recommended when the value is obtained from a user or\n"
" some other unpredictable source. Under these circumstances, using\n"
" -F instead of --form-string would allow a user to trick curl into\n"
@@ -3625,11 +3532,11 @@ void hugehelp(void)
"\n"
"REFERRER\n"
"\n"
-, stdout);
- fputs(
" An HTTP request has the option to include information about which address\n"
" referred it to the actual page. Curl allows you to specify the\n"
" referrer to be used on the command line. It is especially useful to\n"
+, stdout);
+ fputs(
" fool or trick stupid servers or CGI scripts that rely on that information\n"
" being available or contain certain data.\n"
"\n"
@@ -3639,11 +3546,11 @@ void hugehelp(void)
"\n"
"USER AGENT\n"
"\n"
-, stdout);
- fputs(
" An HTTP request has the option to include information about the browser\n"
" that generated the request. Curl allows it to be specified on the command\n"
" line. It is especially useful to fool or trick stupid servers or CGI\n"
+, stdout);
+ fputs(
" scripts that only accept certain browsers.\n"
"\n"
" Example:\n"
@@ -3652,19 +3559,17 @@ void hugehelp(void)
"\n"
" Other common strings:\n"
" 'Mozilla/3.0 (Win95; I)' Netscape Version 3 for Windows 95\n"
-, stdout);
- fputs(
" 'Mozilla/3.04 (Win95; U)' Netscape Version 3 for Windows 95\n"
" 'Mozilla/2.02 (OS/2; U)' Netscape Version 2 for OS/2\n"
" 'Mozilla/4.04 [en] (X11; U; AIX 4.2; Nav)' NS for AIX\n"
" 'Mozilla/4.05 [en] (X11; U; Linux 2.0.32 i586)' NS for Linux\n"
"\n"
+, stdout);
+ fputs(
" Note that Internet Explorer tries hard to be compatible in every way:\n"
" 'Mozilla/4.0 (compatible; MSIE 4.01; Windows 95)' MSIE for W95\n"
"\n"
" Mozilla is not the only possible User-Agent name:\n"
-, stdout);
- fputs(
" 'Konqueror/1.0' KDE File Manager desktop client\n"
" 'Lynx/2.7.1 libwww-FM/2.14' Lynx command line browser\n"
"\n"
@@ -3672,21 +3577,21 @@ void hugehelp(void)
"\n"
" Cookies are generally used by web servers to keep state information at the\n"
" client's side. The server sets cookies by sending a response line in the\n"
-" headers that looks like 'Set-Cookie: <data>' where the data part then\n"
-" typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n"
, stdout);
fputs(
+" headers that looks like 'Set-Cookie: <data>' where the data part then\n"
+" typically contains a set of NAME=VALUE pairs (separated by semicolons ';'\n"
" like \"NAME1=VALUE1; NAME2=VALUE2;\"). The server can also specify for what\n"
" path the \"cookie\" should be used for (by specifying \"path=value\"), when the\n"
" cookie should expire (\"expire=DATE\"), for what domain to use it\n"
" (\"domain=NAME\") and if it should be used on secure connections only\n"
" (\"secure\").\n"
"\n"
+, stdout);
+ fputs(
" If you've received a page from a server that contains a header like:\n"
" Set-Cookie: sessionid=boo123; path=\"/foo\";\n"
"\n"
-, stdout);
- fputs(
" it means the server wants that first pair passed on when we get anything in\n"
" a path beginning with \"/foo\".\n"
"\n"
@@ -3696,12 +3601,12 @@ void hugehelp(void)
"\n"
" Curl also has the ability to use previously received cookies in following\n"
" sessions. If you get cookies from a server and store them in a file in a\n"
+, stdout);
+ fputs(
" manner similar to:\n"
"\n"
" curl --dump-header headers www.example.com\n"
"\n"
-, stdout);
- fputs(
" ... you can then in a second connect to that (or another) site, use the\n"
" cookies from the 'headers' file like:\n"
"\n"
@@ -3712,10 +3617,10 @@ void hugehelp(void)
" save the incoming cookies using the well-known netscape cookie format like\n"
" this:\n"
"\n"
-" curl -c cookies.txt www.example.com\n"
-"\n"
, stdout);
fputs(
+" curl -c cookies.txt www.example.com\n"
+"\n"
" Note that by specifying -b you enable the \"cookie awareness\" and with -L\n"
" you can make curl follow a location: (which often is used in combination\n"
" with cookies). So that if a site sends cookies and a location, you can\n"
@@ -3724,23 +3629,23 @@ void hugehelp(void)
" curl -L -b empty.txt www.example.com\n"
"\n"
" The file to read cookies from must be formatted using plain HTTP headers OR\n"
-" as netscape's cookie file. Curl will determine what kind it is based on the\n"
, stdout);
fputs(
+" as netscape's cookie file. Curl will determine what kind it is based on the\n"
" file contents. In the above command, curl will parse the header and store\n"
" the cookies received from www.example.com. curl will send to the server the\n"
" stored cookies which match the request as it follows the location. The\n"
" file \"empty.txt\" may be a nonexistent file.\n"
"\n"
-" To read and write cookies from a netscape cookie file, you can set both -b\n"
-" and -c to use the same file:\n"
+" Alas, to both read and write cookies from a netscape cookie file, you can\n"
+" set both -b and -c to use the same file:\n"
"\n"
+, stdout);
+ fputs(
" curl -b cookies.txt -c cookies.txt www.example.com\n"
"\n"
"PROGRESS METER\n"
"\n"
-, stdout);
- fputs(
" The progress meter exists to show a user that something actually is\n"
" happening. The different fields in the output have the following meaning:\n"
"\n"
@@ -3749,9 +3654,9 @@ void hugehelp(void)
" 0 151M 0 38608 0 0 9406 0 4:41:43 0:00:04 4:41:39 9287\n"
"\n"
" From left-to-right:\n"
-" % - percentage completed of the whole transfer\n"
, stdout);
fputs(
+" % - percentage completed of the whole transfer\n"
" Total - total size of the whole expected transfer\n"
" % - percentage completed of the download\n"
" Received - currently downloaded amount of bytes\n"
@@ -3761,9 +3666,9 @@ void hugehelp(void)
" Dload - the average transfer speed of the download\n"
" Average Speed\n"
" Upload - the average transfer speed of the upload\n"
-" Time Total - expected time to complete the operation\n"
, stdout);
fputs(
+" Time Total - expected time to complete the operation\n"
" Time Current - time passed since the invoke\n"
" Time Left - expected time left to completion\n"
" Curr.Speed - the average transfer speed the last 5 seconds (the first\n"
@@ -3774,9 +3679,9 @@ void hugehelp(void)
"\n"
"SPEED LIMIT\n"
"\n"
-" Curl allows the user to set the transfer speed conditions that must be met\n"
, stdout);
fputs(
+" Curl allows the user to set the transfer speed conditions that must be met\n"
" to let the transfer keep going. By using the switch -y and -Y you\n"
" can make curl abort transfers if the transfer speed is below the specified\n"
" lowest limit for a specified time.\n"
@@ -3787,10 +3692,10 @@ void hugehelp(void)
" curl -Y 3000 -y 60 www.far-away-site.com\n"
"\n"
" This can very well be used in combination with the overall time limit, so\n"
-" that the above operation must be completed in whole within 30 minutes:\n"
-"\n"
, stdout);
fputs(
+" that the above operation must be completed in whole within 30 minutes:\n"
+"\n"
" curl -m 1800 -Y 3000 -y 60 www.far-away-site.com\n"
"\n"
" Forcing curl not to transfer data faster than a given rate is also possible,\n"
@@ -3800,14 +3705,14 @@ void hugehelp(void)
"\n"
" Make curl transfer data no faster than 10 kilobytes per second:\n"
"\n"
+, stdout);
+ fputs(
" curl --limit-rate 10K www.far-away-site.com\n"
"\n"
" or\n"
"\n"
" curl --limit-rate 10240 www.far-away-site.com\n"
"\n"
-, stdout);
- fputs(
" Or prevent curl from uploading data faster than 1 megabyte per second:\n"
"\n"
" curl -T upload --limit-rate 1M ftp://uploadshereplease.com\n"
@@ -3815,24 +3720,24 @@ void hugehelp(void)
" When using the --limit-rate option, the transfer rate is regulated on a\n"
" per-second basis, which will cause the total transfer speed to become lower\n"
" than the given number. Sometimes of course substantially lower, if your\n"
+, stdout);
+ fputs(
" transfer stalls during periods.\n"
"\n"
"CONFIG FILE\n"
"\n"
" Curl automatically tries to read the .curlrc file (or _curlrc file on win32\n"
-, stdout);
- fputs(
" systems) from the user's home dir on startup.\n"
"\n"
" The config file could be made up with normal command line switches, but you\n"
" can also specify the long options without the dashes to make it more\n"
" readable. You can separate the options and the parameter with spaces, or\n"
" with = or :. Comments can be used within the file. If the first letter on a\n"
+, stdout);
+ fputs(
" line is a '#'-symbol the rest of the line is treated as a comment.\n"
"\n"
" If you want the parameter to contain spaces, you must enclose the entire\n"
-, stdout);
- fputs(
" parameter within double quotes (\"). Within those quotes, you specify a\n"
" quote as \\\".\n"
"\n"
@@ -3843,11 +3748,11 @@ void hugehelp(void)
" # We want a 30 minute timeout:\n"
" -m 1800\n"
" # ... and we use a proxy for all accesses:\n"
+, stdout);
+ fputs(
" proxy = proxy.our.domain.com:8080\n"
"\n"
" White spaces ARE significant at the end of lines, but all white spaces\n"
-, stdout);
- fputs(
" leading up to the first characters of each line are ignored.\n"
"\n"
" Prevent curl from reading the default file by using -q as the first command\n"
@@ -3859,11 +3764,11 @@ void hugehelp(void)
" without URL by making a config file similar to:\n"
"\n"
" # default url to get\n"
+, stdout);
+ fputs(
" url = \"http://help.with.curl.com/curlhelp.html\"\n"
"\n"
" You can specify another config file to be read by using the -K/--config\n"
-, stdout);
- fputs(
" flag. If you set config file name to \"-\" it'll read the config from stdin,\n"
" which can be handy if you want to hide options from being visible in process\n"
" tables etc:\n"
@@ -3873,11 +3778,11 @@ void hugehelp(void)
"EXTRA HEADERS\n"
"\n"
" When using curl in your own very special programs, you may end up needing\n"
+, stdout);
+ fputs(
" to pass on your own custom headers when getting a web page. You can do\n"
" this by using the -H flag.\n"
"\n"
-, stdout);
- fputs(
" Example, send the header \"X-you-and-me: yes\" to the server when getting a\n"
" page:\n"
"\n"
@@ -3886,11 +3791,11 @@ void hugehelp(void)
" This can also be useful in case you want curl to send a different text in a\n"
" header than it normally does. The -H header you specify then replaces the\n"
" header curl would normally send. If you replace an internal header with an\n"
+, stdout);
+ fputs(
" empty one, you prevent that header from being sent. To prevent the Host:\n"
" header from being used:\n"
"\n"
-, stdout);
- fputs(
" curl -H \"Host:\" www.server.com\n"
"\n"
"FTP and PATH NAMES\n"
@@ -3902,12 +3807,12 @@ void hugehelp(void)
" curl ftp://user:passwd@my.site.com/README\n"
"\n"
" But if you want the README file from the root directory of that very same\n"
+, stdout);
+ fputs(
" site, you need to specify the absolute file name:\n"
"\n"
" curl ftp://user:passwd@my.site.com//README\n"
"\n"
-, stdout);
- fputs(
" (I.e with an extra slash in front of the file name.)\n"
"\n"
"SFTP and SCP and PATH NAMES\n"
@@ -3920,9 +3825,9 @@ void hugehelp(void)
"\n"
"FTP and firewalls\n"
"\n"
-" The FTP protocol requires one of the involved parties to open a second\n"
, stdout);
fputs(
+" The FTP protocol requires one of the involved parties to open a second\n"
" connection as soon as data is about to get transferred. There are two ways to\n"
" do this.\n"
"\n"
@@ -3933,9 +3838,9 @@ void hugehelp(void)
"\n"
" curl ftp.download.com\n"
"\n"
-" If the server, for example, is behind a firewall that doesn't allow connections\n"
, stdout);
fputs(
+" If the server, for example, is behind a firewall that doesn't allow connections\n"
" on ports other than 21 (or if it just doesn't support the PASV command), the\n"
" other way to do it is to use the PORT command and instruct the server to\n"
" connect to the client on the given IP number and port (as parameters to the\n"
@@ -3943,10 +3848,10 @@ void hugehelp(void)
"\n"
" The -P flag to curl supports a few different options. Your machine may have\n"
" several IP-addresses and/or network interfaces and curl allows you to select\n"
-" which of them to use. Default address can also be used:\n"
-"\n"
, stdout);
fputs(
+" which of them to use. Default address can also be used:\n"
+"\n"
" curl -P - ftp.download.com\n"
"\n"
" Download with PORT but use the IP address of our 'le0' interface (this does\n"
@@ -3962,12 +3867,12 @@ void hugehelp(void)
"\n"
" Get a web page from a server using a specified port for the interface:\n"
"\n"
+, stdout);
+ fputs(
" curl --interface eth0:1 http://www.netscape.com/\n"
"\n"
" or\n"
"\n"
-, stdout);
- fputs(
" curl --interface 192.168.1.10 http://www.netscape.com/\n"
"\n"
"HTTPS\n"
@@ -3981,17 +3886,17 @@ void hugehelp(void)
" curl https://www.secure-site.com\n"
"\n"
" Curl is also capable of using your personal certificates to get/post files\n"
-" from sites that require valid certificates. The only drawback is that the\n"
, stdout);
fputs(
+" from sites that require valid certificates. The only drawback is that the\n"
" certificate needs to be in PEM-format. PEM is a standard and open format to\n"
" store certificates with, but it is not used by the most commonly used\n"
" browsers (Netscape and MSIE both use the so called PKCS#12 format). If you\n"
" want curl to use the certificates you use with your (favourite) browser, you\n"
" may need to download/compile a converter that can convert your browser's\n"
-" formatted certificates to PEM formatted ones. This kind of converter is\n"
, stdout);
fputs(
+" formatted certificates to PEM formatted ones. This kind of converter is\n"
" included in recent versions of OpenSSL, and for older versions Dr Stephen\n"
" N. Henson has written a patch for SSLeay that adds this functionality. You\n"
" can get his patch (that requires an SSLeay installation) from his site at:\n"
@@ -4000,10 +3905,10 @@ void hugehelp(void)
" Example on how to automatically retrieve a document using a certificate with\n"
" a personal password:\n"
"\n"
-" curl -E /path/to/cert.pem:password https://secure.site.com/\n"
-"\n"
, stdout);
fputs(
+" curl -E /path/to/cert.pem:password https://secure.site.com/\n"
+"\n"
" If you neglect to specify the password on the command line, you will be\n"
" prompted for the correct password before any data can be received.\n"
"\n"
@@ -4012,10 +3917,10 @@ void hugehelp(void)
" SSL-version curl should use. Use -3, -2 or -1 to specify that exact SSL\n"
" version to use (for SSLv3, SSLv2 or TLSv1 respectively):\n"
"\n"
-" curl -2 https://secure.site.com/\n"
-"\n"
, stdout);
fputs(
+" curl -2 https://secure.site.com/\n"
+"\n"
" Otherwise, curl will first attempt to use v3 and then v2.\n"
"\n"
" To use OpenSSL to convert your favourite browser's certificate into a PEM\n"
@@ -4406,7 +4311,7 @@ void hugehelp(void) {}
#else
/*
* NEVER EVER edit this manually, fix the mkhelp.pl script instead!
- * Generation time: Mon Aug 3 00:00:36 2015
+ * Generation time: Sun Dec 28 14:36:38 2014
*/
#ifdef USE_MANUAL
#include "tool_hugehelp.h"
@@ -4414,4180 +4319,4089 @@ void hugehelp(void) {}
#include "memdebug.h" /* keep this as LAST include */
static const unsigned char hugehelpgz[] = {
/* This mumbo-jumbo is the huge help text compressed with gzip.
- Thanks to this operation, the size of this data shrunk from 166000
- to 50046 bytes. You can disable the use of compressed help
+ Thanks to this operation, the size of this data shrunk from 162028
+ to 48958 bytes. You can disable the use of compressed help
texts by NOT passing -c to the mkhelp.pl tool. */
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0xbd,
- 0x7b, 0x5f, 0x23, 0x47, 0x92, 0x36, 0xfa, 0x3f, 0x9f, 0xa2, 0x96, 0x39,
- 0xb3, 0x82, 0x19, 0x49, 0x5c, 0xfa, 0x62, 0x37, 0xd3, 0xed, 0x35, 0xa6,
- 0x69, 0x9b, 0x35, 0xdd, 0xf0, 0x02, 0x6d, 0x7b, 0x5e, 0xdb, 0xbf, 0xfe,
- 0x95, 0xa4, 0x02, 0x6a, 0x90, 0x54, 0x9a, 0xaa, 0x12, 0x34, 0xb3, 0x3b,
- 0xfb, 0xd9, 0x4f, 0xc4, 0x13, 0x11, 0x99, 0x59, 0x95, 0x25, 0x68, 0x7b,
- 0xc7, 0x73, 0xf6, 0x3d, 0xe7, 0x78, 0x77, 0x1a, 0x90, 0xaa, 0xf2, 0x1a,
- 0x19, 0x19, 0xd7, 0x27, 0x92, 0xe4, 0xb1, 0xff, 0x3e, 0xe0, 0x7f, 0x1f,
- 0xe8, 0x3f, 0xfa, 0xb9, 0x96, 0x24, 0xa7, 0x65, 0xf1, 0x97, 0x6c, 0x5c,
- 0x77, 0x3f, 0xfb, 0xe1, 0xc3, 0x7f, 0x26, 0xf2, 0x7f, 0xf4, 0xce, 0x4f,
- 0xf4, 0x73, 0xed, 0xc1, 0xb6, 0xb7, 0x12, 0xff, 0xc2, 0x7f, 0x7e, 0xd8,
- 0x4c, 0x1e, 0x7b, 0xe1, 0x3f, 0x93, 0x0d, 0xbc, 0xf0, 0x41, 0x7b, 0x78,
- 0xc9, 0xbf, 0x7f, 0xf8, 0xf0, 0x70, 0x27, 0x3f, 0xf1, 0xa8, 0xf8, 0x9f,
- 0x2d, 0x7e, 0xef, 0xa7, 0x0f, 0xfc, 0x2b, 0x7d, 0xb2, 0xb6, 0xf6, 0x6e,
- 0xff, 0xed, 0xa1, 0xbd, 0x3a, 0x5e, 0x96, 0xd3, 0x64, 0x90, 0xd4, 0x65,
- 0x3a, 0xaf, 0x2e, 0xb3, 0x32, 0x49, 0x93, 0xf7, 0x67, 0xc7, 0x6b, 0x6b,
- 0xe7, 0x7f, 0x7e, 0x77, 0x72, 0x7a, 0x7e, 0x74, 0xde, 0x78, 0xec, 0xc7,
- 0x62, 0x51, 0xe7, 0xc5, 0xbc, 0xfa, 0x39, 0xf9, 0x91, 0x1e, 0x1a, 0x0e,
- 0x87, 0x3f, 0xaf, 0xad, 0xbd, 0x3e, 0x3c, 0x3f, 0x38, 0x3b, 0x3a, 0xbd,
- 0x38, 0x3a, 0x79, 0xd7, 0x78, 0x36, 0xc9, 0xab, 0x84, 0x1a, 0xab, 0x8b,
- 0x62, 0x4a, 0xff, 0xf8, 0xf6, 0x27, 0x69, 0x9d, 0x26, 0x97, 0x65, 0x31,
- 0x4b, 0x8a, 0x92, 0xbf, 0x48, 0x93, 0x2a, 0x2b, 0x6f, 0xb3, 0xb2, 0x9f,
- 0x2c, 0xab, 0x7c, 0x7e, 0x95, 0x14, 0xf3, 0x2c, 0x29, 0x2e, 0x93, 0xfa,
- 0x3a, 0xb3, 0xe6, 0xaa, 0xe5, 0x62, 0x51, 0x94, 0x75, 0x36, 0x49, 0x16,
- 0x65, 0x51, 0x17, 0xe3, 0x62, 0x5a, 0x25, 0x1b, 0xaf, 0x8f, 0x0e, 0x2e,
- 0xfa, 0xc9, 0x9b, 0xa3, 0xe3, 0x43, 0xfa, 0xf7, 0xe2, 0x14, 0xff, 0x9c,
- 0xf7, 0x93, 0xaf, 0x4f, 0x4e, 0xbf, 0x39, 0x3c, 0xeb, 0x27, 0xdf, 0x5c,
- 0xf0, 0x67, 0xfc, 0x2f, 0x7d, 0x98, 0x1c, 0xbd, 0xdd, 0x3f, 0xed, 0x5b,
- 0x73, 0xfc, 0x07, 0x7f, 0x78, 0xfc, 0x9a, 0x3e, 0x94, 0x1f, 0xfc, 0xe7,
- 0xe9, 0xc9, 0xe9, 0x13, 0xfd, 0xc1, 0x7f, 0x9e, 0x5d, 0xbc, 0xa5, 0x6f,
- 0xcf, 0x2e, 0xce, 0xe9, 0xdf, 0xf3, 0x03, 0xfe, 0x07, 0xbd, 0x9c, 0xbf,
- 0xfd, 0x0a, 0xff, 0x9c, 0xbb, 0xe6, 0xce, 0xdf, 0xca, 0xe7, 0xe8, 0xe9,
- 0xe2, 0xf0, 0xf8, 0xdd, 0xe1, 0x45, 0x92, 0xce, 0x27, 0xc9, 0x05, 0x3d,
- 0xbf, 0x39, 0x4c, 0x2e, 0xae, 0xb3, 0x64, 0x5c, 0xcc, 0x66, 0xfc, 0x11,
- 0xad, 0xc8, 0x24, 0xab, 0xf2, 0xab, 0x39, 0x4d, 0x85, 0x66, 0x7e, 0x57,
- 0x94, 0x37, 0x49, 0x72, 0x97, 0xd7, 0xd7, 0xc5, 0xb2, 0xb6, 0xe6, 0x96,
- 0xb4, 0x1a, 0x49, 0x3e, 0xaf, 0xb3, 0x32, 0x1d, 0xf3, 0x5a, 0x0f, 0xd7,
- 0x1a, 0xab, 0x5a, 0x5c, 0xd2, 0x1a, 0x56, 0xb4, 0x68, 0xa3, 0x65, 0x35,
- 0x2d, 0xd2, 0x09, 0x2f, 0x15, 0xbd, 0x72, 0xb9, 0xa4, 0x45, 0x2e, 0xf3,
- 0xf1, 0x4d, 0x95, 0x4c, 0xf3, 0x9b, 0x8c, 0x17, 0xea, 0xe3, 0xbd, 0x2d,
- 0x5c, 0x5f, 0x1a, 0x4d, 0x97, 0xb4, 0xa6, 0xf3, 0x81, 0x35, 0x57, 0xe7,
- 0xe3, 0x94, 0x3b, 0xc0, 0xca, 0x25, 0xcb, 0x05, 0xb7, 0x26, 0x2b, 0x96,
- 0x2c, 0x8a, 0x8a, 0x5e, 0x3a, 0x3f, 0x3f, 0xa6, 0x91, 0xcf, 0xe7, 0x19,
- 0xc6, 0x51, 0xf5, 0xe9, 0x8f, 0xe2, 0x26, 0xcf, 0xe8, 0x97, 0xcb, 0x7c,
- 0x9a, 0x25, 0xb2, 0xa3, 0xae, 0x39, 0xde, 0xda, 0xa4, 0xcc, 0xaa, 0xe5,
- 0x2c, 0xa3, 0xd5, 0x7b, 0x9b, 0xd5, 0xe9, 0x34, 0x9f, 0xdf, 0xd0, 0xaf,
- 0x3c, 0xf1, 0x59, 0x51, 0x66, 0xc3, 0x64, 0xbf, 0x4a, 0xee, 0x8b, 0x25,
- 0x4d, 0x78, 0x3a, 0xa5, 0x3d, 0xcf, 0x92, 0x51, 0x36, 0x2d, 0xee, 0xfa,
- 0xbc, 0xd3, 0xc9, 0x7c, 0x39, 0x1b, 0x51, 0x03, 0xc5, 0xa5, 0x6f, 0x2e,
- 0xad, 0x97, 0xd4, 0x9c, 0x3c, 0x3d, 0x4b, 0x69, 0x4e, 0xf4, 0x6e, 0x99,
- 0x5c, 0x67, 0x34, 0xe7, 0x6a, 0x91, 0xcf, 0xff, 0xa5, 0xb9, 0x2e, 0xb4,
- 0xb4, 0x8b, 0xe2, 0x2e, 0x2b, 0x69, 0x65, 0x47, 0xf7, 0x09, 0x2d, 0xc2,
- 0x48, 0x88, 0xf0, 0x92, 0x88, 0x2c, 0x49, 0xa9, 0x09, 0x47, 0x80, 0x83,
- 0x32, 0x9b, 0xa6, 0x4c, 0x4c, 0xae, 0x8f, 0x21, 0x6d, 0x62, 0xe6, 0xa8,
- 0x4d, 0x5f, 0xdd, 0x78, 0xb2, 0x89, 0x97, 0x27, 0x34, 0x93, 0x7c, 0x5a,
- 0xd1, 0x36, 0xf0, 0xb1, 0xd0, 0x67, 0x78, 0x53, 0xf9, 0x98, 0x10, 0x6d,
- 0xde, 0xcf, 0xeb, 0xf4, 0x23, 0xba, 0x57, 0xda, 0x1c, 0x4c, 0xb2, 0x45,
- 0x36, 0x9f, 0x64, 0xf3, 0x7a, 0x98, 0xfc, 0xb9, 0x58, 0xf6, 0xa8, 0xef,
- 0xcb, 0x9c, 0xd6, 0x20, 0xd5, 0xa6, 0xa8, 0x67, 0x22, 0x82, 0x71, 0x99,
- 0x2f, 0x82, 0xad, 0x28, 0xe6, 0xb4, 0xe7, 0xc9, 0xd9, 0x9b, 0x83, 0xe4,
- 0xc9, 0x8b, 0xcf, 0x9f, 0xfb, 0x3d, 0xa7, 0x06, 0x92, 0x71, 0x3a, 0xa7,
- 0x19, 0x67, 0xe3, 0xfc, 0xf2, 0x3e, 0x99, 0x2d, 0xa7, 0x75, 0xbe, 0xa0,
- 0xd5, 0xa7, 0xce, 0x2b, 0x3e, 0x40, 0x8b, 0xb4, 0xac, 0x2b, 0x26, 0x02,
- 0x7c, 0x80, 0xb9, 0xdf, 0x95, 0x79, 0xcd, 0x07, 0x09, 0xdf, 0xd1, 0x08,
- 0xb3, 0xba, 0xb2, 0xe6, 0x98, 0xd6, 0xa8, 0x9f, 0x11, 0xd1, 0x16, 0x2d,
- 0x6d, 0x5a, 0x51, 0xa7, 0x7b, 0x6b, 0x9e, 0x87, 0x5c, 0xd7, 0xf5, 0x62,
- 0x6f, 0x6b, 0xab, 0xca, 0xeb, 0x6c, 0xf8, 0x1f, 0x74, 0x0e, 0xfb, 0xf5,
- 0x5d, 0xd1, 0xaf, 0xaf, 0xcb, 0x2c, 0xfb, 0xfb, 0x90, 0x68, 0xd8, 0x3d,
- 0x49, 0xfd, 0xde, 0xeb, 0xc0, 0xae, 0xb2, 0x9a, 0x7a, 0xf8, 0xeb, 0x32,
- 0x9b, 0x73, 0x8b, 0x34, 0x8e, 0x74, 0xba, 0xb8, 0x4e, 0x69, 0x3b, 0x33,
- 0xa2, 0x46, 0x3e, 0xd9, 0x44, 0x30, 0x3c, 0x2a, 0x39, 0xdb, 0x3f, 0xfe,
- 0x1c, 0x77, 0x7a, 0x89, 0x3e, 0xe9, 0xdf, 0xa1, 0xbe, 0x95, 0xd2, 0x6a,
- 0x53, 0x6f, 0x5b, 0x4c, 0x65, 0x3f, 0xee, 0x0c, 0x76, 0xb6, 0xb7, 0x7f,
- 0x1e, 0xd6, 0x1f, 0xeb, 0x4f, 0x7e, 0x65, 0x7b, 0xdb, 0xbf, 0xc4, 0x4f,
- 0x6f, 0xf0, 0xac, 0x93, 0x29, 0x11, 0x0e, 0x0f, 0xe1, 0x6f, 0x59, 0x59,
- 0x54, 0x9b, 0x9d, 0x8d, 0x4d, 0xb3, 0x9a, 0x8e, 0x5d, 0xd0, 0x52, 0x3a,
- 0xf8, 0x5b, 0xb3, 0xeb, 0x77, 0x59, 0x05, 0xca, 0xf1, 0x33, 0x4e, 0xd2,
- 0x92, 0xa8, 0xb7, 0xa8, 0x3d, 0x93, 0xea, 0xd3, 0xd1, 0xac, 0xdd, 0xfa,
- 0xd0, 0xc9, 0xa3, 0xa7, 0x89, 0xbd, 0xa5, 0x53, 0xe6, 0x6c, 0x55, 0x32,
- 0xcf, 0x3e, 0xba, 0xb3, 0x4e, 0x3c, 0x20, 0x4b, 0xc7, 0xd7, 0x49, 0x41,
- 0x47, 0xa0, 0xec, 0xd8, 0x88, 0x74, 0x7e, 0x3f, 0x2c, 0xca, 0xab, 0xad,
- 0xb4, 0x1c, 0x5f, 0xe7, 0xb7, 0xb4, 0x18, 0x2f, 0x5e, 0x3c, 0x1f, 0xd0,
- 0x3f, 0x2f, 0x7e, 0xde, 0xba, 0x2d, 0xa6, 0xb4, 0x36, 0x4f, 0x7f, 0xde,
- 0xe2, 0x4d, 0xfe, 0x8f, 0xb4, 0x3f, 0xea, 0x8f, 0xff, 0x3e, 0xbc, 0xae,
- 0x67, 0xd3, 0x95, 0xa4, 0x43, 0x8d, 0x25, 0xe9, 0xac, 0x58, 0xce, 0x6b,
- 0x47, 0x2e, 0x44, 0x75, 0x75, 0xc0, 0x9e, 0xe8, 0xc0, 0xd2, 0x29, 0x65,
- 0xe2, 0x66, 0x2a, 0xe2, 0x73, 0x47, 0x47, 0xd4, 0x1f, 0xc8, 0x7a, 0x7c,
- 0x4d, 0x73, 0x27, 0xf2, 0x49, 0x75, 0xfe, 0x75, 0x9e, 0xf2, 0xd1, 0x24,
- 0x0e, 0xc1, 0x1c, 0x0b, 0x4d, 0x49, 0x67, 0x39, 0x3d, 0x57, 0x94, 0x93,
- 0xac, 0x6c, 0x12, 0x32, 0x86, 0xe3, 0xc7, 0x93, 0xd0, 0x5a, 0x2e, 0xa8,
- 0xf3, 0x25, 0x33, 0x3b, 0x9c, 0x35, 0x6e, 0x81, 0x4e, 0xe9, 0x15, 0x2d,
- 0x13, 0x2d, 0x0d, 0x93, 0x16, 0xaf, 0xdc, 0x7d, 0xf2, 0x8e, 0xf6, 0x4f,
- 0x38, 0x44, 0x40, 0x81, 0xb2, 0x5b, 0x1d, 0xab, 0x76, 0x77, 0x77, 0xb7,
- 0x9a, 0x94, 0xf6, 0x76, 0x22, 0x6a, 0x0a, 0x5e, 0xeb, 0xa2, 0x80, 0xbd,
- 0xdd, 0xe6, 0x0b, 0xdf, 0x13, 0x13, 0xf5, 0xe4, 0x4c, 0x03, 0xf9, 0x8f,
- 0xbf, 0x07, 0xf4, 0x70, 0xc7, 0xdf, 0xe6, 0xf3, 0xdb, 0xe2, 0x86, 0xd6,
- 0x00, 0xb7, 0x5c, 0xda, 0x58, 0xdf, 0x84, 0xf9, 0xc4, 0x6c, 0x51, 0xbb,
- 0xeb, 0x83, 0x09, 0x85, 0x3e, 0x1a, 0xa5, 0xa3, 0xe9, 0x7d, 0x72, 0x9d,
- 0xde, 0x66, 0x3c, 0xf5, 0x05, 0x51, 0x10, 0x2f, 0x06, 0xb1, 0xf5, 0x29,
- 0xf8, 0x8c, 0x1e, 0xdc, 0x49, 0xb1, 0x1c, 0xd1, 0xe1, 0xff, 0xeb, 0xb2,
- 0xa8, 0x65, 0x8d, 0xd2, 0xdb, 0x22, 0x9f, 0x34, 0xee, 0xca, 0xeb, 0x8c,
- 0x19, 0x0e, 0x77, 0x8c, 0x4b, 0x84, 0x18, 0x1e, 0x8f, 0x14, 0x47, 0x20,
- 0xaf, 0xf9, 0x3a, 0x22, 0x56, 0x45, 0xcb, 0x52, 0x24, 0xc9, 0x55, 0xc1,
- 0xf4, 0x0b, 0x06, 0x09, 0x02, 0xa4, 0xfd, 0xb9, 0x4e, 0xf9, 0xd6, 0xa1,
- 0x15, 0x70, 0x14, 0x5a, 0x66, 0xe0, 0x95, 0xd8, 0xb4, 0x74, 0xda, 0x97,
- 0xdb, 0x85, 0xdf, 0xc9, 0x3e, 0xa6, 0x33, 0x66, 0x44, 0xbd, 0x7f, 0xed,
- 0xf5, 0x93, 0xde, 0xbf, 0xf5, 0xc0, 0xe7, 0x7b, 0x7f, 0xe8, 0xf9, 0x2d,
- 0x27, 0x71, 0xe9, 0x36, 0x9f, 0xf0, 0x45, 0x41, 0x33, 0x39, 0x3a, 0xbd,
- 0x7d, 0x9e, 0xfc, 0x8d, 0xef, 0x76, 0xe2, 0x85, 0xd9, 0x47, 0xa3, 0x17,
- 0x9b, 0x1b, 0xbd, 0x9d, 0x10, 0x53, 0x4c, 0x17, 0x7c, 0xc9, 0x67, 0xe5,
- 0x98, 0x88, 0x2b, 0xbd, 0x22, 0x72, 0xa2, 0xbb, 0xd2, 0x9a, 0xe3, 0xf6,
- 0xf9, 0x15, 0x99, 0x16, 0x31, 0xb0, 0x64, 0x9e, 0xce, 0x88, 0x5e, 0x8f,
- 0x79, 0x44, 0xf9, 0x3c, 0xde, 0xd0, 0x1f, 0x2f, 0xb3, 0xcf, 0xb7, 0xf7,
- 0xf6, 0x9e, 0xfc, 0x7e, 0xf7, 0x59, 0x56, 0x5f, 0x6f, 0xff, 0xbc, 0xe5,
- 0x1e, 0x39, 0xba, 0xc4, 0xb2, 0x1b, 0x25, 0xda, 0x20, 0xe8, 0x16, 0x76,
- 0x5c, 0x9c, 0xde, 0xa7, 0xdf, 0xb3, 0xcb, 0xfc, 0x63, 0xdf, 0xe4, 0x19,
- 0x39, 0x11, 0x29, 0x51, 0x08, 0xed, 0x1f, 0x1f, 0x5e, 0x6b, 0xee, 0x6a,
- 0x99, 0x55, 0xb4, 0x92, 0x77, 0xd7, 0x69, 0x9d, 0xb8, 0x06, 0x64, 0x67,
- 0x67, 0xf9, 0xd5, 0x75, 0x9d, 0xdc, 0xa5, 0x7c, 0x19, 0x1c, 0xd5, 0xd2,
- 0x04, 0xdf, 0xc2, 0x74, 0x05, 0x5c, 0xa6, 0xc4, 0xcb, 0x79, 0x0f, 0x71,
- 0xe5, 0x8e, 0xbc, 0x04, 0x50, 0x13, 0xc5, 0xcb, 0x86, 0x78, 0x71, 0x67,
- 0x94, 0x56, 0x7c, 0xa6, 0xe6, 0x74, 0x74, 0x6b, 0xba, 0xc3, 0x97, 0xfc,
- 0xd7, 0x35, 0xdd, 0xd2, 0x58, 0x03, 0x1d, 0x28, 0x2e, 0xb2, 0x37, 0xbc,
- 0x9d, 0xbc, 0x37, 0xee, 0x72, 0xa1, 0x4d, 0xea, 0xeb, 0x36, 0xbb, 0x37,
- 0x2a, 0x3a, 0x7b, 0xc4, 0x37, 0x1c, 0x65, 0xac, 0x33, 0xfb, 0x5b, 0x97,
- 0x79, 0x62, 0x8c, 0x69, 0xc5, 0x17, 0xb9, 0x5c, 0xd7, 0x34, 0xf8, 0x60,
- 0xb2, 0xb4, 0x68, 0xe9, 0x0d, 0x8b, 0x0c, 0x2d, 0xc1, 0x04, 0xaf, 0x4d,
- 0x0a, 0x22, 0x32, 0x1a, 0x2d, 0xb1, 0x49, 0x9e, 0x19, 0x33, 0x3f, 0xac,
- 0x0a, 0x88, 0x9c, 0xda, 0xe4, 0x0f, 0xf3, 0x9a, 0xef, 0x00, 0x48, 0x99,
- 0x34, 0x5e, 0x5a, 0x14, 0x08, 0x8a, 0xc4, 0x42, 0x83, 0xf9, 0xe3, 0xfa,
- 0xa2, 0x67, 0x93, 0x5b, 0x92, 0x22, 0x48, 0x60, 0xcc, 0xdc, 0x5b, 0xb8,
- 0x6f, 0xc7, 0x2c, 0xbb, 0x4c, 0xe9, 0xbc, 0x8c, 0x8b, 0xb2, 0x64, 0x89,
- 0x9c, 0x77, 0x70, 0x24, 0x2c, 0x6e, 0x96, 0xd1, 0x35, 0x1f, 0x2e, 0x67,
- 0xce, 0x17, 0x0e, 0xb1, 0x1a, 0x92, 0x1b, 0xc0, 0x4c, 0xe8, 0x7e, 0x07,
- 0x37, 0xc6, 0xc4, 0x31, 0x3a, 0x6e, 0x7b, 0x3c, 0xce, 0x16, 0x75, 0xd5,
- 0x35, 0x27, 0xdb, 0x70, 0x1a, 0x4e, 0x99, 0xf1, 0xca, 0x87, 0x42, 0x11,
- 0xd6, 0xd5, 0x5d, 0xca, 0x90, 0x8b, 0x4c, 0xce, 0x20, 0x39, 0xa9, 0x72,
- 0xab, 0x56, 0x83, 0x36, 0x88, 0xa3, 0x61, 0xcd, 0x67, 0x3c, 0x50, 0x7e,
- 0xb8, 0x92, 0x93, 0x0a, 0xce, 0xc9, 0x1b, 0x29, 0x92, 0xb0, 0xf4, 0xcb,
- 0x97, 0x0a, 0xad, 0xa7, 0x6b, 0x9c, 0x7a, 0x75, 0x7b, 0xca, 0xdd, 0x57,
- 0xa4, 0x43, 0xd0, 0x4d, 0x3b, 0xa9, 0xae, 0x49, 0x38, 0xaa, 0xf4, 0x64,
- 0xe7, 0x33, 0xa2, 0x99, 0x5b, 0xde, 0xdf, 0x45, 0x96, 0x4d, 0x86, 0xc9,
- 0xc9, 0x25, 0x33, 0xd8, 0x92, 0x06, 0x5d, 0xe3, 0x6b, 0xe6, 0xf9, 0xb4,
- 0x6e, 0x13, 0x08, 0xd9, 0xee, 0x68, 0xc9, 0x50, 0x02, 0xe6, 0xcd, 0x94,
- 0x46, 0x8b, 0x9d, 0x30, 0x97, 0x9b, 0x36, 0x2f, 0x08, 0x9c, 0x43, 0x62,
- 0xe4, 0x3c, 0xbc, 0x51, 0x96, 0x80, 0x12, 0x47, 0x59, 0x7d, 0x97, 0x65,
- 0xae, 0xb9, 0x2a, 0xa3, 0x4b, 0x89, 0x37, 0x4d, 0x24, 0x33, 0x30, 0x43,
- 0x5e, 0xda, 0xd3, 0xb3, 0x93, 0xaf, 0xcf, 0x0e, 0xcf, 0xcf, 0x93, 0xb7,
- 0x87, 0x17, 0x87, 0x67, 0x8d, 0x95, 0x9e, 0x17, 0xe5, 0x0c, 0x3b, 0x3a,
- 0xc9, 0xab, 0xc5, 0x34, 0xbd, 0xe7, 0xad, 0xa6, 0x99, 0x5c, 0x95, 0x7c,
- 0xb2, 0x66, 0x19, 0x5f, 0x10, 0x93, 0x25, 0x38, 0x59, 0x52, 0x10, 0x7f,
- 0x48, 0x55, 0x22, 0x65, 0x66, 0x02, 0x31, 0x76, 0x7e, 0xe5, 0x57, 0x9a,
- 0x38, 0x8e, 0xde, 0x73, 0x7c, 0xd1, 0xb9, 0xfd, 0x60, 0xd1, 0x10, 0xca,
- 0x47, 0xdf, 0x7f, 0x26, 0xcb, 0x54, 0x61, 0x4e, 0x44, 0xb3, 0xf9, 0x0c,
- 0xcc, 0x8e, 0x7e, 0x7a, 0x69, 0x30, 0xbb, 0x24, 0x51, 0x98, 0xee, 0xbe,
- 0x16, 0x69, 0xb8, 0x71, 0x62, 0x5d, 0xa1, 0xd3, 0xb0, 0x92, 0x43, 0x9d,
- 0xd3, 0x58, 0x67, 0xf9, 0x9c, 0x08, 0x8c, 0x08, 0x52, 0x4f, 0x39, 0x53,
- 0x02, 0x8d, 0xf5, 0x52, 0x78, 0x82, 0xae, 0x48, 0x53, 0x59, 0xa2, 0x97,
- 0x69, 0xb3, 0x89, 0x0b, 0xba, 0xe9, 0x61, 0x50, 0x44, 0x9a, 0xcc, 0xaf,
- 0x47, 0xcc, 0x9a, 0x58, 0x63, 0x20, 0xd1, 0x2e, 0xeb, 0xec, 0xcd, 0xdd,
- 0x27, 0xf4, 0x06, 0x8d, 0x8d, 0x6e, 0x13, 0xbe, 0x20, 0xae, 0xb3, 0xf6,
- 0x2a, 0xd2, 0x21, 0x02, 0x6f, 0xb9, 0xcb, 0x2b, 0x1c, 0xaa, 0xbb, 0x62,
- 0x39, 0x25, 0xf9, 0x9c, 0x1f, 0x58, 0x2e, 0xf0, 0x02, 0x75, 0xb5, 0xf0,
- 0xa7, 0x67, 0x96, 0x7f, 0xe4, 0x55, 0x6f, 0xb7, 0x42, 0x43, 0xa3, 0x3f,
- 0x17, 0xb4, 0x09, 0x32, 0x9c, 0x61, 0x9b, 0xb7, 0x82, 0x6b, 0x44, 0x7b,
- 0xc8, 0xa7, 0x05, 0xec, 0xee, 0xf4, 0xe4, 0xfc, 0x82, 0xef, 0xce, 0xd3,
- 0xf7, 0x17, 0xd4, 0x10, 0x5d, 0x9e, 0x55, 0x4d, 0xdb, 0xc9, 0x2f, 0xce,
- 0x33, 0x28, 0x47, 0xd6, 0x1c, 0xed, 0x5a, 0x8e, 0x23, 0x0e, 0xd9, 0xc0,
- 0xba, 0x94, 0x31, 0x8a, 0xf6, 0xc8, 0xc4, 0x6b, 0xba, 0xa3, 0xdc, 0x7e,
- 0xfe, 0xa5, 0x64, 0xe3, 0x8b, 0x4d, 0xda, 0xee, 0x81, 0x6b, 0xee, 0x47,
- 0x7e, 0x1a, 0xb7, 0x76, 0x95, 0xcf, 0xf2, 0x69, 0x1a, 0x48, 0x28, 0xca,
- 0x89, 0x98, 0xae, 0xdd, 0x79, 0x1c, 0x13, 0xdb, 0xc5, 0xa0, 0xbd, 0x8a,
- 0xc4, 0x2b, 0x88, 0xd3, 0xec, 0x37, 0x6a, 0xc2, 0x17, 0x29, 0x64, 0xc0,
- 0x45, 0xee, 0x16, 0x8e, 0x77, 0x8c, 0x8f, 0x79, 0x63, 0x99, 0xda, 0xbb,
- 0x16, 0x2d, 0x1b, 0x73, 0x72, 0xe8, 0xe0, 0x6e, 0xe1, 0xd6, 0x47, 0x69,
- 0xb9, 0xee, 0x38, 0x98, 0x28, 0xc6, 0xd4, 0xe8, 0xd5, 0x92, 0x06, 0x2f,
- 0xab, 0xda, 0x4f, 0x06, 0xbf, 0xe3, 0x91, 0xb3, 0x7e, 0xe4, 0x4e, 0x34,
- 0xc9, 0xdd, 0xf3, 0xc9, 0x70, 0xed, 0x04, 0x7a, 0xb9, 0x53, 0xe2, 0x4f,
- 0x44, 0x7d, 0x4f, 0x84, 0xfd, 0x8b, 0x3e, 0x90, 0x88, 0xc6, 0x4d, 0xd2,
- 0xd7, 0x1d, 0xd1, 0x60, 0x4a, 0x4b, 0x48, 0xcc, 0xe4, 0x2d, 0x0f, 0x5d,
- 0x3b, 0x53, 0x9d, 0x1f, 0xfb, 0x44, 0xcb, 0x4a, 0xb3, 0x72, 0x57, 0xf2,
- 0x64, 0x92, 0xf3, 0x77, 0x44, 0xec, 0xc4, 0xa8, 0x97, 0x19, 0x84, 0x5b,
- 0x9d, 0xe3, 0xcc, 0xcf, 0x8d, 0xb5, 0xa5, 0xea, 0x9a, 0x84, 0xe3, 0x64,
- 0x5d, 0x18, 0xca, 0x80, 0xbb, 0x59, 0xe7, 0x85, 0x9d, 0xb5, 0x3a, 0xa1,
- 0xb9, 0x4c, 0xf4, 0xb2, 0x52, 0x01, 0x83, 0xb6, 0x6f, 0x96, 0xde, 0x87,
- 0x92, 0x28, 0x58, 0x0e, 0x46, 0x5e, 0x94, 0xee, 0xde, 0xa6, 0x9b, 0x61,
- 0xc1, 0x32, 0x81, 0xb2, 0x22, 0xf0, 0x74, 0x9c, 0x9f, 0x4a, 0x86, 0xd6,
- 0x27, 0xa1, 0x87, 0x9f, 0xbc, 0xba, 0xb6, 0x47, 0x83, 0xfb, 0x21, 0xa5,
- 0xb9, 0x31, 0x8f, 0x63, 0xb5, 0x6d, 0x62, 0xec, 0xab, 0x28, 0x45, 0x79,
- 0x9f, 0x16, 0xcc, 0x75, 0xd6, 0x45, 0xf4, 0xd2, 0x91, 0x63, 0xe8, 0x4c,
- 0x58, 0x03, 0xec, 0x2a, 0xff, 0x69, 0xcd, 0xb9, 0x61, 0xeb, 0x72, 0x55,
- 0x8f, 0x0e, 0xcd, 0x2f, 0xd4, 0x39, 0x16, 0x89, 0x6e, 0x80, 0x8a, 0xc9,
- 0xca, 0xd6, 0x1d, 0xd4, 0x46, 0x1c, 0xbb, 0x57, 0xcb, 0xe1, 0x80, 0x20,
- 0xdf, 0x5a, 0xf9, 0x0a, 0xb2, 0xb5, 0xf2, 0x63, 0x37, 0x33, 0x9a, 0xd1,
- 0x24, 0x27, 0x96, 0x46, 0x7c, 0xd5, 0x76, 0xc6, 0xeb, 0x1b, 0x1d, 0xb2,
- 0xdc, 0x7d, 0x24, 0xa4, 0xb3, 0xea, 0x1c, 0x72, 0x56, 0x1b, 0xd3, 0xe0,
- 0x84, 0x76, 0xea, 0x18, 0xf3, 0x18, 0xdc, 0x26, 0x7c, 0x1a, 0x48, 0xfa,
- 0xe5, 0xa3, 0x31, 0x38, 0x39, 0xbe, 0x0d, 0xa8, 0x9a, 0x15, 0xc4, 0x39,
- 0x5f, 0xb7, 0x7d, 0x28, 0xe1, 0xa3, 0xa2, 0x20, 0x3d, 0xcc, 0x4f, 0x8d,
- 0x95, 0xa7, 0x6c, 0xce, 0xcc, 0x4a, 0x77, 0x74, 0x30, 0x90, 0xaf, 0xd0,
- 0xf2, 0x3d, 0x29, 0x00, 0xe9, 0x55, 0x9a, 0x3b, 0x7a, 0x53, 0xc6, 0xe6,
- 0x9e, 0x9d, 0x17, 0xfa, 0x38, 0xef, 0x14, 0x5f, 0xe4, 0xca, 0x43, 0x96,
- 0xb8, 0xef, 0x32, 0x9e, 0x17, 0x31, 0x01, 0x9c, 0x64, 0x6d, 0x16, 0xd2,
- 0x8f, 0x35, 0x37, 0x82, 0xbc, 0xc7, 0xa2, 0x13, 0x38, 0x21, 0x04, 0x21,
- 0x6a, 0x72, 0x7d, 0x98, 0x7c, 0x53, 0xdc, 0x65, 0x30, 0x49, 0x41, 0x4c,
- 0xcd, 0xd9, 0xa8, 0x42, 0x12, 0xcd, 0x5d, 0x96, 0xcc, 0x48, 0x82, 0xa2,
- 0xd5, 0xc4, 0x25, 0x8a, 0xcf, 0x68, 0x9c, 0x5e, 0xf4, 0x2e, 0xee, 0xd0,
- 0xad, 0x9b, 0x84, 0xdb, 0xc9, 0x4b, 0x39, 0x11, 0xc9, 0x06, 0x2e, 0xe9,
- 0x31, 0x2f, 0xd6, 0xa2, 0xf6, 0xb3, 0x70, 0xeb, 0x41, 0x6c, 0xb3, 0x0a,
- 0x0e, 0x17, 0xdf, 0x58, 0x34, 0x82, 0xe4, 0xb3, 0xe1, 0xce, 0x8b, 0xe1,
- 0xf6, 0x90, 0x45, 0xea, 0xec, 0x36, 0x2f, 0x96, 0x15, 0xf5, 0x8e, 0xa1,
- 0x24, 0xc1, 0x9b, 0x59, 0xc9, 0xa2, 0x76, 0x71, 0x75, 0x35, 0x95, 0x0b,
- 0x7c, 0xab, 0xb8, 0xbc, 0x0c, 0xee, 0xf8, 0x32, 0x5b, 0x88, 0x28, 0xcf,
- 0x8b, 0xa3, 0x87, 0x4e, 0x78, 0x5c, 0x78, 0xb9, 0xeb, 0x72, 0x7a, 0xfd,
- 0x78, 0xf0, 0x3b, 0xda, 0xe8, 0x81, 0x71, 0xa3, 0x01, 0x31, 0xa3, 0x96,
- 0xc9, 0xf1, 0x2d, 0x9b, 0x66, 0xc2, 0x2b, 0xd1, 0xb3, 0x2e, 0x11, 0xd8,
- 0x72, 0x90, 0x96, 0xfb, 0x90, 0x5a, 0x48, 0x1c, 0x3b, 0x0b, 0x0c, 0x3e,
- 0x01, 0x91, 0x11, 0x73, 0x9a, 0x4f, 0xd2, 0x92, 0x34, 0x69, 0xb6, 0x1b,
- 0xd1, 0xc3, 0x7c, 0xda, 0x52, 0x21, 0xf7, 0xbe, 0xf0, 0x3c, 0x4f, 0x62,
- 0x83, 0x3d, 0x1e, 0x60, 0xa8, 0x55, 0x1b, 0xd7, 0xa1, 0xab, 0xa0, 0x92,
- 0x91, 0xa9, 0x28, 0x9a, 0x7a, 0xc9, 0xc4, 0x33, 0x6f, 0xd3, 0x3b, 0x2f,
- 0x8b, 0xe9, 0xb4, 0xb8, 0xe3, 0x4b, 0x84, 0x85, 0xc9, 0x60, 0x5b, 0x6d,
- 0x3b, 0xaa, 0xaa, 0x18, 0xe7, 0x62, 0x38, 0xd2, 0x45, 0x87, 0xae, 0x0c,
- 0x2b, 0x27, 0xbf, 0x5a, 0xe9, 0xed, 0xce, 0x62, 0x6b, 0x45, 0x9c, 0x24,
- 0x71, 0x7a, 0x3f, 0x4c, 0x45, 0xad, 0xe6, 0xfc, 0xa5, 0x27, 0x47, 0x52,
- 0x59, 0x31, 0x8d, 0x24, 0x67, 0x7d, 0xec, 0xce, 0xf4, 0xf6, 0x7c, 0xec,
- 0x59, 0x63, 0x70, 0x54, 0xfb, 0xad, 0xe6, 0xaa, 0x25, 0xb5, 0x41, 0xeb,
- 0x3d, 0xc9, 0xd9, 0x3e, 0x48, 0xda, 0x93, 0x98, 0xfc, 0x44, 0xd6, 0xa7,
- 0xd7, 0xc6, 0xcb, 0xaa, 0x26, 0x41, 0xd3, 0x7a, 0x95, 0xa6, 0xa8, 0x5f,
- 0x22, 0xc9, 0x7d, 0xa6, 0xb3, 0x56, 0x73, 0x44, 0x74, 0x9f, 0x0d, 0x9f,
- 0x3c, 0x1f, 0x6e, 0x07, 0x84, 0xb0, 0xcd, 0xeb, 0xcc, 0xaa, 0xd5, 0xce,
- 0x70, 0xbb, 0xf5, 0xf8, 0x06, 0xdf, 0xe9, 0x9b, 0xb6, 0xe4, 0x8d, 0x35,
- 0xc7, 0x6d, 0x6f, 0xe7, 0x80, 0xde, 0x0c, 0x6f, 0x32, 0xb9, 0xb3, 0x73,
- 0x6f, 0x9e, 0x72, 0xbd, 0xd3, 0x0e, 0xcf, 0x21, 0x0e, 0xca, 0x7d, 0x48,
- 0xf7, 0xf9, 0x9e, 0xb4, 0xb4, 0x33, 0xdc, 0x09, 0xb6, 0x5e, 0x87, 0xb3,
- 0xd3, 0x3d, 0x9c, 0x98, 0x00, 0x5a, 0x83, 0xd9, 0x31, 0xa1, 0x59, 0x24,
- 0x25, 0xd7, 0x6f, 0xab, 0x39, 0x53, 0xd5, 0xf4, 0x45, 0x5b, 0x32, 0x5d,
- 0xa4, 0x27, 0x8d, 0x45, 0xc2, 0x88, 0x76, 0x3f, 0x61, 0x79, 0x40, 0x26,
- 0x39, 0x69, 0x59, 0xdc, 0x2f, 0x6d, 0x88, 0xdf, 0x1a, 0x59, 0x15, 0x0c,
- 0x75, 0x57, 0x06, 0xd8, 0x41, 0x3a, 0xb8, 0x58, 0x70, 0x31, 0xf0, 0xc8,
- 0x97, 0x74, 0x6f, 0x95, 0x53, 0x68, 0x4d, 0x66, 0xf8, 0x24, 0x46, 0x42,
- 0xfc, 0x2d, 0x9f, 0xd6, 0x4a, 0x90, 0x62, 0x9d, 0xe2, 0xbe, 0x86, 0xed,
- 0xd1, 0x3d, 0x30, 0x1b, 0xe2, 0x86, 0xf3, 0xc5, 0xbc, 0xf5, 0xc2, 0x6b,
- 0xe1, 0xc2, 0x2a, 0x6a, 0xbf, 0x3b, 0x7d, 0x47, 0x33, 0x3b, 0x3e, 0xe7,
- 0x9b, 0x8f, 0x54, 0x53, 0x59, 0x21, 0x7c, 0x4a, 0xcb, 0x6a, 0xbc, 0xdd,
- 0x8b, 0xc2, 0x24, 0x05, 0xb7, 0x9a, 0x8b, 0x47, 0x6c, 0x06, 0x01, 0x36,
- 0x40, 0xd3, 0xb7, 0x65, 0x4a, 0x5a, 0x1b, 0xe6, 0xaa, 0xb3, 0xa8, 0xb8,
- 0xf9, 0xa1, 0xf4, 0x1c, 0xad, 0x0e, 0xa4, 0x03, 0x28, 0x83, 0xae, 0xe5,
- 0xe6, 0xbb, 0xb2, 0xb2, 0xbc, 0x2a, 0xf3, 0xec, 0xaa, 0xa8, 0xf9, 0x48,
- 0xdb, 0x67, 0xf4, 0xcc, 0xa0, 0xd5, 0x1c, 0x56, 0x0d, 0x03, 0x02, 0x67,
- 0x12, 0xfd, 0x4c, 0x55, 0x11, 0xde, 0x6b, 0xd2, 0xb4, 0x88, 0xab, 0x81,
- 0x1b, 0xac, 0x3d, 0xb4, 0xb0, 0xcf, 0xa3, 0x85, 0x4d, 0xa7, 0x2b, 0x57,
- 0x96, 0xbb, 0xda, 0x3f, 0xa6, 0xe9, 0xf1, 0xba, 0x06, 0xcb, 0x8a, 0xcf,
- 0x82, 0x65, 0x85, 0xb9, 0xd7, 0x16, 0x76, 0xf5, 0xca, 0x62, 0x69, 0x3f,
- 0x79, 0x6d, 0xb9, 0x13, 0xe9, 0xaa, 0x7d, 0x2c, 0x2b, 0xd5, 0xf6, 0x3e,
- 0x65, 0x6d, 0x83, 0xc5, 0x95, 0x4f, 0x93, 0xdd, 0x88, 0x65, 0x2d, 0x7e,
- 0x9b, 0xc5, 0xdd, 0x61, 0x46, 0x55, 0x4f, 0xab, 0xdb, 0x88, 0x2f, 0xd0,
- 0xa4, 0x37, 0xd9, 0x42, 0xc2, 0x86, 0xba, 0x90, 0x2f, 0xf0, 0x32, 0x7b,
- 0xb6, 0xf0, 0x51, 0x8c, 0x78, 0x36, 0x01, 0x67, 0x24, 0x49, 0xa3, 0x73,
- 0x38, 0x2b, 0x6a, 0x79, 0x59, 0x86, 0x3e, 0xf4, 0x46, 0x57, 0x6e, 0xd5,
- 0xdf, 0xcd, 0x3a, 0x9c, 0xe1, 0x76, 0xdf, 0xff, 0xbe, 0xd3, 0x66, 0xe1,
- 0x7c, 0x07, 0xbb, 0x6f, 0xb1, 0x86, 0x24, 0x27, 0xd4, 0x65, 0x01, 0x83,
- 0x51, 0x63, 0x88, 0xb8, 0x15, 0x89, 0x33, 0x8e, 0x49, 0x87, 0x23, 0x1e,
- 0xb9, 0x91, 0x37, 0xbc, 0x65, 0x26, 0x4b, 0xd2, 0x06, 0x8f, 0xd2, 0xf1,
- 0x0d, 0xdf, 0x44, 0xb9, 0xda, 0xa1, 0x6d, 0x9b, 0xe4, 0xb6, 0x20, 0xdd,
- 0xf6, 0x36, 0x63, 0x8f, 0x92, 0x75, 0xb4, 0x19, 0xb0, 0xd6, 0x5d, 0x5e,
- 0xc4, 0xaa, 0x9a, 0xde, 0xee, 0x7e, 0xea, 0x22, 0x72, 0x87, 0x36, 0xc2,
- 0xdd, 0x78, 0x09, 0xf5, 0x82, 0x5b, 0xb1, 0x88, 0x78, 0xdb, 0x2f, 0xe3,
- 0x79, 0x41, 0xb7, 0x7c, 0x3e, 0xb3, 0x1e, 0xf2, 0x90, 0x33, 0xb0, 0xb4,
- 0x4f, 0x4f, 0xdf, 0xae, 0x3c, 0xae, 0x43, 0xfd, 0x3a, 0x67, 0xe7, 0xd1,
- 0x24, 0x83, 0x99, 0x88, 0x0e, 0xd0, 0x04, 0xce, 0x21, 0xba, 0x7e, 0x32,
- 0x6a, 0x33, 0x10, 0xba, 0x07, 0x4f, 0x6c, 0xaa, 0x4f, 0x7e, 0xcd, 0x54,
- 0x9f, 0xfc, 0x13, 0xa6, 0xfa, 0x64, 0xe5, 0x54, 0xfd, 0x2c, 0x9e, 0xf2,
- 0x2c, 0xf2, 0xc5, 0xed, 0xd3, 0xb6, 0x18, 0xc4, 0x37, 0x9c, 0xca, 0xa3,
- 0x75, 0xe3, 0x46, 0xa4, 0x2b, 0xa4, 0x98, 0xde, 0x66, 0x2a, 0x24, 0xd0,
- 0x07, 0x47, 0xa7, 0xb7, 0x4f, 0x59, 0xec, 0x64, 0x39, 0x8d, 0xed, 0x41,
- 0x2c, 0xe5, 0x76, 0x51, 0x29, 0xab, 0xba, 0xa1, 0xda, 0xc0, 0x06, 0x4b,
- 0xb6, 0xef, 0x06, 0xa3, 0x79, 0xae, 0xa3, 0x79, 0xde, 0x35, 0x9a, 0x4f,
- 0x1f, 0xce, 0xf3, 0x60, 0x38, 0xbf, 0x70, 0x34, 0x4f, 0x83, 0xd1, 0xa4,
- 0x3c, 0x9a, 0x74, 0xc1, 0x6e, 0xb9, 0xf6, 0x16, 0x93, 0x62, 0xbf, 0xc5,
- 0x9e, 0xdd, 0x4d, 0xb3, 0xeb, 0xab, 0x8b, 0x63, 0xee, 0x3c, 0xa2, 0x90,
- 0xff, 0xd9, 0x01, 0xa9, 0x43, 0x95, 0x76, 0x54, 0xcb, 0x6d, 0x4b, 0xaf,
- 0x69, 0xc9, 0x5e, 0x0b, 0x75, 0x90, 0x06, 0x52, 0x2e, 0xfd, 0x8f, 0xb6,
- 0xdb, 0x79, 0xe6, 0xd8, 0x12, 0xcf, 0x2a, 0xbf, 0x2a, 0xf3, 0xa0, 0x0b,
- 0x7e, 0xa7, 0x2d, 0x79, 0x14, 0x59, 0xc5, 0x6a, 0x5f, 0xf6, 0x31, 0x67,
- 0x87, 0x6c, 0xae, 0x06, 0x64, 0x52, 0xf3, 0x92, 0xb1, 0x18, 0xe6, 0x87,
- 0xec, 0x94, 0x02, 0x55, 0x89, 0x85, 0x11, 0x83, 0x4d, 0x2e, 0xa7, 0xe9,
- 0x55, 0xc7, 0xd5, 0x98, 0x5f, 0xcd, 0x0b, 0x75, 0x90, 0x56, 0x44, 0x75,
- 0xf0, 0x68, 0x2b, 0x21, 0x56, 0xc4, 0x45, 0xe6, 0xe3, 0xe9, 0x12, 0x2e,
- 0xb2, 0x13, 0x9a, 0xe0, 0xf9, 0xf9, 0x37, 0x21, 0x3b, 0xd8, 0xe7, 0x15,
- 0x64, 0x91, 0x72, 0x90, 0x5e, 0xb1, 0x74, 0xf9, 0x52, 0x7e, 0x54, 0x35,
- 0xf3, 0xea, 0x2f, 0xba, 0xe5, 0x9d, 0x73, 0xd5, 0x21, 0x61, 0xe7, 0xe7,
- 0x57, 0xf7, 0x83, 0x77, 0x78, 0xfd, 0x2a, 0xbf, 0x8e, 0x72, 0x47, 0xe8,
- 0xa1, 0x68, 0x73, 0x32, 0x1e, 0x2b, 0xf1, 0xb2, 0x09, 0x6b, 0x3d, 0xb0,
- 0x5c, 0x26, 0x07, 0x5f, 0x1f, 0xf1, 0x34, 0xd3, 0x7c, 0x2a, 0x66, 0x35,
- 0x9d, 0x76, 0x9e, 0x4d, 0x59, 0x63, 0xc2, 0x9a, 0xc1, 0xf1, 0x99, 0x84,
- 0x66, 0x7a, 0xfd, 0x6f, 0xfd, 0x6d, 0xf1, 0x37, 0x5a, 0xc5, 0x74, 0xeb,
- 0xe9, 0x70, 0x7b, 0x9d, 0x45, 0x78, 0xba, 0xac, 0xb2, 0xf9, 0xb8, 0x60,
- 0x4f, 0xc5, 0x68, 0x9a, 0xce, 0x6f, 0x2a, 0x51, 0xba, 0x44, 0x13, 0xe1,
- 0xb1, 0xf6, 0xe9, 0xf8, 0x95, 0x65, 0xb1, 0x9c, 0x4f, 0x3a, 0xb6, 0x5c,
- 0xa7, 0x83, 0x23, 0xaf, 0xe6, 0x52, 0xb8, 0x67, 0x88, 0x64, 0xca, 0x1b,
- 0x33, 0xcb, 0xf2, 0x95, 0x00, 0xa7, 0x0b, 0x6f, 0x1d, 0xc6, 0xe5, 0xc4,
- 0xfd, 0x56, 0x73, 0x83, 0x6f, 0x20, 0x66, 0x13, 0xd9, 0xb0, 0x3b, 0x5c,
- 0xce, 0x49, 0x61, 0x46, 0xdc, 0xe8, 0x16, 0x3c, 0xba, 0x94, 0xa9, 0xeb,
- 0x83, 0x76, 0x43, 0x9b, 0xe2, 0x01, 0xbe, 0x22, 0x0e, 0xf6, 0x69, 0x5a,
- 0xd5, 0x30, 0xf4, 0x18, 0x05, 0xf1, 0x83, 0xa1, 0x28, 0x9d, 0xce, 0xef,
- 0x39, 0x40, 0xe0, 0x53, 0x44, 0xe9, 0xcb, 0xfc, 0x8a, 0x38, 0xa8, 0x58,
- 0xb8, 0x10, 0x53, 0x60, 0xa1, 0x04, 0xac, 0x9b, 0x5d, 0x17, 0x20, 0x30,
- 0x92, 0x69, 0xb3, 0xe9, 0x65, 0xd7, 0x79, 0x35, 0xe5, 0x1c, 0xfa, 0xab,
- 0x30, 0x63, 0x0c, 0x2c, 0x38, 0x0a, 0xec, 0x80, 0x4e, 0xc6, 0xd3, 0x34,
- 0x9f, 0x55, 0x0d, 0xf1, 0x75, 0xd8, 0xc5, 0x4d, 0xd8, 0xfc, 0xca, 0xef,
- 0x8f, 0xd8, 0xa4, 0x5e, 0x56, 0x6c, 0x2a, 0xe1, 0x0d, 0x49, 0x4d, 0xa2,
- 0x16, 0x83, 0xf5, 0x75, 0x36, 0xbe, 0x01, 0xd9, 0x05, 0x66, 0xc4, 0x36,
- 0x47, 0x95, 0x55, 0xc7, 0x82, 0x2d, 0x39, 0x9c, 0x80, 0x44, 0x0f, 0x76,
- 0xca, 0xe5, 0xf3, 0xc9, 0x72, 0x8c, 0x63, 0xcb, 0x96, 0x11, 0x12, 0xc7,
- 0xca, 0x94, 0xc5, 0x9b, 0x5a, 0xc2, 0x37, 0x40, 0x17, 0x03, 0x22, 0x82,
- 0x45, 0xe7, 0xe8, 0xe0, 0xdc, 0x10, 0x99, 0xb4, 0xc1, 0x0e, 0x2a, 0x75,
- 0x05, 0xc0, 0xca, 0x6e, 0x9a, 0x5e, 0x73, 0x35, 0x5b, 0xcd, 0xc9, 0xda,
- 0xf6, 0xe9, 0xba, 0xc9, 0xe9, 0xf6, 0x36, 0xff, 0xf2, 0xa4, 0x50, 0x52,
- 0x1a, 0x90, 0x6e, 0x5e, 0xe5, 0x63, 0x31, 0x4a, 0xe5, 0x57, 0x19, 0x33,
- 0x0c, 0x16, 0x34, 0xeb, 0xe9, 0x4c, 0x82, 0x30, 0xda, 0x84, 0x36, 0x70,
- 0x12, 0x5a, 0x44, 0x56, 0x21, 0x47, 0x11, 0x75, 0xc4, 0xd1, 0x87, 0x99,
- 0x48, 0x43, 0x83, 0x59, 0x2e, 0xb6, 0x4b, 0x1a, 0x8a, 0xf0, 0xcc, 0x36,
- 0xdf, 0x81, 0x8f, 0xa3, 0xaa, 0x89, 0xb7, 0xf4, 0xf9, 0x88, 0x8c, 0x61,
- 0x78, 0x66, 0xa3, 0x9e, 0x59, 0x14, 0xcd, 0x34, 0x3a, 0x62, 0x21, 0x90,
- 0xbd, 0x4d, 0x77, 0xf9, 0x58, 0x1c, 0x0d, 0x70, 0x96, 0x75, 0x98, 0x08,
- 0xc6, 0xd3, 0x9c, 0x1f, 0x9c, 0x91, 0x5a, 0xcb, 0x6f, 0x89, 0xd4, 0xcc,
- 0x77, 0x08, 0x69, 0xf0, 0xc4, 0x14, 0x8f, 0xc4, 0xbe, 0x01, 0x73, 0x59,
- 0x75, 0x0d, 0x13, 0x77, 0x5a, 0xe6, 0xf0, 0x46, 0x45, 0xcd, 0xc9, 0x98,
- 0x79, 0x92, 0xe1, 0x38, 0xa1, 0x56, 0x89, 0xc1, 0xd7, 0xdb, 0x0a, 0x70,
- 0x76, 0x98, 0xeb, 0x04, 0x07, 0x67, 0xc4, 0xe7, 0x55, 0x22, 0x63, 0x92,
- 0x97, 0x7c, 0x77, 0xbd, 0xe2, 0xd9, 0xac, 0x60, 0x89, 0xa7, 0xf0, 0x81,
- 0x5d, 0x37, 0x8d, 0xc1, 0x01, 0xeb, 0x13, 0x93, 0x89, 0xb4, 0x06, 0x87,
- 0x21, 0x53, 0x4f, 0xe7, 0xdd, 0x4f, 0x14, 0xc5, 0xec, 0xd0, 0xb5, 0xb5,
- 0xf0, 0x96, 0x21, 0xda, 0x9a, 0x2c, 0xbf, 0x35, 0xf7, 0x73, 0x20, 0x59,
- 0xc3, 0x75, 0xbf, 0x7e, 0x9e, 0xd5, 0xed, 0xe6, 0x0e, 0xd0, 0xe1, 0xde,
- 0x7a, 0x10, 0x01, 0x20, 0xad, 0xea, 0xda, 0x8d, 0x32, 0xf3, 0xd7, 0x8a,
- 0x25, 0x86, 0x98, 0x28, 0x47, 0x90, 0xed, 0xbc, 0xfa, 0x6e, 0xff, 0xf8,
- 0xfd, 0xe1, 0xce, 0x9f, 0xda, 0xe4, 0x43, 0xdf, 0xed, 0xca, 0x77, 0xbb,
- 0xeb, 0x5d, 0x3c, 0x8b, 0x28, 0x28, 0x49, 0x7a, 0xaf, 0x7a, 0x49, 0x75,
- 0x3f, 0x1b, 0x15, 0x53, 0xc7, 0xb7, 0xb4, 0x13, 0x1e, 0x45, 0x5f, 0x5d,
- 0x1f, 0xe6, 0x80, 0xc6, 0xc2, 0xf0, 0x15, 0xd9, 0x1e, 0x3b, 0x1c, 0xa0,
- 0x2a, 0x97, 0x81, 0x02, 0xd2, 0x49, 0xb8, 0x18, 0x55, 0x8d, 0x2b, 0x4f,
- 0x37, 0x88, 0x5b, 0xae, 0x84, 0x20, 0xfb, 0x89, 0x9c, 0xa4, 0x36, 0x3b,
- 0x97, 0x19, 0x3b, 0xd7, 0x96, 0x19, 0x00, 0x55, 0x11, 0x49, 0x44, 0xd6,
- 0xbe, 0x27, 0xf2, 0xad, 0xd9, 0x7a, 0xf2, 0xbe, 0x12, 0xa6, 0x92, 0x57,
- 0x7a, 0x3e, 0xdb, 0x0c, 0x8f, 0x99, 0x3e, 0xfb, 0x2b, 0x6f, 0xd3, 0x5a,
- 0x1d, 0x32, 0xeb, 0x3a, 0x96, 0x45, 0x4a, 0x1c, 0xbd, 0x5c, 0xd7, 0xf3,
- 0xec, 0xc3, 0x9c, 0xd4, 0x3e, 0xc0, 0x07, 0xac, 0x8c, 0xed, 0x32, 0x74,
- 0xea, 0xb8, 0x47, 0x0d, 0xc5, 0xe2, 0xe8, 0x3a, 0xe3, 0x08, 0x7c, 0xa0,
- 0x68, 0xd4, 0xec, 0x12, 0xbc, 0xd7, 0x23, 0xd9, 0x2b, 0x33, 0x3d, 0xbf,
- 0xe2, 0xfd, 0x6b, 0x93, 0x3e, 0x35, 0x36, 0xca, 0xe7, 0x46, 0xdb, 0xaa,
- 0x86, 0x0d, 0x8e, 0x99, 0xa2, 0xa7, 0x85, 0xb2, 0x74, 0x6f, 0x60, 0x55,
- 0xff, 0xa6, 0xa3, 0x81, 0x4e, 0xdb, 0x9d, 0xc5, 0x86, 0x15, 0x89, 0x6c,
- 0x85, 0x0d, 0x54, 0xce, 0x96, 0x23, 0xa7, 0x05, 0x31, 0xf7, 0xb9, 0x50,
- 0xbe, 0x72, 0xdd, 0xa4, 0x28, 0x3b, 0x9a, 0x7b, 0x97, 0xd5, 0x88, 0x0a,
- 0xd8, 0xd2, 0x4b, 0xdb, 0x36, 0x12, 0xbd, 0xc8, 0x40, 0x22, 0x02, 0x73,
- 0x23, 0xf5, 0xfe, 0x4c, 0xb1, 0xb4, 0x86, 0x47, 0xd5, 0x3c, 0xa1, 0xd8,
- 0xe4, 0x14, 0x57, 0xfe, 0x62, 0xc9, 0x52, 0xd9, 0xbb, 0x22, 0x5a, 0x24,
- 0x99, 0x81, 0x8b, 0x88, 0x81, 0x17, 0x8e, 0x74, 0x72, 0x3b, 0xbf, 0xdc,
- 0xd7, 0x90, 0xc5, 0x08, 0xd0, 0x9a, 0x8f, 0x92, 0xd3, 0x8b, 0xae, 0xcd,
- 0x77, 0xc7, 0x7e, 0x14, 0x83, 0xbf, 0xa4, 0x76, 0xc9, 0xff, 0x86, 0x57,
- 0xfb, 0x57, 0x2a, 0xbb, 0x0d, 0xd2, 0x6a, 0x9c, 0xe7, 0x5d, 0x02, 0x30,
- 0x87, 0x40, 0x6e, 0x26, 0x87, 0xb0, 0x2a, 0x24, 0xfb, 0xe7, 0x07, 0x47,
- 0x47, 0xce, 0x43, 0x3a, 0x94, 0x88, 0x02, 0xc4, 0x3e, 0xaa, 0x98, 0x05,
- 0x07, 0x81, 0x84, 0x90, 0x8c, 0xda, 0xb3, 0xcb, 0xd8, 0x56, 0x3b, 0x36,
- 0xd3, 0x84, 0xd0, 0x1e, 0x3d, 0xce, 0x26, 0x55, 0x5c, 0x27, 0x74, 0x61,
- 0x54, 0x6a, 0x69, 0xff, 0x53, 0x7d, 0xbf, 0xc8, 0x5e, 0xed, 0xaf, 0x0f,
- 0x43, 0x15, 0xa5, 0xbd, 0xf6, 0xe9, 0x92, 0x45, 0x7f, 0xe1, 0x45, 0xb8,
- 0x19, 0x78, 0x95, 0x27, 0xea, 0x0d, 0x55, 0xb6, 0xc4, 0x9e, 0x8d, 0x19,
- 0x8b, 0x6f, 0x97, 0xf0, 0x07, 0xcd, 0x9f, 0x90, 0x66, 0x78, 0x4f, 0x57,
- 0xed, 0xac, 0x0a, 0xe5, 0x1b, 0xdc, 0x8e, 0x9f, 0x6a, 0x28, 0x54, 0x93,
- 0xc5, 0x57, 0xfc, 0x4e, 0xd2, 0x16, 0x72, 0x56, 0xca, 0x6e, 0xa6, 0xe0,
- 0x71, 0x98, 0xc5, 0x30, 0xbc, 0xff, 0x71, 0x30, 0xcc, 0x4e, 0x23, 0x71,
- 0x2c, 0xad, 0x9d, 0x5d, 0xb2, 0xb5, 0x33, 0x62, 0xf2, 0x39, 0xdd, 0xde,
- 0xc4, 0x77, 0x88, 0x94, 0xe6, 0xfc, 0xd3, 0xf9, 0x36, 0x72, 0x4c, 0x9f,
- 0x35, 0x8a, 0x92, 0x03, 0x6c, 0x1a, 0xdc, 0x9f, 0xa5, 0xcb, 0xce, 0xb5,
- 0x94, 0xeb, 0x9c, 0xa3, 0x01, 0x21, 0x74, 0x78, 0x4b, 0xf1, 0x0a, 0x21,
- 0x6e, 0xc3, 0x6c, 0xca, 0x2a, 0x44, 0x44, 0xf2, 0x83, 0x49, 0x19, 0xb4,
- 0xea, 0x81, 0x30, 0xb1, 0x19, 0x51, 0xf2, 0xfb, 0x0a, 0x1e, 0x5d, 0x52,
- 0x8c, 0xae, 0xb3, 0x52, 0x8f, 0xe2, 0xd2, 0xf4, 0x09, 0x71, 0x21, 0x7d,
- 0x54, 0x27, 0xc3, 0xc7, 0xfb, 0xe8, 0xed, 0xf3, 0x2c, 0x13, 0x62, 0xd3,
- 0x07, 0x64, 0x23, 0x83, 0x9d, 0x6d, 0x9f, 0xa7, 0x97, 0x38, 0xfb, 0x7c,
- 0x2d, 0x3c, 0xa6, 0x97, 0x14, 0xca, 0x39, 0xf1, 0x82, 0x73, 0x5a, 0x1b,
- 0x1d, 0x88, 0xaf, 0x1d, 0xa1, 0xa3, 0x7a, 0xa4, 0xdb, 0xbc, 0xfd, 0x92,
- 0x5d, 0xda, 0x12, 0xdf, 0x45, 0x8a, 0x27, 0xdf, 0x52, 0x4e, 0x54, 0x18,
- 0x26, 0x07, 0xb0, 0x69, 0x72, 0x1b, 0x15, 0x1a, 0x31, 0x36, 0xe2, 0xb7,
- 0x2a, 0xa2, 0x9e, 0xd4, 0x45, 0x8c, 0x79, 0xce, 0x85, 0xb1, 0xd1, 0x26,
- 0xdc, 0x65, 0x88, 0xca, 0x69, 0x34, 0xe5, 0x2e, 0x7a, 0xbc, 0xd6, 0x4d,
- 0x8c, 0x72, 0xf5, 0x6f, 0x54, 0x9b, 0x10, 0x8a, 0xe6, 0x85, 0x7b, 0x99,
- 0x5d, 0x6f, 0x37, 0xf3, 0xe2, 0x8e, 0x64, 0x9d, 0x79, 0x21, 0x27, 0xcc,
- 0xf8, 0x07, 0x8f, 0xba, 0x7d, 0xcd, 0x12, 0xbf, 0x0b, 0xee, 0x80, 0xf0,
- 0xc9, 0xda, 0x85, 0xc3, 0xa9, 0x41, 0x58, 0x59, 0xb6, 0x2d, 0x5b, 0xd2,
- 0xa5, 0xd9, 0x2a, 0xeb, 0x16, 0x69, 0x00, 0x6e, 0x13, 0x68, 0x45, 0xfe,
- 0x06, 0xb1, 0x6b, 0x3d, 0x35, 0xa5, 0x8a, 0x1d, 0xaf, 0xfd, 0x64, 0x7d,
- 0xb0, 0xde, 0xef, 0x38, 0x79, 0x36, 0xa9, 0xf6, 0xb8, 0x1c, 0xbb, 0xe8,
- 0xb8, 0x24, 0xe0, 0x88, 0x8b, 0x5c, 0x5f, 0x1a, 0xf3, 0xa3, 0x37, 0xb6,
- 0x0c, 0xc8, 0xe6, 0x91, 0xcd, 0xaf, 0x10, 0xc1, 0xc7, 0x27, 0xa9, 0x2d,
- 0x9c, 0x7b, 0xfb, 0x80, 0x5c, 0xdc, 0x4e, 0xd5, 0xd1, 0xa1, 0x0d, 0x93,
- 0xfd, 0xb9, 0x04, 0x75, 0xdd, 0xa5, 0x20, 0x3d, 0xd7, 0x05, 0xe4, 0x9c,
- 0xf6, 0x6a, 0x17, 0x4e, 0x4d, 0x6a, 0xdc, 0x5a, 0x0f, 0xdd, 0x15, 0xd6,
- 0x55, 0xc2, 0x87, 0x80, 0x78, 0x74, 0x0f, 0x92, 0xb1, 0xda, 0x09, 0xe0,
- 0x2a, 0x77, 0x8b, 0x22, 0xf7, 0xc6, 0xdd, 0x75, 0x31, 0x15, 0xd7, 0x5d,
- 0xab, 0x39, 0x2f, 0xf0, 0x26, 0x77, 0x70, 0x3b, 0x8b, 0xa6, 0xcd, 0x36,
- 0x96, 0x5b, 0x7a, 0xbf, 0xcc, 0x60, 0xb7, 0xe5, 0x88, 0x3d, 0xd2, 0x8a,
- 0xa9, 0xaf, 0x69, 0x96, 0x96, 0xd3, 0x7b, 0x13, 0x86, 0x06, 0xb7, 0xad,
- 0xe6, 0xb0, 0xa2, 0x6c, 0x16, 0x21, 0x0a, 0x4b, 0xcb, 0x39, 0x3f, 0xa3,
- 0xae, 0x42, 0x0b, 0x96, 0xad, 0xc5, 0x79, 0x2b, 0x1e, 0x66, 0xbe, 0x95,
- 0x6f, 0x73, 0x56, 0xbd, 0x88, 0xd8, 0x48, 0x80, 0x6f, 0x53, 0x22, 0x1b,
- 0x35, 0x41, 0x32, 0x68, 0x52, 0x22, 0x63, 0xae, 0xf3, 0x40, 0x5f, 0xa3,
- 0xa3, 0x78, 0x4d, 0x37, 0x24, 0x29, 0x91, 0xcb, 0x74, 0xd5, 0x72, 0xe9,
- 0x55, 0x66, 0x5e, 0xe1, 0xc7, 0x6e, 0xd7, 0xe6, 0x79, 0xec, 0x92, 0x40,
- 0x57, 0xdc, 0xbd, 0x07, 0xb2, 0x79, 0xc4, 0x5c, 0xe7, 0x4b, 0xba, 0x80,
- 0xeb, 0xe4, 0x65, 0x71, 0x79, 0x49, 0xa4, 0xfe, 0x45, 0x24, 0x81, 0xcb,
- 0x23, 0x5b, 0x67, 0x88, 0xa0, 0x0f, 0x58, 0x7a, 0x33, 0xa8, 0x2c, 0x49,
- 0xed, 0x94, 0x5c, 0xe5, 0xbc, 0x17, 0x89, 0x34, 0x37, 0xec, 0x10, 0x81,
- 0x9a, 0x4f, 0x04, 0x17, 0x91, 0x78, 0xc5, 0x7d, 0xc8, 0x3d, 0x5d, 0xd5,
- 0xb5, 0x79, 0x93, 0x74, 0x1a, 0x6d, 0xa1, 0xf8, 0x26, 0x5f, 0x2c, 0x78,
- 0xb3, 0x10, 0xac, 0xeb, 0x54, 0x25, 0x6e, 0x6d, 0x94, 0xd1, 0x99, 0xc0,
- 0x9e, 0x9a, 0x4f, 0xb9, 0x58, 0x92, 0x00, 0x60, 0x72, 0xe0, 0x28, 0xa3,
- 0x93, 0xde, 0x6e, 0xce, 0x24, 0x7b, 0x1f, 0x97, 0xa5, 0x92, 0xd4, 0x84,
- 0x63, 0xb0, 0xe6, 0xca, 0x40, 0x79, 0x9b, 0x7c, 0xa8, 0x87, 0x6a, 0x96,
- 0x5d, 0x87, 0xdf, 0x5b, 0xb1, 0xdc, 0x81, 0x3e, 0x3f, 0xfa, 0xdf, 0x87,
- 0x3e, 0x8a, 0xce, 0x85, 0xa9, 0xdd, 0x83, 0xda, 0xbb, 0x2e, 0x28, 0x62,
- 0x2c, 0x07, 0xc9, 0x60, 0x1d, 0x03, 0x61, 0x4e, 0x6b, 0x97, 0x00, 0x5d,
- 0x8d, 0x05, 0xbb, 0x9e, 0x25, 0xdc, 0x10, 0x71, 0xfc, 0x4c, 0x70, 0xac,
- 0x47, 0x96, 0xd9, 0x16, 0x3b, 0xfc, 0x63, 0x03, 0x93, 0x24, 0x41, 0xe8,
- 0x62, 0x7b, 0x39, 0xea, 0xa8, 0x96, 0xc8, 0x4f, 0x48, 0x34, 0xfc, 0x9d,
- 0xec, 0x8f, 0x84, 0x32, 0x6d, 0x41, 0xfc, 0x94, 0x40, 0xbc, 0x98, 0x17,
- 0xa8, 0xc1, 0x45, 0xc2, 0x8e, 0x3a, 0x98, 0xd9, 0x3f, 0xd0, 0x0c, 0x34,
- 0xce, 0x17, 0xd7, 0x2c, 0x8d, 0xbf, 0x44, 0x74, 0x03, 0x5b, 0x9e, 0xe4,
- 0x83, 0x2f, 0x3a, 0x6d, 0xe3, 0xe7, 0x7a, 0x2e, 0x2a, 0xbd, 0x49, 0xed,
- 0x6d, 0xe5, 0x5f, 0xb9, 0xc5, 0x97, 0x5b, 0xbc, 0xa4, 0x46, 0xd4, 0x50,
- 0xd3, 0x6d, 0x96, 0x43, 0x47, 0xd2, 0x5e, 0x16, 0xad, 0xde, 0x87, 0xa0,
- 0x20, 0x06, 0xd4, 0xbe, 0x1d, 0x26, 0x67, 0x7c, 0x4f, 0x2e, 0x17, 0x1c,
- 0xa2, 0x88, 0x0c, 0x15, 0x7c, 0x1e, 0x79, 0xbe, 0xaa, 0x3a, 0x74, 0xe0,
- 0x22, 0x85, 0x23, 0xec, 0x6e, 0xde, 0x10, 0x8c, 0xf2, 0xf0, 0x3b, 0x92,
- 0x55, 0xf7, 0xda, 0x86, 0x21, 0xf6, 0x45, 0x69, 0x88, 0x38, 0x31, 0xc7,
- 0x79, 0x55, 0x4d, 0x11, 0x97, 0x3f, 0x29, 0xc6, 0xd5, 0x56, 0xba, 0x58,
- 0x54, 0x5b, 0x36, 0xba, 0x46, 0x04, 0xbe, 0xa9, 0xc3, 0xe7, 0xe7, 0xc1,
- 0xe4, 0xf8, 0xde, 0x15, 0x83, 0x95, 0x93, 0xc0, 0xa6, 0x70, 0xc1, 0xcd,
- 0xd5, 0xee, 0x2a, 0x51, 0x35, 0x5f, 0xcf, 0x97, 0x17, 0xc7, 0xe7, 0x58,
- 0xaf, 0xf6, 0xd5, 0xc9, 0x31, 0xe1, 0xb6, 0x3b, 0xdc, 0xb6, 0x35, 0x0d,
- 0x0d, 0x4f, 0xb4, 0xa6, 0xf3, 0xf3, 0x03, 0x7c, 0x78, 0xbe, 0x64, 0x19,
- 0x86, 0xba, 0x28, 0xef, 0x13, 0x33, 0x0f, 0xb7, 0x89, 0x9f, 0xa6, 0x9b,
- 0x7c, 0xea, 0x7f, 0xb6, 0x10, 0x57, 0x79, 0x3d, 0xbc, 0xcc, 0x26, 0x45,
- 0x99, 0x46, 0x36, 0xb4, 0x82, 0x33, 0x24, 0xb0, 0x3a, 0x63, 0x7a, 0x6a,
- 0x8b, 0x04, 0xf3, 0x0f, 0xb4, 0x5e, 0x43, 0xfe, 0x1d, 0x4a, 0x9f, 0x2c,
- 0x9a, 0x7d, 0xcc, 0xeb, 0xf5, 0xbb, 0xd7, 0x08, 0xd6, 0xa3, 0xd3, 0x50,
- 0xfd, 0x96, 0x84, 0x4d, 0x42, 0x1a, 0x3c, 0x09, 0x93, 0x6e, 0xa9, 0xf0,
- 0xcc, 0xac, 0x85, 0x89, 0x7f, 0xd2, 0x07, 0xef, 0xb5, 0x53, 0xd3, 0x48,
- 0x0e, 0xbb, 0x2a, 0xe8, 0x3e, 0xbd, 0x9e, 0xb5, 0xd7, 0x53, 0xb4, 0x77,
- 0x73, 0xb5, 0x69, 0xfe, 0x53, 0x52, 0x71, 0x60, 0xbf, 0x70, 0x84, 0xe5,
- 0x3c, 0xe8, 0x80, 0x16, 0x83, 0x78, 0xc5, 0x5c, 0x25, 0xa1, 0x8e, 0xed,
- 0x69, 0xcd, 0xdc, 0x82, 0xe0, 0x95, 0xdf, 0xc1, 0x84, 0x5e, 0x89, 0x61,
- 0x72, 0x39, 0xf7, 0x79, 0x72, 0x62, 0xd0, 0x66, 0xd3, 0x75, 0xd7, 0xe8,
- 0xb0, 0x44, 0xad, 0x5b, 0xbc, 0xb9, 0x54, 0x38, 0xaf, 0x03, 0x5e, 0x5e,
- 0xe6, 0x76, 0x2f, 0x2b, 0x12, 0x69, 0xa8, 0x9f, 0x2f, 0xa2, 0xd0, 0x9f,
- 0x8f, 0xf9, 0x6c, 0x39, 0x4b, 0xb0, 0x0f, 0x62, 0x34, 0xd7, 0x27, 0x4d,
- 0xdb, 0xe0, 0x6b, 0x1a, 0xc1, 0x31, 0xe8, 0xb8, 0x57, 0x05, 0xac, 0x20,
- 0xe6, 0x9b, 0x35, 0xc9, 0x50, 0xa6, 0x36, 0x69, 0x80, 0xd5, 0x8c, 0x43,
- 0x23, 0x9a, 0x2c, 0x24, 0x59, 0x5c, 0xa7, 0x55, 0xe6, 0x23, 0x6a, 0x65,
- 0xbd, 0xc3, 0xe0, 0xe8, 0x46, 0x8c, 0xb4, 0x65, 0x4e, 0x78, 0x86, 0x4b,
- 0xc2, 0x4d, 0x5e, 0x4c, 0x9c, 0x33, 0xc5, 0x2e, 0xe7, 0x64, 0xc0, 0xcd,
- 0xf1, 0x75, 0xa1, 0xdf, 0xb4, 0x35, 0xdb, 0x8f, 0x70, 0xda, 0x9c, 0xc3,
- 0x7e, 0x69, 0xce, 0xbf, 0xcf, 0x86, 0x4f, 0x76, 0xd9, 0xab, 0x1b, 0x12,
- 0xa9, 0x86, 0x92, 0x13, 0xd7, 0x19, 0xe7, 0x33, 0x17, 0x9f, 0xb7, 0x5a,
- 0xaf, 0x81, 0x90, 0x37, 0x63, 0x39, 0x61, 0x96, 0x7e, 0xc4, 0x9a, 0xff,
- 0xf6, 0x26, 0x81, 0x81, 0x88, 0x85, 0xa4, 0xc2, 0x95, 0x6d, 0x82, 0x6b,
- 0xb8, 0xc1, 0x68, 0x71, 0xfe, 0x42, 0xf4, 0xda, 0x32, 0x10, 0x59, 0xbc,
- 0x5a, 0x2b, 0x33, 0x42, 0xda, 0xec, 0xb2, 0x09, 0xd1, 0x56, 0x10, 0xb9,
- 0x73, 0xa8, 0x41, 0xc2, 0x76, 0x25, 0x0e, 0x15, 0xe3, 0x13, 0x5f, 0xd0,
- 0x07, 0xd7, 0x39, 0x8d, 0xbd, 0x1c, 0x5f, 0xdf, 0xb3, 0x72, 0xc3, 0xf6,
- 0x5a, 0xf6, 0x69, 0x3d, 0x60, 0x10, 0x40, 0x1f, 0x6a, 0x43, 0xa5, 0xc1,
- 0x27, 0x7c, 0x78, 0xe8, 0x31, 0x13, 0x13, 0x5a, 0xe3, 0x63, 0x91, 0x9b,
- 0x0f, 0x6e, 0x36, 0xad, 0x32, 0x1c, 0xb1, 0xae, 0xd1, 0x0d, 0x8a, 0x40,
- 0xe5, 0xc0, 0xed, 0xcc, 0x0a, 0x51, 0x5e, 0xb2, 0xc0, 0x2b, 0xe6, 0x3e,
- 0xe9, 0x8a, 0x8d, 0xd6, 0xd2, 0x1b, 0xab, 0x61, 0xac, 0xae, 0xdd, 0xc7,
- 0x34, 0xc2, 0x0a, 0xb1, 0xbe, 0x6e, 0x6b, 0x6f, 0xae, 0xba, 0x48, 0x05,
- 0x29, 0xf4, 0x2b, 0xd3, 0xd5, 0x6c, 0x55, 0x72, 0xcb, 0x23, 0x12, 0xae,
- 0xc3, 0xf2, 0x0d, 0x0d, 0x45, 0xf2, 0x4f, 0x99, 0x93, 0xd3, 0xfe, 0x5d,
- 0xd6, 0x91, 0x4d, 0x38, 0xd8, 0xd2, 0xe6, 0x4e, 0x4f, 0x2f, 0x59, 0xbc,
- 0x24, 0x1a, 0xa9, 0x93, 0xe3, 0x37, 0x7c, 0x35, 0x1f, 0x9c, 0xd1, 0xcf,
- 0xdc, 0x3c, 0x9c, 0x2c, 0xb7, 0x23, 0x7f, 0x94, 0xcd, 0x27, 0x6f, 0xbf,
- 0x3b, 0x4f, 0x36, 0x4e, 0xce, 0xb7, 0x9e, 0xbc, 0xd8, 0x8e, 0x15, 0xf9,
- 0x0d, 0x4e, 0x72, 0xd5, 0xb8, 0x44, 0x04, 0x5e, 0x3c, 0xdd, 0x6e, 0x46,
- 0xb5, 0x70, 0x5f, 0xbc, 0x92, 0x50, 0xc1, 0x3b, 0xb5, 0xef, 0xf3, 0x2d,
- 0x4e, 0xd3, 0xdd, 0xf4, 0xc9, 0x41, 0x62, 0xd4, 0xd5, 0x99, 0x9e, 0x1e,
- 0xbe, 0x35, 0xeb, 0xa2, 0x44, 0x5c, 0x24, 0x07, 0x34, 0x6a, 0x76, 0x8d,
- 0xc4, 0x84, 0x75, 0x96, 0xdd, 0x9a, 0x89, 0xf2, 0x98, 0x2f, 0x43, 0x30,
- 0x1c, 0xb6, 0x81, 0x9a, 0xdc, 0xb0, 0xc8, 0x58, 0x20, 0xf4, 0xef, 0xab,
- 0x84, 0x2b, 0x17, 0x70, 0xc4, 0x7c, 0x46, 0x59, 0x18, 0x25, 0x40, 0xb2,
- 0x37, 0x27, 0x70, 0xfd, 0x76, 0x27, 0xb0, 0x23, 0x8a, 0x65, 0xe7, 0xc5,
- 0xf0, 0xb3, 0x4d, 0xb7, 0x96, 0x93, 0xbe, 0x05, 0x17, 0xbf, 0x7c, 0xc0,
- 0x9f, 0x40, 0x5c, 0x44, 0xb9, 0x6d, 0x16, 0xa6, 0x6f, 0xe0, 0x3d, 0x58,
- 0xfb, 0x11, 0x67, 0x6f, 0x8e, 0xb0, 0xc0, 0xdf, 0xd0, 0x16, 0xf0, 0x35,
- 0x03, 0xdb, 0xb2, 0xf8, 0xa0, 0xd1, 0xa4, 0x1a, 0x19, 0x94, 0x26, 0xa3,
- 0xb2, 0xb8, 0x63, 0x5b, 0x8d, 0x44, 0xba, 0x0b, 0x6d, 0xb2, 0x0d, 0x09,
- 0x06, 0x9c, 0xe4, 0x3a, 0x8d, 0x1c, 0x3e, 0x34, 0x67, 0x8d, 0x5d, 0x4d,
- 0xd9, 0xca, 0xfb, 0xf6, 0x58, 0x62, 0xbd, 0xf9, 0xf6, 0x5a, 0xa8, 0x3b,
- 0x1f, 0xfd, 0x2c, 0x47, 0xc4, 0xe1, 0x59, 0x05, 0xac, 0x45, 0x36, 0xcc,
- 0xab, 0x2e, 0xd6, 0x0b, 0x2b, 0xa0, 0x13, 0xc9, 0x17, 0x5d, 0x3e, 0x14,
- 0xbd, 0x0f, 0xcd, 0xd8, 0x8d, 0xcd, 0x24, 0x5d, 0x97, 0xee, 0xb0, 0xfb,
- 0x45, 0x9b, 0x72, 0x48, 0x60, 0x9b, 0xaa, 0xad, 0x6b, 0xeb, 0xe3, 0x80,
- 0x64, 0xba, 0x01, 0x0f, 0x6e, 0x40, 0xcd, 0x8b, 0x1b, 0x98, 0x9d, 0xea,
- 0x07, 0x74, 0x45, 0x33, 0xa1, 0x50, 0xf3, 0x83, 0x37, 0xbc, 0x15, 0xfc,
- 0x48, 0xb4, 0x7d, 0xc1, 0x2e, 0xa9, 0xf6, 0x8a, 0x95, 0x83, 0xcd, 0x8c,
- 0x3f, 0x15, 0x8b, 0xeb, 0xd0, 0xfe, 0x2a, 0xd3, 0x3b, 0x44, 0x9b, 0x4f,
- 0xe1, 0xfa, 0xec, 0x70, 0x25, 0xf3, 0xcb, 0xac, 0x0f, 0xbb, 0x84, 0x02,
- 0xe4, 0x03, 0xa6, 0x96, 0x7d, 0x27, 0x01, 0x8a, 0xb4, 0x80, 0x75, 0x5a,
- 0xfb, 0xb0, 0xe2, 0xe4, 0x4b, 0xcd, 0xdb, 0x8b, 0x4d, 0x36, 0xa5, 0xba,
- 0xb7, 0x17, 0x08, 0x15, 0x96, 0x50, 0xf5, 0x05, 0x69, 0x12, 0xec, 0x39,
- 0x62, 0xc3, 0x7f, 0x79, 0x2f, 0xf1, 0xd2, 0x6a, 0x97, 0x37, 0x07, 0xe5,
- 0x0a, 0xc3, 0xb5, 0x4c, 0x42, 0xde, 0x73, 0x6e, 0x01, 0x6e, 0x9f, 0x44,
- 0xc8, 0x81, 0x7a, 0xd0, 0x79, 0x3c, 0x92, 0x0a, 0xc0, 0xa9, 0xc0, 0x62,
- 0xe7, 0x51, 0xc7, 0x7c, 0xab, 0x39, 0x64, 0xc7, 0xa5, 0x30, 0xc0, 0x5b,
- 0xd3, 0x6e, 0x07, 0x3a, 0x35, 0x76, 0x9f, 0x91, 0x50, 0xf9, 0x38, 0x74,
- 0x3b, 0x81, 0x08, 0x89, 0x82, 0x10, 0x8d, 0x40, 0xf4, 0x62, 0xde, 0x88,
- 0x6f, 0x1e, 0x44, 0xd6, 0x1a, 0x35, 0xfa, 0xf4, 0x03, 0x07, 0x5a, 0xce,
- 0x97, 0x54, 0x98, 0x03, 0xe5, 0xec, 0xfd, 0xc4, 0xf6, 0xcb, 0x2b, 0xfe,
- 0xc4, 0x8c, 0x98, 0x91, 0x81, 0x03, 0xe1, 0x3e, 0x2e, 0xf1, 0x09, 0xb6,
- 0xb0, 0x7f, 0x1d, 0x88, 0x73, 0x0b, 0x12, 0xcd, 0x92, 0x05, 0x41, 0x35,
- 0x92, 0xf5, 0x06, 0x93, 0x44, 0xfd, 0x84, 0x73, 0x5a, 0x17, 0x22, 0xa2,
- 0x58, 0xdb, 0x9e, 0x4e, 0x5f, 0x4d, 0x49, 0xf7, 0xbf, 0xef, 0x25, 0x9a,
- 0xa0, 0xa3, 0x61, 0xf4, 0x6c, 0x5d, 0x4e, 0x6d, 0x3f, 0xc7, 0xd7, 0xcb,
- 0xf9, 0x8d, 0x49, 0x5a, 0xd3, 0xa2, 0xe0, 0xc0, 0x05, 0x0e, 0xe9, 0x6f,
- 0x35, 0xd7, 0x0b, 0x3a, 0xfb, 0xd7, 0xb0, 0xed, 0xce, 0x55, 0x16, 0x5b,
- 0x9c, 0x64, 0x87, 0xb8, 0xb5, 0x71, 0x57, 0xab, 0xe4, 0xc7, 0x26, 0x5f,
- 0xf6, 0xcd, 0x8f, 0x5e, 0x07, 0x3e, 0x9d, 0x34, 0xe6, 0x02, 0xde, 0x8e,
- 0x07, 0xeb, 0xa6, 0x6b, 0x50, 0x1c, 0x70, 0x6c, 0x38, 0x36, 0xe7, 0xb1,
- 0x37, 0xbd, 0x3a, 0xdf, 0x51, 0xc7, 0x5d, 0xed, 0xb1, 0x23, 0xe0, 0xa6,
- 0x1d, 0x26, 0x6f, 0xc3, 0xd4, 0xbb, 0x66, 0x9c, 0x85, 0xdb, 0xc9, 0x61,
- 0x72, 0x4a, 0xeb, 0x35, 0x88, 0x5c, 0x69, 0x57, 0x41, 0x73, 0xa9, 0x1f,
- 0xed, 0x24, 0xe9, 0x5d, 0x16, 0xc5, 0x28, 0x2d, 0xfd, 0xe2, 0x23, 0x1e,
- 0x00, 0x94, 0x20, 0xe1, 0x27, 0xbc, 0x1e, 0x9d, 0xa7, 0x23, 0x49, 0xbe,
- 0x94, 0x77, 0x87, 0x2a, 0x48, 0xb9, 0xcf, 0x99, 0x3f, 0x14, 0xd3, 0x89,
- 0x5b, 0x8a, 0xb0, 0xd7, 0x8e, 0x4d, 0xe3, 0x4d, 0xed, 0xd3, 0x74, 0xca,
- 0x32, 0xe7, 0x3c, 0x58, 0x3a, 0xf2, 0xcb, 0x72, 0x2e, 0x79, 0x6a, 0xf3,
- 0xec, 0x4e, 0xdc, 0x98, 0x76, 0xb3, 0x70, 0x04, 0x0a, 0x9b, 0x67, 0x60,
- 0x1a, 0xd0, 0x44, 0xa2, 0x28, 0x90, 0x08, 0x66, 0x3c, 0x49, 0xe5, 0x0c,
- 0x58, 0x06, 0x6f, 0x26, 0x8d, 0xe8, 0x61, 0x36, 0x43, 0x07, 0xac, 0x9b,
- 0x15, 0x80, 0x9f, 0x09, 0xcf, 0x08, 0x24, 0x8e, 0xd7, 0xe0, 0x89, 0xcb,
- 0xd9, 0xc2, 0xa2, 0x58, 0x3a, 0xa5, 0x81, 0xef, 0x61, 0x5d, 0xd7, 0x04,
- 0x35, 0x49, 0x98, 0x35, 0x47, 0xa0, 0xb1, 0xf4, 0x86, 0xcd, 0xad, 0xdb,
- 0x80, 0xeb, 0xef, 0x61, 0x71, 0x7b, 0xba, 0x9c, 0x53, 0x5a, 0xfa, 0x20,
- 0x77, 0x55, 0x3d, 0x73, 0x72, 0x4d, 0x6a, 0x37, 0x9d, 0xde, 0x11, 0xd6,
- 0xa3, 0xc4, 0x1d, 0x9f, 0xc3, 0x76, 0xce, 0x97, 0x2b, 0xbd, 0x4e, 0x4d,
- 0x0d, 0xd5, 0x49, 0x1e, 0x64, 0x6c, 0xda, 0x78, 0xc7, 0x4c, 0x24, 0x31,
- 0xb1, 0x22, 0x1d, 0x07, 0x7b, 0x8d, 0x9b, 0x58, 0x55, 0x23, 0x07, 0x8e,
- 0x32, 0x77, 0xe2, 0x4b, 0xe0, 0x2a, 0x53, 0x81, 0x74, 0x14, 0x3b, 0x5b,
- 0xcc, 0x06, 0x2d, 0x33, 0xfe, 0x17, 0xd8, 0x51, 0x56, 0xb8, 0x12, 0x25,
- 0xa3, 0x69, 0x24, 0x47, 0x55, 0xac, 0xcd, 0x51, 0xcc, 0x52, 0xe0, 0xa8,
- 0x8c, 0x56, 0xb6, 0xa1, 0x01, 0x88, 0xd0, 0x49, 0x9d, 0x05, 0x56, 0x36,
- 0xa7, 0x15, 0xab, 0x3b, 0x1d, 0x12, 0x95, 0x97, 0x9e, 0x22, 0xc9, 0x8a,
- 0x67, 0xb6, 0xae, 0xab, 0xb5, 0xae, 0x2a, 0xec, 0x52, 0x3c, 0x10, 0xac,
- 0x17, 0x83, 0x2f, 0x94, 0xbf, 0x69, 0x70, 0x93, 0xbf, 0x8c, 0xbb, 0xc5,
- 0x29, 0x56, 0xc6, 0xfc, 0x65, 0x1e, 0xbd, 0xa9, 0x77, 0xde, 0x83, 0x92,
- 0x98, 0x78, 0xfb, 0x98, 0x33, 0xab, 0xbf, 0x12, 0x66, 0xd6, 0x29, 0xf4,
- 0x9a, 0x96, 0x23, 0x9a, 0xf4, 0x03, 0x89, 0x22, 0x22, 0xd2, 0x8f, 0xa4,
- 0x78, 0x8e, 0x33, 0xe0, 0x78, 0x32, 0xa2, 0xc7, 0xaa, 0xc8, 0x6e, 0xc3,
- 0x54, 0x97, 0x56, 0xf6, 0x3a, 0x98, 0xf4, 0x27, 0xf1, 0xe8, 0x30, 0xaa,
- 0xa1, 0x93, 0x4d, 0x4b, 0x26, 0x7d, 0x92, 0xbc, 0x36, 0x5e, 0x85, 0x89,
- 0x38, 0xb4, 0x07, 0x49, 0x95, 0x34, 0xa8, 0x87, 0x96, 0x78, 0xd3, 0x11,
- 0xb3, 0xd8, 0xa7, 0xf9, 0x21, 0xc3, 0x09, 0xa7, 0xca, 0x31, 0x2c, 0xc9,
- 0x1c, 0x56, 0x96, 0xe6, 0x78, 0x9a, 0x90, 0x0f, 0x8b, 0x85, 0x4c, 0x5d,
- 0x93, 0x8e, 0x88, 0xb1, 0x31, 0xb4, 0x97, 0xca, 0x65, 0x8c, 0xcd, 0x33,
- 0xc4, 0x89, 0xd3, 0x86, 0x7f, 0x9a, 0x69, 0x7f, 0x25, 0xdd, 0x00, 0x90,
- 0xc3, 0x27, 0xfe, 0xc4, 0x32, 0x8f, 0x04, 0x94, 0x89, 0x4b, 0x48, 0xc2,
- 0x3e, 0xb1, 0xd6, 0x69, 0xa5, 0x10, 0x2e, 0x23, 0x59, 0xa2, 0x07, 0x48,
- 0x87, 0x79, 0xe4, 0x43, 0x74, 0x73, 0xa1, 0xae, 0x0b, 0xa3, 0x1a, 0x5d,
- 0xeb, 0x29, 0x78, 0x99, 0x5e, 0x1e, 0x2c, 0x12, 0x5a, 0x38, 0xb0, 0x49,
- 0xfa, 0x11, 0xdd, 0x30, 0xe3, 0x7e, 0x44, 0x40, 0x84, 0x40, 0xd8, 0x22,
- 0xf5, 0xe4, 0x81, 0x04, 0xa0, 0xa7, 0xad, 0x6c, 0x90, 0xa6, 0x90, 0xf6,
- 0x4b, 0xa6, 0xd5, 0x77, 0x34, 0xa4, 0xcc, 0x5d, 0x5c, 0x61, 0x3a, 0x3f,
- 0x13, 0xe6, 0x3a, 0xae, 0x55, 0xc9, 0xe2, 0x63, 0x5a, 0x82, 0xc9, 0x48,
- 0x12, 0x5e, 0xb8, 0xe9, 0xac, 0x64, 0xd1, 0xb2, 0xf2, 0xb2, 0x27, 0x6d,
- 0x60, 0x33, 0x33, 0x67, 0xe7, 0x73, 0x1e, 0x7d, 0xa4, 0x72, 0xe3, 0x0c,
- 0x1c, 0x7c, 0x7d, 0x04, 0x83, 0xe0, 0x34, 0xa7, 0x0b, 0xa2, 0x2f, 0xdd,
- 0xc8, 0x74, 0x04, 0x34, 0xc7, 0x09, 0x35, 0x57, 0xf9, 0xdc, 0x54, 0xd1,
- 0x30, 0x73, 0xd0, 0x79, 0x31, 0x99, 0x74, 0x2c, 0x25, 0xc2, 0xe5, 0x8d,
- 0x82, 0x68, 0x53, 0x53, 0x41, 0x5c, 0x78, 0x5f, 0xea, 0x2d, 0xe0, 0xdd,
- 0x6b, 0x87, 0xae, 0x35, 0x8f, 0x93, 0xb5, 0x1c, 0x71, 0x8c, 0xe0, 0xbe,
- 0x88, 0xec, 0x8f, 0x9e, 0x6a, 0x05, 0x81, 0x28, 0xab, 0xf6, 0xd6, 0x22,
- 0xa7, 0x28, 0xfa, 0xef, 0x86, 0x08, 0x13, 0x76, 0xe5, 0xa3, 0x8e, 0xd0,
- 0x4b, 0x4b, 0x90, 0xb7, 0x09, 0x40, 0x6d, 0x13, 0xad, 0x2b, 0x5d, 0xd1,
- 0x1c, 0x4f, 0xec, 0xdf, 0x35, 0x18, 0x8f, 0x8e, 0x38, 0xec, 0x09, 0xb0,
- 0x6d, 0x69, 0x86, 0x92, 0x35, 0xe5, 0x42, 0x9a, 0xf1, 0x49, 0x1a, 0x45,
- 0x24, 0xb9, 0x53, 0x4f, 0x57, 0xe2, 0x2b, 0xc0, 0xbc, 0x10, 0xf5, 0x6a,
- 0x98, 0x18, 0x1d, 0xda, 0x34, 0x74, 0x53, 0xe1, 0x8e, 0xc5, 0xe0, 0x21,
- 0x2e, 0x60, 0x19, 0xba, 0x9b, 0x43, 0xb0, 0x56, 0xb8, 0x7a, 0x42, 0x7e,
- 0x9c, 0xdd, 0x5d, 0x09, 0x0a, 0xd5, 0xbf, 0xb4, 0x17, 0xef, 0xd5, 0xe3,
- 0xab, 0xf7, 0x0b, 0x17, 0xef, 0x91, 0xd5, 0xbb, 0xb8, 0x96, 0x9c, 0x8e,
- 0x0c, 0xa1, 0x88, 0xaf, 0x82, 0xd0, 0x38, 0xd8, 0x24, 0x11, 0x9c, 0xed,
- 0x43, 0xe4, 0x9a, 0xbc, 0x26, 0x70, 0x44, 0xbe, 0xfa, 0x87, 0xed, 0x3a,
- 0xa8, 0xd1, 0x46, 0xdf, 0xdd, 0x9c, 0x38, 0xa4, 0x68, 0xf0, 0x08, 0x18,
- 0x75, 0x9b, 0x2d, 0x98, 0x24, 0xfc, 0x3a, 0xe7, 0x2a, 0x7d, 0x24, 0xf2,
- 0xaf, 0x85, 0x94, 0x71, 0xf6, 0xb8, 0xbb, 0xee, 0xe6, 0x54, 0xfd, 0x36,
- 0xe3, 0x5a, 0x34, 0xbf, 0x2f, 0xed, 0xaa, 0x7a, 0x74, 0x72, 0x8d, 0x48,
- 0x3a, 0x04, 0x71, 0xaa, 0xf6, 0x0b, 0xe1, 0x2d, 0x74, 0xa0, 0x76, 0xf8,
- 0x73, 0x8d, 0x93, 0xf9, 0x80, 0x78, 0x26, 0x47, 0xbb, 0xc5, 0x36, 0xfb,
- 0xcd, 0x05, 0xe3, 0xdc, 0x6c, 0x34, 0x0d, 0x3b, 0xff, 0xea, 0xb5, 0xca,
- 0x79, 0xa5, 0x6c, 0xfb, 0xd8, 0x2c, 0xd3, 0xb9, 0x7d, 0xff, 0xa7, 0x4f,
- 0x11, 0x9e, 0x35, 0x8b, 0x9e, 0x97, 0x69, 0xaa, 0x37, 0xda, 0x13, 0xc5,
- 0x15, 0x87, 0x20, 0xb1, 0xdf, 0xe1, 0xaf, 0x4b, 0xb8, 0xe9, 0xaf, 0x56,
- 0x31, 0x01, 0xdc, 0xb8, 0xec, 0x76, 0x66, 0x8f, 0xea, 0x14, 0x6a, 0x35,
- 0x35, 0x0d, 0x2a, 0xf7, 0xc6, 0x9a, 0x01, 0x82, 0x42, 0x95, 0x68, 0x85,
- 0x12, 0x1f, 0x20, 0x56, 0x47, 0x9e, 0x2d, 0xca, 0x1c, 0x65, 0xc1, 0x94,
- 0x3b, 0x28, 0x90, 0x6e, 0xaa, 0x6c, 0x9a, 0x5d, 0xa9, 0xbd, 0xf1, 0xf0,
- 0xbb, 0xc3, 0xe3, 0x48, 0x82, 0xac, 0xe5, 0x73, 0xe7, 0x42, 0x0e, 0xcc,
- 0x52, 0x86, 0x32, 0x03, 0xe3, 0x8f, 0xdc, 0x18, 0x8c, 0xf7, 0x21, 0x2d,
- 0x76, 0x06, 0x25, 0xd3, 0xc3, 0x74, 0x3f, 0x65, 0xe6, 0x49, 0x2d, 0xd9,
- 0xba, 0x3b, 0x11, 0xc4, 0xad, 0x6a, 0x28, 0x11, 0x55, 0xb8, 0x96, 0xbe,
- 0x3e, 0x3f, 0xdf, 0xba, 0xc9, 0xca, 0x11, 0x83, 0x9a, 0xc5, 0x04, 0x05,
- 0x65, 0x35, 0x79, 0x0d, 0xe5, 0x4f, 0xdc, 0x30, 0xbc, 0xcd, 0x7e, 0x26,
- 0xd1, 0x1b, 0x8b, 0x62, 0x9a, 0x8f, 0xef, 0x93, 0xd7, 0x3a, 0xb2, 0x8a,
- 0xb5, 0x73, 0xde, 0x74, 0xb8, 0x63, 0xd4, 0x16, 0x7e, 0xf2, 0xed, 0x60,
- 0xff, 0x7c, 0xf0, 0xfa, 0xf0, 0xf8, 0xf0, 0xeb, 0xfd, 0x8b, 0x43, 0x97,
- 0x6b, 0x82, 0x08, 0x9e, 0x15, 0x74, 0x61, 0xf4, 0xf0, 0xad, 0x8e, 0x54,
- 0x0c, 0x8e, 0x1c, 0xe3, 0xcd, 0x28, 0x84, 0x37, 0x59, 0x6d, 0xc1, 0xb8,
- 0xa2, 0xba, 0xcc, 0x52, 0x48, 0xb0, 0x51, 0x7c, 0xa9, 0x0f, 0x94, 0x9a,
- 0xce, 0x74, 0xa8, 0xd1, 0x0c, 0xd2, 0xe9, 0x1d, 0xa3, 0xb2, 0xbc, 0x9f,
- 0xb3, 0xb2, 0xa5, 0x10, 0x09, 0x2c, 0x84, 0x63, 0xf6, 0xc1, 0x96, 0x04,
- 0xeb, 0xdf, 0xd8, 0x65, 0xc4, 0xb4, 0x75, 0xcb, 0x34, 0x12, 0x1f, 0xa9,
- 0x49, 0x8e, 0xaf, 0xf1, 0x60, 0x2b, 0x74, 0xce, 0xe7, 0x13, 0x23, 0x44,
- 0x52, 0xbf, 0x8b, 0x44, 0x35, 0x55, 0xfb, 0xaa, 0xf1, 0x75, 0x36, 0x73,
- 0x71, 0xf6, 0x1c, 0xef, 0x41, 0x4f, 0x2b, 0x68, 0x0b, 0x9d, 0xb1, 0x3b,
- 0x8e, 0x22, 0xc2, 0x61, 0x16, 0x0d, 0x0a, 0xf1, 0x8f, 0x1c, 0xf3, 0xd7,
- 0x21, 0x22, 0xdd, 0xe5, 0xc8, 0x93, 0x97, 0x50, 0x1c, 0x44, 0x44, 0x82,
- 0x48, 0x2c, 0xec, 0xb7, 0x3b, 0xd0, 0x57, 0x41, 0x77, 0xda, 0xaa, 0xe6,
- 0x12, 0x79, 0x03, 0x62, 0xda, 0x35, 0x21, 0x5a, 0x72, 0xda, 0x6b, 0xb3,
- 0xf8, 0xe2, 0x04, 0xb9, 0xbb, 0x81, 0x07, 0x3a, 0x74, 0xfe, 0xac, 0x38,
- 0xcd, 0x00, 0x19, 0x08, 0x41, 0x84, 0xa0, 0x84, 0xfc, 0xb9, 0x84, 0x02,
- 0x76, 0x3b, 0x18, 0x24, 0xa3, 0x25, 0xd6, 0xff, 0x3a, 0x55, 0x50, 0xc8,
- 0xd4, 0x82, 0xc8, 0x4a, 0xc0, 0x23, 0xf0, 0x09, 0xe8, 0xcc, 0x11, 0x6e,
- 0xee, 0x3a, 0xf2, 0x6e, 0x07, 0xd9, 0xa2, 0xac, 0x3b, 0xe2, 0x63, 0x25,
- 0x42, 0xd4, 0x19, 0xa0, 0x27, 0x41, 0x96, 0x6e, 0x00, 0xa6, 0x70, 0x78,
- 0x7a, 0x26, 0xc0, 0x9f, 0xc7, 0xfc, 0x8b, 0x46, 0xa2, 0xb4, 0x7b, 0x86,
- 0x65, 0x42, 0x13, 0x54, 0xe0, 0xf2, 0x86, 0x5e, 0xed, 0x20, 0xa3, 0x2c,
- 0x6c, 0x50, 0x22, 0x57, 0x14, 0x12, 0x49, 0x49, 0x1a, 0x33, 0x6a, 0x53,
- 0xbb, 0x07, 0x23, 0xc3, 0x50, 0x78, 0x0c, 0x7d, 0x11, 0x8c, 0x30, 0x0a,
- 0x09, 0xbf, 0x31, 0xef, 0xca, 0x09, 0x7f, 0x69, 0xca, 0xc4, 0x6a, 0x67,
- 0xb3, 0x4f, 0x34, 0xe3, 0x26, 0xf9, 0xad, 0xa4, 0x04, 0x8c, 0x59, 0x4a,
- 0xe3, 0x18, 0xfa, 0x79, 0x4a, 0x17, 0xa2, 0xbe, 0x21, 0x49, 0xb9, 0x4d,
- 0xe8, 0xa2, 0xb1, 0x81, 0x78, 0xb0, 0x27, 0x05, 0x35, 0x03, 0x64, 0x24,
- 0x4c, 0xda, 0x19, 0x7e, 0xfa, 0x02, 0x11, 0x9a, 0xde, 0x43, 0xd2, 0x41,
- 0x56, 0x0d, 0xbb, 0x51, 0x23, 0x37, 0x80, 0x66, 0xaa, 0x59, 0xc8, 0x58,
- 0x76, 0xaf, 0x79, 0xd0, 0x62, 0xfc, 0xbd, 0x54, 0x3f, 0x65, 0x3a, 0xcd,
- 0xeb, 0x7b, 0xd1, 0x5b, 0x43, 0x13, 0xc8, 0x75, 0xda, 0x95, 0x46, 0x42,
- 0x0b, 0xef, 0x70, 0x54, 0x30, 0x51, 0xdd, 0xb6, 0xd8, 0xd2, 0x0f, 0xda,
- 0x08, 0x41, 0x56, 0x00, 0xa6, 0xf2, 0x91, 0x3d, 0x09, 0x39, 0x6b, 0xf9,
- 0x3a, 0x14, 0x59, 0x1c, 0xc6, 0x2c, 0x51, 0x2a, 0x9f, 0x17, 0x5d, 0x54,
- 0x25, 0x1c, 0x82, 0x86, 0x9a, 0x0a, 0x14, 0x43, 0x93, 0x04, 0xa3, 0xde,
- 0x25, 0x2f, 0x9c, 0xf7, 0x10, 0xed, 0x83, 0xcc, 0x49, 0xa5, 0x13, 0xa0,
- 0x44, 0x0e, 0x46, 0x10, 0x52, 0x1a, 0x65, 0xd7, 0xe9, 0x6d, 0xce, 0xb8,
- 0x35, 0x21, 0x08, 0x53, 0x87, 0xf9, 0x87, 0xf6, 0x9f, 0x21, 0x27, 0x78,
- 0x63, 0xf8, 0x00, 0xf3, 0xbb, 0x12, 0x41, 0x1d, 0x22, 0x30, 0x61, 0x37,
- 0x60, 0x9d, 0x3f, 0xed, 0xab, 0xc7, 0x11, 0x11, 0x03, 0x51, 0x9c, 0x3e,
- 0x22, 0xbe, 0x1d, 0x82, 0x8a, 0x3e, 0x99, 0x56, 0xb7, 0xdd, 0x27, 0xac,
- 0xba, 0xfd, 0xe5, 0x27, 0x4c, 0x70, 0xbc, 0x98, 0x84, 0x0e, 0x4f, 0xcf,
- 0xbf, 0x4b, 0x5c, 0x98, 0x57, 0xd7, 0xcd, 0x29, 0x87, 0xcb, 0xcf, 0x0b,
- 0xa4, 0x16, 0x1c, 0xb0, 0x5f, 0x79, 0xc2, 0xdc, 0x01, 0xa3, 0xfe, 0xf5,
- 0x54, 0x9d, 0xee, 0x9f, 0x7f, 0xd7, 0x3a, 0x4f, 0xde, 0x31, 0x9e, 0xd7,
- 0x49, 0x97, 0x2b, 0x0b, 0xe8, 0x52, 0xa5, 0xc1, 0xa1, 0x72, 0x6b, 0x9d,
- 0xa4, 0x56, 0xdd, 0x7e, 0x0a, 0xa9, 0xd1, 0x50, 0x22, 0x52, 0x8b, 0x96,
- 0xf7, 0x21, 0x52, 0x0b, 0xf7, 0xa8, 0x83, 0xd4, 0xa8, 0xfd, 0x88, 0xd4,
- 0x6c, 0x5d, 0xbb, 0x69, 0x6d, 0x15, 0xa9, 0x59, 0xbc, 0x6b, 0x26, 0x64,
- 0x16, 0x52, 0x59, 0x4c, 0x61, 0x0d, 0xba, 0x99, 0x57, 0x03, 0x0f, 0xf8,
- 0xf8, 0xd2, 0xfd, 0xfa, 0x45, 0x07, 0xd8, 0x4b, 0x88, 0xac, 0x21, 0x00,
- 0x2c, 0xc5, 0xb2, 0xbe, 0x02, 0x39, 0xbc, 0x7e, 0x77, 0xee, 0x01, 0x36,
- 0xea, 0xeb, 0x12, 0x38, 0x50, 0x41, 0x6b, 0xc3, 0x87, 0x8d, 0xcb, 0xa9,
- 0xa1, 0x94, 0x0a, 0xa2, 0x2e, 0x77, 0x30, 0x08, 0x86, 0x95, 0x6c, 0x88,
- 0xf0, 0xa2, 0xee, 0xd1, 0x00, 0xca, 0xd0, 0x45, 0x8a, 0x5f, 0x02, 0x8d,
- 0x8c, 0x86, 0xa1, 0x88, 0xd0, 0x1c, 0xaa, 0x33, 0x65, 0x83, 0xa0, 0xa6,
- 0x8f, 0xba, 0x44, 0xb6, 0x79, 0x0b, 0xdf, 0x32, 0xd9, 0xe8, 0x68, 0x6e,
- 0x6e, 0x69, 0xd1, 0x9b, 0x0f, 0x9a, 0xc5, 0x9b, 0x40, 0x21, 0x5d, 0x68,
- 0x10, 0xde, 0x75, 0xa5, 0xd9, 0xd7, 0x65, 0x47, 0xb0, 0x6d, 0x26, 0x79,
- 0x78, 0x21, 0xce, 0x83, 0xd2, 0xba, 0x0b, 0x76, 0x07, 0xc8, 0xf5, 0x20,
- 0xe5, 0xbe, 0x1c, 0xe6, 0x40, 0xd5, 0x61, 0x4f, 0x03, 0x39, 0x21, 0xaf,
- 0x80, 0x8d, 0x77, 0x0f, 0x42, 0x8f, 0x60, 0xe7, 0x17, 0xb7, 0x4f, 0x07,
- 0x3c, 0x55, 0xda, 0xab, 0xc5, 0x40, 0xe7, 0xdc, 0xb9, 0xf5, 0xc6, 0x39,
- 0x46, 0xb9, 0xa4, 0x14, 0x87, 0xcf, 0xcb, 0xa5, 0x4b, 0xea, 0x12, 0x2f,
- 0x34, 0x72, 0xdc, 0x43, 0x72, 0x88, 0x90, 0x74, 0x8a, 0x40, 0x55, 0x68,
- 0xd0, 0x8d, 0x5e, 0x5f, 0x9c, 0xaa, 0x2d, 0x2e, 0x00, 0xa6, 0x0c, 0xe9,
- 0x43, 0x56, 0x20, 0x2d, 0xaf, 0x96, 0x91, 0xab, 0x11, 0x16, 0x20, 0xef,
- 0x23, 0xb3, 0x70, 0xf6, 0x30, 0xd7, 0xfe, 0xff, 0xec, 0x4d, 0xfc, 0x94,
- 0x5d, 0x7c, 0xfe, 0x8f, 0xdf, 0xc5, 0xe7, 0xff, 0x43, 0x76, 0xf1, 0xf9,
- 0xff, 0x47, 0x76, 0xd1, 0x70, 0x02, 0x82, 0x3d, 0xe9, 0xaf, 0xde, 0x4e,
- 0x56, 0x87, 0x6b, 0x0d, 0xf5, 0xe5, 0xdb, 0x9b, 0xb7, 0xc0, 0x5a, 0x10,
- 0x75, 0xbb, 0x23, 0x27, 0x5a, 0x6c, 0xdb, 0x48, 0xdd, 0xea, 0x86, 0x60,
- 0x52, 0x5b, 0x82, 0x35, 0x7a, 0x74, 0x1a, 0xc0, 0x43, 0xf8, 0xdd, 0x31,
- 0x90, 0x2f, 0x55, 0x91, 0x3b, 0xfd, 0xff, 0x15, 0x3b, 0x85, 0x89, 0x97,
- 0x4b, 0x10, 0x7c, 0x05, 0xe9, 0x13, 0x8e, 0x63, 0xd9, 0x2f, 0x48, 0x05,
- 0x23, 0x8b, 0x18, 0xa4, 0x4d, 0xda, 0x7b, 0xc9, 0xab, 0x3d, 0x90, 0xc7,
- 0xbf, 0xe8, 0x4c, 0x04, 0x02, 0x8c, 0x97, 0x1f, 0x52, 0x37, 0x39, 0x38,
- 0x8d, 0xca, 0x11, 0x84, 0xf9, 0xef, 0x43, 0x92, 0x08, 0xa1, 0x7a, 0x1e,
- 0x23, 0x87, 0x5f, 0x43, 0x0d, 0xff, 0x3d, 0x72, 0xc8, 0xf8, 0xb2, 0x06,
- 0x2e, 0x17, 0x3b, 0x77, 0xdf, 0x9f, 0x1d, 0xaf, 0xca, 0xb3, 0x12, 0xf7,
- 0x29, 0xa7, 0xbc, 0x9e, 0x09, 0x8a, 0x57, 0x99, 0x9c, 0xa6, 0x57, 0xd9,
- 0x7a, 0x88, 0xe8, 0xf6, 0x09, 0xf8, 0x0f, 0x11, 0x82, 0x02, 0x6b, 0xa2,
- 0x3e, 0xda, 0x2f, 0x04, 0x4c, 0x80, 0x31, 0xc2, 0xc3, 0x25, 0x88, 0x2f,
- 0xb3, 0x0b, 0x20, 0x4a, 0x44, 0xd5, 0x66, 0xa6, 0xab, 0xa5, 0xd4, 0xab,
- 0xa7, 0x67, 0xfd, 0x4f, 0x1c, 0xfc, 0xbf, 0x6e, 0x03, 0x74, 0x53, 0x8e,
- 0xe3, 0xa7, 0xf9, 0x11, 0x6f, 0x4e, 0x6d, 0xa6, 0x0c, 0x54, 0x7a, 0x10,
- 0x5c, 0x3a, 0x07, 0xc0, 0xa6, 0xaf, 0x05, 0x06, 0xf2, 0xb2, 0x98, 0xb6,
- 0x49, 0x53, 0x80, 0xe4, 0x88, 0x0b, 0x1c, 0xeb, 0xb0, 0xf6, 0xd4, 0xcf,
- 0x2c, 0x7b, 0x69, 0x83, 0x52, 0xb1, 0x21, 0x14, 0x12, 0xd3, 0x29, 0x23,
- 0xf6, 0xb7, 0x23, 0x12, 0x99, 0x7e, 0x5d, 0x7e, 0x3e, 0xdb, 0x81, 0x78,
- 0x40, 0x90, 0x32, 0x72, 0xc0, 0xb7, 0xbb, 0x69, 0xfd, 0x86, 0xee, 0xd7,
- 0x43, 0xb8, 0xa9, 0x39, 0xfe, 0xf0, 0x65, 0x10, 0x8f, 0xf7, 0xe3, 0x9e,
- 0x19, 0x0f, 0x7e, 0xee, 0x4e, 0x2e, 0x88, 0xd3, 0x32, 0x9b, 0x61, 0x01,
- 0x06, 0x02, 0x10, 0x06, 0xf9, 0x75, 0x26, 0x9b, 0x61, 0xb9, 0x0d, 0x7b,
- 0x39, 0xb5, 0x0c, 0x36, 0x22, 0x00, 0x2d, 0x0f, 0xc2, 0x21, 0x89, 0x09,
- 0xdc, 0x36, 0xe2, 0x17, 0xa0, 0xde, 0x07, 0x02, 0xb8, 0x0d, 0x15, 0x35,
- 0xb2, 0xdf, 0x70, 0x50, 0x0f, 0x0e, 0x56, 0xd0, 0xaf, 0x09, 0x70, 0x74,
- 0x60, 0x4e, 0xbf, 0x3d, 0x38, 0xff, 0xdd, 0xce, 0xae, 0x45, 0x32, 0x72,
- 0x90, 0xb2, 0x7a, 0xf7, 0xcf, 0x81, 0x76, 0xd1, 0x26, 0x6f, 0xd6, 0x4d,
- 0xa4, 0x4c, 0x07, 0xfc, 0x1d, 0x1c, 0x04, 0xe9, 0x72, 0xac, 0xfd, 0xcb,
- 0x08, 0x7f, 0xc2, 0xf0, 0x24, 0x0d, 0xcd, 0x22, 0xc6, 0xb3, 0x4e, 0x1d,
- 0x9e, 0x36, 0xc8, 0xd9, 0x90, 0x04, 0x0f, 0xc5, 0xad, 0x5b, 0x03, 0x47,
- 0x86, 0x2e, 0xc5, 0x12, 0x21, 0x16, 0xd4, 0xb3, 0x04, 0x4d, 0xc5, 0x41,
- 0x64, 0x82, 0x54, 0xdb, 0x85, 0x33, 0x63, 0x11, 0xcf, 0x00, 0x0b, 0x67,
- 0x31, 0x79, 0x3d, 0x58, 0x92, 0xf5, 0xae, 0xad, 0x08, 0x33, 0xbd, 0x16,
- 0xa5, 0x24, 0xc0, 0xdd, 0x64, 0xf7, 0x0e, 0xeb, 0x21, 0x71, 0x9f, 0x36,
- 0x77, 0x95, 0x21, 0x33, 0x39, 0xba, 0x35, 0x32, 0x99, 0x13, 0x9b, 0xff,
- 0x17, 0xf1, 0x69, 0x0a, 0x85, 0x89, 0x2a, 0xc4, 0x4d, 0x72, 0xd8, 0x87,
- 0x47, 0xa0, 0x99, 0x01, 0x77, 0x5e, 0x0b, 0x73, 0x4c, 0xef, 0x3b, 0x1d,
- 0xc7, 0xbe, 0x6c, 0x8d, 0x30, 0x60, 0x28, 0x57, 0x12, 0xa9, 0x87, 0x44,
- 0x8b, 0x26, 0x66, 0x5a, 0x36, 0x0f, 0xcf, 0x47, 0x64, 0xe3, 0x9b, 0x87,
- 0x89, 0x44, 0x6c, 0x75, 0xce, 0xc7, 0x37, 0x10, 0xe8, 0xd5, 0x5c, 0x14,
- 0x4e, 0xcf, 0xc2, 0x56, 0x24, 0x54, 0xbd, 0x63, 0x17, 0x90, 0x42, 0xc2,
- 0x36, 0x78, 0x26, 0x4b, 0xbe, 0x0d, 0xf3, 0xb9, 0x78, 0x1d, 0xe1, 0x1f,
- 0x9d, 0xdf, 0xe6, 0x65, 0x31, 0x87, 0x8c, 0x72, 0x9b, 0x96, 0x39, 0xb4,
- 0x43, 0x1a, 0xeb, 0x87, 0xd7, 0x47, 0x67, 0xc9, 0x06, 0x6d, 0xec, 0xe8,
- 0x7e, 0x05, 0xa2, 0xe1, 0x56, 0x56, 0x8f, 0xb7, 0x16, 0x37, 0xf9, 0xd6,
- 0xbc, 0xaa, 0x26, 0xa3, 0x4d, 0x87, 0x9b, 0x81, 0xee, 0x40, 0x87, 0x42,
- 0xcb, 0x3b, 0x30, 0x0f, 0x2c, 0x39, 0xa1, 0x6b, 0x83, 0x16, 0x20, 0xda,
- 0x85, 0x8a, 0x16, 0x7a, 0x36, 0xac, 0x8a, 0x4d, 0x2d, 0xfa, 0x73, 0x9b,
- 0xe6, 0x53, 0x07, 0x11, 0x38, 0x97, 0xa6, 0x24, 0x40, 0x4b, 0x41, 0x0a,
- 0xd8, 0x5f, 0x91, 0x4d, 0x56, 0x04, 0x2b, 0x59, 0xd0, 0x8e, 0x40, 0x76,
- 0x4a, 0xa6, 0xbf, 0xc5, 0xdc, 0xd0, 0x72, 0x22, 0x67, 0xd9, 0x05, 0x90,
- 0xf7, 0x19, 0xdf, 0x9e, 0x17, 0x45, 0x7c, 0x67, 0x6c, 0x87, 0xe8, 0x8c,
- 0xce, 0x5b, 0x1f, 0x6e, 0xad, 0x27, 0x0e, 0xd1, 0x9f, 0x56, 0x19, 0xf5,
- 0x29, 0x7c, 0x09, 0x05, 0x22, 0xb0, 0xcb, 0x65, 0xe5, 0xec, 0xa3, 0xa9,
- 0xdb, 0xaf, 0x61, 0x77, 0xae, 0xa5, 0xdb, 0x4e, 0xf5, 0x63, 0x56, 0xc9,
- 0xfa, 0xde, 0x3a, 0x8e, 0xd6, 0x1c, 0x88, 0xe2, 0x22, 0xe4, 0xe8, 0xa0,
- 0xb0, 0x55, 0xeb, 0x3f, 0xad, 0x27, 0x49, 0x64, 0x1f, 0x95, 0xe3, 0x94,
- 0x7b, 0xec, 0x69, 0x4e, 0x1f, 0xbd, 0x9a, 0xe7, 0x7f, 0x13, 0x58, 0x02,
- 0x77, 0x88, 0x27, 0x19, 0xb2, 0x21, 0x10, 0xd2, 0x19, 0x0c, 0xa1, 0x13,
- 0x0d, 0xc3, 0x0f, 0xe9, 0xa7, 0x78, 0x48, 0x56, 0x65, 0x21, 0xe5, 0xaf,
- 0x69, 0x48, 0xe6, 0xa5, 0x95, 0x21, 0x74, 0x98, 0x2b, 0x9a, 0x03, 0x72,
- 0x75, 0x1a, 0x82, 0x98, 0x82, 0x28, 0xaa, 0x39, 0x3f, 0x39, 0x57, 0x67,
- 0xd1, 0xdb, 0x74, 0x9c, 0xd0, 0x1f, 0x3f, 0x40, 0xbe, 0xd8, 0xe4, 0x91,
- 0x37, 0x51, 0xce, 0xec, 0x88, 0x09, 0x67, 0x14, 0x5e, 0xd8, 0x05, 0x74,
- 0xd6, 0xb7, 0x03, 0xd7, 0x3c, 0x38, 0xc1, 0x35, 0x98, 0xe5, 0x60, 0x8e,
- 0x23, 0xcd, 0xd9, 0x15, 0x13, 0x35, 0x4b, 0x95, 0x69, 0x14, 0x61, 0xe3,
- 0xde, 0xdf, 0x72, 0xcc, 0x86, 0x19, 0x86, 0x8b, 0x7e, 0x86, 0x04, 0xca,
- 0xbc, 0x18, 0xd6, 0x6e, 0xfa, 0x8a, 0xa6, 0xca, 0x98, 0x30, 0x82, 0x14,
- 0x1b, 0x39, 0xed, 0x6b, 0xb1, 0x6f, 0x18, 0xdf, 0x77, 0x4e, 0xa4, 0x70,
- 0xa0, 0x12, 0xf9, 0xec, 0x3b, 0xf3, 0x99, 0xcf, 0xff, 0x04, 0xe2, 0x07,
- 0xed, 0xff, 0x2a, 0xd2, 0xff, 0xed, 0x22, 0xb2, 0x34, 0x97, 0xfa, 0x65,
- 0x57, 0x9e, 0xfe, 0x79, 0x36, 0x35, 0xc4, 0x77, 0x4b, 0x89, 0x1b, 0x97,
- 0xf7, 0x0b, 0xb6, 0x82, 0xc9, 0x5b, 0xba, 0x3e, 0x80, 0x09, 0x97, 0xec,
- 0xb7, 0xb0, 0x2c, 0xc0, 0xb0, 0x23, 0xbd, 0xd3, 0xf7, 0xa8, 0xb9, 0x81,
- 0xb0, 0x7d, 0x12, 0xf1, 0xd4, 0x10, 0xb6, 0xe4, 0x33, 0x4e, 0x85, 0x25,
- 0xaa, 0x9c, 0x48, 0x12, 0x8e, 0xcb, 0xa6, 0x8a, 0x20, 0x2e, 0xb8, 0x9d,
- 0x2a, 0x74, 0x7a, 0xf3, 0x31, 0xe1, 0xc4, 0x7c, 0x66, 0xb6, 0xf0, 0xba,
- 0x6d, 0x06, 0x0a, 0x8d, 0x3e, 0x1f, 0xc1, 0x98, 0x9b, 0xf2, 0xe0, 0x98,
- 0x25, 0x35, 0x54, 0x2e, 0xe7, 0xe8, 0xbc, 0xb9, 0x52, 0x8e, 0xbd, 0xb7,
- 0xcf, 0xd9, 0xd9, 0xd1, 0xf9, 0x41, 0xc2, 0xe7, 0xeb, 0xe4, 0xdd, 0xf1,
- 0x9f, 0x59, 0xe0, 0xae, 0x81, 0x65, 0xce, 0xd6, 0x3a, 0xee, 0xbf, 0xeb,
- 0x62, 0xa8, 0xfa, 0x3e, 0x48, 0xbe, 0x83, 0x77, 0xc8, 0xcd, 0x3c, 0xb8,
- 0xb3, 0x2d, 0xf6, 0x79, 0x6c, 0x4c, 0x2e, 0x70, 0xa2, 0x11, 0xc1, 0xe5,
- 0x2c, 0x85, 0x70, 0x04, 0xdb, 0xd8, 0xc2, 0x8c, 0x96, 0x31, 0x9a, 0x16,
- 0x87, 0x80, 0x84, 0x82, 0xbe, 0x68, 0x49, 0x6c, 0x35, 0xa4, 0xde, 0x69,
- 0xa2, 0xad, 0x5c, 0x5c, 0x9a, 0xe8, 0x95, 0x38, 0x73, 0x57, 0xa4, 0x8f,
- 0x40, 0x26, 0x74, 0xe0, 0x0d, 0x2a, 0x2c, 0xf0, 0xe1, 0xd3, 0xb3, 0xae,
- 0x72, 0xfa, 0x21, 0x43, 0x59, 0x2e, 0xee, 0x93, 0xaf, 0x53, 0xe6, 0x07,
- 0x30, 0xfe, 0xa5, 0xd9, 0x2c, 0xba, 0xa0, 0xab, 0x82, 0xfd, 0x8e, 0x6a,
- 0x8c, 0xc3, 0xef, 0x8e, 0x9c, 0x81, 0x4c, 0x27, 0x51, 0x89, 0x09, 0x2f,
- 0xe6, 0x84, 0xfd, 0xe9, 0x46, 0x3d, 0xa0, 0x39, 0x1a, 0x4a, 0x1c, 0x6b,
- 0x63, 0x25, 0x41, 0x86, 0xad, 0xd4, 0xae, 0x81, 0x34, 0x21, 0x53, 0x6b,
- 0x67, 0x76, 0x89, 0xd4, 0x82, 0x2c, 0x85, 0xe4, 0x25, 0xff, 0xbb, 0x62,
- 0xda, 0x81, 0x2c, 0x0c, 0x67, 0x72, 0x43, 0x7a, 0xe0, 0x97, 0x35, 0x92,
- 0x96, 0x73, 0x6a, 0x1a, 0x9c, 0x27, 0xb6, 0x06, 0x73, 0xd8, 0x34, 0x5d,
- 0xc8, 0xfd, 0xe4, 0xf5, 0xe1, 0x19, 0xf8, 0xd2, 0xe1, 0xbb, 0xaf, 0xe1,
- 0xc4, 0x09, 0x18, 0x3d, 0x37, 0x59, 0x09, 0x8f, 0x92, 0xba, 0x06, 0x26,
- 0x3b, 0xb6, 0x9a, 0xe3, 0x8b, 0x9d, 0xed, 0x27, 0x10, 0x00, 0x27, 0xbf,
- 0x69, 0xc2, 0x5a, 0x2a, 0x0a, 0xc4, 0xc1, 0x7e, 0x38, 0xbb, 0x5f, 0xa7,
- 0x38, 0x84, 0x8b, 0x27, 0xd9, 0xf5, 0x05, 0x67, 0xf4, 0x11, 0x59, 0x75,
- 0xb8, 0x88, 0x38, 0x8d, 0x28, 0x40, 0xbe, 0xe0, 0x43, 0xac, 0xf7, 0x6b,
- 0xe2, 0x6b, 0xb3, 0x24, 0x34, 0xac, 0x46, 0xae, 0x91, 0x58, 0x2a, 0x56,
- 0xdf, 0x3c, 0x1b, 0xd5, 0x66, 0xd2, 0xd0, 0x19, 0x5c, 0xe6, 0x13, 0xf3,
- 0x15, 0x75, 0x4b, 0x34, 0xaf, 0xca, 0xc8, 0xb6, 0x2e, 0x57, 0x84, 0xc9,
- 0x72, 0x86, 0x88, 0x84, 0x15, 0xef, 0xcb, 0xb5, 0xde, 0x58, 0x7a, 0xda,
- 0x53, 0xd5, 0x49, 0x95, 0xca, 0x23, 0xcf, 0x39, 0xa2, 0xc1, 0x11, 0xed,
- 0x11, 0xb4, 0x19, 0x6d, 0xaa, 0x87, 0xa7, 0x02, 0xb1, 0x54, 0xab, 0x65,
- 0x50, 0x8d, 0xa6, 0x3f, 0x20, 0x95, 0xf7, 0xc3, 0xc1, 0xfe, 0x87, 0xaf,
- 0xde, 0xbf, 0x7b, 0x7d, 0x7c, 0xd8, 0x6b, 0x53, 0xe4, 0xa5, 0x46, 0x46,
- 0x54, 0x1c, 0x06, 0xa0, 0xa8, 0x19, 0x61, 0x82, 0x3c, 0xce, 0x38, 0xe0,
- 0xbf, 0xe4, 0xb4, 0x33, 0xe7, 0x4e, 0xfd, 0x8a, 0xb7, 0xcd, 0x22, 0xcb,
- 0xf9, 0x04, 0x70, 0x4c, 0xc1, 0xe4, 0x0d, 0x28, 0x47, 0xad, 0x6f, 0x36,
- 0xbe, 0x4e, 0xe0, 0x28, 0x06, 0x10, 0x9a, 0x40, 0x07, 0xb7, 0x1c, 0x4f,
- 0xc9, 0x4d, 0xf7, 0xe5, 0x80, 0x1a, 0xea, 0x3d, 0xa7, 0x5d, 0x60, 0xd5,
- 0x53, 0x1a, 0x50, 0xc7, 0x76, 0x57, 0x8d, 0xbc, 0x02, 0x6e, 0x85, 0x28,
- 0x79, 0xa0, 0x83, 0x1c, 0x97, 0x75, 0xaf, 0x6f, 0x82, 0x4b, 0x98, 0x7a,
- 0x85, 0x0b, 0x3e, 0x4a, 0xe7, 0xe1, 0x74, 0xc9, 0x54, 0xe8, 0x7a, 0x98,
- 0x7d, 0xcc, 0x20, 0x8f, 0xe8, 0x5b, 0x07, 0x2a, 0x19, 0x7c, 0x5f, 0x94,
- 0xb0, 0x8f, 0xbe, 0xf6, 0x12, 0x82, 0x3c, 0x44, 0xda, 0x63, 0x1c, 0xbb,
- 0xc8, 0x52, 0x40, 0x8a, 0xf2, 0x16, 0x28, 0xad, 0x78, 0xba, 0x7f, 0xf1,
- 0x4d, 0xd7, 0x11, 0xee, 0x96, 0xd8, 0x14, 0xec, 0x85, 0x35, 0x05, 0x00,
- 0xda, 0xaa, 0x62, 0xd4, 0x0f, 0xbf, 0x20, 0xaa, 0x6e, 0x33, 0x8c, 0x2e,
- 0x7d, 0x22, 0xd4, 0x1f, 0x44, 0x54, 0x55, 0x59, 0xd5, 0xdf, 0x8d, 0x46,
- 0xd8, 0xdd, 0xd9, 0xd1, 0x56, 0x4b, 0x93, 0x18, 0xe0, 0x82, 0x81, 0xd0,
- 0x7f, 0x5b, 0x46, 0x04, 0x32, 0x6c, 0x31, 0x22, 0x2f, 0x93, 0xfd, 0xf7,
- 0x59, 0x52, 0x90, 0x1d, 0x1b, 0x9f, 0x52, 0xe1, 0x53, 0x76, 0xfd, 0x81,
- 0x37, 0xf9, 0x24, 0x18, 0x1e, 0x99, 0xab, 0x04, 0xe2, 0x6e, 0x03, 0x86,
- 0x7b, 0x75, 0x89, 0x49, 0x31, 0x87, 0x9b, 0xa9, 0x90, 0xb8, 0xb7, 0x9e,
- 0x6c, 0x64, 0xc3, 0x2b, 0x6a, 0x6f, 0x9d, 0xdb, 0xd9, 0xd9, 0xe3, 0x7f,
- 0x77, 0xf1, 0xef, 0x93, 0xf5, 0xcd, 0xc8, 0xe2, 0x51, 0x81, 0x7d, 0xc5,
- 0x59, 0x94, 0x88, 0xf6, 0x09, 0x6c, 0x18, 0x96, 0x01, 0x9f, 0xaf, 0x22,
- 0x24, 0x15, 0xf1, 0xba, 0x90, 0x3d, 0xfc, 0x42, 0x80, 0x55, 0x22, 0x4d,
- 0x65, 0xc4, 0x25, 0x54, 0x68, 0x6e, 0x63, 0x49, 0xa0, 0x0f, 0xf3, 0x26,
- 0xc6, 0x1f, 0xca, 0xec, 0x3a, 0xad, 0x88, 0x47, 0x2c, 0xeb, 0x9c, 0xc3,
- 0x00, 0x3a, 0x10, 0xc7, 0xa7, 0x9a, 0xda, 0x45, 0x33, 0xd6, 0x8e, 0x1d,
- 0x6e, 0x8d, 0x6d, 0xad, 0x98, 0x1a, 0x59, 0xd4, 0xd1, 0x27, 0x06, 0x5a,
- 0x59, 0xb4, 0x8b, 0x11, 0x9a, 0xe9, 0x8f, 0x1f, 0x0b, 0xeb, 0x82, 0xcd,
- 0xd8, 0x94, 0x8a, 0xc0, 0x84, 0x24, 0xbb, 0xa4, 0x15, 0xcb, 0x05, 0xe7,
- 0x41, 0x72, 0xd4, 0x64, 0xd4, 0x71, 0x8e, 0x87, 0xdc, 0x71, 0x1a, 0x67,
- 0xe5, 0xfe, 0x06, 0x07, 0x71, 0x3a, 0x1d, 0x6a, 0x87, 0x35, 0x89, 0xef,
- 0x53, 0xe2, 0x65, 0xc0, 0x5d, 0x05, 0x63, 0x45, 0x78, 0xbb, 0x4e, 0x56,
- 0x92, 0xf5, 0x8c, 0xd8, 0x15, 0x21, 0xb8, 0x0b, 0xb6, 0xd5, 0xf1, 0xe9,
- 0x5f, 0x7d, 0x72, 0x16, 0x39, 0x2d, 0xcf, 0x64, 0xb1, 0x1c, 0xb1, 0xb2,
- 0xf5, 0x52, 0xfe, 0x4a, 0xe8, 0xcf, 0x69, 0x3e, 0x86, 0xfe, 0xb5, 0x71,
- 0x8d, 0xe2, 0x43, 0x9b, 0x9f, 0x72, 0x82, 0x24, 0x2c, 0xa0, 0x95, 0xf6,
- 0x6a, 0x8d, 0x89, 0x36, 0x27, 0x00, 0x34, 0x1b, 0x51, 0xb8, 0x82, 0xf6,
- 0xa2, 0xf5, 0xe5, 0xe4, 0x38, 0x85, 0x17, 0x7d, 0xee, 0x4e, 0x50, 0x1a,
- 0x28, 0x77, 0x62, 0x34, 0xec, 0x00, 0x8c, 0x74, 0x1b, 0xe3, 0x9c, 0x42,
- 0xc1, 0x94, 0xf4, 0x66, 0x27, 0xe6, 0xc5, 0xc2, 0x96, 0x1d, 0x08, 0x98,
- 0x1a, 0xef, 0x5b, 0x15, 0x2d, 0x03, 0x20, 0x14, 0x36, 0xf2, 0x3c, 0x7f,
- 0xea, 0xe3, 0x61, 0x93, 0xea, 0x3a, 0xdd, 0x7d, 0xf6, 0xdc, 0x86, 0x9e,
- 0x78, 0xb3, 0x02, 0x9f, 0xed, 0x9e, 0x7c, 0xbb, 0xb5, 0xd5, 0xeb, 0x40,
- 0x79, 0xa5, 0x83, 0x9f, 0x89, 0x2f, 0x84, 0x9f, 0xfc, 0x53, 0xaf, 0x33,
- 0xd7, 0x27, 0xc4, 0x2e, 0x4f, 0x81, 0x34, 0x5f, 0x94, 0xad, 0xea, 0xbf,
- 0xc6, 0xd6, 0xdb, 0xb8, 0x13, 0xab, 0x25, 0x9c, 0xb0, 0x36, 0x9b, 0x94,
- 0xb8, 0xc8, 0x11, 0xc0, 0x58, 0x93, 0xee, 0xbb, 0xdf, 0x58, 0xa3, 0xca,
- 0x74, 0x89, 0xe8, 0x84, 0x79, 0x0f, 0x5d, 0x5b, 0x97, 0x16, 0x6a, 0x74,
- 0x79, 0xb2, 0x96, 0x6b, 0x23, 0x81, 0xde, 0xc2, 0x1b, 0x97, 0x91, 0x9d,
- 0xca, 0xd1, 0x86, 0x63, 0x8d, 0x75, 0xd1, 0x0c, 0xdb, 0x08, 0xae, 0xf9,
- 0x51, 0x51, 0xd6, 0x2d, 0xe8, 0x89, 0x88, 0xd9, 0x21, 0x0c, 0x84, 0x97,
- 0x02, 0xc1, 0xf9, 0xa5, 0x02, 0xb2, 0x99, 0xb5, 0xb6, 0x33, 0x46, 0x3b,
- 0x74, 0xab, 0xbc, 0x18, 0x6e, 0xe3, 0x62, 0x73, 0x1c, 0x50, 0x40, 0x5f,
- 0x04, 0xff, 0xe5, 0xfc, 0x5b, 0xc6, 0x9b, 0xd8, 0x0f, 0x8b, 0x00, 0x71,
- 0x3e, 0x46, 0x1c, 0x7b, 0xa3, 0x77, 0x2d, 0xbf, 0x74, 0x57, 0x4c, 0x2f,
- 0xa9, 0xa1, 0xad, 0x83, 0xfb, 0x14, 0x8c, 0x4d, 0xe9, 0xc6, 0x2a, 0x2d,
- 0x84, 0x99, 0xfb, 0x4f, 0xa5, 0xef, 0x56, 0x73, 0xad, 0x91, 0xf4, 0xd1,
- 0x74, 0x57, 0xcb, 0x27, 0x66, 0x28, 0x37, 0xb7, 0x52, 0x67, 0xdc, 0x83,
- 0x53, 0xa1, 0x7f, 0xd3, 0x0b, 0x99, 0x15, 0xa8, 0xaa, 0x4e, 0xeb, 0x65,
- 0xf5, 0xa8, 0xee, 0xe4, 0x04, 0x7d, 0xab, 0x33, 0x44, 0x2f, 0x39, 0xe0,
- 0x2a, 0x85, 0x90, 0x5a, 0xa9, 0x3b, 0xb9, 0x2a, 0xc6, 0x90, 0xb8, 0x02,
- 0x82, 0x3c, 0x97, 0x76, 0x0c, 0x41, 0x66, 0x23, 0xbd, 0x49, 0x69, 0x85,
- 0x0e, 0xce, 0x4f, 0xb9, 0x87, 0x05, 0x07, 0xd3, 0x6c, 0xf2, 0xa9, 0x8a,
- 0xc0, 0x22, 0xac, 0xae, 0xc7, 0xca, 0x24, 0x26, 0xbf, 0x3a, 0x56, 0xf1,
- 0xa3, 0x85, 0xff, 0x22, 0xc7, 0x10, 0xee, 0x1c, 0x41, 0x49, 0xc2, 0x0d,
- 0x1e, 0x75, 0xb4, 0xa0, 0x7b, 0x74, 0xb2, 0xe9, 0xf2, 0xf6, 0xfa, 0x76,
- 0xc5, 0xb8, 0x44, 0xbe, 0x6a, 0x79, 0x75, 0xa5, 0xb1, 0x31, 0xea, 0x33,
- 0xf7, 0xab, 0x11, 0xc9, 0xa1, 0xee, 0x80, 0x5f, 0xc3, 0x7b, 0xcd, 0xf7,
- 0xb1, 0x01, 0x26, 0x80, 0xb7, 0xcd, 0x0b, 0xdf, 0x70, 0x2a, 0x86, 0x91,
- 0xdc, 0x83, 0x15, 0xf6, 0x3b, 0x74, 0x2c, 0xec, 0x89, 0xc1, 0x4f, 0x5e,
- 0x6a, 0xb9, 0xed, 0x0e, 0x27, 0x60, 0x5e, 0x99, 0x0d, 0xcc, 0x6a, 0x70,
- 0xa1, 0xb8, 0x14, 0x6b, 0x1d, 0x3e, 0x35, 0xc2, 0x13, 0xb1, 0x9d, 0xa7,
- 0x0e, 0xbe, 0xc8, 0x74, 0x6d, 0x94, 0xdb, 0xf2, 0x76, 0x3e, 0xdd, 0x69,
- 0x3a, 0xbf, 0x2f, 0x49, 0x95, 0xcf, 0x06, 0xc8, 0xb6, 0x5b, 0x7b, 0x88,
- 0xc0, 0x7c, 0xf4, 0x11, 0x6c, 0x53, 0xfc, 0x96, 0xe6, 0xe8, 0x69, 0x45,
- 0x13, 0x2b, 0xe3, 0xe1, 0x8a, 0x76, 0xb6, 0x37, 0xea, 0x4d, 0xf0, 0x8e,
- 0x04, 0x42, 0x73, 0xb0, 0x14, 0xa0, 0xc6, 0x58, 0xe3, 0xc1, 0x54, 0xcc,
- 0xe7, 0x25, 0x39, 0x00, 0x9a, 0xa8, 0xad, 0x2c, 0x68, 0x35, 0xce, 0x81,
- 0xc4, 0xef, 0x2b, 0xc3, 0x92, 0x13, 0x60, 0x23, 0x92, 0x8d, 0xee, 0x55,
- 0xc9, 0x9b, 0x7c, 0x9e, 0x57, 0x5c, 0xe1, 0x99, 0x8b, 0x41, 0xa6, 0x57,
- 0x59, 0xbc, 0x51, 0x44, 0xe3, 0x95, 0x98, 0x6f, 0xd2, 0x44, 0xe1, 0xf0,
- 0xcb, 0x7c, 0x21, 0xee, 0x35, 0x4d, 0xc8, 0x52, 0x0f, 0x1b, 0x43, 0x54,
- 0x05, 0xd3, 0xfc, 0xd5, 0x7b, 0x69, 0xec, 0x47, 0xcd, 0xc3, 0xab, 0xed,
- 0xc3, 0x7c, 0xd1, 0x73, 0xe6, 0x01, 0x1b, 0x9e, 0x3f, 0x23, 0xd6, 0x06,
- 0x4f, 0x1a, 0xc7, 0x14, 0x97, 0x20, 0x49, 0x98, 0xa0, 0x77, 0xb6, 0x87,
- 0x2f, 0x50, 0x38, 0x9a, 0x3f, 0xde, 0xf4, 0xdb, 0xff, 0x00, 0x26, 0xc7,
- 0xd3, 0xdd, 0x06, 0x2d, 0x5c, 0x22, 0x4c, 0x8d, 0xe8, 0xb3, 0xdb, 0xe1,
- 0xfd, 0x86, 0x51, 0x12, 0x2b, 0x4e, 0xe0, 0xe0, 0x39, 0x6d, 0x70, 0x5d,
- 0x37, 0xa9, 0x53, 0x29, 0xa7, 0x60, 0x93, 0x3d, 0x6c, 0x76, 0x81, 0x02,
- 0x74, 0xc9, 0x2a, 0x88, 0xc5, 0x46, 0x1a, 0x2b, 0x34, 0x87, 0x7c, 0x73,
- 0x28, 0x43, 0x08, 0x65, 0xd5, 0xd0, 0x3f, 0x54, 0x8f, 0xa7, 0xd3, 0x9a,
- 0xd5, 0xe3, 0xe0, 0xcb, 0x49, 0xa6, 0x55, 0x6d, 0xdb, 0x77, 0x84, 0x14,
- 0x9d, 0xd7, 0x48, 0x46, 0xea, 0xf3, 0x68, 0xae, 0xa1, 0x8f, 0x9a, 0x01,
- 0x85, 0x0d, 0x4c, 0x15, 0x8e, 0xd9, 0x8d, 0xf0, 0x52, 0x30, 0xd3, 0x22,
- 0x0d, 0x84, 0x3d, 0x11, 0xb7, 0x02, 0x7c, 0xea, 0xe0, 0xab, 0x34, 0xe0,
- 0xd1, 0xa7, 0x74, 0x22, 0x8f, 0xfa, 0xed, 0xb1, 0x7b, 0x00, 0xbc, 0x16,
- 0x51, 0xec, 0xed, 0xe6, 0x34, 0x76, 0x0e, 0x75, 0x8d, 0xc5, 0x6a, 0x66,
- 0xa9, 0x95, 0x3c, 0x30, 0xf1, 0x0c, 0xb2, 0x1c, 0xbd, 0xa9, 0xb2, 0x99,
- 0xe4, 0x1b, 0x08, 0xf9, 0x93, 0x1c, 0x34, 0x88, 0xf4, 0x23, 0xc3, 0x11,
- 0x80, 0xf0, 0x20, 0x1b, 0x50, 0x0b, 0xb1, 0xa7, 0xb5, 0x16, 0x2e, 0xe5,
- 0x51, 0x2a, 0x78, 0xe5, 0xee, 0xee, 0x8a, 0x40, 0x0d, 0x45, 0xc1, 0x55,
- 0xaf, 0x0c, 0x2f, 0xc6, 0xa0, 0x4a, 0x2f, 0x33, 0xe3, 0xc0, 0x7c, 0x24,
- 0xb9, 0x70, 0xc1, 0x98, 0x96, 0x50, 0x92, 0x17, 0xf1, 0xd9, 0x3c, 0xc6,
- 0xa1, 0xaa, 0x96, 0x63, 0xd6, 0x55, 0xd8, 0x1c, 0xea, 0xd8, 0x22, 0xcb,
- 0x75, 0x95, 0x9d, 0xe1, 0x29, 0x9d, 0x21, 0x0b, 0x4a, 0xe4, 0x72, 0x70,
- 0x9a, 0x86, 0xcf, 0xda, 0x42, 0x47, 0x7c, 0x6b, 0x0b, 0xac, 0x17, 0x06,
- 0xbd, 0x5b, 0x0e, 0x10, 0x21, 0xe6, 0xdf, 0x6a, 0xff, 0xe9, 0xf6, 0x0e,
- 0x86, 0xfb, 0x74, 0xfb, 0xb3, 0xb0, 0x96, 0x87, 0xc3, 0x33, 0x51, 0xbc,
- 0x7a, 0xcd, 0x9d, 0x79, 0x38, 0xb1, 0x79, 0xca, 0xb6, 0x65, 0xac, 0x6b,
- 0x36, 0x5b, 0x4e, 0x21, 0x86, 0x29, 0xcc, 0xcb, 0x20, 0x9f, 0x0b, 0xcc,
- 0x07, 0xa7, 0x4a, 0x62, 0x2f, 0x53, 0x38, 0x4e, 0x62, 0xb1, 0x3b, 0x31,
- 0xd4, 0xb3, 0x55, 0xd8, 0x2f, 0x0a, 0xf7, 0x1c, 0xc4, 0x71, 0x02, 0xbf,
- 0x06, 0xdc, 0x2b, 0x32, 0x7e, 0x79, 0xbd, 0xef, 0x40, 0xb1, 0x5e, 0x2e,
- 0xd8, 0x10, 0xaa, 0x46, 0x39, 0xe2, 0x8b, 0x5b, 0x80, 0x75, 0xd1, 0xcc,
- 0xa5, 0x31, 0x83, 0xb2, 0x5a, 0x59, 0xe9, 0xb3, 0x37, 0x07, 0xad, 0xe6,
- 0x76, 0x9f, 0x7c, 0xfe, 0xb9, 0x0e, 0x22, 0xd3, 0x34, 0x0f, 0x5f, 0x17,
- 0x80, 0xfd, 0x02, 0x92, 0x01, 0x2e, 0x4e, 0x4c, 0xae, 0x06, 0x8c, 0x54,
- 0x52, 0x89, 0x7c, 0xee, 0x50, 0x5c, 0x7b, 0xba, 0xa6, 0x3d, 0x4d, 0xea,
- 0x74, 0xc9, 0x6f, 0x69, 0xa2, 0xf5, 0x6a, 0xb5, 0xee, 0xa4, 0xe1, 0x87,
- 0x1b, 0x88, 0xa8, 0x14, 0xe7, 0xfa, 0x32, 0x0a, 0xa4, 0xbf, 0x9a, 0xa3,
- 0xc7, 0xbf, 0xb0, 0x1a, 0x7c, 0x95, 0xd5, 0x71, 0xa2, 0x5e, 0x80, 0x27,
- 0xd1, 0x68, 0x7c, 0x25, 0x60, 0xa9, 0x47, 0xb1, 0xb6, 0x54, 0xc3, 0x97,
- 0xa2, 0xe3, 0x1b, 0x2c, 0x61, 0x50, 0xb1, 0xf4, 0x4b, 0x90, 0xd1, 0x4b,
- 0x75, 0xdc, 0x77, 0x02, 0x4b, 0x7f, 0xa9, 0x10, 0xb8, 0xaa, 0x29, 0x01,
- 0x9b, 0xb5, 0xae, 0xd3, 0xf1, 0xb5, 0x67, 0xe6, 0x40, 0x2d, 0x81, 0x21,
- 0x4f, 0x75, 0x33, 0xad, 0xb0, 0x13, 0x45, 0x6b, 0xe4, 0xae, 0xb8, 0xdc,
- 0x4b, 0x43, 0xd6, 0xa5, 0x97, 0x80, 0xf3, 0x2d, 0x25, 0x5e, 0x78, 0x34,
- 0x5d, 0x4b, 0x51, 0x75, 0x88, 0xb4, 0x22, 0xd1, 0xf8, 0x77, 0x83, 0x85,
- 0x8a, 0x4e, 0xfe, 0xa1, 0xd5, 0x6e, 0xb5, 0xe2, 0x34, 0xb0, 0x8b, 0xf9,
- 0x64, 0x1c, 0xb5, 0x15, 0xfb, 0x6b, 0xb3, 0xaf, 0xc7, 0x3e, 0xe9, 0xf1,
- 0x43, 0xed, 0x93, 0xcf, 0x2f, 0xf5, 0x2c, 0xda, 0x21, 0xf4, 0xfd, 0x83,
- 0x30, 0x65, 0x38, 0x0e, 0x84, 0x5a, 0x7c, 0xf1, 0xdc, 0xd5, 0x64, 0x05,
- 0x0a, 0x2b, 0xbf, 0x09, 0x98, 0xd0, 0xbd, 0x4e, 0x93, 0xec, 0xe0, 0x8d,
- 0x1b, 0xe9, 0xab, 0x2f, 0x1b, 0xad, 0xdd, 0xdd, 0x0d, 0x67, 0xf7, 0xf6,
- 0x5d, 0x35, 0x1c, 0x17, 0xb3, 0x0e, 0x28, 0x32, 0x45, 0xeb, 0x17, 0x92,
- 0xf2, 0x10, 0x2b, 0x61, 0xbd, 0x46, 0x5f, 0x6b, 0x99, 0xd1, 0xf2, 0xd2,
- 0xca, 0x51, 0x6f, 0x97, 0x17, 0xda, 0x01, 0xa0, 0x5f, 0x21, 0x28, 0x9a,
- 0x15, 0x95, 0x51, 0x41, 0x14, 0x67, 0xb4, 0xc4, 0x78, 0x11, 0x75, 0xb9,
- 0x1c, 0xf3, 0x85, 0xf4, 0x9e, 0xdd, 0x44, 0xf5, 0x72, 0x2e, 0xa5, 0x6a,
- 0x23, 0x27, 0xa6, 0xaf, 0xaf, 0xac, 0x8a, 0x0c, 0x8f, 0xd5, 0xe4, 0x17,
- 0xef, 0x22, 0x4d, 0xd5, 0xcc, 0xba, 0xc8, 0x17, 0xa8, 0x67, 0x6c, 0x39,
- 0xe7, 0x91, 0x35, 0xa3, 0x0a, 0x7c, 0xe2, 0xdc, 0x02, 0x4b, 0x2b, 0x55,
- 0xfe, 0xb7, 0xcc, 0x04, 0x24, 0xcd, 0x0c, 0xd1, 0x0a, 0xe1, 0x2c, 0x62,
- 0xc5, 0xf2, 0xe8, 0x9f, 0x5d, 0xa9, 0x5c, 0x41, 0xc2, 0xaf, 0x83, 0x00,
- 0x74, 0x78, 0x68, 0x5a, 0x5c, 0xc9, 0x6c, 0x16, 0xa6, 0x44, 0xb4, 0x19,
- 0x06, 0xc0, 0xf0, 0x7b, 0x7d, 0x49, 0x5c, 0x51, 0xa0, 0x05, 0x9f, 0x33,
- 0xbf, 0x72, 0xc7, 0xd7, 0xef, 0xb2, 0xd1, 0xab, 0x2f, 0x39, 0xb4, 0xe5,
- 0x23, 0xb0, 0x34, 0x05, 0x54, 0x9f, 0xc9, 0x7d, 0x8b, 0xff, 0x5c, 0x4f,
- 0xd8, 0x58, 0xdc, 0xb1, 0xe1, 0x74, 0x4c, 0x56, 0xb5, 0x18, 0xc0, 0x05,
- 0x05, 0xad, 0x5d, 0x16, 0xc5, 0xca, 0xc6, 0xac, 0xe8, 0x1d, 0x56, 0x22,
- 0x48, 0x54, 0x90, 0xbc, 0x01, 0x4f, 0xfd, 0x42, 0xf1, 0x0a, 0x0c, 0x15,
- 0x70, 0x80, 0xae, 0x34, 0x78, 0x18, 0x2d, 0xe5, 0xe2, 0xb6, 0x94, 0xd8,
- 0x57, 0x5a, 0xb1, 0x98, 0x55, 0xa3, 0xd5, 0x0b, 0xc2, 0x4f, 0xbf, 0xfa,
- 0x12, 0x30, 0x83, 0xfc, 0xeb, 0x9f, 0xdc, 0xdb, 0xfc, 0x0f, 0x1d, 0x1f,
- 0x62, 0x42, 0x2b, 0x27, 0xc2, 0x8a, 0x97, 0x3d, 0xbf, 0x25, 0xb6, 0x40,
- 0xb3, 0xee, 0xf4, 0xfa, 0x3d, 0xa6, 0xa9, 0xde, 0x9f, 0x7a, 0x88, 0xa8,
- 0x30, 0xd7, 0x0d, 0x4a, 0x3d, 0x49, 0x7d, 0xcb, 0x22, 0x8a, 0x1a, 0xe6,
- 0x24, 0x0b, 0x3c, 0x50, 0x61, 0xe0, 0x8f, 0x8d, 0xf9, 0xa7, 0x75, 0x37,
- 0xea, 0x9f, 0xd6, 0xfd, 0xb8, 0x7f, 0x5a, 0xf7, 0x23, 0xff, 0x69, 0xfd,
- 0x57, 0xec, 0x68, 0x4f, 0x9a, 0xf7, 0xad, 0x07, 0x8d, 0x07, 0x6d, 0xaf,
- 0xf7, 0x56, 0x35, 0xed, 0x1d, 0xdd, 0xb9, 0x31, 0x01, 0xbf, 0x42, 0x7c,
- 0xc4, 0x75, 0x15, 0xa4, 0x1c, 0xa5, 0xd4, 0xc9, 0x96, 0x79, 0xc3, 0xf8,
- 0x1b, 0x45, 0x1f, 0x05, 0x4f, 0xf0, 0x9a, 0xb2, 0x20, 0x5e, 0x4d, 0xd9,
- 0x6e, 0x1b, 0x60, 0x75, 0x5a, 0x27, 0x6e, 0xa5, 0x2d, 0x6e, 0x25, 0x0a,
- 0x66, 0x72, 0xaf, 0x77, 0x42, 0x6c, 0x5e, 0x2e, 0x4b, 0x09, 0x9a, 0x13,
- 0xd6, 0x2e, 0x20, 0x24, 0x06, 0x08, 0xac, 0x7d, 0xbd, 0xdd, 0x7f, 0xf7,
- 0x7e, 0xff, 0xf8, 0xc1, 0xf8, 0xed, 0x30, 0xd0, 0xd2, 0x79, 0xfd, 0x60,
- 0xa5, 0x08, 0x4d, 0x11, 0x9c, 0xc1, 0xc2, 0x92, 0xc6, 0x92, 0x58, 0xe8,
- 0x8f, 0x2c, 0x78, 0xfc, 0xdc, 0x99, 0xeb, 0xf4, 0xbd, 0xca, 0xdb, 0x6f,
- 0xc2, 0xba, 0x3f, 0x37, 0x92, 0x9e, 0xb3, 0x6e, 0xef, 0xf3, 0xeb, 0xeb,
- 0xea, 0x34, 0x77, 0xb5, 0x7c, 0xbb, 0x4a, 0x46, 0xba, 0xeb, 0x89, 0x25,
- 0x2c, 0xb3, 0x8e, 0xc3, 0xbc, 0xa5, 0xb8, 0xa4, 0x86, 0x4f, 0x27, 0x09,
- 0xa4, 0x97, 0x97, 0x2b, 0x03, 0x00, 0xf6, 0x0f, 0x0e, 0x7c, 0x06, 0x5c,
- 0x13, 0x4b, 0xa3, 0x11, 0x01, 0xfc, 0x8f, 0xb7, 0xe1, 0x60, 0xe1, 0xa6,
- 0xa8, 0xbe, 0xcb, 0x59, 0x42, 0x83, 0xba, 0x90, 0x04, 0xd4, 0x97, 0x3a,
- 0x9a, 0x2f, 0x3a, 0xd7, 0x91, 0x06, 0x10, 0x4a, 0xc3, 0x56, 0x85, 0x0d,
- 0xf5, 0xe6, 0xce, 0xd5, 0xb9, 0x7d, 0xba, 0x0f, 0xf4, 0x65, 0xcd, 0xc6,
- 0x54, 0xad, 0x26, 0xca, 0x16, 0xd0, 0xb8, 0x7a, 0x54, 0x37, 0xb1, 0xf9,
- 0x1b, 0x82, 0x97, 0xd9, 0xff, 0x54, 0x76, 0x4c, 0x2e, 0x96, 0x33, 0x22,
- 0x5f, 0x92, 0x8b, 0x26, 0xa4, 0x34, 0x3f, 0x1c, 0xd1, 0x69, 0xbb, 0xcb,
- 0x0e, 0x48, 0x89, 0x32, 0x55, 0xb1, 0x35, 0xed, 0x0c, 0x5e, 0xed, 0x77,
- 0x3b, 0x06, 0xd6, 0xcf, 0x8f, 0x2e, 0x0e, 0x69, 0x77, 0xde, 0x5f, 0x7c,
- 0xb3, 0xae, 0x9a, 0x4f, 0x3b, 0xc1, 0x1c, 0xa8, 0x62, 0xa4, 0x8c, 0xd3,
- 0xd2, 0x5b, 0xd2, 0x5c, 0x29, 0x2c, 0x37, 0x2e, 0x0c, 0xd1, 0x8a, 0xa1,
- 0x6a, 0x6d, 0xf4, 0xb3, 0xe1, 0xb3, 0xcd, 0xd6, 0xc6, 0xac, 0xc6, 0x8a,
- 0x6d, 0x57, 0x4f, 0x54, 0x9a, 0x56, 0xb0, 0x52, 0x0e, 0x75, 0xde, 0xf2,
- 0xb5, 0x04, 0x44, 0xb4, 0x4f, 0x2d, 0x68, 0xa3, 0x03, 0x0d, 0xc3, 0x63,
- 0x83, 0x38, 0xc3, 0x00, 0x10, 0x55, 0x1d, 0x9c, 0x9f, 0xca, 0x5c, 0x61,
- 0x8d, 0x70, 0x97, 0x88, 0x16, 0xa7, 0x8b, 0x9b, 0xbb, 0x89, 0x01, 0xd4,
- 0xb9, 0x66, 0x57, 0x58, 0xac, 0x29, 0x36, 0xf8, 0x9a, 0x9c, 0xe3, 0x13,
- 0xfe, 0x3a, 0xf1, 0x55, 0x93, 0x59, 0x2e, 0x00, 0x4d, 0x01, 0x58, 0x6b,
- 0x9b, 0x92, 0x55, 0x75, 0xfc, 0x51, 0x7e, 0x76, 0xf3, 0x00, 0x88, 0x07,
- 0x5c, 0xdc, 0x15, 0xc2, 0x82, 0xbe, 0x81, 0xd1, 0x68, 0x22, 0x83, 0xaf,
- 0x67, 0x05, 0x8d, 0x4a, 0xa2, 0x47, 0x78, 0x89, 0x63, 0xf4, 0xfb, 0x8d,
- 0xf3, 0x4d, 0x57, 0x4f, 0x94, 0x25, 0x78, 0x6d, 0x8d, 0x13, 0x59, 0x5a,
- 0x89, 0x2b, 0x01, 0x04, 0x8a, 0x22, 0xc8, 0x74, 0xc1, 0xe2, 0x05, 0x27,
- 0x31, 0xbe, 0x68, 0xc1, 0xfd, 0xc6, 0x77, 0x93, 0xee, 0xdc, 0x7c, 0x11,
- 0x80, 0x24, 0x0f, 0x8e, 0x31, 0xcf, 0xc4, 0x23, 0x72, 0xf0, 0xfd, 0xeb,
- 0x56, 0xc5, 0x75, 0xcc, 0x0a, 0x84, 0x20, 0x38, 0x21, 0xf3, 0x55, 0x98,
- 0x0d, 0x16, 0x05, 0x40, 0xb4, 0x24, 0xa5, 0x88, 0x26, 0x59, 0xb6, 0x70,
- 0xa8, 0xc1, 0x28, 0x81, 0x25, 0xc5, 0xb7, 0xe8, 0xc8, 0xb1, 0x65, 0xeb,
- 0x1e, 0xe8, 0x8e, 0xf7, 0x2b, 0x46, 0xa7, 0x6c, 0xa0, 0x51, 0x9c, 0x87,
- 0x41, 0xfc, 0x49, 0x21, 0x4c, 0x76, 0x3e, 0x7b, 0xf2, 0x79, 0x52, 0x71,
- 0x1e, 0x68, 0x1e, 0x2e, 0x99, 0xc0, 0x4c, 0xad, 0x46, 0xe3, 0x50, 0xf1,
- 0xde, 0xdc, 0x6a, 0x9a, 0x9b, 0x4c, 0x5a, 0x7d, 0x71, 0x97, 0xe1, 0xe6,
- 0xd2, 0x3c, 0xc9, 0x18, 0x9c, 0x81, 0x16, 0x51, 0x17, 0x4c, 0x05, 0x5c,
- 0xac, 0x93, 0xd8, 0x8a, 0x86, 0x01, 0x65, 0x4e, 0x88, 0xe9, 0x70, 0x41,
- 0x03, 0x62, 0x0f, 0x67, 0x87, 0x17, 0x67, 0xf4, 0xe3, 0xfc, 0xe2, 0xe4,
- 0x6c, 0x05, 0x84, 0x4a, 0x3d, 0x06, 0xdb, 0xe3, 0x45, 0x33, 0x43, 0x9c,
- 0x39, 0xb1, 0x02, 0x7e, 0x81, 0x88, 0x05, 0x61, 0x21, 0x55, 0x27, 0x42,
- 0x66, 0x00, 0x94, 0x59, 0x35, 0xab, 0xa4, 0x5f, 0x12, 0x2f, 0x7f, 0x70,
- 0x62, 0xb2, 0xe7, 0x0f, 0x53, 0x08, 0x26, 0xcc, 0xc4, 0xc8, 0x33, 0x76,
- 0x4c, 0x1b, 0xa3, 0xd5, 0x12, 0xaa, 0xde, 0xf5, 0xab, 0x06, 0x97, 0x15,
- 0x14, 0x22, 0x64, 0x25, 0xd5, 0x6a, 0x1b, 0x15, 0xc8, 0xd6, 0x2d, 0xbb,
- 0x77, 0x9d, 0x63, 0x0c, 0x6e, 0x5c, 0x31, 0x82, 0x47, 0xe8, 0x37, 0xad,
- 0x9c, 0xa5, 0x89, 0xaf, 0xcc, 0x62, 0x96, 0x89, 0x34, 0x2f, 0xae, 0x5c,
- 0xe3, 0x3a, 0x72, 0x4f, 0x08, 0x7c, 0x54, 0xd2, 0x95, 0x5c, 0xee, 0xb0,
- 0x37, 0x79, 0x97, 0x7b, 0x11, 0x82, 0x97, 0xec, 0x0b, 0x09, 0x38, 0xd3,
- 0x1a, 0xa0, 0xa6, 0x3d, 0x1b, 0x55, 0xef, 0x61, 0x88, 0xe0, 0x67, 0xc3,
- 0x9d, 0x36, 0x77, 0xe6, 0x4c, 0xeb, 0x6e, 0x0e, 0x83, 0xb8, 0x47, 0xcb,
- 0xd7, 0x75, 0x05, 0xb2, 0x1c, 0x60, 0x5c, 0x58, 0x95, 0xe1, 0x54, 0x9f,
- 0xea, 0xcc, 0x14, 0x43, 0x42, 0x2a, 0x67, 0x14, 0x38, 0x1a, 0xd7, 0xad,
- 0x97, 0xe4, 0xe7, 0x65, 0x9b, 0xab, 0x36, 0x84, 0xa5, 0x98, 0x8f, 0x76,
- 0x94, 0xad, 0x4a, 0x06, 0xa7, 0x5b, 0x41, 0x82, 0xb9, 0x42, 0xcb, 0x36,
- 0x66, 0xbe, 0xd3, 0x2d, 0x80, 0xac, 0x02, 0x7b, 0x6b, 0x4b, 0x21, 0x30,
- 0x30, 0x8b, 0x5c, 0x59, 0xaa, 0x2c, 0xd2, 0x8d, 0x0a, 0x41, 0xba, 0xa8,
- 0xc2, 0x33, 0xcc, 0x7d, 0x31, 0x33, 0x5b, 0x44, 0x46, 0x1e, 0x61, 0x05,
- 0x55, 0x6e, 0xa9, 0x49, 0x21, 0x31, 0xee, 0xbc, 0x08, 0x1d, 0x91, 0xbc,
- 0x10, 0x5c, 0x11, 0xb5, 0x6c, 0x57, 0x8b, 0xb6, 0xa7, 0x16, 0x8b, 0x92,
- 0x09, 0xbc, 0x9d, 0x5c, 0x8f, 0xa0, 0x88, 0x88, 0x06, 0x4e, 0xc3, 0x4d,
- 0x14, 0x56, 0x07, 0x71, 0xdc, 0xf3, 0x88, 0x5a, 0x52, 0x12, 0x24, 0x69,
- 0xdb, 0xd2, 0xe3, 0x65, 0xae, 0xb1, 0xf3, 0x03, 0x83, 0x92, 0xec, 0x75,
- 0x2d, 0x2c, 0xd6, 0x4c, 0x0a, 0x37, 0x51, 0xae, 0x7d, 0xaf, 0x71, 0x19,
- 0x18, 0xd0, 0xdb, 0x20, 0x5f, 0x3c, 0x9e, 0xc4, 0x6f, 0xf0, 0x01, 0x3c,
- 0x2c, 0x9f, 0x16, 0xd7, 0xf0, 0x5e, 0x99, 0xd7, 0x29, 0x8f, 0xe1, 0x6f,
- 0xaa, 0xc4, 0x5b, 0x4b, 0x15, 0x04, 0x8d, 0xc4, 0x2d, 0x1e, 0xb4, 0x9b,
- 0x1e, 0xcc, 0xd6, 0xe8, 0x4d, 0x49, 0xd9, 0xc3, 0x42, 0xaf, 0x8c, 0xce,
- 0x64, 0xe3, 0xb7, 0x6c, 0x46, 0x58, 0x09, 0x61, 0x10, 0x44, 0x13, 0xc0,
- 0x36, 0x46, 0xe3, 0x75, 0x03, 0x8e, 0xed, 0x11, 0x8a, 0x0e, 0x24, 0x12,
- 0x8d, 0x9d, 0x29, 0x2b, 0xd6, 0x1e, 0xf6, 0xd5, 0xa0, 0xe0, 0xa7, 0xc3,
- 0xdd, 0xcd, 0x07, 0x73, 0x02, 0x59, 0x7e, 0x67, 0x68, 0x48, 0x49, 0x16,
- 0x27, 0x55, 0x4b, 0x00, 0x3b, 0x04, 0xf2, 0xa1, 0x94, 0xad, 0xf5, 0x95,
- 0x32, 0x31, 0x8b, 0x38, 0x78, 0x80, 0x57, 0xa8, 0xbd, 0x6f, 0x0c, 0x08,
- 0xf8, 0xf8, 0x7e, 0x41, 0x08, 0x4e, 0x93, 0x53, 0xba, 0x63, 0xdc, 0x12,
- 0x07, 0x48, 0x07, 0xf4, 0x0e, 0xd4, 0x0d, 0x1e, 0xc6, 0x66, 0xfb, 0x42,
- 0x64, 0x6f, 0x28, 0x22, 0x22, 0xdf, 0x78, 0x0f, 0x02, 0x2b, 0x7f, 0x33,
- 0xfa, 0x90, 0xbd, 0x18, 0x25, 0x0d, 0x03, 0x38, 0x4e, 0x52, 0xef, 0x15,
- 0x87, 0x96, 0x4d, 0xe5, 0xc6, 0x4f, 0xd7, 0x3a, 0xef, 0x69, 0xac, 0xad,
- 0xbf, 0x08, 0x38, 0x48, 0x9b, 0x4e, 0x66, 0x15, 0x96, 0x43, 0x5b, 0x2e,
- 0x54, 0x0b, 0x9a, 0x14, 0x77, 0x73, 0x54, 0x08, 0x4a, 0x62, 0x6a, 0xc2,
- 0xf0, 0xf9, 0xec, 0xb4, 0x3c, 0x7d, 0xbb, 0xdb, 0xc3, 0x8f, 0x6d, 0x76,
- 0x5a, 0x55, 0xd3, 0xc1, 0x78, 0x3c, 0x7e, 0x80, 0xa3, 0x1e, 0x1c, 0x1c,
- 0xd0, 0x07, 0x07, 0x40, 0xda, 0x61, 0x9c, 0x70, 0x8c, 0xf4, 0xe0, 0x9a,
- 0x4d, 0x36, 0xd3, 0xcd, 0xe4, 0xfc, 0x7a, 0xc9, 0x98, 0x87, 0x34, 0x1a,
- 0x50, 0x05, 0xfb, 0xcc, 0x63, 0xd7, 0x2f, 0x97, 0xbe, 0x2a, 0x55, 0xb7,
- 0x6b, 0x6a, 0x30, 0x22, 0xc0, 0x01, 0xb4, 0xd3, 0xf2, 0x84, 0x8c, 0xae,
- 0xa4, 0x87, 0xce, 0x74, 0xd6, 0xe5, 0x3c, 0xa8, 0x4d, 0xa8, 0x1a, 0xd6,
- 0x3c, 0x9b, 0x23, 0x68, 0xde, 0xd5, 0x53, 0x40, 0x48, 0x53, 0x95, 0xbc,
- 0xdb, 0xbf, 0x60, 0xe7, 0x5d, 0xad, 0x99, 0xb8, 0xdd, 0x29, 0x88, 0x0e,
- 0xf1, 0x15, 0x66, 0xb0, 0x34, 0xa8, 0xdd, 0x63, 0x77, 0x00, 0x58, 0x51,
- 0x5e, 0x19, 0x6b, 0x54, 0x5c, 0xc9, 0xae, 0xba, 0x04, 0xba, 0xa2, 0x03,
- 0x77, 0x03, 0x49, 0x16, 0x1b, 0xff, 0xd9, 0x76, 0xbd, 0xee, 0x3c, 0x8f,
- 0xef, 0xb7, 0xc6, 0xeb, 0x3f, 0x0a, 0x8a, 0xc4, 0x96, 0xf6, 0xfa, 0xf3,
- 0xaf, 0xdf, 0xa6, 0x4c, 0xb9, 0x05, 0x3f, 0x26, 0xa4, 0x71, 0xd1, 0x91,
- 0xda, 0x11, 0xb0, 0x5d, 0x57, 0x4d, 0x4a, 0x32, 0x27, 0x15, 0xbc, 0xb8,
- 0xa2, 0xed, 0x9e, 0xa0, 0x88, 0x9e, 0x5c, 0x03, 0x2e, 0x9f, 0xf9, 0x2e,
- 0x8d, 0xd8, 0x86, 0x71, 0x8a, 0x00, 0x81, 0xaa, 0x20, 0xe6, 0x22, 0x41,
- 0xaf, 0xae, 0xf9, 0x32, 0x5b, 0x08, 0xf8, 0x67, 0xd8, 0xfc, 0x2a, 0x3d,
- 0x2e, 0x94, 0xfa, 0x43, 0x80, 0x0d, 0x1b, 0x63, 0xd5, 0x6c, 0x05, 0x1d,
- 0xa5, 0x79, 0xa7, 0x9d, 0x3c, 0xd5, 0x9e, 0x5b, 0x45, 0x83, 0xe3, 0x1d,
- 0xda, 0xed, 0xdc, 0x21, 0xa1, 0xd2, 0xee, 0xfd, 0x38, 0xd3, 0x63, 0x6f,
- 0xa7, 0x41, 0xc3, 0x56, 0x8c, 0xc6, 0xa6, 0xc5, 0x15, 0x67, 0xd7, 0x08,
- 0x76, 0x15, 0x16, 0xc9, 0x6a, 0x66, 0xb5, 0xed, 0x13, 0x42, 0xc1, 0x5a,
- 0x33, 0xbc, 0xe9, 0x08, 0x13, 0x59, 0x84, 0x79, 0x8a, 0xa3, 0x7b, 0x03,
- 0xc4, 0x73, 0xe0, 0x2f, 0x5d, 0xb1, 0x33, 0x16, 0x9c, 0x37, 0xe6, 0x94,
- 0x1c, 0x78, 0x70, 0xab, 0xa6, 0xfd, 0x37, 0x6f, 0x44, 0x87, 0x98, 0x8a,
- 0xda, 0x59, 0x93, 0x99, 0xee, 0x6f, 0x9d, 0x61, 0xbc, 0x6a, 0xdb, 0x9b,
- 0x7a, 0x65, 0x93, 0x5c, 0x41, 0x6c, 0xcc, 0x9b, 0x41, 0x54, 0x36, 0x8c,
- 0x90, 0x62, 0x46, 0x52, 0x16, 0xe4, 0xd6, 0x40, 0x78, 0x2f, 0x97, 0xf5,
- 0xb2, 0x74, 0x95, 0x67, 0x1a, 0x2c, 0x9e, 0xbd, 0x09, 0x9a, 0x09, 0x25,
- 0x1e, 0x3d, 0xf9, 0x63, 0x65, 0xcd, 0x08, 0x35, 0x2b, 0x2b, 0x8e, 0x09,
- 0x7c, 0x77, 0x21, 0x5e, 0xaf, 0xc7, 0xf0, 0xd7, 0x46, 0x2f, 0x3b, 0x13,
- 0x9f, 0xd4, 0xd8, 0x9e, 0x96, 0xf4, 0x93, 0x19, 0x99, 0x5d, 0x4d, 0x53,
- 0xce, 0x52, 0x63, 0x39, 0x69, 0x98, 0x1c, 0xab, 0x9d, 0xbe, 0xf7, 0x65,
- 0x4f, 0xb8, 0x74, 0xef, 0x65, 0x2f, 0x59, 0x5d, 0xad, 0xa0, 0xea, 0xbb,
- 0xf8, 0x96, 0x9e, 0x98, 0x9e, 0x7b, 0x36, 0x04, 0x15, 0xde, 0x65, 0x58,
- 0x88, 0x03, 0x9d, 0x17, 0x0e, 0xaf, 0x9c, 0x25, 0xa2, 0x0e, 0x3d, 0xb6,
- 0x09, 0x81, 0xb6, 0x90, 0x3c, 0x67, 0x76, 0x6b, 0x01, 0x59, 0x57, 0x5c,
- 0x96, 0x97, 0xe2, 0xcb, 0xed, 0x55, 0x88, 0xd8, 0x92, 0x12, 0x82, 0x5d,
- 0xa1, 0xa3, 0x96, 0xf5, 0x0a, 0x1d, 0x00, 0x23, 0xd2, 0xb1, 0x00, 0x38,
- 0x60, 0x3c, 0x46, 0x6c, 0x1b, 0x84, 0x43, 0xfa, 0x96, 0xa4, 0x1a, 0x39,
- 0xe9, 0x3c, 0x6f, 0x36, 0x1a, 0xbf, 0x6c, 0x07, 0xbd, 0x5f, 0x66, 0x29,
- 0xef, 0x26, 0x62, 0x8f, 0xda, 0xb5, 0x25, 0x06, 0x57, 0x2c, 0x11, 0x5e,
- 0x4d, 0x8b, 0x51, 0x71, 0x79, 0xf9, 0x80, 0x49, 0x52, 0xa0, 0x75, 0xd0,
- 0x86, 0x90, 0xe8, 0x3a, 0xa7, 0x96, 0xf3, 0x7b, 0x23, 0x1e, 0x9f, 0x96,
- 0x97, 0x1e, 0x8a, 0x65, 0x06, 0x80, 0xd1, 0x91, 0x14, 0x10, 0x0a, 0xcf,
- 0x7d, 0x97, 0xff, 0x6e, 0x59, 0xb3, 0xd4, 0x9c, 0xc9, 0x99, 0x9a, 0xf0,
- 0xe0, 0xe1, 0xa5, 0xab, 0xe4, 0x3f, 0xfe, 0xfe, 0xe3, 0xcf, 0x1d, 0xc9,
- 0x66, 0xac, 0xe1, 0x68, 0x8e, 0x0f, 0x62, 0x8b, 0x05, 0xbb, 0xce, 0xe1,
- 0x12, 0xfb, 0x2a, 0x7c, 0x2c, 0xe3, 0x65, 0xd3, 0xcb, 0x61, 0x90, 0x56,
- 0x1c, 0x33, 0x38, 0x66, 0xe4, 0xd6, 0x21, 0x90, 0x9f, 0x8b, 0xda, 0x42,
- 0x17, 0x18, 0xbb, 0x0f, 0xd8, 0xa5, 0xde, 0xf9, 0xe7, 0x70, 0xc1, 0x44,
- 0x7b, 0x8f, 0x0f, 0x94, 0x83, 0x77, 0x74, 0xde, 0x60, 0xe5, 0xb3, 0xef,
- 0xcf, 0x8e, 0x9c, 0x6e, 0x17, 0xec, 0xc4, 0xd7, 0xd8, 0x89, 0x68, 0xd9,
- 0x1c, 0x40, 0x7a, 0xb3, 0xf0, 0x93, 0x87, 0x55, 0x45, 0xd1, 0x58, 0x61,
- 0x3e, 0x8d, 0x7a, 0x12, 0x6c, 0xf7, 0x1a, 0x4c, 0xfa, 0x9d, 0x68, 0xfa,
- 0xfd, 0xa8, 0xc2, 0x46, 0x19, 0x43, 0x2e, 0x07, 0xd0, 0x19, 0xb9, 0x0b,
- 0xd9, 0x68, 0x35, 0xf7, 0xf5, 0xa1, 0xaf, 0xf8, 0x12, 0x38, 0xef, 0x0c,
- 0x76, 0xd4, 0x57, 0x83, 0x01, 0x78, 0x2b, 0x93, 0xff, 0x5d, 0xce, 0xc9,
- 0xc7, 0x86, 0x10, 0xde, 0xa9, 0x15, 0x5d, 0x78, 0x98, 0x71, 0x61, 0x5d,
- 0x06, 0xce, 0xe9, 0x57, 0xf0, 0xd8, 0xd2, 0x07, 0x7b, 0xff, 0xd6, 0xf3,
- 0x58, 0xc8, 0x1d, 0xe9, 0xb3, 0x0e, 0xfa, 0xa3, 0xa3, 0x00, 0xf9, 0xe0,
- 0xa8, 0xef, 0x47, 0xea, 0x3b, 0xb4, 0x79, 0x8c, 0x3a, 0x6a, 0xb9, 0xac,
- 0x1a, 0xc6, 0x37, 0x87, 0xfb, 0xaf, 0x6d, 0xb2, 0xff, 0x14, 0x40, 0x41,
- 0x6f, 0x10, 0x1a, 0x65, 0x52, 0xb2, 0x66, 0x69, 0xba, 0x24, 0x36, 0xc5,
- 0xee, 0x0e, 0x90, 0x08, 0x49, 0xdb, 0x1c, 0x88, 0xc7, 0x24, 0x1b, 0xab,
- 0x8e, 0x6a, 0x7d, 0x5a, 0xa9, 0x3c, 0x06, 0x06, 0x3a, 0x33, 0xf6, 0xf1,
- 0xe1, 0x15, 0x16, 0x17, 0xd0, 0x6f, 0x08, 0x8d, 0xf1, 0x52, 0x7e, 0xae,
- 0xb8, 0x14, 0x0e, 0x81, 0x47, 0xaf, 0x8f, 0xd2, 0x5a, 0x2a, 0xde, 0xb0,
- 0xf1, 0x5d, 0xa3, 0x19, 0xa8, 0x5c, 0x16, 0xf0, 0xda, 0x45, 0x7c, 0x9a,
- 0x9c, 0x63, 0xb2, 0xc3, 0x9f, 0xb5, 0xc8, 0x8b, 0xb1, 0x14, 0x1f, 0xf6,
- 0x8c, 0xfc, 0xc4, 0xa0, 0xd3, 0xaa, 0x13, 0xba, 0xd5, 0x9c, 0x4e, 0x41,
- 0x91, 0x1a, 0x52, 0xcb, 0x18, 0x8f, 0x8b, 0x94, 0x6b, 0x92, 0x53, 0x6c,
- 0xc0, 0xfc, 0xd8, 0x75, 0x1a, 0x94, 0xe0, 0x99, 0x4b, 0x1d, 0x9e, 0x08,
- 0xe4, 0x24, 0xc4, 0x92, 0x73, 0x76, 0x0d, 0xc1, 0x81, 0x17, 0x85, 0xd0,
- 0x6c, 0xaf, 0x7d, 0xf1, 0xfd, 0x73, 0x90, 0x66, 0x39, 0x37, 0x24, 0x8f,
- 0x76, 0x48, 0x8b, 0xf4, 0x1e, 0x3a, 0x35, 0xda, 0x27, 0xce, 0xf5, 0x01,
- 0x54, 0x95, 0x50, 0x0e, 0x8f, 0x77, 0x9d, 0xd7, 0x4e, 0x40, 0x7d, 0x81,
- 0xda, 0xc1, 0x37, 0xc9, 0xf8, 0x26, 0x47, 0xb4, 0x75, 0xbd, 0x04, 0x8f,
- 0x4f, 0xe7, 0xe1, 0x28, 0x1d, 0x7c, 0xdd, 0xa4, 0xc0, 0x4a, 0x77, 0x13,
- 0x91, 0xc9, 0x94, 0x0c, 0x28, 0x66, 0xa3, 0x51, 0x5c, 0x12, 0x2b, 0x60,
- 0x61, 0x7c, 0x1b, 0xf5, 0xa0, 0x05, 0x3d, 0x2f, 0x0e, 0xfb, 0x64, 0xa5,
- 0x94, 0xde, 0x83, 0xe2, 0x05, 0x93, 0x18, 0x4d, 0xa0, 0x57, 0x66, 0x82,
- 0xb7, 0xc7, 0x55, 0x39, 0x59, 0x56, 0x71, 0xf8, 0x65, 0x3c, 0x65, 0x5d,
- 0x1e, 0xe2, 0xf7, 0x57, 0xf9, 0x6d, 0xa7, 0x9d, 0xd9, 0x06, 0x06, 0x2b,
- 0xb5, 0x8d, 0xc2, 0x41, 0x85, 0x3b, 0x83, 0x9e, 0xa0, 0x4f, 0x26, 0x5c,
- 0x5e, 0xc2, 0x6d, 0x5f, 0x8c, 0xc9, 0xc1, 0x57, 0x18, 0xbb, 0xf6, 0xe7,
- 0x7b, 0x44, 0xf8, 0xc9, 0xfa, 0x37, 0x45, 0x55, 0xef, 0xad, 0x3b, 0x78,
- 0xba, 0x2a, 0x53, 0xc9, 0xa2, 0x49, 0x39, 0x5a, 0x8f, 0x21, 0x8a, 0x22,
- 0xc3, 0xdd, 0x2e, 0xe7, 0x8f, 0x2e, 0x16, 0x7d, 0xd8, 0x5c, 0x91, 0x8a,
- 0x89, 0xe1, 0x10, 0x86, 0x18, 0xfa, 0x7d, 0x96, 0xeb, 0x10, 0x00, 0xa2,
- 0x13, 0x47, 0x1c, 0xf0, 0x90, 0x7e, 0x18, 0x1c, 0xa0, 0xf3, 0xc1, 0x37,
- 0x68, 0xef, 0x4f, 0xeb, 0x4e, 0xed, 0x6e, 0x7f, 0x45, 0x03, 0xef, 0x4e,
- 0xbb, 0x0b, 0xa1, 0x9f, 0xab, 0x65, 0x69, 0x78, 0x1c, 0x30, 0xa7, 0xeb,
- 0x28, 0x51, 0x73, 0x71, 0x32, 0xd9, 0x72, 0x9b, 0x2e, 0x9e, 0xbf, 0xae,
- 0xc4, 0x70, 0x4d, 0x1a, 0x5d, 0x20, 0xb2, 0x70, 0x32, 0x28, 0x2e, 0x07,
- 0xa8, 0x84, 0x3d, 0x4b, 0xcb, 0x1b, 0xf6, 0xb3, 0x04, 0xa7, 0x0e, 0xc1,
- 0x9f, 0x48, 0x73, 0x9e, 0x4c, 0xba, 0xee, 0x6a, 0xcd, 0xcf, 0x2b, 0x9d,
- 0xda, 0xaa, 0x83, 0xd1, 0xcd, 0xdc, 0x63, 0x55, 0xc7, 0x5e, 0x77, 0xf5,
- 0x20, 0xb8, 0x76, 0xb4, 0x96, 0x83, 0x88, 0x4a, 0xe8, 0x22, 0x90, 0xb0,
- 0x2f, 0xd7, 0x39, 0x26, 0x0d, 0x56, 0x3c, 0x13, 0x0b, 0x12, 0xac, 0x00,
- 0xa4, 0xfa, 0xb3, 0x60, 0xca, 0xb5, 0x59, 0x1e, 0xae, 0xad, 0xb8, 0x6f,
- 0xb5, 0xe6, 0x07, 0xd4, 0x91, 0x22, 0xb2, 0x37, 0x41, 0x8c, 0x56, 0xc1,
- 0xce, 0x9e, 0x73, 0xec, 0x87, 0x8a, 0x9f, 0x9f, 0x0d, 0x9f, 0x7c, 0xc6,
- 0xa5, 0x1e, 0x1d, 0x76, 0xa1, 0xd5, 0xa3, 0xf7, 0x4c, 0x13, 0x5b, 0x19,
- 0xd0, 0x57, 0x9b, 0xaa, 0x50, 0xa4, 0x95, 0xd7, 0x63, 0xa2, 0x88, 0x2b,
- 0xa8, 0x00, 0xd2, 0x51, 0xf3, 0x5e, 0xe3, 0x90, 0x22, 0xdf, 0xcb, 0xef,
- 0xd4, 0xa7, 0x0f, 0x5a, 0x7a, 0xc3, 0x17, 0xd2, 0xe0, 0x1d, 0x31, 0xba,
- 0xbd, 0xe4, 0xdf, 0x8b, 0x6c, 0x1d, 0xc5, 0x59, 0xf7, 0xb6, 0xb6, 0x76,
- 0x5e, 0xec, 0x92, 0xc2, 0xf1, 0xf9, 0x70, 0x7b, 0xb8, 0xb3, 0x15, 0xa5,
- 0x7b, 0xec, 0x9f, 0xbd, 0x3b, 0x7a, 0xf7, 0xf5, 0x9e, 0xab, 0x82, 0xa3,
- 0xb0, 0xbe, 0x16, 0x0b, 0x16, 0xda, 0x52, 0x7d, 0xf9, 0x2b, 0x7e, 0x24,
- 0xef, 0x42, 0x64, 0x75, 0xa0, 0x6a, 0x03, 0x61, 0x59, 0x62, 0xd1, 0x28,
- 0x33, 0xb1, 0xd9, 0x88, 0xc8, 0xe6, 0x8a, 0x24, 0xf4, 0xa5, 0x3a, 0x95,
- 0x95, 0x8f, 0xe3, 0x6a, 0x48, 0x9d, 0x48, 0x1d, 0x8c, 0xca, 0x14, 0xc0,
- 0x32, 0x05, 0x29, 0x39, 0x53, 0xd4, 0x90, 0x2a, 0x42, 0xfa, 0x0a, 0xa0,
- 0x91, 0x63, 0x43, 0x33, 0xec, 0x0c, 0xd7, 0x85, 0xc6, 0xb5, 0xcb, 0x4d,
- 0xe6, 0x30, 0x68, 0xf9, 0x73, 0xa4, 0xc9, 0xf2, 0x4d, 0x9c, 0xe3, 0x2a,
- 0xf5, 0x6b, 0xb2, 0x42, 0x7e, 0xf4, 0xd0, 0x51, 0x74, 0xbf, 0x8b, 0xa9,
- 0x1b, 0x02, 0x8c, 0x7d, 0xea, 0x8b, 0x32, 0xb8, 0x35, 0x78, 0x04, 0x06,
- 0x0c, 0x11, 0x44, 0xbc, 0xc6, 0x1d, 0x91, 0x05, 0x48, 0x3c, 0xf2, 0x07,
- 0x79, 0x4b, 0xd4, 0xc1, 0x2e, 0x77, 0x1c, 0xbf, 0x62, 0xd7, 0x68, 0xa0,
- 0x18, 0xf2, 0x14, 0x17, 0xcb, 0xd1, 0x6c, 0xf2, 0x2c, 0x79, 0x49, 0xff,
- 0xc4, 0x79, 0x55, 0x07, 0xe6, 0xbd, 0x65, 0x03, 0x33, 0xb3, 0x31, 0x85,
- 0xd3, 0x10, 0x71, 0x9f, 0x7f, 0x7d, 0xb2, 0x4b, 0x0d, 0x7f, 0x4c, 0xad,
- 0x96, 0x69, 0x32, 0xa1, 0xd5, 0xab, 0xbb, 0xb3, 0x9b, 0x4d, 0x2f, 0x0a,
- 0x6a, 0xcd, 0xf0, 0x82, 0xef, 0xec, 0x7e, 0x9e, 0x8c, 0xf2, 0x3a, 0x79,
- 0xfb, 0xfa, 0x19, 0x69, 0x7e, 0xd9, 0xf8, 0xa6, 0x5a, 0xce, 0x8c, 0x49,
- 0x68, 0xdd, 0x4b, 0x1e, 0x67, 0xaf, 0x7d, 0x57, 0xfb, 0x0c, 0xa1, 0x7e,
- 0xc3, 0x56, 0x7b, 0x69, 0x36, 0xe5, 0xa0, 0x24, 0xac, 0x63, 0x66, 0xdc,
- 0x92, 0xda, 0xb4, 0x3b, 0xac, 0x25, 0xb4, 0x06, 0xd4, 0x79, 0x25, 0x59,
- 0x42, 0x2d, 0xeb, 0xec, 0x67, 0x4d, 0xcb, 0x93, 0x24, 0xc2, 0x19, 0xac,
- 0xfc, 0x80, 0xe4, 0xef, 0xab, 0x28, 0xae, 0xda, 0xf4, 0xe9, 0x23, 0x3c,
- 0xdb, 0x8a, 0x45, 0x3d, 0xc6, 0x1b, 0x01, 0x76, 0x97, 0x48, 0x86, 0xcc,
- 0x22, 0xf3, 0xf1, 0x12, 0x15, 0x5e, 0x62, 0x19, 0xd2, 0xaa, 0x70, 0x1a,
- 0x52, 0x5e, 0xb9, 0x94, 0xd2, 0xea, 0xfb, 0x0b, 0x0e, 0xa4, 0x4c, 0x76,
- 0x86, 0x1f, 0xfb, 0x1a, 0x2d, 0x18, 0x96, 0xf0, 0x65, 0x61, 0xad, 0x88,
- 0xee, 0x6b, 0x78, 0x17, 0x5a, 0xa3, 0xe1, 0xb6, 0x25, 0x84, 0x75, 0xca,
- 0x5e, 0xb6, 0x52, 0x8e, 0xc5, 0x2e, 0xdd, 0xcf, 0x57, 0x29, 0x8a, 0xc0,
- 0x07, 0xd4, 0x93, 0xf7, 0x81, 0x71, 0x0a, 0x31, 0x70, 0xd5, 0xc4, 0x55,
- 0x48, 0x94, 0x99, 0xf3, 0x87, 0xc6, 0x0c, 0x55, 0x6c, 0x94, 0xe8, 0x6b,
- 0xd1, 0x1e, 0x82, 0xaf, 0x23, 0x51, 0x00, 0xcd, 0x38, 0xc6, 0x0e, 0x2e,
- 0x21, 0x4b, 0x30, 0x60, 0x39, 0xae, 0xcf, 0x8a, 0x40, 0xe6, 0xe5, 0xb6,
- 0x20, 0xe8, 0x1c, 0x8d, 0xc6, 0x19, 0xb2, 0xc8, 0xdb, 0xb6, 0xc0, 0xf1,
- 0xe1, 0x30, 0x98, 0xd5, 0x91, 0x49, 0xc4, 0x5d, 0x53, 0xe2, 0xda, 0xa4,
- 0x5b, 0x6f, 0x8e, 0x8e, 0x0f, 0x37, 0x93, 0x37, 0x99, 0x25, 0x92, 0x85,
- 0xd3, 0xe2, 0x3b, 0xe8, 0x5f, 0xe4, 0x13, 0xdb, 0x22, 0xd5, 0xe4, 0xbb,
- 0x62, 0x2c, 0xd4, 0xe6, 0x08, 0x3d, 0x44, 0x76, 0x0d, 0x0c, 0x56, 0xd2,
- 0xdb, 0x0b, 0xc4, 0xae, 0x5a, 0x7d, 0x5a, 0xd8, 0x0e, 0x83, 0xea, 0x64,
- 0x1d, 0x49, 0x81, 0x41, 0xb4, 0xfd, 0x30, 0x28, 0xd1, 0x55, 0x84, 0x51,
- 0x17, 0x3c, 0x76, 0x8d, 0xd1, 0x14, 0x37, 0x6b, 0x5e, 0x11, 0xeb, 0xb8,
- 0xef, 0x3a, 0x0b, 0x70, 0x92, 0x22, 0xe8, 0x11, 0xb5, 0x10, 0x39, 0x40,
- 0x67, 0x56, 0x4c, 0x7c, 0x16, 0x8e, 0xd4, 0x21, 0x9e, 0x4f, 0x1b, 0x35,
- 0x10, 0x02, 0x24, 0xde, 0x2e, 0xdc, 0x96, 0x53, 0xc9, 0x01, 0xe1, 0x01,
- 0x85, 0x61, 0x1f, 0x22, 0xea, 0x79, 0x45, 0xd8, 0xb5, 0x32, 0x74, 0x91,
- 0x83, 0x5c, 0xa2, 0xbc, 0x83, 0x2e, 0x1c, 0xc0, 0xae, 0x90, 0x41, 0xe8,
- 0x46, 0x2a, 0x84, 0xb3, 0x6b, 0xa8, 0xe9, 0xfe, 0xdc, 0x02, 0xbc, 0xa4,
- 0x1a, 0x1b, 0xf2, 0xf2, 0xa3, 0xec, 0xbf, 0x8e, 0x10, 0x3c, 0xbd, 0x50,
- 0x83, 0x99, 0x91, 0x3a, 0xb5, 0xbd, 0xb7, 0x63, 0x97, 0x29, 0xc7, 0xce,
- 0xce, 0xb3, 0x1a, 0xb1, 0x67, 0x1c, 0x1a, 0xb7, 0xf5, 0xdb, 0x05, 0x41,
- 0xfd, 0x85, 0x49, 0xf3, 0x2f, 0xcb, 0xf9, 0x0d, 0xd1, 0x56, 0xc5, 0x14,
- 0xac, 0x95, 0xdd, 0xaa, 0xee, 0xd3, 0xf7, 0xbd, 0xf3, 0x7e, 0xb5, 0x4b,
- 0x0b, 0x8e, 0xc3, 0x42, 0x75, 0x69, 0x50, 0x04, 0xa4, 0xff, 0x40, 0x0a,
- 0x7d, 0x43, 0xb2, 0xe4, 0x5c, 0x0e, 0xa2, 0x9d, 0x31, 0xc7, 0xd7, 0xb0,
- 0x2d, 0x63, 0x5d, 0x47, 0x64, 0x4d, 0xaf, 0xaf, 0xae, 0xd5, 0x3a, 0x4a,
- 0x2b, 0x85, 0x46, 0x80, 0x95, 0xce, 0x29, 0x64, 0xea, 0xd5, 0x4a, 0xa5,
- 0xa4, 0x04, 0xcb, 0x80, 0x89, 0x35, 0x2a, 0xc5, 0x23, 0x58, 0xd4, 0xe2,
- 0xf5, 0x68, 0xdd, 0x96, 0x02, 0x5a, 0x91, 0x58, 0x09, 0xda, 0xca, 0x55,
- 0x78, 0x70, 0x03, 0x4c, 0x5a, 0x83, 0x13, 0xf9, 0x82, 0x05, 0xc7, 0x5e,
- 0x74, 0x2e, 0xc7, 0xd3, 0x42, 0xaa, 0xae, 0xdf, 0x85, 0x16, 0xd4, 0x7f,
- 0x17, 0x59, 0x90, 0xef, 0x22, 0x3d, 0xe9, 0x83, 0x8e, 0x60, 0xbb, 0xb0,
- 0xb2, 0x95, 0xe1, 0x0e, 0x20, 0xf1, 0x0b, 0x42, 0xe6, 0x49, 0xd0, 0x86,
- 0x84, 0x7a, 0x3b, 0x68, 0x82, 0xee, 0x72, 0xaa, 0xca, 0xe0, 0x02, 0xfb,
- 0x90, 0xe3, 0xd6, 0xaf, 0xe9, 0xd8, 0x16, 0x55, 0x2e, 0xfb, 0xe2, 0x23,
- 0x21, 0x03, 0xef, 0x42, 0x1c, 0xec, 0x64, 0x70, 0x3c, 0x0e, 0xe1, 0xd0,
- 0x85, 0x7f, 0x99, 0x5d, 0xa4, 0x0b, 0xee, 0x02, 0x96, 0xcf, 0x79, 0x11,
- 0xa2, 0x9c, 0xd3, 0x55, 0xcf, 0x96, 0xa6, 0xdf, 0x13, 0x15, 0x92, 0x70,
- 0x37, 0xe7, 0x9a, 0xa8, 0x1b, 0xf7, 0x59, 0xbd, 0xe9, 0xab, 0x78, 0x58,
- 0x78, 0xe1, 0xaa, 0x72, 0x9f, 0x11, 0xf8, 0x08, 0x5b, 0x00, 0xf4, 0x25,
- 0x81, 0x0a, 0xe7, 0xeb, 0xba, 0x04, 0x3e, 0x0f, 0xfb, 0xa9, 0xb4, 0x0c,
- 0xcb, 0xaa, 0xe6, 0xc2, 0x4b, 0xe9, 0x46, 0x2e, 0xa5, 0xaa, 0x2b, 0xea,
- 0x4e, 0xd3, 0xc4, 0x83, 0x7e, 0x83, 0x50, 0x64, 0x55, 0xba, 0x5d, 0xfa,
- 0xb8, 0xa6, 0xab, 0x25, 0xc9, 0xba, 0xb5, 0xb6, 0xde, 0x96, 0xfd, 0x1b,
- 0xf9, 0xcf, 0x12, 0x37, 0x1a, 0xc0, 0xc8, 0xef, 0xd3, 0xb1, 0x88, 0x1e,
- 0x61, 0xaf, 0x84, 0xac, 0x64, 0x34, 0x1d, 0xb1, 0xdc, 0xcd, 0x88, 0xb8,
- 0xcc, 0x7f, 0xd1, 0x4c, 0x27, 0x6d, 0xa2, 0x49, 0x28, 0x8c, 0x89, 0xec,
- 0x78, 0xca, 0x59, 0x36, 0x71, 0x2e, 0x6a, 0x03, 0x14, 0x17, 0x19, 0x4b,
- 0x9a, 0x29, 0x31, 0x9d, 0x36, 0x46, 0x15, 0x94, 0xb5, 0x5e, 0x39, 0x59,
- 0x8e, 0x8f, 0x73, 0xb1, 0x00, 0x8d, 0x45, 0x8e, 0x63, 0x01, 0x02, 0x1d,
- 0xcb, 0x99, 0x90, 0x61, 0x29, 0x03, 0x3e, 0x92, 0xc0, 0x17, 0x2f, 0x91,
- 0x17, 0xa3, 0x2e, 0x96, 0xc4, 0x05, 0xe1, 0x4a, 0xfa, 0x18, 0x62, 0x6f,
- 0xf7, 0xda, 0xb6, 0x14, 0xe1, 0xb7, 0x00, 0x37, 0xb9, 0x4e, 0x3f, 0x7e,
- 0x1c, 0x56, 0xd9, 0x16, 0xdd, 0x77, 0xd5, 0x56, 0x55, 0x4d, 0x01, 0xa4,
- 0x82, 0xf0, 0x76, 0x4f, 0x09, 0xdf, 0x4a, 0xe9, 0xcb, 0xf9, 0x65, 0x7e,
- 0xc5, 0x51, 0xa2, 0xf8, 0xd9, 0x05, 0x1b, 0xe5, 0xf0, 0xa2, 0xe4, 0x06,
- 0x0e, 0x9e, 0xf4, 0xfc, 0x12, 0xa8, 0xad, 0x1a, 0x2c, 0x27, 0x6c, 0x53,
- 0xd1, 0x2e, 0xe2, 0x64, 0x2e, 0xf7, 0x32, 0xf2, 0x33, 0x35, 0xad, 0x64,
- 0x9a, 0xf9, 0xdc, 0x27, 0xbb, 0xf5, 0xb1, 0x1a, 0xbe, 0x51, 0x13, 0xf4,
- 0xdb, 0x1a, 0x4f, 0x99, 0xd7, 0x9c, 0xf7, 0xa6, 0x2f, 0x8b, 0xc5, 0xa1,
- 0x61, 0x4f, 0x12, 0x86, 0x29, 0x6a, 0x30, 0x67, 0x9a, 0xd8, 0x1b, 0x9d,
- 0x60, 0x9d, 0xc4, 0x00, 0xb8, 0xa4, 0x52, 0x38, 0x86, 0x68, 0xdf, 0x4e,
- 0x16, 0x01, 0x3d, 0x5f, 0x67, 0x79, 0xe9, 0x5d, 0x38, 0x95, 0xb3, 0x70,
- 0x78, 0xae, 0x14, 0x56, 0x52, 0x5e, 0xb5, 0x20, 0x1a, 0x71, 0x25, 0x05,
- 0x95, 0x03, 0xf8, 0x65, 0xa6, 0x52, 0x9a, 0x18, 0xc9, 0x95, 0x24, 0xbf,
- 0xb2, 0x4c, 0x22, 0x16, 0x12, 0x75, 0x83, 0xa2, 0xfc, 0x53, 0xd5, 0x99,
- 0xe9, 0x74, 0xcc, 0x98, 0x34, 0x7a, 0x88, 0x05, 0x95, 0x6c, 0x0c, 0x99,
- 0x22, 0x86, 0x66, 0xf6, 0x5c, 0x49, 0x76, 0xb6, 0x8b, 0x89, 0x78, 0xfb,
- 0x96, 0x58, 0xe4, 0x04, 0xf8, 0x56, 0xa2, 0xd0, 0x49, 0xb4, 0x04, 0xa4,
- 0x82, 0x62, 0x0a, 0x54, 0x45, 0x5f, 0x65, 0xb7, 0x29, 0xe3, 0x06, 0xb5,
- 0x25, 0x12, 0x19, 0xb2, 0x47, 0x3e, 0xac, 0x9a, 0x00, 0xbc, 0x95, 0x37,
- 0x7b, 0x57, 0x43, 0x8d, 0x4e, 0xca, 0xc2, 0xe0, 0xa4, 0xf6, 0x64, 0xdb,
- 0xbe, 0x01, 0xb1, 0x4f, 0xb2, 0x67, 0xee, 0xae, 0x48, 0x74, 0x68, 0x82,
- 0xbc, 0xc0, 0xe5, 0x5a, 0xa5, 0x2b, 0xe2, 0xd6, 0x9f, 0x38, 0x3a, 0x97,
- 0xbe, 0x05, 0x51, 0x5c, 0xa1, 0x5a, 0x79, 0x9e, 0x75, 0xe5, 0xf7, 0xbc,
- 0xdb, 0x32, 0x9e, 0x35, 0xfd, 0x7a, 0x1c, 0x80, 0xa3, 0x2e, 0xa0, 0x70,
- 0x3f, 0x9b, 0xcf, 0x29, 0xed, 0x44, 0x68, 0x79, 0x7a, 0xe7, 0x3a, 0x74,
- 0x53, 0xc9, 0x0c, 0x60, 0x6c, 0x66, 0xfd, 0x40, 0x77, 0x22, 0xb1, 0x94,
- 0x81, 0x46, 0x79, 0xc3, 0x76, 0x73, 0x82, 0x3d, 0xe9, 0xef, 0x26, 0xf0,
- 0x5c, 0x83, 0x09, 0xda, 0x4b, 0x7e, 0xfa, 0xa9, 0x9f, 0x30, 0xe8, 0xe5,
- 0x4f, 0xa4, 0x1d, 0xfc, 0xc4, 0xd6, 0xb8, 0x9f, 0x4a, 0x0d, 0x10, 0xf9,
- 0xe9, 0x96, 0xba, 0xdc, 0x5f, 0x95, 0x3b, 0x90, 0x04, 0xb5, 0xf7, 0xa4,
- 0xfa, 0xa0, 0x58, 0x0f, 0xb4, 0x98, 0x2a, 0x2b, 0x6f, 0x02, 0x8d, 0xe2,
- 0x30, 0x52, 0xbb, 0x8a, 0x85, 0xd0, 0xc6, 0x2c, 0x67, 0x73, 0xc9, 0x70,
- 0x51, 0x4e, 0x03, 0x3e, 0x00, 0x66, 0xd1, 0xfb, 0x5d, 0xcf, 0xef, 0x4d,
- 0x50, 0x9c, 0x55, 0x75, 0x61, 0x7e, 0x30, 0xb2, 0x87, 0x08, 0x23, 0xa8,
- 0x11, 0x79, 0x2c, 0xf0, 0x9b, 0x38, 0xdc, 0xd0, 0x01, 0x4e, 0xd8, 0x20,
- 0x76, 0x87, 0x32, 0xca, 0x08, 0xeb, 0x95, 0x0d, 0x66, 0x5b, 0xde, 0xe2,
- 0xfa, 0x1e, 0x42, 0x58, 0x24, 0x00, 0xcf, 0x9d, 0x41, 0x3f, 0xe0, 0x83,
- 0x31, 0x67, 0xf7, 0xa8, 0xb9, 0x5e, 0x92, 0x60, 0x9f, 0x69, 0xc8, 0x73,
- 0x69, 0x2c, 0xbd, 0x41, 0x2f, 0xb0, 0x59, 0x1b, 0x2c, 0x58, 0x67, 0xdd,
- 0x6e, 0x9f, 0xa4, 0x25, 0x75, 0xbb, 0x3b, 0x33, 0x4c, 0xcc, 0xc9, 0x2a,
- 0xa9, 0x92, 0x52, 0x00, 0xc6, 0x63, 0xf8, 0xa6, 0xf0, 0xed, 0xc4, 0xc3,
- 0xef, 0x77, 0x58, 0xd2, 0xad, 0xb6, 0x88, 0xbd, 0x9b, 0xd7, 0xc1, 0x55,
- 0x3b, 0x60, 0x7f, 0x9a, 0x2f, 0xd4, 0x02, 0xe2, 0x60, 0xd3, 0x24, 0xee,
- 0xd4, 0x8a, 0x93, 0xd0, 0xef, 0x3b, 0xb8, 0xb4, 0xcf, 0x36, 0xe5, 0x61,
- 0xa0, 0x94, 0x1f, 0x17, 0x13, 0xb8, 0x9b, 0x0b, 0x97, 0x4d, 0xce, 0x8b,
- 0xbe, 0x14, 0x6d, 0x33, 0xed, 0x23, 0xc8, 0xde, 0xea, 0xf0, 0xba, 0x46,
- 0x8a, 0x08, 0x8f, 0xe9, 0x55, 0xb2, 0xbe, 0xf2, 0x1a, 0x5c, 0xef, 0x44,
- 0x6e, 0x31, 0xf9, 0x9f, 0x53, 0x80, 0x6f, 0x14, 0xda, 0x59, 0xe5, 0xe3,
- 0x0d, 0xbb, 0xce, 0xff, 0x6a, 0x57, 0xf8, 0xa6, 0xda, 0x5f, 0xc4, 0xf4,
- 0xb8, 0x02, 0x12, 0xd8, 0x96, 0x56, 0x59, 0x27, 0x56, 0x07, 0x1a, 0x6b,
- 0x0e, 0x47, 0xcc, 0x25, 0xa7, 0xfd, 0x37, 0x23, 0x81, 0x56, 0x33, 0x5e,
- 0x36, 0xdb, 0x71, 0x8f, 0x6a, 0xed, 0xb4, 0xcc, 0x1e, 0x67, 0x24, 0x83,
- 0x59, 0x4b, 0xb3, 0x70, 0x58, 0x6a, 0x63, 0x58, 0xd2, 0x68, 0x61, 0x76,
- 0x36, 0x55, 0x6a, 0x2b, 0x73, 0xd1, 0x9b, 0x2f, 0x73, 0xb5, 0xe4, 0xaf,
- 0x5f, 0x17, 0x82, 0x95, 0xb6, 0xbe, 0x97, 0x1c, 0xd5, 0xe6, 0xa0, 0xd3,
- 0x39, 0xba, 0x10, 0x93, 0x76, 0xa4, 0x1a, 0x83, 0xd1, 0x7d, 0x73, 0xf2,
- 0xf6, 0xd0, 0xc5, 0x15, 0x8b, 0x96, 0xcf, 0x9f, 0x74, 0xe2, 0x65, 0x0e,
- 0x11, 0x14, 0x62, 0x09, 0xe4, 0xfd, 0xb8, 0x4e, 0x1f, 0x56, 0x87, 0x94,
- 0xf9, 0xc5, 0xdd, 0x32, 0x9f, 0x6c, 0x20, 0xc9, 0xff, 0xfd, 0x3c, 0xff,
- 0x38, 0x10, 0x33, 0x06, 0xb0, 0x64, 0x2b, 0xcb, 0x72, 0xb7, 0x04, 0x79,
- 0x51, 0xf5, 0x8b, 0x59, 0x07, 0xe0, 0x95, 0x55, 0x6d, 0x0c, 0x01, 0x5f,
- 0x91, 0x0b, 0x93, 0xcf, 0xc5, 0x25, 0x25, 0x4d, 0x6e, 0x32, 0x03, 0x20,
- 0x16, 0x0a, 0xb0, 0x3a, 0xec, 0x7b, 0x47, 0x8c, 0x74, 0xb0, 0xdf, 0xdc,
- 0xdc, 0xfe, 0xe9, 0xe9, 0xeb, 0xfd, 0x8b, 0x7d, 0x37, 0x37, 0x41, 0x22,
- 0x62, 0xa6, 0x02, 0xdd, 0x94, 0x05, 0x37, 0xc5, 0xbc, 0xe9, 0xfd, 0x9e,
- 0x13, 0x68, 0xda, 0x77, 0xfd, 0xe9, 0xd9, 0x09, 0x5b, 0x18, 0x7e, 0xff,
- 0xd3, 0x7e, 0x80, 0x2c, 0xc1, 0x25, 0xa3, 0xe3, 0xa8, 0xe5, 0xdd, 0xcd,
- 0x84, 0xc7, 0x67, 0x68, 0x7a, 0x7d, 0x17, 0x69, 0x21, 0x09, 0xf5, 0xc9,
- 0x07, 0xde, 0xd3, 0x72, 0xec, 0x84, 0x27, 0x31, 0xde, 0xc9, 0x76, 0xf6,
- 0xe3, 0x88, 0xcb, 0x60, 0x22, 0x85, 0x67, 0x62, 0x86, 0x95, 0x67, 0x6b,
- 0x35, 0x25, 0x89, 0x9f, 0x84, 0xd6, 0x1a, 0xac, 0x83, 0x8d, 0x6d, 0x4c,
- 0x5f, 0x13, 0x5e, 0xa8, 0x36, 0x22, 0xac, 0xdb, 0x1f, 0xdb, 0x20, 0x01,
- 0x30, 0x00, 0xc3, 0x15, 0x16, 0x20, 0x11, 0xb5, 0x85, 0x54, 0xd6, 0x1c,
- 0xda, 0x68, 0x55, 0x9d, 0x8a, 0xce, 0x8e, 0x78, 0x84, 0x88, 0xce, 0x6d,
- 0x0e, 0xc3, 0xd8, 0x74, 0x3f, 0x18, 0x0c, 0xcc, 0xb0, 0x2f, 0xd3, 0xa6,
- 0x0f, 0xa2, 0x87, 0x6a, 0xab, 0x1f, 0x68, 0x7c, 0xbe, 0x9b, 0x4d, 0x84,
- 0xfc, 0xa1, 0x2d, 0xcb, 0x2b, 0xe6, 0x84, 0x3e, 0x85, 0xca, 0xea, 0x48,
- 0x05, 0x8d, 0xcd, 0x8d, 0xe6, 0x10, 0xa1, 0x47, 0xab, 0x25, 0x1b, 0x6c,
- 0xf8, 0xaf, 0xad, 0x9d, 0xe1, 0xf6, 0x7a, 0x3c, 0x7a, 0x84, 0x63, 0xc2,
- 0x28, 0x66, 0x28, 0xf9, 0x52, 0xf8, 0xa0, 0x78, 0x7c, 0x80, 0xc2, 0xc0,
- 0x48, 0x22, 0x5d, 0x50, 0x07, 0x9d, 0x63, 0x19, 0x9c, 0x44, 0xc6, 0x4b,
- 0x71, 0xcc, 0x78, 0x8e, 0x38, 0x2f, 0x90, 0x69, 0x9d, 0xb2, 0x36, 0x04,
- 0x43, 0xcc, 0x7a, 0xf7, 0x02, 0xcf, 0x27, 0xe2, 0x59, 0x6e, 0xad, 0xf3,
- 0xaf, 0x4a, 0xed, 0x73, 0xfb, 0x1f, 0x00, 0x7d, 0xae, 0xe4, 0x76, 0x0d,
- 0xcb, 0xfb, 0x4d, 0x46, 0x82, 0xe0, 0x14, 0x99, 0x6c, 0x6c, 0x47, 0x7b,
- 0x49, 0xba, 0x54, 0x31, 0x9f, 0xc4, 0x45, 0x6f, 0x1a, 0xbe, 0x80, 0x8a,
- 0x63, 0x12, 0x85, 0x35, 0xe0, 0xad, 0x24, 0x8c, 0xd1, 0xf7, 0x18, 0xde,
- 0x65, 0xc6, 0x51, 0xb5, 0x49, 0x3e, 0x89, 0xf2, 0xfa, 0x5b, 0x80, 0x54,
- 0x6e, 0x10, 0xac, 0x7c, 0x8f, 0x32, 0x27, 0xf2, 0x4b, 0xeb, 0x26, 0x1c,
- 0x02, 0xa6, 0x8b, 0x54, 0xf3, 0x65, 0x24, 0x2f, 0xb4, 0xdf, 0x1f, 0x32,
- 0x97, 0x6d, 0xc0, 0xb6, 0x88, 0x51, 0x87, 0x9f, 0x28, 0x9c, 0xc9, 0x0f,
- 0x15, 0xa9, 0x71, 0xa6, 0x22, 0x23, 0xe6, 0xa5, 0xe0, 0xf1, 0xca, 0x14,
- 0x2f, 0x0e, 0x4e, 0x3f, 0x7c, 0x7b, 0x78, 0x78, 0x7a, 0xf4, 0xfa, 0xf8,
- 0x50, 0xef, 0x19, 0xf7, 0xd1, 0xbb, 0x8b, 0xef, 0x8e, 0x0d, 0xa2, 0xd7,
- 0xd6, 0x27, 0x32, 0x83, 0x71, 0xd4, 0x17, 0x9a, 0x3b, 0xce, 0xe7, 0xcb,
- 0x8f, 0x7d, 0x00, 0x0c, 0x11, 0x31, 0xef, 0x1f, 0xfd, 0xd0, 0x4f, 0xbe,
- 0x39, 0x1d, 0xbc, 0xff, 0x21, 0x82, 0x0e, 0x69, 0xc4, 0x59, 0xb7, 0x05,
- 0x4b, 0x17, 0x75, 0x8d, 0x42, 0x6a, 0x7e, 0xee, 0xa6, 0xff, 0x76, 0xd4,
- 0x16, 0xff, 0x47, 0x9b, 0x02, 0xa3, 0xe6, 0x96, 0xf3, 0xa0, 0x6a, 0x43,
- 0x20, 0xc5, 0xeb, 0xd5, 0x0b, 0x72, 0x78, 0xbe, 0x9d, 0x28, 0x75, 0x35,
- 0x09, 0xf0, 0x3e, 0x79, 0x49, 0xff, 0x74, 0x61, 0xe9, 0x6d, 0x9d, 0x9f,
- 0x7f, 0xb3, 0x99, 0x9c, 0x06, 0xd5, 0x17, 0x9c, 0xad, 0x65, 0x68, 0x31,
- 0x96, 0x6c, 0xa6, 0xa1, 0xc6, 0x03, 0xab, 0x4d, 0xc9, 0x70, 0xd9, 0xb1,
- 0x9f, 0x5c, 0x5b, 0xb0, 0x3b, 0xdc, 0x94, 0x3f, 0x91, 0x2c, 0x91, 0xb0,
- 0x45, 0xbd, 0x81, 0xfd, 0x37, 0x81, 0x84, 0x45, 0x60, 0x6c, 0x4b, 0x46,
- 0xb8, 0xe3, 0x93, 0x30, 0x3f, 0x0d, 0x3b, 0x4c, 0x47, 0x74, 0x92, 0x4f,
- 0x24, 0xcd, 0x87, 0x35, 0x06, 0x91, 0x14, 0x92, 0xa4, 0xf7, 0x5f, 0x5b,
- 0xc3, 0xaa, 0xba, 0xde, 0xca, 0x27, 0x1f, 0xca, 0x2a, 0xed, 0xb5, 0x2f,
- 0xe7, 0xe0, 0xeb, 0x09, 0x7f, 0x9d, 0xf4, 0x86, 0xee, 0x51, 0xfd, 0x9d,
- 0x3f, 0xff, 0x2d, 0xc1, 0xc9, 0x68, 0x6d, 0x1e, 0x05, 0x77, 0x8e, 0x76,
- 0x82, 0x1f, 0x1d, 0x3a, 0x31, 0x5c, 0x5d, 0x07, 0xdc, 0x08, 0xb6, 0x41,
- 0x36, 0x97, 0xb7, 0x26, 0xda, 0x0d, 0x60, 0xda, 0x25, 0x2d, 0x50, 0x7b,
- 0x3a, 0xb7, 0xaf, 0x0f, 0xcf, 0xfa, 0x82, 0xf9, 0x1c, 0xe2, 0x3d, 0x7b,
- 0x74, 0x36, 0xc5, 0x79, 0x5e, 0xa5, 0x9e, 0xf6, 0xff, 0x89, 0x38, 0xcf,
- 0x37, 0xe5, 0x28, 0x79, 0x39, 0xa5, 0x17, 0xa7, 0xdd, 0x39, 0xbf, 0x52,
- 0x84, 0xd7, 0x57, 0x12, 0x6e, 0xc1, 0xe1, 0x28, 0x7e, 0xb0, 0x48, 0xa8,
- 0x68, 0x46, 0xf4, 0xd2, 0x2e, 0xc5, 0xb4, 0x86, 0x4d, 0x8c, 0xdf, 0x88,
- 0x12, 0x24, 0x7b, 0x08, 0x46, 0x66, 0x2a, 0x61, 0xcc, 0x1f, 0xfe, 0x09,
- 0xbe, 0xaf, 0x15, 0x98, 0x7b, 0xfd, 0x58, 0xf9, 0xee, 0xe9, 0xaa, 0xf7,
- 0x68, 0xe3, 0xa4, 0x35, 0x3e, 0x42, 0x02, 0xd1, 0x2c, 0xe3, 0xd0, 0x4a,
- 0x0f, 0x95, 0x6a, 0x1b, 0x61, 0x2c, 0x52, 0x15, 0x81, 0x6d, 0xb9, 0xe6,
- 0xda, 0xf1, 0x6f, 0xdd, 0xc6, 0xb8, 0x55, 0xb5, 0xa5, 0x52, 0x87, 0xcb,
- 0x1b, 0xd6, 0x94, 0xb2, 0x82, 0xd1, 0x4f, 0x8d, 0x04, 0x86, 0x2b, 0x00,
- 0xba, 0x78, 0xa0, 0xc8, 0xa9, 0x64, 0x61, 0x84, 0x5d, 0xf1, 0x1c, 0x50,
- 0x3b, 0xf8, 0x8e, 0xd5, 0x40, 0xf3, 0xb2, 0x09, 0x58, 0x3a, 0xea, 0xd4,
- 0x80, 0x3a, 0xbb, 0x8e, 0xb5, 0xab, 0x4e, 0x95, 0xd7, 0xbf, 0x21, 0xe9,
- 0x4c, 0x51, 0xcc, 0x29, 0xaf, 0xea, 0x01, 0xbb, 0xad, 0xba, 0x23, 0xd1,
- 0xa1, 0x34, 0x69, 0x1e, 0x89, 0xf9, 0xcd, 0x82, 0x6a, 0x0a, 0xc2, 0xc2,
- 0xa4, 0x64, 0x25, 0xa2, 0xed, 0x2a, 0x05, 0x15, 0x19, 0x74, 0x55, 0xcb,
- 0xba, 0xcd, 0xb3, 0x3b, 0xef, 0xd9, 0x6d, 0xe0, 0x36, 0xa9, 0x2f, 0x17,
- 0xcb, 0x02, 0x66, 0x26, 0x75, 0x93, 0xb9, 0xb8, 0x43, 0x17, 0xa4, 0xd6,
- 0x2c, 0x1d, 0x5f, 0x93, 0xf8, 0x38, 0x40, 0xcc, 0x6e, 0xd2, 0x44, 0xb4,
- 0x61, 0x63, 0x42, 0x6b, 0xa0, 0x9c, 0x62, 0xa9, 0x91, 0x80, 0x9d, 0x25,
- 0x9c, 0xfd, 0x83, 0x3c, 0x44, 0x17, 0x77, 0x28, 0xc4, 0xe8, 0x12, 0xa7,
- 0xa1, 0xa4, 0x16, 0xa5, 0x83, 0x1d, 0x97, 0x6c, 0x77, 0x5e, 0xd4, 0x0e,
- 0xc7, 0x59, 0xa2, 0xb0, 0xe2, 0x0d, 0x8b, 0x96, 0xc2, 0x35, 0xa5, 0xc9,
- 0xbb, 0xe3, 0x73, 0x9f, 0x33, 0x54, 0x6b, 0x8d, 0x2e, 0xa9, 0x63, 0xb1,
- 0xca, 0xf1, 0x11, 0x06, 0xca, 0x1d, 0x1f, 0x9d, 0x5f, 0x74, 0x9a, 0x04,
- 0xf6, 0x48, 0xad, 0x9e, 0x65, 0x01, 0x4e, 0x42, 0xa5, 0xb5, 0xdf, 0x10,
- 0x96, 0x29, 0x9e, 0x6c, 0xb3, 0x00, 0xb2, 0xe6, 0xe4, 0x32, 0xc6, 0xe2,
- 0x25, 0xe6, 0x21, 0xfe, 0x49, 0xec, 0xa8, 0x1a, 0x8a, 0x64, 0x21, 0x8e,
- 0xd5, 0x72, 0x34, 0x08, 0x92, 0xb9, 0x85, 0x21, 0x00, 0x11, 0x29, 0x1f,
- 0xb3, 0x72, 0x7f, 0x13, 0xc7, 0x70, 0x6c, 0x9c, 0x9e, 0x9c, 0x3e, 0x31,
- 0x72, 0xb2, 0xcc, 0xfb, 0x86, 0x9b, 0x73, 0x9c, 0xb0, 0x94, 0xa6, 0x20,
- 0x64, 0xfc, 0x74, 0x83, 0xb8, 0xba, 0x0a, 0xe8, 0xf2, 0x3a, 0xf2, 0x42,
- 0xb4, 0xd6, 0x51, 0x1d, 0x15, 0xcd, 0xc8, 0x42, 0x4e, 0x03, 0x0e, 0x72,
- 0x98, 0x3b, 0xf0, 0x53, 0x2c, 0xc6, 0xc0, 0x91, 0xa2, 0xa6, 0x31, 0x80,
- 0x0e, 0x85, 0x0c, 0xfd, 0xc9, 0x0d, 0x46, 0x4d, 0xa7, 0x2d, 0xca, 0xdf,
- 0x21, 0xa9, 0x9d, 0xa4, 0x4d, 0x49, 0xc5, 0xaf, 0x9a, 0xb9, 0xf8, 0x92,
- 0x51, 0x82, 0x0a, 0x74, 0xec, 0x4a, 0x06, 0x40, 0xf0, 0x8a, 0x9d, 0x14,
- 0x7b, 0x45, 0x23, 0x5c, 0x66, 0xf0, 0x83, 0x38, 0xcd, 0x24, 0xb6, 0xd4,
- 0x83, 0x3d, 0xf4, 0x9b, 0xa1, 0x48, 0x1d, 0xa5, 0x95, 0x82, 0xc2, 0xb8,
- 0x92, 0xb6, 0x46, 0x3a, 0x37, 0x09, 0x92, 0x6e, 0xed, 0x74, 0xad, 0xd4,
- 0x13, 0xa5, 0xd3, 0x66, 0x37, 0x14, 0xfd, 0xd2, 0x61, 0x9e, 0xc2, 0x5e,
- 0xf5, 0x88, 0xf5, 0xcc, 0x73, 0x1a, 0x8b, 0x02, 0xd5, 0x5e, 0x72, 0xe8,
- 0xa5, 0x7a, 0xa9, 0x04, 0xb5, 0x39, 0xaf, 0x7b, 0x00, 0x86, 0x03, 0x3c,
- 0x62, 0xc2, 0x6b, 0xd2, 0x75, 0x94, 0x6f, 0xb2, 0x30, 0x64, 0xb6, 0x29,
- 0x37, 0xee, 0xee, 0x34, 0xe0, 0x15, 0x1a, 0xf5, 0xe7, 0x3a, 0x23, 0x12,
- 0x50, 0xa1, 0x6c, 0x33, 0x71, 0xc6, 0x64, 0x5d, 0x76, 0x89, 0xfc, 0x08,
- 0xe0, 0x3a, 0xb5, 0x37, 0x24, 0x64, 0x5c, 0x71, 0x86, 0x44, 0x9b, 0x28,
- 0x24, 0x93, 0x04, 0x50, 0xc6, 0x06, 0xf0, 0x55, 0x27, 0xae, 0xf4, 0xdd,
- 0x86, 0x62, 0xf5, 0xfa, 0x88, 0xc6, 0x76, 0xf9, 0xb9, 0x2e, 0xe4, 0x11,
- 0xba, 0x5d, 0x9e, 0xfc, 0xf0, 0x43, 0xd2, 0x84, 0xb5, 0xdb, 0x5c, 0x15,
- 0x14, 0x0f, 0x05, 0x9d, 0x6e, 0xdc, 0x2e, 0x9e, 0x60, 0x34, 0xa0, 0xc4,
- 0xc5, 0xde, 0x61, 0x28, 0xef, 0x90, 0x4c, 0x74, 0xa7, 0xaf, 0x32, 0x6c,
- 0x85, 0x50, 0x4e, 0x18, 0x9d, 0x12, 0x5f, 0xc6, 0x3e, 0xcc, 0xa3, 0xef,
- 0x82, 0xba, 0xc4, 0x1b, 0x8e, 0xa8, 0x99, 0x70, 0xa9, 0x2a, 0x77, 0x9d,
- 0x90, 0x10, 0x70, 0x37, 0x1f, 0x76, 0x55, 0x0c, 0x8c, 0x21, 0xf7, 0x24,
- 0xf8, 0x1f, 0x33, 0x92, 0xc2, 0x89, 0xc0, 0x61, 0x65, 0x8b, 0xe0, 0x98,
- 0x66, 0x28, 0x52, 0x82, 0xaf, 0x7c, 0x1e, 0xc5, 0x35, 0x88, 0x07, 0x02,
- 0x01, 0x0c, 0x52, 0x64, 0x23, 0x75, 0x01, 0x63, 0x49, 0x0d, 0x2f, 0x9e,
- 0x39, 0x2a, 0xc3, 0xdd, 0x92, 0x88, 0xb5, 0xb8, 0xc4, 0x0f, 0xca, 0xfa,
- 0x05, 0x16, 0x53, 0xc4, 0x32, 0x68, 0x3a, 0x8f, 0x90, 0xfe, 0x1f, 0x0d,
- 0x23, 0x46, 0xd2, 0xf4, 0x14, 0xb2, 0x4a, 0x48, 0x2f, 0x86, 0x77, 0x2d,
- 0xe6, 0x83, 0xba, 0x5c, 0x62, 0x85, 0x78, 0x43, 0x18, 0x1f, 0x81, 0x1d,
- 0x00, 0x06, 0xe6, 0xc4, 0x02, 0xa5, 0xc5, 0x6d, 0xa0, 0x26, 0x95, 0x84,
- 0xa4, 0xcf, 0x80, 0x5a, 0x13, 0xf9, 0xa5, 0x7d, 0x30, 0xa0, 0x24, 0x1b,
- 0x72, 0x72, 0x61, 0xc3, 0xf3, 0x39, 0x18, 0xcc, 0xd2, 0x8f, 0x03, 0x3c,
- 0x56, 0x45, 0xe5, 0x51, 0x22, 0x5b, 0xa7, 0xb4, 0x50, 0x85, 0x0b, 0x66,
- 0x5a, 0xad, 0xcb, 0x79, 0xd0, 0x40, 0x55, 0xa6, 0x20, 0xbe, 0x1b, 0xbe,
- 0x3e, 0xbc, 0x68, 0x1f, 0x2d, 0x20, 0x50, 0xa8, 0x89, 0x00, 0x99, 0x06,
- 0xf4, 0xf7, 0xe9, 0xfb, 0x8b, 0x4d, 0x5f, 0x1a, 0x4f, 0xa8, 0xb4, 0x11,
- 0xd0, 0xa7, 0x11, 0xf0, 0x31, 0xbe, 0xa6, 0x44, 0xf7, 0x2b, 0x83, 0x05,
- 0x86, 0xa6, 0x3b, 0x10, 0x5c, 0xcc, 0xf3, 0xc9, 0xf6, 0x4e, 0x9f, 0xfe,
- 0xd9, 0x85, 0xb5, 0xed, 0xc9, 0xf6, 0x13, 0xe7, 0x41, 0xb0, 0xa7, 0x22,
- 0x27, 0x02, 0x87, 0x54, 0xa1, 0x32, 0x6c, 0xe0, 0x88, 0x48, 0x9e, 0x7c,
- 0xfc, 0x88, 0xaf, 0x9a, 0xd1, 0x70, 0x03, 0x17, 0xd7, 0xbc, 0xca, 0x63,
- 0x62, 0x03, 0xf7, 0x2b, 0x0e, 0xb3, 0xd9, 0x72, 0x2e, 0xe1, 0x3e, 0xc0,
- 0x7b, 0xe5, 0x0c, 0x82, 0xe1, 0x2a, 0x54, 0xaf, 0xba, 0x9d, 0xd4, 0x1d,
- 0xc2, 0x7a, 0x11, 0xad, 0xf0, 0xe4, 0x5d, 0x2f, 0x96, 0x8e, 0x10, 0x33,
- 0x46, 0x3c, 0x26, 0x01, 0xa2, 0x60, 0x1c, 0xdb, 0x1f, 0xc3, 0xfb, 0xba,
- 0x41, 0x12, 0xc4, 0x2e, 0x95, 0x19, 0xa9, 0xea, 0xbf, 0x02, 0xd6, 0x6f,
- 0x8f, 0x63, 0x70, 0xe9, 0x50, 0x60, 0x85, 0xed, 0xd7, 0x5d, 0x89, 0xef,
- 0x95, 0x3f, 0x9e, 0x84, 0xaa, 0x85, 0x95, 0x58, 0xed, 0x2c, 0x2f, 0xb4,
- 0x2f, 0x45, 0x3f, 0x43, 0xd6, 0xc5, 0xc7, 0x8f, 0x8b, 0x2e, 0x72, 0xa6,
- 0x10, 0x4b, 0xd0, 0x9a, 0x6a, 0xae, 0xa5, 0xe7, 0xd5, 0xdb, 0x89, 0xdf,
- 0x3b, 0xca, 0x78, 0x21, 0x9a, 0x06, 0x28, 0x88, 0x56, 0xda, 0x75, 0x20,
- 0x13, 0x3c, 0x48, 0xd4, 0x3d, 0x8e, 0x7d, 0x36, 0x77, 0xae, 0x46, 0xb5,
- 0x8a, 0xfa, 0xd7, 0x8d, 0x8c, 0x63, 0x4e, 0x53, 0xd2, 0x0b, 0xa6, 0x82,
- 0xe4, 0xe4, 0xe2, 0xf0, 0x4b, 0x1b, 0x96, 0xc4, 0x6f, 0xfb, 0xe0, 0x2b,
- 0x7e, 0xef, 0x5f, 0xfe, 0x9b, 0x22, 0xb7, 0x3a, 0x5a, 0xc5, 0x1f, 0xd0,
- 0x11, 0x17, 0xd3, 0x10, 0xc7, 0x1f, 0x4c, 0xe7, 0x05, 0xb7, 0x18, 0xc0,
- 0x3c, 0xf0, 0x92, 0x24, 0x8e, 0x6c, 0xb2, 0xd2, 0x59, 0x0f, 0x29, 0x93,
- 0xf8, 0x42, 0x3e, 0x5b, 0xce, 0x7c, 0x02, 0x27, 0x57, 0x63, 0xaa, 0x33,
- 0x5f, 0x6d, 0x3e, 0x2c, 0xa7, 0x31, 0xe8, 0xa0, 0x11, 0xe0, 0x0d, 0xfa,
- 0xc4, 0x70, 0xe8, 0x86, 0x00, 0x9c, 0x33, 0x48, 0x13, 0x0d, 0xde, 0xd3,
- 0x25, 0x50, 0x31, 0x89, 0x9b, 0x47, 0xec, 0x52, 0x1a, 0xc9, 0xc1, 0x5c,
- 0x80, 0x4f, 0xf1, 0x05, 0x53, 0x41, 0x87, 0xec, 0x4d, 0x44, 0x3c, 0xc6,
- 0x26, 0xb8, 0x71, 0xf2, 0x29, 0xd1, 0x71, 0x49, 0x16, 0x09, 0x5d, 0x08,
- 0x51, 0xbc, 0xca, 0x88, 0x9a, 0xb8, 0xcb, 0x27, 0xf5, 0x35, 0x90, 0x3d,
- 0x71, 0x45, 0x32, 0xf0, 0x0c, 0xc7, 0x4a, 0xab, 0xc0, 0x91, 0xc7, 0xf9,
- 0x59, 0xa3, 0xee, 0xaa, 0x35, 0xb2, 0x47, 0x58, 0xd3, 0x44, 0xd0, 0x70,
- 0x38, 0x39, 0x00, 0xdb, 0x80, 0xb8, 0xce, 0x2d, 0x31, 0x11, 0x39, 0xbc,
- 0x07, 0x92, 0xf8, 0x96, 0x97, 0x0c, 0x11, 0x1a, 0x4b, 0x8f, 0x96, 0x51,
- 0x35, 0x74, 0x87, 0x02, 0x26, 0x98, 0xde, 0x8d, 0xa4, 0x32, 0x7e, 0xab,
- 0x1a, 0xa9, 0x80, 0x94, 0x81, 0x07, 0x48, 0x3e, 0x0f, 0xf1, 0xab, 0x9b,
- 0x7c, 0x1a, 0xd9, 0x24, 0xd0, 0x3d, 0xe9, 0xcf, 0x33, 0xbc, 0xfe, 0xb6,
- 0xa7, 0x51, 0x2a, 0x0c, 0xa1, 0x97, 0x69, 0xd0, 0x69, 0x5f, 0x21, 0x3f,
- 0x7b, 0x57, 0xd2, 0xc5, 0xd7, 0x3d, 0x17, 0xcb, 0x12, 0x5d, 0x76, 0x3e,
- 0x52, 0xd5, 0x6c, 0xe9, 0xd5, 0x5e, 0xb2, 0xbb, 0xbd, 0xfd, 0x2d, 0xb1,
- 0xd8, 0x19, 0x36, 0x65, 0xe7, 0xeb, 0xee, 0xba, 0x3e, 0x4a, 0xc6, 0xa5,
- 0x94, 0x26, 0x90, 0xd3, 0x94, 0xde, 0xc2, 0xe8, 0xad, 0x0b, 0x87, 0x29,
- 0x71, 0x74, 0x98, 0x87, 0xeb, 0xee, 0xdc, 0x38, 0x97, 0x9e, 0xcc, 0xf6,
- 0xd0, 0x36, 0x1a, 0xc7, 0x0c, 0xb9, 0x2a, 0xbc, 0xf3, 0xd7, 0xf4, 0x5b,
- 0x16, 0x10, 0x05, 0x3a, 0xe9, 0xc0, 0xba, 0x20, 0xb9, 0x83, 0xf1, 0x0e,
- 0x97, 0x25, 0x97, 0x31, 0x47, 0x24, 0x28, 0xe0, 0xc2, 0x60, 0xa4, 0x35,
- 0xf7, 0xd2, 0xbc, 0x10, 0x00, 0x1a, 0x17, 0xc6, 0x2e, 0xb3, 0xe1, 0xc9,
- 0x74, 0x25, 0xd8, 0x31, 0x09, 0xcb, 0x25, 0x6f, 0xc1, 0xd2, 0x83, 0x3f,
- 0x33, 0x87, 0xc4, 0x10, 0xe4, 0x18, 0x3a, 0x07, 0xa8, 0xa4, 0x01, 0x7a,
- 0x61, 0xad, 0x3d, 0x59, 0xa6, 0x4b, 0xad, 0x37, 0xc1, 0x4a, 0x27, 0x6c,
- 0xaa, 0x98, 0x23, 0x63, 0x50, 0xc3, 0x54, 0xce, 0x57, 0x19, 0x03, 0x84,
- 0xa1, 0x5d, 0xd8, 0x7f, 0xa7, 0xfc, 0xc0, 0x94, 0x15, 0xea, 0x22, 0x4a,
- 0x99, 0x9a, 0x2e, 0x60, 0x58, 0x76, 0x97, 0x51, 0x30, 0x24, 0x4e, 0x04,
- 0x1f, 0xa3, 0x92, 0x0f, 0xa7, 0x14, 0xfd, 0x86, 0x46, 0x26, 0x20, 0x21,
- 0x0a, 0xe0, 0xca, 0x4b, 0x22, 0xdf, 0x2f, 0x7e, 0xe4, 0xc2, 0xde, 0x3f,
- 0x77, 0x94, 0x30, 0x4f, 0x35, 0xa7, 0x8e, 0xcf, 0x92, 0xe5, 0xad, 0x95,
- 0xbe, 0xc0, 0x1e, 0xda, 0x91, 0xc4, 0x6f, 0x2b, 0x24, 0xee, 0x4b, 0x13,
- 0x76, 0x86, 0x04, 0x9b, 0x39, 0x7f, 0xa3, 0xda, 0x1c, 0x86, 0xc0, 0x8a,
- 0x0a, 0x62, 0x6e, 0xad, 0xc0, 0x17, 0x3d, 0x17, 0xe6, 0x24, 0x59, 0x14,
- 0x6d, 0x66, 0xc4, 0xb1, 0x8f, 0xe3, 0xcc, 0x07, 0x5b, 0xa1, 0x15, 0x9b,
- 0xef, 0x68, 0x59, 0xdd, 0x33, 0x90, 0x94, 0x78, 0x31, 0x90, 0xe3, 0x60,
- 0x18, 0xd8, 0x8c, 0xc4, 0xcf, 0xc3, 0x8f, 0xc3, 0xd3, 0x18, 0xeb, 0x48,
- 0xa2, 0x91, 0xeb, 0x82, 0x2e, 0xfa, 0xb4, 0x2c, 0x49, 0x54, 0xd3, 0xad,
- 0xd6, 0x6c, 0x46, 0x1a, 0x3c, 0x2b, 0x3f, 0x30, 0x08, 0x39, 0xc7, 0x04,
- 0xb5, 0xbd, 0x5c, 0x74, 0xc4, 0x93, 0x71, 0x7e, 0x73, 0x04, 0x2e, 0xd7,
- 0x00, 0x0f, 0x30, 0xf5, 0xc3, 0xc4, 0xcd, 0x07, 0x35, 0xa0, 0x63, 0x58,
- 0x21, 0x5a, 0xc9, 0x21, 0x0a, 0xbb, 0x20, 0x15, 0x3b, 0x20, 0x5b, 0x9a,
- 0xf3, 0xa3, 0x3b, 0x5f, 0x3d, 0xf9, 0xa3, 0x87, 0x4b, 0x94, 0x82, 0x86,
- 0x3e, 0x3f, 0x44, 0x71, 0xbb, 0x38, 0x9e, 0x82, 0x35, 0x45, 0x2f, 0x90,
- 0x17, 0xc3, 0x2e, 0x90, 0x76, 0x7e, 0xa6, 0x10, 0xa5, 0x52, 0xac, 0x09,
- 0x75, 0x59, 0x4c, 0x96, 0x63, 0x98, 0x58, 0x38, 0x72, 0x2e, 0xaf, 0xef,
- 0x93, 0x91, 0xa0, 0xb7, 0x19, 0x84, 0x00, 0x37, 0xed, 0xe4, 0xe1, 0x56,
- 0x73, 0x6a, 0x70, 0x4f, 0xe5, 0x29, 0x87, 0x0a, 0x8c, 0x3b, 0x06, 0x28,
- 0xe1, 0x99, 0x0a, 0x1a, 0x65, 0xa4, 0x8f, 0xa0, 0xca, 0x62, 0x37, 0xaa,
- 0xba, 0x38, 0x41, 0x59, 0x21, 0xf8, 0x58, 0xbb, 0xd8, 0x09, 0x2e, 0x18,
- 0x4a, 0xc4, 0x0b, 0x49, 0xf5, 0x2b, 0x0e, 0xd7, 0x6d, 0x35, 0x18, 0x62,
- 0x85, 0xcf, 0xfa, 0x2a, 0xa0, 0x3f, 0xe8, 0xc7, 0x7a, 0xeb, 0x6e, 0x6a,
- 0xf8, 0xad, 0x72, 0x38, 0xb3, 0xf0, 0xa4, 0x2c, 0x2c, 0x52, 0xd2, 0xa6,
- 0x86, 0x2b, 0x72, 0x77, 0x5d, 0x4c, 0x43, 0x21, 0x25, 0x0e, 0x90, 0xe0,
- 0xa2, 0x01, 0xde, 0x0a, 0x19, 0x24, 0x46, 0x30, 0x60, 0x14, 0x0f, 0xd4,
- 0x4a, 0x96, 0x8d, 0x50, 0xef, 0xe5, 0x2f, 0xc5, 0x48, 0xf5, 0x3b, 0x2e,
- 0x3a, 0x70, 0xd5, 0x95, 0x6a, 0x28, 0xe1, 0x00, 0xd7, 0x5c, 0x16, 0x9e,
- 0xf8, 0xbb, 0x04, 0x96, 0xf0, 0x78, 0xe6, 0x59, 0xcd, 0xfc, 0x06, 0xf1,
- 0xe4, 0xb0, 0xf5, 0x24, 0x57, 0xc8, 0xd8, 0x45, 0x84, 0x30, 0x43, 0x25,
- 0x10, 0xcf, 0x6b, 0x35, 0xf7, 0xd9, 0xf0, 0xc9, 0x2e, 0x27, 0x82, 0x85,
- 0xcc, 0x28, 0x1d, 0xb3, 0xbe, 0x55, 0x25, 0x96, 0x27, 0x83, 0xfc, 0x41,
- 0xe5, 0xe6, 0xb5, 0x60, 0x73, 0x2c, 0x95, 0x47, 0x0d, 0x62, 0x77, 0xad,
- 0xaa, 0x1c, 0x19, 0x23, 0x0c, 0x56, 0xf0, 0x6e, 0x53, 0x7b, 0xcb, 0x32,
- 0x1d, 0xdf, 0x1b, 0xc8, 0xb2, 0x8f, 0x14, 0xe3, 0x26, 0xf8, 0x15, 0x1a,
- 0x18, 0x9e, 0x8e, 0x6a, 0x07, 0xcc, 0xdd, 0x20, 0x98, 0x6b, 0xe7, 0x00,
- 0x8b, 0x68, 0x67, 0xc4, 0x59, 0xa5, 0xaa, 0x81, 0xb5, 0xb6, 0x42, 0xef,
- 0xfa, 0x87, 0xb2, 0xdc, 0xab, 0x7c, 0x3e, 0x30, 0x79, 0xfe, 0xa5, 0xfe,
- 0xf2, 0xc5, 0x03, 0xa1, 0x47, 0x78, 0xc3, 0x69, 0x00, 0xca, 0x57, 0xf5,
- 0x6e, 0x36, 0xeb, 0x53, 0x83, 0x6e, 0x57, 0x6a, 0x30, 0x76, 0x09, 0x6a,
- 0x93, 0xae, 0x4d, 0xe8, 0xe7, 0x16, 0x23, 0x24, 0xb5, 0xde, 0xc7, 0xc5,
- 0xd4, 0x39, 0x3e, 0xc6, 0x9d, 0x91, 0xf2, 0x95, 0xc6, 0x29, 0x69, 0x25,
- 0x6b, 0x2c, 0x88, 0x8e, 0xaa, 0x35, 0x9c, 0x64, 0xbf, 0x06, 0xe2, 0x3d,
- 0x84, 0xf5, 0xd8, 0x24, 0x7d, 0xf4, 0x76, 0xff, 0xb4, 0x0f, 0xdb, 0xa0,
- 0x94, 0xb8, 0x78, 0xcb, 0x56, 0x4e, 0x05, 0xb8, 0x6e, 0xcc, 0x5d, 0xdc,
- 0x68, 0x02, 0x40, 0x17, 0x14, 0x54, 0x6d, 0xcb, 0x6d, 0x23, 0x17, 0xe2,
- 0xd8, 0x5a, 0x3a, 0xad, 0x11, 0xcc, 0xc6, 0x3e, 0xc6, 0x39, 0xdc, 0x7d,
- 0xf2, 0xf9, 0xd3, 0x3e, 0x7e, 0x7b, 0xb6, 0xfd, 0x42, 0xb4, 0xa5, 0xa3,
- 0xc3, 0x8b, 0x37, 0x6d, 0x8d, 0xa3, 0x24, 0x5d, 0x4d, 0xfe, 0x1d, 0x64,
- 0x69, 0x79, 0x9d, 0x96, 0x35, 0xc7, 0x4d, 0x0d, 0xaa, 0x59, 0xbd, 0x18,
- 0x6c, 0x6f, 0x0f, 0x6b, 0x62, 0x28, 0x21, 0x6f, 0x7f, 0xf2, 0x74, 0xb8,
- 0xbd, 0xf9, 0x5b, 0x12, 0x10, 0x9b, 0xe8, 0x06, 0xbc, 0xc2, 0xc9, 0x4b,
- 0xcd, 0x01, 0x89, 0xbd, 0x69, 0x6f, 0xd9, 0xc8, 0x7f, 0xee, 0x02, 0xc6,
- 0x14, 0x7d, 0x52, 0x1f, 0x0f, 0x72, 0x16, 0x7c, 0xc6, 0x5d, 0x48, 0x02,
- 0x1d, 0x17, 0x76, 0xc4, 0x6a, 0x1d, 0x28, 0xd8, 0x86, 0x55, 0xb3, 0x92,
- 0x52, 0xbf, 0xa9, 0xd6, 0x33, 0xa8, 0x7d, 0xfd, 0x94, 0xce, 0x54, 0xf6,
- 0x4a, 0x33, 0x16, 0xcb, 0x8c, 0x31, 0xa0, 0xe4, 0x12, 0xd2, 0x78, 0x0a,
- 0xcd, 0x99, 0x7f, 0x08, 0xff, 0x6f, 0xf7, 0x59, 0xb3, 0x34, 0x0d, 0xd6,
- 0x04, 0x8c, 0xef, 0x57, 0xae, 0x89, 0xbf, 0xf7, 0x44, 0xa0, 0x84, 0xcd,
- 0xda, 0x65, 0xf0, 0xc5, 0xc8, 0x17, 0x95, 0x81, 0xc3, 0x3f, 0x3c, 0xcc,
- 0xed, 0xf6, 0x30, 0x3f, 0xa2, 0xfa, 0x2d, 0x6c, 0xc4, 0x2f, 0x21, 0xbe,
- 0x7f, 0xa2, 0xe6, 0x87, 0x37, 0x36, 0x4c, 0x8b, 0xd9, 0xf4, 0x20, 0xf4,
- 0x82, 0x9e, 0x24, 0x9a, 0x1d, 0x1b, 0x54, 0x56, 0xc5, 0x1c, 0x7a, 0x63,
- 0x5f, 0xde, 0x4c, 0x7a, 0x03, 0x59, 0x82, 0x4d, 0xf7, 0x9b, 0x78, 0x3f,
- 0x5d, 0x42, 0x30, 0x5c, 0xd7, 0x28, 0xb5, 0x93, 0xce, 0x9b, 0xc8, 0x71,
- 0xa8, 0x24, 0x02, 0x93, 0x64, 0xf6, 0x11, 0xe1, 0x7f, 0xa4, 0xd3, 0x3f,
- 0x7f, 0x12, 0x9b, 0xc0, 0x4f, 0x2e, 0x0e, 0xf7, 0x54, 0x11, 0xf1, 0x99,
- 0x57, 0x66, 0xa9, 0x92, 0x80, 0x3d, 0x4e, 0xbe, 0x67, 0x98, 0x1a, 0xc6,
- 0xb2, 0x0d, 0x66, 0xd7, 0xef, 0x00, 0xf0, 0x43, 0x8e, 0x20, 0x17, 0x18,
- 0x14, 0x17, 0x48, 0x1d, 0x05, 0x37, 0x58, 0x38, 0x03, 0xb2, 0x72, 0xf3,
- 0xcb, 0xc0, 0xb6, 0xd0, 0x55, 0x40, 0x07, 0xd3, 0x96, 0x1a, 0x5e, 0x8c,
- 0xa7, 0x26, 0x14, 0x1a, 0x2d, 0x96, 0x50, 0x08, 0x24, 0x75, 0xcb, 0xc9,
- 0x2d, 0xe8, 0x76, 0x2c, 0xa3, 0xc8, 0x0c, 0xa8, 0xdd, 0xec, 0xb3, 0x41,
- 0xf6, 0xdb, 0x85, 0xa1, 0x88, 0x5d, 0xb6, 0xb2, 0x53, 0x41, 0xbc, 0xe5,
- 0x78, 0x51, 0xff, 0x5a, 0xe2, 0xed, 0x7b, 0x5c, 0x6c, 0x91, 0xc4, 0x24,
- 0x4c, 0x0f, 0x1e, 0x22, 0x29, 0x5f, 0xde, 0x61, 0x45, 0x6c, 0xd4, 0x29,
- 0x02, 0xb9, 0xdb, 0xe0, 0x2c, 0x24, 0x77, 0x9c, 0x2f, 0xf2, 0x00, 0x35,
- 0xd7, 0xdd, 0x0f, 0x69, 0x8c, 0x11, 0xc0, 0x5e, 0x11, 0xb4, 0xe1, 0x8e,
- 0x53, 0xe1, 0x81, 0x06, 0xa4, 0xf1, 0x62, 0xf8, 0xc0, 0xd1, 0x08, 0x07,
- 0x16, 0x8e, 0x0c, 0xf5, 0x73, 0x1c, 0xab, 0x69, 0x54, 0xc7, 0x4a, 0x36,
- 0xbe, 0x3b, 0x7b, 0xf3, 0x67, 0xb3, 0xf7, 0x6c, 0xf6, 0x3b, 0x8d, 0xe9,
- 0xad, 0x29, 0x34, 0x02, 0xfa, 0x55, 0xa2, 0x68, 0x2c, 0x9d, 0xff, 0xa3,
- 0x83, 0xd8, 0x26, 0x05, 0xe2, 0x8d, 0x36, 0xb8, 0x7e, 0x0b, 0xd7, 0x7c,
- 0x53, 0xb1, 0xff, 0xc9, 0xf0, 0x19, 0x5c, 0x51, 0x6f, 0x0e, 0x9e, 0x3d,
- 0xd9, 0xdd, 0xd9, 0x1c, 0xc6, 0xb7, 0xc1, 0xda, 0x27, 0xad, 0xbf, 0xdb,
- 0xb2, 0xec, 0xe3, 0x82, 0x09, 0x66, 0xe3, 0xf0, 0x87, 0xd3, 0x77, 0xcd,
- 0xf9, 0xc9, 0x8c, 0x22, 0xb1, 0x6e, 0xd5, 0x0c, 0xbd, 0x21, 0xb1, 0xd1,
- 0xbe, 0x25, 0x11, 0xe2, 0xe0, 0xc4, 0xd8, 0x20, 0xeb, 0x6f, 0xca, 0x9c,
- 0xcf, 0xc0, 0x3a, 0x2f, 0xc8, 0xfa, 0x31, 0x09, 0xaf, 0xa4, 0x98, 0x9c,
- 0x30, 0x3a, 0x58, 0xb6, 0xde, 0x82, 0xf3, 0x6a, 0xce, 0xae, 0x61, 0xc0,
- 0x86, 0x3a, 0xd9, 0xa1, 0x48, 0x7a, 0x96, 0xa6, 0x6a, 0x24, 0x5c, 0xff,
- 0xa6, 0x0c, 0xb0, 0x0e, 0xe4, 0xec, 0xb7, 0x8a, 0x10, 0xa2, 0x61, 0x19,
- 0xa4, 0xf0, 0x44, 0x70, 0x41, 0xce, 0x6d, 0xe3, 0x3c, 0x11, 0xab, 0xd0,
- 0x57, 0x11, 0xc2, 0x93, 0x35, 0x6b, 0x22, 0xc5, 0x75, 0x80, 0x2d, 0xcc,
- 0x26, 0x18, 0x4e, 0x85, 0xcc, 0x28, 0x12, 0x2a, 0xaa, 0x65, 0x39, 0x59,
- 0xce, 0x68, 0x05, 0xbe, 0xba, 0xb7, 0xb0, 0x23, 0xbd, 0xb0, 0xa1, 0xb2,
- 0xc7, 0x39, 0x0d, 0x19, 0x4c, 0x5f, 0xcf, 0xb6, 0x1b, 0xad, 0x0d, 0xb1,
- 0x08, 0x2d, 0xe3, 0xea, 0x60, 0xc7, 0x55, 0x4f, 0xe5, 0x84, 0x43, 0xb1,
- 0x0e, 0xb6, 0x6d, 0x6e, 0x7c, 0x71, 0xff, 0x96, 0x52, 0x45, 0x56, 0xa7,
- 0x2c, 0xf7, 0x3f, 0x9e, 0xa4, 0xdf, 0x30, 0x83, 0x8b, 0xa3, 0x9e, 0xc9,
- 0x55, 0x2b, 0xd1, 0xba, 0x3c, 0x4b, 0x46, 0x92, 0x8a, 0x68, 0xeb, 0xad,
- 0xf6, 0x22, 0x3c, 0x78, 0x03, 0x0c, 0xd2, 0x02, 0x28, 0x44, 0xfa, 0x7b,
- 0x9a, 0x6c, 0xb0, 0x44, 0x96, 0x3c, 0xfb, 0xfc, 0xd9, 0xd3, 0x4d, 0x55,
- 0xf9, 0x5d, 0x7c, 0xce, 0x66, 0x97, 0xf3, 0x0d, 0xeb, 0xb6, 0xac, 0x1c,
- 0x9e, 0xf7, 0x2c, 0x47, 0x45, 0x31, 0xd0, 0xba, 0xba, 0xf1, 0xa4, 0x30,
- 0x13, 0x94, 0x71, 0x98, 0x94, 0x2c, 0x06, 0xb7, 0xdd, 0x1c, 0x75, 0x26,
- 0xe5, 0xc8, 0x92, 0x0d, 0x1c, 0x8e, 0xa0, 0xb2, 0x4b, 0xe2, 0xb2, 0xd1,
- 0x71, 0x55, 0xc9, 0xd5, 0xe0, 0xf2, 0x2d, 0xd8, 0x86, 0x71, 0x54, 0x77,
- 0x9a, 0xbe, 0xc5, 0xc5, 0x14, 0x56, 0x2b, 0x46, 0x65, 0xde, 0x22, 0xb8,
- 0x8b, 0xc4, 0x19, 0x00, 0x83, 0xbf, 0xde, 0x75, 0x5d, 0xe0, 0x96, 0x24,
- 0xbd, 0xc2, 0xdc, 0xc7, 0x77, 0x67, 0x73, 0x1d, 0x05, 0x40, 0x8c, 0xb7,
- 0xdf, 0xde, 0xd7, 0x70, 0x1e, 0x5f, 0x1d, 0x38, 0xb6, 0xb6, 0xcd, 0xb2,
- 0x99, 0x81, 0x4a, 0xcb, 0xad, 0x5e, 0x94, 0xbe, 0x42, 0x91, 0xd8, 0x73,
- 0xe4, 0x82, 0x46, 0x0c, 0xe3, 0x2a, 0x64, 0x0e, 0x53, 0x47, 0x52, 0x83,
- 0x30, 0x68, 0x8c, 0x6c, 0x45, 0xa1, 0x0f, 0x47, 0x6c, 0x61, 0x72, 0xb1,
- 0xba, 0xa1, 0x10, 0xd2, 0x6a, 0xbf, 0x3b, 0xa2, 0x8c, 0xab, 0xf4, 0x48,
- 0xa7, 0xad, 0x75, 0x58, 0x31, 0x78, 0x29, 0xd4, 0x83, 0x9c, 0x70, 0xe8,
- 0x36, 0x83, 0x38, 0x5b, 0x25, 0xd9, 0xc0, 0x78, 0xb7, 0xb6, 0x36, 0x1f,
- 0x1d, 0xb3, 0x3e, 0xf8, 0xd8, 0x18, 0x4f, 0x45, 0xd9, 0x98, 0x87, 0x25,
- 0x43, 0xfc, 0x10, 0xb8, 0x4b, 0xde, 0x2f, 0x01, 0x1b, 0x96, 0xa0, 0x46,
- 0xb1, 0xbf, 0xb3, 0xd0, 0x92, 0x90, 0x1c, 0xd4, 0x81, 0x89, 0x04, 0x70,
- 0xde, 0x54, 0xe7, 0xd7, 0x9c, 0xba, 0x0a, 0xaf, 0x92, 0xac, 0xae, 0x5c,
- 0x41, 0xb3, 0x35, 0x38, 0x94, 0x31, 0x2a, 0x36, 0x37, 0x0f, 0xf2, 0x4c,
- 0x38, 0x36, 0x27, 0x98, 0x9f, 0x9c, 0x2a, 0xef, 0x54, 0x96, 0x33, 0x68,
- 0x4a, 0x82, 0x38, 0x9f, 0x63, 0x56, 0xec, 0x9e, 0x6e, 0x55, 0x50, 0x1e,
- 0x46, 0x58, 0x60, 0xf2, 0x24, 0x1f, 0x1f, 0xf3, 0x48, 0xe7, 0xf3, 0x0e,
- 0xa9, 0xd5, 0xbb, 0x0e, 0xd1, 0x20, 0xe9, 0xf8, 0x37, 0x7e, 0xce, 0x82,
- 0xe9, 0x67, 0xc9, 0x6a, 0x01, 0x5e, 0x40, 0x85, 0xe1, 0x76, 0xe3, 0x2a,
- 0x38, 0xea, 0xc6, 0x8a, 0x59, 0x71, 0x3d, 0x7c, 0xda, 0x58, 0xcc, 0xbe,
- 0x9c, 0x50, 0x84, 0xda, 0x77, 0x09, 0xc1, 0xa8, 0xa1, 0xf0, 0xa0, 0xd8,
- 0x0f, 0x7c, 0x1c, 0x1a, 0x58, 0xb3, 0xbe, 0xb7, 0x5c, 0x16, 0x23, 0xb7,
- 0xd0, 0x1a, 0x90, 0x36, 0x0c, 0x6e, 0xd0, 0x39, 0x5b, 0x99, 0xe6, 0x59,
- 0x5d, 0x8e, 0x23, 0xc3, 0x92, 0x73, 0x86, 0x57, 0x63, 0x35, 0x7d, 0x0f,
- 0xf1, 0x20, 0x75, 0xfd, 0x41, 0x7f, 0x61, 0x16, 0xad, 0x89, 0x10, 0x9b,
- 0xe6, 0xa7, 0xd2, 0xa0, 0xa0, 0x8e, 0x98, 0xf7, 0x5e, 0xe5, 0x82, 0xf4,
- 0x35, 0x48, 0x8a, 0x79, 0xa4, 0x68, 0xcc, 0x82, 0x1a, 0x36, 0x9f, 0x24,
- 0xde, 0x5f, 0xee, 0xa0, 0xef, 0xef, 0x17, 0x51, 0xf4, 0xab, 0xe4, 0xb9,
- 0x83, 0x44, 0xb8, 0x0d, 0x80, 0x30, 0x48, 0xf2, 0x87, 0x8f, 0x5b, 0x80,
- 0x6e, 0xc0, 0x42, 0x70, 0xe8, 0xb7, 0xd5, 0x1a, 0x73, 0x1d, 0xa3, 0x8b,
- 0x6c, 0x08, 0x6c, 0xb8, 0xc1, 0x3c, 0x37, 0x9e, 0x6d, 0x26, 0x97, 0xf5,
- 0x62, 0x63, 0x67, 0x53, 0x60, 0x91, 0xb5, 0x84, 0x4d, 0xe1, 0xf7, 0x36,
- 0x56, 0x12, 0x10, 0xd7, 0x75, 0xe0, 0xba, 0x85, 0xf3, 0x96, 0x61, 0xeb,
- 0x11, 0x3f, 0x7e, 0xa9, 0xe7, 0x40, 0x16, 0xcc, 0xd5, 0xde, 0x80, 0xeb,
- 0xab, 0x4b, 0xaa, 0x84, 0x25, 0x78, 0xc1, 0x89, 0x0e, 0x95, 0x54, 0x3c,
- 0xdc, 0xf0, 0x75, 0x12, 0xe4, 0x6e, 0x48, 0xb2, 0x5c, 0x42, 0x34, 0x8a,
- 0x72, 0x3a, 0x19, 0xf0, 0xd5, 0x71, 0x55, 0x16, 0xcb, 0xc5, 0xa0, 0xec,
- 0xc0, 0x42, 0xd2, 0xeb, 0xe3, 0x02, 0x4e, 0x96, 0x38, 0xed, 0x26, 0x59,
- 0xe7, 0x8c, 0x9c, 0x75, 0x77, 0xb7, 0x87, 0x79, 0x3f, 0x2b, 0x12, 0x67,
- 0x64, 0x37, 0xe3, 0x82, 0xcb, 0x9c, 0x58, 0x98, 0x8f, 0xed, 0x80, 0x4b,
- 0x89, 0x08, 0xe4, 0x78, 0x30, 0xd0, 0x9a, 0xb2, 0x73, 0xe2, 0x1d, 0x1a,
- 0xe6, 0x00, 0x6b, 0x36, 0x71, 0x1b, 0xa5, 0xb2, 0xc8, 0x36, 0x29, 0x66,
- 0x4c, 0x93, 0x03, 0x00, 0x91, 0x5c, 0xa8, 0xac, 0x89, 0x18, 0x3e, 0x09,
- 0xea, 0x10, 0x99, 0x99, 0x99, 0xba, 0x10, 0x80, 0x84, 0xff, 0x75, 0x38,
- 0x4f, 0x7b, 0xb3, 0x7b, 0xbe, 0xc4, 0x7a, 0x0d, 0xaa, 0x4b, 0x7a, 0x15,
- 0xdb, 0x02, 0xeb, 0x9e, 0x2d, 0x6f, 0x2b, 0x9f, 0x2c, 0xae, 0xc9, 0xb1,
- 0xa2, 0x6f, 0xa1, 0x6a, 0xe9, 0xc2, 0xb7, 0x2e, 0x8d, 0xfb, 0xd3, 0xf7,
- 0xae, 0x2f, 0x31, 0xef, 0xa3, 0x25, 0x47, 0x9a, 0xb4, 0x9a, 0x7e, 0x2d,
- 0xac, 0x5a, 0x24, 0x02, 0x79, 0x42, 0x4b, 0x22, 0x7a, 0x80, 0x17, 0x86,
- 0xfe, 0xc9, 0xd2, 0x59, 0x58, 0x58, 0x94, 0x8d, 0xaa, 0x6c, 0xca, 0x6e,
- 0x6f, 0xfb, 0x12, 0x64, 0x5d, 0x85, 0x87, 0xa1, 0x15, 0x96, 0x28, 0x7d,
- 0x20, 0xf6, 0x44, 0x1a, 0xd7, 0xd6, 0x3b, 0x21, 0x42, 0xd1, 0x80, 0x03,
- 0x9a, 0x50, 0xa5, 0x57, 0xae, 0x1d, 0xb5, 0xaa, 0x6a, 0x23, 0xae, 0xea,
- 0x01, 0xad, 0xc7, 0xf8, 0x7a, 0x39, 0xbf, 0xa1, 0x21, 0xc4, 0x11, 0xcf,
- 0xe6, 0xdf, 0xc8, 0x51, 0x79, 0x46, 0x4a, 0x8a, 0x1b, 0x9a, 0x84, 0xbc,
- 0xce, 0x70, 0x65, 0xb7, 0xc8, 0x5e, 0xd5, 0x6a, 0x32, 0x0f, 0x45, 0xaa,
- 0x89, 0x59, 0x57, 0x16, 0x50, 0x46, 0xe5, 0x16, 0xf0, 0xe1, 0x0c, 0x48,
- 0xab, 0x4d, 0x22, 0xb1, 0x50, 0x57, 0x41, 0x28, 0x84, 0xb0, 0x28, 0x03,
- 0x82, 0xe1, 0x7b, 0x46, 0x8d, 0x9c, 0x5d, 0xc5, 0x7a, 0xe1, 0x17, 0xd7,
- 0x6d, 0x65, 0x32, 0x0d, 0x21, 0x24, 0x3b, 0x46, 0xa2, 0x2c, 0x78, 0xd0,
- 0xc1, 0x4b, 0x2e, 0x9a, 0xe2, 0xb6, 0x27, 0x45, 0x7b, 0xa9, 0xdf, 0x40,
- 0x10, 0x86, 0xff, 0xd1, 0x72, 0x07, 0x3a, 0x78, 0x89, 0x54, 0x00, 0xda,
- 0x20, 0xed, 0xa2, 0x98, 0x2e, 0x6b, 0xc9, 0x79, 0x66, 0x8b, 0x18, 0xa7,
- 0x92, 0x6c, 0xda, 0x81, 0x92, 0x03, 0xe8, 0x22, 0x22, 0x84, 0x8f, 0x75,
- 0x22, 0x73, 0x21, 0xe0, 0xdb, 0x59, 0x7b, 0x25, 0x20, 0x4b, 0xb5, 0x76,
- 0x96, 0xfd, 0xf5, 0x9a, 0x10, 0x3e, 0xc7, 0x2a, 0x2c, 0xd2, 0x25, 0x8d,
- 0xc1, 0xc6, 0xc6, 0x23, 0xd3, 0x23, 0x1a, 0x0b, 0x12, 0x98, 0x7f, 0x21,
- 0x18, 0xf8, 0x1a, 0x5b, 0xae, 0xb4, 0x84, 0x29, 0x1b, 0x0f, 0xc6, 0x47,
- 0x3c, 0x10, 0x0e, 0xd8, 0xb1, 0xd6, 0x56, 0x2b, 0x43, 0xe0, 0x89, 0x55,
- 0xda, 0xd7, 0x61, 0xb1, 0x98, 0x2e, 0x01, 0xad, 0x32, 0xa2, 0xd9, 0x92,
- 0x7d, 0x0c, 0x91, 0x99, 0x99, 0xf6, 0x65, 0xba, 0x14, 0x88, 0x76, 0xf6,
- 0x57, 0xab, 0xab, 0x8c, 0x84, 0xf3, 0x74, 0xc4, 0xbb, 0x33, 0xba, 0x77,
- 0xd3, 0xb4, 0xfc, 0x7a, 0x24, 0xc2, 0x9b, 0x36, 0x1d, 0x93, 0x87, 0x3d,
- 0xd6, 0xea, 0xe7, 0x3b, 0x63, 0xac, 0x11, 0x65, 0x88, 0x13, 0x24, 0x84,
- 0x03, 0xb9, 0x51, 0x7e, 0xa2, 0x4c, 0x76, 0xd9, 0x61, 0x2e, 0x75, 0x83,
- 0x31, 0x49, 0x9d, 0xcd, 0x01, 0xa9, 0x14, 0x84, 0x51, 0xc8, 0x15, 0x5d,
- 0x06, 0xcb, 0x89, 0x29, 0x9a, 0x29, 0x58, 0x74, 0x6e, 0x0a, 0x60, 0xa0,
- 0xaf, 0x00, 0x3c, 0xd5, 0x2a, 0xaf, 0xef, 0xec, 0xb1, 0x64, 0xe3, 0xfc,
- 0xf4, 0xdd, 0xe1, 0xd7, 0x27, 0x9b, 0x8f, 0x79, 0x15, 0x14, 0x50, 0x12,
- 0x11, 0x28, 0x38, 0x54, 0x38, 0xde, 0x1d, 0xed, 0xc0, 0xe5, 0x04, 0x80,
- 0xbf, 0xd0, 0x8e, 0xdc, 0x15, 0x6f, 0xd7, 0x97, 0x44, 0x54, 0x39, 0xaf,
- 0x82, 0x2a, 0xe8, 0x86, 0xff, 0xa9, 0xb1, 0xfe, 0x69, 0x57, 0xa4, 0xff,
- 0xd7, 0xe7, 0xe7, 0x83, 0xfd, 0xd3, 0x23, 0x54, 0xe4, 0x3a, 0xa7, 0x9f,
- 0x2b, 0x60, 0xcb, 0xbb, 0x02, 0xfb, 0xc5, 0x32, 0xce, 0xd1, 0x82, 0xcd,
- 0xd8, 0xfe, 0x20, 0x9c, 0x1f, 0xcd, 0xb7, 0xaf, 0xdb, 0xd3, 0xa3, 0x2d,
- 0x74, 0x05, 0x9f, 0x06, 0x56, 0xa2, 0x3b, 0x9c, 0x2f, 0xae, 0x1b, 0x23,
- 0xd8, 0x8a, 0x48, 0xd7, 0x00, 0x81, 0x1a, 0x03, 0x49, 0x49, 0xf4, 0x24,
- 0x5d, 0x77, 0xb0, 0x34, 0x1c, 0xc7, 0x6e, 0x04, 0x23, 0x36, 0xa5, 0x73,
- 0x32, 0x9a, 0x41, 0xf3, 0xb7, 0x4c, 0xf7, 0x30, 0xcd, 0x0a, 0xd8, 0x25,
- 0x43, 0x93, 0x93, 0x60, 0xa5, 0x91, 0x2d, 0x6d, 0xbb, 0x5e, 0x6f, 0x40,
- 0xcc, 0x6b, 0xaf, 0x27, 0xa9, 0x1a, 0xd9, 0x9c, 0xab, 0x32, 0x27, 0x76,
- 0xd6, 0x92, 0xc0, 0x54, 0xd6, 0xb8, 0xb1, 0x1d, 0xd0, 0xce, 0x60, 0xd9,
- 0x3d, 0x3a, 0x3a, 0xa2, 0x2c, 0x5e, 0x89, 0x23, 0x50, 0xa5, 0xc6, 0x7f,
- 0x0a, 0x2a, 0x71, 0x78, 0x24, 0x82, 0xbc, 0xb6, 0x87, 0xae, 0x79, 0xe5,
- 0x33, 0x3e, 0x07, 0x4e, 0x3d, 0x1a, 0x4e, 0xda, 0xbc, 0x38, 0x38, 0x0d,
- 0x22, 0x00, 0xfa, 0xb1, 0xc1, 0x63, 0x74, 0xef, 0xd3, 0xc3, 0x91, 0x97,
- 0x3b, 0x77, 0xad, 0xcf, 0x86, 0xab, 0xcb, 0x4b, 0xd6, 0x41, 0x9d, 0xa9,
- 0xae, 0x7b, 0xaf, 0x71, 0xf1, 0xb9, 0x12, 0xac, 0xab, 0xaf, 0x3e, 0x3f,
- 0x83, 0xe0, 0xf6, 0x73, 0x1f, 0xb6, 0x96, 0x46, 0x61, 0xa4, 0xf2, 0x49,
- 0x67, 0x92, 0x96, 0xad, 0x90, 0x55, 0xa2, 0xd1, 0x35, 0x62, 0x08, 0x20,
- 0x83, 0xeb, 0x3a, 0x7a, 0x4d, 0xa3, 0x61, 0x41, 0x8c, 0x74, 0xcf, 0xc0,
- 0x5c, 0x16, 0x0b, 0x90, 0xde, 0x1e, 0x0e, 0xce, 0x8d, 0x1a, 0xef, 0xde,
- 0x68, 0xc9, 0x6d, 0x64, 0xc3, 0x60, 0x55, 0xb4, 0x20, 0xb2, 0x62, 0xc5,
- 0x75, 0xa3, 0xfc, 0xb2, 0xa5, 0xbf, 0x94, 0x80, 0xc3, 0xe4, 0x7a, 0x59,
- 0x0a, 0x9a, 0x81, 0x62, 0x11, 0x29, 0xce, 0x79, 0x99, 0xf1, 0x98, 0x9b,
- 0x03, 0x8e, 0x2a, 0x21, 0x8a, 0x3e, 0x4e, 0xc7, 0x7e, 0xa6, 0xf9, 0x07,
- 0xa3, 0xb2, 0xb8, 0xa1, 0xd3, 0xca, 0xaf, 0x41, 0x66, 0xe6, 0xd5, 0x17,
- 0x19, 0xce, 0xd4, 0x4a, 0xba, 0x51, 0x26, 0xce, 0x25, 0xda, 0x11, 0x7c,
- 0x8a, 0xca, 0x0f, 0x1a, 0xde, 0xe0, 0x85, 0x21, 0x01, 0xe5, 0x47, 0x22,
- 0x9f, 0xc1, 0xb8, 0x42, 0xfc, 0xe6, 0x62, 0xe9, 0x3e, 0x8e, 0x30, 0x76,
- 0x6e, 0x6b, 0x31, 0x85, 0x7f, 0x1e, 0x0d, 0x39, 0xb2, 0x08, 0x69, 0xa8,
- 0x63, 0xcb, 0x1b, 0xc4, 0x24, 0x5c, 0xff, 0x25, 0x51, 0x95, 0x70, 0x73,
- 0x36, 0xca, 0xb5, 0xcd, 0xc2, 0xa8, 0x49, 0x32, 0x08, 0xd0, 0x72, 0xc4,
- 0x4a, 0x0d, 0x55, 0x84, 0x43, 0x52, 0x24, 0x82, 0x63, 0xe2, 0x0b, 0x29,
- 0x29, 0x5a, 0x2c, 0x54, 0xec, 0x58, 0xcc, 0x60, 0xb1, 0xcc, 0x5d, 0xda,
- 0xe2, 0x6a, 0x02, 0x9f, 0xe0, 0xed, 0x01, 0x4e, 0x1a, 0xb2, 0xca, 0xd5,
- 0x83, 0xf2, 0x87, 0x10, 0x89, 0x44, 0x7a, 0x8a, 0x54, 0x0a, 0x29, 0x2e,
- 0xe0, 0x42, 0x64, 0x24, 0x77, 0xd0, 0x65, 0xfc, 0x32, 0xec, 0x74, 0xc8,
- 0x33, 0x04, 0xc8, 0x36, 0x39, 0xe4, 0x78, 0x97, 0x0e, 0x3d, 0xc7, 0xf2,
- 0x43, 0x31, 0xc7, 0x5c, 0x21, 0x38, 0xc5, 0x1b, 0xa1, 0x4a, 0x63, 0x6a,
- 0x8e, 0x06, 0x8b, 0x7c, 0x71, 0xa5, 0x77, 0x3b, 0x04, 0x48, 0x1e, 0x91,
- 0x9a, 0xf3, 0xad, 0x92, 0x88, 0x7d, 0xe4, 0xea, 0x0a, 0xbc, 0xf1, 0x41,
- 0xde, 0x7d, 0x31, 0x1e, 0x89, 0x3e, 0xd6, 0x21, 0x40, 0x62, 0x34, 0x89,
- 0x7f, 0xa8, 0x1f, 0xfc, 0xbe, 0xf7, 0xf9, 0xb6, 0x85, 0xf9, 0xb2, 0xbd,
- 0x2e, 0x7c, 0x06, 0xa8, 0x8d, 0x1d, 0x6a, 0x04, 0x40, 0x03, 0x8b, 0xda,
- 0x3d, 0xda, 0xae, 0x06, 0xf2, 0x62, 0xf8, 0x74, 0xb3, 0x41, 0x2f, 0xf5,
- 0x74, 0xe6, 0x40, 0x35, 0x4d, 0x30, 0x49, 0xde, 0x5d, 0x1c, 0xbf, 0x4d,
- 0x22, 0x7b, 0x80, 0xf8, 0x10, 0xf1, 0x5d, 0xf3, 0xab, 0xc8, 0xce, 0x89,
- 0x38, 0x6c, 0x0e, 0x23, 0x27, 0xf1, 0x31, 0xbf, 0x9a, 0x4b, 0xe5, 0x85,
- 0xb7, 0xf9, 0xb8, 0x2c, 0xaa, 0xe2, 0x52, 0x3c, 0x99, 0x76, 0xc1, 0xd0,
- 0x17, 0x47, 0x47, 0xe7, 0xc9, 0x5d, 0x36, 0xb2, 0x3c, 0xab, 0x28, 0xaa,
- 0x50, 0x52, 0x17, 0x41, 0x82, 0x8b, 0x32, 0xcf, 0x6a, 0x16, 0x34, 0xcc,
- 0xa4, 0xc7, 0xb9, 0xd7, 0xfc, 0x52, 0x36, 0xc8, 0xe6, 0xa4, 0x70, 0x66,
- 0x50, 0xdf, 0xb8, 0xcc, 0xc3, 0x14, 0x5c, 0x69, 0x91, 0x15, 0x1d, 0x46,
- 0x5d, 0x19, 0x80, 0xb1, 0x14, 0x59, 0x1b, 0xdc, 0x15, 0xa3, 0xb4, 0x72,
- 0xb8, 0x53, 0x79, 0xc9, 0x14, 0xc7, 0xc2, 0x86, 0x5a, 0x62, 0x6e, 0x72,
- 0x24, 0xf8, 0x47, 0x89, 0xef, 0x5a, 0x03, 0xd4, 0xb1, 0x43, 0x33, 0x48,
- 0xcc, 0x27, 0x45, 0x09, 0x0f, 0x49, 0x80, 0x65, 0xcd, 0xb5, 0x14, 0x96,
- 0x88, 0xfb, 0xe4, 0xe1, 0xdd, 0x77, 0x48, 0xec, 0xd7, 0x85, 0x84, 0x5d,
- 0x62, 0x99, 0x99, 0x2b, 0x49, 0x4a, 0x20, 0xe2, 0xb3, 0x14, 0x97, 0x56,
- 0x8b, 0x4e, 0x19, 0x2b, 0x79, 0x4c, 0xc2, 0xb3, 0xfd, 0xf0, 0x89, 0x49,
- 0x6a, 0x68, 0x7f, 0x9d, 0x5f, 0xad, 0xa8, 0x4f, 0x20, 0x5a, 0x54, 0x5b,
- 0xcc, 0xe4, 0x11, 0x29, 0xbf, 0x2c, 0x55, 0xb8, 0x6c, 0x17, 0xc2, 0xe9,
- 0x00, 0x02, 0x69, 0x48, 0x96, 0x44, 0x6d, 0x0f, 0xd6, 0x3a, 0x7e, 0x58,
- 0xa4, 0xc4, 0x05, 0xa2, 0x69, 0xa3, 0x5a, 0x6a, 0x89, 0x04, 0xc7, 0xc8,
- 0x30, 0x1a, 0xe7, 0x87, 0x4a, 0x9c, 0x3a, 0x94, 0x38, 0x13, 0x20, 0x79,
- 0x36, 0xc3, 0x7f, 0x46, 0x55, 0x3f, 0x7f, 0xd8, 0x0a, 0x16, 0x22, 0xd5,
- 0x28, 0xd0, 0x99, 0x08, 0xf0, 0xbd, 0x20, 0x2a, 0xa9, 0xd9, 0xa0, 0xd0,
- 0x87, 0xc2, 0xec, 0xbb, 0xaa, 0x9e, 0x14, 0x8c, 0x6a, 0xab, 0x8a, 0x00,
- 0x5f, 0xe1, 0x72, 0x7b, 0xff, 0xc7, 0xdf, 0xe3, 0x54, 0xa4, 0x1f, 0x7f,
- 0x16, 0x49, 0x5a, 0xb0, 0x33, 0x3c, 0x90, 0x84, 0x91, 0x4e, 0xe5, 0xeb,
- 0xae, 0xf0, 0x26, 0x31, 0x48, 0x94, 0x01, 0x66, 0xe3, 0x0a, 0x6f, 0x5b,
- 0x28, 0xc4, 0x7b, 0xa8, 0x57, 0xaf, 0x8e, 0xcd, 0xf8, 0x3e, 0x70, 0x86,
- 0xd3, 0xc0, 0x88, 0xe6, 0x21, 0xbc, 0x15, 0x43, 0x7a, 0xb2, 0x0a, 0x05,
- 0xde, 0x90, 0x66, 0x9a, 0x15, 0x7f, 0x80, 0xf1, 0x21, 0x3e, 0x1f, 0x8c,
- 0x9f, 0x6f, 0x96, 0x63, 0xa9, 0xa5, 0x19, 0x23, 0xa9, 0xca, 0xde, 0xaa,
- 0x6b, 0xe3, 0x3f, 0x68, 0x2f, 0xfa, 0xf5, 0x5d, 0xf1, 0xf7, 0x21, 0xc7,
- 0x33, 0x82, 0xf1, 0x0e, 0x0a, 0x29, 0x74, 0xfe, 0xe1, 0x77, 0x3b, 0x1c,
- 0x3d, 0xb4, 0x1e, 0x17, 0x30, 0xc7, 0x0a, 0xd8, 0x16, 0x3b, 0x00, 0x9e,
- 0x15, 0xc0, 0xad, 0xcd, 0xee, 0xb8, 0x97, 0x3e, 0x5f, 0x01, 0x7f, 0x1f,
- 0xf2, 0xbf, 0x3f, 0xee, 0x0c, 0x9e, 0xfd, 0xec, 0x7a, 0xfd, 0xdd, 0xce,
- 0x87, 0xdf, 0xed, 0xae, 0x77, 0x45, 0x87, 0x59, 0x4e, 0x60, 0x33, 0x98,
- 0xaf, 0x42, 0x09, 0x59, 0x8d, 0x9e, 0x55, 0x6d, 0xd3, 0x57, 0xad, 0x40,
- 0x59, 0x9c, 0x38, 0xe3, 0x83, 0xad, 0x50, 0x8f, 0x00, 0xd1, 0x87, 0x95,
- 0x94, 0x03, 0xad, 0x45, 0x0b, 0x0b, 0x6b, 0xe4, 0xd6, 0x58, 0x60, 0xb6,
- 0x61, 0xce, 0x8c, 0x30, 0x9d, 0x01, 0x8f, 0x30, 0xb9, 0xa7, 0x7b, 0x4e,
- 0x40, 0x56, 0x87, 0x2e, 0x72, 0xc6, 0xa4, 0x47, 0x25, 0x5c, 0x85, 0xe7,
- 0xda, 0x70, 0x37, 0x3e, 0x83, 0xc9, 0x6d, 0x76, 0x59, 0x26, 0xbc, 0x49,
- 0xc8, 0xd3, 0xbc, 0x96, 0xbd, 0xc5, 0xe1, 0x15, 0x62, 0xf7, 0x07, 0xa8,
- 0x0d, 0x74, 0xfa, 0xc8, 0xf1, 0x49, 0x43, 0xbf, 0x94, 0x94, 0x8c, 0x42,
- 0xc2, 0x44, 0x00, 0xff, 0x8d, 0xaf, 0xee, 0x32, 0x48, 0xaf, 0xed, 0x7b,
- 0x67, 0xe3, 0xc4, 0xe9, 0x3a, 0x78, 0x2c, 0x2c, 0x31, 0x10, 0xbe, 0x1e,
- 0x78, 0xc2, 0xb3, 0xc4, 0xea, 0xd2, 0x8f, 0x97, 0x75, 0x8c, 0x41, 0x32,
- 0xdc, 0xec, 0x4a, 0x0f, 0x08, 0xdb, 0x32, 0xbc, 0x33, 0x8d, 0xe3, 0x4e,
- 0x2a, 0x29, 0x67, 0x24, 0xfa, 0xa0, 0xc0, 0xac, 0x32, 0x2f, 0x92, 0x80,
- 0xd3, 0x58, 0x36, 0x71, 0xf5, 0x8a, 0xfb, 0x0e, 0xde, 0x39, 0x9b, 0x56,
- 0x31, 0x6d, 0x1c, 0xb0, 0x9b, 0x87, 0x61, 0xec, 0x6a, 0x24, 0x8d, 0xf7,
- 0xc3, 0xea, 0xb5, 0x2e, 0x27, 0x31, 0xbd, 0xf5, 0xfe, 0x1b, 0x3b, 0xa3,
- 0x1a, 0x20, 0xbf, 0xd2, 0x02, 0xde, 0xb4, 0x50, 0x38, 0xac, 0xe7, 0xd4,
- 0x95, 0x12, 0xf3, 0x29, 0x85, 0x41, 0xf2, 0x7b, 0x57, 0x1e, 0x2b, 0x2a,
- 0x4c, 0x80, 0x3d, 0x49, 0xca, 0x57, 0x6b, 0x04, 0x81, 0x0f, 0x45, 0xa1,
- 0x67, 0xf8, 0x59, 0xc1, 0x22, 0xeb, 0xf2, 0x26, 0x3a, 0x6e, 0x13, 0xa3,
- 0xe5, 0x5e, 0x4e, 0xd3, 0xab, 0x7f, 0xe9, 0x04, 0xa8, 0x55, 0xc0, 0x28,
- 0xe6, 0x44, 0x80, 0xa6, 0x95, 0xe8, 0xdc, 0x79, 0x16, 0x7a, 0x3e, 0x14,
- 0xbb, 0x84, 0xe6, 0x9d, 0x4b, 0x1d, 0x98, 0xdf, 0xef, 0x6e, 0xc7, 0xac,
- 0x58, 0x13, 0xe9, 0x80, 0xdf, 0x66, 0x95, 0xa0, 0x98, 0x9e, 0x2a, 0x23,
- 0x28, 0x91, 0x28, 0x7d, 0xc9, 0x89, 0x0c, 0x09, 0x43, 0x74, 0x96, 0x06,
- 0xc0, 0xbe, 0x58, 0x05, 0x50, 0xdb, 0x19, 0x77, 0xfa, 0x6b, 0x19, 0xcb,
- 0xa3, 0x9c, 0x85, 0x6e, 0x2f, 0xbe, 0xf0, 0x77, 0x07, 0xa3, 0x8c, 0x6e,
- 0x9e, 0xf6, 0x1c, 0x37, 0x7c, 0x54, 0x69, 0x3f, 0x69, 0x86, 0x4f, 0x71,
- 0x67, 0x5f, 0xe1, 0x9d, 0xe4, 0x02, 0x3a, 0x1d, 0xd3, 0xf6, 0x09, 0x57,
- 0x95, 0x4f, 0x76, 0x87, 0xdb, 0x2a, 0xf8, 0x3d, 0x98, 0xf9, 0x2a, 0xee,
- 0x9a, 0x46, 0x1b, 0xbe, 0x1e, 0x29, 0xcb, 0xeb, 0x7f, 0x59, 0xce, 0x9b,
- 0x80, 0xfc, 0x5d, 0x1e, 0x2e, 0x55, 0xc3, 0x4c, 0xca, 0xd7, 0x02, 0x08,
- 0x8d, 0x00, 0xa5, 0xf0, 0x94, 0x2b, 0x5c, 0x5f, 0xc9, 0xf6, 0x9f, 0x48,
- 0xca, 0x40, 0x83, 0xab, 0xaa, 0x77, 0x44, 0x83, 0x55, 0x70, 0x10, 0xb3,
- 0xdf, 0x94, 0x99, 0xfa, 0xc8, 0x44, 0x7e, 0x73, 0x35, 0xc1, 0x70, 0x5f,
- 0x9f, 0xbd, 0x39, 0x68, 0x35, 0xf7, 0xfc, 0xb3, 0x67, 0xdb, 0xbf, 0x65,
- 0x28, 0x4a, 0xa3, 0x9a, 0xc8, 0xc3, 0xd5, 0x9a, 0x7e, 0x55, 0xb9, 0xa6,
- 0xee, 0x6a, 0x4d, 0x56, 0x82, 0xe4, 0x97, 0x95, 0x6a, 0x52, 0xaf, 0x68,
- 0x57, 0xc4, 0x6c, 0x98, 0xa1, 0xe8, 0x43, 0x7d, 0xc2, 0x4a, 0x54, 0xac,
- 0x36, 0xe5, 0x95, 0xc6, 0xf3, 0xb3, 0x00, 0xcb, 0xc1, 0x5e, 0xcb, 0x79,
- 0x87, 0x7b, 0x55, 0x6c, 0xe0, 0x7c, 0x03, 0x58, 0x05, 0xef, 0x83, 0x93,
- 0x77, 0xef, 0x0e, 0x0f, 0x2e, 0x7c, 0xe5, 0x91, 0x3b, 0xab, 0x6e, 0x27,
- 0xec, 0x4e, 0x8a, 0x4f, 0x89, 0x4a, 0xdd, 0x5d, 0xad, 0x49, 0x62, 0x58,
- 0x2d, 0x35, 0x5b, 0x47, 0x80, 0x7c, 0x0b, 0x89, 0xcf, 0x0d, 0x80, 0x2b,
- 0x2c, 0x6c, 0x5f, 0x18, 0x55, 0x87, 0x0a, 0xda, 0x5d, 0xa4, 0xc7, 0xa7,
- 0xbc, 0x83, 0x7f, 0x46, 0x05, 0x7a, 0x34, 0x3d, 0x2b, 0x28, 0xd1, 0x23,
- 0x08, 0xe8, 0xff, 0x1f, 0x2b, 0xd2, 0xf3, 0x8d, 0xab, 0xb6, 0xd2, 0x86,
- 0xc1, 0xed, 0xaa, 0x43, 0xa3, 0x0a, 0x5d, 0x10, 0xd3, 0xb0, 0xaa, 0x16,
- 0x8d, 0xcf, 0xc5, 0xe3, 0x88, 0xda, 0xca, 0xbb, 0xbe, 0x03, 0x54, 0x92,
- 0x55, 0x85, 0x77, 0x56, 0xe1, 0xc2, 0x05, 0x00, 0x70, 0xc2, 0xbc, 0xa5,
- 0xd0, 0xd9, 0x2f, 0x2f, 0xce, 0xb2, 0x3a, 0x7a, 0x82, 0xab, 0x0b, 0x39,
- 0x01, 0x6d, 0xb0, 0xe8, 0x1b, 0x47, 0xa8, 0x39, 0xed, 0x6a, 0xda, 0x65,
- 0x41, 0xd7, 0xf2, 0x7f, 0x4a, 0xc2, 0xc6, 0x7a, 0x36, 0x06, 0x1f, 0xdd,
- 0xbb, 0x5d, 0x58, 0x0c, 0x88, 0x46, 0x89, 0xc2, 0x62, 0xe6, 0x03, 0x6b,
- 0x0a, 0x1a, 0xbd, 0x4d, 0x50, 0x61, 0xe1, 0xe5, 0xb4, 0x60, 0x20, 0xbc,
- 0x3b, 0xa5, 0xd8, 0xc4, 0x0d, 0x0c, 0xfe, 0xe3, 0x7d, 0x64, 0xec, 0x51,
- 0x98, 0x7a, 0x22, 0xb3, 0x19, 0x5d, 0xe1, 0x53, 0x4b, 0xee, 0xce, 0x6b,
- 0xad, 0x7a, 0x8b, 0x12, 0x1a, 0x38, 0xd3, 0x2e, 0x0d, 0x48, 0x43, 0xbc,
- 0xa8, 0x97, 0x41, 0xe4, 0x95, 0x9d, 0x72, 0x56, 0x6a, 0x59, 0xa4, 0x92,
- 0xd1, 0x04, 0x10, 0x75, 0x77, 0x34, 0x30, 0x6e, 0x73, 0xb3, 0x18, 0x7b,
- 0xf0, 0xf9, 0xe8, 0x71, 0x3c, 0xab, 0x53, 0x6f, 0x5d, 0xec, 0xbb, 0xaa,
- 0xd1, 0x82, 0x2c, 0xa0, 0x59, 0x5f, 0x6a, 0xde, 0x36, 0x4e, 0xa0, 0xf2,
- 0x21, 0xab, 0xad, 0xdd, 0x1a, 0x99, 0x9c, 0x7c, 0x03, 0x56, 0xd1, 0xb5,
- 0xb2, 0xa5, 0xaa, 0x8b, 0x80, 0xd1, 0x37, 0x0b, 0xbe, 0xaf, 0x8c, 0x7d,
- 0x06, 0x60, 0xd1, 0x99, 0xd8, 0x55, 0xb4, 0xb0, 0xb9, 0x5a, 0xd4, 0xb5,
- 0xb8, 0x6f, 0x51, 0x6e, 0x21, 0xd6, 0x6f, 0x8e, 0xc4, 0xe8, 0x02, 0x36,
- 0x23, 0x29, 0xad, 0xd4, 0x01, 0xd3, 0x0d, 0x53, 0x3d, 0xdf, 0x6d, 0x72,
- 0xc2, 0xa8, 0x71, 0x87, 0x1f, 0xa3, 0xc6, 0x8d, 0x99, 0x0f, 0xb5, 0x81,
- 0xb1, 0xd1, 0x57, 0x13, 0x66, 0xbf, 0x7e, 0xdb, 0x7e, 0x83, 0x5a, 0x03,
- 0x63, 0x03, 0x23, 0x10, 0x18, 0x55, 0x57, 0x0c, 0x41, 0x03, 0x06, 0x41,
- 0x35, 0xb6, 0x8e, 0x80, 0x5a, 0x5e, 0x85, 0x88, 0x31, 0x9e, 0x72, 0x30,
- 0x6f, 0xaf, 0x0a, 0xa5, 0x00, 0x8d, 0x7e, 0x86, 0x97, 0x85, 0x16, 0xca,
- 0x92, 0x84, 0x1b, 0x35, 0x99, 0xd3, 0xea, 0xa6, 0x5a, 0x8d, 0x30, 0xe4,
- 0xa3, 0x39, 0xe6, 0x61, 0xe5, 0x10, 0x6b, 0x51, 0xfc, 0x73, 0x79, 0xdd,
- 0x1a, 0x27, 0xef, 0x55, 0xb3, 0x39, 0xb7, 0x45, 0x11, 0x4e, 0x58, 0xa4,
- 0x95, 0xba, 0x32, 0x22, 0x91, 0xb6, 0x2a, 0x5f, 0x0f, 0xe9, 0xc4, 0xac,
- 0x73, 0x85, 0x91, 0xf5, 0x66, 0xf2, 0x91, 0x66, 0xeb, 0xd9, 0xdb, 0xb4,
- 0x12, 0xc1, 0x80, 0x63, 0x89, 0xd0, 0xae, 0x07, 0xb5, 0x0d, 0xf1, 0x7e,
- 0x6d, 0x70, 0xd8, 0x11, 0xf8, 0x6f, 0x8c, 0x4b, 0xe8, 0x9a, 0x5a, 0x3d,
- 0xaa, 0x75, 0xab, 0x1a, 0xb6, 0xb3, 0x3d, 0xdc, 0x59, 0x0f, 0xb1, 0x93,
- 0x11, 0x58, 0xc1, 0xb1, 0x10, 0x61, 0x3b, 0x1d, 0x77, 0x61, 0x97, 0xd5,
- 0x37, 0xec, 0x60, 0x76, 0x3f, 0x0c, 0xc2, 0x53, 0xa2, 0x2e, 0x34, 0x84,
- 0xa5, 0xdd, 0xf2, 0x20, 0xd0, 0x46, 0x40, 0x6a, 0x0b, 0x0e, 0xe5, 0x71,
- 0x28, 0x16, 0xc1, 0x2a, 0x59, 0x7e, 0x0d, 0x9d, 0x63, 0x8e, 0x37, 0xba,
- 0xef, 0x84, 0xb2, 0x0a, 0xf2, 0x27, 0x1a, 0xb5, 0xd5, 0x9d, 0x2f, 0xeb,
- 0x37, 0xc6, 0x74, 0x7c, 0xed, 0xfc, 0x1f, 0xce, 0xcb, 0x76, 0x7a, 0x72,
- 0x76, 0xa1, 0xa0, 0x36, 0xc2, 0x15, 0xd2, 0xea, 0x76, 0xd8, 0x78, 0x30,
- 0xe0, 0xc2, 0x1d, 0x66, 0x3d, 0x61, 0xc3, 0x87, 0xa7, 0xd4, 0x4a, 0x1b,
- 0xfe, 0xc8, 0x35, 0xef, 0xd0, 0x35, 0x06, 0x03, 0x35, 0xda, 0x0f, 0xb2,
- 0x45, 0x0c, 0xfb, 0x86, 0x46, 0x38, 0x41, 0x38, 0x83, 0x8b, 0x92, 0x5f,
- 0xfd, 0xe3, 0x1f, 0x1f, 0x29, 0x8a, 0xb7, 0xf3, 0x62, 0xf8, 0xcc, 0x9b,
- 0xb0, 0x04, 0x3c, 0x20, 0x59, 0xdf, 0xfb, 0x11, 0xe9, 0x32, 0x3f, 0x0f,
- 0x7e, 0xa4, 0x3f, 0x7f, 0x5e, 0x77, 0x5c, 0x94, 0x63, 0xc8, 0x3a, 0x6a,
- 0x1b, 0x49, 0xaa, 0x95, 0x65, 0x75, 0xe0, 0x69, 0x17, 0x6d, 0x0d, 0xb9,
- 0x8c, 0x1d, 0x8e, 0x38, 0xb3, 0x92, 0x7a, 0x2d, 0x34, 0x2f, 0xd6, 0xae,
- 0xc8, 0xee, 0xcd, 0xf9, 0xf8, 0x10, 0x8a, 0x5c, 0xda, 0x88, 0x7f, 0xb3,
- 0x6f, 0x45, 0x71, 0x14, 0x65, 0x81, 0x25, 0x01, 0xcd, 0xd3, 0x17, 0x3e,
- 0x1e, 0x95, 0x1c, 0x37, 0xfb, 0x89, 0xb2, 0x79, 0x49, 0x16, 0x25, 0x41,
- 0x8a, 0xeb, 0x60, 0x4a, 0x68, 0x83, 0x08, 0x4d, 0x99, 0x0b, 0x3b, 0x72,
- 0x99, 0x99, 0x9d, 0x41, 0x74, 0xd5, 0x0d, 0xcf, 0x58, 0xf3, 0xa3, 0x03,
- 0x20, 0x37, 0x8c, 0xd1, 0x92, 0x89, 0x47, 0x01, 0xa6, 0x7d, 0x43, 0x45,
- 0xe0, 0x32, 0x6d, 0x2f, 0x17, 0xd7, 0x25, 0x35, 0xff, 0x00, 0xb2, 0x27,
- 0x3d, 0x25, 0xcf, 0x38, 0x42, 0x5f, 0x78, 0x88, 0xc9, 0xdf, 0x52, 0x83,
- 0x49, 0xeb, 0xeb, 0x01, 0xb4, 0xe5, 0xb6, 0x58, 0xd5, 0x86, 0x90, 0xb9,
- 0x4e, 0x51, 0xde, 0xc4, 0xc3, 0xf8, 0xd3, 0x9a, 0x6c, 0x0d, 0x87, 0x5b,
- 0x2c, 0x6d, 0x6e, 0xd1, 0x0f, 0x5f, 0xd6, 0x01, 0xd6, 0x94, 0x36, 0x7c,
- 0x33, 0x6b, 0xf0, 0xdc, 0x19, 0x52, 0xe8, 0xb5, 0x08, 0xaa, 0x17, 0xbd,
- 0xab, 0xbf, 0x2e, 0x11, 0x6a, 0x5e, 0xb2, 0xf0, 0x21, 0x40, 0x35, 0xb3,
- 0x46, 0xc9, 0xe7, 0xa8, 0x70, 0x9d, 0x84, 0x9e, 0x55, 0x9a, 0x4b, 0x5e,
- 0x5f, 0x37, 0x56, 0x84, 0x33, 0x1a, 0xe0, 0x9d, 0xe4, 0x49, 0xe4, 0xb5,
- 0x81, 0x7b, 0x00, 0x21, 0x28, 0xad, 0x1f, 0x8c, 0x88, 0x7d, 0xba, 0xdb,
- 0x4c, 0x14, 0x51, 0xb0, 0x9a, 0x15, 0x85, 0x85, 0x70, 0x7f, 0xda, 0x2a,
- 0x95, 0x80, 0x13, 0xac, 0x91, 0xa7, 0x99, 0xec, 0x3e, 0xdf, 0x79, 0xbe,
- 0x45, 0x9c, 0xf9, 0xc9, 0x70, 0x37, 0x04, 0xac, 0x27, 0xb6, 0x45, 0x9b,
- 0xd4, 0x3e, 0x01, 0x00, 0x34, 0xf2, 0xe2, 0x30, 0xdf, 0x2a, 0x45, 0x58,
- 0x14, 0x5a, 0x75, 0x26, 0x9f, 0xf7, 0x91, 0x32, 0x44, 0x91, 0x4b, 0xd7,
- 0x88, 0xd2, 0x6c, 0x4c, 0xef, 0x67, 0x21, 0x91, 0x47, 0xa3, 0xce, 0x96,
- 0xa5, 0x54, 0x7c, 0x1f, 0xe5, 0x24, 0x4d, 0xd5, 0xc5, 0x52, 0x81, 0xf8,
- 0xd8, 0x85, 0xe4, 0x6a, 0x35, 0x71, 0xb2, 0x4d, 0xd1, 0x59, 0xc6, 0x14,
- 0x78, 0x36, 0xae, 0x6e, 0x87, 0x0b, 0x39, 0x09, 0xc2, 0x06, 0x90, 0x19,
- 0x92, 0x4b, 0xcd, 0x09, 0x54, 0xb0, 0x61, 0x49, 0x67, 0x7c, 0xdf, 0x3e,
- 0x9f, 0xdf, 0xd0, 0x39, 0xbe, 0x65, 0x35, 0x28, 0xb5, 0x5b, 0x5f, 0x72,
- 0xf7, 0xc5, 0xed, 0x9c, 0xca, 0x62, 0x78, 0xd0, 0x64, 0xfd, 0x40, 0x32,
- 0x0f, 0xba, 0x0a, 0xb5, 0x36, 0x92, 0x60, 0x86, 0xed, 0x60, 0x1b, 0x81,
- 0x56, 0x61, 0xd4, 0x61, 0x4e, 0x48, 0x17, 0xf7, 0xaa, 0x04, 0xee, 0x80,
- 0xb9, 0x3e, 0x94, 0xaa, 0xf3, 0x50, 0xb1, 0x41, 0x05, 0x2e, 0xfa, 0x1f,
- 0x48, 0x16, 0xbb, 0xff, 0x3f, 0x59, 0xfc, 0x13, 0xc9, 0xe2, 0x45, 0x17,
- 0x59, 0x3c, 0xf9, 0x1f, 0x48, 0x16, 0x4f, 0xfe, 0x7f, 0xb2, 0xf8, 0xe7,
- 0x91, 0xc5, 0xee, 0xf3, 0xd6, 0x25, 0xc2, 0x3a, 0x3a, 0x49, 0x01, 0xa6,
- 0xaa, 0x7f, 0xd1, 0x71, 0xd9, 0x56, 0xb6, 0x74, 0x2e, 0x7f, 0x46, 0xbc,
- 0x4b, 0x92, 0x1b, 0x16, 0xaa, 0xf9, 0xaa, 0x04, 0x55, 0x1e, 0x97, 0x30,
- 0xb6, 0xf2, 0x30, 0xba, 0x69, 0x3a, 0x1d, 0x26, 0xa7, 0xee, 0x35, 0xa4,
- 0x8c, 0x71, 0xf6, 0x34, 0x22, 0x57, 0xa6, 0xd9, 0x25, 0xb6, 0x00, 0xe2,
- 0x5d, 0x1f, 0x5f, 0x42, 0x12, 0x65, 0x4b, 0x5c, 0x14, 0xf7, 0x8f, 0x60,
- 0x17, 0x09, 0x26, 0x41, 0x2b, 0xac, 0xd4, 0xa7, 0x3e, 0x3b, 0xc8, 0x52,
- 0x52, 0x7b, 0x74, 0xa9, 0xf7, 0xfa, 0x49, 0x58, 0xf4, 0x89, 0x53, 0x19,
- 0xe3, 0xf2, 0x53, 0x1f, 0xc5, 0x51, 0xfa, 0xb7, 0xac, 0x2c, 0x12, 0x83,
- 0x49, 0x50, 0x68, 0x3b, 0xd4, 0x69, 0x33, 0x39, 0xca, 0x7f, 0xc8, 0xfd,
- 0x46, 0x9a, 0xdb, 0x1f, 0x51, 0xbe, 0x52, 0xd0, 0x0c, 0x19, 0x35, 0xc5,
- 0x65, 0x2b, 0xcd, 0x59, 0x30, 0xcd, 0xcd, 0x90, 0xe9, 0x57, 0xce, 0xd4,
- 0x0c, 0x64, 0x44, 0x44, 0xe7, 0x80, 0xad, 0xa1, 0x6c, 0x8c, 0x09, 0xa3,
- 0x91, 0x9c, 0xfe, 0x7e, 0x29, 0x78, 0x4e, 0x32, 0x1c, 0x57, 0x9d, 0x65,
- 0xd8, 0xa1, 0xfb, 0xbc, 0xce, 0xd8, 0x5d, 0x10, 0x0e, 0xa8, 0x0f, 0x53,
- 0xc4, 0xad, 0x5a, 0x53, 0x5c, 0xd8, 0xa1, 0x0f, 0x1e, 0xf2, 0x43, 0x8c,
- 0x87, 0xd4, 0x1c, 0x73, 0xdd, 0x11, 0x81, 0xf8, 0xca, 0x2d, 0x83, 0x39,
- 0xd7, 0xc3, 0xc5, 0xd8, 0x40, 0x76, 0x93, 0xb9, 0x1a, 0xd1, 0xe5, 0xa7,
- 0x2c, 0x03, 0xcc, 0x50, 0x30, 0x84, 0x54, 0xcb, 0xd1, 0x5f, 0x54, 0xcb,
- 0xa6, 0x21, 0xa7, 0x00, 0x03, 0x6c, 0x94, 0x1d, 0x95, 0x22, 0x3c, 0xcb,
- 0x91, 0x7a, 0xc6, 0xe2, 0xe6, 0xe8, 0x43, 0x78, 0x41, 0x5d, 0x21, 0x20,
- 0xa5, 0x33, 0x0d, 0xa2, 0xe2, 0x31, 0x45, 0x93, 0x0a, 0x22, 0x81, 0xa2,
- 0x7d, 0xb7, 0xf3, 0xc4, 0xba, 0x57, 0xa5, 0xa5, 0x6e, 0xc2, 0xcd, 0x72,
- 0xab, 0xa9, 0xc2, 0xbe, 0xc5, 0x3c, 0xf1, 0xe3, 0x2b, 0xdb, 0x22, 0x72,
- 0xed, 0xb3, 0x67, 0xba, 0xea, 0xff, 0x91, 0x7f, 0x74, 0x2b, 0xa1, 0x0d,
- 0x2c, 0x69, 0x0b, 0x90, 0xe4, 0xc7, 0x71, 0x36, 0xf0, 0xfa, 0xaa, 0x0e,
- 0x5e, 0xf1, 0xb7, 0xd2, 0xc3, 0xc3, 0x6d, 0xc3, 0xf7, 0xfc, 0x0b, 0x3a,
- 0x78, 0x3f, 0x17, 0x14, 0x82, 0x90, 0x43, 0x2c, 0x14, 0xd7, 0x88, 0xd9,
- 0xdd, 0x5d, 0x5a, 0xce, 0x25, 0xbe, 0x11, 0xac, 0x4e, 0x4d, 0x66, 0x9c,
- 0x51, 0xb6, 0x80, 0xe1, 0x2b, 0x82, 0x0e, 0xbe, 0x64, 0xe3, 0x1f, 0x2c,
- 0x80, 0xc5, 0xdc, 0xb2, 0x47, 0x15, 0xa6, 0xd4, 0x62, 0x01, 0x17, 0x45,
- 0x6d, 0x3e, 0xd0, 0x64, 0xc2, 0x4a, 0x5a, 0x89, 0xfb, 0xa1, 0x03, 0xdf,
- 0xde, 0x36, 0xc2, 0x17, 0x74, 0xe3, 0x96, 0x61, 0xd6, 0x5a, 0x2e, 0x50,
- 0x41, 0x43, 0xe1, 0x53, 0x44, 0xed, 0x49, 0xfd, 0xee, 0x49, 0xd7, 0xed,
- 0xa8, 0x21, 0x04, 0xb5, 0xe0, 0xc2, 0x73, 0x70, 0xab, 0xb7, 0x45, 0x0e,
- 0x34, 0x61, 0xe4, 0xc3, 0x0e, 0x7f, 0x5d, 0xd9, 0x90, 0x7e, 0x50, 0x0d,
- 0x30, 0xad, 0xc2, 0xd4, 0x94, 0x38, 0x64, 0xcf, 0x9b, 0x32, 0x52, 0xc1,
- 0x53, 0x20, 0x2a, 0x9e, 0xa7, 0xb5, 0x1d, 0x31, 0xbf, 0x0d, 0x18, 0xa6,
- 0xd4, 0xbe, 0x61, 0x7d, 0x65, 0x9c, 0xc5, 0x51, 0x50, 0xbe, 0x40, 0xc4,
- 0x63, 0xe8, 0x1c, 0xbb, 0xd1, 0x7d, 0x22, 0xf9, 0xeb, 0x8f, 0xde, 0x2a,
- 0x21, 0xe2, 0xa2, 0xb1, 0x80, 0x6c, 0x12, 0x52, 0x8b, 0x47, 0xf8, 0xb4,
- 0xab, 0x51, 0xd0, 0x87, 0x56, 0x50, 0xf2, 0x25, 0xea, 0xf8, 0xde, 0x85,
- 0x7c, 0xb5, 0x64, 0x6b, 0xab, 0xe2, 0xe6, 0x74, 0x70, 0xa8, 0x47, 0xa6,
- 0xf2, 0xf1, 0x7e, 0x90, 0xce, 0xef, 0xd9, 0x6f, 0xf9, 0xc0, 0xb5, 0xc8,
- 0x8c, 0x9c, 0xed, 0x48, 0x8c, 0xda, 0x92, 0x4b, 0xb9, 0xa0, 0x56, 0xb4,
- 0xb8, 0x85, 0xcf, 0x29, 0x68, 0xf5, 0x6c, 0x19, 0x19, 0x54, 0xf1, 0x24,
- 0x6d, 0x93, 0xb9, 0x2c, 0x3c, 0xc4, 0xa0, 0x3a, 0xd4, 0xac, 0x2a, 0x27,
- 0xf2, 0xe6, 0x14, 0x42, 0x0d, 0xc0, 0x0e, 0xf0, 0xa5, 0x75, 0x7b, 0x2f,
- 0xb6, 0x5c, 0xfa, 0x67, 0xc9, 0x85, 0xb6, 0x06, 0xc4, 0xeb, 0x16, 0x2d,
- 0x0c, 0xb5, 0x27, 0x5d, 0x53, 0x46, 0xd5, 0xdd, 0x47, 0xe4, 0x00, 0xee,
- 0x7f, 0x25, 0xe6, 0x57, 0x30, 0x53, 0x9b, 0xd9, 0x2a, 0x5f, 0x94, 0xcc,
- 0x52, 0x27, 0xf9, 0x5e, 0x52, 0x8c, 0xd0, 0x22, 0x50, 0x75, 0x99, 0xcd,
- 0x98, 0xb7, 0x51, 0x7b, 0x12, 0x44, 0xe9, 0x68, 0xc2, 0x30, 0xa8, 0x1b,
- 0x06, 0xb2, 0x3c, 0xe9, 0x4e, 0x84, 0x71, 0xdf, 0xee, 0x5d, 0xe9, 0x28,
- 0x31, 0x00, 0xbe, 0x8d, 0x8e, 0x78, 0x60, 0x79, 0x33, 0x15, 0x44, 0xd6,
- 0x68, 0x82, 0x48, 0xbb, 0x47, 0xc9, 0x1a, 0x03, 0x97, 0xa8, 0xbc, 0xce,
- 0x35, 0xfa, 0xd5, 0x8b, 0x24, 0xfd, 0x77, 0xac, 0x92, 0x76, 0xd6, 0x89,
- 0x2c, 0xac, 0xcb, 0xd4, 0x74, 0x36, 0x46, 0x39, 0x22, 0x9f, 0x36, 0x29,
- 0x9f, 0xa2, 0xe2, 0x73, 0x54, 0x22, 0x80, 0xa3, 0xbb, 0x8e, 0x2a, 0x62,
- 0xe1, 0x84, 0x1f, 0x9c, 0xa2, 0x1b, 0x50, 0x63, 0x96, 0x6d, 0x21, 0xbc,
- 0x39, 0x16, 0x37, 0x14, 0x05, 0x1e, 0x0f, 0x67, 0xfc, 0xb0, 0xd6, 0xec,
- 0xa2, 0x19, 0x3f, 0x71, 0xfa, 0x1d, 0xf1, 0xb4, 0xc9, 0x7f, 0x73, 0x4f,
- 0x11, 0xb9, 0xdb, 0xd8, 0x51, 0xf4, 0xd2, 0x98, 0xca, 0x83, 0x7e, 0x63,
- 0x9b, 0x06, 0xab, 0x23, 0xf9, 0x58, 0x83, 0x61, 0x5e, 0xea, 0x5f, 0x5d,
- 0x35, 0xd6, 0xc3, 0x2b, 0x28, 0x6d, 0xd4, 0xea, 0xd1, 0x18, 0x1d, 0x61,
- 0x45, 0xda, 0x82, 0x05, 0x5b, 0xf8, 0x54, 0xa4, 0xc8, 0x2f, 0x24, 0xfb,
- 0xd0, 0x75, 0x69, 0x78, 0x80, 0xd5, 0x0e, 0x92, 0x4b, 0xb4, 0x3d, 0x19,
- 0x71, 0xe7, 0x3c, 0xda, 0xc2, 0x40, 0x31, 0xbe, 0x99, 0x28, 0x8c, 0x2d,
- 0x02, 0xfd, 0xf8, 0xef, 0x2d, 0xdf, 0x48, 0x2b, 0x4a, 0xfa, 0xe9, 0x93,
- 0x06, 0xa0, 0x98, 0x76, 0xb0, 0x33, 0xdc, 0xc6, 0x25, 0xf5, 0xf1, 0x1e,
- 0x61, 0x7e, 0x7b, 0x7c, 0xdd, 0xff, 0xdc, 0x5e, 0xa3, 0xf7, 0x7a, 0x3b,
- 0x79, 0x6f, 0x12, 0x08, 0x80, 0xdf, 0xd5, 0xdd, 0x73, 0xb5, 0x59, 0x43,
- 0xd8, 0x4d, 0x57, 0x9c, 0x65, 0x75, 0x1d, 0x1c, 0x20, 0x9e, 0x58, 0x19,
- 0x1c, 0x46, 0x1f, 0xc0, 0xfb, 0x3b, 0xdb, 0x9f, 0x6f, 0x77, 0x83, 0xce,
- 0x42, 0xf4, 0xb2, 0x70, 0xab, 0x71, 0x16, 0x54, 0x64, 0xcd, 0x7d, 0x39,
- 0xae, 0xc0, 0x89, 0xab, 0x1b, 0xcb, 0x3e, 0xdc, 0xae, 0x0b, 0x13, 0x1e,
- 0xdd, 0x5c, 0x7d, 0x1d, 0xea, 0x16, 0x70, 0xd0, 0x78, 0xe6, 0xfb, 0x74,
- 0x4e, 0x47, 0xe7, 0xd9, 0xec, 0x48, 0xe6, 0xf7, 0x51, 0x1e, 0x8d, 0xb5,
- 0x31, 0x9d, 0xc7, 0xb9, 0x0f, 0x42, 0x66, 0xac, 0x0f, 0xee, 0x34, 0x36,
- 0x65, 0x39, 0x7a, 0xa0, 0xd4, 0xd4, 0x37, 0xc4, 0x60, 0x4e, 0x25, 0x5e,
- 0x5a, 0x8a, 0x11, 0x7d, 0x62, 0xa1, 0x29, 0xbc, 0x12, 0x55, 0x23, 0x5b,
- 0x55, 0x65, 0xea, 0x37, 0xf6, 0xd9, 0x6c, 0xec, 0xc3, 0x3c, 0xfd, 0xd9,
- 0xf0, 0xc9, 0x0b, 0xc6, 0x37, 0x90, 0x6a, 0xd1, 0xc1, 0xda, 0x13, 0x47,
- 0x29, 0x18, 0x91, 0x4f, 0xd0, 0x00, 0x34, 0x40, 0x50, 0x56, 0x7f, 0xd5,
- 0x3c, 0xbc, 0xde, 0xb6, 0x68, 0xd5, 0x7e, 0x42, 0xc5, 0x0a, 0xf8, 0x38,
- 0x9b, 0xb9, 0x71, 0x3c, 0x8b, 0x2b, 0x76, 0xf5, 0x0e, 0xe2, 0x74, 0x22,
- 0xf1, 0x19, 0xa8, 0x15, 0x63, 0x32, 0x6c, 0xe7, 0xc2, 0x68, 0xc0, 0x3a,
- 0xf7, 0x60, 0x45, 0xe2, 0x83, 0x20, 0xef, 0x08, 0xe3, 0x7a, 0xe4, 0x0d,
- 0x07, 0x23, 0x54, 0xa5, 0xe5, 0xf2, 0x9d, 0x86, 0xe5, 0xc0, 0x15, 0xe9,
- 0x16, 0xf7, 0x80, 0xbe, 0xcd, 0x47, 0x55, 0x75, 0xbd, 0x4b, 0xf4, 0xb0,
- 0x3b, 0xfc, 0x9c, 0x15, 0x6f, 0x71, 0xa3, 0xac, 0x00, 0xbd, 0x53, 0xa8,
- 0x96, 0x56, 0x6b, 0x27, 0x8b, 0x6c, 0x7e, 0x7e, 0x7e, 0x1c, 0x22, 0x41,
- 0xfc, 0xd5, 0x76, 0xd0, 0x2a, 0x2a, 0xfb, 0xe8, 0x6e, 0x5f, 0x69, 0xb8,
- 0x08, 0x74, 0x3f, 0x2d, 0x73, 0x6d, 0xd1, 0x93, 0x52, 0xa8, 0x31, 0xba,
- 0xc0, 0x82, 0x92, 0xa6, 0x61, 0x38, 0x08, 0xca, 0x7f, 0x6b, 0x54, 0x98,
- 0xd6, 0x46, 0x40, 0xc8, 0x59, 0x58, 0xe8, 0x36, 0x46, 0xf2, 0x6d, 0x41,
- 0x2f, 0x34, 0xeb, 0xa0, 0x6a, 0xb0, 0x65, 0x96, 0x96, 0x24, 0xfe, 0xc3,
- 0x47, 0xe1, 0x27, 0xf7, 0xbf, 0xb8, 0x59, 0x54, 0x39, 0xf6, 0xb5, 0x4e,
- 0x3a, 0xdc, 0xfe, 0x5b, 0xe7, 0xf0, 0xfd, 0x9f, 0x6b, 0x61, 0x93, 0xb4,
- 0x1c, 0xe5, 0x75, 0x99, 0x6a, 0x15, 0x26, 0xad, 0x0c, 0x13, 0xc4, 0x24,
- 0x30, 0x06, 0x01, 0xb2, 0x60, 0xf8, 0xb5, 0x4e, 0x4f, 0x38, 0x71, 0xd6,
- 0xff, 0x85, 0x5e, 0xb5, 0x01, 0x11, 0xb2, 0x11, 0x0b, 0xf3, 0xd5, 0xe1,
- 0x9b, 0x93, 0xb3, 0xc3, 0x26, 0x02, 0x9e, 0x54, 0xa0, 0x40, 0x58, 0x4b,
- 0x7b, 0x74, 0x7f, 0x41, 0x72, 0xa6, 0xc3, 0xed, 0xb1, 0x4a, 0x16, 0xa7,
- 0xdf, 0xbf, 0x0e, 0x7c, 0x8f, 0x56, 0xaf, 0x28, 0x40, 0x56, 0x53, 0x72,
- 0x8a, 0x52, 0x93, 0x89, 0x18, 0x37, 0x3d, 0xfc, 0xb9, 0x1b, 0x9e, 0x80,
- 0x4e, 0x23, 0x34, 0x4a, 0x3a, 0x4b, 0x25, 0x31, 0xac, 0xaa, 0xd8, 0x92,
- 0xe6, 0x9a, 0x8d, 0x82, 0x12, 0x32, 0x86, 0x34, 0x87, 0xbb, 0x47, 0x6f,
- 0x60, 0x8e, 0x7a, 0xe6, 0x40, 0xe8, 0x61, 0xe2, 0x3a, 0xf1, 0xbd, 0x20,
- 0x30, 0x5e, 0xa2, 0xc1, 0xd0, 0x4b, 0x97, 0xed, 0x91, 0x83, 0x49, 0xe5,
- 0x62, 0x15, 0x5e, 0x1d, 0x45, 0xbe, 0xf6, 0x93, 0xbf, 0x48, 0xdd, 0xeb,
- 0x4b, 0xc1, 0xe7, 0xf6, 0xeb, 0xd8, 0x21, 0x45, 0x51, 0xb7, 0x1b, 0x15,
- 0xb1, 0x70, 0x3f, 0x52, 0xb7, 0x6c, 0x3a, 0xe0, 0xde, 0x1f, 0x7b, 0x89,
- 0x5a, 0x8d, 0x70, 0x1b, 0x49, 0xaa, 0xe7, 0x8a, 0xb4, 0x5d, 0x44, 0x21,
- 0x0b, 0xf0, 0xc8, 0xe6, 0x63, 0x01, 0x7c, 0x36, 0x6b, 0xab, 0x3e, 0xd1,
- 0x1d, 0x32, 0x61, 0xf5, 0x69, 0xcd, 0x3f, 0x69, 0x05, 0x57, 0xf5, 0x26,
- 0xb0, 0x46, 0xfa, 0x01, 0x38, 0x3a, 0x22, 0x78, 0x22, 0xae, 0x14, 0x86,
- 0x6e, 0xa1, 0x34, 0x89, 0x16, 0x9a, 0xfb, 0xb3, 0x65, 0xf8, 0x02, 0x26,
- 0xaf, 0xba, 0x9f, 0xd7, 0x08, 0x24, 0x11, 0x0f, 0x5e, 0x51, 0x22, 0xf4,
- 0x26, 0x26, 0x63, 0x4f, 0xb7, 0x15, 0x4c, 0xdc, 0x2f, 0x9e, 0xbd, 0xe0,
- 0x63, 0x87, 0xf8, 0x34, 0x45, 0xe1, 0xd0, 0xbc, 0x25, 0x14, 0xd9, 0xd0,
- 0x11, 0x9b, 0xc5, 0x38, 0x82, 0x94, 0xd2, 0xed, 0x37, 0x6b, 0xe8, 0x28,
- 0x63, 0x48, 0x0f, 0x90, 0xe8, 0x79, 0xd0, 0xd4, 0x70, 0xa5, 0xbe, 0xbf,
- 0x2a, 0xca, 0x0b, 0x37, 0x8b, 0x16, 0xd2, 0xa2, 0x5d, 0x48, 0x6f, 0x34,
- 0xf3, 0x52, 0xcf, 0x83, 0xb4, 0xdb, 0xd8, 0xfd, 0x55, 0xa3, 0x53, 0x72,
- 0xe0, 0x90, 0x61, 0x22, 0x4c, 0x76, 0x1a, 0x6f, 0xfc, 0x61, 0xd3, 0xa1,
- 0xa5, 0x69, 0x21, 0x0a, 0xc6, 0x41, 0x5e, 0x66, 0x0d, 0x8c, 0xc7, 0x55,
- 0xcd, 0x5d, 0x82, 0x61, 0xd1, 0xea, 0xb5, 0x13, 0x73, 0xc5, 0x61, 0x5a,
- 0x17, 0x0b, 0x16, 0x66, 0x84, 0xcf, 0xea, 0xde, 0xc7, 0x7e, 0x7f, 0x9e,
- 0x03, 0x72, 0xc0, 0x46, 0x52, 0x0f, 0xc3, 0xe4, 0x05, 0x12, 0x86, 0xe7,
- 0x88, 0xe5, 0x52, 0x5a, 0xd4, 0x3b, 0x12, 0xd1, 0x2c, 0x34, 0x57, 0xb6,
- 0x2d, 0x77, 0xb0, 0x26, 0xe1, 0x83, 0xc1, 0x69, 0xd4, 0x3b, 0xa2, 0x55,
- 0xc4, 0x14, 0xa7, 0x59, 0x19, 0x9e, 0xe3, 0x66, 0x6f, 0x62, 0x84, 0x0a,
- 0x16, 0x2a, 0x2a, 0x03, 0xe5, 0x45, 0xdb, 0x5c, 0xd6, 0x8f, 0x34, 0x81,
- 0x41, 0x55, 0xdf, 0x8b, 0xc1, 0x29, 0x9b, 0x31, 0xec, 0x11, 0x6a, 0xd7,
- 0x23, 0xac, 0x51, 0xeb, 0xb5, 0x21, 0x15, 0x32, 0x22, 0x60, 0x4e, 0x8d,
- 0x04, 0xcc, 0xc7, 0x1b, 0xe7, 0xf9, 0x50, 0x33, 0xae, 0x54, 0x20, 0xbb,
- 0x44, 0x66, 0xa4, 0x83, 0x68, 0x93, 0xd5, 0xf9, 0xab, 0x71, 0xd9, 0x4e,
- 0x8a, 0x8b, 0x21, 0xb6, 0xae, 0xaf, 0xca, 0x85, 0x60, 0xe4, 0x74, 0x01,
- 0xf8, 0x04, 0x82, 0xa4, 0x3c, 0x69, 0xbc, 0x02, 0x85, 0x62, 0xa1, 0x91,
- 0xe0, 0xd5, 0xa3, 0xd7, 0x0d, 0x58, 0x35, 0x49, 0xb2, 0xa0, 0x9d, 0xee,
- 0x6e, 0xce, 0x27, 0x19, 0x48, 0xec, 0x9d, 0xbf, 0x4f, 0x5c, 0x6b, 0x5e,
- 0x6e, 0x1e, 0xdd, 0xfb, 0x6f, 0xba, 0x9b, 0xd3, 0x36, 0xc4, 0xe9, 0x23,
- 0x2d, 0x58, 0xb3, 0xa0, 0x15, 0x03, 0xa3, 0x66, 0x6a, 0x60, 0x3c, 0x51,
- 0xeb, 0x24, 0x0e, 0x9d, 0xbd, 0x9e, 0x15, 0x13, 0x09, 0xeb, 0x7a, 0x6c,
- 0x2d, 0xf8, 0x41, 0x5b, 0x0b, 0x35, 0xa3, 0x57, 0xe1, 0xbc, 0xd0, 0x08,
- 0x51, 0x29, 0x53, 0x9e, 0xf2, 0x81, 0xee, 0xe6, 0xfc, 0x44, 0xa5, 0x5c,
- 0x29, 0x37, 0x8f, 0x97, 0xc3, 0x29, 0xcc, 0x93, 0x62, 0x5c, 0x07, 0x33,
- 0xe0, 0x07, 0xba, 0x9b, 0xb3, 0x10, 0x92, 0x68, 0x66, 0x6c, 0x52, 0x45,
- 0xe0, 0xf9, 0x63, 0x33, 0xe3, 0x07, 0xa3, 0x5d, 0xa6, 0x0f, 0x85, 0x87,
- 0xb7, 0xb6, 0x58, 0x36, 0x67, 0x45, 0x84, 0x53, 0x63, 0x83, 0x6d, 0x87,
- 0x31, 0x86, 0xae, 0x0d, 0xd6, 0x38, 0xfa, 0x98, 0x91, 0x7b, 0xc4, 0x41,
- 0x59, 0x1d, 0xf7, 0xe0, 0xca, 0x0d, 0xd6, 0x3e, 0xa2, 0x55, 0x98, 0xce,
- 0xb5, 0xf0, 0xcd, 0x07, 0x81, 0x74, 0x61, 0x78, 0xd9, 0xfa, 0xc3, 0xc3,
- 0x0b, 0x32, 0x9d, 0x5b, 0x35, 0x3e, 0x20, 0x87, 0x39, 0x5e, 0xa1, 0x19,
- 0x53, 0x69, 0xb3, 0x4e, 0x9f, 0xa2, 0xc1, 0xad, 0x20, 0x7b, 0xdf, 0x5f,
- 0xe2, 0xeb, 0x9e, 0xd1, 0x35, 0x9a, 0x0b, 0x9c, 0xbc, 0xe3, 0x31, 0xc1,
- 0x18, 0xbb, 0xca, 0x63, 0x05, 0x39, 0x9d, 0xd1, 0x14, 0x67, 0x37, 0x6c,
- 0x43, 0x75, 0xa2, 0xc1, 0x87, 0xd5, 0x11, 0x71, 0x20, 0x34, 0x3c, 0x6d,
- 0xbb, 0x2d, 0x53, 0x32, 0x37, 0xa7, 0x4f, 0xac, 0xf1, 0xc7, 0xf9, 0x01,
- 0x3a, 0x6e, 0x76, 0xe9, 0xce, 0x64, 0x7b, 0x7c, 0x8b, 0xbb, 0x89, 0x75,
- 0xce, 0xbf, 0x5a, 0xd7, 0x61, 0x51, 0x7a, 0x07, 0xc9, 0xc3, 0xa2, 0xab,
- 0x34, 0x76, 0x69, 0xc9, 0x47, 0x2b, 0x96, 0xa2, 0x3b, 0x23, 0x28, 0xea,
- 0xbc, 0x84, 0x39, 0xc3, 0x8a, 0x1f, 0xc9, 0x76, 0xac, 0x5e, 0x1c, 0x7d,
- 0xda, 0x0f, 0x51, 0xf8, 0x7b, 0x08, 0x4b, 0xe9, 0xd7, 0xc8, 0x8e, 0xc3,
- 0x03, 0x0c, 0x4f, 0xbb, 0x6d, 0xb3, 0xbc, 0x49, 0xc6, 0xa5, 0x40, 0x85,
- 0x16, 0x90, 0x35, 0xf6, 0xf8, 0xc9, 0x92, 0x91, 0xaf, 0x5c, 0xe3, 0x72,
- 0xf6, 0xc8, 0x21, 0xa7, 0x07, 0xfc, 0xac, 0x38, 0x66, 0x3c, 0x98, 0x55,
- 0x74, 0x2e, 0x65, 0xae, 0x8b, 0x15, 0x2b, 0xbf, 0x6a, 0x04, 0x0d, 0x2a,
- 0x5c, 0x3d, 0x12, 0x7d, 0xb2, 0x73, 0x38, 0x7e, 0x71, 0xd9, 0xe1, 0x76,
- 0xef, 0x47, 0xd6, 0xdd, 0x9c, 0x0e, 0xd7, 0xbf, 0xa5, 0xcb, 0xd3, 0x77,
- 0x38, 0x49, 0x6a, 0x3a, 0x61, 0xad, 0x39, 0xa6, 0x0d, 0x3b, 0xe0, 0xbf,
- 0x88, 0x41, 0xb0, 0xb6, 0x36, 0x0d, 0x0e, 0xe1, 0xa0, 0x44, 0x52, 0x19,
- 0x8c, 0x60, 0x2f, 0xf1, 0xa3, 0x33, 0x7b, 0x66, 0xcb, 0x34, 0xac, 0x2d,
- 0x86, 0xa5, 0xe4, 0x10, 0x6b, 0xf8, 0xb7, 0x99, 0x9b, 0x30, 0xc8, 0xb8,
- 0x46, 0x18, 0x6e, 0x70, 0xcc, 0xaa, 0x24, 0x4b, 0xa0, 0x54, 0x1f, 0xa7,
- 0xeb, 0x46, 0x97, 0x3a, 0x2d, 0xcd, 0xa6, 0xe5, 0x01, 0xa6, 0x62, 0xd8,
- 0xdc, 0xda, 0x19, 0xee, 0xf4, 0x93, 0xa6, 0x4e, 0x66, 0xc2, 0x75, 0x51,
- 0xba, 0x6c, 0x48, 0xee, 0xba, 0x6d, 0x67, 0x38, 0xe3, 0x8e, 0x2b, 0x93,
- 0x33, 0x3d, 0x29, 0x20, 0x10, 0xc1, 0x0b, 0xf2, 0x8c, 0x15, 0x1e, 0x2d,
- 0xe0, 0xf6, 0xe0, 0xe9, 0x8b, 0x17, 0x8d, 0x2b, 0x2d, 0xd4, 0x9c, 0x9f,
- 0x6d, 0x6f, 0x0b, 0x80, 0x7a, 0xfb, 0x35, 0xfa, 0x62, 0xf0, 0x02, 0x2f,
- 0x36, 0x5f, 0x93, 0xe2, 0x1d, 0xab, 0xdf, 0x1b, 0xf0, 0x37, 0x1d, 0xdd,
- 0xc1, 0x9e, 0xb2, 0xf2, 0xad, 0x17, 0xdc, 0x5d, 0xc7, 0x5b, 0x78, 0x58,
- 0x96, 0xb1, 0xb8, 0xbc, 0xe4, 0x70, 0x3b, 0x7e, 0x12, 0x9c, 0x9f, 0x44,
- 0xc1, 0xbb, 0xb4, 0x9c, 0xc4, 0xd3, 0xdd, 0xee, 0x0f, 0x76, 0x56, 0x4d,
- 0x17, 0x36, 0x01, 0x1e, 0x09, 0xf6, 0x93, 0x35, 0x28, 0x12, 0x9e, 0x37,
- 0xbe, 0xd9, 0xec, 0x9a, 0xfd, 0x67, 0xdb, 0xdb, 0xfd, 0xe7, 0xfc, 0xf3,
- 0xc5, 0x8b, 0x95, 0x9e, 0x54, 0xdf, 0xc7, 0x13, 0x9b, 0x5a, 0x63, 0xb4,
- 0xd4, 0x4e, 0x47, 0xeb, 0x3b, 0xd4, 0xea, 0xce, 0x8b, 0x17, 0x7d, 0xee,
- 0xe5, 0xd9, 0x27, 0xb5, 0x5e, 0xdf, 0x15, 0xde, 0xb2, 0xc5, 0xaf, 0x7b,
- 0x7a, 0xac, 0xba, 0x67, 0xc0, 0x4a, 0xc1, 0x2b, 0x80, 0xcb, 0x07, 0xf6,
- 0x1e, 0x9f, 0xe5, 0x11, 0x06, 0xe3, 0x23, 0xaa, 0x65, 0x01, 0x3c, 0x10,
- 0x28, 0x9a, 0xac, 0xb5, 0xc4, 0x40, 0x05, 0x48, 0x0e, 0x32, 0x1f, 0x54,
- 0x94, 0x8f, 0x29, 0xb9, 0xb8, 0x93, 0xfc, 0x2a, 0xaf, 0x3d, 0x7e, 0x48,
- 0x95, 0x6c, 0x10, 0x11, 0x6d, 0xc2, 0xa4, 0x20, 0x90, 0xe8, 0xea, 0x9a,
- 0xef, 0x21, 0x04, 0x58, 0x90, 0x0d, 0x7b, 0xac, 0x62, 0xf4, 0xa2, 0xd8,
- 0x8d, 0x6c, 0x3a, 0x71, 0xc9, 0x97, 0xf2, 0xf8, 0x00, 0x0f, 0xea, 0x21,
- 0x84, 0x7a, 0x28, 0x58, 0x9a, 0x29, 0x02, 0x8a, 0xa4, 0x6b, 0xed, 0x3b,
- 0x1a, 0xbd, 0xc4, 0x52, 0x88, 0x95, 0xde, 0x12, 0xe1, 0x24, 0xe8, 0xd7,
- 0xaf, 0x43, 0xaf, 0x6a, 0x23, 0xac, 0x72, 0x5d, 0x23, 0xde, 0x83, 0x28,
- 0x92, 0x49, 0x2c, 0xbe, 0x93, 0xcc, 0x4a, 0xa0, 0x35, 0x0a, 0xdf, 0xf6,
- 0x2a, 0xb5, 0xf7, 0x2c, 0xcb, 0xd5, 0xb5, 0x47, 0x34, 0x5d, 0x00, 0x4e,
- 0x78, 0x56, 0x82, 0xef, 0x52, 0x4b, 0x07, 0x43, 0x1a, 0xa8, 0xf1, 0x0b,
- 0x57, 0xdb, 0x58, 0xd3, 0xaf, 0x90, 0xf0, 0x19, 0x19, 0xd2, 0xd8, 0x1a,
- 0x60, 0xf5, 0xea, 0xd4, 0x9b, 0x6f, 0xf5, 0x6d, 0xd3, 0xda, 0xa7, 0xc1,
- 0x59, 0xb0, 0x38, 0xed, 0xb7, 0x54, 0x1f, 0x94, 0x25, 0x88, 0xab, 0x0d,
- 0xf5, 0x82, 0xb2, 0xe2, 0x57, 0x59, 0x1d, 0x54, 0xe6, 0x31, 0x68, 0x82,
- 0x38, 0x8e, 0x42, 0x31, 0xfd, 0xc1, 0xd4, 0x64, 0x8b, 0x7c, 0x75, 0x3d,
- 0x67, 0xa9, 0x10, 0x93, 0xba, 0xdc, 0xba, 0x0a, 0xb3, 0xa9, 0x7b, 0x1b,
- 0xc5, 0xdd, 0xf2, 0x56, 0xeb, 0x2e, 0x13, 0x31, 0x07, 0xa1, 0x3e, 0x20,
- 0xd2, 0xc0, 0xf0, 0x60, 0x75, 0xb1, 0x0a, 0x09, 0x5b, 0xd9, 0x1c, 0x76,
- 0x18, 0x09, 0x50, 0x1e, 0x06, 0xbb, 0xe5, 0x4c, 0x73, 0xd9, 0xc7, 0x1a,
- 0xb5, 0xec, 0x30, 0x72, 0xbb, 0xe6, 0xce, 0x8f, 0xfe, 0xf7, 0xe1, 0x6f,
- 0x98, 0xc7, 0x79, 0x16, 0xa4, 0x36, 0xf3, 0x6b, 0x5d, 0x99, 0x5b, 0x01,
- 0x68, 0x7b, 0xab, 0x3e, 0x6e, 0xb0, 0x7d, 0x20, 0x2e, 0xa4, 0xd2, 0xeb,
- 0x6a, 0x76, 0x55, 0x0f, 0xa2, 0x85, 0x9d, 0x2d, 0x82, 0x20, 0x7a, 0x73,
- 0xab, 0x8a, 0x2d, 0xd9, 0x23, 0x05, 0x8b, 0x19, 0x36, 0xf5, 0xc1, 0x50,
- 0x5a, 0xa6, 0xb8, 0x2d, 0xa4, 0xfb, 0x5c, 0x7d, 0xa1, 0x09, 0xae, 0xec,
- 0x8c, 0x74, 0x78, 0x5e, 0x00, 0xee, 0x2b, 0x34, 0xfe, 0xf3, 0x0d, 0x4f,
- 0xba, 0x2e, 0x1e, 0xef, 0xc4, 0xd2, 0x10, 0xe8, 0xac, 0x30, 0x01, 0xd9,
- 0x09, 0x59, 0x32, 0xc3, 0x69, 0x66, 0x30, 0x3f, 0x70, 0x2d, 0x86, 0x35,
- 0xcc, 0x3a, 0x92, 0x98, 0x2a, 0x12, 0x24, 0x80, 0x0c, 0xca, 0x68, 0x6c,
- 0xd2, 0x79, 0x02, 0x58, 0x4e, 0x83, 0xc5, 0x11, 0x84, 0xcf, 0x2a, 0xa8,
- 0x0d, 0xad, 0x66, 0x3b, 0x79, 0xb8, 0x6d, 0x7e, 0x04, 0x58, 0x0d, 0xac,
- 0x16, 0x0c, 0x6a, 0xe2, 0x93, 0x40, 0xaa, 0xb8, 0x60, 0x52, 0x76, 0x35,
- 0x19, 0xa8, 0x30, 0xd6, 0x3c, 0xee, 0xbc, 0x0a, 0x77, 0x2e, 0x2a, 0x33,
- 0xd8, 0xdd, 0x3c, 0x08, 0x16, 0x4a, 0xa7, 0x6a, 0x0e, 0x61, 0x40, 0x43,
- 0xb8, 0x51, 0x5c, 0x2a, 0x3b, 0x4c, 0x73, 0xf3, 0x98, 0x97, 0xb1, 0x55,
- 0x12, 0xd0, 0x46, 0xae, 0x2e, 0x09, 0x52, 0xd6, 0x91, 0x54, 0x29, 0x41,
- 0x9d, 0x76, 0x78, 0x1d, 0x9c, 0xe2, 0x0c, 0x8e, 0x03, 0x60, 0xe7, 0xb4,
- 0x8f, 0x06, 0xf5, 0x5b, 0xf3, 0xd2, 0xf5, 0x69, 0x25, 0xee, 0xa2, 0x22,
- 0x9d, 0x8d, 0x80, 0x82, 0x20, 0x2b, 0x9f, 0xe3, 0x98, 0x1e, 0x8a, 0x80,
- 0xb9, 0x16, 0x89, 0xa5, 0xe1, 0xb0, 0x17, 0xef, 0x02, 0xaf, 0x29, 0x4f,
- 0xda, 0x61, 0x21, 0x54, 0xdd, 0x16, 0xe0, 0x49, 0x96, 0x1a, 0xae, 0x0c,
- 0xed, 0x29, 0x51, 0x6a, 0x8c, 0x0c, 0x70, 0x97, 0x95, 0x99, 0xc7, 0x58,
- 0x46, 0xb8, 0x20, 0x9d, 0xbe, 0x61, 0x72, 0x5e, 0xd0, 0xf3, 0x1d, 0x45,
- 0xd4, 0x2c, 0x29, 0xaa, 0x81, 0xbb, 0x8a, 0xf1, 0xf8, 0x2a, 0xe7, 0x9c,
- 0x40, 0x20, 0x86, 0xe5, 0xe6, 0x7c, 0x3b, 0xa0, 0xda, 0x60, 0x01, 0xa6,
- 0x81, 0x0b, 0x62, 0x21, 0xaf, 0xa0, 0xa4, 0xef, 0xc2, 0x88, 0xc9, 0x2c,
- 0x67, 0x7d, 0x50, 0x24, 0x03, 0x14, 0x8d, 0x00, 0x8a, 0x5c, 0xd0, 0xdc,
- 0x43, 0xd9, 0x9e, 0x3b, 0x2f, 0x9a, 0x41, 0x9d, 0x5c, 0xc7, 0x6f, 0x4a,
- 0x42, 0xe8, 0x4b, 0x76, 0x6b, 0xc2, 0xab, 0xb9, 0xb7, 0x22, 0x31, 0xf0,
- 0xd4, 0xa1, 0x22, 0x8e, 0x69, 0x08, 0x9c, 0xcc, 0xa2, 0x09, 0x50, 0x32,
- 0x47, 0x3f, 0x49, 0xc9, 0xca, 0x12, 0x5a, 0x11, 0x9e, 0xbc, 0x48, 0xf3,
- 0x28, 0xc1, 0x25, 0x40, 0xb1, 0xb5, 0xa9, 0xb1, 0x04, 0xea, 0xca, 0x98,
- 0x6b, 0xd5, 0x6e, 0x89, 0x05, 0xde, 0xa8, 0x36, 0x0d, 0xae, 0x77, 0x85,
- 0x3e, 0xd0, 0x48, 0xb2, 0xd3, 0xca, 0x13, 0xb0, 0x61, 0xb8, 0x3a, 0xa6,
- 0x73, 0x4b, 0xd8, 0xd0, 0x29, 0x4f, 0x82, 0x4a, 0x27, 0x51, 0x00, 0x99,
- 0xd5, 0x69, 0x1a, 0x0a, 0x5c, 0x06, 0x9f, 0x7f, 0x3e, 0x58, 0xd4, 0x7f,
- 0x21, 0x59, 0xcc, 0x5b, 0x59, 0x3d, 0xde, 0x12, 0xbc, 0x34, 0x90, 0xf8,
- 0x1c, 0x18, 0xb2, 0x4e, 0xeb, 0x68, 0xe7, 0x1a, 0xc5, 0x8e, 0x23, 0x31,
- 0x6b, 0x04, 0x25, 0x1c, 0x83, 0x24, 0x3f, 0x70, 0x54, 0xf3, 0x0d, 0x77,
- 0x18, 0x7e, 0x2f, 0x0d, 0x7b, 0x2c, 0x58, 0x74, 0xe7, 0x44, 0x35, 0x4c,
- 0xb2, 0xc6, 0x3d, 0xc1, 0xaf, 0xf8, 0xb2, 0xa1, 0x1d, 0xd4, 0x3b, 0xcf,
- 0x82, 0x5b, 0xc7, 0xc5, 0x3a, 0x36, 0x11, 0x47, 0x1d, 0x2e, 0x66, 0xb0,
- 0xf1, 0x5d, 0x26, 0x7d, 0x3e, 0x3d, 0x18, 0x81, 0x04, 0x2e, 0x1a, 0xe6,
- 0x07, 0xa0, 0x97, 0x1e, 0x41, 0x15, 0x35, 0x54, 0x06, 0x0d, 0x6f, 0xf3,
- 0xa0, 0x15, 0x6c, 0xcd, 0x9e, 0xe8, 0x27, 0x2e, 0xeb, 0xaf, 0x23, 0xf2,
- 0x4f, 0x37, 0xf7, 0xe1, 0xe8, 0xad, 0x9d, 0xe1, 0x93, 0xe6, 0x19, 0x60,
- 0x4d, 0xb3, 0xab, 0x82, 0x0a, 0x04, 0x40, 0x70, 0x42, 0x14, 0x7d, 0x41,
- 0x70, 0x9e, 0x24, 0xaa, 0xb1, 0xe5, 0x22, 0xb3, 0x38, 0x2d, 0x44, 0x7c,
- 0x08, 0x46, 0x0e, 0x73, 0x1b, 0x2d, 0x35, 0x13, 0x23, 0x7c, 0x06, 0x7e,
- 0x29, 0x16, 0x27, 0xad, 0x94, 0x53, 0xa9, 0xe1, 0xae, 0x5e, 0xd7, 0x92,
- 0x39, 0xab, 0x45, 0x9a, 0x78, 0x19, 0x1f, 0x95, 0xe5, 0x62, 0x18, 0xd7,
- 0x77, 0x71, 0x01, 0x7b, 0xfa, 0x2e, 0x75, 0xbf, 0x1d, 0x66, 0xd4, 0x42,
- 0xb2, 0xd3, 0x50, 0xea, 0xca, 0x8a, 0x33, 0x5a, 0xb4, 0x53, 0xc4, 0x13,
- 0xc1, 0x4a, 0xb9, 0xb6, 0xc6, 0x85, 0x9b, 0xb2, 0xce, 0x59, 0xd3, 0xdb,
- 0x04, 0x32, 0x6f, 0x8f, 0x17, 0x45, 0x0a, 0xf8, 0xf5, 0xcd, 0xc7, 0xf0,
- 0xf4, 0xe3, 0xc7, 0x78, 0x27, 0x44, 0xdc, 0x05, 0x00, 0x2a, 0xf3, 0x08,
- 0x75, 0xf9, 0x3f, 0xfb, 0xf8, 0xb1, 0xf9, 0xe5, 0x03, 0x65, 0xd7, 0x59,
- 0x76, 0x40, 0x7d, 0xb9, 0xba, 0xd0, 0x95, 0x4a, 0x83, 0x55, 0x34, 0xac,
- 0x6d, 0x05, 0x23, 0xbd, 0x4b, 0x25, 0x7c, 0x38, 0xf6, 0x31, 0x41, 0xab,
- 0x14, 0x8e, 0x54, 0x5f, 0x67, 0xfe, 0x9a, 0x60, 0x84, 0xb7, 0x6b, 0x3a,
- 0x95, 0x52, 0x19, 0x4d, 0x89, 0xde, 0x55, 0x62, 0x5f, 0x6a, 0x22, 0x64,
- 0x3b, 0x2e, 0x27, 0x95, 0x6a, 0xb3, 0x28, 0xfe, 0xb0, 0x9c, 0xd7, 0x39,
- 0xb2, 0xb3, 0x50, 0x71, 0x93, 0x5e, 0xdf, 0xa1, 0xf5, 0xcf, 0xe7, 0x4b,
- 0xd6, 0xd5, 0x64, 0xb5, 0xd1, 0xa1, 0x2b, 0xfe, 0xd6, 0xb5, 0xec, 0xd3,
- 0xf4, 0x3e, 0x71, 0x11, 0x1a, 0x56, 0x8c, 0x21, 0x40, 0x1b, 0xc2, 0xb8,
- 0x04, 0xda, 0xd3, 0xb2, 0x29, 0xb1, 0x16, 0x03, 0xbc, 0xda, 0x71, 0x98,
- 0xdd, 0x1d, 0xa4, 0xe2, 0x7b, 0xf6, 0x91, 0x16, 0x5b, 0x62, 0x5d, 0x25,
- 0x1f, 0x9a, 0x14, 0x48, 0xbe, 0x65, 0xae, 0x8a, 0x92, 0x36, 0x74, 0xa6,
- 0x52, 0x87, 0x44, 0xed, 0x46, 0xe1, 0x1f, 0xd2, 0x95, 0x2b, 0xc5, 0x29,
- 0x11, 0xd4, 0xa8, 0xc1, 0x23, 0x5e, 0xc7, 0xa2, 0x56, 0x39, 0xd5, 0xca,
- 0x07, 0x61, 0x75, 0x6d, 0xd4, 0x0f, 0x5d, 0x45, 0xbb, 0xe1, 0x31, 0xfc,
- 0xc7, 0x67, 0x05, 0x06, 0x6b, 0xf4, 0x40, 0x01, 0x51, 0x13, 0x80, 0xab,
- 0x69, 0x96, 0x2d, 0x34, 0x3e, 0x66, 0x86, 0x1a, 0xd3, 0x7a, 0x0e, 0xed,
- 0x18, 0x8a, 0x08, 0xa0, 0x54, 0xa8, 0xe1, 0x5b, 0xab, 0x0e, 0xb8, 0xde,
- 0xde, 0xec, 0xd1, 0xf2, 0xe8, 0x12, 0x69, 0x12, 0xb0, 0x12, 0x3d, 0x57,
- 0x1b, 0x79, 0x1d, 0x8a, 0x33, 0xdd, 0x27, 0xd2, 0x6d, 0x99, 0xae, 0xb2,
- 0x6e, 0x9b, 0x23, 0x19, 0x5d, 0xeb, 0xcd, 0x61, 0x43, 0x4a, 0x8a, 0x61,
- 0x52, 0x44, 0x53, 0x82, 0x3c, 0x08, 0xf3, 0xe3, 0x15, 0x04, 0x1f, 0x65,
- 0x7f, 0x88, 0xaa, 0x96, 0xc2, 0xcd, 0x88, 0x48, 0x08, 0xea, 0xf6, 0xca,
- 0x12, 0x46, 0xac, 0x16, 0x99, 0x0f, 0x2d, 0x35, 0xc2, 0x94, 0x7f, 0x1b,
- 0xb9, 0xa7, 0x36, 0x1e, 0xfb, 0xd0, 0x53, 0x40, 0x8c, 0xa3, 0xf1, 0xcf,
- 0x22, 0x88, 0x47, 0x8b, 0xca, 0x8a, 0x89, 0x52, 0xb6, 0x99, 0x1f, 0xd4,
- 0xf8, 0x2c, 0x0e, 0x0c, 0xe6, 0x09, 0x79, 0x87, 0xbb, 0xb0, 0x1d, 0xb7,
- 0xe7, 0xaa, 0x42, 0x45, 0xe6, 0x35, 0xe5, 0x2b, 0x36, 0x2a, 0x60, 0x48,
- 0xa5, 0x3c, 0x0d, 0x86, 0x78, 0xd9, 0x60, 0x90, 0x42, 0x1d, 0xda, 0x26,
- 0x7f, 0x3c, 0x2d, 0x38, 0x54, 0xbd, 0x72, 0xe5, 0x65, 0xca, 0x08, 0x94,
- 0x09, 0xe5, 0x32, 0x84, 0xdd, 0x4c, 0x3a, 0x2a, 0xe4, 0xbd, 0x2b, 0x18,
- 0x20, 0xc1, 0xd5, 0xc0, 0x71, 0xed, 0xe8, 0x9b, 0x11, 0x97, 0xb6, 0x76,
- 0xb4, 0xb2, 0x56, 0xbf, 0x09, 0xe4, 0xa3, 0x83, 0x06, 0xf4, 0x85, 0x60,
- 0x91, 0x5e, 0x1b, 0x9c, 0x3d, 0xdf, 0x71, 0x1d, 0x25, 0x6f, 0xe5, 0x72,
- 0x63, 0x87, 0x28, 0xa2, 0x29, 0x78, 0x3e, 0x1d, 0xe5, 0xfc, 0xb0, 0x03,
- 0xd4, 0x48, 0x5e, 0x4c, 0x10, 0x87, 0x21, 0x1c, 0x25, 0x2a, 0x36, 0x2d,
- 0x39, 0xd0, 0x3a, 0x9a, 0x5e, 0xe5, 0xaa, 0x99, 0xf1, 0xeb, 0x52, 0x66,
- 0x08, 0xa5, 0x82, 0x83, 0x5a, 0xc1, 0xc3, 0x44, 0x0b, 0x9f, 0xd5, 0x71,
- 0xe9, 0x64, 0x8f, 0x0b, 0x04, 0xda, 0xd5, 0x9c, 0x60, 0xab, 0x45, 0xeb,
- 0x18, 0xed, 0x3f, 0x91, 0x49, 0x55, 0xa8, 0x8e, 0x9e, 0x4f, 0xe3, 0x94,
- 0x93, 0x73, 0x7c, 0x28, 0xba, 0xd8, 0x5f, 0x97, 0x39, 0x4a, 0xb9, 0x01,
- 0x13, 0xe3, 0x75, 0xc1, 0xfb, 0x5f, 0x69, 0xf0, 0xfa, 0x15, 0x24, 0x31,
- 0x0d, 0x4f, 0x2a, 0x95, 0xab, 0x50, 0xf7, 0x91, 0x0a, 0xcb, 0x30, 0xda,
- 0x43, 0x2b, 0x6c, 0x83, 0x92, 0x06, 0x33, 0xba, 0xa4, 0x86, 0x0e, 0x9a,
- 0x9f, 0x18, 0x42, 0x47, 0xd5, 0x0a, 0x85, 0x0c, 0xaa, 0x6e, 0x62, 0x09,
- 0xb4, 0xdf, 0x48, 0xa0, 0x40, 0x30, 0x80, 0x3a, 0x37, 0x6a, 0x4e, 0xc9,
- 0x21, 0xcd, 0x6f, 0x4b, 0x30, 0xfc, 0xe8, 0x8e, 0x9c, 0x2a, 0x9c, 0x84,
- 0x8b, 0xcd, 0x6f, 0x93, 0x4d, 0x23, 0x32, 0xb5, 0x4a, 0xab, 0xe9, 0x20,
- 0x6f, 0x13, 0xbe, 0xe0, 0xd3, 0xba, 0xd0, 0x1f, 0x2f, 0x42, 0x20, 0xa3,
- 0xef, 0x7c, 0x9f, 0x34, 0xe9, 0x18, 0xb4, 0xf6, 0x21, 0x76, 0xf3, 0x64,
- 0xa7, 0xa9, 0x0a, 0xfd, 0xe3, 0x42, 0x61, 0xcd, 0x5c, 0xc7, 0xe7, 0x50,
- 0x50, 0xe6, 0x58, 0xd5, 0xef, 0xc6, 0xa4, 0x0f, 0x83, 0x5d, 0x1b, 0x91,
- 0xcc, 0xf1, 0x98, 0x2c, 0x94, 0x35, 0xd1, 0x60, 0x56, 0x48, 0xc9, 0x5d,
- 0xc1, 0xae, 0x5b, 0x62, 0xd8, 0xfb, 0x94, 0xe8, 0xd6, 0x73, 0x10, 0x20,
- 0x11, 0xd3, 0x00, 0xa4, 0xb3, 0xca, 0x68, 0xa4, 0x40, 0x11, 0x95, 0x1c,
- 0x6d, 0x5f, 0x1b, 0x89, 0xa9, 0x50, 0x72, 0x0b, 0x4c, 0x4c, 0x04, 0x60,
- 0xbb, 0x60, 0xf7, 0xe7, 0x75, 0x47, 0x25, 0xa7, 0x46, 0x80, 0x7c, 0x55,
- 0x4d, 0x25, 0xf4, 0xac, 0x9f, 0x28, 0x74, 0x9c, 0x56, 0x27, 0x16, 0x04,
- 0xb9, 0x8b, 0xf2, 0xde, 0x82, 0x4c, 0x19, 0x64, 0xe0, 0xe2, 0xf8, 0x3c,
- 0x44, 0xd0, 0x50, 0xa3, 0x49, 0xcc, 0x6f, 0x39, 0xdb, 0x54, 0x34, 0x06,
- 0x18, 0x6f, 0x51, 0x15, 0x3d, 0x7c, 0xc3, 0xd5, 0x45, 0x17, 0x0b, 0xb5,
- 0x55, 0x20, 0x52, 0x13, 0x62, 0xfb, 0x1c, 0x4a, 0xc7, 0xc3, 0x10, 0x54,
- 0x53, 0x00, 0x33, 0x68, 0xf0, 0x03, 0x03, 0xf2, 0x60, 0xd6, 0x88, 0xe9,
- 0x10, 0x27, 0xff, 0xab, 0x48, 0x40, 0xa2, 0xf8, 0x0c, 0x22, 0xdb, 0x4f,
- 0x9d, 0x30, 0x3a, 0xf1, 0x14, 0xf6, 0xe7, 0x6c, 0x3e, 0x2e, 0xef, 0x1b,
- 0xe0, 0xb7, 0x93, 0x4f, 0x28, 0xdb, 0x19, 0xd2, 0x1f, 0xe3, 0x2c, 0x33,
- 0x23, 0xe6, 0xe2, 0x02, 0x5a, 0xc9, 0x95, 0x3e, 0x71, 0x03, 0x0c, 0xe8,
- 0x1f, 0x37, 0xec, 0x0e, 0x76, 0xbf, 0xdd, 0x1c, 0xd7, 0x7e, 0x31, 0xa9,
- 0x41, 0x28, 0x0d, 0x7a, 0x98, 0xb0, 0x04, 0xa7, 0x42, 0xba, 0x82, 0xf7,
- 0xa3, 0x4c, 0x5d, 0x76, 0xe2, 0x23, 0x6a, 0x6f, 0xf2, 0x12, 0xa6, 0x62,
- 0xcd, 0x96, 0x6d, 0xed, 0x36, 0x96, 0xa7, 0x23, 0xf4, 0xd0, 0x90, 0x03,
- 0xc3, 0xdd, 0xa7, 0x9d, 0x54, 0x10, 0x77, 0xdb, 0xfc, 0x40, 0xf1, 0x5d,
- 0xbd, 0xff, 0x17, 0xc2, 0x7d, 0x6a, 0x35, 0x10, 0x7d, 0xea, 0xb6, 0xbb,
- 0x8d, 0xfe, 0xe4, 0xfa, 0xc2, 0x2b, 0x76, 0xc3, 0x6f, 0x87, 0xee, 0x07,
- 0xac, 0x86, 0x9e, 0x64, 0x40, 0x20, 0xc9, 0x46, 0xba, 0x5a, 0x0c, 0x7a,
- 0x36, 0x7c, 0x06, 0x25, 0x8c, 0xf7, 0x25, 0x44, 0x90, 0xe7, 0x4d, 0x91,
- 0x3d, 0x79, 0x60, 0x4b, 0x62, 0xfc, 0xf3, 0xf4, 0x91, 0x2d, 0x01, 0x0b,
- 0x63, 0x54, 0xc7, 0x28, 0x49, 0x45, 0xcc, 0xa8, 0xe1, 0x04, 0xeb, 0x46,
- 0x8a, 0x03, 0xdf, 0x9e, 0x28, 0xb8, 0x94, 0x22, 0x6b, 0x08, 0xd9, 0xcd,
- 0xf4, 0x5d, 0x5e, 0x73, 0xa4, 0xf1, 0x34, 0xbd, 0xeb, 0xc2, 0x62, 0xc7,
- 0x51, 0x96, 0xda, 0x93, 0xb4, 0xda, 0x61, 0xf8, 0x77, 0xe5, 0xe9, 0xf7,
- 0xab, 0xc3, 0xfd, 0xf3, 0x8b, 0x61, 0xfb, 0xa2, 0x8d, 0xb2, 0xd8, 0x78,
- 0xfb, 0x3c, 0xfa, 0x2a, 0xdb, 0x52, 0xb9, 0xb8, 0x75, 0xe9, 0x30, 0x30,
- 0x31, 0x38, 0x19, 0x5b, 0xe5, 0x76, 0x03, 0xa0, 0x4b, 0x1d, 0x58, 0x64,
- 0x90, 0x8b, 0xe1, 0x3e, 0x1e, 0xe5, 0x53, 0x4c, 0x81, 0x06, 0x46, 0x37,
- 0xce, 0xac, 0x52, 0x01, 0xbe, 0xe2, 0xea, 0x6d, 0xc5, 0x94, 0x4d, 0x41,
- 0x1d, 0x55, 0x09, 0xa2, 0xa2, 0xbf, 0xfb, 0x67, 0xef, 0x8e, 0xde, 0x7d,
- 0xbd, 0xd7, 0x90, 0x14, 0xa6, 0x45, 0x51, 0x65, 0x1a, 0xf1, 0x20, 0x05,
- 0x11, 0x64, 0xb9, 0x24, 0x2d, 0xd9, 0xa1, 0xe5, 0x74, 0x88, 0x2e, 0x8c,
- 0x53, 0x2a, 0x7e, 0x96, 0xea, 0x46, 0x0c, 0x92, 0x5a, 0x26, 0x0a, 0x58,
- 0x20, 0x0f, 0x57, 0xeb, 0xe6, 0x4d, 0x86, 0x85, 0xb0, 0x03, 0x1f, 0x75,
- 0xe3, 0xfb, 0x7c, 0x2e, 0x75, 0x26, 0x1a, 0x86, 0x98, 0xe6, 0x3e, 0x9b,
- 0x3a, 0x39, 0x26, 0xc6, 0x2a, 0x29, 0xb3, 0x4c, 0x6e, 0xb7, 0xc5, 0x0a,
- 0xc8, 0x71, 0x54, 0xf2, 0x63, 0x61, 0xe3, 0x97, 0xaf, 0x41, 0x5c, 0xce,
- 0x23, 0xa8, 0xd6, 0xf2, 0x4b, 0xd6, 0xe0, 0x69, 0xab, 0x54, 0x2e, 0xdf,
- 0x8b, 0xd5, 0x53, 0x31, 0x73, 0x7e, 0x72, 0xf6, 0xc6, 0xf9, 0xc9, 0xc1,
- 0xb7, 0xe7, 0x4f, 0x83, 0xdc, 0x8d, 0xba, 0x65, 0xb2, 0xd3, 0x42, 0xda,
- 0x78, 0x23, 0xce, 0x10, 0x7f, 0x24, 0x71, 0xa3, 0x29, 0x67, 0x3e, 0x0b,
- 0xad, 0xe1, 0x1d, 0xac, 0xa5, 0x59, 0x91, 0x89, 0x4d, 0x9c, 0x79, 0xb1,
- 0x74, 0xe5, 0x40, 0x02, 0xec, 0xbd, 0xbe, 0x2b, 0x1a, 0x73, 0xdf, 0x51,
- 0x6f, 0xd5, 0x8a, 0x35, 0x05, 0xe5, 0x99, 0xa2, 0x78, 0x4b, 0x60, 0x03,
- 0xc1, 0x4c, 0xf6, 0x59, 0xbf, 0x2d, 0xe8, 0x12, 0xb7, 0x24, 0xc9, 0x7f,
- 0xba, 0xe4, 0xbe, 0x05, 0x44, 0xc8, 0x20, 0x98, 0x5c, 0xf8, 0x6f, 0x87,
- 0x44, 0x52, 0x3d, 0x75, 0x19, 0x21, 0x2c, 0x46, 0xf8, 0xc1, 0xea, 0xf6,
- 0xa6, 0xfa, 0xd4, 0xde, 0xd6, 0x96, 0x37, 0x64, 0x4a, 0xb8, 0xea, 0xf0,
- 0xb7, 0xd3, 0x07, 0xa5, 0xcf, 0xf4, 0x57, 0x11, 0x45, 0xfa, 0x69, 0x54,
- 0xb1, 0xc2, 0xb9, 0xfb, 0xc9, 0x54, 0xf1, 0xf9, 0xaa, 0x0b, 0xc7, 0xdd,
- 0xd7, 0xbf, 0x80, 0x2e, 0x44, 0xab, 0xfc, 0x9f, 0x44, 0x15, 0x69, 0xf2,
- 0x69, 0x74, 0x91, 0xb6, 0x09, 0xa3, 0x03, 0x8e, 0xe1, 0xb7, 0x84, 0xc8,
- 0xc5, 0x28, 0x9e, 0x0d, 0x5c, 0xa9, 0x8f, 0x5f, 0x41, 0x31, 0xcf, 0x74,
- 0xa6, 0x1b, 0x70, 0x00, 0xa8, 0xdf, 0xdb, 0xe0, 0x23, 0xcd, 0x0b, 0xb3,
- 0xa2, 0xe2, 0x88, 0x48, 0x65, 0x9b, 0x76, 0x21, 0xae, 0xe6, 0x41, 0x1d,
- 0xd4, 0x15, 0x05, 0xc8, 0xff, 0x72, 0x5a, 0xfb, 0x7f, 0x05, 0x07, 0x7a,
- 0xe6, 0x0b, 0xb5, 0x7c, 0x0a, 0xc9, 0x3d, 0xbb, 0x76, 0x24, 0xd7, 0x55,
- 0xbe, 0xd8, 0x78, 0xd3, 0x6f, 0x9c, 0x01, 0x16, 0xc9, 0x96, 0xb6, 0xea,
- 0x2c, 0x5d, 0xde, 0x95, 0xc5, 0xfc, 0x0a, 0x81, 0x31, 0x61, 0x35, 0x10,
- 0xb6, 0xd1, 0x08, 0x74, 0x6c, 0x04, 0x1c, 0xae, 0x74, 0xec, 0x50, 0x0c,
- 0x02, 0xbf, 0x81, 0xe0, 0xe7, 0xd1, 0x08, 0xa2, 0x3b, 0xf3, 0xd9, 0xa3,
- 0xc4, 0xde, 0xf0, 0x44, 0x71, 0xc7, 0x4a, 0xef, 0x46, 0xdc, 0x03, 0x29,
- 0x58, 0x63, 0x34, 0xee, 0xfc, 0x53, 0x1d, 0x51, 0xaa, 0x08, 0x03, 0x98,
- 0x3e, 0x7e, 0xd7, 0x86, 0x74, 0xee, 0xd8, 0x68, 0x12, 0x61, 0xf2, 0x3d,
- 0x94, 0x24, 0xf9, 0xff, 0x16, 0x1e, 0xfa, 0xec, 0xd3, 0xc8, 0xf9, 0x9f,
- 0x71, 0xb3, 0xfe, 0x0f, 0x22, 0xde, 0xae, 0x6d, 0xde, 0x50, 0xf4, 0x44,
- 0x51, 0x90, 0xe5, 0x62, 0xd9, 0x14, 0x8c, 0x27, 0xa7, 0xc8, 0x60, 0x15,
- 0x8f, 0x4e, 0xbf, 0x7b, 0xde, 0x67, 0xaf, 0xd6, 0x79, 0x5c, 0x29, 0xe4,
- 0xf8, 0xf5, 0xfe, 0x69, 0xc7, 0xcd, 0x70, 0x55, 0x55, 0xe9, 0x22, 0x37,
- 0x73, 0xcd, 0x23, 0xd6, 0x23, 0x6f, 0x1e, 0x8f, 0x8c, 0x44, 0xba, 0x5d,
- 0xa6, 0xa3, 0xb2, 0xab, 0x71, 0x3c, 0x73, 0xf6, 0x9c, 0xcb, 0xbf, 0x4e,
- 0x62, 0x75, 0xf7, 0x31, 0x63, 0x54, 0x5e, 0x3f, 0x92, 0x60, 0xad, 0x64,
- 0xd4, 0x4a, 0xab, 0xee, 0x9e, 0x98, 0xd8, 0x97, 0xda, 0x0e, 0xb1, 0x95,
- 0xa9, 0xd5, 0xbe, 0xf5, 0x87, 0x1a, 0xef, 0x48, 0x09, 0xf3, 0x7d, 0x6d,
- 0x31, 0x28, 0xa8, 0xbe, 0xa8, 0x66, 0x2f, 0xa8, 0x76, 0xd1, 0x97, 0x97,
- 0x00, 0x0c, 0xaf, 0xa2, 0xcc, 0xd2, 0x3b, 0x14, 0x73, 0x70, 0x49, 0xc9,
- 0x03, 0x2d, 0x64, 0xab, 0xbb, 0x2e, 0x15, 0xb8, 0x34, 0x23, 0x76, 0x3e,
- 0xce, 0x17, 0xe9, 0x54, 0xf3, 0x84, 0x93, 0x87, 0x4a, 0xc1, 0xb5, 0x2b,
- 0x69, 0x35, 0x27, 0x34, 0xcf, 0xda, 0x99, 0xa0, 0xfb, 0x4c, 0xfe, 0x01,
- 0x00, 0xba, 0xd5, 0xc7, 0x0c, 0xd2, 0xe0, 0x15, 0x8c, 0x4a, 0x6d, 0x15,
- 0xc8, 0x06, 0x61, 0x96, 0x87, 0x07, 0xe2, 0x34, 0x37, 0x36, 0x14, 0x71,
- 0x46, 0xda, 0xce, 0x8b, 0xe7, 0x3b, 0x49, 0x95, 0xde, 0x03, 0x98, 0xa8,
- 0xd2, 0x97, 0x9f, 0x0e, 0x9f, 0x6c, 0x3d, 0x1d, 0x3e, 0x4d, 0x7c, 0x9d,
- 0x6c, 0xf8, 0x1e, 0xb5, 0x79, 0x62, 0x9d, 0x11, 0x20, 0x8d, 0x85, 0x7a,
- 0xbd, 0x3b, 0x3c, 0x60, 0x69, 0xc4, 0xd2, 0xc6, 0x5b, 0x4a, 0xae, 0x21,
- 0xa2, 0xd1, 0xc2, 0x59, 0xa5, 0xb7, 0x2e, 0xc5, 0xbc, 0x63, 0x39, 0x8c,
- 0x34, 0x91, 0xf3, 0x31, 0x77, 0x03, 0x61, 0x5e, 0x29, 0x54, 0xaa, 0xeb,
- 0xd2, 0x89, 0xbe, 0x13, 0x2e, 0x49, 0x88, 0x1b, 0xf0, 0x70, 0x71, 0xb3,
- 0xaa, 0x26, 0x4d, 0xbd, 0xec, 0x8e, 0x0f, 0x3b, 0x53, 0x33, 0xb4, 0x84,
- 0xda, 0xdc, 0x71, 0xe9, 0x98, 0x4a, 0x8b, 0xce, 0xf0, 0x3b, 0x96, 0x92,
- 0xd1, 0xc8, 0xd2, 0xb1, 0xb8, 0xa7, 0x61, 0x5c, 0xb8, 0xb7, 0x91, 0x1f,
- 0xa3, 0xe5, 0xca, 0x50, 0xeb, 0xbc, 0x37, 0xe8, 0xd9, 0x35, 0x65, 0x51,
- 0x53, 0xdc, 0x59, 0x2d, 0xb6, 0xf2, 0x76, 0x89, 0x9b, 0x7f, 0xb8, 0xdc,
- 0x5a, 0xf3, 0x6d, 0x40, 0xaa, 0xfc, 0x3c, 0xab, 0xb5, 0x7a, 0x6e, 0xf2,
- 0xf2, 0xe4, 0xf4, 0xe2, 0xd5, 0x6d, 0x3a, 0x8d, 0xa2, 0x7b, 0x18, 0xe1,
- 0xd5, 0x2a, 0x0d, 0x3b, 0x3b, 0x3e, 0xbf, 0x19, 0xa4, 0xdb, 0x9d, 0xbb,
- 0xac, 0x33, 0x7b, 0xb2, 0x0b, 0xd1, 0xec, 0xe2, 0xe2, 0xcf, 0xa7, 0x87,
- 0xaf, 0x5e, 0xb2, 0x17, 0xe0, 0x0b, 0x76, 0xc5, 0x54, 0x0d, 0xa7, 0x00,
- 0x17, 0xb4, 0x8f, 0x6f, 0xc6, 0x1f, 0x5e, 0x1f, 0x9d, 0x9f, 0x1e, 0x9f,
- 0x1c, 0xbc, 0x7a, 0xf9, 0x03, 0x5b, 0x1b, 0x68, 0xf5, 0xee, 0x83, 0x77,
- 0xdd, 0x67, 0x2e, 0x81, 0x26, 0xae, 0xe5, 0x79, 0xf8, 0xfd, 0x87, 0xc3,
- 0x77, 0xdf, 0xbd, 0x7a, 0x79, 0x9b, 0x96, 0x7d, 0x9e, 0x9f, 0xbc, 0xcd,
- 0x88, 0x4a, 0x1d, 0x55, 0xde, 0x83, 0x35, 0xba, 0x40, 0x71, 0xd7, 0x05,
- 0xc7, 0x92, 0x3e, 0x10, 0x50, 0x08, 0x2e, 0xeb, 0xab, 0x67, 0x36, 0xa9,
- 0x23, 0x08, 0x5e, 0xd4, 0x95, 0x73, 0xe1, 0x90, 0xef, 0xcf, 0x8e, 0xbb,
- 0x2a, 0x3d, 0xd7, 0x41, 0x81, 0x19, 0x5f, 0x5e, 0x48, 0xed, 0x63, 0xbe,
- 0x61, 0xd4, 0xf2, 0x39, 0x70, 0xe9, 0x92, 0x0a, 0x72, 0xfc, 0x60, 0xf4,
- 0xa4, 0xf0, 0x2e, 0x1f, 0x99, 0xed, 0x2a, 0xdb, 0x4a, 0xf8, 0x14, 0x4d,
- 0x21, 0x07, 0x5c, 0xc8, 0x96, 0xc5, 0x24, 0x4d, 0x63, 0xb3, 0x5f, 0x90,
- 0x04, 0x84, 0xb0, 0x0b, 0x48, 0x35, 0x1c, 0xfc, 0x83, 0xf9, 0x1d, 0x08,
- 0xf0, 0xba, 0xe4, 0x3c, 0x35, 0x67, 0xa1, 0x18, 0x7a, 0x2b, 0x6b, 0x53,
- 0x70, 0x6d, 0x86, 0x1b, 0x37, 0xae, 0x52, 0xe8, 0xb7, 0x99, 0x4e, 0x63,
- 0xc9, 0x8e, 0x41, 0x5d, 0xa4, 0x8e, 0x84, 0xcb, 0x06, 0x10, 0xb3, 0xfa,
- 0xa0, 0x59, 0xa4, 0xe4, 0x6c, 0x50, 0x4e, 0xe8, 0x75, 0x41, 0xe8, 0xb2,
- 0xb1, 0x1e, 0xec, 0x3f, 0xf6, 0x62, 0xb3, 0x4f, 0x62, 0xe8, 0xce, 0x9c,
- 0x1d, 0xb6, 0xc2, 0x55, 0x39, 0xd8, 0x38, 0xdf, 0x74, 0x09, 0xb4, 0xdc,
- 0xe2, 0xe9, 0xfb, 0x8b, 0x20, 0x77, 0x3a, 0x8a, 0x53, 0x8c, 0x0e, 0x61,
- 0x5b, 0x50, 0xf6, 0x0b, 0xb5, 0x3e, 0x58, 0x6f, 0xd7, 0xc9, 0x32, 0x6f,
- 0x07, 0x71, 0x86, 0x7c, 0x1e, 0xc2, 0x61, 0xa4, 0x9d, 0xb5, 0x9e, 0x24,
- 0x79, 0x30, 0xd9, 0xd7, 0x00, 0xb4, 0x8c, 0x8b, 0x39, 0xb5, 0xfa, 0x18,
- 0xae, 0xb3, 0xad, 0xd9, 0x79, 0x52, 0xd5, 0xe5, 0xba, 0x19, 0xa5, 0x89,
- 0xde, 0x6b, 0x56, 0xba, 0x97, 0xe2, 0xc3, 0x62, 0x0a, 0x3c, 0xd4, 0xd6,
- 0xd0, 0xe0, 0x5a, 0x19, 0x11, 0xe5, 0x75, 0x94, 0x84, 0x02, 0xa7, 0x46,
- 0x1d, 0x87, 0x29, 0x32, 0x9c, 0x19, 0xee, 0x00, 0xd1, 0x7e, 0x06, 0xd0,
- 0xaf, 0x6e, 0x46, 0x73, 0x26, 0x4b, 0x9b, 0x10, 0xe6, 0xbb, 0xf0, 0xd2,
- 0x64, 0x13, 0x3b, 0x16, 0xf5, 0xcf, 0x2d, 0x01, 0x99, 0x59, 0xe1, 0xe0,
- 0xc2, 0xc7, 0x6b, 0x72, 0xb8, 0x65, 0x67, 0xe8, 0x1d, 0xaa, 0x85, 0x0e,
- 0x2e, 0x22, 0x28, 0x46, 0x7e, 0x81, 0x83, 0x15, 0x83, 0xe4, 0x08, 0xc4,
- 0x06, 0xf3, 0xdc, 0x85, 0x92, 0x34, 0x87, 0x0b, 0x42, 0xc5, 0x50, 0x43,
- 0xa7, 0xd9, 0x25, 0xb4, 0x22, 0x53, 0xbe, 0x4a, 0xd6, 0xaf, 0xa6, 0xc5,
- 0x68, 0x44, 0x93, 0x5a, 0x77, 0x85, 0x85, 0x2e, 0x88, 0x6d, 0x5e, 0x41,
- 0xe8, 0xed, 0x1b, 0x50, 0xa7, 0x3f, 0xac, 0x28, 0xc8, 0x87, 0xbe, 0x56,
- 0x65, 0x7b, 0xf3, 0xee, 0xaa, 0x7b, 0x4b, 0x77, 0x15, 0xd5, 0xf2, 0xee,
- 0x83, 0x52, 0xbe, 0x12, 0x83, 0x27, 0x78, 0xd5, 0xd6, 0x7f, 0x14, 0xc0,
- 0xcd, 0xd9, 0xc9, 0x3e, 0x8f, 0x58, 0x99, 0x0f, 0x58, 0x8e, 0x16, 0x4a,
- 0xcb, 0x3b, 0x32, 0x87, 0x79, 0xc2, 0x34, 0x81, 0xf5, 0xff, 0xe0, 0x51,
- 0xec, 0xf4, 0xf9, 0xdf, 0xdd, 0xbf, 0xaf, 0x5b, 0x39, 0x3c, 0x2e, 0x40,
- 0x2a, 0x83, 0xaf, 0xb9, 0x02, 0x59, 0x65, 0x35, 0xf8, 0x3a, 0x4a, 0xee,
- 0xb1, 0xc3, 0x78, 0x65, 0xeb, 0xf9, 0xec, 0xea, 0xc7, 0x9d, 0xc1, 0xce,
- 0xf6, 0xf6, 0xf6, 0xcf, 0xc3, 0x05, 0x2f, 0xdd, 0x25, 0x9a, 0xa7, 0x7f,
- 0x87, 0x8b, 0x7c, 0xcc, 0xce, 0x0c, 0xda, 0xcc, 0x3c, 0xe5, 0xa6, 0xb7,
- 0xa4, 0xbf, 0xad, 0xe0, 0xe6, 0xaf, 0xc7, 0x8b, 0xc1, 0xbc, 0xe8, 0x0a,
- 0x8e, 0xba, 0x58, 0x96, 0xf3, 0x24, 0x28, 0x26, 0xfd, 0xe1, 0xdd, 0xc9,
- 0xeb, 0xc3, 0xe3, 0xfd, 0x3f, 0x5b, 0x74, 0xb5, 0x43, 0xe2, 0xe0, 0x91,
- 0x7c, 0xc8, 0xd2, 0xea, 0xfe, 0x43, 0x95, 0xd5, 0xf4, 0xe5, 0xc6, 0x93,
- 0x4d, 0x8e, 0x3d, 0x6c, 0xef, 0x30, 0xbb, 0x3a, 0xe1, 0xeb, 0x53, 0x64,
- 0x0e, 0x8d, 0x55, 0xf3, 0xb7, 0x77, 0x4b, 0x46, 0xd9, 0x69, 0x86, 0x3c,
- 0xd7, 0xec, 0x13, 0x1a, 0x4d, 0x6f, 0xaa, 0xfc, 0x6f, 0x74, 0xef, 0x30,
- 0xac, 0x69, 0x1c, 0xc9, 0x7e, 0xa1, 0x98, 0x1c, 0x75, 0xc2, 0xbf, 0x25,
- 0x5f, 0x1d, 0x7f, 0xcb, 0x79, 0x04, 0x4e, 0xa7, 0x99, 0x09, 0x08, 0x44,
- 0xf2, 0xc5, 0xb3, 0x9d, 0xdd, 0x4d, 0x57, 0x1f, 0x49, 0xd2, 0x9b, 0xf8,
- 0x70, 0x46, 0x01, 0x15, 0x7f, 0xcb, 0x82, 0x42, 0x35, 0xc2, 0x95, 0xbd,
- 0x97, 0x15, 0x51, 0x4d, 0x76, 0xcd, 0x01, 0x6f, 0x13, 0x51, 0x00, 0x35,
- 0x10, 0x4e, 0x39, 0xf5, 0x28, 0xc2, 0x09, 0xbb, 0xf0, 0x79, 0x66, 0xc3,
- 0xa0, 0xf6, 0x74, 0x42, 0xc3, 0xd1, 0x8c, 0xa5, 0x6e, 0xd9, 0xe4, 0x1f,
- 0x2d, 0xeb, 0x3c, 0xea, 0xad, 0xa3, 0xd5, 0x9e, 0x56, 0x1c, 0x1f, 0xc0,
- 0xf2, 0x47, 0xf2, 0xd2, 0x7e, 0xfb, 0x22, 0x8e, 0xa9, 0x4c, 0xe0, 0x6a,
- 0x6c, 0xe3, 0x75, 0x41, 0x6c, 0x49, 0xf8, 0xf6, 0xe3, 0x60, 0x56, 0x5f,
- 0x36, 0xaf, 0x91, 0x7e, 0x12, 0x07, 0xfe, 0x06, 0x95, 0x44, 0xd7, 0xcf,
- 0xcf, 0x4e, 0xd7, 0xfb, 0xea, 0xc4, 0xa4, 0x3e, 0x06, 0xf4, 0x37, 0x8d,
- 0x18, 0xd0, 0xc9, 0xcf, 0xb6, 0x9f, 0x3d, 0x55, 0xfb, 0x1e, 0x06, 0x8a,
- 0x64, 0xe6, 0xd8, 0x1f, 0x82, 0xef, 0x5c, 0xed, 0x77, 0x80, 0xa9, 0xf8,
- 0xcc, 0x4d, 0xa2, 0xbc, 0xe6, 0x24, 0xc5, 0x62, 0x22, 0x75, 0x59, 0x1f,
- 0x8a, 0x87, 0xd1, 0x3d, 0x03, 0x4f, 0xc1, 0x20, 0x87, 0x51, 0xbc, 0xec,
- 0xd3, 0xd6, 0x42, 0xba, 0x31, 0xbc, 0xb4, 0xdf, 0xba, 0x16, 0xd2, 0x97,
- 0xa9, 0xc7, 0xa4, 0x41, 0x61, 0x06, 0x6a, 0xc6, 0x8b, 0xdc, 0x8d, 0xb2,
- 0xb7, 0xd2, 0x9b, 0x62, 0xd5, 0x2a, 0x82, 0x39, 0x0e, 0xcd, 0x49, 0xac,
- 0xd8, 0x54, 0x7e, 0xf1, 0x84, 0x2d, 0x2b, 0xd4, 0x4a, 0x3d, 0x7c, 0x38,
- 0x1c, 0xb8, 0x3d, 0x3d, 0xb4, 0xf0, 0x92, 0xff, 0xed, 0x9c, 0x16, 0x7f,
- 0xe1, 0x95, 0xce, 0xdf, 0x76, 0x5a, 0x32, 0xaf, 0xd6, 0xaa, 0xbb, 0xc9,
- 0x45, 0xaa, 0x73, 0xfd, 0xf8, 0xde, 0xdd, 0xee, 0x0c, 0xb7, 0x3b, 0x1d,
- 0xbd, 0x6f, 0xb8, 0x22, 0x67, 0x13, 0xc0, 0x8e, 0xa7, 0x63, 0xb8, 0xd7,
- 0xec, 0xab, 0x05, 0x83, 0x70, 0x3a, 0x98, 0xa1, 0xf2, 0xad, 0xc0, 0x58,
- 0xe4, 0x97, 0x1d, 0x74, 0x46, 0xa3, 0xe4, 0xd4, 0xd3, 0xe8, 0x64, 0xd2,
- 0xa0, 0x76, 0x7e, 0xdd, 0xa0, 0x76, 0x7e, 0xd3, 0x41, 0xed, 0xfe, 0xba,
- 0x41, 0xed, 0xfe, 0x56, 0x83, 0x2a, 0x07, 0x96, 0x8e, 0xd3, 0x0d, 0xcf,
- 0x7e, 0xa6, 0x81, 0x7b, 0x0c, 0x98, 0x35, 0x63, 0x30, 0x53, 0x66, 0xa7,
- 0x17, 0xca, 0xd1, 0x07, 0x87, 0xfa, 0xae, 0x0f, 0x9e, 0x12, 0x99, 0x21,
- 0x8e, 0x99, 0xf6, 0xd5, 0x51, 0x2c, 0xdc, 0xb4, 0x6a, 0xd6, 0x50, 0x16,
- 0x97, 0xf5, 0x72, 0x6e, 0xdd, 0xf8, 0x98, 0x31, 0x08, 0x75, 0xd1, 0x3c,
- 0xc7, 0x59, 0xae, 0xe0, 0xd1, 0x8f, 0xc5, 0xe6, 0x3f, 0x6f, 0x4e, 0x98,
- 0xc1, 0x98, 0x3a, 0x75, 0x32, 0x2b, 0x58, 0xce, 0xf1, 0x0d, 0xb8, 0xc6,
- 0xf8, 0xc9, 0xc9, 0x72, 0xb6, 0x30, 0x90, 0x14, 0xae, 0x88, 0x22, 0xb1,
- 0xdd, 0x62, 0x59, 0xa4, 0xbb, 0xf9, 0xaa, 0xc0, 0x9f, 0x3c, 0xce, 0x7e,
- 0x64, 0xd8, 0xe1, 0x0a, 0x6f, 0xb8, 0xf3, 0x32, 0x01, 0x16, 0xe6, 0x84,
- 0x8e, 0x7c, 0x2e, 0xa5, 0x1a, 0xa5, 0xc0, 0x75, 0x11, 0xe0, 0x31, 0xaa,
- 0x0c, 0x2b, 0x32, 0xf8, 0xfb, 0x28, 0x9c, 0x80, 0x45, 0x66, 0x8e, 0xcd,
- 0xe1, 0x30, 0x3e, 0xd5, 0x58, 0x38, 0xbd, 0x32, 0x2c, 0x78, 0x6b, 0x45,
- 0xe1, 0x56, 0xd8, 0x01, 0xba, 0x7d, 0x2f, 0xa1, 0x75, 0x1a, 0x31, 0x44,
- 0x83, 0xdb, 0xbe, 0x94, 0xbd, 0x1e, 0x15, 0x55, 0x26, 0xe9, 0x40, 0x58,
- 0x8a, 0xc8, 0x66, 0x54, 0x8d, 0xf3, 0xfc, 0xb7, 0x74, 0x92, 0x49, 0xaf,
- 0xe8, 0xe6, 0xe1, 0x0d, 0xe3, 0x48, 0x68, 0x6c, 0x99, 0xee, 0x59, 0x63,
- 0xd3, 0xdc, 0x9e, 0xf1, 0x96, 0xb9, 0x1d, 0xfb, 0x3f, 0x67, 0xc3, 0xe8,
- 0xff, 0xb9, 0xb8, 0x3b, 0xa7, 0xa0, 0xe6, 0xd3, 0x14, 0xb6, 0x24, 0x5d,
- 0x1a, 0x01, 0xf2, 0x9e, 0x66, 0x29, 0x63, 0x1d, 0x98, 0x09, 0xfb, 0x3a,
- 0xfb, 0x28, 0xca, 0x7f, 0x7c, 0xd9, 0x43, 0xb2, 0xe0, 0x08, 0x3b, 0x39,
- 0x5b, 0xfb, 0xe7, 0x07, 0x47, 0x47, 0x0d, 0x23, 0x22, 0x2f, 0x9b, 0x24,
- 0xf5, 0x20, 0x22, 0x2f, 0xa9, 0x38, 0xbf, 0xc9, 0xab, 0x57, 0x5d, 0x90,
- 0x78, 0x02, 0x0a, 0xcc, 0x05, 0xea, 0xd3, 0x2a, 0xb7, 0xec, 0xec, 0x54,
- 0x02, 0xd6, 0x96, 0x73, 0xb6, 0x0e, 0x70, 0x56, 0xcb, 0xf5, 0x92, 0x64,
- 0xdd, 0xea, 0x1f, 0x4d, 0x90, 0xc3, 0xdf, 0x9a, 0xf4, 0x3a, 0xb2, 0x5e,
- 0x4f, 0x4b, 0x4d, 0xcc, 0x45, 0xf4, 0x3d, 0xf2, 0x17, 0x24, 0x73, 0x95,
- 0x61, 0x99, 0x58, 0x09, 0x14, 0x0a, 0xa4, 0x41, 0xda, 0x78, 0x51, 0xe3,
- 0xd2, 0x49, 0xc8, 0x91, 0x65, 0x04, 0x66, 0xa8, 0xaa, 0xc5, 0xa5, 0x77,
- 0x5a, 0x5c, 0x7a, 0x39, 0xcf, 0x3f, 0xc2, 0x06, 0x4a, 0xc2, 0xc2, 0x4b,
- 0xce, 0x3c, 0x5d, 0x51, 0x4e, 0xf5, 0xc0, 0x6a, 0xfd, 0x39, 0xe4, 0x4c,
- 0x5a, 0x04, 0xd4, 0x53, 0x93, 0x62, 0x65, 0x89, 0xb4, 0xd1, 0x0f, 0x2d,
- 0x01, 0x60, 0xd8, 0x1d, 0xf6, 0xc7, 0x79, 0x56, 0xb3, 0x07, 0xa3, 0xa9,
- 0x70, 0x3c, 0x6d, 0x8a, 0xc0, 0xcb, 0xbe, 0x95, 0xae, 0x85, 0x6c, 0xb3,
- 0xb7, 0x52, 0x76, 0x0b, 0x12, 0x67, 0x83, 0xba, 0xb5, 0x9c, 0x5a, 0x67,
- 0x12, 0x48, 0x58, 0xa6, 0x5a, 0x94, 0x7a, 0x2f, 0xf5, 0x74, 0x05, 0x05,
- 0x0d, 0x93, 0x13, 0x47, 0x31, 0x83, 0x79, 0x1f, 0x91, 0xae, 0x75, 0x39,
- 0xd6, 0xc0, 0x49, 0xfc, 0x3e, 0xb0, 0x3c, 0xec, 0x2e, 0x26, 0x85, 0xc2,
- 0x5a, 0x6c, 0x8d, 0xbe, 0x6f, 0x54, 0x6f, 0x73, 0xa3, 0xeb, 0x1b, 0xe0,
- 0xb4, 0x40, 0xbf, 0x2d, 0x48, 0x57, 0xe1, 0xca, 0x65, 0x90, 0xb5, 0xd3,
- 0x48, 0x6d, 0x93, 0x49, 0x74, 0x43, 0xa7, 0x86, 0xb5, 0x82, 0x25, 0x87,
- 0x51, 0x1f, 0x57, 0xf4, 0xc2, 0xc5, 0x34, 0xaf, 0xb9, 0xbc, 0xa8, 0x2b,
- 0x03, 0xcd, 0x49, 0x00, 0xe3, 0x62, 0x4a, 0xfc, 0x26, 0xf2, 0x3c, 0xe4,
- 0xae, 0xbe, 0x21, 0x1b, 0x81, 0x67, 0x8b, 0x82, 0x34, 0x62, 0x45, 0xa1,
- 0x17, 0x7b, 0x1c, 0xde, 0x33, 0xdd, 0xbb, 0x51, 0xa5, 0x38, 0x06, 0x65,
- 0x6e, 0xa8, 0x95, 0x48, 0x1e, 0xb4, 0xcd, 0x18, 0xa7, 0xb4, 0xa2, 0x88,
- 0x0c, 0xec, 0x4e, 0xa5, 0xd2, 0x5b, 0x3e, 0xf9, 0x96, 0x68, 0x3c, 0x2b,
- 0x0b, 0x3a, 0x0d, 0xdf, 0x3d, 0x33, 0x3c, 0x86, 0xef, 0xf3, 0xf9, 0x84,
- 0x59, 0xcc, 0x28, 0x95, 0xc3, 0x87, 0xbd, 0xf4, 0xb5, 0x5d, 0x3b, 0x79,
- 0xae, 0x30, 0x45, 0x7b, 0x53, 0x69, 0x55, 0xac, 0x77, 0xf3, 0xf6, 0xb6,
- 0xb0, 0x61, 0x87, 0xc6, 0xc8, 0x33, 0x8b, 0x11, 0x2d, 0x1d, 0x64, 0xb0,
- 0x55, 0x6d, 0xf4, 0x68, 0x8b, 0xac, 0x55, 0x15, 0x23, 0x14, 0x56, 0xa1,
- 0x51, 0xba, 0x91, 0x5f, 0xe4, 0x7c, 0x22, 0xac, 0xd4, 0x78, 0xfb, 0x78,
- 0x22, 0x34, 0x5e, 0x8a, 0x42, 0x06, 0x28, 0x91, 0x2d, 0x79, 0x9c, 0x6b,
- 0x80, 0x55, 0xd7, 0x9c, 0x9b, 0xc0, 0x66, 0x2f, 0xd8, 0xff, 0xd6, 0xba,
- 0xe3, 0x9e, 0x0d, 0x57, 0xb9, 0xdf, 0x3a, 0x09, 0x11, 0x54, 0x8a, 0x91,
- 0xa6, 0xc5, 0x3d, 0xac, 0x2c, 0x3f, 0x1d, 0xd4, 0x10, 0x00, 0x07, 0xc7,
- 0xd2, 0xf5, 0x35, 0x32, 0xb5, 0x54, 0xdf, 0x81, 0x59, 0x04, 0x65, 0x5d,
- 0xe3, 0x8b, 0x81, 0x13, 0x50, 0x2a, 0x98, 0x8b, 0x61, 0x45, 0x95, 0x5a,
- 0x93, 0x97, 0xbe, 0xd6, 0x44, 0x4c, 0xd7, 0xcd, 0x92, 0x87, 0xe1, 0x86,
- 0x31, 0x19, 0x4a, 0x56, 0x5f, 0xf2, 0xba, 0xb8, 0x9b, 0x0f, 0x8e, 0x39,
- 0x36, 0x39, 0x39, 0x2e, 0xae, 0x58, 0x6b, 0x7d, 0x07, 0x52, 0x8c, 0x76,
- 0xed, 0xfd, 0xe9, 0xbb, 0x64, 0xe3, 0x3d, 0xcf, 0xe9, 0xd4, 0xf9, 0xcc,
- 0xf8, 0xd1, 0x4d, 0x2d, 0x6b, 0x4d, 0xec, 0x31, 0xa8, 0x7c, 0xd1, 0x4f,
- 0x0e, 0x7f, 0xd8, 0x7f, 0x7b, 0x7a, 0x7c, 0xf8, 0xd3, 0x0a, 0xa5, 0x96,
- 0x3f, 0xfe, 0xd2, 0x86, 0x4e, 0x97, 0xbf, 0x15, 0x15, 0xa2, 0x4b, 0x7b,
- 0x7a, 0xbf, 0x8a, 0x17, 0xc8, 0xf1, 0x31, 0x12, 0x3c, 0x3f, 0x3f, 0x3d,
- 0x1a, 0x28, 0x36, 0x85, 0xf0, 0x01, 0x85, 0x0a, 0x94, 0x03, 0x6c, 0xf9,
- 0x98, 0xdf, 0xc6, 0xf1, 0xd8, 0xee, 0x3c, 0xf4, 0x3d, 0x34, 0x78, 0x5f,
- 0xc0, 0xb4, 0x69, 0x0a, 0xdd, 0x70, 0xec, 0xb5, 0x61, 0x5e, 0x8c, 0x23,
- 0x8b, 0x50, 0x1d, 0x16, 0x9c, 0xab, 0xb2, 0x69, 0xa6, 0x88, 0xbc, 0x2b,
- 0xb8, 0xa8, 0x40, 0xf8, 0x60, 0x17, 0xe1, 0xa7, 0x68, 0x8f, 0xce, 0xfc,
- 0x16, 0x23, 0xc7, 0xf5, 0xd4, 0xa7, 0x2f, 0x14, 0x22, 0xdc, 0xa3, 0x5d,
- 0x38, 0x6e, 0x8f, 0x44, 0x99, 0x65, 0xb2, 0xb7, 0xfe, 0x1b, 0xca, 0x7a,
- 0xef, 0x5d, 0x98, 0xc1, 0x2f, 0xb9, 0x4e, 0x3e, 0xf1, 0x3e, 0xd1, 0xaa,
- 0xb8, 0x0f, 0x5f, 0x27, 0xbf, 0x9c, 0x2c, 0xf4, 0x7e, 0x50, 0xc2, 0x10,
- 0xca, 0x98, 0x10, 0xcb, 0x11, 0xea, 0x6f, 0xbb, 0x93, 0x7c, 0x1a, 0x06,
- 0xdf, 0x20, 0xdd, 0x10, 0xee, 0x62, 0x57, 0x71, 0xa9, 0xeb, 0xe1, 0xde,
- 0x47, 0x7a, 0xf9, 0x27, 0x51, 0x02, 0x08, 0x21, 0xf4, 0x57, 0xe9, 0xbe,
- 0xc7, 0x51, 0x84, 0x9f, 0x4a, 0x07, 0xef, 0x7f, 0x5b, 0x3a, 0x18, 0xf0,
- 0x6c, 0x5f, 0xbe, 0x3f, 0x3b, 0x5e, 0xb9, 0xe5, 0xa9, 0x5a, 0xa1, 0x99,
- 0xb9, 0x5f, 0x66, 0xf5, 0xf8, 0xba, 0x99, 0xa4, 0xc8, 0xa5, 0xaa, 0x8a,
- 0x8a, 0x63, 0x78, 0x99, 0x2b, 0xdf, 0x3b, 0x38, 0x99, 0x28, 0xe5, 0x56,
- 0x05, 0x6f, 0x6d, 0x96, 0x9a, 0x64, 0x48, 0x00, 0x04, 0xb7, 0x07, 0xf0,
- 0xc7, 0x0f, 0x4a, 0xac, 0x0a, 0xd1, 0x29, 0xf8, 0xce, 0x0d, 0x88, 0x5a,
- 0x85, 0x4f, 0x65, 0x36, 0xe9, 0x2a, 0xb3, 0x8a, 0x85, 0xbf, 0x13, 0x0c,
- 0x07, 0xf3, 0x61, 0x04, 0x15, 0xf1, 0xe4, 0xf6, 0x5d, 0xd2, 0xe3, 0xa0,
- 0xe0, 0x63, 0xa1, 0xba, 0x82, 0xe6, 0xa9, 0x34, 0x70, 0x25, 0xba, 0x3c,
- 0x59, 0xea, 0x49, 0x75, 0xc2, 0x71, 0x43, 0x7a, 0x6e, 0xbd, 0xf0, 0x55,
- 0x26, 0x65, 0xa6, 0x4c, 0x58, 0xdd, 0xaa, 0xd3, 0xe9, 0x8d, 0x00, 0x0f,
- 0x90, 0x32, 0x50, 0x2a, 0xa0, 0x82, 0xa1, 0xcd, 0x69, 0x0a, 0x14, 0x31,
- 0x6a, 0x06, 0x2f, 0xee, 0xc4, 0x93, 0x1e, 0x2d, 0xaf, 0xae, 0xbc, 0x7e,
- 0x5c, 0x65, 0x99, 0x94, 0x6a, 0x26, 0xe9, 0xb7, 0x57, 0x25, 0xa2, 0x79,
- 0xd1, 0xca, 0xad, 0x2f, 0xe7, 0x13, 0x05, 0x5e, 0xbe, 0x2e, 0x8a, 0xc9,
- 0xfa, 0x30, 0xd9, 0x87, 0x98, 0x1c, 0x43, 0xc2, 0x94, 0xde, 0xd2, 0xd1,
- 0xfb, 0xa2, 0xa7, 0x49, 0xe3, 0xeb, 0x5a, 0xed, 0x9d, 0x75, 0xb8, 0x75,
- 0xd1, 0xa1, 0x18, 0x54, 0x90, 0x4f, 0x0a, 0x5d, 0x87, 0xbd, 0x97, 0xbd,
- 0xa4, 0x13, 0x95, 0xc0, 0x5e, 0xd3, 0xf7, 0xd4, 0x84, 0x20, 0x10, 0x75,
- 0x63, 0xe7, 0x83, 0xa4, 0x7d, 0xb8, 0xce, 0x49, 0xe0, 0x55, 0x97, 0x14,
- 0x43, 0x3c, 0x48, 0x14, 0x48, 0x5b, 0x18, 0x43, 0xdd, 0x2f, 0x91, 0xee,
- 0x5b, 0x03, 0xfd, 0x83, 0x0d, 0xd4, 0xea, 0x6d, 0x01, 0x54, 0xf2, 0xb2,
- 0x48, 0x3c, 0x86, 0x5c, 0x8c, 0xf1, 0xc7, 0x23, 0x88, 0x9d, 0xd0, 0xf0,
- 0xf9, 0x8a, 0xc1, 0x8e, 0x13, 0xa0, 0xc0, 0x1a, 0xc4, 0x40, 0x0c, 0x0a,
- 0x96, 0xfc, 0x77, 0xad, 0xc9, 0x6e, 0xb2, 0x92, 0xd0, 0x0b, 0x6d, 0x7a,
- 0x1e, 0x43, 0xef, 0x9b, 0xb8, 0xe5, 0xd4, 0x36, 0x5f, 0x6a, 0x07, 0x50,
- 0x4a, 0x25, 0xe7, 0x57, 0x16, 0x00, 0x40, 0xbc, 0xec, 0x28, 0x1b, 0xa4,
- 0x4c, 0xd1, 0xdc, 0xae, 0x41, 0x69, 0xd1, 0x5a, 0x32, 0xdc, 0x25, 0x03,
- 0x86, 0xd5, 0x63, 0x3c, 0x98, 0xcd, 0xa5, 0xc0, 0xba, 0xba, 0x33, 0xfa,
- 0x31, 0x9c, 0xb9, 0x20, 0x61, 0x58, 0x16, 0xba, 0x53, 0x9e, 0x9a, 0xca,
- 0xbf, 0x05, 0x4a, 0xfc, 0x5a, 0xfd, 0xb1, 0xd1, 0x58, 0xa8, 0x3f, 0x76,
- 0xf8, 0x54, 0xc3, 0x0c, 0xca, 0x26, 0x4e, 0x31, 0x92, 0x26, 0x03, 0x5e,
- 0x75, 0xc7, 0x0f, 0x22, 0xd4, 0x83, 0x8f, 0x68, 0xf2, 0x52, 0x64, 0x95,
- 0xd5, 0x09, 0xe1, 0x16, 0x72, 0x10, 0x18, 0x14, 0x12, 0x2c, 0x1d, 0x72,
- 0x1a, 0x0d, 0x1e, 0x9c, 0xcd, 0x5f, 0xd3, 0x8c, 0x1d, 0x68, 0x70, 0x9b,
- 0x44, 0xf6, 0x5d, 0xb6, 0xe8, 0xb1, 0xac, 0x2e, 0x6d, 0xa8, 0x7c, 0x57,
- 0x97, 0xce, 0xe5, 0xc7, 0x5c, 0x49, 0x91, 0x88, 0x12, 0x0d, 0x1a, 0xa1,
- 0x8b, 0xe4, 0x23, 0x67, 0x7b, 0x72, 0x85, 0xb9, 0xae, 0x92, 0x20, 0xe0,
- 0x5e, 0x01, 0xfb, 0xb2, 0xa0, 0x86, 0xaa, 0xd1, 0x53, 0x24, 0xa3, 0x92,
- 0x68, 0x9a, 0x46, 0xa0, 0xfb, 0x35, 0x38, 0xfe, 0xba, 0x8c, 0x68, 0x1d,
- 0x20, 0xd6, 0xe6, 0x84, 0x84, 0xf1, 0x43, 0x51, 0x58, 0xd2, 0x89, 0xc2,
- 0xdc, 0x4a, 0xdb, 0x06, 0x3d, 0xb8, 0xd6, 0x85, 0xfd, 0x2a, 0x63, 0x5c,
- 0xff, 0xd2, 0x0c, 0x29, 0xeb, 0xe6, 0x33, 0x6d, 0xc8, 0x46, 0xae, 0x4d,
- 0x6d, 0xb2, 0xc3, 0xb9, 0x24, 0x5e, 0x61, 0x00, 0x90, 0xf0, 0xae, 0x51,
- 0x93, 0x83, 0xf5, 0x4e, 0x95, 0xcd, 0x2d, 0x40, 0xa2, 0xd5, 0x9b, 0x9a,
- 0x47, 0xcb, 0xba, 0x70, 0xa0, 0xe0, 0xa8, 0xf3, 0x56, 0xe7, 0xf5, 0x32,
- 0xf6, 0xd7, 0x28, 0xda, 0x69, 0x92, 0xc0, 0x19, 0x07, 0x26, 0xce, 0x9b,
- 0xe1, 0x3d, 0x66, 0x38, 0x4b, 0x6c, 0x25, 0xaa, 0x11, 0x0b, 0x2a, 0x96,
- 0x27, 0x86, 0x77, 0x06, 0x98, 0x77, 0x54, 0xc5, 0x99, 0x7a, 0xf4, 0xa3,
- 0x6b, 0xfa, 0x6b, 0xe8, 0xed, 0xdf, 0xff, 0x87, 0x7d, 0x09, 0xfc, 0xd4,
- 0xbf, 0xdb, 0x4a, 0x99, 0x7b, 0xbc, 0xbd, 0xc0, 0xca, 0xdf, 0x92, 0xdf,
- 0x63, 0x55, 0x80, 0xff, 0x2e, 0x4b, 0x23, 0x95, 0x86, 0xa9, 0xc1, 0xdf,
- 0x0f, 0x9d, 0x53, 0x5c, 0x1b, 0x49, 0x93, 0x79, 0x76, 0x07, 0xb6, 0x17,
- 0xf1, 0x30, 0x39, 0xc6, 0x3f, 0xcd, 0xb9, 0x2c, 0xe5, 0x38, 0xa5, 0xe3,
- 0xc8, 0xee, 0x4c, 0x81, 0x36, 0x91, 0x5d, 0xfc, 0xa9, 0x54, 0xb6, 0x59,
- 0xa7, 0x23, 0xc1, 0xaf, 0xd6, 0xcf, 0x63, 0xdb, 0x17, 0x47, 0x9c, 0xec,
- 0x61, 0x37, 0x7e, 0x3f, 0x10, 0x70, 0x5c, 0xa5, 0x75, 0xc5, 0xba, 0xb6,
- 0xcf, 0x64, 0x63, 0xee, 0xf2, 0xf9, 0x93, 0xdd, 0x41, 0x20, 0xe9, 0xf4,
- 0x3b, 0x83, 0xf6, 0xc4, 0x8a, 0x5b, 0x8c, 0xc7, 0x70, 0xba, 0xb1, 0xc5,
- 0x1d, 0x76, 0xe9, 0xdf, 0x2b, 0x0a, 0x92, 0x64, 0xd3, 0x2f, 0x21, 0xdd,
- 0x05, 0x05, 0x2e, 0x57, 0x3a, 0xba, 0x1e, 0x21, 0x1e, 0x0f, 0x52, 0xd6,
- 0x15, 0xd5, 0xc4, 0x87, 0x94, 0x06, 0xfa, 0x01, 0x9e, 0x35, 0x79, 0xf5,
- 0x40, 0x3e, 0x1a, 0x5c, 0xf0, 0x47, 0x16, 0xc0, 0xa6, 0xb9, 0xea, 0xd9,
- 0xc4, 0x87, 0xb6, 0x72, 0x46, 0xfc, 0xe5, 0xc3, 0xf5, 0xf2, 0x44, 0xfb,
- 0xe3, 0x28, 0x59, 0x3a, 0xdc, 0xd1, 0x38, 0xed, 0x28, 0x7d, 0x90, 0x6a,
- 0x6e, 0xf9, 0x6d, 0xf6, 0x70, 0x6b, 0x62, 0xc7, 0x98, 0x92, 0x5c, 0x93,
- 0x1a, 0x26, 0x9b, 0x58, 0x15, 0x02, 0xcf, 0xaf, 0xc4, 0xbc, 0x09, 0xb4,
- 0xca, 0xf0, 0xb1, 0xe6, 0xc4, 0xae, 0x89, 0x9b, 0x2c, 0xa8, 0x2c, 0x4a,
- 0x57, 0x9c, 0x81, 0xb4, 0xd4, 0xc5, 0x14, 0x94, 0x2b, 0xed, 0x3e, 0x32,
- 0xd7, 0x42, 0x2c, 0xc0, 0x01, 0xb7, 0xc0, 0xca, 0x35, 0xe1, 0xb7, 0xc0,
- 0xf7, 0x3b, 0x0d, 0x99, 0x49, 0xe7, 0xde, 0x26, 0x47, 0xc0, 0x07, 0x28,
- 0x24, 0xd4, 0x09, 0xc3, 0x03, 0xa4, 0xf5, 0xc8, 0x60, 0x76, 0x5d, 0x4f,
- 0x0f, 0x37, 0xe7, 0x46, 0x21, 0xd7, 0xf4, 0x20, 0x10, 0xd2, 0x86, 0xed,
- 0x2c, 0xbb, 0x9d, 0x28, 0xe0, 0xf8, 0xb2, 0x5e, 0x7c, 0x00, 0x70, 0xed,
- 0x07, 0x00, 0xce, 0x5d, 0x04, 0x56, 0x08, 0x7c, 0x80, 0xf5, 0x12, 0x68,
- 0x40, 0xd2, 0xd9, 0x73, 0x2d, 0xed, 0x35, 0x2d, 0x44, 0x0c, 0x8b, 0x22,
- 0x29, 0xe3, 0x95, 0x6b, 0xd5, 0xdf, 0x30, 0xa7, 0x51, 0x2b, 0x95, 0xec,
- 0x69, 0x34, 0x30, 0x0e, 0xd0, 0xf8, 0x00, 0x24, 0x1e, 0x47, 0x21, 0x74,
- 0x83, 0x64, 0x25, 0x97, 0x40, 0x68, 0x41, 0xf5, 0x08, 0xae, 0x23, 0xf2,
- 0x8a, 0x97, 0x73, 0x0b, 0x0c, 0x79, 0x78, 0x60, 0xd0, 0x13, 0xac, 0x62,
- 0x2b, 0x93, 0xbe, 0x45, 0x4e, 0x41, 0x7b, 0xa2, 0x81, 0xb2, 0xb4, 0x6e,
- 0x71, 0x05, 0xb4, 0x55, 0x8f, 0xcc, 0x13, 0xc9, 0x28, 0xbb, 0x82, 0x0b,
- 0x3d, 0xcd, 0x53, 0x0f, 0x9d, 0x29, 0x33, 0xc0, 0x31, 0xc1, 0x7c, 0x61,
- 0x32, 0xba, 0x2e, 0xee, 0x1e, 0x3d, 0x5c, 0x12, 0x10, 0xc3, 0x57, 0xf9,
- 0x70, 0xc5, 0xca, 0x88, 0x25, 0x56, 0xcf, 0x8e, 0x5f, 0x1a, 0x59, 0x12,
- 0x95, 0xe9, 0xda, 0x8b, 0xd2, 0x15, 0x3c, 0x97, 0xac, 0x40, 0x41, 0x4a,
- 0x36, 0x1c, 0x5e, 0xaf, 0x14, 0x54, 0x72, 0x07, 0x41, 0xf4, 0x52, 0x2b,
- 0xa3, 0xf4, 0x58, 0x73, 0xe0, 0x2e, 0x11, 0x46, 0x45, 0xbc, 0xe1, 0x88,
- 0x09, 0xfc, 0x90, 0x2f, 0x42, 0x96, 0x70, 0x74, 0x1a, 0x60, 0x9e, 0x39,
- 0x0f, 0x9f, 0x44, 0x0f, 0x32, 0x55, 0x1a, 0x13, 0xe3, 0x53, 0xf4, 0xd8,
- 0x38, 0xc6, 0x88, 0x82, 0x10, 0x34, 0x93, 0x20, 0xc7, 0x7a, 0x60, 0x82,
- 0x87, 0x1a, 0x95, 0x8e, 0x4e, 0x6f, 0x9f, 0x76, 0x98, 0x90, 0x5a, 0xff,
- 0xd1, 0x53, 0xcf, 0x9b, 0x87, 0xeb, 0x45, 0x47, 0x32, 0x92, 0x4c, 0x49,
- 0x20, 0xe5, 0x6c, 0x4a, 0x3a, 0xf8, 0x30, 0x51, 0x24, 0x98, 0x44, 0x73,
- 0x9c, 0x0f, 0x8f, 0x21, 0x98, 0xc4, 0xa3, 0x23, 0xa1, 0x9e, 0x8c, 0x64,
- 0xb8, 0x80, 0xf1, 0x3b, 0xd7, 0x31, 0xdd, 0xb5, 0x89, 0xfb, 0x02, 0xa0,
- 0x29, 0x06, 0x08, 0x8b, 0x81, 0x24, 0xdd, 0x52, 0x62, 0xd2, 0x21, 0x34,
- 0x3e, 0x0a, 0x42, 0xc2, 0x63, 0x30, 0x38, 0x8d, 0xca, 0x8d, 0x01, 0xdb,
- 0x1a, 0x7c, 0xac, 0x84, 0x9b, 0xa1, 0xa6, 0x8a, 0xe2, 0x33, 0x7d, 0xca,
- 0x89, 0x5e, 0x45, 0x68, 0xf1, 0x38, 0xac, 0xb3, 0x0f, 0x42, 0xc6, 0x30,
- 0x9d, 0x1a, 0xd4, 0x97, 0x83, 0x91, 0x49, 0x75, 0x35, 0xcc, 0xf8, 0x39,
- 0x38, 0x16, 0x8b, 0x40, 0x31, 0x7d, 0x64, 0x2d, 0x38, 0x7e, 0xd0, 0x4d,
- 0x47, 0x73, 0x66, 0xec, 0xca, 0x56, 0xe0, 0x12, 0xc6, 0xa0, 0x00, 0xab,
- 0x18, 0x73, 0x02, 0xce, 0xc3, 0xcd, 0x01, 0x80, 0xd1, 0x35, 0xe8, 0x32,
- 0x0a, 0x80, 0x54, 0x23, 0xea, 0x1a, 0xdd, 0x86, 0x0f, 0xa0, 0x86, 0x74,
- 0x32, 0xaa, 0x8e, 0x25, 0x61, 0x06, 0xed, 0x0e, 0xdf, 0x45, 0x18, 0x11,
- 0x4c, 0x67, 0xd0, 0x8e, 0xe0, 0x7f, 0x9f, 0x50, 0x3b, 0x4f, 0x5b, 0x51,
- 0xb6, 0xce, 0xd3, 0x63, 0x73, 0xe8, 0x24, 0x71, 0x9d, 0x83, 0x9d, 0xb6,
- 0x70, 0x0e, 0xff, 0xe4, 0xc3, 0xc6, 0x31, 0x6b, 0x1f, 0x0c, 0xef, 0x57,
- 0x46, 0x22, 0xa0, 0x63, 0x1e, 0xa7, 0x4b, 0x22, 0xcd, 0xe4, 0xe2, 0x62,
- 0x52, 0xb7, 0xa7, 0x3b, 0x22, 0xc4, 0xd0, 0x9a, 0x99, 0x16, 0x1e, 0x6a,
- 0xcd, 0x9c, 0xac, 0xae, 0x29, 0x28, 0xee, 0x8f, 0x90, 0x2b, 0xd7, 0x6e,
- 0xe9, 0xec, 0xd1, 0x4e, 0x82, 0xae, 0xa4, 0x74, 0xf9, 0xc0, 0x0c, 0x02,
- 0x35, 0xe6, 0xe1, 0x1e, 0xc3, 0x73, 0xd6, 0xdd, 0xb5, 0x46, 0xae, 0x26,
- 0x9f, 0xb6, 0x74, 0x2b, 0x83, 0x6d, 0x49, 0x92, 0xcf, 0x26, 0x7e, 0x1f,
- 0xb8, 0xad, 0x94, 0x0d, 0x86, 0x01, 0x18, 0xb3, 0x3c, 0x13, 0x48, 0x99,
- 0x24, 0x2c, 0x56, 0xcb, 0x52, 0x20, 0xe1, 0x1e, 0xbf, 0xa3, 0x4d, 0x97,
- 0x76, 0xed, 0x71, 0x44, 0x21, 0x8f, 0x6e, 0xc1, 0xe8, 0x98, 0x00, 0xeb,
- 0x5a, 0x31, 0x2a, 0x37, 0x45, 0x2c, 0xae, 0x0d, 0xcb, 0x62, 0x76, 0xff,
- 0x41, 0xa3, 0x92, 0xd6, 0x3e, 0x65, 0x4c, 0xd5, 0xf4, 0x03, 0x0d, 0x21,
- 0xbf, 0xbc, 0xa7, 0x6d, 0xaf, 0x48, 0x0e, 0x7f, 0x5c, 0x5a, 0x97, 0xe7,
- 0x8c, 0xe6, 0x18, 0x16, 0x81, 0xc6, 0x5c, 0x36, 0x00, 0x17, 0x12, 0x34,
- 0x99, 0xaf, 0xac, 0x0c, 0xd2, 0x80, 0x60, 0x70, 0x32, 0x9c, 0x53, 0x47,
- 0x86, 0x0c, 0x0c, 0x09, 0x33, 0x17, 0xf7, 0x60, 0x6d, 0x75, 0x64, 0xef,
- 0x24, 0x6d, 0xd3, 0x6b, 0x15, 0x78, 0xe5, 0x86, 0x0f, 0x80, 0xc9, 0xba,
- 0xfe, 0x49, 0x51, 0x49, 0x17, 0x0b, 0x3d, 0xe2, 0x8f, 0xcf, 0x5d, 0xb0,
- 0xbc, 0x24, 0x7d, 0xa9, 0x40, 0x91, 0x2f, 0xa0, 0x63, 0xd6, 0x45, 0x71,
- 0x63, 0x96, 0x06, 0xf1, 0x13, 0xb2, 0xd9, 0xee, 0xe1, 0xe6, 0x04, 0x8d,
- 0x51, 0x1e, 0x67, 0x3c, 0x97, 0xf3, 0xf3, 0x6f, 0x18, 0xa8, 0xd5, 0xf1,
- 0x9b, 0x2d, 0xef, 0xfb, 0x13, 0x59, 0xfa, 0xb1, 0x4b, 0xd0, 0x95, 0x84,
- 0xc5, 0x3a, 0x38, 0x63, 0xcf, 0xa7, 0x2e, 0x43, 0x53, 0xac, 0xfc, 0x8d,
- 0x26, 0x7a, 0x71, 0x70, 0xea, 0x26, 0x28, 0x42, 0x65, 0xa0, 0x24, 0x60,
- 0xec, 0x1b, 0x8f, 0xd1, 0xb9, 0x4a, 0xa4, 0xcd, 0x39, 0x76, 0xce, 0x88,
- 0xd5, 0x21, 0x36, 0x39, 0x2e, 0x17, 0xff, 0x0f, 0x6c, 0x2c, 0xe2, 0x1c,
- 0x58, 0x90, 0x97, 0x5c, 0x62, 0x98, 0x70, 0x1f, 0x1f, 0x32, 0x97, 0x02,
- 0xeb, 0x2e, 0x8d, 0xd7, 0xa5, 0x36, 0xcb, 0xa0, 0xe1, 0xb6, 0xee, 0x18,
- 0xb6, 0xab, 0x9f, 0xf9, 0x8b, 0xc6, 0x2c, 0xa9, 0x41, 0x86, 0x13, 0xc8,
- 0x43, 0x96, 0x7a, 0x86, 0x86, 0x6c, 0x4a, 0x37, 0x38, 0xe9, 0x7f, 0x9f,
- 0xa4, 0x85, 0x8b, 0x41, 0x58, 0x90, 0xbd, 0x19, 0x07, 0xc1, 0xb5, 0xea,
- 0x4b, 0xd5, 0x91, 0x1c, 0xcf, 0x71, 0x87, 0x8f, 0xb2, 0x89, 0x54, 0x93,
- 0xbd, 0x50, 0xd3, 0xd5, 0x9b, 0xa6, 0xc6, 0xa6, 0x66, 0xa2, 0x06, 0xc9,
- 0x78, 0xc9, 0x41, 0x4c, 0x1d, 0x59, 0x79, 0x91, 0x6a, 0x3a, 0x2e, 0xa6,
- 0xe2, 0x93, 0xb9, 0x05, 0xba, 0x72, 0xf7, 0x5e, 0x78, 0xc9, 0xab, 0x9b,
- 0x40, 0xf2, 0x5a, 0xd7, 0x59, 0x01, 0x5a, 0xed, 0xf9, 0x47, 0xd9, 0x14,
- 0xb1, 0xb8, 0x85, 0x5b, 0x1e, 0x21, 0x12, 0x21, 0xd3, 0xbe, 0x3b, 0x1b,
- 0x7d, 0x64, 0x20, 0x7f, 0x1a, 0x29, 0x08, 0x54, 0xac, 0x43, 0xf3, 0x34,
- 0x08, 0x50, 0xad, 0xf5, 0x85, 0x34, 0x36, 0xfe, 0x52, 0x51, 0xc7, 0xef,
- 0xa2, 0x6c, 0xe5, 0xa4, 0xc3, 0x35, 0xc2, 0x6c, 0xa3, 0xb9, 0x08, 0x3e,
- 0xb8, 0xcb, 0x5d, 0x32, 0x49, 0xf6, 0x31, 0x8b, 0x2b, 0xbe, 0x74, 0xb1,
- 0x78, 0x0d, 0x67, 0x42, 0x84, 0x8b, 0xcb, 0x0d, 0x09, 0xd6, 0x2b, 0x04,
- 0x32, 0x7c, 0x54, 0x8a, 0xed, 0x12, 0xec, 0x31, 0x56, 0x8c, 0xfc, 0xd3,
- 0x8f, 0xcf, 0x6f, 0xc3, 0xe2, 0x24, 0xc6, 0x06, 0x55, 0x49, 0xe2, 0xc3,
- 0x33, 0xca, 0x3e, 0x55, 0xa9, 0x02, 0xba, 0x5a, 0xf3, 0x18, 0xb5, 0x19,
- 0x84, 0xee, 0x7c, 0x07, 0x10, 0x6e, 0x87, 0x64, 0xa0, 0x3b, 0xd0, 0x08,
- 0x62, 0x61, 0x1c, 0xed, 0x6c, 0x62, 0x28, 0x53, 0x53, 0x3e, 0x3e, 0x75,
- 0xf6, 0x29, 0x37, 0x0d, 0xdf, 0xff, 0xdd, 0x67, 0x46, 0x65, 0xc5, 0x86,
- 0xfc, 0x16, 0xaf, 0xb3, 0x65, 0xe4, 0x69, 0x64, 0x25, 0x3c, 0x80, 0x9f,
- 0x42, 0x46, 0x6c, 0xc2, 0xc8, 0xb4, 0xc8, 0x1a, 0xe6, 0xe3, 0x70, 0x4a,
- 0xc5, 0xff, 0x61, 0xf1, 0xe9, 0xb3, 0xfc, 0x51, 0x55, 0x2d, 0x57, 0xa0,
- 0x65, 0x70, 0xe7, 0x65, 0xa7, 0xc5, 0x15, 0x69, 0x35, 0x66, 0xc4, 0x94,
- 0x09, 0xb1, 0x4a, 0xe6, 0x4d, 0x4e, 0xec, 0x22, 0xce, 0xa4, 0x8c, 0x8e,
- 0xcf, 0x66, 0x81, 0x76, 0xc1, 0xc2, 0xcb, 0x23, 0x23, 0x50, 0xbb, 0xa4,
- 0xf9, 0xde, 0x7a, 0x40, 0x54, 0x61, 0xcb, 0xa4, 0x79, 0x1d, 0x44, 0x05,
- 0x76, 0x59, 0xa4, 0x7b, 0x0f, 0x37, 0xa7, 0x8e, 0xba, 0xdf, 0xd0, 0x7f,
- 0x1e, 0xc0, 0x35, 0xbc, 0xfc, 0xd1, 0xf2, 0x6c, 0xf7, 0xb6, 0xb6, 0x7e,
- 0xfe, 0xb1, 0x11, 0x50, 0xf1, 0xe5, 0xcf, 0xbf, 0xbc, 0xf2, 0xb8, 0xc0,
- 0x13, 0x75, 0x59, 0xbc, 0xa5, 0x3f, 0x75, 0x42, 0x45, 0x6e, 0x22, 0x0d,
- 0x0b, 0x0b, 0x06, 0xe3, 0x0a, 0xdc, 0x76, 0xc4, 0x35, 0x38, 0x37, 0x7f,
- 0x13, 0x03, 0xff, 0xa3, 0x2f, 0xd2, 0x59, 0x49, 0xc9, 0x7a, 0x87, 0xef,
- 0xd4, 0x0f, 0x20, 0x7d, 0xfa, 0x9d, 0x80, 0x16, 0xdc, 0x25, 0x87, 0x15,
- 0x7a, 0x18, 0x16, 0xf8, 0x8b, 0x44, 0x7f, 0x0a, 0x26, 0x39, 0x16, 0xa0,
- 0x11, 0x17, 0x75, 0xff, 0x10, 0x88, 0xff, 0xbb, 0xc2, 0xa3, 0x5f, 0x04,
- 0x08, 0x22, 0x9a, 0xb6, 0x26, 0x5e, 0x0e, 0x86, 0x3f, 0x65, 0x2d, 0xda,
- 0xa5, 0x2c, 0x45, 0xe0, 0xce, 0x5c, 0x29, 0x0f, 0x8e, 0x1b, 0x57, 0x39,
- 0x5d, 0xf0, 0x62, 0x75, 0x55, 0xb5, 0x79, 0xc5, 0x13, 0xf4, 0x56, 0xca,
- 0x7c, 0xde, 0x15, 0x4b, 0x2a, 0x30, 0x20, 0x5d, 0xd8, 0xb2, 0x41, 0x85,
- 0xf8, 0x15, 0xd8, 0x27, 0x66, 0x55, 0x0a, 0xb7, 0x52, 0x13, 0xcd, 0xa3,
- 0xa8, 0x6f, 0x01, 0x47, 0x11, 0x46, 0xb9, 0x1a, 0x0b, 0x25, 0x72, 0xcb,
- 0x66, 0x1f, 0x73, 0xc1, 0x88, 0x0e, 0xe3, 0x51, 0x02, 0x6f, 0x89, 0x5a,
- 0x96, 0xaa, 0xac, 0xee, 0x8a, 0xe9, 0x53, 0xe8, 0x17, 0x4b, 0xd3, 0x3d,
- 0xd2, 0xf8, 0xb6, 0xde, 0xca, 0x8c, 0x6c, 0x6e, 0x08, 0xdd, 0x45, 0xc1,
- 0x9a, 0x82, 0xbb, 0xe2, 0xb0, 0x50, 0x24, 0x21, 0xfd, 0x23, 0x52, 0xd6,
- 0xd6, 0x91, 0x95, 0x6a, 0x63, 0xee, 0x4a, 0x2d, 0x60, 0x07, 0x9c, 0x0b,
- 0x86, 0x08, 0x64, 0x1d, 0x0d, 0x09, 0xe3, 0x4c, 0x5f, 0xc4, 0xae, 0xce,
- 0xfd, 0x96, 0xde, 0x5b, 0x56, 0x5c, 0xc7, 0x9d, 0x42, 0x22, 0x91, 0x58,
- 0x38, 0x40, 0x5b, 0xc4, 0xec, 0x18, 0x6a, 0x54, 0xd9, 0x3d, 0x37, 0xe0,
- 0x4b, 0x2c, 0xa8, 0xba, 0x49, 0x5f, 0xb3, 0x4b, 0xd7, 0x88, 0xa3, 0xf3,
- 0xf8, 0x10, 0x21, 0x07, 0x43, 0x14, 0x57, 0xbf, 0xd6, 0x09, 0x77, 0x2e,
- 0x29, 0xcf, 0x0b, 0x81, 0x58, 0xcc, 0x12, 0x43, 0x1a, 0x23, 0x18, 0x5e,
- 0xba, 0x65, 0xaa, 0x97, 0x24, 0xf2, 0x4c, 0x83, 0xc0, 0xe2, 0x2c, 0xf1,
- 0x00, 0x36, 0xc2, 0x90, 0x34, 0x61, 0x69, 0xb0, 0x30, 0x1e, 0xd4, 0x9e,
- 0xec, 0xbd, 0x36, 0xb2, 0xc2, 0x79, 0xf6, 0x5e, 0xa3, 0xf9, 0x82, 0x18,
- 0xae, 0x46, 0x84, 0xb9, 0x2f, 0xc0, 0x17, 0xd3, 0x2a, 0xef, 0xc1, 0x5a,
- 0x6c, 0x99, 0x93, 0xea, 0x34, 0x3e, 0xc4, 0x43, 0x67, 0xdd, 0x84, 0x35,
- 0xe1, 0xee, 0x70, 0xf3, 0x05, 0x55, 0x74, 0x3b, 0x8b, 0x72, 0x41, 0x6f,
- 0x45, 0x7d, 0x97, 0x2f, 0x7d, 0x76, 0xec, 0xef, 0x9f, 0x6e, 0x33, 0x73,
- 0xb1, 0x46, 0xd2, 0x30, 0x76, 0xea, 0xf7, 0x4f, 0xd2, 0x07, 0x18, 0x26,
- 0x34, 0xa9, 0x88, 0x5d, 0x4a, 0xb5, 0xa7, 0x74, 0xac, 0xe5, 0x8a, 0xee,
- 0xd2, 0x7b, 0x03, 0xef, 0x96, 0xd7, 0x22, 0xf8, 0xd7, 0xae, 0xc3, 0xd4,
- 0x0f, 0x93, 0x19, 0xea, 0x90, 0x99, 0x28, 0xe7, 0xdd, 0x50, 0x46, 0xb5,
- 0xd9, 0x11, 0xd4, 0x82, 0x11, 0x70, 0x85, 0x61, 0x38, 0x95, 0x78, 0x53,
- 0xfe, 0xb8, 0x3a, 0xc2, 0xf9, 0x1f, 0x77, 0x75, 0xfd, 0x20, 0x71, 0x4d,
- 0xc2, 0x95, 0x57, 0x56, 0x95, 0x97, 0x38, 0xf7, 0x73, 0x97, 0x4d, 0xed,
- 0x8a, 0xc7, 0xd8, 0x9b, 0x9a, 0x1c, 0x17, 0xe6, 0x9f, 0x72, 0x5b, 0xcb,
- 0x39, 0x1b, 0x27, 0x3a, 0xd0, 0xc5, 0x13, 0x4f, 0xb9, 0x38, 0xb1, 0x2e,
- 0x6b, 0xea, 0xa2, 0x71, 0xfb, 0xb5, 0x9a, 0xef, 0x66, 0xe8, 0x98, 0x7a,
- 0x10, 0x5a, 0x0f, 0x43, 0xa6, 0xbc, 0xe0, 0xcb, 0xc6, 0x28, 0x1e, 0x91,
- 0x95, 0xce, 0x70, 0xb9, 0x92, 0xf1, 0x75, 0xf3, 0xf5, 0xe1, 0x05, 0xa7,
- 0x70, 0x9e, 0x21, 0x69, 0xde, 0x0d, 0x10, 0x75, 0xd6, 0xf4, 0x9c, 0xa7,
- 0xae, 0x46, 0x91, 0x4b, 0x18, 0x9e, 0x33, 0x06, 0x0a, 0xc9, 0x59, 0xf3,
- 0xce, 0x30, 0x47, 0xba, 0x5c, 0x0e, 0x68, 0x35, 0x18, 0x8d, 0xc0, 0xc7,
- 0x26, 0x85, 0x16, 0x3f, 0xaf, 0xf2, 0x30, 0x2e, 0x81, 0x08, 0xaf, 0xaf,
- 0x0f, 0x8f, 0x0f, 0x2f, 0x0e, 0xbb, 0x30, 0x5e, 0xca, 0x6c, 0x8a, 0x1b,
- 0xac, 0xce, 0xc6, 0xd7, 0x73, 0xa2, 0xfb, 0x2b, 0xde, 0x12, 0x24, 0x7b,
- 0x7f, 0x9f, 0x8d, 0x5e, 0xef, 0x7f, 0xc7, 0x85, 0x05, 0xf9, 0xdc, 0x9c,
- 0x9e, 0x9d, 0x9c, 0xbe, 0x39, 0x7a, 0xf7, 0xba, 0x9f, 0x1c, 0x9c, 0x9c,
- 0xfe, 0xb9, 0x9f, 0xbc, 0x3d, 0xf9, 0xee, 0xb0, 0x83, 0xf2, 0x38, 0x16,
- 0xad, 0x23, 0x06, 0x4a, 0xcb, 0xec, 0xf0, 0x71, 0x95, 0x80, 0xec, 0x79,
- 0x66, 0x40, 0xf5, 0xe6, 0x47, 0x65, 0xb6, 0x8c, 0x52, 0x3a, 0xea, 0x87,
- 0xa2, 0xa5, 0xa3, 0x33, 0xf0, 0xcd, 0xe1, 0xfe, 0xeb, 0xf6, 0xb0, 0x4f,
- 0x4f, 0xce, 0x2f, 0xd0, 0x19, 0xcf, 0xcf, 0x4d, 0x9a, 0x59, 0x38, 0x31,
- 0x4c, 0x36, 0x79, 0xb3, 0xbe, 0x79, 0x93, 0x05, 0xe0, 0xa9, 0x74, 0x0c,
- 0x60, 0x30, 0x9b, 0xac, 0x2c, 0x4a, 0x8e, 0x68, 0x08, 0x17, 0x77, 0xf7,
- 0xd0, 0x6d, 0xc8, 0x0e, 0x6f, 0x2b, 0xcf, 0xa0, 0xe9, 0x70, 0x70, 0x32,
- 0x00, 0x59, 0xd6, 0x61, 0x55, 0xe5, 0x5a, 0xb5, 0x03, 0x3b, 0xb3, 0xd6,
- 0xe9, 0x47, 0x11, 0x3d, 0xc8, 0xa1, 0x0e, 0x41, 0x5c, 0x92, 0x48, 0x88,
- 0x54, 0xa3, 0xd9, 0x46, 0x19, 0x07, 0xdc, 0x54, 0xa8, 0x2f, 0x15, 0xc4,
- 0x72, 0x77, 0xb3, 0x78, 0x8b, 0x87, 0x44, 0xb4, 0x13, 0x84, 0x35, 0x36,
- 0x47, 0xf2, 0xfa, 0xf9, 0x0e, 0x35, 0xe6, 0x7f, 0xf0, 0x83, 0x2c, 0x6c,
- 0xd2, 0x85, 0x56, 0x01, 0xa1, 0x62, 0x79, 0x49, 0xa4, 0x99, 0x49, 0xe0,
- 0x88, 0x6c, 0x55, 0xe1, 0x43, 0x1a, 0x8f, 0xf8, 0x98, 0x5f, 0xe3, 0x80,
- 0xac, 0x8e, 0xa1, 0xb0, 0x0c, 0x57, 0xe1, 0xed, 0x48, 0x1e, 0xc8, 0xb4,
- 0xba, 0x16, 0x75, 0xdf, 0xae, 0x43, 0xa4, 0x8a, 0xbd, 0x6c, 0x65, 0x77,
- 0xce, 0x84, 0x4e, 0x33, 0x58, 0x07, 0x8c, 0x68, 0x70, 0xcc, 0xa3, 0x71,
- 0x45, 0x94, 0x11, 0x3b, 0x05, 0xa8, 0x0f, 0x62, 0x17, 0x73, 0xa9, 0xb8,
- 0xd7, 0x51, 0xb9, 0x6d, 0x20, 0x0a, 0x47, 0x65, 0x45, 0x3b, 0xb4, 0x30,
- 0x8e, 0xc4, 0xbe, 0x29, 0xfc, 0x50, 0x8b, 0x5f, 0xa4, 0xe3, 0x31, 0xed,
- 0x6f, 0x47, 0xa2, 0x4d, 0xe1, 0x0f, 0xf6, 0x93, 0xed, 0x56, 0x19, 0x9b,
- 0x2a, 0x19, 0x48, 0xd5, 0x68, 0xc9, 0xfc, 0x8a, 0xd3, 0x1c, 0xdf, 0xac,
- 0xe0, 0x85, 0x61, 0x91, 0x40, 0x5d, 0xfb, 0x80, 0x2b, 0x1d, 0x1f, 0xd1,
- 0x09, 0xe0, 0x91, 0x47, 0xc9, 0x0e, 0x08, 0xfb, 0x43, 0xbd, 0xe8, 0x9c,
- 0x0f, 0x05, 0xd6, 0x9b, 0xda, 0x8a, 0x3b, 0x66, 0x6c, 0xed, 0xce, 0x9e,
- 0xf9, 0x8b, 0xc7, 0xba, 0x8e, 0x6c, 0x87, 0x67, 0x87, 0x17, 0x67, 0xad,
- 0x50, 0x88, 0xe7, 0x1d, 0x06, 0xd0, 0x0d, 0xc6, 0xf2, 0xee, 0xec, 0x95,
- 0xbf, 0x58, 0xd5, 0x2b, 0xd8, 0x01, 0xf7, 0xfb, 0x50, 0xc6, 0xf6, 0x93,
- 0x2e, 0x1c, 0xee, 0x0d, 0x41, 0x0d, 0xef, 0xe8, 0x8f, 0xbf, 0x78, 0x60,
- 0x96, 0xdf, 0x1c, 0x1e, 0x9f, 0xc6, 0xb3, 0xfc, 0xee, 0xec, 0xcd, 0x9f,
- 0x87, 0x0f, 0xe4, 0xe2, 0xfe, 0xe3, 0x63, 0xa9, 0x3f, 0xa6, 0x75, 0xdd,
- 0x09, 0xc0, 0x5f, 0xa5, 0x30, 0x75, 0x5a, 0x6d, 0x06, 0x06, 0xfe, 0x90,
- 0x32, 0x8b, 0x75, 0x84, 0xcc, 0xad, 0xc1, 0x04, 0x88, 0x8b, 0xa8, 0x8b,
- 0x48, 0xc8, 0x32, 0x79, 0xd4, 0xea, 0xd5, 0xd3, 0x2d, 0x24, 0x65, 0x1e,
- 0xe8, 0x33, 0x57, 0xb3, 0x12, 0xdf, 0xf1, 0x58, 0xf2, 0x11, 0x97, 0x31,
- 0x1a, 0x06, 0x98, 0x07, 0x1d, 0xa2, 0x3e, 0xcb, 0x6d, 0x8c, 0x5e, 0xc8,
- 0xbd, 0x39, 0x59, 0xef, 0xe3, 0xe4, 0x6a, 0x58, 0x94, 0x39, 0x1b, 0x35,
- 0xb5, 0xb8, 0xa4, 0x34, 0x96, 0xa0, 0x34, 0x33, 0x1f, 0x6b, 0x3e, 0x42,
- 0x5d, 0xcd, 0x59, 0x9c, 0x95, 0x00, 0x2e, 0x24, 0x71, 0xd3, 0x33, 0x98,
- 0x44, 0xf8, 0x3b, 0xd7, 0xaa, 0xe9, 0x17, 0x5d, 0xe1, 0x88, 0xd5, 0x3d,
- 0xed, 0xf3, 0xcc, 0x73, 0x5e, 0xd3, 0xce, 0xdc, 0x6c, 0xfd, 0x44, 0x39,
- 0x0c, 0x8e, 0x38, 0x6b, 0x09, 0x3c, 0x96, 0x58, 0x93, 0xca, 0x49, 0x93,
- 0x6a, 0x6c, 0xd8, 0x3d, 0x22, 0x4f, 0xd9, 0xb7, 0xa4, 0xf5, 0x64, 0xf8,
- 0xdf, 0xce, 0x0a, 0x62, 0xce, 0x3f, 0xc6, 0xb3, 0x61, 0x1f, 0xbc, 0xd6,
- 0x43, 0x91, 0x97, 0xa5, 0xf4, 0xc9, 0xa8, 0xe5, 0x55, 0xd2, 0x80, 0xee,
- 0x08, 0x70, 0x23, 0xe8, 0x50, 0xb0, 0x7c, 0xfa, 0x0d, 0x37, 0x25, 0x97,
- 0xcf, 0x04, 0x0e, 0x89, 0xd8, 0x1b, 0xa9, 0xfb, 0xe0, 0x85, 0x68, 0x4e,
- 0x1e, 0x3c, 0xdd, 0x21, 0x12, 0x06, 0x43, 0x32, 0x42, 0xdd, 0xb1, 0x0a,
- 0x1e, 0x9e, 0xab, 0xff, 0xf9, 0xb1, 0x3a, 0x6e, 0x12, 0x46, 0x5f, 0x25,
- 0x01, 0x68, 0x96, 0x4a, 0xab, 0x4b, 0xd5, 0xaf, 0x71, 0x0f, 0x82, 0x33,
- 0x63, 0x4d, 0xd6, 0x3a, 0x1d, 0xc4, 0xa4, 0x87, 0xd6, 0xe3, 0x06, 0x3c,
- 0x13, 0x02, 0xfe, 0x89, 0x8e, 0x45, 0x8e, 0xa2, 0x5b, 0xa2, 0x9f, 0x48,
- 0xa5, 0x1e, 0x09, 0x21, 0xd3, 0xf7, 0x06, 0x1d, 0x86, 0x34, 0xb6, 0x17,
- 0xae, 0xb8, 0xc4, 0xfe, 0x71, 0xa7, 0xf8, 0xcf, 0x9e, 0x28, 0x64, 0x11,
- 0x5f, 0xe2, 0x8f, 0x5f, 0x44, 0x16, 0x41, 0x99, 0x1c, 0x71, 0x5d, 0x6e,
- 0x10, 0xed, 0x37, 0xe8, 0x63, 0x10, 0xa5, 0x0a, 0x4f, 0x36, 0x25, 0x17,
- 0xd3, 0x6f, 0xb6, 0x5a, 0x06, 0x59, 0xee, 0x68, 0xd2, 0x44, 0xf0, 0x0c,
- 0x70, 0x49, 0x62, 0x15, 0x5e, 0xf6, 0x58, 0xb2, 0xa7, 0x72, 0xae, 0x3e,
- 0xcd, 0x17, 0x32, 0x4e, 0x4f, 0xf6, 0x5b, 0xc2, 0xd5, 0xfd, 0x0d, 0x70,
- 0x75, 0x5c, 0x6c, 0x16, 0x07, 0xe0, 0xe5, 0x84, 0x4d, 0xa7, 0x24, 0x1d,
- 0x73, 0xb0, 0x04, 0x35, 0xfd, 0xc5, 0x7f, 0x76, 0xd7, 0x7a, 0xb5, 0xe2,
- 0xea, 0x5a, 0x31, 0x42, 0xd0, 0x0f, 0xc4, 0xe5, 0xc2, 0x0a, 0x29, 0x57,
- 0xe2, 0x42, 0x19, 0xcd, 0x59, 0x31, 0x51, 0xbc, 0xb6, 0xb4, 0xf6, 0x4b,
- 0x9d, 0x75, 0x22, 0x6b, 0x49, 0xa5, 0x2d, 0x3e, 0x85, 0xc8, 0x07, 0xa3,
- 0x95, 0x2d, 0xe6, 0x2b, 0xdb, 0x0b, 0xdc, 0x03, 0x11, 0x04, 0xad, 0x96,
- 0x24, 0x62, 0x29, 0x29, 0x9a, 0x8f, 0x69, 0x93, 0x2c, 0x0f, 0x89, 0x30,
- 0x4c, 0xb7, 0x11, 0x1e, 0x12, 0x49, 0xaa, 0x8a, 0x6f, 0x25, 0xda, 0x07,
- 0x95, 0x23, 0x59, 0x78, 0x11, 0xf0, 0x4a, 0x0e, 0x07, 0x77, 0x45, 0x5e,
- 0x69, 0x98, 0x95, 0x41, 0x0e, 0x72, 0x54, 0x0b, 0xca, 0x29, 0xa4, 0x2e,
- 0x04, 0x74, 0xad, 0xd3, 0xcd, 0xe1, 0x2a, 0x17, 0x5e, 0x65, 0x06, 0x04,
- 0x29, 0x93, 0xb3, 0x4c, 0x27, 0x0c, 0x6a, 0x63, 0xc6, 0x93, 0xd9, 0x14,
- 0x33, 0x7e, 0xe7, 0x56, 0x38, 0x84, 0xc4, 0x06, 0x8c, 0x12, 0x35, 0xca,
- 0xef, 0x2b, 0x84, 0x12, 0x40, 0x93, 0xb4, 0x76, 0x24, 0x9a, 0x0d, 0x56,
- 0x24, 0xca, 0x4f, 0xa9, 0x9b, 0x05, 0x63, 0x2c, 0xb9, 0x88, 0x9d, 0x07,
- 0x86, 0x37, 0x11, 0xae, 0xa8, 0x19, 0x2f, 0x19, 0x4b, 0x2d, 0xd9, 0x18,
- 0x6c, 0x3a, 0x11, 0x19, 0xf5, 0xf9, 0x84, 0x34, 0x62, 0x9f, 0x7f, 0xea,
- 0x02, 0x75, 0x5d, 0x4a, 0x89, 0x54, 0x79, 0x30, 0x0a, 0x51, 0x9a, 0xe0,
- 0xce, 0xb6, 0xc4, 0xf0, 0x6e, 0xdc, 0x12, 0xf0, 0xc3, 0x91, 0x5c, 0xd6,
- 0x6a, 0x6c, 0x9e, 0xdd, 0x85, 0x8d, 0x79, 0x25, 0xd5, 0x35, 0xf8, 0x1b,
- 0x9e, 0xa9, 0x6b, 0x91, 0xdf, 0xa7, 0x8b, 0xc8, 0x7a, 0x83, 0x08, 0x09,
- 0xfe, 0x66, 0xa8, 0xcc, 0x5b, 0xa4, 0xc8, 0x54, 0x82, 0xf4, 0x51, 0xb1,
- 0x33, 0x04, 0x4d, 0x73, 0x90, 0x8f, 0x9d, 0x38, 0x26, 0xd5, 0x35, 0x5f,
- 0xaa, 0x0e, 0x87, 0xa1, 0x51, 0x64, 0xe4, 0x6d, 0x1f, 0xe5, 0xb9, 0xe6,
- 0x71, 0x70, 0xd6, 0x5b, 0x7c, 0x38, 0x4c, 0x5e, 0x6b, 0xaa, 0x05, 0x32,
- 0x8c, 0x96, 0x57, 0x19, 0x86, 0x85, 0xc8, 0xfb, 0xa0, 0x99, 0xef, 0x34,
- 0x2f, 0xaa, 0x83, 0x50, 0xf4, 0xfd, 0xaa, 0x91, 0xab, 0x21, 0x0e, 0x22,
- 0x41, 0x68, 0x9b, 0x5b, 0x81, 0xb3, 0x11, 0xfe, 0x36, 0x8b, 0x71, 0x8e,
- 0x58, 0xe1, 0x6a, 0xd8, 0xa1, 0xd2, 0x88, 0xcb, 0x09, 0x13, 0xf7, 0xce,
- 0x22, 0xf3, 0xae, 0xd8, 0xfb, 0x2c, 0xab, 0x6a, 0x1a, 0x93, 0x35, 0xdd,
- 0x85, 0xe3, 0x00, 0x3d, 0xf5, 0x49, 0x39, 0x81, 0x47, 0xf5, 0x9e, 0x1f,
- 0x2d, 0xd3, 0x52, 0x54, 0xef, 0xf9, 0x8d, 0x99, 0xdc, 0xc5, 0x90, 0x94,
- 0x8d, 0x97, 0x75, 0x13, 0xa0, 0x32, 0xf4, 0x4d, 0x5b, 0x21, 0x4b, 0x0c,
- 0x6b, 0x03, 0x3e, 0x34, 0xdd, 0x8f, 0xf5, 0x53, 0x33, 0xb7, 0xef, 0xad,
- 0x6f, 0xaa, 0x5f, 0x51, 0x5c, 0xc4, 0xfa, 0x71, 0x17, 0x18, 0x84, 0x8d,
- 0xb9, 0xcc, 0x04, 0xaa, 0xae, 0x2e, 0x4c, 0x3c, 0xea, 0xec, 0x9e, 0x28,
- 0xb2, 0x9c, 0x74, 0xf5, 0xfd, 0x46, 0xaa, 0xc3, 0x07, 0x5d, 0x3b, 0xc3,
- 0xa6, 0x16, 0x8e, 0xaf, 0xa2, 0xc4, 0x93, 0xa8, 0x67, 0x98, 0x1e, 0x86,
- 0xc9, 0xbe, 0x0b, 0xc2, 0xb7, 0x57, 0x6d, 0xfd, 0xa3, 0x88, 0x7c, 0x04,
- 0xb9, 0x79, 0x10, 0x40, 0x96, 0xea, 0xf1, 0x91, 0xcb, 0x83, 0x8c, 0x66,
- 0x71, 0x53, 0x8e, 0x9e, 0xd2, 0x8f, 0x6f, 0xf9, 0x07, 0x33, 0x20, 0x56,
- 0xbc, 0x04, 0x79, 0x5b, 0xc0, 0xbb, 0x62, 0x4e, 0xc3, 0x45, 0xc5, 0xf4,
- 0x87, 0x6e, 0x7a, 0x65, 0x29, 0x37, 0x9c, 0xb2, 0xe4, 0x4b, 0xd7, 0xc0,
- 0x81, 0x6e, 0xed, 0xf4, 0xcd, 0xf2, 0xb8, 0xb6, 0x32, 0x64, 0xeb, 0x5c,
- 0x00, 0xa6, 0xa5, 0xee, 0xd1, 0xb9, 0xe8, 0x8d, 0xb4, 0x08, 0xb1, 0x68,
- 0x42, 0x4b, 0xf5, 0x37, 0x36, 0x64, 0x2f, 0x49, 0x93, 0x21, 0xc2, 0x1e,
- 0xc3, 0x46, 0x3a, 0x73, 0x1c, 0x0f, 0x65, 0xbc, 0x1d, 0xd0, 0x8f, 0x40,
- 0x03, 0xc2, 0xa4, 0x0d, 0x1d, 0x35, 0x96, 0xf8, 0xec, 0xbc, 0xae, 0x9c,
- 0xb2, 0xa4, 0xba, 0xca, 0x8f, 0x56, 0xc2, 0xeb, 0x83, 0x4b, 0xf5, 0x9a,
- 0x93, 0x09, 0x4d, 0x0c, 0x94, 0xa3, 0x80, 0x84, 0xae, 0xd4, 0x6d, 0xf6,
- 0x68, 0x99, 0x5b, 0xcd, 0x6d, 0x3c, 0xac, 0xd6, 0x5d, 0xc9, 0xcf, 0x5d,
- 0x31, 0x4e, 0xa4, 0x3b, 0xa2, 0xb6, 0x18, 0x72, 0xc0, 0x6e, 0x0c, 0x18,
- 0x66, 0x96, 0xcd, 0x18, 0x31, 0xd4, 0x67, 0x30, 0x42, 0x4c, 0x44, 0xda,
- 0x39, 0x3a, 0x5f, 0xe1, 0x28, 0x9c, 0x70, 0x76, 0x3b, 0xdb, 0x4a, 0x24,
- 0x99, 0xe1, 0x5f, 0x22, 0x77, 0x41, 0x75, 0x3f, 0x1f, 0x5f, 0xbf, 0x7e,
- 0x77, 0xbe, 0xb6, 0x3a, 0x04, 0xa3, 0x31, 0x39, 0x3c, 0x5f, 0x16, 0x73,
- 0x26, 0x86, 0x20, 0x32, 0x85, 0xb5, 0xa6, 0xfd, 0xe0, 0xbb, 0xee, 0xe6,
- 0x1a, 0x2f, 0x98, 0x30, 0x80, 0x80, 0x6a, 0xb1, 0xdd, 0x68, 0x50, 0x27,
- 0x2e, 0xd2, 0x41, 0xca, 0x47, 0xa1, 0xbb, 0xe0, 0xb2, 0x3b, 0xd3, 0x9c,
- 0x54, 0x95, 0x4d, 0xac, 0xc9, 0x12, 0xc5, 0x37, 0x19, 0xfd, 0x24, 0xa6,
- 0x6b, 0xd4, 0xa2, 0xb3, 0x1f, 0xbf, 0x64, 0x9b, 0x8f, 0xd3, 0xf2, 0x2a,
- 0xeb, 0x40, 0x65, 0x0d, 0x57, 0xa8, 0x81, 0x13, 0x15, 0x28, 0x00, 0x44,
- 0xab, 0x53, 0x7e, 0x5d, 0xc8, 0xb4, 0xaf, 0xd4, 0x8a, 0x8f, 0xca, 0x55,
- 0x53, 0xa2, 0x45, 0xd9, 0xfd, 0xfa, 0xab, 0xf8, 0x82, 0x7c, 0xfd, 0x6e,
- 0x45, 0x77, 0xfc, 0xcd, 0xc0, 0xe4, 0x21, 0xb5, 0x98, 0x06, 0x80, 0x07,
- 0xf1, 0x5a, 0x28, 0x14, 0x77, 0xf7, 0x00, 0x0c, 0xa7, 0xfb, 0x11, 0x2e,
- 0x41, 0x4f, 0xe8, 0x8f, 0x07, 0x1f, 0x54, 0xd0, 0xbf, 0xee, 0xae, 0x18,
- 0x0d, 0x70, 0xe3, 0x5c, 0x6a, 0xd5, 0x9d, 0x49, 0xf0, 0xd6, 0xa9, 0x9a,
- 0xf1, 0x37, 0x3b, 0xb6, 0x68, 0x25, 0xe4, 0xa0, 0x07, 0x89, 0x48, 0x50,
- 0xce, 0x6c, 0x2d, 0x66, 0x3e, 0xbb, 0xf2, 0x63, 0x6b, 0xd7, 0xa9, 0xc3,
- 0x4e, 0xa8, 0xc5, 0x21, 0x1d, 0xe4, 0x31, 0x1f, 0x7a, 0x4b, 0xc2, 0x18,
- 0xdf, 0x57, 0x8f, 0x9f, 0x0c, 0xb7, 0x15, 0xee, 0x9d, 0x64, 0x63, 0x44,
- 0x97, 0xa0, 0xbb, 0x36, 0xa5, 0xfa, 0xd7, 0x53, 0x40, 0x1f, 0x76, 0x37,
- 0xf7, 0xec, 0xf3, 0x67, 0x4f, 0x37, 0x37, 0xfb, 0x6a, 0x0d, 0xb4, 0x24,
- 0x3b, 0x76, 0x8e, 0x31, 0x2b, 0x10, 0xb3, 0x39, 0x8f, 0xf9, 0x1a, 0x79,
- 0xdb, 0x01, 0xf2, 0x4b, 0x77, 0x73, 0x7c, 0x35, 0xd8, 0xab, 0xbc, 0x2e,
- 0x8c, 0xf9, 0x01, 0x26, 0xe9, 0x70, 0x37, 0x52, 0x63, 0x33, 0x15, 0xdd,
- 0x6d, 0xea, 0x35, 0x5a, 0x79, 0xd0, 0xa0, 0x5b, 0x78, 0xe0, 0x1b, 0xf1,
- 0xd5, 0x81, 0x33, 0xd9, 0xe5, 0xc5, 0x40, 0xe4, 0x6f, 0x8e, 0x8e, 0x0f,
- 0x1d, 0x1f, 0xf9, 0xaf, 0xad, 0x21, 0x0f, 0xb2, 0x1c, 0x47, 0x5c, 0x53,
- 0x04, 0xc9, 0x20, 0x89, 0xbd, 0x9f, 0xa0, 0x24, 0xec, 0xb7, 0x7d, 0xd1,
- 0x66, 0xf1, 0xb1, 0xf7, 0x18, 0x50, 0xc3, 0x87, 0xef, 0xbe, 0x3b, 0x3a,
- 0x3b, 0x79, 0xf7, 0xf6, 0xf0, 0x9d, 0x4b, 0x16, 0xe1, 0xeb, 0xb9, 0xcb,
- 0xab, 0x5a, 0xc5, 0x0e, 0xab, 0x9c, 0xd3, 0x8d, 0x58, 0x20, 0x65, 0x07,
- 0x22, 0xcf, 0x82, 0x76, 0x4b, 0xff, 0x1a, 0x86, 0xcd, 0x05, 0x0f, 0xd9,
- 0xbe, 0x31, 0x91, 0x2c, 0x38, 0xc8, 0x7b, 0xc2, 0xc9, 0x78, 0x43, 0xc9,
- 0x9c, 0x11, 0xe7, 0x58, 0x2e, 0x8e, 0xdd, 0x8f, 0xe3, 0x4c, 0x2b, 0x11,
- 0x54, 0x41, 0xf5, 0x47, 0x4b, 0x1d, 0xf3, 0x09, 0x76, 0x8d, 0x41, 0x78,
- 0x52, 0x7b, 0x2f, 0x25, 0x2b, 0x56, 0x78, 0x88, 0x81, 0xa8, 0x51, 0x07,
- 0xbe, 0xc4, 0x6b, 0xf5, 0xb4, 0x09, 0xd8, 0xad, 0x58, 0x79, 0xc3, 0xca,
- 0x11, 0x1e, 0x0f, 0xd7, 0x82, 0x2c, 0xda, 0xea, 0x7f, 0x30, 0x83, 0x46,
- 0xf8, 0x05, 0x4a, 0x9e, 0x7c, 0xa1, 0xb1, 0x16, 0x31, 0x02, 0x64, 0x15,
- 0x3a, 0x34, 0x85, 0x08, 0x02, 0xfc, 0x0a, 0x38, 0x82, 0xd7, 0xc2, 0xbb,
- 0xfe, 0xc3, 0xe9, 0xd9, 0xc9, 0x0f, 0x7f, 0xfe, 0x07, 0x77, 0x11, 0x1c,
- 0xed, 0x1f, 0xf9, 0xc6, 0xb3, 0xc6, 0x7f, 0xfe, 0x55, 0xbd, 0x3d, 0xd8,
- 0x5d, 0xb3, 0xfd, 0x7e, 0xb3, 0xa4, 0x42, 0x64, 0x6a, 0x81, 0xe3, 0x52,
- 0x40, 0xf0, 0xcd, 0x8d, 0xe9, 0x63, 0xaf, 0x1d, 0x73, 0x90, 0x38, 0xab,
- 0xaa, 0x05, 0x39, 0x1d, 0xab, 0x53, 0x40, 0x50, 0x47, 0x85, 0x48, 0x2f,
- 0x2f, 0x85, 0x75, 0x22, 0xfb, 0x28, 0xc9, 0x81, 0xfb, 0xdf, 0xad, 0xc7,
- 0xfe, 0xf1, 0xf1, 0xaf, 0x5f, 0x04, 0x8b, 0x5d, 0x68, 0x2e, 0x03, 0x0c,
- 0x20, 0x6e, 0x42, 0x03, 0x27, 0xe0, 0x1a, 0xf9, 0x77, 0x00, 0x71, 0xba,
- 0xe1, 0xbc, 0x3b, 0xd1, 0xd1, 0x88, 0x9b, 0x74, 0x50, 0x65, 0xa4, 0x08,
- 0xc0, 0x43, 0xc5, 0x2a, 0x17, 0x5f, 0x8b, 0x3c, 0xb0, 0xa8, 0x0e, 0x75,
- 0xf8, 0xa5, 0xdc, 0x5d, 0xb2, 0x8e, 0x02, 0xcc, 0x84, 0xc4, 0xfd, 0xc2,
- 0x79, 0xf8, 0xa5, 0x70, 0x0d, 0x2a, 0x92, 0x21, 0x84, 0xa4, 0x23, 0x2e,
- 0x83, 0xed, 0xc6, 0x1c, 0xec, 0x55, 0xe6, 0xd5, 0x0d, 0x50, 0x0f, 0xf8,
- 0x50, 0xf6, 0xa5, 0xa2, 0x6b, 0x8d, 0xda, 0xf5, 0xac, 0x31, 0x60, 0x28,
- 0x34, 0x76, 0x19, 0x31, 0xfd, 0x7b, 0x71, 0x72, 0x70, 0x72, 0x4c, 0xbf,
- 0x1c, 0xbe, 0x39, 0xfa, 0xc1, 0x33, 0x34, 0x29, 0x65, 0xa3, 0x9c, 0xd7,
- 0x18, 0x84, 0x2b, 0x6d, 0x13, 0x3b, 0xfc, 0x15, 0x7d, 0xa3, 0x1d, 0x67,
- 0xb4, 0xe6, 0xa3, 0x3c, 0x5c, 0xb8, 0x91, 0xfa, 0xbc, 0x03, 0xb8, 0x8f,
- 0x87, 0xa2, 0x8b, 0xdc, 0x2a, 0x1f, 0x35, 0x76, 0x08, 0x17, 0x71, 0xc8,
- 0xf4, 0x9a, 0x7b, 0x2b, 0x83, 0x82, 0x3c, 0x95, 0x5f, 0xba, 0x98, 0xc4,
- 0xd0, 0xe0, 0x6a, 0x36, 0x16, 0x35, 0xb2, 0xb0, 0x6d, 0xd8, 0x83, 0x65,
- 0xb3, 0xc6, 0xdd, 0x0f, 0x26, 0x69, 0xca, 0x77, 0x10, 0x22, 0xa4, 0x21,
- 0x25, 0x6b, 0x61, 0x18, 0x8b, 0x1f, 0x2c, 0xbc, 0xd5, 0xae, 0xb9, 0xe6,
- 0x9c, 0x74, 0x01, 0x34, 0x61, 0x1c, 0x29, 0x87, 0x08, 0x80, 0xf0, 0x0a,
- 0x90, 0x0b, 0xa6, 0xea, 0x00, 0x2f, 0x80, 0xc1, 0x0f, 0xca, 0xe4, 0x5f,
- 0x97, 0xf9, 0x6d, 0x0a, 0x5c, 0x04, 0x80, 0x2a, 0xc8, 0x4b, 0xad, 0x36,
- 0xd2, 0x5f, 0xd5, 0x48, 0xda, 0x6c, 0xe5, 0xd9, 0xaf, 0x69, 0xe4, 0x59,
- 0xab, 0x8d, 0xeb, 0x5f, 0xd5, 0x88, 0x2b, 0xc9, 0x46, 0xd7, 0xe2, 0x0f,
- 0x47, 0x17, 0xc9, 0xc1, 0xc9, 0x6b, 0x4f, 0xa3, 0x17, 0xee, 0x6a, 0x4f,
- 0x49, 0xae, 0x21, 0x61, 0x1c, 0xf6, 0x35, 0x94, 0xe5, 0x85, 0x87, 0x41,
- 0x6b, 0x16, 0x8b, 0xef, 0x4e, 0x6d, 0x61, 0xd7, 0x59, 0x8e, 0x8f, 0x4a,
- 0x71, 0xed, 0x85, 0x3e, 0xc0, 0x66, 0x89, 0x63, 0x17, 0x01, 0xc5, 0x94,
- 0xcd, 0x95, 0x19, 0xd2, 0xd2, 0x30, 0x58, 0x46, 0x29, 0xfb, 0x9e, 0xe7,
- 0xe2, 0xb0, 0x67, 0x4d, 0xa0, 0x76, 0x55, 0xd8, 0x69, 0x04, 0x6b, 0x4e,
- 0xb6, 0x55, 0x0c, 0x19, 0xc4, 0x6e, 0x89, 0xfa, 0x9f, 0xd7, 0x3a, 0x9a,
- 0x46, 0x06, 0xfa, 0x8e, 0x72, 0xc2, 0x79, 0x83, 0x62, 0xb4, 0x26, 0x07,
- 0x24, 0x2f, 0x96, 0xda, 0xe0, 0xcb, 0xc2, 0x79, 0xe4, 0x7b, 0x71, 0xee,
- 0x74, 0x79, 0x2d, 0x99, 0x1c, 0xb1, 0x28, 0xd7, 0x84, 0xeb, 0x67, 0x57,
- 0x7e, 0xbc, 0xa1, 0x5b, 0x5a, 0xbc, 0xc0, 0x9a, 0xba, 0x9c, 0xff, 0x2d,
- 0xb8, 0xa3, 0x9f, 0xf8, 0x70, 0x9d, 0x59, 0x3a, 0x95, 0x20, 0x2a, 0x89,
- 0x1e, 0x25, 0x7d, 0xa7, 0x4e, 0x3f, 0x22, 0xee, 0x8d, 0x45, 0x22, 0xac,
- 0xe1, 0x38, 0x60, 0x83, 0x4f, 0x95, 0x39, 0x27, 0xa6, 0xda, 0xcb, 0xf9,
- 0x33, 0x97, 0x81, 0x4f, 0xb1, 0xb5, 0x20, 0x5a, 0x0e, 0xf6, 0x51, 0xe8,
- 0x2e, 0x71, 0x51, 0x54, 0x5c, 0x20, 0xb9, 0xdb, 0xc1, 0xee, 0xba, 0x35,
- 0xb8, 0xa7, 0x42, 0x02, 0xed, 0x11, 0x5d, 0x91, 0x8f, 0x73, 0x04, 0x6d,
- 0x69, 0x1d, 0x53, 0x94, 0x0a, 0x4b, 0x64, 0xd1, 0x06, 0x2b, 0xec, 0xb5,
- 0x45, 0x22, 0x96, 0x43, 0x35, 0x20, 0xa9, 0xfc, 0x31, 0x29, 0xb0, 0x92,
- 0x12, 0x8e, 0xc6, 0xe5, 0x61, 0xe9, 0x8b, 0x7b, 0x71, 0x9a, 0xa7, 0xf3,
- 0xa2, 0x03, 0x47, 0xca, 0x6d, 0x8c, 0x2a, 0xc1, 0x5e, 0xe3, 0x7c, 0x26,
- 0x3f, 0x0e, 0x8c, 0x97, 0x5b, 0x79, 0x34, 0x63, 0xe2, 0x30, 0xf8, 0x88,
- 0xe1, 0xd1, 0xb8, 0x96, 0x94, 0x02, 0x1c, 0x4b, 0xca, 0x22, 0xcf, 0x35,
- 0x0e, 0x69, 0xd1, 0x56, 0x02, 0xd5, 0xe3, 0xf9, 0x8a, 0x7e, 0xb8, 0x31,
- 0xd9, 0x37, 0xe9, 0xa4, 0x9d, 0xeb, 0xc2, 0xed, 0xc7, 0xad, 0x7d, 0xd6,
- 0x26, 0x11, 0xcb, 0x3b, 0x61, 0xb4, 0xd4, 0x22, 0xcc, 0x40, 0xfb, 0x5c,
- 0x9f, 0x64, 0x2b, 0xc4, 0x5d, 0xc6, 0x96, 0x23, 0x17, 0x23, 0x5d, 0x66,
- 0x8b, 0xa9, 0x9b, 0xa2, 0x7d, 0x88, 0x84, 0x37, 0x38, 0x23, 0xb1, 0xe2,
- 0x63, 0x1d, 0x6f, 0x1c, 0x80, 0x17, 0x0a, 0x8c, 0x2f, 0x7c, 0x27, 0x29,
- 0x52, 0x94, 0x88, 0x48, 0xe6, 0xb9, 0x23, 0x48, 0x2d, 0xf4, 0x8c, 0x8f,
- 0x38, 0xc9, 0x9e, 0xae, 0x81, 0xc2, 0xfd, 0x6d, 0x6f, 0xc4, 0x81, 0x3c,
- 0x72, 0x53, 0xf8, 0xec, 0x07, 0xac, 0xc3, 0xb2, 0x14, 0xa8, 0x1b, 0x5f,
- 0xae, 0xc4, 0x02, 0x31, 0x64, 0x21, 0x4a, 0x86, 0x13, 0x1d, 0x26, 0x6f,
- 0xe3, 0xd4, 0xe9, 0xe2, 0xb2, 0x56, 0xbc, 0x38, 0xb6, 0xb4, 0x4f, 0xc2,
- 0x3a, 0xf1, 0x7c, 0x25, 0xfb, 0x06, 0x71, 0x02, 0xdc, 0xbd, 0x83, 0x00,
- 0xcc, 0x24, 0xc6, 0x04, 0xf0, 0x25, 0xac, 0xfd, 0x3a, 0xec, 0xec, 0xb4,
- 0x17, 0xfb, 0x74, 0xff, 0xfc, 0xdc, 0x16, 0xfa, 0x20, 0x5c, 0x50, 0x59,
- 0x42, 0x4d, 0x11, 0x02, 0x9c, 0xa6, 0x22, 0xe7, 0xc4, 0xea, 0x8e, 0xb6,
- 0xd1, 0x4a, 0x2d, 0xdc, 0x79, 0xe2, 0xfa, 0x72, 0x5d, 0x7d, 0x27, 0x6d,
- 0xf5, 0x3f, 0xb1, 0xab, 0xee, 0xbe, 0xbe, 0xeb, 0xe8, 0xeb, 0x69, 0x44,
- 0x44, 0xbb, 0xbb, 0x9f, 0x19, 0x0e, 0x8d, 0xc0, 0xf1, 0x4f, 0x13, 0xdf,
- 0x61, 0xd0, 0x23, 0x3d, 0x37, 0x50, 0x2c, 0xd7, 0xac, 0xa3, 0xc0, 0x18,
- 0xfc, 0x68, 0xf3, 0xb0, 0xab, 0x67, 0xae, 0x2b, 0xd2, 0x99, 0x7a, 0x70,
- 0x9a, 0xe9, 0x21, 0x89, 0xce, 0x8e, 0x2b, 0x61, 0x78, 0xc4, 0x6b, 0x40,
- 0x62, 0x58, 0xed, 0x82, 0x80, 0x5a, 0x5d, 0xd9, 0x28, 0x82, 0x7e, 0x3e,
- 0xf3, 0x53, 0xf2, 0xe3, 0x66, 0xc5, 0x46, 0xa1, 0xe9, 0x86, 0xc1, 0x61,
- 0x75, 0x84, 0x62, 0xe9, 0x09, 0x2e, 0x5c, 0xae, 0xcd, 0x67, 0xe4, 0x55,
- 0xdf, 0x8b, 0x1c, 0xbf, 0x53, 0x26, 0x62, 0x2d, 0x0d, 0x34, 0x4c, 0x4e,
- 0xa0, 0x84, 0x35, 0x20, 0x84, 0xa1, 0xca, 0xf2, 0x71, 0x77, 0x45, 0x1f,
- 0xc2, 0xd3, 0xbe, 0xf3, 0xc2, 0xaf, 0x89, 0x0d, 0xc9, 0x9c, 0x96, 0x5b,
- 0x7a, 0x7c, 0xbc, 0x7f, 0xc4, 0x62, 0x12, 0x32, 0x44, 0x88, 0x70, 0xd2,
- 0x19, 0x70, 0x31, 0x23, 0x50, 0x43, 0x3a, 0x52, 0x9b, 0xce, 0xb5, 0x70,
- 0x09, 0x4e, 0x12, 0xdc, 0x41, 0x9e, 0x92, 0xff, 0xba, 0x64, 0x86, 0x84,
- 0x5b, 0x97, 0x11, 0xc7, 0xe4, 0x4f, 0x7b, 0x4f, 0x60, 0x6a, 0xb8, 0x82,
- 0x18, 0x6e, 0x65, 0x9f, 0x97, 0xa5, 0x27, 0xc3, 0xad, 0xbf, 0x4f, 0x92,
- 0x95, 0x72, 0x1d, 0xc2, 0x38, 0x1d, 0x54, 0xc5, 0xd0, 0xa5, 0x36, 0x1b,
- 0x6c, 0x0b, 0xd0, 0x51, 0x94, 0x01, 0x0a, 0xd8, 0x43, 0xe4, 0x31, 0x72,
- 0x9d, 0x2b, 0xd3, 0xd7, 0x41, 0x34, 0x23, 0x13, 0x03, 0xe9, 0x42, 0xcb,
- 0xda, 0xd0, 0x15, 0xb8, 0xbd, 0xdd, 0x01, 0x86, 0x90, 0x8e, 0x8a, 0x5b,
- 0x8b, 0xf0, 0x55, 0xf8, 0x1d, 0xbc, 0x25, 0x4a, 0x33, 0x44, 0x8b, 0x8a,
- 0xc5, 0xd4, 0xc1, 0x25, 0xdb, 0x04, 0x78, 0xc5, 0xcc, 0x23, 0x14, 0xac,
- 0x9b, 0x9c, 0xca, 0xef, 0x01, 0x07, 0x64, 0x8b, 0xd6, 0x3a, 0x8e, 0x82,
- 0x15, 0x64, 0x15, 0x3d, 0xd2, 0xa0, 0x6c, 0x94, 0x46, 0x49, 0x44, 0x23,
- 0x8b, 0x42, 0x99, 0x76, 0x9f, 0xc5, 0x14, 0x71, 0x7e, 0x71, 0x72, 0xa6,
- 0x14, 0x16, 0x73, 0x5d, 0xcd, 0xc5, 0xe4, 0x47, 0x7c, 0x94, 0x73, 0xbf,
- 0x2b, 0x10, 0xd3, 0x0c, 0xf2, 0x92, 0x66, 0x4b, 0xcb, 0x15, 0xf4, 0x2a,
- 0x97, 0x18, 0x22, 0x2b, 0x75, 0x6a, 0xdf, 0xa9, 0x05, 0xde, 0x4a, 0x0b,
- 0x59, 0xad, 0xf6, 0xe0, 0x25, 0x39, 0x68, 0x27, 0x4b, 0x10, 0xbb, 0x18,
- 0x8c, 0x99, 0x8e, 0xd4, 0x74, 0xcc, 0x41, 0xc5, 0x6a, 0x4d, 0x73, 0xae,
- 0xc1, 0x36, 0x2d, 0xca, 0x21, 0x3a, 0x71, 0xc5, 0xa3, 0x2c, 0x8c, 0xc0,
- 0xdd, 0x5d, 0x5e, 0x75, 0x85, 0xdb, 0x9a, 0x1d, 0x4e, 0x12, 0x94, 0xa1,
- 0xb9, 0xb7, 0x29, 0x27, 0xb3, 0xb4, 0x77, 0xdb, 0x62, 0xcb, 0x2c, 0x9a,
- 0x2c, 0x10, 0x15, 0xbd, 0x94, 0xb5, 0xed, 0xd6, 0xf9, 0xf4, 0xe4, 0xec,
- 0xc2, 0x86, 0x86, 0x6e, 0xf1, 0x41, 0xeb, 0xfc, 0x30, 0xf4, 0x9c, 0xc2,
- 0x25, 0x81, 0xb3, 0xc8, 0x26, 0x44, 0x5a, 0xa9, 0x4a, 0x84, 0xb2, 0x29,
- 0x68, 0xc7, 0x1a, 0x62, 0x9d, 0xad, 0xbc, 0xb7, 0xa8, 0x32, 0xa0, 0x65,
- 0x1b, 0xcf, 0x11, 0x33, 0x0a, 0x33, 0xe8, 0x6e, 0x77, 0xaf, 0x97, 0x69,
- 0x9e, 0xec, 0xc4, 0xd4, 0xc1, 0xca, 0xf3, 0xd9, 0xe1, 0xf9, 0x85, 0x8c,
- 0x9d, 0x7f, 0x8b, 0xc6, 0x2e, 0x56, 0x5c, 0xfd, 0xb0, 0x3b, 0x48, 0x05,
- 0xd4, 0xc1, 0x49, 0x52, 0x1c, 0xb2, 0xcf, 0xed, 0x3b, 0xab, 0x72, 0xb0,
- 0x66, 0x4f, 0x82, 0x84, 0x78, 0xb0, 0x4d, 0xa5, 0x15, 0x24, 0x58, 0xe3,
- 0x83, 0x75, 0xed, 0x65, 0x9d, 0x6e, 0x5d, 0x39, 0x12, 0x0c, 0x99, 0xed,
- 0x5b, 0x78, 0xea, 0x5b, 0x58, 0x30, 0x7f, 0xd7, 0x06, 0x8e, 0xcc, 0xbb,
- 0xce, 0x1f, 0xba, 0xa0, 0xe7, 0xab, 0x6c, 0x6e, 0x84, 0x21, 0xcf, 0xf9,
- 0x76, 0x9e, 0x39, 0xef, 0x91, 0xc9, 0x47, 0xc1, 0x50, 0xf8, 0x63, 0xcb,
- 0x43, 0x46, 0x08, 0x5f, 0x8b, 0xec, 0x9e, 0x3c, 0xf7, 0x37, 0x04, 0xab,
- 0x12, 0x3e, 0x4e, 0x44, 0x57, 0x20, 0xb8, 0x91, 0x38, 0xce, 0x26, 0x9f,
- 0x2f, 0x33, 0x18, 0xcd, 0xd2, 0x72, 0xca, 0x98, 0xee, 0x1a, 0xe8, 0x11,
- 0xb9, 0xa5, 0x35, 0xa7, 0xde, 0xf7, 0xa3, 0x37, 0xd1, 0xd1, 0xf1, 0xa1,
- 0xdf, 0x2e, 0x41, 0x83, 0xc7, 0x61, 0xf6, 0x42, 0x1e, 0x1d, 0xdc, 0xb9,
- 0xbb, 0x2e, 0x86, 0xc9, 0x29, 0x97, 0xf2, 0x83, 0xfb, 0xa9, 0xfa, 0x37,
- 0xdf, 0x9a, 0x1c, 0x16, 0x18, 0x63, 0xe8, 0x02, 0x85, 0x51, 0x34, 0x9f,
- 0xd3, 0xee, 0xe2, 0x13, 0xfe, 0x35, 0xa8, 0xc2, 0x16, 0x4d, 0xf9, 0x85,
- 0x7f, 0xb9, 0xa2, 0x79, 0x90, 0xaa, 0xd6, 0x7e, 0xe4, 0xa9, 0xd2, 0x16,
- 0xe9, 0x71, 0x68, 0xc2, 0xb1, 0x67, 0x3e, 0xd3, 0xa5, 0x54, 0x4b, 0x99,
- 0x48, 0x0b, 0x97, 0xf6, 0x4c, 0x83, 0x8d, 0x07, 0x4d, 0xc9, 0xa5, 0xb0,
- 0x2f, 0xeb, 0x84, 0x64, 0x03, 0x3a, 0x39, 0xec, 0x2c, 0xa1, 0xb6, 0xe6,
- 0xcc, 0x71, 0xa7, 0x0e, 0xea, 0x37, 0xcc, 0x1e, 0xc3, 0xc2, 0x2a, 0x04,
- 0x63, 0x8c, 0x24, 0xdc, 0xaa, 0x4b, 0xf8, 0x54, 0xa8, 0xd1, 0x91, 0x8e,
- 0xbb, 0xc7, 0x1a, 0xa3, 0xe3, 0x8e, 0x7d, 0xd2, 0x15, 0xef, 0x36, 0x9b,
- 0x86, 0xe8, 0x96, 0x0f, 0xa5, 0xbb, 0xa7, 0xcf, 0x7c, 0x53, 0x97, 0x28,
- 0x98, 0x60, 0xfc, 0x7d, 0xbf, 0xc1, 0x83, 0x5c, 0xb5, 0x84, 0xdc, 0x3d,
- 0x29, 0xca, 0x82, 0x58, 0xa8, 0x3b, 0x8e, 0x55, 0xd0, 0x87, 0x10, 0xc3,
- 0x45, 0xc1, 0x11, 0x13, 0xf3, 0x7b, 0x8f, 0xb9, 0x32, 0x94, 0x18, 0x44,
- 0xb1, 0x41, 0x48, 0xe9, 0x10, 0x87, 0xc6, 0x22, 0xda, 0xa6, 0x2a, 0xe8,
- 0xb3, 0xf4, 0x63, 0x74, 0xd5, 0xcf, 0x96, 0x33, 0x85, 0x9a, 0x08, 0x7a,
- 0xfa, 0x5c, 0xb5, 0xd9, 0x9b, 0x39, 0x91, 0xa4, 0xd7, 0xff, 0x42, 0x66,
- 0x5a, 0x38, 0x17, 0xb1, 0x4b, 0xd8, 0x94, 0xa0, 0xee, 0xca, 0x15, 0x4a,
- 0xeb, 0xc0, 0x74, 0xe7, 0x0b, 0x59, 0xc5, 0x44, 0x0b, 0x8a, 0x2c, 0x02,
- 0xa8, 0x50, 0x5e, 0x6f, 0x7d, 0x4c, 0xbe, 0x7a, 0xc0, 0x67, 0x5f, 0x66,
- 0x7f, 0x41, 0x81, 0xd2, 0xa1, 0x5c, 0x3a, 0x82, 0xd5, 0x25, 0xb3, 0xe4,
- 0x90, 0x05, 0xcf, 0xf2, 0x9e, 0xbe, 0x50, 0x53, 0x85, 0xaa, 0xc2, 0x56,
- 0x34, 0xb3, 0x6d, 0x69, 0x7e, 0xb6, 0xe3, 0xd3, 0x49, 0xb2, 0xac, 0xec,
- 0x55, 0xc2, 0x1d, 0x02, 0x7c, 0x07, 0x62, 0x70, 0xe7, 0xe7, 0xdf, 0x24,
- 0x6f, 0x5f, 0x3f, 0xe3, 0x0c, 0xe3, 0xab, 0xac, 0xe4, 0x82, 0xb4, 0x5e,
- 0x17, 0x3b, 0xf9, 0x36, 0x68, 0x6c, 0x37, 0x8c, 0x09, 0x10, 0xfd, 0x49,
- 0x19, 0x9a, 0x4a, 0xda, 0xb4, 0x85, 0x8c, 0x54, 0x78, 0x65, 0x2e, 0x14,
- 0x03, 0x17, 0x37, 0x08, 0x4f, 0xc8, 0x2e, 0xed, 0xdc, 0x94, 0x26, 0x13,
- 0x7b, 0xf6, 0xc4, 0x33, 0xb1, 0xf2, 0x7e, 0xc1, 0x05, 0x13, 0xe6, 0x57,
- 0x2c, 0x50, 0x77, 0x9c, 0xa8, 0x67, 0xc2, 0x38, 0x0f, 0xe4, 0xdc, 0xb3,
- 0x30, 0x1b, 0xbf, 0x06, 0xb4, 0x44, 0x78, 0x3b, 0x82, 0xf7, 0x9e, 0x85,
- 0xea, 0x24, 0x09, 0xe4, 0xb8, 0x17, 0xb5, 0x94, 0x01, 0x24, 0x95, 0xe0,
- 0xd9, 0xe7, 0xee, 0x59, 0xb6, 0x1d, 0xe4, 0xf3, 0xa0, 0xa8, 0xcc, 0x8a,
- 0x37, 0x54, 0x08, 0x16, 0xd1, 0xc0, 0x8b, 0x67, 0x22, 0xf7, 0x04, 0x6b,
- 0x1f, 0xbc, 0xf2, 0xa2, 0xa9, 0x2d, 0xa3, 0xe2, 0xa1, 0x23, 0x4c, 0x4c,
- 0x2a, 0x5f, 0x5c, 0x87, 0x87, 0xf3, 0xb9, 0xdc, 0xd4, 0xa7, 0x6d, 0xb8,
- 0x0e, 0xe3, 0x81, 0x59, 0xe8, 0xbb, 0xb3, 0xa3, 0x2e, 0xa4, 0x7f, 0xb0,
- 0x9f, 0xd8, 0x2b, 0x51, 0x8d, 0x79, 0xa6, 0xf5, 0xa0, 0x93, 0x1d, 0x3d,
- 0x33, 0x34, 0xe5, 0xe2, 0x6a, 0x9e, 0xff, 0xcd, 0xf0, 0x46, 0xf9, 0x7e,
- 0xb6, 0x82, 0x40, 0xc1, 0xe3, 0xbb, 0xca, 0x30, 0x6e, 0xd3, 0x69, 0xae,
- 0x4c, 0x91, 0xed, 0xe8, 0xfe, 0x81, 0x27, 0x4a, 0xb5, 0x1f, 0x73, 0x3e,
- 0xa2, 0x12, 0x29, 0xcb, 0xa5, 0xe1, 0xd8, 0x83, 0x93, 0x35, 0xd0, 0x5f,
- 0x9e, 0x3f, 0x55, 0xd9, 0xcb, 0xe4, 0x63, 0xbe, 0x97, 0x78, 0x21, 0xa6,
- 0x40, 0x8a, 0x6f, 0xb3, 0xe9, 0xe7, 0x7a, 0xf5, 0xe9, 0x56, 0xba, 0xa2,
- 0x40, 0xa5, 0xd5, 0xb3, 0xe2, 0x5f, 0xef, 0xf2, 0xb9, 0x66, 0x8b, 0x45,
- 0xaf, 0x3f, 0x5f, 0x61, 0x82, 0xaa, 0xe4, 0xde, 0x3c, 0x04, 0x2d, 0x05,
- 0xcf, 0x7f, 0xe6, 0x4f, 0x42, 0x03, 0x65, 0xdf, 0x32, 0xa0, 0x10, 0xbb,
- 0x67, 0xb5, 0x58, 0xec, 0x2c, 0xb1, 0xea, 0xb2, 0x80, 0x9d, 0x76, 0x3e,
- 0xe9, 0x4a, 0xcd, 0xbc, 0x74, 0xdd, 0x4f, 0x0b, 0xe6, 0xa6, 0x41, 0x7f,
- 0x42, 0x52, 0x6f, 0x50, 0x60, 0xd3, 0x2b, 0x08, 0xf3, 0x46, 0x1d, 0x3c,
- 0xff, 0xf4, 0x0b, 0xa5, 0x0d, 0xbb, 0x2f, 0x4d, 0x4c, 0x5d, 0xf9, 0xc6,
- 0x67, 0xdb, 0xa1, 0xd0, 0x3a, 0x61, 0x4b, 0xbd, 0xe0, 0x6e, 0xae, 0x7c,
- 0x41, 0x28, 0xe3, 0x88, 0xae, 0x91, 0x2b, 0x22, 0x6a, 0x3c, 0xe3, 0xd1,
- 0x9f, 0xfd, 0x63, 0xbb, 0x0d, 0xa6, 0x7b, 0x11, 0x8a, 0x50, 0xc9, 0xd1,
- 0xeb, 0xe0, 0xc1, 0x27, 0x7e, 0x82, 0xe9, 0x94, 0xa5, 0x81, 0x7b, 0xb1,
- 0x44, 0x54, 0x5a, 0x8a, 0x30, 0x78, 0xf4, 0xa9, 0x26, 0xfc, 0x48, 0xb4,
- 0x0b, 0x96, 0x3f, 0x7a, 0x46, 0xc8, 0xe1, 0x00, 0x39, 0x7a, 0x35, 0x60,
- 0x2a, 0xe6, 0xe6, 0x2d, 0x68, 0xef, 0xfd, 0x67, 0xcf, 0x1f, 0x78, 0x56,
- 0x2f, 0xcd, 0xca, 0x5d, 0xf5, 0xc1, 0x7b, 0x9f, 0xc5, 0xc7, 0xdc, 0xd4,
- 0x02, 0x43, 0xd3, 0xa1, 0xa3, 0xc6, 0x27, 0x2d, 0xd9, 0x60, 0x14, 0xc6,
- 0x7f, 0x33, 0xd3, 0x4f, 0xc9, 0xb9, 0x8a, 0xd5, 0xbf, 0x85, 0xe3, 0xfd,
- 0x3c, 0x84, 0xe4, 0x11, 0xa3, 0x8f, 0x2b, 0x87, 0x1d, 0x16, 0xc9, 0xf4,
- 0x11, 0xe5, 0x58, 0x9d, 0xa0, 0x05, 0xd9, 0x73, 0x92, 0x23, 0x96, 0x73,
- 0xcf, 0x39, 0x44, 0x19, 0x54, 0x24, 0x53, 0x8b, 0xed, 0xd6, 0xd1, 0x7d,
- 0x43, 0x9b, 0x0a, 0xea, 0x08, 0x8c, 0x67, 0xdb, 0xad, 0x63, 0x50, 0x5d,
- 0x2f, 0x45, 0xf5, 0x76, 0x33, 0xf2, 0x08, 0x5a, 0xc1, 0x6b, 0xbb, 0x9e,
- 0x7b, 0x61, 0x6c, 0x90, 0x1a, 0x0f, 0x68, 0xb4, 0xa2, 0x9b, 0x27, 0x20,
- 0x43, 0x73, 0x7c, 0xdc, 0x95, 0x05, 0xff, 0x6a, 0x98, 0xbe, 0x1b, 0xe9,
- 0x0a, 0xcc, 0x33, 0x05, 0xb8, 0x09, 0xba, 0x51, 0xd1, 0x86, 0x03, 0xe2,
- 0x69, 0x97, 0xae, 0xb3, 0xf1, 0x8d, 0x1d, 0x99, 0x8d, 0xb4, 0x05, 0x8b,
- 0x13, 0xbc, 0xf5, 0xd4, 0x2d, 0x2d, 0xd4, 0x9a, 0xb3, 0xc3, 0xb6, 0x26,
- 0xe0, 0x1f, 0x15, 0xaa, 0x39, 0xbb, 0x38, 0x3f, 0xdd, 0xe3, 0x31, 0x8b,
- 0x0b, 0x86, 0x0e, 0xc4, 0xc1, 0x79, 0xf6, 0x57, 0xcd, 0x89, 0xae, 0xfc,
- 0xd3, 0xcf, 0x57, 0x3c, 0x7d, 0xae, 0x31, 0x52, 0x47, 0x13, 0x66, 0xbf,
- 0xb4, 0x0f, 0xe1, 0x4b, 0x9f, 0x29, 0xc8, 0x84, 0x99, 0x76, 0xc5, 0x72,
- 0xc4, 0x23, 0x73, 0x29, 0x35, 0xfe, 0xe1, 0xcf, 0xbd, 0x5e, 0x73, 0xbd,
- 0x9c, 0xdf, 0x38, 0x79, 0x51, 0x03, 0xd8, 0x6c, 0x83, 0xfd, 0x0b, 0x2f,
- 0xec, 0x68, 0x04, 0x40, 0x67, 0xce, 0xfd, 0xdd, 0x57, 0x4b, 0x85, 0xc5,
- 0xac, 0x8a, 0xef, 0x88, 0xf8, 0xeb, 0x32, 0x58, 0x83, 0x17, 0xdb, 0xee,
- 0xfa, 0x5d, 0x2c, 0x47, 0x24, 0x90, 0x26, 0x37, 0xd9, 0x7d, 0xab, 0x6e,
- 0x3d, 0x3b, 0x02, 0xf2, 0x39, 0x1b, 0x22, 0xfc, 0x23, 0xae, 0x81, 0x1f,
- 0x7e, 0x10, 0x1e, 0xef, 0x22, 0xa8, 0xd4, 0xb5, 0xe0, 0x4a, 0x49, 0x13,
- 0x43, 0x14, 0xb1, 0x80, 0x8f, 0x17, 0xec, 0xf1, 0x65, 0x36, 0xcd, 0x18,
- 0x3b, 0x5d, 0xf4, 0x14, 0x10, 0x76, 0x57, 0x0a, 0x26, 0xc7, 0x18, 0xc3,
- 0xad, 0xc2, 0x99, 0xce, 0x30, 0xe8, 0xcd, 0x39, 0x30, 0x55, 0x8d, 0x55,
- 0xb4, 0xe3, 0xfb, 0xef, 0x2f, 0xbe, 0x39, 0x39, 0x3b, 0x4f, 0xb6, 0x18,
- 0xd4, 0xf2, 0xe2, 0xec, 0xe8, 0xab, 0xf7, 0xa4, 0xff, 0x3b, 0xb7, 0xcc,
- 0xeb, 0x74, 0x9e, 0xd3, 0xcd, 0x71, 0x5e, 0x67, 0x73, 0xda, 0xc7, 0x2b,
- 0x2b, 0x57, 0x2a, 0xc5, 0x4e, 0xe8, 0xae, 0x2c, 0x4a, 0xa9, 0x94, 0x85,
- 0xf4, 0xb8, 0xeb, 0x42, 0x37, 0x43, 0x82, 0x2d, 0x39, 0xad, 0x80, 0xb3,
- 0x35, 0x0a, 0xaf, 0xdb, 0xe6, 0x2d, 0x4c, 0x4e, 0xf3, 0xae, 0x26, 0x17,
- 0xdf, 0xec, 0xbf, 0xfb, 0xf6, 0xdc, 0x0a, 0x03, 0x7c, 0xff, 0xfd, 0xf7,
- 0xa1, 0xd7, 0x7f, 0x6f, 0x6b, 0x0b, 0xe2, 0xe5, 0x75, 0xfa, 0xf1, 0xe3,
- 0xb0, 0xca, 0xd6, 0xd6, 0xde, 0x78, 0x5f, 0x9d, 0x2f, 0x36, 0x5b, 0x2d,
- 0x49, 0xb2, 0xa0, 0xaf, 0xb7, 0x68, 0x7d, 0xb9, 0xb8, 0xed, 0xd6, 0xb2,
- 0xce, 0xa7, 0x74, 0x21, 0x65, 0x15, 0xde, 0xde, 0x5a, 0x5b, 0x3b, 0x3f,
- 0x3c, 0x4c, 0xf6, 0x8f, 0xcf, 0x4f, 0x82, 0x77, 0x37, 0x76, 0x38, 0x72,
- 0xe5, 0x2a, 0xab, 0x37, 0x18, 0x1f, 0xf6, 0x78, 0xff, 0x82, 0x75, 0xde,
- 0xef, 0x0e, 0xcf, 0xce, 0x8f, 0x4e, 0xde, 0xf1, 0xee, 0x70, 0xc0, 0x62,
- 0x3a, 0xbd, 0xe3, 0x78, 0xd5, 0xcb, 0x1c, 0x60, 0x3d, 0x77, 0x56, 0x39,
- 0xb6, 0x8d, 0xbc, 0x4f, 0xf7, 0xd5, 0x1d, 0xa3, 0x66, 0x6b, 0xa0, 0x03,
- 0x07, 0xae, 0xd3, 0x4a, 0x58, 0x24, 0xe2, 0x5a, 0xe2, 0xed, 0x5e, 0x02,
- 0xea, 0x9b, 0x8d, 0x24, 0xbc, 0xba, 0x2f, 0x10, 0x17, 0x48, 0x6f, 0x09,
- 0xe2, 0x26, 0x3b, 0x27, 0x7e, 0x7e, 0xc4, 0xc5, 0x59, 0x92, 0xf7, 0xe7,
- 0xfb, 0x5f, 0x1f, 0xf2, 0xa3, 0x5f, 0x67, 0xb5, 0xdf, 0x0f, 0xa9, 0x70,
- 0xcb, 0x9d, 0xbc, 0xcb, 0xea, 0x6a, 0x9c, 0x2e, 0x38, 0x85, 0x9f, 0xba,
- 0x19, 0xc8, 0x3d, 0x14, 0xb4, 0x2d, 0xba, 0x80, 0x2f, 0x03, 0x3c, 0xd7,
- 0xe7, 0x51, 0xa3, 0x37, 0x6c, 0xf7, 0xec, 0x70, 0xff, 0xf5, 0xdb, 0x43,
- 0x0b, 0xd0, 0x97, 0x82, 0x18, 0xd4, 0xe8, 0x75, 0x31, 0xcb, 0x02, 0x5b,
- 0x38, 0xcb, 0x06, 0xbc, 0xf8, 0xf4, 0x0d, 0x17, 0xc9, 0xed, 0xee, 0xce,
- 0x6f, 0x14, 0x9e, 0x1d, 0x5e, 0xe6, 0x5b, 0xd2, 0xba, 0xf5, 0x97, 0xba,
- 0x25, 0x91, 0x49, 0xa4, 0x26, 0x2e, 0x8b, 0x4d, 0x03, 0xc6, 0x90, 0xcf,
- 0xb7, 0xb7, 0xb7, 0x1f, 0x98, 0x07, 0xf4, 0x09, 0xbd, 0x75, 0x69, 0x2a,
- 0x7b, 0xfc, 0xf8, 0x96, 0x6f, 0xdf, 0x8f, 0x78, 0xaa, 0x78, 0x09, 0x5c,
- 0xc7, 0x6e, 0x2e, 0xe0, 0xbc, 0x79, 0x9d, 0x75, 0x0f, 0x79, 0x5c, 0x14,
- 0x6e, 0x07, 0x1a, 0x8b, 0x43, 0x12, 0x32, 0x24, 0x1e, 0x8d, 0xec, 0xc4,
- 0x1b, 0x32, 0x70, 0xd2, 0x7f, 0x10, 0xcd, 0x56, 0xde, 0xb7, 0x9b, 0xe4,
- 0x6f, 0xa8, 0x4d, 0xfe, 0x31, 0x2c, 0xca, 0xab, 0xad, 0xd9, 0x1e, 0x44,
- 0x1a, 0x7a, 0xe8, 0x0d, 0xa3, 0xa9, 0x24, 0x24, 0x1a, 0xbb, 0xa0, 0xf4,
- 0x8a, 0x17, 0x96, 0xf3, 0x67, 0x3e, 0x61, 0x5c, 0xbf, 0x60, 0x15, 0x24,
- 0x22, 0xea, 0xd2, 0x66, 0x6e, 0xc5, 0x2c, 0x3b, 0x3a, 0xa9, 0x78, 0xc3,
- 0xd8, 0xe2, 0x38, 0x24, 0x06, 0x42, 0xbd, 0x70, 0xb8, 0x1b, 0x48, 0x84,
- 0x7e, 0x2d, 0x89, 0x64, 0x86, 0xf5, 0x47, 0xf0, 0x5d, 0xad, 0xab, 0x2a,
- 0xd8, 0x92, 0xec, 0xc1, 0x5d, 0x70, 0x92, 0x6b, 0x89, 0x92, 0x2c, 0xe8,
- 0x81, 0x13, 0x67, 0x89, 0xf3, 0x5c, 0xe9, 0xc2, 0x21, 0x06, 0x88, 0x1b,
- 0x6e, 0xf7, 0x39, 0x18, 0x80, 0x7e, 0x2a, 0x47, 0x2d, 0x9f, 0xd0, 0x79,
- 0x30, 0x29, 0x59, 0xfd, 0xb9, 0x5e, 0xd3, 0x01, 0xed, 0x9c, 0xd3, 0x28,
- 0xa2, 0xbe, 0x96, 0xbe, 0x34, 0x6c, 0x25, 0xdd, 0x05, 0x75, 0x8d, 0x18,
- 0x89, 0x6e, 0x0b, 0x59, 0x64, 0x9f, 0xdc, 0xc7, 0xc1, 0xa9, 0xfe, 0xc6,
- 0xb1, 0x34, 0xf9, 0x2d, 0x4f, 0x9e, 0x59, 0x3c, 0x5d, 0xd6, 0x7c, 0x07,
- 0x98, 0x8c, 0x8b, 0xd0, 0x1c, 0xa8, 0xab, 0xc8, 0x78, 0x08, 0xf5, 0x8d,
- 0x07, 0x46, 0xb8, 0x47, 0x4b, 0xc3, 0x57, 0xca, 0x7f, 0x6d, 0x0d, 0xab,
- 0xea, 0x7a, 0x2b, 0x9f, 0x7c, 0x28, 0xab, 0x34, 0xf9, 0xa9, 0xc9, 0xef,
- 0xab, 0x71, 0x7b, 0x12, 0xff, 0x85, 0x15, 0xfc, 0x45, 0x2b, 0xb5, 0x7a,
- 0x16, 0xbf, 0xc5, 0x0c, 0x06, 0x03, 0x80, 0x3b, 0x68, 0x4f, 0x1f, 0xe8,
- 0x81, 0x0f, 0x0e, 0xa1, 0xe2, 0x57, 0xcc, 0xae, 0x83, 0x15, 0xd2, 0x24,
- 0x25, 0xd0, 0x9c, 0x78, 0x4b, 0x37, 0xa1, 0xaf, 0xeb, 0xd1, 0xf9, 0x71,
- 0x77, 0x7b, 0x7b, 0x67, 0x6f, 0xe7, 0xf3, 0x17, 0xdb, 0x7b, 0x3b, 0x3b,
- 0x3b, 0xbb, 0x7b, 0x3b, 0x7b, 0x7b, 0xbb, 0xdb, 0x3f, 0x6f, 0xad, 0xaf,
- 0x5a, 0xba, 0xb7, 0x5f, 0xad, 0x68, 0x90, 0x66, 0xbd, 0x2e, 0x51, 0xac,
- 0x3f, 0xb9, 0xd9, 0x63, 0x56, 0x93, 0xf5, 0xa4, 0x9a, 0x8d, 0xa8, 0x2b,
- 0x3d, 0x9c, 0xe1, 0x64, 0x2a, 0x92, 0xa4, 0xb3, 0x60, 0x42, 0xaf, 0x4f,
- 0xbe, 0x7f, 0x77, 0x7c, 0xb2, 0xff, 0x3a, 0xb9, 0x38, 0x49, 0xf6, 0x61,
- 0xf7, 0xeb, 0xe0, 0x93, 0x88, 0x44, 0xe7, 0x8c, 0x4b, 0x81, 0xc7, 0xf0,
- 0x3e, 0x02, 0x33, 0x52, 0xb9, 0xd0, 0x27, 0x0c, 0xa2, 0x3d, 0xce, 0x02,
- 0x7a, 0x1d, 0xb7, 0x34, 0xbc, 0xae, 0x67, 0x8f, 0xdf, 0x08, 0x9f, 0xd2,
- 0x73, 0x5f, 0x5c, 0xf1, 0x5e, 0x75, 0xc7, 0x70, 0xec, 0xe4, 0x6b, 0x5a,
- 0x93, 0x3a, 0xb4, 0xd4, 0x8d, 0xed, 0x92, 0x70, 0x36, 0x24, 0x70, 0x0b,
- 0x6f, 0xe0, 0x5c, 0xc2, 0xfb, 0xd5, 0x0e, 0x0e, 0x52, 0xa1, 0xbe, 0x6f,
- 0x71, 0x12, 0x90, 0x91, 0x58, 0x28, 0xdd, 0x8c, 0x26, 0x78, 0xb2, 0x72,
- 0x4a, 0x74, 0x97, 0x67, 0x1f, 0x31, 0xeb, 0x26, 0xef, 0x95, 0x30, 0x67,
- 0x3f, 0x3b, 0x14, 0x6b, 0x30, 0x63, 0x44, 0x5e, 0xda, 0x90, 0x11, 0xe1,
- 0xd5, 0xd1, 0x1d, 0xf7, 0x63, 0x2c, 0xd9, 0x77, 0xc1, 0xdf, 0x84, 0xf7,
- 0xf8, 0x96, 0xb3, 0xef, 0xca, 0x00, 0xde, 0x9f, 0x1f, 0xbd, 0xfb, 0x1a,
- 0x1e, 0xdc, 0xef, 0x4f, 0xce, 0x5e, 0x9f, 0x53, 0xb3, 0x2c, 0xe0, 0xac,
- 0xc1, 0xc4, 0xc7, 0x9c, 0x50, 0x47, 0x25, 0xe7, 0x92, 0xbb, 0xfe, 0xa3,
- 0x90, 0x53, 0x3f, 0x2c, 0xf1, 0x37, 0x0b, 0x15, 0x1e, 0xc6, 0x89, 0xe8,
- 0xbe, 0x35, 0x02, 0x6a, 0xfc, 0x72, 0x96, 0x8e, 0xaf, 0x59, 0x43, 0x17,
- 0x62, 0x45, 0xa8, 0xdd, 0x16, 0xe7, 0xcc, 0x6c, 0xb1, 0xe2, 0xb5, 0x55,
- 0x17, 0x20, 0x47, 0xb4, 0x22, 0xd9, 0x8a, 0x56, 0x94, 0x2e, 0x30, 0xcf,
- 0x10, 0xad, 0x5f, 0x4e, 0xd3, 0x2b, 0x74, 0x18, 0x1f, 0x83, 0xa0, 0x33,
- 0xed, 0xfe, 0x53, 0xbb, 0xe4, 0x6b, 0x03, 0xed, 0x1d, 0x81, 0x00, 0x80,
- 0x22, 0x07, 0xf0, 0x0b, 0xf5, 0x3c, 0x89, 0xd4, 0xc9, 0x7e, 0x7a, 0x84,
- 0xf4, 0x70, 0x85, 0xed, 0x76, 0xdd, 0x29, 0x94, 0x3c, 0x16, 0xdc, 0x1d,
- 0x12, 0xcc, 0x07, 0x01, 0x7e, 0x8f, 0x28, 0xa7, 0xdc, 0x52, 0x60, 0x04,
- 0xaa, 0x7c, 0x58, 0x22, 0x4a, 0x03, 0xc1, 0xe4, 0x21, 0x4b, 0xce, 0x83,
- 0x01, 0xf2, 0x54, 0x65, 0xf1, 0x6e, 0x2a, 0x06, 0xaf, 0x73, 0x25, 0x41,
- 0x0e, 0x58, 0x59, 0x37, 0x30, 0x19, 0x5f, 0x63, 0xc4, 0xe3, 0x01, 0x57,
- 0x35, 0x0d, 0x25, 0xe5, 0x9a, 0x94, 0xa8, 0xb6, 0x6c, 0x10, 0xe3, 0xa4,
- 0x4e, 0x49, 0x56, 0xf3, 0xba, 0x85, 0xbd, 0x48, 0x2b, 0x79, 0x25, 0x79,
- 0x05, 0x0e, 0x24, 0x83, 0x2f, 0x2f, 0xc1, 0xbd, 0x5a, 0xd3, 0x90, 0x02,
- 0x7f, 0x4f, 0x7a, 0xd3, 0x25, 0xdf, 0x71, 0x24, 0xc4, 0x13, 0x03, 0x17,
- 0xca, 0xd1, 0x14, 0xdc, 0xa0, 0xb4, 0x6d, 0x63, 0xd9, 0x2c, 0x0b, 0x47,
- 0x9a, 0x63, 0xce, 0xec, 0xcd, 0xb0, 0x6e, 0x05, 0xd7, 0x10, 0x7a, 0xe4,
- 0x6e, 0x81, 0x8e, 0x7c, 0xfc, 0xd4, 0xc3, 0xd7, 0x04, 0xcb, 0x26, 0xc1,
- 0x76, 0xfe, 0x3d, 0xda, 0x23, 0x6e, 0x2a, 0xaf, 0xab, 0x6c, 0x7a, 0xa9,
- 0x78, 0x43, 0x72, 0x85, 0xf0, 0x2c, 0xd3, 0x16, 0x2a, 0x11, 0xfb, 0x4b,
- 0xe7, 0x0e, 0xfe, 0xa4, 0x50, 0x5e, 0x72, 0x05, 0xb6, 0x2e, 0xcf, 0x81,
- 0x24, 0x1b, 0x3c, 0x44, 0x9c, 0xa2, 0x7f, 0x92, 0x40, 0x2d, 0xd7, 0x5c,
- 0x83, 0x75, 0x34, 0x22, 0x8c, 0xf9, 0xd6, 0xb1, 0xb5, 0xe3, 0xd5, 0xba,
- 0x5f, 0x70, 0x05, 0x01, 0x8e, 0x8a, 0x10, 0xe1, 0x1c, 0x7a, 0x97, 0xa5,
- 0xf1, 0x00, 0x22, 0x25, 0xfb, 0xc8, 0x49, 0x2d, 0x3a, 0x37, 0xaf, 0xe4,
- 0x39, 0xa1, 0x5e, 0xe7, 0xcb, 0xad, 0xe1, 0x73, 0xf0, 0x42, 0x5e, 0x6d,
- 0x46, 0x14, 0x63, 0x45, 0x4d, 0x23, 0x71, 0x1d, 0xa2, 0x05, 0x54, 0x43,
- 0x57, 0xb5, 0x58, 0x61, 0x41, 0x24, 0xdf, 0xec, 0xde, 0xbc, 0x7f, 0x70,
- 0xbe, 0xa6, 0xa2, 0x40, 0x42, 0x08, 0x0e, 0x3a, 0x66, 0x52, 0x42, 0x69,
- 0x95, 0x46, 0xa8, 0x66, 0x63, 0x96, 0xcb, 0x91, 0xdf, 0x58, 0xa6, 0x11,
- 0x04, 0x39, 0x72, 0x93, 0xf0, 0x35, 0xe3, 0xd4, 0xb8, 0x18, 0xdf, 0x65,
- 0x04, 0x11, 0x95, 0x2b, 0xd0, 0x16, 0x31, 0x14, 0x24, 0x30, 0x2e, 0x2b,
- 0x47, 0x39, 0xb4, 0x5a, 0x37, 0x7a, 0x21, 0xae, 0x21, 0xfa, 0x35, 0x66,
- 0x37, 0xca, 0x79, 0x57, 0xf3, 0x9b, 0xc7, 0x59, 0x4d, 0x3c, 0x24, 0xd3,
- 0x17, 0xa7, 0xf7, 0xc2, 0x0d, 0xf2, 0xf9, 0xc3, 0x4c, 0x47, 0x07, 0xf1,
- 0x49, 0x1d, 0x63, 0xae, 0x0a, 0xaa, 0x03, 0xb7, 0x8a, 0x8f, 0x3e, 0x94,
- 0x48, 0x0e, 0x24, 0xc5, 0xb4, 0x92, 0x3b, 0xcc, 0x28, 0xe9, 0xd6, 0x11,
- 0x07, 0x5e, 0x52, 0x3f, 0xf7, 0x92, 0xaf, 0xd2, 0x2a, 0x1f, 0xf7, 0xb5,
- 0x32, 0xa5, 0x56, 0xaa, 0xe4, 0x37, 0x7c, 0xc5, 0xc2, 0x0d, 0x49, 0xeb,
- 0xd9, 0x1c, 0x26, 0xdf, 0x5b, 0xa9, 0x51, 0xd2, 0x21, 0x01, 0x96, 0xcb,
- 0xbe, 0x00, 0x6e, 0xad, 0x81, 0xba, 0xa4, 0xf4, 0xe9, 0x90, 0x8d, 0xe8,
- 0x53, 0x74, 0xe2, 0x4b, 0x09, 0x61, 0x57, 0xd3, 0xea, 0xc6, 0x79, 0xc2,
- 0xb0, 0x57, 0xca, 0x8a, 0x00, 0xce, 0x28, 0xb2, 0xb4, 0x58, 0x06, 0x8a,
- 0xa5, 0x0b, 0x2f, 0xc1, 0xdf, 0xee, 0xf8, 0x5a, 0xa1, 0x60, 0x58, 0x5f,
- 0x2b, 0x8d, 0x4b, 0xb4, 0xe8, 0x11, 0xbe, 0x7e, 0xb9, 0x39, 0xc7, 0xa2,
- 0x06, 0x03, 0x5a, 0x30, 0x5e, 0x1a, 0x65, 0xa0, 0x27, 0x17, 0x87, 0xff,
- 0x92, 0xec, 0xb7, 0x9d, 0xe7, 0x7c, 0x33, 0x35, 0xe0, 0x95, 0xfa, 0x9e,
- 0xc0, 0x30, 0x76, 0x09, 0x45, 0x94, 0x02, 0x5b, 0x29, 0xb6, 0x7f, 0x4d,
- 0x13, 0x9f, 0xbd, 0x89, 0xb8, 0x2a, 0x34, 0xb2, 0xba, 0xbe, 0xb7, 0xaa,
- 0x02, 0xfc, 0x1a, 0x5c, 0x0a, 0x41, 0x61, 0x21, 0xc9, 0x1d, 0xcd, 0x53,
- 0x89, 0x6c, 0x67, 0x30, 0x35, 0xda, 0x94, 0xb9, 0x30, 0x50, 0x04, 0x61,
- 0x4b, 0xac, 0xa0, 0xa0, 0x95, 0xe5, 0x35, 0x54, 0x2d, 0xc9, 0xe0, 0x92,
- 0x02, 0x83, 0x41, 0x55, 0xd9, 0x34, 0xc4, 0xb5, 0xfb, 0xc0, 0x47, 0xee,
- 0x83, 0x5d, 0x2c, 0x7a, 0x05, 0xca, 0x58, 0x2e, 0x45, 0x0f, 0x6a, 0x92,
- 0xac, 0x1d, 0x3b, 0xb9, 0xcd, 0x4e, 0x2d, 0x0c, 0x11, 0x1b, 0x31, 0x06,
- 0x5c, 0xd4, 0xf4, 0x5e, 0xbc, 0xe6, 0xb8, 0x53, 0x8d, 0x6b, 0x86, 0x17,
- 0x13, 0x70, 0xe0, 0x00, 0x3c, 0x85, 0x82, 0xdf, 0x5a, 0xbc, 0x4a, 0x82,
- 0xbe, 0xa9, 0xd5, 0x66, 0xa8, 0x3e, 0x92, 0x77, 0xb0, 0xaa, 0x3c, 0x0a,
- 0x01, 0x5d, 0x0c, 0x53, 0x05, 0xa8, 0x35, 0x74, 0x64, 0xf5, 0x9b, 0x5b,
- 0x04, 0x4d, 0xdc, 0xf0, 0xa8, 0x6e, 0xb1, 0x27, 0x57, 0x16, 0x2a, 0x88,
- 0x51, 0x7d, 0xe3, 0x00, 0xf8, 0xb4, 0x59, 0x2e, 0x6f, 0x39, 0xce, 0x82,
- 0x0c, 0x9d, 0x79, 0xb1, 0x16, 0xdc, 0x7c, 0x42, 0x3f, 0x45, 0x65, 0x3c,
- 0x51, 0xd0, 0xd9, 0xa4, 0xb4, 0xdd, 0x28, 0x93, 0x7a, 0x13, 0x44, 0x25,
- 0xb2, 0x8b, 0x80, 0x30, 0xe5, 0x13, 0x28, 0x94, 0x39, 0x03, 0x71, 0xaf,
- 0x79, 0xea, 0xe6, 0x3b, 0x68, 0xd5, 0x3c, 0x39, 0x55, 0x97, 0xc9, 0xcd,
- 0xec, 0xe5, 0x22, 0x3a, 0xb1, 0x9e, 0x32, 0xd7, 0xc2, 0x9d, 0x30, 0x1e,
- 0xe9, 0xa8, 0x79, 0x77, 0x20, 0xd9, 0xce, 0x9d, 0x9c, 0x65, 0x9b, 0xde,
- 0x40, 0x19, 0x64, 0x9e, 0x32, 0x49, 0x66, 0xf7, 0x9a, 0x9a, 0xa2, 0xb2,
- 0x01, 0x63, 0x3c, 0xc0, 0x2a, 0xf1, 0xf9, 0xe7, 0x91, 0x2c, 0xf8, 0xd1,
- 0x3d, 0xbd, 0x47, 0x5f, 0x07, 0xd6, 0x8f, 0x29, 0x07, 0x9a, 0xb0, 0xb5,
- 0x01, 0x72, 0xa8, 0x33, 0x81, 0x74, 0x68, 0x18, 0x01, 0x66, 0x9a, 0xf4,
- 0xe8, 0xfc, 0x32, 0x11, 0x95, 0xf5, 0x3d, 0xdf, 0x5f, 0x13, 0xf5, 0x5a,
- 0x0b, 0xb3, 0x56, 0x12, 0xb0, 0xb4, 0x42, 0x31, 0x33, 0x36, 0xd9, 0x1e,
- 0x6d, 0x20, 0x35, 0x93, 0xe4, 0x3e, 0xe4, 0x4b, 0x95, 0x95, 0x80, 0xf3,
- 0x42, 0x1b, 0xe6, 0x45, 0xd6, 0xc1, 0x38, 0xea, 0x68, 0xd1, 0x91, 0xab,
- 0x2a, 0xea, 0x79, 0xc4, 0xfb, 0xd5, 0xc3, 0x79, 0xff, 0x6b, 0x86, 0xb3,
- 0x9f, 0x3c, 0x98, 0xa2, 0x21, 0x90, 0x10, 0xe0, 0xf8, 0x95, 0x25, 0xa7,
- 0x15, 0xa0, 0x6a, 0x93, 0x7b, 0x64, 0x8d, 0x50, 0x18, 0xb8, 0x55, 0x7d,
- 0x2f, 0x36, 0x4c, 0xcc, 0x0b, 0x79, 0x1a, 0x4a, 0x0d, 0xb7, 0xdf, 0xb7,
- 0xa1, 0x7c, 0xea, 0x70, 0x05, 0xf7, 0xc6, 0x25, 0xa1, 0xb4, 0xd3, 0x2b,
- 0x34, 0xed, 0x69, 0x67, 0xb8, 0x1d, 0xca, 0x57, 0x2e, 0x19, 0xaa, 0x04,
- 0x00, 0x6d, 0x0d, 0x68, 0x29, 0x2f, 0xa2, 0xf0, 0x4c, 0x90, 0x1d, 0xd8,
- 0x7a, 0x4d, 0x3f, 0xdb, 0x11, 0x08, 0x2f, 0x3a, 0x49, 0x5a, 0xb0, 0x88,
- 0x11, 0x74, 0xb2, 0xd9, 0x02, 0x49, 0x23, 0xc6, 0x01, 0x43, 0x21, 0x00,
- 0xe7, 0xe8, 0xa9, 0x3f, 0x52, 0xcf, 0xdc, 0x76, 0xeb, 0x18, 0x25, 0xa7,
- 0x40, 0x2b, 0xc1, 0x4b, 0x58, 0x3f, 0x84, 0xcf, 0x2c, 0x93, 0x96, 0xea,
- 0x95, 0xc9, 0x6d, 0x07, 0xcd, 0x44, 0x53, 0xa6, 0x67, 0x5c, 0xb6, 0xc9,
- 0xe5, 0xb2, 0x04, 0xe3, 0x55, 0x08, 0x46, 0x45, 0xa3, 0xe1, 0x56, 0x39,
- 0x3e, 0xb7, 0x83, 0xd3, 0x20, 0x7d, 0x3b, 0x43, 0x5d, 0x77, 0x3e, 0xd7,
- 0x62, 0x1d, 0x07, 0x72, 0x86, 0xd6, 0xdc, 0xf3, 0xbe, 0x37, 0x27, 0x9e,
- 0x51, 0xbb, 0xd3, 0x9c, 0x06, 0xd4, 0x03, 0x2c, 0x8b, 0x95, 0xac, 0x56,
- 0x5e, 0xe8, 0xd0, 0x29, 0x0d, 0x96, 0xbd, 0x59, 0x0f, 0x3a, 0x2e, 0xe1,
- 0xd5, 0x66, 0xba, 0x72, 0x0d, 0xf4, 0x93, 0xc1, 0xff, 0xd2, 0x95, 0x61,
- 0xf1, 0x9c, 0x63, 0xc7, 0x50, 0xb7, 0x63, 0x11, 0xe0, 0x99, 0x6a, 0x8a,
- 0x1f, 0x18, 0x3e, 0x07, 0x86, 0xda, 0x3c, 0x5c, 0xde, 0xad, 0xe5, 0x08,
- 0x81, 0xff, 0xbd, 0x09, 0x91, 0x6b, 0x1b, 0x65, 0xba, 0x95, 0x55, 0x48,
- 0x73, 0x6b, 0xae, 0x10, 0x88, 0xc4, 0x0a, 0x46, 0x03, 0x76, 0x17, 0xd9,
- 0x57, 0x5c, 0x28, 0xf1, 0xa0, 0x48, 0xc3, 0x65, 0x35, 0x5d, 0x6e, 0xcd,
- 0x46, 0x2a, 0xc4, 0xef, 0x4c, 0x19, 0x92, 0xdf, 0x3a, 0xa0, 0x17, 0x06,
- 0xef, 0xd5, 0x9c, 0xf1, 0xa5, 0xf4, 0x30, 0x84, 0xd9, 0x5d, 0x7a, 0x38,
- 0x45, 0x81, 0x69, 0x7b, 0x60, 0x4f, 0x5f, 0xe2, 0xa4, 0xd8, 0x75, 0xb5,
- 0xe4, 0x34, 0x57, 0x45, 0x9e, 0xb7, 0xa4, 0x59, 0xae, 0x4e, 0x8c, 0x29,
- 0x0c, 0xc4, 0xa1, 0xc3, 0x87, 0x4c, 0x7e, 0x95, 0x77, 0x55, 0x79, 0xbc,
- 0xe7, 0x26, 0x86, 0x12, 0x75, 0xaf, 0xb6, 0x97, 0xdd, 0x9d, 0x2d, 0x19,
- 0xcc, 0x96, 0x34, 0x20, 0x72, 0x9d, 0x92, 0xa4, 0x0f, 0x02, 0x31, 0x00,
- 0xa2, 0xf0, 0xe6, 0xe2, 0x1c, 0x01, 0x0e, 0xde, 0x99, 0x69, 0xe4, 0x31,
- 0xbc, 0x6b, 0x7c, 0x35, 0xd1, 0x5d, 0x0b, 0x38, 0x23, 0x4d, 0x62, 0xe4,
- 0xf2, 0x09, 0x6e, 0x83, 0xfa, 0x4e, 0xe4, 0x23, 0x52, 0x1a, 0xdc, 0x86,
- 0x5a, 0x53, 0xa6, 0xe8, 0xa2, 0xd3, 0x7b, 0xf8, 0x06, 0x5c, 0xbd, 0x3d,
- 0x0d, 0x95, 0x20, 0x8a, 0x3e, 0xdb, 0x7f, 0xf7, 0xf5, 0x21, 0x24, 0x01,
- 0x07, 0x37, 0x99, 0x33, 0xb5, 0x4f, 0x96, 0x63, 0xa8, 0x42, 0xb4, 0x62,
- 0x88, 0x7d, 0x03, 0x0e, 0xb3, 0x95, 0x47, 0x44, 0xc5, 0x47, 0x10, 0x2f,
- 0xb6, 0x5b, 0x23, 0xda, 0xd6, 0x12, 0xb3, 0xa8, 0x42, 0x82, 0x60, 0x85,
- 0x91, 0x66, 0x08, 0xf3, 0x6b, 0xb5, 0x1c, 0x2d, 0x52, 0x45, 0xa8, 0x49,
- 0x43, 0x08, 0x13, 0xb5, 0xb3, 0x0c, 0x9b, 0x67, 0x71, 0xcd, 0xd2, 0x5b,
- 0x9c, 0x4e, 0x5f, 0x42, 0xa7, 0x1f, 0x86, 0x56, 0x35, 0x81, 0xd8, 0xd8,
- 0xd9, 0xde, 0xf6, 0x05, 0x77, 0x3c, 0x14, 0x4b, 0xc4, 0x2d, 0xcb, 0x64,
- 0x7b, 0xf0, 0xe2, 0xc5, 0x2a, 0x46, 0xe8, 0x1a, 0x05, 0x1e, 0xca, 0xb3,
- 0x4f, 0x6e, 0x73, 0xc0, 0x8f, 0xae, 0x6a, 0xb3, 0x43, 0xa3, 0xa9, 0x72,
- 0x80, 0x11, 0xca, 0x8a, 0x3a, 0xa9, 0x45, 0x2d, 0x3c, 0xe2, 0xac, 0x81,
- 0xf3, 0xcc, 0xd5, 0x87, 0xc7, 0x52, 0xae, 0x79, 0xa4, 0x6c, 0x00, 0x67,
- 0x98, 0x31, 0x68, 0xc1, 0x01, 0x85, 0xb9, 0xf3, 0xe1, 0x7e, 0xd2, 0xc2,
- 0x04, 0x0a, 0xfc, 0x8a, 0x25, 0xba, 0x8c, 0x67, 0x63, 0x22, 0xc1, 0xfb,
- 0x53, 0xb6, 0xff, 0x1d, 0xbd, 0xfb, 0x5a, 0xcc, 0x21, 0xa4, 0xdb, 0xc3,
- 0x96, 0xbe, 0xd5, 0xd2, 0xf4, 0xdf, 0x4b, 0xdd, 0x1c, 0x0e, 0x27, 0x45,
- 0xf0, 0x86, 0x94, 0xbd, 0xcd, 0xe7, 0xc2, 0x0a, 0xfc, 0xee, 0xaf, 0xb0,
- 0x55, 0x5e, 0x24, 0x83, 0x40, 0x38, 0xd1, 0xb2, 0x39, 0x2c, 0x99, 0xcc,
- 0xee, 0x4d, 0x33, 0xd2, 0x1e, 0xd0, 0xba, 0x79, 0x66, 0x5c, 0xb3, 0xa2,
- 0xe7, 0x8a, 0x7a, 0x0e, 0x0a, 0x8a, 0x64, 0x93, 0x8e, 0x2e, 0xa5, 0x1b,
- 0x9c, 0xef, 0x96, 0x24, 0xf2, 0x69, 0x43, 0x69, 0x98, 0x3a, 0x9b, 0x85,
- 0x16, 0x59, 0xb2, 0xea, 0x9b, 0xed, 0xa7, 0x6d, 0x86, 0x94, 0x52, 0xee,
- 0x21, 0x57, 0xe7, 0xdd, 0x46, 0x51, 0xd6, 0xa2, 0xf8, 0xef, 0x8f, 0xf3,
- 0x81, 0x11, 0xf2, 0x41, 0xe5, 0x9b, 0x6a, 0x3e, 0xf1, 0x36, 0x0d, 0x1d,
- 0x71, 0xa7, 0x23, 0xe4, 0x42, 0xde, 0x97, 0xae, 0xd3, 0xee, 0xee, 0xe4,
- 0x7d, 0x5b, 0x9a, 0x8e, 0x03, 0xc0, 0x22, 0xad, 0x96, 0x55, 0x72, 0xa9,
- 0xa7, 0xa6, 0xcb, 0xb0, 0x14, 0x0e, 0xce, 0x91, 0x37, 0xc5, 0x92, 0xb5,
- 0x44, 0xf3, 0xdb, 0x51, 0x74, 0x89, 0x69, 0x08, 0x28, 0xfc, 0xb8, 0xbc,
- 0x6e, 0x72, 0x2d, 0x3b, 0x08, 0xac, 0x69, 0x66, 0x69, 0x2c, 0xd4, 0x28,
- 0xc6, 0x95, 0x87, 0xfd, 0x2e, 0x97, 0x73, 0xe5, 0x7d, 0xac, 0x6f, 0xd1,
- 0xe0, 0xd3, 0xea, 0x1a, 0x85, 0xac, 0x9d, 0x29, 0x2a, 0x16, 0xaf, 0xd0,
- 0xbd, 0x62, 0x58, 0x93, 0x3c, 0x25, 0xc2, 0x14, 0x84, 0xeb, 0xc6, 0x52,
- 0x34, 0x57, 0x60, 0x6d, 0x8d, 0x8d, 0xf0, 0x5b, 0x6c, 0x8a, 0x3f, 0x8f,
- 0x17, 0xd0, 0x6c, 0xe9, 0x0f, 0xda, 0xe3, 0xbd, 0x8f, 0xe1, 0x11, 0xcb,
- 0x7c, 0x60, 0x3d, 0xf9, 0xd4, 0x13, 0x27, 0xf2, 0x7b, 0x87, 0x5f, 0x11,
- 0x87, 0x2e, 0x60, 0x64, 0x9d, 0xa4, 0xde, 0xb4, 0xa6, 0x85, 0xba, 0x00,
- 0x8c, 0x3e, 0xd0, 0xcc, 0x80, 0x02, 0xd1, 0xda, 0x2e, 0x28, 0xec, 0x40,
- 0xe0, 0x15, 0xa4, 0x33, 0x63, 0xef, 0x21, 0x64, 0x89, 0xaf, 0x11, 0x35,
- 0x95, 0x3c, 0x14, 0x96, 0x2d, 0x44, 0xfd, 0x85, 0xab, 0x5b, 0xb2, 0xe7,
- 0xd0, 0x27, 0x66, 0x28, 0x03, 0x14, 0xb0, 0x83, 0x1a, 0x51, 0xed, 0xe7,
- 0x17, 0x6c, 0x46, 0xc0, 0xd5, 0x67, 0xfa, 0xe8, 0x77, 0x87, 0x67, 0x5f,
- 0x9d, 0x9c, 0x1f, 0xd2, 0x7e, 0xbc, 0x3e, 0xfc, 0xea, 0x3d, 0x73, 0x2d,
- 0xa6, 0x0e, 0x31, 0x3d, 0x03, 0x3f, 0x59, 0xec, 0x5f, 0x80, 0x3b, 0xe3,
- 0x70, 0x3d, 0x90, 0xa9, 0xc8, 0x41, 0x7d, 0xa3, 0x42, 0x13, 0xf1, 0x04,
- 0x8b, 0x78, 0x9a, 0x89, 0xad, 0x32, 0x47, 0x12, 0x82, 0x47, 0x4c, 0xe7,
- 0x58, 0x3f, 0xae, 0x72, 0x0f, 0xf5, 0x52, 0x8f, 0x92, 0x60, 0xbb, 0x56,
- 0x7b, 0xde, 0xa8, 0x79, 0x2b, 0x96, 0x69, 0x3d, 0x7c, 0xd4, 0xec, 0xa8,
- 0x80, 0xd2, 0x8e, 0xb2, 0x15, 0x20, 0xde, 0x03, 0x27, 0x47, 0x2b, 0x5c,
- 0xe7, 0xb4, 0x90, 0x5b, 0x13, 0x15, 0xe5, 0xb9, 0x6d, 0xdc, 0xe3, 0x79,
- 0x8d, 0x2b, 0x5c, 0x14, 0x0a, 0xad, 0x6c, 0x5f, 0x09, 0x71, 0x13, 0x7b,
- 0x93, 0xb4, 0xf3, 0xa9, 0x5e, 0x07, 0xe0, 0x7e, 0x55, 0x26, 0x38, 0x71,
- 0x72, 0x6b, 0xab, 0x3f, 0x5c, 0x02, 0x7d, 0xb5, 0x08, 0xcd, 0x86, 0x2a,
- 0xc1, 0x77, 0x98, 0xa7, 0x56, 0x45, 0x95, 0xf2, 0xef, 0x56, 0x1b, 0x11,
- 0x2b, 0x1f, 0x84, 0xe4, 0x28, 0xe9, 0xdc, 0xae, 0x66, 0x3d, 0x17, 0x32,
- 0x53, 0xb6, 0x73, 0x88, 0x20, 0x10, 0x02, 0x57, 0xb7, 0x2a, 0xa3, 0x7b,
- 0x01, 0x45, 0xce, 0x2e, 0xe7, 0x13, 0x04, 0x2a, 0xe4, 0xea, 0x7a, 0xf1,
- 0x4d, 0x64, 0xb1, 0x20, 0x9b, 0x48, 0x98, 0xab, 0x86, 0xe1, 0xf1, 0x96,
- 0xc2, 0x25, 0x20, 0xc4, 0x17, 0x9f, 0x77, 0x69, 0x5d, 0x4a, 0xc5, 0xf3,
- 0x19, 0x0d, 0x1c, 0x27, 0x6b, 0x6b, 0x6b, 0xaf, 0x0f, 0x2f, 0xf6, 0x8f,
- 0x8e, 0x0f, 0x5f, 0x27, 0x47, 0xef, 0xde, 0x9c, 0x9c, 0xbd, 0xdd, 0xbf,
- 0xd0, 0x68, 0x8c, 0xd7, 0xce, 0x22, 0xe7, 0xc1, 0x9c, 0x14, 0xba, 0x3e,
- 0xb0, 0xd6, 0x81, 0x84, 0x69, 0x17, 0xaf, 0xb4, 0x4a, 0x81, 0x2c, 0x43,
- 0xd6, 0x58, 0x83, 0xb5, 0x44, 0xa3, 0x38, 0x3c, 0xfa, 0x15, 0xcb, 0x05,
- 0x5b, 0xce, 0xf7, 0x3e, 0xb4, 0xe5, 0x34, 0x33, 0x1a, 0x4a, 0x57, 0x3e,
- 0xd8, 0x54, 0xca, 0x36, 0x90, 0xab, 0x69, 0xa6, 0x77, 0x22, 0xa0, 0x95,
- 0x91, 0xfe, 0x2f, 0x78, 0xc8, 0x47, 0x5b, 0x4d, 0x70, 0x66, 0x18, 0x5a,
- 0x0c, 0x0c, 0x2d, 0x05, 0x1c, 0x4a, 0x08, 0xba, 0x71, 0x59, 0x20, 0xa8,
- 0x24, 0x6c, 0xd3, 0xc1, 0x49, 0x60, 0x47, 0x19, 0x3d, 0x18, 0xb1, 0x3f,
- 0xf8, 0x24, 0xdc, 0xdf, 0x5c, 0xaa, 0xc7, 0x4f, 0x39, 0xf4, 0x08, 0x11,
- 0x45, 0x8c, 0x9f, 0x5a, 0xd1, 0x4e, 0xb9, 0xb3, 0x0e, 0x44, 0x57, 0xc7,
- 0xb0, 0xcd, 0x3b, 0xa7, 0x95, 0x16, 0xc3, 0xa6, 0x36, 0x9c, 0xbf, 0x9e,
- 0x24, 0xa6, 0xc1, 0x91, 0xd6, 0xe0, 0xe4, 0xb5, 0x60, 0x78, 0x7b, 0xfe,
- 0x39, 0x37, 0x44, 0x45, 0x17, 0x3e, 0xea, 0x35, 0xfe, 0x9c, 0xa6, 0xac,
- 0x2e, 0x2a, 0x3d, 0x6d, 0xfe, 0xdc, 0x1a, 0x66, 0xcb, 0xe0, 0x35, 0x3d,
- 0x34, 0x59, 0xce, 0x16, 0x5a, 0xc4, 0xd9, 0x24, 0x6a, 0xd8, 0xf2, 0x6c,
+ 0x6b, 0x7b, 0x1b, 0xd7, 0x91, 0x2e, 0xfa, 0x9d, 0xbf, 0xa2, 0x07, 0x39,
+ 0x19, 0x90, 0x09, 0x00, 0x5e, 0x74, 0xb1, 0xc5, 0x48, 0x1e, 0xd3, 0x14,
+ 0x65, 0x73, 0x4c, 0x89, 0xdc, 0x04, 0x65, 0x3b, 0xdb, 0xf6, 0xa3, 0xa7,
+ 0x01, 0x34, 0xc9, 0x0e, 0x81, 0x6e, 0xa4, 0xbb, 0x41, 0x8a, 0x99, 0xc9,
+ 0xfc, 0xf6, 0x53, 0xf5, 0x56, 0xd5, 0x5a, 0xab, 0x2f, 0x20, 0x65, 0x4f,
+ 0x9c, 0x33, 0xfb, 0x9c, 0xe3, 0x99, 0x88, 0x24, 0xd0, 0xbd, 0xae, 0xb5,
+ 0x6a, 0xd5, 0xf5, 0xad, 0x28, 0x7a, 0xec, 0xbf, 0x0f, 0xf8, 0xdf, 0x07,
+ 0xfa, 0x8f, 0x7e, 0x6e, 0x44, 0xd1, 0x59, 0x91, 0xff, 0x25, 0x99, 0x56,
+ 0xdd, 0xcf, 0x7e, 0xf8, 0xf0, 0x9f, 0x91, 0xfc, 0x1f, 0xbd, 0xf3, 0x13,
+ 0xfd, 0xdc, 0x78, 0xb0, 0xed, 0xed, 0xc8, 0xbf, 0xf0, 0x9f, 0x1f, 0xb6,
+ 0xa2, 0xc7, 0x5e, 0xf8, 0xcf, 0x68, 0x13, 0x2f, 0x7c, 0xd0, 0x1e, 0x5e,
+ 0xf2, 0xef, 0x1f, 0x3e, 0x3c, 0xdc, 0xc9, 0x4f, 0x3c, 0x2a, 0xfe, 0x67,
+ 0x9b, 0xdf, 0xfb, 0xe9, 0x03, 0xff, 0x4a, 0x9f, 0x6c, 0x6c, 0xbc, 0x3b,
+ 0x78, 0x7b, 0x64, 0xaf, 0x4e, 0x57, 0xc5, 0x3c, 0x1a, 0x46, 0x55, 0x11,
+ 0x67, 0xe5, 0x65, 0x52, 0x44, 0x71, 0xf4, 0xfe, 0xfc, 0x64, 0x63, 0x63,
+ 0xfc, 0xe7, 0x77, 0xa7, 0x67, 0xe3, 0xe3, 0x71, 0xed, 0xb1, 0x1f, 0xf3,
+ 0x65, 0x95, 0xe6, 0x59, 0xf9, 0x73, 0xf4, 0x23, 0x3d, 0x34, 0x1a, 0x8d,
+ 0x7e, 0xde, 0xd8, 0x78, 0x7d, 0x34, 0x3e, 0x3c, 0x3f, 0x3e, 0xbb, 0x38,
+ 0x3e, 0x7d, 0x57, 0x7b, 0x36, 0x4a, 0xcb, 0x88, 0x1a, 0xab, 0xf2, 0x7c,
+ 0x4e, 0xff, 0xf8, 0xf6, 0x67, 0x71, 0x15, 0x47, 0x97, 0x45, 0xbe, 0x88,
+ 0xf2, 0x82, 0xbf, 0x88, 0xa3, 0x32, 0x29, 0x6e, 0x93, 0x62, 0x10, 0xad,
+ 0xca, 0x34, 0xbb, 0x8a, 0xf2, 0x2c, 0x89, 0xf2, 0xcb, 0xa8, 0xba, 0x4e,
+ 0xac, 0xb9, 0x72, 0xb5, 0x5c, 0xe6, 0x45, 0x95, 0xcc, 0xa2, 0x65, 0x91,
+ 0x57, 0xf9, 0x34, 0x9f, 0x97, 0xd1, 0xe6, 0xeb, 0xe3, 0xc3, 0x8b, 0x41,
+ 0xf4, 0xe6, 0xf8, 0xe4, 0x88, 0xfe, 0xbd, 0x38, 0xc3, 0x3f, 0xe3, 0x41,
+ 0xf4, 0xf5, 0xe9, 0xd9, 0x37, 0x47, 0xe7, 0x83, 0xe8, 0x9b, 0x0b, 0xfe,
+ 0x8c, 0xff, 0xa5, 0x0f, 0xa3, 0xe3, 0xb7, 0x07, 0x67, 0x03, 0x6b, 0x8e,
+ 0xff, 0xe0, 0x0f, 0x4f, 0x5e, 0xd3, 0x87, 0xf2, 0x83, 0xff, 0x3c, 0x3b,
+ 0x3d, 0x7b, 0xa2, 0x3f, 0xf8, 0xcf, 0xf3, 0x8b, 0xb7, 0xf4, 0xed, 0xf9,
+ 0xc5, 0x98, 0xfe, 0x1d, 0x1f, 0xf2, 0x3f, 0xe8, 0x65, 0xfc, 0xf6, 0x2b,
+ 0xfc, 0x33, 0x76, 0xcd, 0x8d, 0xdf, 0xca, 0xe7, 0xe8, 0xe9, 0xe2, 0xe8,
+ 0xe4, 0xdd, 0xd1, 0x45, 0x14, 0x67, 0xb3, 0xe8, 0x82, 0x9e, 0xdf, 0x1a,
+ 0x45, 0x17, 0xd7, 0x49, 0x34, 0xcd, 0x17, 0x0b, 0xfe, 0x88, 0x56, 0x64,
+ 0x96, 0x94, 0xe9, 0x55, 0x46, 0x53, 0xa1, 0x99, 0xdf, 0xe5, 0xc5, 0x4d,
+ 0x14, 0xdd, 0xa5, 0xd5, 0x75, 0xbe, 0xaa, 0xac, 0xb9, 0x15, 0xad, 0x46,
+ 0x94, 0x66, 0x55, 0x52, 0xc4, 0x53, 0x5e, 0xeb, 0xd1, 0x46, 0x6d, 0x55,
+ 0xf3, 0x4b, 0x5a, 0xc3, 0x92, 0x16, 0x6d, 0xb2, 0x2a, 0xe7, 0x79, 0x3c,
+ 0xe3, 0xa5, 0xa2, 0x57, 0x2e, 0x57, 0xb4, 0xc8, 0x45, 0x3a, 0xbd, 0x29,
+ 0xa3, 0x79, 0x7a, 0x93, 0xf0, 0x42, 0x7d, 0xbc, 0xb7, 0x85, 0x1b, 0x48,
+ 0xa3, 0xf1, 0x8a, 0xd6, 0x34, 0x1b, 0x5a, 0x73, 0x55, 0x3a, 0x8d, 0xb9,
+ 0x03, 0xac, 0x5c, 0xb4, 0x5a, 0x72, 0x6b, 0xb2, 0x62, 0xd1, 0x32, 0x2f,
+ 0xe9, 0xa5, 0xf1, 0xf8, 0x84, 0x46, 0x9e, 0x65, 0x09, 0xc6, 0x51, 0x0e,
+ 0xe8, 0x8f, 0xfc, 0x26, 0x4d, 0xe8, 0x97, 0xcb, 0x74, 0x9e, 0x44, 0xb2,
+ 0xa3, 0xae, 0x39, 0xde, 0xda, 0xa8, 0x48, 0xca, 0xd5, 0x22, 0xa1, 0xd5,
+ 0x7b, 0x9b, 0x54, 0xf1, 0x3c, 0xcd, 0x6e, 0xe8, 0x57, 0x9e, 0xf8, 0x22,
+ 0x2f, 0x92, 0x51, 0x74, 0x50, 0x46, 0xf7, 0xf9, 0x8a, 0x26, 0x3c, 0x9f,
+ 0xd3, 0x9e, 0x27, 0xd1, 0x24, 0x99, 0xe7, 0x77, 0x03, 0xde, 0xe9, 0x28,
+ 0x5b, 0x2d, 0x26, 0xd4, 0x40, 0x7e, 0xe9, 0x9b, 0x8b, 0xab, 0x15, 0x35,
+ 0x27, 0x4f, 0x2f, 0x62, 0x9a, 0x13, 0xbd, 0x5b, 0x44, 0xd7, 0x09, 0xcd,
+ 0xb9, 0x5c, 0xa6, 0xd9, 0xbf, 0xd4, 0xd7, 0x85, 0x96, 0x76, 0x99, 0xdf,
+ 0x25, 0x05, 0xad, 0xec, 0xe4, 0x3e, 0xa2, 0x45, 0x98, 0x08, 0x11, 0x5e,
+ 0x12, 0x91, 0x45, 0x31, 0x35, 0xe1, 0x08, 0x70, 0x58, 0x24, 0xf3, 0x98,
+ 0x89, 0xc9, 0xf5, 0x31, 0xa2, 0x4d, 0x4c, 0x1c, 0xb5, 0xe9, 0xab, 0x9b,
+ 0x4f, 0xb6, 0xf0, 0xf2, 0x8c, 0x66, 0x92, 0xce, 0x4b, 0xda, 0x06, 0x3e,
+ 0x16, 0xfa, 0x0c, 0x6f, 0x2a, 0x1f, 0x13, 0xa2, 0xcd, 0xfb, 0xac, 0x8a,
+ 0x3f, 0xa2, 0x7b, 0xa5, 0xcd, 0xe1, 0x2c, 0x59, 0x26, 0xd9, 0x2c, 0xc9,
+ 0xaa, 0x51, 0xf4, 0xe7, 0x7c, 0xd5, 0xa7, 0xbe, 0x2f, 0x53, 0x5a, 0x83,
+ 0x58, 0x9b, 0xa2, 0x9e, 0x89, 0x08, 0xa6, 0x45, 0xba, 0x0c, 0xb6, 0x22,
+ 0xcf, 0x68, 0xcf, 0xa3, 0xf3, 0x37, 0x87, 0xd1, 0x93, 0x17, 0x9f, 0x3f,
+ 0xf7, 0x7b, 0x4e, 0x0d, 0x44, 0xd3, 0x38, 0xa3, 0x19, 0x27, 0xd3, 0xf4,
+ 0xf2, 0x3e, 0x5a, 0xac, 0xe6, 0x55, 0xba, 0xa4, 0xd5, 0xa7, 0xce, 0x4b,
+ 0x3e, 0x40, 0xcb, 0xb8, 0xa8, 0x4a, 0x26, 0x02, 0x7c, 0x80, 0xb9, 0xdf,
+ 0x15, 0x69, 0xc5, 0x07, 0x09, 0xdf, 0xd1, 0x08, 0x93, 0xaa, 0xb4, 0xe6,
+ 0x98, 0xd6, 0xa8, 0x9f, 0x09, 0xd1, 0x16, 0x2d, 0x6d, 0x5c, 0x52, 0xa7,
+ 0xfb, 0x1b, 0x9e, 0x87, 0x5c, 0x57, 0xd5, 0x72, 0x7f, 0x7b, 0xbb, 0x4c,
+ 0xab, 0x64, 0xf4, 0x1f, 0x74, 0x0e, 0x07, 0xd5, 0x5d, 0x3e, 0xa8, 0xae,
+ 0x8b, 0x24, 0xf9, 0xfb, 0x88, 0x68, 0xd8, 0x3d, 0x49, 0xfd, 0xde, 0xeb,
+ 0xc0, 0xae, 0x92, 0x8a, 0x7a, 0xf8, 0xeb, 0x2a, 0xc9, 0xb8, 0x45, 0x1a,
+ 0x47, 0x3c, 0x5f, 0x5e, 0xc7, 0xb4, 0x9d, 0x09, 0x51, 0x23, 0x9f, 0x6c,
+ 0x22, 0x18, 0x1e, 0x95, 0x9c, 0xed, 0x1f, 0x7f, 0x6e, 0x77, 0x7a, 0x89,
+ 0x3e, 0xe9, 0xdf, 0x91, 0xbe, 0x15, 0xd3, 0x6a, 0x53, 0x6f, 0xdb, 0x4c,
+ 0x65, 0x3f, 0xee, 0x0e, 0x77, 0x77, 0x76, 0x7e, 0x1e, 0x55, 0x1f, 0xab,
+ 0x4f, 0x7e, 0x65, 0x67, 0xc7, 0xbf, 0xc4, 0x4f, 0x6f, 0xf2, 0xac, 0xa3,
+ 0x39, 0x11, 0x0e, 0x0f, 0xe1, 0x6f, 0x49, 0x91, 0x97, 0x5b, 0x9d, 0x8d,
+ 0xcd, 0x93, 0x8a, 0x8e, 0x5d, 0xd0, 0x52, 0x3c, 0xfc, 0x5b, 0xbd, 0xeb,
+ 0x77, 0x49, 0x09, 0xca, 0xf1, 0x33, 0x8e, 0xe2, 0x82, 0xa8, 0x37, 0xaf,
+ 0x3c, 0x93, 0x1a, 0xd0, 0xd1, 0xac, 0xdc, 0xfa, 0xd0, 0xc9, 0xa3, 0xa7,
+ 0x89, 0xbd, 0xc5, 0x73, 0xe6, 0x6c, 0x65, 0x94, 0x25, 0x1f, 0xdd, 0x59,
+ 0x27, 0x1e, 0x90, 0xc4, 0xd3, 0xeb, 0x28, 0xa7, 0x23, 0x50, 0x74, 0x6c,
+ 0x44, 0x9c, 0xdd, 0x8f, 0xf2, 0xe2, 0x6a, 0x3b, 0x2e, 0xa6, 0xd7, 0xe9,
+ 0x2d, 0x2d, 0xc6, 0x8b, 0x17, 0xcf, 0x87, 0xf4, 0xcf, 0x8b, 0x9f, 0xb7,
+ 0x6f, 0xf3, 0x39, 0xad, 0xcd, 0xd3, 0x9f, 0xb7, 0x79, 0x93, 0xff, 0x23,
+ 0x1e, 0x4c, 0x06, 0xd3, 0xbf, 0x8f, 0xae, 0xab, 0xc5, 0x7c, 0x2d, 0xe9,
+ 0x50, 0x63, 0x51, 0xbc, 0xc8, 0x57, 0x59, 0xe5, 0xc8, 0x85, 0xa8, 0xae,
+ 0x0a, 0xd8, 0x13, 0x1d, 0x58, 0x3a, 0xa5, 0x4c, 0xdc, 0x4c, 0x45, 0x7c,
+ 0xee, 0xe8, 0x88, 0xfa, 0x03, 0x59, 0x4d, 0xaf, 0x69, 0xee, 0x44, 0x3e,
+ 0xb1, 0xce, 0xbf, 0x4a, 0x63, 0x3e, 0x9a, 0xc4, 0x21, 0x98, 0x63, 0xa1,
+ 0x29, 0xe9, 0x2c, 0xa5, 0xe7, 0xf2, 0x62, 0x96, 0x14, 0x75, 0x42, 0xc6,
+ 0x70, 0xfc, 0x78, 0x22, 0x5a, 0xcb, 0x25, 0x75, 0xbe, 0x62, 0x66, 0x87,
+ 0xb3, 0xc6, 0x2d, 0xd0, 0x29, 0xbd, 0xa2, 0x65, 0xa2, 0xa5, 0x61, 0xd2,
+ 0xe2, 0x95, 0xbb, 0x8f, 0xde, 0xd1, 0xfe, 0x09, 0x87, 0x08, 0x28, 0x50,
+ 0x76, 0xab, 0x63, 0xd5, 0xee, 0xee, 0xee, 0xd6, 0x93, 0xd2, 0xfe, 0x6e,
+ 0x8b, 0x9a, 0x82, 0xd7, 0xba, 0x28, 0x60, 0x7f, 0xaf, 0xfe, 0xc2, 0xf7,
+ 0xc4, 0x44, 0x3d, 0x39, 0xd3, 0x40, 0xfe, 0xe3, 0xef, 0x01, 0x3d, 0xdc,
+ 0xf1, 0xb7, 0x69, 0x76, 0x9b, 0xdf, 0xd0, 0x1a, 0xe0, 0x96, 0x8b, 0x6b,
+ 0xeb, 0x1b, 0x31, 0x9f, 0x58, 0x2c, 0x2b, 0x77, 0x7d, 0x30, 0xa1, 0xd0,
+ 0x47, 0x93, 0x78, 0x32, 0xbf, 0x8f, 0xae, 0xe3, 0xdb, 0x84, 0xa7, 0xbe,
+ 0x24, 0x0a, 0xe2, 0xc5, 0x20, 0xb6, 0x3e, 0x07, 0x9f, 0xd1, 0x83, 0x3b,
+ 0xcb, 0x57, 0x13, 0x3a, 0xfc, 0x7f, 0x5d, 0xe5, 0x95, 0xac, 0x51, 0x7c,
+ 0x9b, 0xa7, 0xb3, 0xda, 0x5d, 0x79, 0x9d, 0x30, 0xc3, 0xe1, 0x8e, 0x71,
+ 0x89, 0x10, 0xc3, 0xe3, 0x91, 0xe2, 0x08, 0xa4, 0x15, 0x5f, 0x47, 0xc4,
+ 0xaa, 0x68, 0x59, 0xf2, 0x28, 0xba, 0xca, 0x99, 0x7e, 0xc1, 0x20, 0x41,
+ 0x80, 0xb4, 0x3f, 0xd7, 0x31, 0xdf, 0x3a, 0xb4, 0x02, 0x8e, 0x42, 0x8b,
+ 0x04, 0xbc, 0x12, 0x9b, 0x16, 0xcf, 0x07, 0x72, 0xbb, 0xf0, 0x3b, 0xc9,
+ 0xc7, 0x78, 0xc1, 0x8c, 0xa8, 0xff, 0xaf, 0xfd, 0x41, 0xd4, 0xff, 0xb7,
+ 0x3e, 0xf8, 0x7c, 0xff, 0x0f, 0x7d, 0xbf, 0xe5, 0x24, 0x2e, 0xdd, 0xa6,
+ 0x33, 0xbe, 0x28, 0x68, 0x26, 0xc7, 0x67, 0xb7, 0xcf, 0xa3, 0xbf, 0xf1,
+ 0xdd, 0x4e, 0xbc, 0x30, 0xf9, 0x68, 0xf4, 0x62, 0x73, 0xa3, 0xb7, 0x23,
+ 0x62, 0x8a, 0xf1, 0x92, 0x2f, 0xf9, 0xa4, 0x98, 0x12, 0x71, 0xc5, 0x57,
+ 0x44, 0x4e, 0x74, 0x57, 0x5a, 0x73, 0xdc, 0x3e, 0xbf, 0x22, 0xd3, 0x22,
+ 0x06, 0x16, 0x65, 0xf1, 0x82, 0xe8, 0xf5, 0x84, 0x47, 0x94, 0x66, 0xed,
+ 0x0d, 0xfd, 0xf1, 0x32, 0xf9, 0x7c, 0x67, 0x7f, 0xff, 0xc9, 0xef, 0xf7,
+ 0x9e, 0x25, 0xd5, 0xf5, 0xce, 0xcf, 0xdb, 0xee, 0x91, 0xe3, 0x4b, 0x2c,
+ 0xbb, 0x51, 0xa2, 0x0d, 0x82, 0x6e, 0x61, 0xc7, 0xc5, 0xe9, 0x7d, 0xfa,
+ 0x3d, 0xb9, 0x4c, 0x3f, 0x0e, 0x4c, 0x9e, 0x91, 0x13, 0x11, 0x13, 0x85,
+ 0xd0, 0xfe, 0xf1, 0xe1, 0xb5, 0xe6, 0xae, 0x56, 0x49, 0x49, 0x2b, 0x79,
+ 0x77, 0x1d, 0x57, 0x91, 0x6b, 0x40, 0x76, 0x76, 0x91, 0x5e, 0x5d, 0x57,
+ 0xd1, 0x5d, 0xcc, 0x97, 0xc1, 0x71, 0x25, 0x4d, 0xf0, 0x2d, 0x4c, 0x57,
+ 0xc0, 0x65, 0x4c, 0xbc, 0x9c, 0xf7, 0x10, 0x57, 0xee, 0xc4, 0x4b, 0x00,
+ 0x15, 0x51, 0xbc, 0x6c, 0x88, 0x17, 0x77, 0x26, 0x71, 0xc9, 0x67, 0x2a,
+ 0xa3, 0xa3, 0x5b, 0xd1, 0x1d, 0xbe, 0xe2, 0xbf, 0xae, 0xe9, 0x96, 0xc6,
+ 0x1a, 0xe8, 0x40, 0x71, 0x91, 0xbd, 0xe1, 0xed, 0xe4, 0xbd, 0x71, 0x97,
+ 0x0b, 0x6d, 0xd2, 0x40, 0xb7, 0xd9, 0xbd, 0x51, 0xd2, 0xd9, 0x23, 0xbe,
+ 0xe1, 0x28, 0xa3, 0xc7, 0xec, 0xaf, 0x27, 0xf3, 0xc4, 0x18, 0xe3, 0x92,
+ 0x2f, 0x72, 0xb9, 0xae, 0x69, 0xf0, 0xc1, 0x64, 0x69, 0xd1, 0xe2, 0x1b,
+ 0x16, 0x19, 0x1a, 0x82, 0x09, 0x5e, 0x9b, 0xe5, 0x44, 0x64, 0x34, 0x5a,
+ 0x62, 0x93, 0x3c, 0x33, 0x66, 0x7e, 0x58, 0x15, 0x10, 0x39, 0xb5, 0xc9,
+ 0x1f, 0xa6, 0x15, 0xdf, 0x01, 0x90, 0x32, 0x69, 0xbc, 0xb4, 0x28, 0x10,
+ 0x14, 0x89, 0x85, 0x06, 0xf3, 0xc7, 0xf5, 0x45, 0xcf, 0x46, 0xb7, 0x24,
+ 0x45, 0x90, 0xc0, 0x98, 0xb8, 0xb7, 0x70, 0xdf, 0x4e, 0x59, 0x76, 0x99,
+ 0xd3, 0x79, 0x99, 0xe6, 0x45, 0xc1, 0x12, 0x39, 0xef, 0xe0, 0x44, 0x58,
+ 0xdc, 0x22, 0xa1, 0x6b, 0x3e, 0x5c, 0xce, 0x94, 0x2f, 0x1c, 0x62, 0x35,
+ 0x24, 0x37, 0x80, 0x99, 0xd0, 0xfd, 0x0e, 0x6e, 0x8c, 0x89, 0x63, 0x74,
+ 0xdc, 0xf6, 0x74, 0x9a, 0x2c, 0xab, 0xb2, 0x6b, 0x4e, 0xb6, 0xe1, 0x34,
+ 0x9c, 0x22, 0xe1, 0x95, 0x0f, 0x85, 0x22, 0xac, 0xab, 0xbb, 0x94, 0x21,
+ 0x17, 0x99, 0x9c, 0x41, 0x72, 0x52, 0xe9, 0x56, 0xad, 0x02, 0x6d, 0x10,
+ 0x47, 0xc3, 0x9a, 0x2f, 0x78, 0xa0, 0xfc, 0x70, 0x29, 0x27, 0x15, 0x9c,
+ 0x93, 0x37, 0x52, 0x24, 0x61, 0xe9, 0x97, 0x2f, 0x15, 0x5a, 0x4f, 0xd7,
+ 0x38, 0xf5, 0xea, 0xf6, 0x94, 0xbb, 0x2f, 0x49, 0x87, 0xa0, 0x9b, 0x76,
+ 0x56, 0x5e, 0x93, 0x70, 0x54, 0xea, 0xc9, 0x4e, 0x17, 0x44, 0x33, 0xb7,
+ 0xbc, 0xbf, 0xcb, 0x24, 0x99, 0x8d, 0xa2, 0xd3, 0x4b, 0x66, 0xb0, 0x05,
+ 0x0d, 0xba, 0xc2, 0xd7, 0xcc, 0xf3, 0x69, 0xdd, 0x66, 0x10, 0xb2, 0xdd,
+ 0xd1, 0x92, 0xa1, 0x04, 0xcc, 0x9b, 0x29, 0x8d, 0x16, 0x3b, 0x62, 0x2e,
+ 0x37, 0xaf, 0x5f, 0x10, 0x38, 0x87, 0xc4, 0xc8, 0x79, 0x78, 0x93, 0x24,
+ 0x02, 0x25, 0x4e, 0x92, 0xea, 0x2e, 0x49, 0x5c, 0x73, 0x65, 0x42, 0x97,
+ 0x12, 0x6f, 0x9a, 0x48, 0x66, 0x60, 0x86, 0xbc, 0xb4, 0x67, 0xe7, 0xa7,
+ 0x5f, 0x9f, 0x1f, 0x8d, 0xc7, 0xd1, 0xdb, 0xa3, 0x8b, 0xa3, 0xf3, 0xda,
+ 0x4a, 0x67, 0x79, 0xb1, 0xc0, 0x8e, 0xce, 0xd2, 0x72, 0x39, 0x8f, 0xef,
+ 0x79, 0xab, 0x69, 0x26, 0x57, 0x05, 0x9f, 0xac, 0x45, 0xc2, 0x17, 0xc4,
+ 0x6c, 0x05, 0x4e, 0x16, 0xe5, 0xc4, 0x1f, 0x62, 0x95, 0x48, 0x99, 0x99,
+ 0x40, 0x8c, 0xcd, 0xae, 0xfc, 0x4a, 0x13, 0xc7, 0xd1, 0x7b, 0x8e, 0x2f,
+ 0x3a, 0xb7, 0x1f, 0x2c, 0x1a, 0x42, 0xf9, 0x18, 0xf8, 0xcf, 0x64, 0x99,
+ 0x4a, 0xcc, 0x89, 0x68, 0x36, 0x5d, 0x80, 0xd9, 0xd1, 0x4f, 0x2f, 0x0d,
+ 0x26, 0x97, 0x24, 0x0a, 0xd3, 0xdd, 0xd7, 0x20, 0x0d, 0x37, 0x4e, 0xac,
+ 0x2b, 0x74, 0x1a, 0x56, 0x72, 0xa8, 0x73, 0x1a, 0xeb, 0x22, 0xcd, 0x88,
+ 0xc0, 0x88, 0x20, 0xf5, 0x94, 0x33, 0x25, 0xd0, 0x58, 0x2f, 0x85, 0x27,
+ 0xe8, 0x8a, 0xd4, 0x95, 0x25, 0x7a, 0x99, 0x36, 0x9b, 0xb8, 0xa0, 0x9b,
+ 0x1e, 0x06, 0x45, 0xa4, 0xc9, 0xfc, 0x7a, 0xc2, 0xac, 0x89, 0x35, 0x06,
+ 0x12, 0xed, 0x92, 0xce, 0xde, 0xdc, 0x7d, 0x42, 0x6f, 0xd0, 0xd8, 0xe8,
+ 0x36, 0xe1, 0x0b, 0xe2, 0x3a, 0x69, 0xae, 0x22, 0x1d, 0x22, 0xf0, 0x96,
+ 0xbb, 0xb4, 0xc4, 0xa1, 0xba, 0xcb, 0x57, 0x73, 0x92, 0xcf, 0xf9, 0x81,
+ 0xd5, 0x12, 0x2f, 0x50, 0x57, 0x4b, 0x7f, 0x7a, 0x16, 0xe9, 0x47, 0x5e,
+ 0xf5, 0x66, 0x2b, 0x34, 0x34, 0xfa, 0x73, 0x49, 0x9b, 0x20, 0xc3, 0x19,
+ 0x35, 0x79, 0x2b, 0xb8, 0x46, 0x6b, 0x0f, 0xf9, 0xb4, 0x80, 0xdd, 0x9d,
+ 0x9d, 0x8e, 0x2f, 0xf8, 0xee, 0x3c, 0x7b, 0x7f, 0x41, 0x0d, 0xd1, 0xe5,
+ 0x59, 0x56, 0xb4, 0x9d, 0xfc, 0x62, 0x96, 0x40, 0x39, 0xb2, 0xe6, 0x68,
+ 0xd7, 0x52, 0x1c, 0x71, 0xc8, 0x06, 0xd6, 0xa5, 0x8c, 0x51, 0xb4, 0x47,
+ 0x26, 0x5e, 0xd3, 0x1d, 0xe5, 0xf6, 0xf3, 0x2f, 0x45, 0x9b, 0x5f, 0x6c,
+ 0xd1, 0x76, 0x0f, 0x5d, 0x73, 0x3f, 0xf2, 0xd3, 0xb8, 0xb5, 0xcb, 0x74,
+ 0x91, 0xce, 0xe3, 0x40, 0x42, 0x51, 0x4e, 0xc4, 0x74, 0xed, 0xce, 0xe3,
+ 0x94, 0xd8, 0x2e, 0x06, 0xed, 0x55, 0x24, 0x5e, 0x41, 0x9c, 0x66, 0xbf,
+ 0x51, 0x33, 0xbe, 0x48, 0x21, 0x03, 0x2e, 0x53, 0xb7, 0x70, 0xbc, 0x63,
+ 0x7c, 0xcc, 0x6b, 0xcb, 0xd4, 0xdc, 0xb5, 0xd6, 0xb2, 0x31, 0x27, 0x87,
+ 0x0e, 0xee, 0x16, 0xae, 0x37, 0x89, 0x8b, 0x9e, 0xe3, 0x60, 0xa2, 0x18,
+ 0x53, 0xa3, 0x57, 0x2b, 0x1a, 0xbc, 0xac, 0xea, 0x20, 0x1a, 0xfe, 0x8e,
+ 0x47, 0xce, 0xfa, 0x91, 0x3b, 0xd1, 0x24, 0x77, 0x67, 0xb3, 0xd1, 0xc6,
+ 0x29, 0xf4, 0x72, 0xa7, 0xc4, 0x9f, 0x8a, 0xfa, 0x1e, 0x09, 0xfb, 0x17,
+ 0x7d, 0x20, 0x12, 0x8d, 0x9b, 0xa4, 0xaf, 0x3b, 0xa2, 0xc1, 0x98, 0x96,
+ 0x90, 0x98, 0xc9, 0x5b, 0x1e, 0xba, 0x76, 0xa6, 0x3a, 0x3f, 0xf6, 0x89,
+ 0x96, 0x95, 0x66, 0xe5, 0xae, 0xe4, 0xd9, 0x2c, 0xe5, 0xef, 0x88, 0xd8,
+ 0x89, 0x51, 0xaf, 0x12, 0x08, 0xb7, 0x3a, 0xc7, 0x85, 0x9f, 0x1b, 0x6b,
+ 0x4b, 0xe5, 0x35, 0x09, 0xc7, 0x51, 0x4f, 0x18, 0xca, 0x90, 0xbb, 0xe9,
+ 0xf1, 0xc2, 0x2e, 0x1a, 0x9d, 0xd0, 0x5c, 0x66, 0x7a, 0x59, 0xa9, 0x80,
+ 0x41, 0xdb, 0xb7, 0x88, 0xef, 0x43, 0x49, 0x14, 0x2c, 0x07, 0x23, 0xcf,
+ 0x0b, 0x77, 0x6f, 0xd3, 0xcd, 0xb0, 0x64, 0x99, 0x40, 0x59, 0x11, 0x78,
+ 0x3a, 0xce, 0x4f, 0x29, 0x43, 0x1b, 0x90, 0xd0, 0xc3, 0x4f, 0x5e, 0x5d,
+ 0xdb, 0xa3, 0xc1, 0xfd, 0x10, 0xd3, 0xdc, 0x98, 0xc7, 0xb1, 0xda, 0x36,
+ 0x33, 0xf6, 0x95, 0x17, 0xa2, 0xbc, 0xcf, 0x73, 0xe6, 0x3a, 0x3d, 0x11,
+ 0xbd, 0x74, 0xe4, 0x18, 0x3a, 0x13, 0xd6, 0x10, 0xbb, 0xca, 0x7f, 0x5a,
+ 0x73, 0x6e, 0xd8, 0xba, 0x5c, 0xe5, 0xa3, 0x43, 0xf3, 0x0b, 0x35, 0xc6,
+ 0x22, 0xd1, 0x0d, 0x50, 0x32, 0x59, 0xd9, 0xba, 0x83, 0xda, 0x88, 0x63,
+ 0xf7, 0x2b, 0x39, 0x1c, 0x10, 0xe4, 0x1b, 0x2b, 0x5f, 0x42, 0xb6, 0x56,
+ 0x7e, 0xec, 0x66, 0x46, 0x33, 0x9a, 0xa5, 0xc4, 0xd2, 0x88, 0xaf, 0xda,
+ 0xce, 0x78, 0x7d, 0xa3, 0x43, 0x96, 0xbb, 0x6f, 0x09, 0xe9, 0xac, 0x3a,
+ 0x87, 0x9c, 0xd5, 0xc6, 0x34, 0x3c, 0xa5, 0x9d, 0x3a, 0xc1, 0x3c, 0x86,
+ 0xb7, 0x11, 0x9f, 0x06, 0x92, 0x7e, 0xf9, 0x68, 0x0c, 0x4f, 0x4f, 0x6e,
+ 0x03, 0xaa, 0x66, 0x05, 0x31, 0xe3, 0xeb, 0x76, 0x00, 0x25, 0x7c, 0x92,
+ 0xe7, 0xa4, 0x87, 0xf9, 0xa9, 0xb1, 0xf2, 0x94, 0x64, 0xcc, 0xac, 0x74,
+ 0x47, 0x87, 0x43, 0xf9, 0x0a, 0x2d, 0xdf, 0x93, 0x02, 0x10, 0x5f, 0xc5,
+ 0xa9, 0xa3, 0x37, 0x65, 0x6c, 0xee, 0xd9, 0x2c, 0xd7, 0xc7, 0x79, 0xa7,
+ 0xf8, 0x22, 0x57, 0x1e, 0xb2, 0xc2, 0x7d, 0x97, 0xf0, 0xbc, 0x88, 0x09,
+ 0xe0, 0x24, 0x6b, 0xb3, 0x90, 0x7e, 0xac, 0xb9, 0x09, 0xe4, 0x3d, 0x16,
+ 0x9d, 0xc0, 0x09, 0x21, 0x08, 0x51, 0x93, 0xbd, 0x51, 0xf4, 0x4d, 0x7e,
+ 0x97, 0xc0, 0x24, 0x05, 0x31, 0x35, 0x65, 0xa3, 0x0a, 0x49, 0x34, 0x77,
+ 0x49, 0xb4, 0x20, 0x09, 0x8a, 0x56, 0x13, 0x97, 0x28, 0x3e, 0xa3, 0x71,
+ 0x7a, 0xd1, 0x3b, 0xbf, 0x43, 0xb7, 0x6e, 0x12, 0x6e, 0x27, 0x2f, 0xe5,
+ 0x44, 0x44, 0x9b, 0xb8, 0xa4, 0xa7, 0xbc, 0x58, 0xcb, 0xca, 0xcf, 0xc2,
+ 0xad, 0x07, 0xb1, 0xcd, 0x32, 0x38, 0x5c, 0x7c, 0x63, 0xd1, 0x08, 0xa2,
+ 0xcf, 0x46, 0xbb, 0x2f, 0x46, 0x3b, 0x23, 0x16, 0xa9, 0x93, 0xdb, 0x34,
+ 0x5f, 0x95, 0xd4, 0x3b, 0x86, 0x12, 0x05, 0x6f, 0x26, 0x05, 0x8b, 0xda,
+ 0xf9, 0xd5, 0xd5, 0x5c, 0x2e, 0xf0, 0xed, 0xfc, 0xf2, 0x32, 0xb8, 0xe3,
+ 0x8b, 0x64, 0x29, 0xa2, 0x3c, 0x2f, 0x8e, 0x1e, 0x3a, 0xe1, 0x71, 0xe1,
+ 0xe5, 0xae, 0xcb, 0xe9, 0xf5, 0xe3, 0xe1, 0xef, 0x68, 0xa3, 0x87, 0xc6,
+ 0x8d, 0x86, 0xc4, 0x8c, 0x1a, 0x26, 0xc7, 0xb7, 0x6c, 0x9a, 0x09, 0xaf,
+ 0x44, 0xcf, 0xba, 0x44, 0x60, 0x4b, 0x41, 0x5a, 0xee, 0x43, 0x6a, 0x21,
+ 0x72, 0xec, 0x2c, 0x30, 0xf8, 0x04, 0x44, 0x46, 0xcc, 0x29, 0x9b, 0xc5,
+ 0x05, 0x69, 0xd2, 0x6c, 0x37, 0xa2, 0x87, 0xf9, 0xb4, 0xc5, 0x42, 0xee,
+ 0x03, 0xe1, 0x79, 0x9e, 0xc4, 0x86, 0xfb, 0x3c, 0xc0, 0x50, 0xab, 0x36,
+ 0xae, 0x43, 0x57, 0x41, 0x29, 0x23, 0x53, 0x51, 0x34, 0xf6, 0x92, 0x89,
+ 0x67, 0xde, 0xa6, 0x77, 0x5e, 0xe6, 0xf3, 0x79, 0x7e, 0xc7, 0x97, 0x08,
+ 0x0b, 0x93, 0xc1, 0xb6, 0xda, 0x76, 0x94, 0x65, 0x3e, 0x4d, 0xc5, 0x70,
+ 0xa4, 0x8b, 0x0e, 0x5d, 0x19, 0x56, 0x4e, 0x7e, 0xb5, 0xd4, 0xdb, 0x9d,
+ 0xc5, 0xd6, 0x92, 0x38, 0x49, 0xe4, 0xf4, 0x7e, 0x98, 0x8a, 0x1a, 0xcd,
+ 0xf9, 0x4b, 0x4f, 0x8e, 0xa4, 0xb2, 0x62, 0x1a, 0x49, 0xca, 0xfa, 0xd8,
+ 0x9d, 0xe9, 0xed, 0xe9, 0xd4, 0xb3, 0xc6, 0xe0, 0xa8, 0x0e, 0x1a, 0xcd,
+ 0x95, 0x2b, 0x6a, 0x83, 0xd6, 0x7b, 0x96, 0xb2, 0x7d, 0x90, 0xb4, 0x27,
+ 0x31, 0xf9, 0x89, 0xac, 0x4f, 0xaf, 0x4d, 0x57, 0x65, 0x45, 0x82, 0xa6,
+ 0xf5, 0x2a, 0x4d, 0x51, 0xbf, 0x44, 0x92, 0x07, 0x4c, 0x67, 0x8d, 0xe6,
+ 0x88, 0xe8, 0x3e, 0x1b, 0x3d, 0x79, 0x3e, 0xda, 0x09, 0x08, 0x61, 0x87,
+ 0xd7, 0x99, 0x55, 0xab, 0xdd, 0xd1, 0x4e, 0xe3, 0xf1, 0x4d, 0xbe, 0xd3,
+ 0xb7, 0x6c, 0xc9, 0x6b, 0x6b, 0x8e, 0xdb, 0xde, 0xce, 0x01, 0xbd, 0x19,
+ 0xde, 0x64, 0x72, 0x67, 0xa7, 0xde, 0x3c, 0xe5, 0x7a, 0xa7, 0x1d, 0xce,
+ 0x20, 0x0e, 0xca, 0x7d, 0x48, 0xf7, 0xf9, 0xbe, 0xb4, 0xb4, 0x3b, 0xda,
+ 0x0d, 0xb6, 0x5e, 0x87, 0xb3, 0xdb, 0x3d, 0x9c, 0x36, 0x01, 0x34, 0x06,
+ 0xb3, 0x6b, 0x42, 0xb3, 0x48, 0x4a, 0xae, 0xdf, 0x46, 0x73, 0xa6, 0xaa,
+ 0xe9, 0x8b, 0xb6, 0x64, 0xba, 0x48, 0x4f, 0x6a, 0x8b, 0x84, 0x11, 0xed,
+ 0x7d, 0xc2, 0xf2, 0x80, 0x4c, 0x52, 0xd2, 0xb2, 0xb8, 0x5f, 0xda, 0x10,
+ 0xbf, 0x35, 0xb2, 0x2a, 0x18, 0xea, 0x9e, 0x0c, 0xb0, 0x83, 0x74, 0x70,
+ 0xb1, 0xe0, 0x62, 0xe0, 0x91, 0xaf, 0xe8, 0xde, 0x2a, 0xe6, 0xd0, 0x9a,
+ 0xcc, 0xf0, 0x49, 0x8c, 0x84, 0xf8, 0x5b, 0x3a, 0xaf, 0x94, 0x20, 0xc5,
+ 0x3a, 0xc5, 0x7d, 0x8d, 0x9a, 0xa3, 0x7b, 0x60, 0x36, 0xc4, 0x0d, 0xb3,
+ 0x65, 0xd6, 0x78, 0xe1, 0xb5, 0x70, 0x61, 0x15, 0xb5, 0xdf, 0x9d, 0xbd,
+ 0xa3, 0x99, 0x9d, 0x8c, 0xf9, 0xe6, 0x23, 0xd5, 0x54, 0x56, 0x08, 0x9f,
+ 0xd2, 0xb2, 0x1a, 0x6f, 0xf7, 0xa2, 0x30, 0x49, 0xc1, 0x8d, 0xe6, 0xda,
+ 0x23, 0x36, 0x83, 0x00, 0x1b, 0xa0, 0xe9, 0xdb, 0x22, 0x26, 0xad, 0x0d,
+ 0x73, 0xd5, 0x59, 0x94, 0xdc, 0xfc, 0x48, 0x7a, 0x6e, 0xad, 0x0e, 0xa4,
+ 0x03, 0x28, 0x83, 0xae, 0xe5, 0xfa, 0xbb, 0xb2, 0xb2, 0xbc, 0x2a, 0x59,
+ 0x72, 0x95, 0x57, 0x7c, 0xa4, 0xed, 0x33, 0x7a, 0x66, 0xd8, 0x68, 0x0e,
+ 0xab, 0x86, 0x01, 0x81, 0x33, 0x89, 0x7e, 0xa6, 0xaa, 0x08, 0xef, 0x35,
+ 0x69, 0x5a, 0xc4, 0xd5, 0xc0, 0x0d, 0x36, 0x1e, 0x5a, 0xd8, 0xe7, 0xad,
+ 0x85, 0x8d, 0xe7, 0x6b, 0x57, 0x96, 0xbb, 0x3a, 0x38, 0xa1, 0xe9, 0xf1,
+ 0xba, 0x06, 0xcb, 0x8a, 0xcf, 0x82, 0x65, 0x85, 0xb9, 0xd7, 0x16, 0x76,
+ 0xfd, 0xca, 0x62, 0x69, 0x3f, 0x79, 0x6d, 0xb9, 0x13, 0xe9, 0xaa, 0x79,
+ 0x2c, 0x4b, 0xd5, 0xf6, 0x3e, 0x65, 0x6d, 0x83, 0xc5, 0x95, 0x4f, 0xa3,
+ 0xbd, 0x16, 0xcb, 0x5a, 0xfe, 0x36, 0x8b, 0xbb, 0xcb, 0x8c, 0xaa, 0x9a,
+ 0x97, 0xb7, 0x2d, 0xbe, 0x40, 0x93, 0xde, 0x62, 0x0b, 0x09, 0x1b, 0xea,
+ 0x42, 0xbe, 0xc0, 0xcb, 0xec, 0xd9, 0xc2, 0x47, 0x31, 0xe2, 0xd9, 0x04,
+ 0x9c, 0x91, 0x24, 0x6e, 0x9d, 0xc3, 0x45, 0x5e, 0xc9, 0xcb, 0x32, 0xf4,
+ 0x91, 0x37, 0xba, 0x72, 0xab, 0xfe, 0x6e, 0xd6, 0xe1, 0x8c, 0x76, 0x06,
+ 0xfe, 0xf7, 0xdd, 0x26, 0x0b, 0xe7, 0x3b, 0xd8, 0x7d, 0x8b, 0x35, 0x24,
+ 0x39, 0xa1, 0x2a, 0x72, 0x18, 0x8c, 0x6a, 0x43, 0xc4, 0xad, 0x48, 0x9c,
+ 0x71, 0x4a, 0x3a, 0x1c, 0xf1, 0xc8, 0xcd, 0xb4, 0xe6, 0x2d, 0x33, 0x59,
+ 0x92, 0x36, 0x78, 0x12, 0x4f, 0x6f, 0xf8, 0x26, 0x4a, 0xd5, 0x0e, 0x6d,
+ 0xdb, 0x24, 0xb7, 0x05, 0xe9, 0xb6, 0xb7, 0x09, 0x7b, 0x94, 0xac, 0xa3,
+ 0xad, 0x80, 0xb5, 0xee, 0xf1, 0x22, 0x96, 0xe5, 0xfc, 0x76, 0xef, 0x53,
+ 0x17, 0x91, 0x3b, 0xb4, 0x11, 0xee, 0xb5, 0x97, 0x50, 0x2f, 0xb8, 0x35,
+ 0x8b, 0x88, 0xb7, 0xfd, 0x32, 0x8e, 0x73, 0xba, 0xe5, 0xd3, 0x85, 0xf5,
+ 0x90, 0x86, 0x9c, 0x81, 0xa5, 0x7d, 0x7a, 0xfa, 0x76, 0xed, 0x71, 0x1d,
+ 0xe9, 0xd7, 0x29, 0x3b, 0x8f, 0x66, 0x09, 0xcc, 0x44, 0x74, 0x80, 0x66,
+ 0x70, 0x0e, 0xd1, 0xf5, 0x93, 0x50, 0x9b, 0x81, 0xd0, 0x3d, 0x7c, 0x62,
+ 0x53, 0x7d, 0xf2, 0x6b, 0xa6, 0xfa, 0xe4, 0x9f, 0x30, 0xd5, 0x27, 0x6b,
+ 0xa7, 0xea, 0x67, 0xf1, 0x94, 0x67, 0x91, 0x2e, 0x6f, 0x9f, 0x36, 0xc5,
+ 0x20, 0xbe, 0xe1, 0x54, 0x1e, 0xad, 0x6a, 0x37, 0x22, 0x5d, 0x21, 0xf9,
+ 0xfc, 0x36, 0x51, 0x21, 0x81, 0x3e, 0x38, 0x3e, 0xbb, 0x7d, 0xca, 0x62,
+ 0x27, 0xcb, 0x69, 0x6c, 0x0f, 0x62, 0x29, 0xb7, 0x8b, 0x4a, 0x59, 0xd5,
+ 0x0d, 0xd5, 0x06, 0x36, 0x58, 0xb2, 0x7d, 0x37, 0x18, 0xcd, 0x73, 0x1d,
+ 0xcd, 0xf3, 0xae, 0xd1, 0x7c, 0xfa, 0x70, 0x9e, 0x07, 0xc3, 0xf9, 0x85,
+ 0xa3, 0x79, 0x1a, 0x8c, 0x26, 0xe6, 0xd1, 0xc4, 0x4b, 0x76, 0xcb, 0x35,
+ 0xb7, 0x98, 0x14, 0xfb, 0x6d, 0xf6, 0xec, 0x6e, 0x99, 0x5d, 0x5f, 0x5d,
+ 0x1c, 0x99, 0xf3, 0x88, 0x42, 0xfe, 0x67, 0x07, 0xa4, 0x0e, 0x55, 0xda,
+ 0x51, 0x2d, 0xb7, 0x29, 0xbd, 0xc6, 0x05, 0x7b, 0x2d, 0xd4, 0x41, 0x1a,
+ 0x48, 0xb9, 0xf4, 0x3f, 0xda, 0x6e, 0xe7, 0x99, 0x63, 0x4b, 0x3c, 0xab,
+ 0xfc, 0xaa, 0xcc, 0x83, 0x2e, 0xf8, 0x9d, 0xa6, 0xe4, 0x91, 0x27, 0x25,
+ 0xab, 0x7d, 0xc9, 0xc7, 0x94, 0x1d, 0xb2, 0xa9, 0x1a, 0x90, 0x49, 0xcd,
+ 0x8b, 0xa6, 0x62, 0x98, 0x1f, 0xb1, 0x53, 0x0a, 0x54, 0x25, 0x16, 0x46,
+ 0x0c, 0x36, 0xba, 0x9c, 0xc7, 0x57, 0x1d, 0x57, 0x63, 0x7a, 0x95, 0xe5,
+ 0xea, 0x20, 0x2d, 0x89, 0xea, 0xe0, 0xd1, 0x56, 0x42, 0x2c, 0x89, 0x8b,
+ 0x64, 0xd3, 0xf9, 0x0a, 0x2e, 0xb2, 0x53, 0x9a, 0xe0, 0x78, 0xfc, 0x4d,
+ 0xc8, 0x0e, 0x0e, 0x78, 0x05, 0x59, 0xa4, 0x1c, 0xc6, 0x57, 0x2c, 0x5d,
+ 0xbe, 0x94, 0x1f, 0x65, 0xc5, 0xbc, 0xfa, 0x8b, 0x6e, 0x79, 0x67, 0xac,
+ 0x3a, 0x24, 0xec, 0xfc, 0xfc, 0xea, 0x41, 0xf0, 0x0e, 0xaf, 0x5f, 0xe9,
+ 0xd7, 0x51, 0xee, 0x08, 0x3d, 0x14, 0x4d, 0x4e, 0xc6, 0x63, 0x25, 0x5e,
+ 0x36, 0x63, 0xad, 0x07, 0x96, 0xcb, 0xe8, 0xf0, 0xeb, 0x63, 0x9e, 0x66,
+ 0x9c, 0xce, 0xc5, 0xac, 0xa6, 0xd3, 0x4e, 0x93, 0x39, 0x6b, 0x4c, 0x58,
+ 0x33, 0x38, 0x3e, 0xa3, 0xd0, 0x4c, 0xaf, 0xff, 0xf5, 0xde, 0xe6, 0x7f,
+ 0xa3, 0x55, 0x8c, 0xb7, 0x9f, 0x8e, 0x76, 0x7a, 0x2c, 0xc2, 0xd3, 0x65,
+ 0x95, 0x64, 0xd3, 0x9c, 0x3d, 0x15, 0x93, 0x79, 0x9c, 0xdd, 0x94, 0xa2,
+ 0x74, 0x89, 0x26, 0xc2, 0x63, 0x1d, 0xd0, 0xf1, 0x2b, 0x8a, 0x7c, 0x95,
+ 0xcd, 0x3a, 0xb6, 0x5c, 0xa7, 0x83, 0x23, 0xaf, 0xe6, 0x52, 0xb8, 0x67,
+ 0x88, 0x64, 0x8a, 0x1b, 0x33, 0xcb, 0xf2, 0x95, 0x00, 0xa7, 0x0b, 0x6f,
+ 0x1d, 0xc6, 0xe5, 0xc4, 0xfd, 0x46, 0x73, 0xc3, 0x6f, 0x20, 0x66, 0x13,
+ 0xd9, 0xb0, 0x3b, 0x5c, 0xce, 0x49, 0x6e, 0x46, 0xdc, 0xd6, 0x2d, 0x78,
+ 0x7c, 0x29, 0x53, 0xd7, 0x07, 0xed, 0x86, 0x36, 0xc5, 0x03, 0x7c, 0x45,
+ 0x1c, 0xec, 0xf3, 0xb8, 0xac, 0x60, 0xe8, 0x31, 0x0a, 0xe2, 0x07, 0x43,
+ 0x51, 0x3a, 0xce, 0xee, 0x39, 0x40, 0xe0, 0x53, 0x44, 0xe9, 0xcb, 0xf4,
+ 0x8a, 0x38, 0xa8, 0x58, 0xb8, 0x10, 0x53, 0x60, 0xa1, 0x04, 0xac, 0x9b,
+ 0x5d, 0xe7, 0x20, 0x30, 0x92, 0x69, 0x93, 0xf9, 0x65, 0xd7, 0x79, 0x35,
+ 0xe5, 0x1c, 0xfa, 0xab, 0x30, 0x63, 0x0c, 0x2c, 0x38, 0x0a, 0xec, 0x80,
+ 0x8e, 0xa6, 0xf3, 0x38, 0x5d, 0x94, 0x35, 0xf1, 0x75, 0xd4, 0xc5, 0x4d,
+ 0xd8, 0xfc, 0xca, 0xef, 0x4f, 0xd8, 0xa4, 0x5e, 0x94, 0x6c, 0x2a, 0xe1,
+ 0x0d, 0x89, 0x4d, 0xa2, 0x16, 0x83, 0xf5, 0x75, 0x32, 0xbd, 0x01, 0xd9,
+ 0x05, 0x66, 0xc4, 0x26, 0x47, 0x95, 0x55, 0xc7, 0x82, 0xad, 0x38, 0x9c,
+ 0x80, 0x44, 0x0f, 0x76, 0xca, 0xa5, 0xd9, 0x6c, 0x35, 0xc5, 0xb1, 0x65,
+ 0xcb, 0x08, 0x89, 0x63, 0x45, 0xcc, 0xe2, 0x4d, 0x25, 0xe1, 0x1b, 0xa0,
+ 0x8b, 0x21, 0x11, 0xc1, 0xb2, 0x73, 0x74, 0x70, 0x6e, 0x88, 0x4c, 0x5a,
+ 0x63, 0x07, 0xa5, 0xba, 0x02, 0x60, 0x65, 0x37, 0x4d, 0xaf, 0xbe, 0x9a,
+ 0x8d, 0xe6, 0x64, 0x6d, 0x07, 0x74, 0xdd, 0xa4, 0x74, 0x7b, 0x9b, 0x7f,
+ 0x79, 0x96, 0x2b, 0x29, 0x0d, 0x49, 0x37, 0x2f, 0xd3, 0xa9, 0x18, 0xa5,
+ 0xd2, 0xab, 0x84, 0x19, 0x06, 0x0b, 0x9a, 0xd5, 0x7c, 0x21, 0x41, 0x18,
+ 0x4d, 0x42, 0x1b, 0x3a, 0x09, 0xad, 0x45, 0x56, 0x21, 0x47, 0x11, 0x75,
+ 0xc4, 0xd1, 0x87, 0x99, 0x48, 0x43, 0x83, 0x59, 0x2a, 0xb6, 0x4b, 0x1a,
+ 0x8a, 0xf0, 0xcc, 0x26, 0xdf, 0x81, 0x8f, 0xa3, 0xac, 0x88, 0xb7, 0x0c,
+ 0xf8, 0x88, 0x4c, 0x61, 0x78, 0x66, 0xa3, 0x9e, 0x59, 0x14, 0xcd, 0x34,
+ 0x3a, 0x61, 0x21, 0x90, 0xbd, 0x4d, 0x77, 0xe9, 0x54, 0x1c, 0x0d, 0x70,
+ 0x96, 0x75, 0x98, 0x08, 0xa6, 0xf3, 0x94, 0x1f, 0x5c, 0x90, 0x5a, 0xcb,
+ 0x6f, 0x89, 0xd4, 0xcc, 0x77, 0x08, 0x69, 0xf0, 0xc4, 0x14, 0x8f, 0xc5,
+ 0xbe, 0x01, 0x73, 0x59, 0x79, 0x0d, 0x13, 0x77, 0x5c, 0xa4, 0xf0, 0x46,
+ 0xb5, 0x9a, 0x93, 0x31, 0xf3, 0x24, 0xc3, 0x71, 0x42, 0xad, 0x12, 0x83,
+ 0xaf, 0xb7, 0x15, 0xe0, 0xec, 0x30, 0xd7, 0x09, 0x0e, 0xce, 0x84, 0xcf,
+ 0xab, 0x44, 0xc6, 0x44, 0x2f, 0xf9, 0xee, 0x7a, 0xc5, 0xb3, 0x59, 0xc3,
+ 0x12, 0xcf, 0xe0, 0x03, 0xbb, 0xae, 0x1b, 0x83, 0x03, 0xd6, 0x27, 0x26,
+ 0x13, 0x69, 0x0d, 0x0e, 0x43, 0xa6, 0x9e, 0xce, 0xbb, 0x9f, 0x28, 0x8a,
+ 0xd9, 0xa1, 0x6b, 0x6b, 0xe9, 0x2d, 0x43, 0xb4, 0x35, 0x49, 0x7a, 0x6b,
+ 0xee, 0xe7, 0x40, 0xb2, 0x86, 0xeb, 0xbe, 0x37, 0x4e, 0xaa, 0x66, 0x73,
+ 0x87, 0xe8, 0x70, 0xbf, 0x17, 0x44, 0x00, 0x48, 0xab, 0xba, 0x76, 0x93,
+ 0xc4, 0xfc, 0xb5, 0x62, 0x89, 0x21, 0x26, 0xca, 0x11, 0x64, 0xbb, 0xaf,
+ 0xbe, 0x3b, 0x38, 0x79, 0x7f, 0xb4, 0xfb, 0xa7, 0x26, 0xf9, 0xd0, 0x77,
+ 0x7b, 0xf2, 0xdd, 0x5e, 0xaf, 0x8b, 0x67, 0x11, 0x05, 0x45, 0x51, 0xff,
+ 0x55, 0x3f, 0x2a, 0xef, 0x17, 0x93, 0x7c, 0xee, 0xf8, 0x96, 0x76, 0xc2,
+ 0xa3, 0x18, 0xa8, 0xeb, 0xc3, 0x1c, 0xd0, 0x58, 0x18, 0xbe, 0x22, 0x9b,
+ 0x63, 0x87, 0x03, 0x54, 0xe5, 0x32, 0x50, 0x40, 0x3c, 0x0b, 0x17, 0xa3,
+ 0xac, 0x70, 0xe5, 0xe9, 0x06, 0x71, 0xcb, 0xa5, 0x10, 0xe4, 0x20, 0x92,
+ 0x93, 0xd4, 0x64, 0xe7, 0x32, 0x63, 0xe7, 0xda, 0x32, 0x03, 0xa0, 0x2a,
+ 0x22, 0x91, 0xc8, 0xda, 0xf7, 0x44, 0xbe, 0x15, 0x5b, 0x4f, 0xde, 0x97,
+ 0xc2, 0x54, 0xd2, 0x52, 0xcf, 0x67, 0x93, 0xe1, 0x31, 0xd3, 0x67, 0x7f,
+ 0xe5, 0x6d, 0x5c, 0xa9, 0x43, 0xa6, 0xa7, 0x63, 0x59, 0xc6, 0xc4, 0xd1,
+ 0x8b, 0x9e, 0x9e, 0x67, 0x1f, 0xe6, 0xa4, 0xf6, 0x01, 0x3e, 0x60, 0x45,
+ 0xdb, 0x2e, 0x43, 0xa7, 0x8e, 0x7b, 0xd4, 0x50, 0x2c, 0x8e, 0xae, 0x33,
+ 0x8e, 0xc0, 0x07, 0x8a, 0x46, 0xcd, 0x2e, 0xc1, 0x7b, 0x3d, 0x92, 0xfd,
+ 0x22, 0xd1, 0xf3, 0x2b, 0xde, 0xbf, 0x26, 0xe9, 0x53, 0x63, 0x93, 0x34,
+ 0x33, 0xda, 0x56, 0x35, 0x6c, 0x78, 0xc2, 0x14, 0x3d, 0xcf, 0x95, 0xa5,
+ 0x7b, 0x03, 0xab, 0xfa, 0x37, 0x1d, 0x0d, 0x74, 0xda, 0xee, 0x2c, 0x36,
+ 0x2c, 0x8f, 0x64, 0x2b, 0x6c, 0xa0, 0x72, 0xb6, 0x1c, 0x39, 0x2d, 0x89,
+ 0xb9, 0x67, 0x42, 0xf9, 0xca, 0x75, 0xa3, 0xbc, 0xe8, 0x68, 0xee, 0x5d,
+ 0x52, 0x21, 0x2a, 0x60, 0x5b, 0x2f, 0x6d, 0xdb, 0x48, 0xf4, 0x22, 0x03,
+ 0x69, 0x11, 0x98, 0x1b, 0xa9, 0xf7, 0x67, 0x8a, 0xa5, 0x35, 0x3c, 0xaa,
+ 0xe6, 0x09, 0xc5, 0x26, 0xc7, 0xb8, 0xf2, 0x97, 0x2b, 0x96, 0xca, 0xde,
+ 0xe5, 0xad, 0x45, 0x92, 0x19, 0xb8, 0x88, 0x18, 0x78, 0xe1, 0x48, 0x27,
+ 0xb7, 0xf3, 0xcb, 0x7d, 0x8d, 0x58, 0x8c, 0x00, 0xad, 0xf9, 0x28, 0x39,
+ 0xbd, 0xe8, 0x9a, 0x7c, 0x77, 0xea, 0x47, 0x31, 0xfc, 0x4b, 0x6c, 0x97,
+ 0xfc, 0x6f, 0x78, 0xb5, 0x7f, 0xa5, 0xb2, 0xdb, 0x30, 0x2e, 0xa7, 0x69,
+ 0xda, 0x25, 0x00, 0x73, 0x08, 0xe4, 0x56, 0x74, 0x04, 0xab, 0x42, 0x74,
+ 0x30, 0x3e, 0x3c, 0x3e, 0x76, 0x1e, 0xd2, 0x91, 0x44, 0x14, 0x20, 0xf6,
+ 0x51, 0xc5, 0x2c, 0x38, 0x08, 0x24, 0x84, 0x64, 0xd2, 0x9c, 0x5d, 0xc2,
+ 0xb6, 0xda, 0xa9, 0x99, 0x26, 0x84, 0xf6, 0xe8, 0x71, 0x36, 0xa9, 0xe2,
+ 0x3a, 0xa1, 0x0b, 0xa3, 0x54, 0x4b, 0xfb, 0x9f, 0xaa, 0xfb, 0x65, 0xf2,
+ 0xea, 0xa0, 0x37, 0x0a, 0x55, 0x94, 0xe6, 0xda, 0xc7, 0x2b, 0x16, 0xfd,
+ 0x85, 0x17, 0xe1, 0x66, 0xe0, 0x55, 0x9e, 0xa9, 0x37, 0x54, 0xd9, 0x12,
+ 0x7b, 0x36, 0x16, 0x2c, 0xbe, 0x5d, 0xc2, 0x1f, 0x94, 0x3d, 0x21, 0xcd,
+ 0xf0, 0x9e, 0xae, 0xda, 0x45, 0x19, 0xca, 0x37, 0xb8, 0x1d, 0x3f, 0xd5,
+ 0x50, 0xa8, 0x26, 0x8b, 0xaf, 0xf8, 0x9d, 0xa8, 0x29, 0xe4, 0xac, 0x95,
+ 0xdd, 0x4c, 0xc1, 0xe3, 0x30, 0x8b, 0x51, 0x78, 0xff, 0xe3, 0x60, 0x98,
+ 0x9d, 0x46, 0xe2, 0x58, 0x1a, 0x3b, 0xbb, 0x62, 0x6b, 0x67, 0x8b, 0xc9,
+ 0xa7, 0x74, 0x7b, 0x13, 0xdf, 0x21, 0x52, 0xca, 0xf8, 0xa7, 0xf3, 0x6d,
+ 0xa4, 0x98, 0x3e, 0x6b, 0x14, 0x05, 0x07, 0xd8, 0xd4, 0xb8, 0x3f, 0x4b,
+ 0x97, 0x9d, 0x6b, 0x29, 0xd7, 0x39, 0x47, 0x03, 0x42, 0xe8, 0xf0, 0x96,
+ 0xe2, 0x35, 0x42, 0xdc, 0xa6, 0xd9, 0x94, 0x55, 0x88, 0x68, 0xc9, 0x0f,
+ 0x26, 0x65, 0xd0, 0xaa, 0x07, 0xc2, 0xc4, 0x56, 0x8b, 0x92, 0xdf, 0x97,
+ 0xf0, 0xe8, 0x92, 0x62, 0x74, 0x9d, 0x14, 0x7a, 0x14, 0x57, 0xa6, 0x4f,
+ 0x88, 0x0b, 0xe9, 0xa3, 0x3a, 0x19, 0x3e, 0xde, 0xb7, 0xde, 0x1e, 0x27,
+ 0x89, 0x10, 0x9b, 0x3e, 0x20, 0x1b, 0x19, 0xec, 0x6c, 0xf3, 0x3c, 0xbd,
+ 0xc4, 0xd9, 0xe7, 0x6b, 0xe1, 0x31, 0xbd, 0x24, 0x57, 0xce, 0x89, 0x17,
+ 0x9c, 0xd3, 0xda, 0xe8, 0x40, 0x7c, 0xed, 0x08, 0x1d, 0xd5, 0x23, 0xdd,
+ 0xe4, 0xed, 0x97, 0xec, 0xd2, 0x96, 0xf8, 0x2e, 0x52, 0x3c, 0xf9, 0x96,
+ 0x72, 0xa2, 0xc2, 0x28, 0x3a, 0x84, 0x4d, 0x93, 0xdb, 0x28, 0xd1, 0x88,
+ 0xb1, 0x11, 0xbf, 0x55, 0x2d, 0xea, 0x89, 0x5d, 0xc4, 0x98, 0xe7, 0x5c,
+ 0x18, 0x1b, 0x6d, 0xc2, 0x5d, 0x82, 0xa8, 0x9c, 0x5a, 0x53, 0xee, 0xa2,
+ 0xc7, 0x6b, 0xdd, 0xc4, 0x28, 0x57, 0xff, 0x66, 0xb9, 0x05, 0xa1, 0x28,
+ 0xcb, 0xdd, 0xcb, 0xec, 0x7a, 0xbb, 0xc9, 0xf2, 0x3b, 0x92, 0x75, 0xb2,
+ 0x5c, 0x4e, 0x98, 0xf1, 0x0f, 0x1e, 0x75, 0xf3, 0x9a, 0x25, 0x7e, 0x17,
+ 0xdc, 0x01, 0xe1, 0x93, 0x95, 0x0b, 0x87, 0x53, 0x83, 0xb0, 0xb2, 0x6c,
+ 0x5b, 0xb6, 0xa8, 0x4b, 0xb3, 0x55, 0xd6, 0x2d, 0xd2, 0x00, 0xdc, 0x26,
+ 0xd0, 0x8a, 0xfc, 0x0d, 0x62, 0xd7, 0x7a, 0x6c, 0x4a, 0x15, 0x3b, 0x5e,
+ 0x07, 0x51, 0x6f, 0xd8, 0x1b, 0x74, 0x9c, 0x3c, 0x9b, 0x54, 0x73, 0x5c,
+ 0x8e, 0x5d, 0x74, 0x5c, 0x12, 0x70, 0xc4, 0xb5, 0x5c, 0x5f, 0x1a, 0xf3,
+ 0xa3, 0x37, 0xb6, 0x0c, 0xc8, 0xe6, 0x91, 0x64, 0x57, 0x88, 0xe0, 0xe3,
+ 0x93, 0xd4, 0x14, 0xce, 0xbd, 0x7d, 0x40, 0x2e, 0x6e, 0xa7, 0xea, 0xe8,
+ 0xd0, 0x46, 0xd1, 0x41, 0x26, 0x41, 0x5d, 0x77, 0x31, 0x48, 0xcf, 0x75,
+ 0x01, 0x39, 0xa7, 0xb9, 0xda, 0xb9, 0x53, 0x93, 0x6a, 0xb7, 0xd6, 0x43,
+ 0x77, 0x85, 0x75, 0x15, 0xf1, 0x21, 0x20, 0x1e, 0xdd, 0x87, 0x64, 0xac,
+ 0x76, 0x02, 0xb8, 0xca, 0xdd, 0xa2, 0xc8, 0xbd, 0x71, 0x77, 0x9d, 0xcf,
+ 0xc5, 0x75, 0xd7, 0x68, 0xce, 0x0b, 0xbc, 0xd1, 0x1d, 0xdc, 0xce, 0xa2,
+ 0x69, 0xb3, 0x8d, 0xe5, 0x96, 0xde, 0x2f, 0x12, 0xd8, 0x6d, 0x39, 0x62,
+ 0x8f, 0xb4, 0x62, 0xea, 0x6b, 0x9e, 0xc4, 0xc5, 0xfc, 0xde, 0x84, 0xa1,
+ 0xe1, 0x6d, 0xa3, 0x39, 0xac, 0x28, 0x9b, 0x45, 0x88, 0xc2, 0xe2, 0x22,
+ 0xe3, 0x67, 0xd4, 0x55, 0x68, 0xc1, 0xb2, 0x95, 0x38, 0x6f, 0xc5, 0xc3,
+ 0xcc, 0xb7, 0xf2, 0x6d, 0xca, 0xaa, 0x17, 0x11, 0x1b, 0x09, 0xf0, 0x4d,
+ 0x4a, 0x64, 0xa3, 0x26, 0x48, 0x06, 0x4d, 0x4a, 0x64, 0xcc, 0x75, 0x1a,
+ 0xe8, 0x6b, 0x74, 0x14, 0xaf, 0xe9, 0x86, 0x24, 0x25, 0x72, 0x15, 0xaf,
+ 0x5b, 0x2e, 0xbd, 0xca, 0xcc, 0x2b, 0xfc, 0xd8, 0xed, 0x5a, 0x3f, 0x8f,
+ 0x5d, 0x12, 0xe8, 0x9a, 0xbb, 0xf7, 0x50, 0x36, 0x8f, 0x98, 0x6b, 0xb6,
+ 0xa2, 0x0b, 0xb8, 0x8a, 0x5e, 0xe6, 0x97, 0x97, 0x44, 0xea, 0x5f, 0xb4,
+ 0x24, 0x70, 0x79, 0x64, 0xfb, 0x1c, 0x11, 0xf4, 0x01, 0x4b, 0xaf, 0x07,
+ 0x95, 0x45, 0xb1, 0x9d, 0x92, 0xab, 0x94, 0xf7, 0x22, 0x92, 0xe6, 0x46,
+ 0x1d, 0x22, 0x50, 0xfd, 0x89, 0xe0, 0x22, 0x12, 0xaf, 0xb8, 0x0f, 0xb9,
+ 0xa7, 0xab, 0xba, 0x32, 0x6f, 0x92, 0x4e, 0xa3, 0x29, 0x14, 0xdf, 0xa4,
+ 0xcb, 0x25, 0x6f, 0x16, 0x82, 0x75, 0x9d, 0xaa, 0xc4, 0xad, 0x4d, 0x12,
+ 0x3a, 0x13, 0xd8, 0x53, 0xf3, 0x29, 0xe7, 0x2b, 0x12, 0x00, 0x4c, 0x0e,
+ 0x9c, 0x24, 0x74, 0xd2, 0x9b, 0xcd, 0x99, 0x64, 0xef, 0xe3, 0xb2, 0x54,
+ 0x92, 0x9a, 0x71, 0x0c, 0x56, 0xa6, 0x0c, 0x94, 0xb7, 0xc9, 0x87, 0x7a,
+ 0xa8, 0x66, 0xd9, 0x75, 0xf8, 0xbd, 0x15, 0xcb, 0x1d, 0xe8, 0xf1, 0xf1,
+ 0xff, 0x3e, 0xf2, 0x51, 0x74, 0x2e, 0x4c, 0xed, 0x1e, 0xd4, 0xde, 0x75,
+ 0x41, 0x11, 0x63, 0x39, 0x8c, 0x86, 0x3d, 0x0c, 0x84, 0x39, 0xad, 0x5d,
+ 0x02, 0x74, 0x35, 0xe6, 0xec, 0x7a, 0x96, 0x70, 0x43, 0xc4, 0xf1, 0x33,
+ 0xc1, 0xb1, 0x1e, 0x59, 0x24, 0xdb, 0xec, 0xf0, 0x6f, 0x1b, 0x98, 0x24,
+ 0x09, 0x42, 0x17, 0xdb, 0xcb, 0x51, 0xc7, 0x95, 0x44, 0x7e, 0x42, 0xa2,
+ 0xe1, 0xef, 0x64, 0x7f, 0x24, 0x94, 0x69, 0x1b, 0xe2, 0xa7, 0x04, 0xe2,
+ 0xb5, 0x79, 0x81, 0x1a, 0x5c, 0x24, 0xec, 0xa8, 0x83, 0x99, 0xfd, 0x03,
+ 0xcd, 0x40, 0xd3, 0x74, 0x79, 0xcd, 0xd2, 0xf8, 0x4b, 0x44, 0x37, 0xb0,
+ 0xe5, 0x49, 0x3e, 0xf8, 0xa2, 0xd3, 0x36, 0x3e, 0xd6, 0x73, 0x51, 0xea,
+ 0x4d, 0x6a, 0x6f, 0x2b, 0xff, 0x4a, 0x2d, 0xbe, 0xdc, 0xe2, 0x25, 0x35,
+ 0xa2, 0x86, 0x9a, 0x6e, 0xb2, 0x1c, 0x3a, 0x92, 0xf6, 0xb2, 0x68, 0xf5,
+ 0x3e, 0x04, 0x05, 0x31, 0xa0, 0xf6, 0xed, 0x28, 0x3a, 0xe7, 0x7b, 0x72,
+ 0xb5, 0xe4, 0x10, 0x45, 0x64, 0xa8, 0xe0, 0xf3, 0x96, 0xe7, 0xab, 0xac,
+ 0x42, 0x07, 0x2e, 0x52, 0x38, 0xc2, 0xee, 0xb2, 0x9a, 0x60, 0x94, 0x86,
+ 0xdf, 0x91, 0xac, 0xba, 0xdf, 0x34, 0x0c, 0xf9, 0x08, 0x71, 0xe2, 0x8d,
+ 0x59, 0x59, 0xce, 0x11, 0x96, 0x3f, 0xcb, 0xa7, 0xe5, 0x76, 0xbc, 0x5c,
+ 0x96, 0xdb, 0x36, 0xb8, 0x5a, 0x00, 0xbe, 0x69, 0xc3, 0xe3, 0x71, 0x30,
+ 0x37, 0xbe, 0x76, 0xc5, 0x5e, 0xe5, 0x04, 0xb0, 0x39, 0x3c, 0x70, 0x99,
+ 0x9a, 0x5d, 0x25, 0xa8, 0xe6, 0xeb, 0x6c, 0x75, 0x71, 0x32, 0xc6, 0x72,
+ 0x35, 0x6f, 0x4e, 0x0e, 0x09, 0xb7, 0xcd, 0xe1, 0xb6, 0xad, 0x69, 0x28,
+ 0x78, 0xa2, 0x34, 0x8d, 0xc7, 0x87, 0xf8, 0x70, 0xbc, 0x62, 0x11, 0x86,
+ 0xba, 0x28, 0xee, 0x23, 0xb3, 0x0e, 0x37, 0x69, 0x9f, 0x66, 0x1b, 0x7d,
+ 0xf2, 0x7f, 0xba, 0x10, 0x57, 0x69, 0x35, 0xba, 0x4c, 0x66, 0x79, 0x11,
+ 0xb7, 0x4c, 0x68, 0x39, 0x27, 0x48, 0x60, 0x75, 0xa6, 0xf4, 0xd4, 0x36,
+ 0xc9, 0xe5, 0x1f, 0x68, 0xbd, 0x46, 0xfc, 0x3b, 0x74, 0x3e, 0x59, 0x34,
+ 0xfb, 0x98, 0xd7, 0xeb, 0x77, 0xaf, 0x11, 0xab, 0x47, 0x87, 0xa1, 0xfc,
+ 0x2d, 0xe9, 0x9a, 0x64, 0x34, 0x38, 0x12, 0x66, 0xdd, 0x42, 0xe1, 0xb9,
+ 0x19, 0x0b, 0x23, 0xff, 0xa4, 0x8f, 0xdd, 0x6b, 0x66, 0xa6, 0x91, 0x18,
+ 0x76, 0x95, 0xd3, 0x75, 0x7a, 0xbd, 0x68, 0xae, 0xa7, 0x28, 0xef, 0xe6,
+ 0x69, 0xd3, 0xf4, 0xa7, 0xa8, 0xe4, 0xb8, 0x7e, 0x61, 0x08, 0xab, 0x2c,
+ 0xe8, 0x80, 0x16, 0x83, 0x58, 0x45, 0xa6, 0x82, 0x50, 0xc7, 0xf6, 0x34,
+ 0x66, 0x6e, 0x31, 0xf0, 0xca, 0xee, 0x60, 0x41, 0x2f, 0xc5, 0x2e, 0xb9,
+ 0xca, 0x7c, 0x9a, 0x9c, 0xd8, 0xb3, 0xd9, 0x72, 0xdd, 0x35, 0x3a, 0x2c,
+ 0x51, 0xe3, 0x12, 0xaf, 0x2f, 0x15, 0x8e, 0xeb, 0x90, 0x97, 0x97, 0x99,
+ 0xdd, 0xcb, 0x92, 0x24, 0x1a, 0xea, 0xe7, 0x8b, 0x56, 0xe4, 0xcf, 0xc7,
+ 0x74, 0xb1, 0x5a, 0x44, 0xd8, 0x07, 0xb1, 0x99, 0xeb, 0x93, 0xa6, 0x6c,
+ 0xf0, 0x2d, 0x8d, 0xd8, 0x18, 0x74, 0xdc, 0x2f, 0x03, 0x4e, 0xd0, 0x66,
+ 0x9b, 0x15, 0x89, 0x50, 0xa6, 0x35, 0x69, 0x7c, 0xd5, 0x82, 0x23, 0x23,
+ 0xea, 0x1c, 0x24, 0x5a, 0x5e, 0xc7, 0x65, 0xe2, 0x03, 0x6a, 0x65, 0xbd,
+ 0xc3, 0xd8, 0xe8, 0x5a, 0x88, 0xb4, 0x25, 0x4e, 0x78, 0x7e, 0x4b, 0xb2,
+ 0x4d, 0x9a, 0xcf, 0x9c, 0x2f, 0xc5, 0xee, 0xe6, 0x68, 0xc8, 0xcd, 0xf1,
+ 0x6d, 0xa1, 0xdf, 0x34, 0x15, 0xdb, 0x8f, 0xf0, 0xd9, 0x8c, 0x61, 0xbe,
+ 0x34, 0xdf, 0xdf, 0x67, 0xa3, 0x27, 0x7b, 0xec, 0xd4, 0x0d, 0x89, 0x54,
+ 0x23, 0xc9, 0x89, 0xe9, 0x4c, 0xd3, 0x85, 0x0b, 0xcf, 0x5b, 0xaf, 0xd6,
+ 0x40, 0xc6, 0x5b, 0xb0, 0x98, 0xb0, 0x88, 0x3f, 0x62, 0xcd, 0x7f, 0x7b,
+ 0x8b, 0xc0, 0x50, 0xa4, 0x42, 0xd2, 0xe0, 0x8a, 0x26, 0xc1, 0xd5, 0xbc,
+ 0x60, 0xb4, 0x38, 0x7f, 0x21, 0x7a, 0x6d, 0xd8, 0x87, 0x2c, 0x5c, 0xad,
+ 0x91, 0x18, 0x21, 0x6d, 0x76, 0x99, 0x84, 0x68, 0x2b, 0x88, 0xdc, 0x39,
+ 0xd2, 0x20, 0x62, 0xb3, 0x12, 0x47, 0x8a, 0xf1, 0x89, 0xcf, 0xe9, 0x83,
+ 0xeb, 0x94, 0xc6, 0x5e, 0x4c, 0xaf, 0xef, 0x59, 0xb7, 0x61, 0x73, 0x2d,
+ 0xbb, 0xb4, 0x1e, 0xb0, 0x07, 0xa0, 0x0f, 0x35, 0xa1, 0xd2, 0xe0, 0x23,
+ 0x3e, 0x3c, 0xf4, 0x98, 0x49, 0x09, 0x8d, 0xf1, 0xb1, 0xc4, 0xcd, 0x07,
+ 0x37, 0x99, 0x97, 0x09, 0x8e, 0x58, 0xd7, 0xe8, 0x86, 0x79, 0xa0, 0x71,
+ 0xe0, 0x72, 0x66, 0x7d, 0x28, 0x2d, 0x58, 0xde, 0x15, 0x6b, 0x9f, 0x74,
+ 0xc5, 0x36, 0x6b, 0xe9, 0x8d, 0xb5, 0x30, 0xd6, 0xd6, 0xee, 0xdb, 0x34,
+ 0xc2, 0xfa, 0xb0, 0xbe, 0x6e, 0x6b, 0x6f, 0x9e, 0xba, 0x96, 0x06, 0x92,
+ 0xeb, 0x57, 0xa6, 0xaa, 0xd9, 0xaa, 0xa4, 0x96, 0x46, 0x24, 0x5c, 0x87,
+ 0xc5, 0x1b, 0x1a, 0x8a, 0xa4, 0x9f, 0x32, 0x27, 0xa7, 0xfd, 0xbb, 0xac,
+ 0x5a, 0x26, 0xe1, 0x60, 0x4b, 0xeb, 0x3b, 0x3d, 0xbf, 0x64, 0xe9, 0x92,
+ 0x68, 0xa4, 0x8a, 0x4e, 0xde, 0xf0, 0xcd, 0x7c, 0x78, 0x4e, 0x3f, 0x53,
+ 0x73, 0x70, 0xb2, 0xd8, 0x8e, 0xf4, 0x51, 0xb6, 0x9e, 0xbc, 0xfd, 0x6e,
+ 0x1c, 0x6d, 0x9e, 0x8e, 0xb7, 0x9f, 0xbc, 0xd8, 0x69, 0xeb, 0xf1, 0x9b,
+ 0x9c, 0xe3, 0xaa, 0x61, 0x89, 0x88, 0xbb, 0x78, 0xba, 0x53, 0x0f, 0x6a,
+ 0xe1, 0xbe, 0x78, 0x25, 0xa1, 0x81, 0x77, 0x2a, 0xdf, 0xe3, 0x6d, 0xce,
+ 0xd2, 0xdd, 0xf2, 0xb9, 0x41, 0x62, 0xd3, 0xd5, 0x99, 0x9e, 0x1d, 0xbd,
+ 0x35, 0xe3, 0xa2, 0x04, 0x5c, 0x44, 0x87, 0x34, 0x6a, 0xf6, 0x8c, 0xb4,
+ 0x09, 0xeb, 0x3c, 0xb9, 0x35, 0x0b, 0xe5, 0x09, 0x5f, 0x86, 0x60, 0x38,
+ 0x6c, 0x02, 0x35, 0xb1, 0x61, 0x99, 0xb0, 0x3c, 0xe8, 0xdf, 0x57, 0x01,
+ 0x57, 0x2e, 0xe0, 0x16, 0xf3, 0x99, 0x24, 0x61, 0x90, 0x00, 0x89, 0xde,
+ 0x9c, 0xbf, 0xf5, 0xdb, 0x9d, 0xc0, 0x8e, 0x20, 0x96, 0xdd, 0x17, 0xa3,
+ 0xcf, 0xb6, 0xdc, 0x5a, 0xce, 0x06, 0x16, 0x5b, 0xfc, 0xf2, 0x01, 0x77,
+ 0x02, 0x71, 0x11, 0xe5, 0xb6, 0x49, 0x98, 0xbd, 0x81, 0xf7, 0x60, 0xec,
+ 0x47, 0x98, 0xbd, 0xf9, 0xc1, 0x02, 0x77, 0x43, 0x53, 0xbe, 0xd7, 0x04,
+ 0x6c, 0x4b, 0xe2, 0x83, 0x42, 0x13, 0x6b, 0x60, 0x50, 0x1c, 0x4d, 0x8a,
+ 0xfc, 0x8e, 0x4d, 0x35, 0x12, 0xe8, 0x2e, 0xb4, 0xc9, 0x26, 0x24, 0xd8,
+ 0x6f, 0xa2, 0xeb, 0xb8, 0xe5, 0xef, 0xa1, 0x39, 0x6b, 0xe8, 0x6a, 0xcc,
+ 0x46, 0xde, 0xb7, 0x27, 0x12, 0xea, 0xcd, 0xb7, 0xd7, 0x52, 0xbd, 0xf9,
+ 0xe8, 0x67, 0x35, 0x21, 0x0e, 0xcf, 0x1a, 0x60, 0x25, 0xa2, 0x61, 0x5a,
+ 0x76, 0xb1, 0x5e, 0x18, 0x01, 0x9d, 0x44, 0xbe, 0xec, 0x72, 0xa1, 0xe8,
+ 0x7d, 0x68, 0xb6, 0x6e, 0x6c, 0x26, 0xa9, 0xba, 0x74, 0x87, 0xdd, 0x2f,
+ 0x9b, 0x94, 0x43, 0x02, 0xdb, 0x5c, 0x4d, 0x5d, 0xdb, 0x1f, 0x87, 0x24,
+ 0xd3, 0x0d, 0x79, 0x70, 0x43, 0x6a, 0x5e, 0xbc, 0xc0, 0xec, 0x53, 0x3f,
+ 0xa4, 0x2b, 0x9a, 0x09, 0x85, 0x9a, 0x1f, 0xbe, 0xe1, 0xad, 0xe0, 0x47,
+ 0x5a, 0xdb, 0xc7, 0xbb, 0xe4, 0x42, 0xc0, 0x9d, 0x7a, 0x85, 0xd5, 0x13,
+ 0xbb, 0x19, 0x7f, 0x23, 0x56, 0x57, 0xd8, 0x87, 0x39, 0xad, 0x5a, 0xbd,
+ 0x35, 0x24, 0xce, 0xb7, 0x0c, 0x40, 0x6c, 0x8a, 0x2f, 0xee, 0x25, 0x82,
+ 0x59, 0x2d, 0xe5, 0xe6, 0x32, 0x74, 0xc6, 0x00, 0x69, 0x52, 0x9e, 0xf4,
+ 0xa6, 0xf9, 0x9c, 0xc5, 0xb8, 0x61, 0xcb, 0x14, 0x0b, 0x9f, 0x36, 0xbf,
+ 0x26, 0xc1, 0xf9, 0x9c, 0x9c, 0x2b, 0x1b, 0x21, 0x8e, 0x72, 0xe4, 0xa7,
+ 0xc5, 0x30, 0x81, 0x5b, 0xc3, 0x6e, 0x11, 0x3a, 0x75, 0x66, 0x9f, 0x13,
+ 0x50, 0xfa, 0x48, 0x70, 0x3b, 0x04, 0x08, 0x4a, 0x82, 0x1c, 0x8b, 0x50,
+ 0xf0, 0x3c, 0xab, 0x45, 0x18, 0x0f, 0x5b, 0xf6, 0x12, 0x35, 0xbb, 0x0c,
+ 0x02, 0x17, 0x56, 0xca, 0xf7, 0x44, 0x98, 0x85, 0xe4, 0x2c, 0xee, 0xc4,
+ 0x79, 0x8b, 0x2b, 0xfe, 0xc4, 0xcc, 0x88, 0x2d, 0x13, 0x03, 0x02, 0x6e,
+ 0x5c, 0xea, 0x11, 0xac, 0x51, 0xff, 0x3a, 0x14, 0xf7, 0x12, 0x84, 0x8a,
+ 0x15, 0xcb, 0x62, 0x6a, 0xa6, 0xea, 0x0f, 0x67, 0x91, 0x7a, 0xea, 0x32,
+ 0x5a, 0x09, 0xda, 0xc7, 0xb6, 0xbe, 0x3b, 0x9f, 0xbf, 0x9a, 0x93, 0xf6,
+ 0x7d, 0xdf, 0x8f, 0x34, 0x45, 0x46, 0x03, 0xd9, 0xd9, 0xbe, 0x1b, 0x47,
+ 0xb2, 0x95, 0xd1, 0xf4, 0x7a, 0x95, 0xdd, 0x98, 0xb0, 0x33, 0xcf, 0x73,
+ 0x0e, 0x1d, 0xe0, 0xa0, 0xfa, 0x46, 0x73, 0xfd, 0xa0, 0xb3, 0x7f, 0x0d,
+ 0xdb, 0xee, 0x5c, 0x65, 0xb1, 0x86, 0x49, 0x7e, 0x86, 0x5b, 0x1b, 0x77,
+ 0xbb, 0x49, 0x86, 0x6a, 0xf4, 0xe5, 0xc0, 0x3c, 0xd9, 0x55, 0xe0, 0x55,
+ 0x89, 0xdb, 0x07, 0xd1, 0x5b, 0xd2, 0x60, 0x5f, 0x74, 0x0d, 0x8a, 0x0b,
+ 0x8c, 0x4d, 0xb7, 0xe6, 0xbe, 0xf5, 0xc6, 0x4f, 0xe7, 0xbd, 0xe9, 0xb8,
+ 0x2e, 0x3d, 0x7a, 0x03, 0x1c, 0xa5, 0xa3, 0xe8, 0x6d, 0x98, 0xfc, 0x56,
+ 0x8f, 0x74, 0x70, 0x3b, 0x39, 0x8a, 0xce, 0x68, 0xbd, 0x86, 0x2d, 0x67,
+ 0xd6, 0x55, 0xd0, 0x5c, 0xec, 0x47, 0x3b, 0x8b, 0xfa, 0x97, 0x79, 0x3e,
+ 0x89, 0x0b, 0xbf, 0xf8, 0xf0, 0xc8, 0x83, 0x12, 0x24, 0x00, 0x84, 0xd7,
+ 0xa3, 0x6d, 0x90, 0xc6, 0x41, 0xfc, 0x52, 0xde, 0x1d, 0xa9, 0x2c, 0x13,
+ 0x1e, 0xd0, 0x2a, 0x9f, 0xcf, 0xdc, 0x52, 0x84, 0xbd, 0x76, 0x6c, 0x1a,
+ 0x6f, 0xea, 0x80, 0xa6, 0x53, 0x14, 0x29, 0x67, 0xa2, 0x16, 0x49, 0xb5,
+ 0x2a, 0x32, 0xc9, 0x14, 0xcb, 0x92, 0x3b, 0x71, 0x24, 0x1a, 0x73, 0xe7,
+ 0x18, 0x10, 0x36, 0x90, 0xd4, 0x95, 0xf3, 0xe1, 0x6b, 0x30, 0xf1, 0xd5,
+ 0x62, 0x69, 0xf1, 0x1c, 0x9d, 0x17, 0xe3, 0xf7, 0xb0, 0x33, 0x6b, 0xaa,
+ 0x96, 0xa4, 0x8e, 0x9a, 0x4b, 0xcc, 0xb8, 0x5b, 0xcd, 0xfa, 0xd4, 0x6d,
+ 0xca, 0xf4, 0x57, 0x92, 0x38, 0x00, 0x5d, 0xf6, 0x25, 0x2d, 0x41, 0x90,
+ 0xc5, 0xa9, 0x3e, 0x2a, 0xe1, 0x54, 0xda, 0x4d, 0xa7, 0x9f, 0x80, 0x55,
+ 0x0a, 0x71, 0x4c, 0xa7, 0xb0, 0x22, 0xf3, 0x3d, 0x43, 0xaf, 0x53, 0x53,
+ 0x23, 0x75, 0x17, 0x07, 0xb9, 0x8b, 0x36, 0xde, 0x29, 0x6f, 0x56, 0x9b,
+ 0x68, 0x90, 0x98, 0x82, 0x35, 0xc7, 0xa5, 0xa4, 0x5a, 0x82, 0x83, 0x09,
+ 0xc9, 0xdc, 0x4d, 0x1e, 0x38, 0x8d, 0x54, 0x36, 0x9b, 0xb4, 0xdd, 0x0e,
+ 0x66, 0x8d, 0x95, 0x19, 0xff, 0x0b, 0x2c, 0x0a, 0x6b, 0x9c, 0x6a, 0x92,
+ 0xdb, 0x33, 0x91, 0x23, 0x23, 0x76, 0xd7, 0x56, 0xf4, 0x4e, 0xe0, 0xb2,
+ 0x6b, 0xad, 0x6c, 0x4d, 0x18, 0x16, 0xf9, 0x8b, 0x3a, 0x0b, 0xec, 0x4d,
+ 0x4e, 0x41, 0x54, 0xc7, 0x32, 0x84, 0x0b, 0x2f, 0x48, 0xb4, 0x84, 0x0c,
+ 0x9e, 0x59, 0x4f, 0x57, 0xab, 0xa7, 0xda, 0xdc, 0x4a, 0x6c, 0xf1, 0xac,
+ 0x22, 0xe2, 0x7c, 0x16, 0xbf, 0x69, 0x98, 0x8f, 0xbf, 0x92, 0xba, 0x25,
+ 0x0b, 0xd6, 0x4b, 0xbc, 0xf4, 0xd1, 0x7a, 0x53, 0x6f, 0x9e, 0x07, 0x85,
+ 0x12, 0xf1, 0x7b, 0x31, 0x87, 0x54, 0xcf, 0x1d, 0x0c, 0x8e, 0x73, 0x88,
+ 0xf8, 0x0d, 0x97, 0x2c, 0x89, 0xca, 0x12, 0x4f, 0x43, 0xa4, 0xdf, 0x12,
+ 0x68, 0xd9, 0xe3, 0xce, 0x91, 0x55, 0x44, 0x8f, 0x65, 0x9e, 0xdc, 0x86,
+ 0x49, 0x1f, 0x8d, 0x3c, 0x6e, 0x30, 0xcb, 0x4f, 0xe2, 0x95, 0xa1, 0x7f,
+ 0xbf, 0x93, 0x5d, 0x4a, 0x4e, 0x79, 0x14, 0xbd, 0x76, 0x97, 0xfa, 0x12,
+ 0x26, 0x0d, 0xc5, 0x3d, 0x90, 0xa4, 0x41, 0x03, 0x3d, 0x68, 0x5c, 0xf2,
+ 0x1d, 0xd1, 0x7b, 0x03, 0x9a, 0x1f, 0x72, 0x7d, 0x70, 0xaa, 0x1c, 0xe3,
+ 0x90, 0x1c, 0x5a, 0x65, 0x2d, 0x8e, 0xb7, 0x08, 0xf9, 0xb0, 0x84, 0xc4,
+ 0xd4, 0x35, 0xeb, 0x88, 0x9d, 0x9a, 0x42, 0x90, 0x2f, 0x5d, 0xee, 0x54,
+ 0x96, 0x20, 0x62, 0x9a, 0x36, 0xfc, 0xd3, 0x8c, 0xdc, 0x6b, 0xe9, 0x06,
+ 0xd0, 0x14, 0x3e, 0x05, 0xa6, 0x6d, 0x64, 0x95, 0xd0, 0x2a, 0x71, 0x8e,
+ 0x48, 0x00, 0x24, 0xd6, 0x3a, 0x2e, 0x15, 0xcc, 0x64, 0x22, 0x4b, 0xf4,
+ 0x00, 0xe9, 0x38, 0xd9, 0xe2, 0x41, 0xea, 0xb9, 0x50, 0x53, 0xbe, 0xd2,
+ 0xce, 0xc0, 0x2d, 0xb9, 0xf2, 0x42, 0xf1, 0xa1, 0x28, 0x4f, 0x37, 0x19,
+ 0xa4, 0xe3, 0x36, 0x90, 0xf4, 0x2f, 0x5e, 0x7a, 0x18, 0x1b, 0x24, 0x53,
+ 0x82, 0x9b, 0x4e, 0x0a, 0x16, 0x81, 0x4a, 0x48, 0x4c, 0x66, 0x26, 0xa9,
+ 0xa7, 0x74, 0xec, 0x7e, 0xce, 0x6a, 0x4d, 0x4b, 0x59, 0x03, 0xc9, 0x1c,
+ 0x7e, 0x7d, 0x0c, 0x53, 0xd2, 0x3c, 0x25, 0x7e, 0x3a, 0x90, 0x6e, 0x64,
+ 0x3a, 0x82, 0xb6, 0xe2, 0xee, 0xe2, 0xab, 0x34, 0x33, 0x25, 0x26, 0x4c,
+ 0x39, 0x73, 0xee, 0x2f, 0x5e, 0x69, 0x8b, 0xa5, 0x77, 0x09, 0x87, 0xd8,
+ 0xe3, 0xd8, 0x84, 0x57, 0x17, 0x17, 0x16, 0x7b, 0xd3, 0x69, 0xf7, 0xda,
+ 0xa1, 0x6b, 0x4d, 0x00, 0x64, 0xf9, 0x58, 0x2c, 0xea, 0x60, 0xaf, 0x2d,
+ 0xcb, 0x95, 0xdf, 0x64, 0x81, 0xae, 0x49, 0xca, 0xfd, 0x8d, 0x96, 0x37,
+ 0x0d, 0xfd, 0x77, 0x63, 0x4b, 0xc9, 0xe9, 0xf6, 0xe1, 0x2a, 0xe8, 0xc5,
+ 0x2d, 0x66, 0x12, 0x4a, 0xdf, 0x22, 0xf0, 0x8b, 0xbc, 0x1e, 0xaf, 0x69,
+ 0x8e, 0x27, 0xf6, 0xef, 0x1a, 0xc5, 0x45, 0x27, 0x02, 0x9a, 0x28, 0xac,
+ 0x22, 0x9a, 0xda, 0x62, 0x4d, 0xb9, 0x58, 0x58, 0x7c, 0x12, 0xb7, 0x42,
+ 0x59, 0xdc, 0x21, 0xa1, 0x1b, 0xe4, 0x15, 0xf0, 0x41, 0xa2, 0x2f, 0x23,
+ 0x8d, 0x2f, 0x22, 0x1a, 0x8f, 0x43, 0xff, 0x06, 0xae, 0x24, 0x0c, 0x1e,
+ 0xb7, 0x2b, 0x96, 0xa1, 0xbb, 0x39, 0x44, 0xf9, 0x84, 0xab, 0x27, 0xe4,
+ 0xc7, 0x69, 0xc1, 0xa5, 0xc0, 0x17, 0xfd, 0x4b, 0x73, 0xf1, 0x5e, 0x3d,
+ 0xbe, 0x7a, 0xbf, 0x70, 0xf1, 0x1e, 0x59, 0xbd, 0x8b, 0x6b, 0x49, 0x06,
+ 0x48, 0x10, 0xc3, 0xf6, 0x2a, 0x88, 0xa9, 0x82, 0x35, 0x0b, 0x51, 0xbd,
+ 0x3e, 0xb6, 0xaa, 0x7e, 0x34, 0x03, 0x0f, 0xd6, 0xab, 0x7f, 0xd8, 0xae,
+ 0x83, 0x1a, 0x6d, 0xf4, 0xdd, 0xcd, 0x89, 0x27, 0x83, 0x06, 0x8f, 0x48,
+ 0x43, 0xb7, 0xd9, 0x02, 0x66, 0xc1, 0xaf, 0x73, 0x92, 0xcb, 0x47, 0x22,
+ 0xff, 0x4a, 0x48, 0x19, 0x67, 0xaf, 0x43, 0xc7, 0xa9, 0xa9, 0x3a, 0x33,
+ 0x33, 0xcb, 0xb4, 0xe6, 0xf7, 0xa5, 0x71, 0xf6, 0x47, 0x27, 0x57, 0x0b,
+ 0xc1, 0x42, 0xf4, 0x5f, 0xa4, 0x19, 0xbe, 0x2c, 0xeb, 0x84, 0x9e, 0xb7,
+ 0x0e, 0x47, 0xa0, 0x71, 0x32, 0x1f, 0x49, 0xcd, 0xe4, 0x68, 0x4c, 0x7f,
+ 0x6b, 0x50, 0x5f, 0xb0, 0x58, 0x75, 0x41, 0xb1, 0x10, 0xaf, 0x5f, 0xab,
+ 0x94, 0x57, 0xca, 0xb6, 0x8f, 0x15, 0xfa, 0xce, 0xed, 0xfb, 0x3f, 0x7d,
+ 0x8a, 0x70, 0xc9, 0x58, 0xd8, 0xb5, 0x4c, 0x53, 0xdd, 0x98, 0x9e, 0x28,
+ 0xae, 0x38, 0x76, 0x85, 0x2d, 0xd6, 0x7f, 0x5d, 0xc1, 0xbf, 0x7b, 0xb5,
+ 0x8e, 0x09, 0xe0, 0x82, 0x62, 0x7f, 0x25, 0xbb, 0xe2, 0xe6, 0xd0, 0x06,
+ 0xa9, 0x69, 0x50, 0xb9, 0x57, 0xf3, 0x87, 0x88, 0x26, 0x54, 0xa2, 0x15,
+ 0x4a, 0x7c, 0x80, 0x58, 0x1d, 0x79, 0x36, 0x28, 0x73, 0x92, 0x04, 0x53,
+ 0xee, 0xa0, 0x40, 0xba, 0xa9, 0x92, 0x79, 0x72, 0xa5, 0x96, 0xaa, 0xa3,
+ 0xef, 0x8e, 0x4e, 0x5a, 0x02, 0x57, 0x25, 0x9f, 0x3b, 0xdf, 0x63, 0x60,
+ 0xd0, 0x30, 0x78, 0x12, 0x60, 0xf6, 0xc8, 0x8d, 0xc1, 0x40, 0x11, 0xd2,
+ 0x62, 0x67, 0x34, 0x2b, 0x3d, 0x4c, 0xf7, 0x53, 0x62, 0x2e, 0xb8, 0x82,
+ 0xed, 0x82, 0x33, 0x81, 0x6a, 0x2a, 0x47, 0x12, 0x8a, 0x83, 0x6b, 0xe9,
+ 0xeb, 0xf1, 0x78, 0xfb, 0x26, 0x29, 0x26, 0x8c, 0x86, 0xd5, 0x26, 0x28,
+ 0xe8, 0x58, 0xd1, 0x6b, 0x38, 0xff, 0xc5, 0x80, 0xcf, 0xdb, 0xec, 0x67,
+ 0xd2, 0x7a, 0x63, 0x99, 0xcf, 0xd3, 0xe9, 0x7d, 0xf4, 0x5a, 0x47, 0x56,
+ 0xb2, 0x52, 0xc9, 0x9b, 0x0e, 0x43, 0xbe, 0x5a, 0x51, 0x4f, 0xbf, 0x1d,
+ 0x1e, 0x8c, 0x87, 0xaf, 0x8f, 0x4e, 0x8e, 0xbe, 0x3e, 0xb8, 0x38, 0x72,
+ 0x49, 0x0a, 0x08, 0xfd, 0x58, 0x43, 0x17, 0x46, 0x0f, 0xdf, 0xea, 0x48,
+ 0xc5, 0x54, 0xc5, 0xc1, 0xc1, 0x0c, 0x5f, 0x77, 0x93, 0x54, 0x16, 0xc5,
+ 0x29, 0x92, 0xfe, 0x22, 0x86, 0xc0, 0xd7, 0x0a, 0x4c, 0xf4, 0x11, 0x36,
+ 0xf3, 0x85, 0x0e, 0xb5, 0x35, 0x83, 0x78, 0x7e, 0xc7, 0x70, 0x1e, 0xef,
+ 0x33, 0xd6, 0x4d, 0x34, 0xb7, 0x9e, 0x65, 0x56, 0xcc, 0x3e, 0xd8, 0x92,
+ 0x60, 0xfd, 0x6b, 0xbb, 0x8c, 0x60, 0xa8, 0x6e, 0x99, 0x46, 0x02, 0xeb,
+ 0x34, 0x3b, 0xee, 0x35, 0x1e, 0x6c, 0xc4, 0x5c, 0xf9, 0x44, 0x54, 0xc4,
+ 0xd6, 0xe9, 0x77, 0x2d, 0x89, 0x58, 0xb5, 0xa4, 0x72, 0x7a, 0x9d, 0x2c,
+ 0x5c, 0x80, 0x36, 0x07, 0x0a, 0xd0, 0xd3, 0x8a, 0xf6, 0x41, 0x67, 0xec,
+ 0x8e, 0xc3, 0x4f, 0x70, 0x98, 0x45, 0xe1, 0x40, 0xe0, 0x1c, 0x07, 0x8b,
+ 0x75, 0x88, 0x48, 0x77, 0x29, 0x12, 0xac, 0x25, 0x86, 0x03, 0xa1, 0x74,
+ 0x20, 0x12, 0x8b, 0x17, 0xed, 0x8e, 0x10, 0x55, 0xb4, 0x96, 0xa6, 0x66,
+ 0xb6, 0x82, 0x35, 0x4c, 0x8c, 0x82, 0x26, 0x73, 0x4a, 0x32, 0x74, 0x65,
+ 0xb6, 0xc2, 0x4c, 0x6c, 0x63, 0x7a, 0x37, 0xf0, 0x40, 0x47, 0xce, 0x13,
+ 0xd2, 0x8e, 0x4f, 0x47, 0xe8, 0x7a, 0x10, 0x5a, 0x26, 0xb1, 0x62, 0x2e,
+ 0x12, 0x9d, 0x0d, 0xd6, 0x86, 0xe5, 0x67, 0x19, 0xd9, 0xbf, 0x4e, 0x73,
+ 0x12, 0x32, 0xb5, 0xe8, 0xa3, 0x02, 0x79, 0xf5, 0x7c, 0x02, 0x3a, 0x93,
+ 0x4b, 0xeb, 0xbb, 0x8e, 0x84, 0xcd, 0x61, 0xb2, 0x2c, 0xaa, 0x8e, 0xc0,
+ 0x4a, 0x09, 0x2d, 0x74, 0xa6, 0xcb, 0x59, 0x90, 0xde, 0x19, 0x64, 0xe1,
+ 0x1f, 0x9d, 0x9d, 0x0b, 0x62, 0xe4, 0x09, 0xff, 0xa2, 0x21, 0x0c, 0xcd,
+ 0x9e, 0xa1, 0xc8, 0x6b, 0x66, 0x03, 0x9c, 0xa5, 0x50, 0x43, 0x1d, 0xd6,
+ 0x90, 0xc5, 0x9b, 0x49, 0xc8, 0x83, 0x62, 0xe9, 0x28, 0x49, 0x63, 0x46,
+ 0x4d, 0x6a, 0xf7, 0x28, 0x56, 0x18, 0x0a, 0x8f, 0x61, 0x20, 0x82, 0x11,
+ 0x46, 0x21, 0x71, 0x1b, 0x66, 0x97, 0x3f, 0xe5, 0x2f, 0x39, 0x50, 0x47,
+ 0x49, 0x60, 0x8d, 0x9b, 0xd2, 0x67, 0x28, 0x71, 0x93, 0xfc, 0x56, 0x54,
+ 0x00, 0xff, 0x2a, 0xa6, 0x71, 0x8c, 0xfc, 0x3c, 0xa5, 0x0b, 0xd1, 0x76,
+ 0x90, 0xdd, 0xda, 0x24, 0x74, 0x51, 0x70, 0x40, 0x3c, 0xd8, 0x93, 0x9c,
+ 0x9a, 0x01, 0xa4, 0x0e, 0x26, 0xed, 0xec, 0x24, 0x03, 0xc1, 0x96, 0x24,
+ 0xbd, 0x9e, 0x25, 0x1d, 0xa4, 0x63, 0xb0, 0x03, 0xae, 0x65, 0x40, 0xd6,
+ 0x14, 0x27, 0x8b, 0x35, 0x4a, 0xee, 0x35, 0x81, 0x56, 0x6c, 0x96, 0x97,
+ 0xea, 0xe1, 0x8a, 0xe7, 0x69, 0x75, 0x2f, 0x6a, 0x5e, 0x68, 0x31, 0xb8,
+ 0x8e, 0xbb, 0xf2, 0x0f, 0x68, 0xe1, 0x1d, 0x00, 0x07, 0x26, 0xaa, 0xdb,
+ 0xd6, 0xb6, 0x11, 0x83, 0x36, 0x42, 0x74, 0x0e, 0xa0, 0x70, 0x7c, 0x64,
+ 0x1b, 0x74, 0xca, 0x4a, 0xb1, 0x0e, 0x45, 0x16, 0x87, 0xc1, 0x2e, 0x94,
+ 0xca, 0xb3, 0xbc, 0x8b, 0xaa, 0x84, 0x43, 0xd0, 0x50, 0x63, 0xc9, 0xe1,
+ 0xaf, 0x93, 0x60, 0xab, 0x77, 0x49, 0x28, 0xe6, 0x3d, 0x44, 0xfb, 0x20,
+ 0xf3, 0xe9, 0xb5, 0x22, 0xec, 0xb1, 0x1b, 0x5b, 0x48, 0x69, 0x92, 0x5c,
+ 0xc7, 0xb7, 0x29, 0x03, 0x9e, 0x84, 0xe8, 0x3d, 0x1d, 0xd6, 0x12, 0xda,
+ 0x7f, 0xc6, 0x2a, 0xe0, 0x8d, 0xe1, 0x03, 0xcc, 0xef, 0x4a, 0xe8, 0x6d,
+ 0x08, 0xdd, 0x83, 0xdd, 0x80, 0x51, 0xf9, 0x6c, 0xa0, 0xbe, 0x2a, 0xf8,
+ 0x9a, 0x5b, 0x01, 0xde, 0x08, 0x15, 0x76, 0xd0, 0x1b, 0xfa, 0x64, 0x5c,
+ 0xde, 0x76, 0x9f, 0xb0, 0xf2, 0xf6, 0x97, 0x9f, 0x30, 0x01, 0x80, 0x62,
+ 0x12, 0x3a, 0x3a, 0x1b, 0x7f, 0x17, 0xb9, 0xf8, 0xa0, 0xae, 0x9b, 0x53,
+ 0x0e, 0x97, 0x9f, 0x17, 0x48, 0x2d, 0x38, 0x60, 0xbf, 0xf2, 0x84, 0xb9,
+ 0x03, 0x46, 0xfd, 0xeb, 0xa9, 0x3a, 0x3b, 0x18, 0x7f, 0xd7, 0x38, 0x4f,
+ 0xde, 0xa5, 0x9a, 0x56, 0x51, 0x97, 0x13, 0x04, 0xb0, 0x44, 0x85, 0xe1,
+ 0x68, 0x72, 0x6b, 0x9d, 0xa4, 0x56, 0xde, 0x7e, 0x0a, 0xa9, 0xd1, 0x50,
+ 0x5a, 0xa4, 0xd6, 0x5a, 0xde, 0x87, 0x48, 0x2d, 0xdc, 0xa3, 0x0e, 0x52,
+ 0xa3, 0xf6, 0x5b, 0xa4, 0x66, 0xeb, 0xda, 0x4d, 0x6b, 0xeb, 0x48, 0xcd,
+ 0x02, 0x25, 0x13, 0x21, 0xb3, 0x90, 0xca, 0xda, 0x14, 0x56, 0xa3, 0x9b,
+ 0xac, 0x1c, 0x7a, 0xa4, 0xc0, 0x97, 0xee, 0xd7, 0x2f, 0x3a, 0x50, 0x42,
+ 0x42, 0x48, 0x06, 0x41, 0xee, 0xc8, 0x57, 0xd5, 0x15, 0xc8, 0xe1, 0xf5,
+ 0xbb, 0xb1, 0x47, 0x66, 0xa8, 0xae, 0x0b, 0x00, 0x08, 0x05, 0xad, 0x8d,
+ 0x1e, 0xb6, 0xc5, 0xc6, 0x06, 0x6f, 0x29, 0x50, 0xac, 0xdc, 0xc1, 0x30,
+ 0x18, 0x56, 0xb4, 0x29, 0xc2, 0x8b, 0x3a, 0xd6, 0x02, 0x0c, 0x3c, 0x17,
+ 0x62, 0x7c, 0x09, 0x18, 0x2b, 0x1a, 0x86, 0x42, 0x09, 0x73, 0x90, 0xc7,
+ 0x9c, 0xed, 0x67, 0x9a, 0x77, 0xe8, 0x32, 0xa0, 0xb2, 0x06, 0x30, 0x62,
+ 0xb4, 0xd9, 0xd1, 0x5c, 0x66, 0xf9, 0xb4, 0x5b, 0x0f, 0x5a, 0x91, 0xeb,
+ 0x08, 0x13, 0x5d, 0x30, 0x02, 0xde, 0xe3, 0xa2, 0x69, 0xbb, 0x45, 0x47,
+ 0x94, 0x66, 0x22, 0x09, 0x5c, 0x21, 0x40, 0x80, 0xd2, 0xba, 0x8b, 0x92,
+ 0x06, 0x3a, 0xf2, 0x30, 0xe6, 0xbe, 0x5c, 0xb2, 0x7a, 0xd9, 0x61, 0x7e,
+ 0x02, 0x39, 0x21, 0x20, 0x9d, 0x6d, 0x5d, 0x0f, 0x62, 0x56, 0x60, 0xe7,
+ 0x97, 0xb7, 0x4f, 0x87, 0x3c, 0x55, 0xda, 0xab, 0xe5, 0x50, 0xe7, 0xdc,
+ 0xb9, 0xf5, 0xc6, 0x39, 0x26, 0xa9, 0xe4, 0xa2, 0x86, 0xcf, 0xcb, 0xa5,
+ 0x4b, 0xea, 0x12, 0x2f, 0x34, 0x92, 0xa3, 0x43, 0x72, 0x68, 0x41, 0xb0,
+ 0xe4, 0x81, 0xaa, 0x50, 0xa3, 0x1b, 0xbd, 0xbe, 0x38, 0xc7, 0x57, 0x2c,
+ 0xe6, 0x4c, 0x19, 0xd2, 0x87, 0xac, 0x40, 0x5c, 0x5c, 0xad, 0x5a, 0x1e,
+ 0x32, 0x58, 0x80, 0xbc, 0x6b, 0xc7, 0xe2, 0xa0, 0xc3, 0x24, 0xed, 0xff,
+ 0xb3, 0x37, 0xf1, 0x53, 0x76, 0xf1, 0xf9, 0x3f, 0x7e, 0x17, 0x9f, 0xff,
+ 0x0f, 0xd9, 0xc5, 0xe7, 0xff, 0x1f, 0xd9, 0x45, 0x4b, 0x30, 0x0f, 0xf6,
+ 0x64, 0xb0, 0x7e, 0x3b, 0x59, 0x1d, 0xae, 0x34, 0x46, 0x94, 0x6f, 0x6f,
+ 0xde, 0x02, 0x6b, 0x41, 0xd4, 0xed, 0x8e, 0x64, 0x5a, 0xf1, 0xbb, 0x23,
+ 0xe7, 0xa7, 0x1b, 0xbb, 0x47, 0x6d, 0x09, 0xd6, 0xe8, 0xf1, 0x59, 0x80,
+ 0x2b, 0xe0, 0x77, 0xc7, 0xd0, 0xa1, 0x54, 0x45, 0xee, 0x74, 0x5b, 0x97,
+ 0xec, 0xcb, 0x24, 0x5e, 0x2e, 0xd1, 0xd3, 0x25, 0xa4, 0x4f, 0xf8, 0x3b,
+ 0x65, 0xbf, 0x20, 0x15, 0x4c, 0x2c, 0xd6, 0x8c, 0x36, 0x69, 0xff, 0x25,
+ 0xaf, 0xf6, 0x50, 0x1e, 0xff, 0xa2, 0x33, 0x83, 0x04, 0xf8, 0x4f, 0x7e,
+ 0x48, 0xdd, 0xe4, 0xe0, 0x34, 0x2a, 0x47, 0x10, 0xe6, 0x76, 0x0e, 0x49,
+ 0x22, 0xc4, 0x78, 0x79, 0x8c, 0x1c, 0x7e, 0x0d, 0x35, 0xfc, 0xf7, 0xc8,
+ 0x21, 0xe1, 0xcb, 0x1a, 0x80, 0x4e, 0xec, 0x0b, 0x7d, 0x7f, 0x7e, 0xb2,
+ 0x2e, 0x41, 0x47, 0xbc, 0x8d, 0x9c, 0x2b, 0x79, 0x2e, 0xf0, 0x4f, 0x45,
+ 0x74, 0x16, 0x5f, 0x25, 0xbd, 0x10, 0x0a, 0xec, 0x13, 0x80, 0x03, 0x5a,
+ 0xa9, 0xf7, 0xac, 0x89, 0xfa, 0x38, 0xb1, 0x30, 0xd3, 0x1e, 0xc6, 0x08,
+ 0x9f, 0x67, 0x2f, 0xae, 0xbf, 0x2e, 0x64, 0x21, 0x11, 0x55, 0xeb, 0x29,
+ 0x92, 0x96, 0x8b, 0xad, 0x8e, 0x91, 0xde, 0x9f, 0x38, 0x6a, 0xbc, 0x67,
+ 0x03, 0x74, 0x53, 0x6e, 0x47, 0xde, 0xf2, 0x23, 0xde, 0x9c, 0x5a, 0x8f,
+ 0x35, 0x2f, 0xf5, 0x20, 0xb8, 0x3c, 0x00, 0xa0, 0x14, 0x5f, 0x0b, 0x7e,
+ 0xe0, 0x65, 0x3e, 0x6f, 0x92, 0xa6, 0x20, 0x90, 0x11, 0x17, 0x38, 0xd1,
+ 0x61, 0xed, 0xab, 0x5b, 0x56, 0xf6, 0xd2, 0x06, 0xa5, 0x62, 0x43, 0x28,
+ 0x24, 0xc6, 0x73, 0x86, 0x7a, 0x6f, 0x46, 0x8f, 0x30, 0xfd, 0xba, 0xc4,
+ 0x6e, 0xb6, 0x03, 0xf1, 0x80, 0x20, 0x65, 0xa4, 0xc0, 0xfd, 0x76, 0xd3,
+ 0xfa, 0x0d, 0xbd, 0x95, 0x47, 0xf0, 0xea, 0x72, 0xe4, 0xda, 0xcb, 0x20,
+ 0x92, 0xeb, 0xc7, 0x7d, 0x33, 0x1e, 0xfc, 0xdc, 0x1d, 0x95, 0xde, 0xce,
+ 0xe7, 0xab, 0x7b, 0xd1, 0x2d, 0x7b, 0x3c, 0x0c, 0x0f, 0xeb, 0xcc, 0x52,
+ 0xc2, 0x72, 0x1b, 0x68, 0x6f, 0x6c, 0xa9, 0x4f, 0x44, 0x00, 0x5a, 0x57,
+ 0x82, 0x83, 0xd9, 0x22, 0xb8, 0x6d, 0xc4, 0x2f, 0x40, 0xbd, 0x0f, 0x05,
+ 0xa9, 0x19, 0x2a, 0x6a, 0xcb, 0x7e, 0xc3, 0xb1, 0x28, 0x38, 0x58, 0x41,
+ 0xbf, 0x26, 0xc0, 0xd1, 0x81, 0x39, 0xfb, 0xf6, 0x70, 0xfc, 0xbb, 0xdd,
+ 0x3d, 0x8b, 0x81, 0xe3, 0xf0, 0x56, 0x75, 0x86, 0x8f, 0x01, 0x93, 0xd0,
+ 0x24, 0x6f, 0xd6, 0x4d, 0xa4, 0xbe, 0x03, 0xfc, 0x1d, 0x1c, 0x3e, 0xe7,
+ 0x92, 0x73, 0xfd, 0xcb, 0x88, 0xda, 0xc1, 0xf0, 0x24, 0x7f, 0xc9, 0x62,
+ 0x8d, 0x93, 0x4e, 0x1d, 0x9e, 0x36, 0xc8, 0xd9, 0x90, 0x04, 0x48, 0xc3,
+ 0xad, 0x5b, 0x0d, 0x80, 0x84, 0x2e, 0xc5, 0x02, 0x11, 0x09, 0xd4, 0xb3,
+ 0xc4, 0xfa, 0xb4, 0x12, 0xc6, 0x14, 0xe2, 0xb4, 0x0b, 0xa0, 0xc4, 0x62,
+ 0x65, 0x81, 0x32, 0xcd, 0x62, 0x72, 0x2f, 0x58, 0x92, 0x5e, 0xd7, 0x56,
+ 0x84, 0x29, 0x42, 0xcb, 0x42, 0x32, 0xa7, 0x6e, 0x92, 0x7b, 0x07, 0x12,
+ 0x10, 0xb9, 0x4f, 0xeb, 0xbb, 0xca, 0x58, 0x8b, 0x1c, 0x17, 0xd9, 0x32,
+ 0x99, 0x13, 0x9b, 0xff, 0x17, 0xf1, 0x76, 0x0b, 0x85, 0x89, 0x2a, 0xc4,
+ 0x4d, 0x72, 0x94, 0x84, 0x87, 0x2e, 0x59, 0x00, 0xb0, 0x5c, 0x2b, 0x3a,
+ 0xcc, 0xef, 0x3b, 0xfd, 0xac, 0xbe, 0xde, 0x89, 0x30, 0x60, 0x28, 0x57,
+ 0x65, 0x65, 0xc1, 0xf8, 0x0d, 0xb0, 0xad, 0x24, 0x0b, 0xcf, 0x47, 0xcb,
+ 0xc6, 0x97, 0x85, 0x19, 0x28, 0x6c, 0x75, 0x4e, 0xa7, 0x37, 0x10, 0xe8,
+ 0xd5, 0x5c, 0x14, 0x4e, 0xcf, 0xa2, 0x3c, 0x24, 0xc8, 0xb9, 0x63, 0x17,
+ 0x90, 0x7c, 0xc0, 0x36, 0x78, 0x26, 0x4b, 0xbe, 0x0d, 0xd3, 0x4c, 0xbc,
+ 0x8e, 0xf0, 0x8f, 0x66, 0xb7, 0x69, 0x91, 0x67, 0x90, 0x51, 0x6e, 0xe3,
+ 0x22, 0x85, 0x76, 0x48, 0x63, 0xfd, 0xf0, 0xfa, 0xf8, 0x3c, 0xda, 0xa4,
+ 0x8d, 0x9d, 0xdc, 0xaf, 0x81, 0xc2, 0xdb, 0x4e, 0xaa, 0xe9, 0xf6, 0xf2,
+ 0x26, 0xdd, 0xce, 0xca, 0x72, 0x36, 0xd9, 0x72, 0x80, 0x0b, 0xe8, 0x0e,
+ 0x74, 0x28, 0xb4, 0xbc, 0x0b, 0xf3, 0xc0, 0x8a, 0x33, 0x81, 0x36, 0x69,
+ 0x01, 0x5a, 0xbb, 0x50, 0xd2, 0x42, 0x2f, 0x46, 0x65, 0xbe, 0xa5, 0xd5,
+ 0x62, 0x6e, 0xe3, 0x74, 0xee, 0xb0, 0xe5, 0x32, 0x69, 0x4a, 0xe2, 0x8a,
+ 0x34, 0xbb, 0x9d, 0xfd, 0x15, 0xc9, 0xcc, 0x74, 0xc7, 0xe6, 0x71, 0xd5,
+ 0x18, 0x17, 0xc1, 0x7a, 0x94, 0x14, 0x71, 0x0b, 0x51, 0xa1, 0xe5, 0x44,
+ 0xb2, 0xab, 0x0b, 0x3d, 0x1e, 0x30, 0x30, 0x3a, 0x2f, 0x8a, 0xf8, 0xce,
+ 0xd8, 0x0e, 0xd1, 0x19, 0x54, 0xd6, 0x1b, 0x6d, 0xf7, 0x22, 0x07, 0x05,
+ 0x4f, 0xab, 0x8c, 0xc2, 0x06, 0x1e, 0x7b, 0x9f, 0x08, 0xec, 0x72, 0x55,
+ 0x3a, 0xfb, 0x68, 0xec, 0xf6, 0x6b, 0xd4, 0x9d, 0xa4, 0xe7, 0xb6, 0x53,
+ 0xfd, 0x98, 0x65, 0xd4, 0xdb, 0xef, 0xe1, 0x68, 0x65, 0x80, 0xa2, 0x16,
+ 0x21, 0x47, 0x07, 0x85, 0xad, 0xea, 0xfd, 0xd4, 0x8b, 0xa2, 0x96, 0x7d,
+ 0x54, 0x8e, 0x53, 0xea, 0x41, 0x8b, 0x39, 0xef, 0xf0, 0x2a, 0x4b, 0xff,
+ 0x26, 0xf9, 0xec, 0xee, 0x10, 0xcf, 0x12, 0xc4, 0xd1, 0x03, 0x6b, 0x2a,
+ 0x18, 0x42, 0x27, 0x8c, 0x82, 0x1f, 0xd2, 0x4f, 0xed, 0x21, 0x19, 0x3c,
+ 0x7f, 0xcc, 0x5f, 0xd3, 0x90, 0xcc, 0x4b, 0x2b, 0x43, 0xe8, 0x30, 0x57,
+ 0xd4, 0x07, 0xe4, 0x00, 0xfe, 0x7d, 0x95, 0x81, 0x76, 0x3c, 0x6c, 0x7a,
+ 0x3a, 0x56, 0x67, 0xd1, 0xdb, 0x78, 0x1a, 0xd1, 0x1f, 0x3f, 0x40, 0xbe,
+ 0xd8, 0xe2, 0x91, 0xd7, 0xe1, 0xb1, 0xec, 0x88, 0x09, 0x67, 0x14, 0x5e,
+ 0xd8, 0x85, 0x90, 0x35, 0xb0, 0x03, 0x57, 0x3f, 0x38, 0xc1, 0x35, 0x98,
+ 0xa4, 0x60, 0x8e, 0x13, 0x4d, 0xf6, 0x14, 0x13, 0x35, 0x4b, 0x95, 0x71,
+ 0x2b, 0x20, 0xc5, 0xbd, 0xbf, 0xed, 0x98, 0x0d, 0x33, 0x0c, 0x17, 0x37,
+ 0x0b, 0x09, 0x94, 0x79, 0x31, 0xac, 0xdd, 0xf4, 0x15, 0x4d, 0x95, 0xc1,
+ 0x44, 0x04, 0x62, 0xb4, 0xe5, 0xb4, 0xaf, 0xc4, 0xbe, 0x61, 0x7c, 0xdf,
+ 0x39, 0x91, 0xc2, 0x81, 0x4a, 0xcc, 0xac, 0xef, 0xcc, 0xa7, 0xcc, 0xfe,
+ 0x13, 0x88, 0x1f, 0xb4, 0xff, 0xab, 0x48, 0xff, 0xb7, 0x0b, 0x60, 0xd2,
+ 0x24, 0xdc, 0x97, 0x5d, 0x09, 0xde, 0xe3, 0x64, 0x6e, 0x50, 0xe1, 0x96,
+ 0x4c, 0x35, 0x2d, 0xee, 0x97, 0x6c, 0x05, 0x93, 0xb7, 0x74, 0x7d, 0x80,
+ 0x2f, 0x2d, 0x79, 0x53, 0x21, 0x9e, 0xfc, 0xa8, 0x23, 0x2f, 0xd0, 0xf7,
+ 0xa8, 0x49, 0x65, 0xb0, 0x7d, 0x12, 0xf1, 0x54, 0x10, 0xb6, 0xe4, 0x33,
+ 0xce, 0xa1, 0x24, 0xaa, 0x9c, 0x49, 0xfa, 0x86, 0xcb, 0xc3, 0x69, 0x05,
+ 0xe4, 0x72, 0x3b, 0x65, 0xe8, 0xf4, 0xe6, 0x63, 0xc2, 0x19, 0xdd, 0xcc,
+ 0x6c, 0xe1, 0x75, 0xdb, 0x0a, 0x14, 0x1a, 0x7d, 0xbe, 0x85, 0x7f, 0x6d,
+ 0xca, 0x83, 0x63, 0x96, 0xd4, 0x50, 0xb1, 0xca, 0xd0, 0x79, 0x7d, 0xa5,
+ 0x1c, 0x7b, 0x6f, 0x9e, 0xb3, 0xf3, 0xe3, 0xf1, 0x61, 0xc4, 0xe7, 0xeb,
+ 0xf4, 0xdd, 0xc9, 0x9f, 0x59, 0xe0, 0xae, 0x00, 0x82, 0xcd, 0xd6, 0x3a,
+ 0xee, 0xbf, 0xeb, 0x62, 0x28, 0x07, 0x3e, 0xbc, 0xba, 0x83, 0x77, 0xc8,
+ 0xcd, 0x3c, 0xbc, 0xb3, 0x2d, 0xf6, 0x19, 0x50, 0x4c, 0x2e, 0x70, 0xa2,
+ 0x11, 0xc1, 0xa5, 0x2c, 0x85, 0x70, 0xc0, 0xd7, 0xd4, 0x80, 0xad, 0x56,
+ 0x6d, 0x18, 0x26, 0x0e, 0x01, 0x09, 0x05, 0x7d, 0xd1, 0x92, 0xd8, 0x6a,
+ 0x48, 0xbd, 0xd3, 0x44, 0x1b, 0x49, 0x9c, 0x34, 0xd1, 0x2b, 0x71, 0xe6,
+ 0xae, 0x49, 0x3c, 0x80, 0x4c, 0xe8, 0xb2, 0xfe, 0x55, 0x58, 0xe0, 0xc3,
+ 0xa7, 0x67, 0x5d, 0xe5, 0xf4, 0x23, 0xc6, 0x40, 0x5c, 0xde, 0x47, 0x5f,
+ 0xc7, 0xcc, 0x0f, 0x60, 0xfc, 0x8b, 0x93, 0x45, 0xeb, 0x82, 0x2e, 0x73,
+ 0xf6, 0x3b, 0xaa, 0x31, 0x0e, 0xbf, 0x3b, 0x72, 0x06, 0xa4, 0x99, 0x04,
+ 0xf1, 0x45, 0xbc, 0x98, 0x33, 0xf6, 0xa7, 0x1b, 0xf5, 0x80, 0xe6, 0x68,
+ 0x28, 0xed, 0x58, 0x1b, 0xab, 0x25, 0x31, 0x6a, 0x24, 0x05, 0x0d, 0xa5,
+ 0x09, 0x99, 0x5a, 0x33, 0x27, 0x48, 0xa4, 0x16, 0xc4, 0xb7, 0x47, 0x2f,
+ 0xf9, 0xdf, 0x35, 0xd3, 0x0e, 0x64, 0x61, 0x38, 0x93, 0x6b, 0xd2, 0x03,
+ 0xbf, 0xac, 0x81, 0xa7, 0x9c, 0x8d, 0x51, 0xe3, 0x3c, 0x6d, 0x6b, 0x30,
+ 0x47, 0xfb, 0xd2, 0x85, 0x3c, 0x88, 0x5e, 0x1f, 0x9d, 0x83, 0x2f, 0x1d,
+ 0xbd, 0xfb, 0x1a, 0x4e, 0x9c, 0x80, 0xd1, 0x73, 0x93, 0xa5, 0xf0, 0x28,
+ 0x01, 0xc4, 0x37, 0xd9, 0xb1, 0xd1, 0x1c, 0x5f, 0xec, 0x6c, 0x3f, 0x81,
+ 0x00, 0x38, 0xfb, 0x4d, 0x53, 0x9d, 0x62, 0x51, 0x20, 0x0e, 0x0f, 0xc2,
+ 0xd9, 0xfd, 0x3a, 0xc5, 0x21, 0x5c, 0x3c, 0x49, 0xcb, 0xce, 0x39, 0x17,
+ 0x8c, 0xc8, 0xaa, 0xc3, 0x45, 0xc4, 0x09, 0x28, 0x01, 0x64, 0x02, 0x1f,
+ 0x62, 0xbd, 0x5f, 0x23, 0x5f, 0xd4, 0x23, 0xa2, 0x61, 0xd5, 0xb2, 0x54,
+ 0xc4, 0x52, 0xb1, 0xfe, 0xe6, 0xd9, 0x2c, 0xb7, 0xa2, 0x9a, 0xce, 0xe0,
+ 0x72, 0x66, 0x98, 0xaf, 0xa8, 0x5b, 0xa2, 0x7e, 0x55, 0xb6, 0x6c, 0xeb,
+ 0x72, 0x45, 0x98, 0x2c, 0x67, 0x50, 0x3a, 0x58, 0xf1, 0x81, 0x5c, 0xeb,
+ 0xb5, 0xa5, 0xa7, 0x3d, 0x55, 0x9d, 0x54, 0xa9, 0xbc, 0xe5, 0x39, 0xe7,
+ 0xf3, 0x29, 0xd1, 0x1e, 0x41, 0x9b, 0xad, 0x4d, 0xf5, 0xb8, 0x46, 0x20,
+ 0x96, 0x72, 0xbd, 0x0c, 0xaa, 0x41, 0xe0, 0x87, 0xa4, 0xf2, 0x7e, 0x38,
+ 0x3c, 0xf8, 0xf0, 0xd5, 0xfb, 0x77, 0xaf, 0x4f, 0x8e, 0xfa, 0x4d, 0x8a,
+ 0xbc, 0xd4, 0xc8, 0x88, 0x92, 0xc3, 0x00, 0x14, 0x6e, 0x21, 0xcc, 0xac,
+ 0xc6, 0x19, 0x07, 0x6e, 0x94, 0x9c, 0x76, 0xe6, 0xdc, 0xb1, 0x5f, 0xf1,
+ 0xa6, 0x59, 0x64, 0x95, 0xcd, 0x80, 0xe3, 0x13, 0x4c, 0xde, 0x10, 0x56,
+ 0xd4, 0xfa, 0x66, 0xe3, 0xeb, 0x44, 0x1c, 0x62, 0xe4, 0x99, 0x19, 0x74,
+ 0x70, 0xcb, 0x0e, 0x94, 0xa4, 0x66, 0x5f, 0x47, 0xa6, 0xa6, 0xde, 0x73,
+ 0xb6, 0x00, 0x56, 0x3d, 0xa6, 0x01, 0x75, 0x6c, 0x77, 0x59, 0x0b, 0x87,
+ 0xe7, 0x56, 0x88, 0x92, 0x87, 0x3a, 0xc8, 0x69, 0x51, 0xf5, 0x07, 0x26,
+ 0xb8, 0x84, 0x49, 0x3b, 0xb8, 0xe0, 0x5b, 0xd0, 0x1d, 0x9c, 0x68, 0x17,
+ 0x0b, 0x5d, 0x8f, 0x92, 0x8f, 0x09, 0xe4, 0x11, 0x7d, 0xeb, 0x50, 0x25,
+ 0x83, 0xef, 0xf3, 0x02, 0xf6, 0xd1, 0xd7, 0x5e, 0x42, 0x90, 0x87, 0x48,
+ 0x7b, 0x6c, 0xc7, 0x2e, 0xb2, 0x14, 0x10, 0xa3, 0x2e, 0x02, 0x6a, 0xf2,
+ 0x9d, 0x1d, 0x5c, 0x7c, 0xd3, 0x75, 0x84, 0xbb, 0x25, 0x36, 0x45, 0x09,
+ 0x61, 0x4d, 0x01, 0x48, 0xa8, 0xaa, 0x18, 0x0d, 0xc2, 0x2f, 0x88, 0xaa,
+ 0x9b, 0x0c, 0xa3, 0x4b, 0x9f, 0x08, 0xf5, 0x07, 0x11, 0x55, 0x55, 0x56,
+ 0xf5, 0x77, 0xa3, 0x11, 0x76, 0x77, 0x5e, 0xad, 0x15, 0x61, 0x24, 0x06,
+ 0xb8, 0x64, 0x04, 0xed, 0xdf, 0x96, 0x11, 0x81, 0x0c, 0x1b, 0x8c, 0xc8,
+ 0xcb, 0x64, 0xff, 0x7d, 0x96, 0x14, 0xe4, 0x55, 0xb6, 0x4f, 0xa9, 0xf0,
+ 0x29, 0xbb, 0xfe, 0xc0, 0x9b, 0x7c, 0xee, 0x06, 0x8f, 0xcc, 0x95, 0x90,
+ 0x70, 0xb7, 0x01, 0xe3, 0x84, 0xba, 0x7c, 0x9a, 0x36, 0x87, 0x5b, 0xa8,
+ 0x90, 0xb8, 0xdf, 0x8b, 0x36, 0x93, 0xd1, 0x15, 0xb5, 0xd7, 0xe3, 0x76,
+ 0x76, 0xf7, 0xf9, 0xdf, 0x3d, 0xfc, 0xfb, 0xa4, 0xb7, 0xd5, 0xb2, 0x78,
+ 0x94, 0x60, 0x5f, 0xed, 0xfc, 0x3b, 0x44, 0xfb, 0x04, 0x36, 0x0c, 0xcb,
+ 0x9d, 0x4e, 0xd7, 0x11, 0x92, 0x8a, 0x78, 0x5d, 0x90, 0x10, 0x7e, 0x21,
+ 0xc0, 0x2a, 0x51, 0x56, 0x6d, 0xc2, 0xb5, 0x37, 0x68, 0x6e, 0x53, 0x49,
+ 0xbd, 0x0e, 0xd3, 0x0c, 0xa6, 0x1f, 0x8a, 0xe4, 0x3a, 0x2e, 0x89, 0x47,
+ 0xac, 0xaa, 0x94, 0xc3, 0x00, 0x3a, 0xa0, 0xaa, 0xe7, 0x9a, 0x91, 0x44,
+ 0x33, 0xd6, 0x8e, 0x1d, 0xe0, 0x89, 0x6d, 0xad, 0x98, 0x1a, 0x59, 0xd4,
+ 0xd1, 0x27, 0x86, 0x5a, 0x92, 0xb2, 0x8b, 0x11, 0x9a, 0xe9, 0x8f, 0x1f,
+ 0x0b, 0x0b, 0x4a, 0x2d, 0xd8, 0x94, 0x8a, 0xc0, 0x84, 0x28, 0xb9, 0xa4,
+ 0x15, 0x4b, 0x05, 0x21, 0x40, 0x52, 0xab, 0x64, 0xd4, 0xed, 0x94, 0x08,
+ 0xb9, 0xe3, 0x34, 0xce, 0xca, 0xfd, 0x0d, 0x0e, 0xe2, 0x74, 0x3a, 0x14,
+ 0x9d, 0xaa, 0x13, 0xdf, 0xa7, 0xc4, 0xcb, 0x80, 0xbb, 0x0a, 0x38, 0x87,
+ 0xf0, 0x76, 0x9d, 0xac, 0xe4, 0x94, 0x19, 0xb1, 0x2b, 0xb4, 0x6c, 0x17,
+ 0xde, 0xa7, 0xe3, 0xd3, 0xbf, 0xfa, 0xe4, 0x2c, 0x53, 0x5a, 0x9e, 0xd9,
+ 0x72, 0x35, 0x61, 0x65, 0xeb, 0xa5, 0xfc, 0x15, 0xd1, 0x9f, 0xf3, 0x74,
+ 0xca, 0x2a, 0xd1, 0xaf, 0x3b, 0x38, 0xfe, 0x7d, 0x77, 0x95, 0xaf, 0xbf,
+ 0xcb, 0xed, 0xc0, 0x5c, 0x38, 0x7c, 0x22, 0xd0, 0x95, 0xdd, 0xe7, 0xce,
+ 0xad, 0x13, 0x34, 0xaa, 0x77, 0x73, 0x2b, 0xe8, 0x81, 0x85, 0xa7, 0x35,
+ 0xc0, 0x75, 0xdf, 0x37, 0x81, 0xa4, 0x63, 0xc0, 0x7e, 0xe7, 0x45, 0xa3,
+ 0x14, 0xab, 0xb1, 0xca, 0x26, 0x0a, 0xc0, 0x7a, 0xa9, 0x21, 0x2c, 0x94,
+ 0x25, 0xf5, 0x06, 0x52, 0x04, 0x05, 0x56, 0xa4, 0x4f, 0x1e, 0xd4, 0x46,
+ 0x5d, 0x9a, 0x7c, 0xde, 0xa2, 0x5a, 0xef, 0xf5, 0x6a, 0xea, 0xa7, 0xb2,
+ 0xc3, 0xae, 0x0a, 0x92, 0xa5, 0x7b, 0x48, 0xf0, 0xb4, 0x2c, 0xdf, 0xaa,
+ 0x65, 0xfb, 0xe1, 0x1e, 0xd1, 0xa5, 0x63, 0x37, 0x55, 0x5e, 0x0f, 0x85,
+ 0x08, 0xae, 0xce, 0x49, 0x5e, 0x54, 0x0d, 0x20, 0x80, 0x16, 0x03, 0x41,
+ 0x68, 0x05, 0x2f, 0x05, 0x02, 0xde, 0x0b, 0x45, 0xc7, 0x32, 0x0b, 0x68,
+ 0x67, 0xdc, 0xb3, 0x05, 0xdd, 0xa9, 0x7e, 0x6c, 0x85, 0x5d, 0x50, 0xb1,
+ 0x84, 0x25, 0x12, 0x1f, 0x36, 0xed, 0x99, 0x8d, 0x42, 0x73, 0x74, 0x41,
+ 0xaa, 0x7e, 0x3d, 0xfe, 0x96, 0xd3, 0x59, 0xc5, 0x5d, 0x52, 0xfe, 0xe3,
+ 0xef, 0x92, 0xf5, 0xc9, 0xc3, 0x4f, 0x5e, 0xd4, 0x1c, 0x2d, 0x97, 0x88,
+ 0x8a, 0xa0, 0x2b, 0xb0, 0xdb, 0xbf, 0xf2, 0x86, 0xd1, 0x9c, 0x4a, 0x8e,
+ 0x17, 0xe6, 0x29, 0x6f, 0x72, 0xfd, 0x19, 0xa9, 0xa7, 0x15, 0x43, 0x1b,
+ 0xdd, 0x62, 0x83, 0xae, 0xd1, 0x16, 0xd0, 0x21, 0xac, 0xd2, 0x49, 0x5b,
+ 0x27, 0xb0, 0x82, 0x38, 0xc8, 0xca, 0xc3, 0xdd, 0x8b, 0xc8, 0x29, 0x8d,
+ 0x34, 0x41, 0x95, 0x5b, 0x22, 0xb6, 0xa4, 0x9a, 0x06, 0x5f, 0xce, 0x12,
+ 0xad, 0xbe, 0xd7, 0x24, 0x30, 0x29, 0x8e, 0xab, 0x81, 0x33, 0xd4, 0xe7,
+ 0x71, 0xa6, 0x91, 0x36, 0x1a, 0x70, 0x0f, 0x73, 0x7c, 0xac, 0xb0, 0x91,
+ 0x6e, 0x84, 0x97, 0x82, 0xed, 0xd2, 0xba, 0xf0, 0xd8, 0xf0, 0x75, 0x2b,
+ 0x00, 0x6d, 0x0e, 0x67, 0x43, 0xe3, 0x6b, 0x7c, 0xc2, 0x0d, 0xb2, 0xdc,
+ 0xde, 0x9e, 0xb8, 0x07, 0x38, 0x97, 0x08, 0x87, 0xa4, 0x65, 0x6f, 0xd3,
+ 0x50, 0x0d, 0xd4, 0x5f, 0x14, 0x25, 0xcd, 0x12, 0x5f, 0x78, 0x60, 0xf7,
+ 0xae, 0xcc, 0xf1, 0x96, 0x8a, 0x90, 0x12, 0xde, 0x2a, 0x11, 0xd7, 0xcb,
+ 0xa2, 0xa5, 0xe4, 0x72, 0xc8, 0xa6, 0x50, 0xb8, 0x94, 0xc2, 0xc6, 0x06,
+ 0x54, 0xa2, 0x5f, 0xc7, 0x95, 0x16, 0x58, 0xe3, 0x51, 0x2a, 0xc8, 0xd6,
+ 0xde, 0xde, 0x1a, 0xbf, 0xa0, 0xa2, 0xf5, 0xa9, 0x11, 0x90, 0x17, 0x63,
+ 0x58, 0xc6, 0x97, 0x89, 0x41, 0x85, 0x70, 0xbd, 0x2e, 0x06, 0x58, 0x9e,
+ 0xd2, 0x12, 0x4a, 0xae, 0x0c, 0x3e, 0xcb, 0xda, 0x80, 0x19, 0xe5, 0x6a,
+ 0xca, 0x57, 0x23, 0x6b, 0xdf, 0x2e, 0xad, 0x8d, 0xed, 0x51, 0x9a, 0xaf,
+ 0x10, 0x95, 0xf3, 0x74, 0x19, 0x59, 0x0c, 0x0c, 0x97, 0xad, 0xd1, 0x9a,
+ 0xa0, 0x7c, 0x39, 0x75, 0x84, 0x53, 0x35, 0x40, 0x05, 0xa1, 0x3f, 0xde,
+ 0xb2, 0x3f, 0x72, 0x16, 0x6d, 0x36, 0xda, 0x7f, 0xba, 0xb3, 0x8b, 0xe1,
+ 0x3e, 0xdd, 0xf9, 0x2c, 0xc4, 0x1c, 0x77, 0x89, 0xd7, 0x8a, 0xab, 0xab,
+ 0xa1, 0xda, 0x0f, 0xa7, 0x9d, 0xcd, 0xd9, 0x94, 0x81, 0x75, 0x4d, 0x48,
+ 0xc9, 0x02, 0x87, 0xd2, 0x7c, 0xf4, 0x61, 0x9a, 0x49, 0xf6, 0x33, 0x67,
+ 0xe6, 0x60, 0x2f, 0x63, 0xd8, 0xe9, 0x9a, 0x08, 0x36, 0x71, 0x19, 0x19,
+ 0x3c, 0xcb, 0xba, 0x24, 0x75, 0x85, 0xa5, 0x0c, 0xc2, 0x86, 0x90, 0x68,
+ 0x0f, 0x26, 0xd3, 0xd2, 0xb5, 0xbc, 0x98, 0x71, 0xa8, 0x49, 0xe9, 0x17,
+ 0xac, 0x77, 0xab, 0x0e, 0x18, 0x17, 0xd5, 0x36, 0xf2, 0xcf, 0x35, 0x50,
+ 0x7e, 0xca, 0xe0, 0x71, 0x56, 0xfe, 0xf2, 0xfc, 0xcd, 0x61, 0xa3, 0xb9,
+ 0xbd, 0x27, 0x9f, 0x7f, 0xae, 0x83, 0x48, 0x34, 0xaa, 0xd8, 0xe3, 0x17,
+ 0xb3, 0x19, 0x4a, 0xf2, 0xf3, 0xc4, 0x66, 0xce, 0x55, 0x0b, 0x91, 0xb9,
+ 0x24, 0x81, 0x76, 0x1d, 0x72, 0x52, 0x5f, 0xd7, 0xb4, 0x6f, 0xc5, 0xa2,
+ 0x2d, 0xd7, 0x22, 0x8e, 0xb4, 0xae, 0x9e, 0xd6, 0xc7, 0x32, 0x9c, 0x53,
+ 0x03, 0x3b, 0x93, 0x22, 0x22, 0x5f, 0xb6, 0xe2, 0x36, 0xaf, 0x24, 0x1d,
+ 0xfd, 0x2f, 0x7c, 0x3b, 0x5e, 0x25, 0x55, 0x3b, 0x2f, 0x24, 0xc8, 0xba,
+ 0xad, 0x35, 0xbe, 0x16, 0x58, 0xcd, 0xa3, 0x6d, 0x5a, 0x66, 0xcb, 0x4b,
+ 0x11, 0x29, 0x0d, 0x3f, 0x29, 0xa8, 0xac, 0xf6, 0x25, 0xc8, 0xe8, 0xa5,
+ 0xfa, 0x89, 0x3a, 0x01, 0x30, 0xbf, 0x54, 0xa8, 0x3e, 0x35, 0x91, 0x02,
+ 0x43, 0xae, 0xaa, 0x62, 0x2b, 0x6d, 0x0c, 0xc5, 0x9d, 0x73, 0xbb, 0xa1,
+ 0x37, 0x2a, 0x88, 0x99, 0x56, 0x02, 0x68, 0x39, 0x07, 0x53, 0x57, 0x04,
+ 0xe7, 0xa5, 0x21, 0x00, 0x72, 0xc1, 0x7b, 0xc6, 0x23, 0x95, 0x0c, 0x7b,
+ 0x1e, 0x4d, 0xd7, 0x52, 0x94, 0x61, 0xc1, 0xb8, 0x5a, 0x96, 0x81, 0x7f,
+ 0x37, 0x58, 0xa8, 0xd6, 0xc9, 0x3f, 0xb2, 0x1a, 0x73, 0x06, 0xa2, 0x0f,
+ 0x35, 0xcc, 0xc7, 0x7e, 0xab, 0x3c, 0xe3, 0xa3, 0xd6, 0x07, 0x7a, 0xec,
+ 0xa3, 0x3e, 0x3f, 0xd4, 0x3c, 0xf9, 0xfc, 0x52, 0xdf, 0x9c, 0x6b, 0xa1,
+ 0xab, 0x09, 0x84, 0x29, 0xc3, 0x71, 0x60, 0x99, 0xe2, 0xfa, 0xe1, 0xae,
+ 0x66, 0x6b, 0xd0, 0xe2, 0xa4, 0x48, 0x2f, 0xb1, 0xb3, 0xfd, 0x4e, 0x0b,
+ 0xc0, 0xf0, 0x8d, 0x1b, 0xe9, 0xab, 0x2f, 0x6b, 0xad, 0xdd, 0xdd, 0x8d,
+ 0x16, 0xf7, 0xf6, 0x5d, 0x59, 0xab, 0x38, 0xee, 0xd3, 0xf0, 0x14, 0x55,
+ 0x58, 0x48, 0xca, 0x27, 0xa2, 0x87, 0x75, 0xa5, 0x7c, 0x4d, 0x48, 0x86,
+ 0xf5, 0x89, 0x4b, 0x47, 0xbd, 0x5d, 0x4e, 0x0f, 0x3d, 0x4d, 0x28, 0x86,
+ 0xcc, 0xca, 0xe2, 0x24, 0x27, 0x72, 0x33, 0x42, 0xe2, 0x54, 0xde, 0xaa,
+ 0x58, 0x4d, 0xab, 0xf6, 0x6d, 0xee, 0x0b, 0x5a, 0x0b, 0x14, 0x6e, 0x15,
+ 0x04, 0x12, 0x4a, 0x25, 0xe0, 0xfa, 0x71, 0xe7, 0x93, 0xc5, 0x03, 0xb2,
+ 0x5a, 0xe8, 0xcd, 0x93, 0x08, 0x34, 0xdc, 0xfe, 0x40, 0x02, 0x90, 0x35,
+ 0xbf, 0xd4, 0xe7, 0x3e, 0xae, 0x5d, 0xca, 0xde, 0x5d, 0x32, 0x79, 0xf5,
+ 0x25, 0x6a, 0x2a, 0x03, 0x4d, 0x4b, 0x50, 0x75, 0x99, 0x8e, 0xb6, 0xf9,
+ 0xcf, 0x5e, 0xc4, 0x4a, 0x7f, 0xc7, 0x4a, 0x12, 0xfd, 0xad, 0x6b, 0x31,
+ 0x40, 0x2b, 0x08, 0x5a, 0xbb, 0xcc, 0xf3, 0xb5, 0x8d, 0x59, 0xd5, 0x1b,
+ 0xac, 0x44, 0x10, 0x70, 0x2a, 0xf1, 0x9f, 0x9e, 0xac, 0x84, 0x94, 0xb0,
+ 0x43, 0xb5, 0xa3, 0xd5, 0x95, 0xce, 0x08, 0xe5, 0x53, 0x6e, 0x44, 0x4b,
+ 0x6d, 0x7a, 0xa5, 0x25, 0x0b, 0x59, 0x8a, 0x5a, 0xbf, 0x20, 0xfc, 0xf4,
+ 0xab, 0x2f, 0x01, 0x34, 0xc4, 0xbf, 0xfe, 0xc9, 0xbd, 0xcd, 0xff, 0x10,
+ 0x5d, 0xd2, 0xe9, 0x5e, 0x3b, 0x11, 0x76, 0xad, 0xd8, 0xf3, 0xdb, 0xa2,
+ 0xd3, 0x99, 0xfa, 0xd4, 0x1f, 0xf4, 0x59, 0xaa, 0xec, 0xff, 0xa9, 0x0f,
+ 0xcf, 0x98, 0x99, 0xe0, 0x50, 0xeb, 0x41, 0x0a, 0x5c, 0xe5, 0xad, 0xe8,
+ 0x2f, 0x0e, 0x96, 0xd5, 0x5a, 0xdd, 0x3c, 0xf0, 0xc7, 0xc6, 0xfc, 0x53,
+ 0xcf, 0x8d, 0xfa, 0xa7, 0x9e, 0x1f, 0xf7, 0x4f, 0x3d, 0x3f, 0xf2, 0x9f,
+ 0x7a, 0xbf, 0x62, 0x47, 0xfb, 0xd2, 0xbc, 0x6f, 0x3d, 0x68, 0x3c, 0x68,
+ 0xbb, 0xd7, 0x5f, 0xd7, 0xb4, 0x77, 0x58, 0xa4, 0x76, 0xba, 0xfc, 0x0a,
+ 0xf1, 0xad, 0xab, 0xab, 0x20, 0xf5, 0xa8, 0xa4, 0x50, 0xa6, 0xcc, 0x1b,
+ 0x4a, 0x7c, 0xcb, 0x8b, 0x1c, 0x3c, 0xc1, 0x6b, 0xca, 0x12, 0x73, 0x39,
+ 0x67, 0xfd, 0x3b, 0x40, 0xeb, 0xb2, 0x4e, 0xdc, 0x4a, 0x9b, 0xff, 0xb1,
+ 0xe5, 0x94, 0x76, 0xaf, 0x77, 0x82, 0x6c, 0x5d, 0xae, 0x0a, 0x09, 0x7e,
+ 0x10, 0x9e, 0x29, 0xb9, 0xd7, 0x86, 0x08, 0xa8, 0x7d, 0xbd, 0x3d, 0x78,
+ 0xf7, 0xfe, 0xe0, 0xe4, 0xc1, 0x38, 0xbc, 0x30, 0x60, 0xc6, 0x59, 0x6f,
+ 0x21, 0xb2, 0x87, 0x9a, 0x2a, 0x47, 0x22, 0xf3, 0x15, 0xce, 0xc5, 0x87,
+ 0x7f, 0xe4, 0x1b, 0xfd, 0xe7, 0xce, 0x98, 0xf5, 0xef, 0x55, 0x90, 0x7d,
+ 0x13, 0x02, 0xff, 0xdf, 0x08, 0xff, 0xe9, 0xd9, 0xfb, 0xfc, 0x7a, 0x4f,
+ 0x9d, 0x1f, 0xae, 0x98, 0x5f, 0x57, 0xcd, 0x28, 0xc7, 0xf7, 0x59, 0x74,
+ 0x31, 0x2b, 0x07, 0x54, 0xaa, 0x41, 0x50, 0x9d, 0x18, 0xaa, 0x3c, 0x27,
+ 0x02, 0x5d, 0x5e, 0xae, 0x75, 0xe4, 0x1c, 0x1c, 0x1e, 0xfa, 0x4c, 0x86,
+ 0x7a, 0x4e, 0x74, 0x2d, 0x92, 0xeb, 0x1f, 0x6f, 0x1c, 0xc3, 0xc2, 0xcd,
+ 0x51, 0x7e, 0x8f, 0xa3, 0xbd, 0x87, 0x55, 0x2e, 0x89, 0x44, 0x2f, 0x75,
+ 0x34, 0x5f, 0x74, 0xae, 0x23, 0x0d, 0x20, 0x14, 0x33, 0xad, 0x0c, 0x0b,
+ 0x0a, 0xce, 0x8c, 0xd5, 0x49, 0x71, 0x76, 0x00, 0xfc, 0x45, 0xcd, 0xaa,
+ 0x51, 0x75, 0xa1, 0x15, 0xf5, 0xa9, 0xf1, 0x91, 0x80, 0x37, 0xb7, 0xf9,
+ 0x1b, 0x80, 0x88, 0xe9, 0x9c, 0x56, 0x93, 0xfc, 0x62, 0xb5, 0x20, 0xf2,
+ 0x25, 0x81, 0x63, 0xd6, 0x2f, 0x1f, 0x89, 0xcc, 0xb1, 0xdd, 0x65, 0x43,
+ 0xb2, 0x44, 0x0b, 0xa9, 0x3c, 0x18, 0x77, 0x06, 0x21, 0x0d, 0xba, 0x0d,
+ 0x3c, 0xbd, 0xf1, 0xf1, 0xc5, 0x11, 0xed, 0xce, 0xfb, 0x8b, 0x6f, 0x7a,
+ 0xaa, 0x52, 0x34, 0x13, 0x05, 0x01, 0x6a, 0x52, 0x15, 0x29, 0x2d, 0xbd,
+ 0x25, 0x3f, 0x14, 0xc2, 0x72, 0xdb, 0xc8, 0xd0, 0x0d, 0x5f, 0x78, 0x63,
+ 0xa3, 0x9f, 0x8d, 0x9e, 0x6d, 0x35, 0x36, 0x66, 0x3d, 0x5a, 0x5c, 0xb3,
+ 0x7c, 0x92, 0xd2, 0xb4, 0xc2, 0x95, 0x71, 0xc8, 0xda, 0xb6, 0x07, 0x13,
+ 0x16, 0x99, 0x39, 0x36, 0xe7, 0x5b, 0x47, 0x56, 0xb3, 0xcf, 0xf1, 0x76,
+ 0x0a, 0x39, 0x30, 0xd5, 0x1c, 0x9a, 0x90, 0x0a, 0x33, 0x61, 0x91, 0x50,
+ 0x97, 0x50, 0xd0, 0x4e, 0xfb, 0x33, 0xb3, 0x21, 0x23, 0xa8, 0x72, 0xd1,
+ 0x8e, 0xb0, 0x5a, 0x43, 0xdb, 0xc8, 0x60, 0x02, 0x84, 0x4f, 0xdc, 0xe8,
+ 0x44, 0x58, 0x8b, 0x16, 0xa9, 0xe0, 0x52, 0x04, 0x70, 0x6d, 0x4d, 0x4a,
+ 0x56, 0x9d, 0xec, 0x47, 0xf9, 0xd9, 0xcd, 0x03, 0x20, 0x1e, 0x70, 0x75,
+ 0x37, 0x08, 0x0b, 0xfa, 0x06, 0x46, 0xa3, 0x01, 0xa9, 0xbe, 0xa0, 0x05,
+ 0x54, 0x15, 0xf1, 0x02, 0x66, 0x51, 0x2b, 0x1d, 0x89, 0x5a, 0xdb, 0x1c,
+ 0x6f, 0xb9, 0x82, 0x62, 0x2c, 0x1a, 0x6b, 0x6b, 0x1c, 0x90, 0xdc, 0x08,
+ 0x40, 0x0e, 0x52, 0xd9, 0x15, 0x09, 0xa0, 0x0b, 0x95, 0x27, 0x38, 0x89,
+ 0xed, 0x8b, 0x16, 0xdc, 0x6f, 0x7a, 0x37, 0xeb, 0xce, 0xb1, 0x14, 0x01,
+ 0x48, 0xf2, 0x19, 0x7c, 0x01, 0xf9, 0xc3, 0xef, 0x5f, 0x37, 0x4a, 0xae,
+ 0x62, 0x56, 0x20, 0x04, 0xc9, 0xf7, 0xce, 0xd6, 0xe5, 0xde, 0x9a, 0x37,
+ 0x87, 0x68, 0x49, 0x6a, 0x11, 0xcc, 0x92, 0x64, 0xe9, 0x70, 0x03, 0x51,
+ 0x03, 0x43, 0xaa, 0x6f, 0xd0, 0x91, 0x63, 0x03, 0xde, 0x3d, 0xc0, 0xa5,
+ 0xee, 0xd7, 0x8c, 0x4e, 0xd9, 0x40, 0x0d, 0x9d, 0x9f, 0x51, 0x7c, 0x49,
+ 0xd3, 0x8a, 0x76, 0x3f, 0x7b, 0xf2, 0x79, 0x54, 0x72, 0x3e, 0x4f, 0x1a,
+ 0x2e, 0x99, 0xa0, 0x6b, 0xac, 0xcf, 0xaa, 0x56, 0xb9, 0xd9, 0xcc, 0xa3,
+ 0x9a, 0x63, 0x46, 0xea, 0x72, 0x7e, 0x97, 0xe0, 0xe6, 0xd2, 0x7c, 0x97,
+ 0x76, 0x92, 0x2d, 0x2d, 0xa2, 0x55, 0x93, 0x17, 0xdb, 0x19, 0xd6, 0x49,
+ 0x8c, 0x30, 0xa3, 0x80, 0x32, 0x67, 0xc4, 0x74, 0x18, 0xd1, 0x98, 0xd8,
+ 0xc3, 0xf9, 0xd1, 0xc5, 0x39, 0xfd, 0x18, 0x5f, 0x9c, 0x9e, 0xaf, 0x49,
+ 0x85, 0xaf, 0xa6, 0x60, 0x7b, 0xbc, 0x68, 0x4c, 0x35, 0x8c, 0x16, 0x6b,
+ 0x91, 0x26, 0x01, 0xbf, 0x80, 0xe7, 0x49, 0x58, 0x48, 0xd9, 0x09, 0xd0,
+ 0x15, 0xe0, 0x74, 0x95, 0xf5, 0x32, 0xa9, 0x97, 0xc4, 0xcb, 0x1f, 0x9c,
+ 0x98, 0xec, 0xf9, 0xc3, 0x14, 0x82, 0x09, 0x33, 0x31, 0xf2, 0x8c, 0x1d,
+ 0xd3, 0xc6, 0x68, 0xb5, 0x86, 0x9a, 0x37, 0xe1, 0xab, 0x25, 0x63, 0x0d,
+ 0x85, 0x08, 0x59, 0x49, 0xb9, 0xba, 0x5a, 0x09, 0x92, 0x9e, 0x65, 0x69,
+ 0xf5, 0xd8, 0x57, 0x74, 0xe3, 0xd0, 0x88, 0x1f, 0xa1, 0xdf, 0xb8, 0x74,
+ 0x26, 0x1c, 0xbe, 0x32, 0xf3, 0x45, 0x22, 0xd2, 0xbc, 0x98, 0xe4, 0x8d,
+ 0xeb, 0xc8, 0x3d, 0x21, 0x30, 0x20, 0x51, 0x57, 0x92, 0xa0, 0x83, 0xfe,
+ 0xe2, 0x5d, 0xee, 0xbb, 0x64, 0xaf, 0x5c, 0xa9, 0x43, 0xf6, 0x85, 0x04,
+ 0x9c, 0x79, 0x05, 0x4c, 0xb5, 0xbe, 0x8d, 0xaa, 0xef, 0x48, 0xad, 0xc1,
+ 0x95, 0x77, 0x9b, 0x5c, 0x99, 0x33, 0xe5, 0xba, 0x39, 0x0b, 0xe2, 0x56,
+ 0x2c, 0xdf, 0xca, 0x55, 0xc6, 0x70, 0xf8, 0x38, 0x21, 0x1c, 0xf3, 0x99,
+ 0x3e, 0xd5, 0x19, 0xe9, 0x6f, 0xf5, 0x70, 0x3d, 0x6d, 0xeb, 0x96, 0x4b,
+ 0xf2, 0xda, 0xaa, 0xc9, 0x4d, 0x6b, 0x42, 0x52, 0x9b, 0x7f, 0x76, 0xd4,
+ 0xab, 0x88, 0x86, 0x67, 0xdb, 0x41, 0x82, 0xa0, 0xe2, 0xd9, 0xd5, 0x66,
+ 0xbe, 0xdb, 0x2d, 0x78, 0xac, 0xc3, 0xb6, 0x69, 0x4a, 0x1f, 0x30, 0xe8,
+ 0x8a, 0x3c, 0x59, 0xa8, 0x0c, 0xd2, 0x9d, 0xd5, 0x1b, 0xbd, 0xcf, 0x34,
+ 0xbd, 0x36, 0xf3, 0x55, 0x4c, 0x6c, 0x11, 0x39, 0x73, 0x9c, 0x0d, 0xc3,
+ 0x72, 0x3b, 0xcd, 0x72, 0x89, 0x51, 0xe4, 0x45, 0xe8, 0x88, 0xc4, 0x82,
+ 0xc0, 0x8a, 0xa8, 0x33, 0xbb, 0x52, 0xb4, 0x3d, 0x35, 0x01, 0x14, 0x4c,
+ 0xd8, 0xcd, 0xe4, 0x48, 0x38, 0xb5, 0x5a, 0x47, 0xe9, 0x2c, 0xdc, 0x44,
+ 0x61, 0x71, 0x10, 0xc3, 0x3d, 0x6f, 0xa8, 0x24, 0xa4, 0x54, 0x92, 0xee,
+ 0x2c, 0xbd, 0x51, 0xe6, 0xda, 0x36, 0x50, 0x63, 0x50, 0x92, 0x7d, 0xa8,
+ 0x15, 0x45, 0xea, 0x49, 0x7d, 0x26, 0xc2, 0x35, 0xef, 0x33, 0xc6, 0x7f,
+ 0x07, 0xbd, 0x0d, 0xd3, 0xe5, 0xe3, 0x49, 0x98, 0x96, 0xfe, 0xc9, 0xc3,
+ 0xf2, 0x69, 0x0d, 0x21, 0xf7, 0x29, 0x57, 0x57, 0x57, 0xc8, 0xa9, 0x49,
+ 0xdb, 0xf0, 0x05, 0x28, 0x85, 0xac, 0xe6, 0x41, 0x05, 0xb1, 0x21, 0x31,
+ 0x8b, 0x07, 0xed, 0xa6, 0x07, 0x3b, 0x30, 0x7a, 0x53, 0x52, 0xf6, 0x80,
+ 0x90, 0x6b, 0xa3, 0x6b, 0xd8, 0x9a, 0x2c, 0x9b, 0x11, 0x62, 0x20, 0x0f,
+ 0x91, 0x24, 0x1a, 0xc0, 0x36, 0xd2, 0x78, 0xdd, 0x80, 0xdb, 0x41, 0x71,
+ 0x8a, 0xee, 0x20, 0x92, 0x8c, 0x9d, 0x29, 0xab, 0xd2, 0x1a, 0xf6, 0x55,
+ 0xa3, 0xe0, 0xa7, 0xa3, 0xbd, 0xad, 0x07, 0x73, 0x3a, 0x58, 0x6e, 0x67,
+ 0x24, 0x2c, 0x49, 0xf6, 0x23, 0x15, 0x4b, 0x12, 0xae, 0x25, 0x65, 0xb7,
+ 0x90, 0xad, 0xf5, 0x25, 0xb2, 0x30, 0x8b, 0x36, 0x7c, 0x3a, 0xaf, 0x50,
+ 0x73, 0xdf, 0xe8, 0x98, 0x7d, 0x42, 0x5a, 0x3a, 0x84, 0xdf, 0x38, 0x3a,
+ 0xa3, 0xbb, 0xc5, 0x2d, 0x71, 0x90, 0xa9, 0x4a, 0xef, 0x40, 0xcd, 0xe0,
+ 0x61, 0x6c, 0x35, 0x2f, 0x42, 0x06, 0x68, 0x45, 0x44, 0xcb, 0x1b, 0x6f,
+ 0x92, 0x67, 0xa5, 0x6f, 0x41, 0x1f, 0xb2, 0x5b, 0xa0, 0xa0, 0x61, 0x00,
+ 0x87, 0x43, 0x0a, 0xbd, 0xe1, 0xd0, 0xb2, 0xed, 0xd9, 0xf8, 0xe8, 0x46,
+ 0xe7, 0xfd, 0x8c, 0xb5, 0xf5, 0x17, 0x00, 0x07, 0xd9, 0xd1, 0xc9, 0x2c,
+ 0xc3, 0x3a, 0x28, 0xab, 0xa5, 0x6a, 0x3f, 0xb3, 0xfc, 0x2e, 0x43, 0x69,
+ 0x80, 0xa8, 0x4d, 0x4d, 0x18, 0x3e, 0x9f, 0x9d, 0x46, 0x5e, 0xca, 0xde,
+ 0xce, 0xe8, 0x63, 0x93, 0x9d, 0x96, 0xe5, 0x7c, 0x38, 0x9d, 0x4e, 0x1f,
+ 0xe0, 0xa8, 0x87, 0x87, 0x87, 0xf4, 0xc1, 0x21, 0x90, 0x12, 0x18, 0x21,
+ 0x14, 0x23, 0x3d, 0xbc, 0x66, 0x53, 0xcd, 0x7c, 0x2b, 0x1a, 0x5f, 0xaf,
+ 0x18, 0xb3, 0x8a, 0x2b, 0xb7, 0x33, 0x55, 0x8c, 0xc7, 0x27, 0xdb, 0x17,
+ 0x27, 0xe3, 0xa6, 0xd3, 0x2b, 0xbe, 0x67, 0x5d, 0x0f, 0x3a, 0x5d, 0x5d,
+ 0x73, 0x11, 0xc1, 0x0d, 0x18, 0x65, 0x16, 0xe7, 0x6d, 0x74, 0x25, 0x3d,
+ 0x74, 0xa6, 0x23, 0xad, 0xb2, 0xa0, 0x28, 0x91, 0x6a, 0x56, 0x59, 0x92,
+ 0x21, 0xe8, 0xd1, 0x21, 0x29, 0x6b, 0x75, 0xfa, 0x77, 0x07, 0x17, 0x5c,
+ 0xac, 0xb0, 0xd2, 0x4c, 0xaa, 0xee, 0x14, 0x12, 0x07, 0x70, 0x87, 0xc4,
+ 0xe7, 0x38, 0x00, 0xed, 0xb7, 0x3b, 0x00, 0xac, 0x28, 0x2d, 0x8d, 0x35,
+ 0x8e, 0x34, 0x86, 0xbe, 0x03, 0x91, 0x58, 0x57, 0x74, 0xe8, 0x6e, 0x20,
+ 0xc9, 0x42, 0xe0, 0x3f, 0xcb, 0xc6, 0x86, 0xec, 0x3e, 0x6f, 0xdf, 0x6f,
+ 0xb5, 0xd7, 0x7f, 0x94, 0x2c, 0xe0, 0x6d, 0xed, 0xf5, 0xe7, 0x5f, 0xbf,
+ 0x4d, 0x89, 0x72, 0x0b, 0x7e, 0x4c, 0x48, 0xe3, 0xa2, 0x23, 0x34, 0x37,
+ 0x60, 0xbb, 0xae, 0x8c, 0x84, 0x64, 0xbe, 0x28, 0x56, 0x63, 0x49, 0xdb,
+ 0x3d, 0x43, 0xf5, 0x1c, 0xb9, 0x06, 0x5c, 0x3e, 0xda, 0x5d, 0xdc, 0x62,
+ 0x1b, 0xc6, 0x29, 0x02, 0x04, 0x91, 0x9c, 0x98, 0x8b, 0x04, 0x2d, 0xb9,
+ 0xe6, 0x8b, 0x64, 0x39, 0xbf, 0x77, 0x62, 0x9a, 0x36, 0xbf, 0x4e, 0x7f,
+ 0x0b, 0xa5, 0xfd, 0x30, 0x41, 0xda, 0xc6, 0x58, 0xd6, 0x5b, 0x41, 0x47,
+ 0x71, 0xda, 0x69, 0x78, 0x8e, 0xb5, 0xe7, 0x46, 0xb5, 0xc0, 0xf6, 0x0e,
+ 0xed, 0x75, 0xee, 0x90, 0x50, 0x69, 0xf7, 0x7e, 0x9c, 0xeb, 0xb1, 0xb7,
+ 0xd3, 0xa0, 0x51, 0x90, 0x46, 0x63, 0xf3, 0xfc, 0x8a, 0xa3, 0xa3, 0x05,
+ 0x7b, 0x04, 0x8b, 0x64, 0xc5, 0x32, 0x9a, 0x76, 0x09, 0xa1, 0x60, 0x2d,
+ 0x16, 0x5a, 0xf7, 0x2c, 0x89, 0x2c, 0xc2, 0x3c, 0xc5, 0xd1, 0xbd, 0x01,
+ 0x1a, 0xb9, 0xe4, 0xfd, 0x8e, 0xfd, 0x70, 0xc1, 0x15, 0x53, 0x0e, 0xa9,
+ 0x86, 0x4b, 0xb4, 0x34, 0x64, 0x07, 0xa9, 0xb4, 0xa2, 0xd1, 0x14, 0x56,
+ 0x95, 0x5c, 0x55, 0xd3, 0x75, 0x25, 0xe2, 0x75, 0x86, 0xed, 0x55, 0xdb,
+ 0xd9, 0xd2, 0x2b, 0x9b, 0xe4, 0x0a, 0x62, 0x63, 0xde, 0xfc, 0xa1, 0x32,
+ 0x61, 0x2b, 0xd3, 0x7f, 0x22, 0x80, 0xe0, 0xb7, 0x86, 0x39, 0x78, 0xb9,
+ 0xaa, 0x78, 0xd6, 0x1a, 0x55, 0x56, 0x63, 0xf1, 0x6c, 0x9e, 0xd7, 0x48,
+ 0x76, 0x71, 0x91, 0x3d, 0x58, 0x8f, 0x37, 0x1a, 0xab, 0x39, 0x59, 0xf3,
+ 0xd0, 0xe1, 0x0c, 0x0b, 0xe1, 0x09, 0x3d, 0x54, 0xb0, 0x36, 0x7a, 0xd9,
+ 0x19, 0xb8, 0x2e, 0x31, 0x69, 0x1c, 0x17, 0x44, 0x7a, 0x26, 0x2f, 0x94,
+ 0x5e, 0x4d, 0x73, 0xce, 0x32, 0x60, 0x39, 0x69, 0x14, 0x9d, 0x24, 0xe2,
+ 0x91, 0xea, 0x7f, 0xd9, 0x17, 0x2e, 0xdd, 0x7f, 0xd9, 0x8f, 0x34, 0xf0,
+ 0xbf, 0x5d, 0x59, 0x8a, 0x6f, 0x0c, 0xab, 0x6c, 0xd0, 0x17, 0x93, 0x73,
+ 0xdf, 0x86, 0xa0, 0x42, 0xbb, 0x0c, 0x0b, 0x71, 0x3c, 0x99, 0xa6, 0xe7,
+ 0x90, 0x8c, 0xc7, 0x12, 0x51, 0x87, 0xfe, 0x5a, 0x87, 0xb0, 0x59, 0x4a,
+ 0x9e, 0x1a, 0xfb, 0x89, 0x18, 0xce, 0x59, 0xa6, 0x2d, 0x9b, 0x5b, 0x24,
+ 0xfd, 0x12, 0xd1, 0x01, 0x52, 0x3b, 0xa8, 0x2b, 0xf4, 0xc7, 0xb2, 0x96,
+ 0x12, 0x57, 0xe9, 0x57, 0xc7, 0x82, 0xc4, 0xcf, 0xe9, 0x14, 0x71, 0x14,
+ 0x10, 0x0e, 0xe9, 0x5b, 0x92, 0x6a, 0xe4, 0xa4, 0xf3, 0xbc, 0xd9, 0x58,
+ 0xfc, 0xb2, 0x19, 0xb4, 0x78, 0x99, 0xc4, 0xbc, 0x9b, 0x25, 0x33, 0xf9,
+ 0x26, 0xaa, 0xf4, 0xf0, 0x8a, 0x25, 0xc2, 0xab, 0x79, 0x3e, 0xc9, 0x2f,
+ 0x2f, 0x1f, 0x30, 0x45, 0x0a, 0x34, 0x02, 0xda, 0x10, 0x12, 0xed, 0x71,
+ 0x6a, 0x20, 0xbf, 0x37, 0xe1, 0xf1, 0x69, 0x5d, 0xc9, 0x91, 0x58, 0x64,
+ 0x80, 0x8f, 0xd9, 0x92, 0x02, 0x42, 0xe1, 0x79, 0xe0, 0xf2, 0x17, 0x2d,
+ 0xeb, 0x89, 0x9a, 0x33, 0x39, 0x53, 0x03, 0x5c, 0x3c, 0x9a, 0x66, 0x19,
+ 0xfd, 0xc7, 0xdf, 0x7f, 0xfc, 0xb9, 0x23, 0x59, 0x80, 0x35, 0x1b, 0x8d,
+ 0xd1, 0x46, 0x6c, 0x98, 0x60, 0x0f, 0x41, 0x85, 0x60, 0x31, 0xc4, 0x97,
+ 0xdf, 0xd1, 0xd2, 0xc0, 0xa3, 0x20, 0x2d, 0xac, 0xcd, 0xe0, 0x98, 0x91,
+ 0x5b, 0x87, 0x00, 0xba, 0xcc, 0x2b, 0x8b, 0x05, 0x60, 0xec, 0x25, 0x60,
+ 0xcf, 0x79, 0x6f, 0x9a, 0xc3, 0x75, 0x11, 0xad, 0xbd, 0x7d, 0xa0, 0x1c,
+ 0x3c, 0x97, 0x73, 0xaf, 0x2a, 0x9f, 0x7d, 0x7f, 0x7e, 0xec, 0x74, 0xba,
+ 0x60, 0x27, 0xbe, 0xc6, 0x4e, 0xb4, 0x96, 0xcd, 0xe1, 0xc1, 0xd6, 0x4b,
+ 0x3e, 0x78, 0x58, 0x3c, 0x54, 0x8b, 0x13, 0xe6, 0x53, 0x83, 0xb1, 0x46,
+ 0x81, 0xde, 0xd9, 0xa0, 0x13, 0xb1, 0x78, 0xd0, 0x04, 0x57, 0xcd, 0x8b,
+ 0x36, 0x64, 0x66, 0x90, 0xfa, 0x9c, 0xba, 0x18, 0x88, 0x66, 0xf8, 0xc9,
+ 0x91, 0xc7, 0x7a, 0x0f, 0xbc, 0x61, 0x06, 0x1b, 0xe7, 0x71, 0xe0, 0x01,
+ 0xbe, 0xc7, 0xe4, 0x7f, 0x87, 0x92, 0xb8, 0x06, 0x88, 0xda, 0xa9, 0x15,
+ 0x5d, 0x78, 0x54, 0x55, 0x61, 0x5d, 0x06, 0xae, 0xe6, 0x57, 0xf0, 0xc4,
+ 0xd2, 0x3f, 0xfa, 0xff, 0xd6, 0xf7, 0x58, 0x96, 0x1d, 0xe9, 0x4f, 0x2e,
+ 0x75, 0xbb, 0xa3, 0xf2, 0xe8, 0xf0, 0x78, 0xe0, 0x47, 0xea, 0x3b, 0xb4,
+ 0x79, 0x4c, 0x3a, 0x50, 0xdc, 0xd7, 0x0d, 0xe3, 0x9b, 0xa3, 0x83, 0xd7,
+ 0x36, 0xd9, 0x7f, 0x0a, 0x20, 0x94, 0x37, 0x04, 0x4d, 0x12, 0x01, 0xab,
+ 0x5f, 0x99, 0x2e, 0x89, 0x4d, 0xb1, 0xbb, 0x03, 0x24, 0x42, 0xd2, 0x36,
+ 0xd7, 0x2f, 0x61, 0x92, 0x6d, 0xab, 0x8e, 0x6a, 0x75, 0x5a, 0xab, 0x3c,
+ 0x06, 0x86, 0x39, 0x33, 0xf2, 0xf1, 0xe1, 0x15, 0x16, 0x17, 0xd0, 0x6f,
+ 0x98, 0xda, 0xfc, 0x52, 0x7e, 0xae, 0xb9, 0x14, 0x8e, 0x00, 0xbf, 0xab,
+ 0x8f, 0xd2, 0x5a, 0x2a, 0x5e, 0xa4, 0xf1, 0x5d, 0xa3, 0x19, 0xa8, 0x5c,
+ 0x16, 0x5c, 0xd5, 0x45, 0x7c, 0x1a, 0x5c, 0x6d, 0xb2, 0xc3, 0x9f, 0x15,
+ 0x5b, 0xde, 0x58, 0x0a, 0x50, 0x02, 0x5d, 0xc1, 0xb1, 0x24, 0xe8, 0xb4,
+ 0xec, 0x84, 0xde, 0x33, 0x67, 0x53, 0x80, 0x85, 0x4f, 0x6a, 0x19, 0xe3,
+ 0xa9, 0x90, 0x72, 0x4d, 0x72, 0x8a, 0x0d, 0x98, 0x1f, 0xbb, 0x56, 0x0f,
+ 0x2f, 0x34, 0x38, 0x18, 0xbd, 0x5b, 0x15, 0x09, 0xb0, 0x79, 0x2e, 0xb1,
+ 0xc6, 0xd9, 0x35, 0x04, 0xf6, 0x56, 0x14, 0x42, 0xb3, 0xb9, 0x0e, 0xc4,
+ 0x99, 0xce, 0xb8, 0x54, 0x45, 0x66, 0x99, 0xd8, 0x9d, 0x85, 0xc2, 0x6b,
+ 0xce, 0x8c, 0xe6, 0x89, 0x73, 0x7d, 0x20, 0x2b, 0x3e, 0x94, 0xc3, 0xdb,
+ 0xbb, 0xce, 0x6b, 0x27, 0xa0, 0x8c, 0xc8, 0xba, 0xe6, 0x9b, 0x64, 0x7a,
+ 0x93, 0x22, 0xb2, 0xaf, 0x5a, 0x81, 0xc7, 0xc7, 0x59, 0x38, 0x4a, 0x07,
+ 0x3f, 0x34, 0xcb, 0xb1, 0xd2, 0xdd, 0x44, 0x64, 0x32, 0x25, 0x03, 0xc2,
+ 0xd8, 0x68, 0x34, 0xaf, 0xdc, 0xf0, 0xba, 0x8d, 0x6f, 0xa3, 0x10, 0xa4,
+ 0xa0, 0x1f, 0x25, 0x45, 0x2b, 0x1d, 0x27, 0x41, 0x34, 0x1f, 0x14, 0x2f,
+ 0x98, 0xc2, 0xb4, 0xb0, 0x30, 0x28, 0x9c, 0xcb, 0x71, 0xb1, 0xac, 0xe2,
+ 0xf0, 0x67, 0x78, 0xca, 0xba, 0x3c, 0xc4, 0xef, 0xaf, 0xd2, 0xdb, 0x4e,
+ 0xfb, 0xb2, 0x0d, 0x0c, 0xd6, 0x69, 0x1b, 0x85, 0x83, 0x7a, 0x75, 0x86,
+ 0x3c, 0x41, 0x0f, 0x8b, 0x18, 0x4d, 0xdb, 0x6d, 0x5f, 0x3b, 0xa7, 0x9a,
+ 0xaf, 0xb0, 0x98, 0xaf, 0xfa, 0x7d, 0x22, 0xfc, 0xa8, 0xf7, 0x4d, 0x5e,
+ 0x56, 0xfb, 0x3d, 0x07, 0x2f, 0x54, 0x26, 0x2a, 0x59, 0xd4, 0x29, 0x47,
+ 0xe1, 0xa7, 0x5b, 0x61, 0x59, 0xb8, 0xdb, 0xe5, 0xfc, 0xd1, 0xc5, 0xa2,
+ 0x0f, 0x9b, 0x0b, 0x52, 0x73, 0x9a, 0x1d, 0x42, 0x04, 0x43, 0xf7, 0x2e,
+ 0x52, 0x1d, 0x02, 0x40, 0x10, 0x9a, 0x5c, 0xaa, 0xc4, 0x90, 0x7e, 0x18,
+ 0x1e, 0xa2, 0xf3, 0xe1, 0x37, 0x68, 0xef, 0x4f, 0x3d, 0xa7, 0x76, 0x37,
+ 0xbf, 0xda, 0xef, 0xad, 0x49, 0x9b, 0x08, 0xa1, 0x3b, 0xcb, 0x55, 0x61,
+ 0xf9, 0xd4, 0x30, 0xa3, 0xeb, 0x28, 0x51, 0x6d, 0x69, 0x36, 0xdb, 0x76,
+ 0x9b, 0x2e, 0x1e, 0xbf, 0xae, 0xc4, 0x3e, 0x4d, 0xfa, 0x59, 0x22, 0x54,
+ 0x6f, 0x36, 0xcc, 0x2f, 0x87, 0x28, 0x81, 0xb9, 0x88, 0x8b, 0x1b, 0xf6,
+ 0xaf, 0x04, 0xa7, 0x0e, 0xf8, 0xe4, 0x48, 0x53, 0x9b, 0xcd, 0xba, 0xee,
+ 0x6a, 0xcd, 0xaf, 0x28, 0x9c, 0xda, 0xaa, 0x83, 0xd1, 0xcd, 0xdc, 0x67,
+ 0x55, 0xc7, 0x5e, 0x77, 0xf0, 0xd7, 0x5c, 0x34, 0x52, 0xd1, 0xaf, 0x5b,
+ 0xb5, 0xf3, 0x10, 0x99, 0x37, 0x90, 0xeb, 0x1c, 0x93, 0x06, 0x2b, 0x5e,
+ 0x88, 0x05, 0x09, 0x56, 0x00, 0x52, 0xfd, 0x59, 0x30, 0x65, 0x28, 0xfa,
+ 0x87, 0xab, 0x2a, 0x1d, 0x58, 0x91, 0xd9, 0x21, 0x75, 0xa4, 0x88, 0xba,
+ 0x75, 0x10, 0x8a, 0x75, 0xb0, 0x81, 0x63, 0x46, 0x14, 0x57, 0xf1, 0xf3,
+ 0xb3, 0xd1, 0x93, 0xcf, 0xb8, 0xc8, 0x93, 0xc3, 0x9e, 0xb2, 0x42, 0xb4,
+ 0x9e, 0x69, 0x62, 0x2b, 0x03, 0xfa, 0x6a, 0x95, 0xe2, 0xe0, 0xf2, 0x41,
+ 0xbc, 0x1e, 0x33, 0xcd, 0x98, 0x07, 0xe0, 0x79, 0x47, 0xb1, 0x5b, 0x0d,
+ 0xec, 0x69, 0xf9, 0x5c, 0x7e, 0xa7, 0xbe, 0x7c, 0xd0, 0xd2, 0x1b, 0xbe,
+ 0x90, 0x86, 0xef, 0x88, 0xd1, 0xed, 0x47, 0xff, 0x9e, 0x27, 0x3d, 0xab,
+ 0xca, 0xb6, 0xfb, 0x62, 0x8f, 0x14, 0x8e, 0xcf, 0x47, 0x3b, 0xa3, 0xdd,
+ 0xed, 0x87, 0x31, 0x44, 0x10, 0xb6, 0xc2, 0x61, 0x5e, 0x1d, 0xee, 0x6c,
+ 0xe4, 0xeb, 0x79, 0x2a, 0xda, 0x16, 0x5d, 0xa4, 0xcb, 0x07, 0xc4, 0xaf,
+ 0x18, 0x0f, 0x0f, 0xb4, 0x12, 0x2e, 0x01, 0xb7, 0x5c, 0x4d, 0x16, 0xb3,
+ 0x67, 0xd1, 0x4b, 0xfa, 0xa7, 0x1d, 0x9d, 0x7d, 0x68, 0x2e, 0x43, 0xb6,
+ 0x6e, 0xf2, 0x19, 0xd2, 0x5c, 0x5c, 0x91, 0x35, 0xf9, 0xd7, 0x27, 0x7b,
+ 0xd4, 0xf0, 0xc7, 0xd8, 0x4a, 0x68, 0x45, 0xb3, 0xf4, 0x2a, 0xad, 0xba,
+ 0x53, 0xa3, 0x4c, 0x28, 0x0f, 0x70, 0xdd, 0x79, 0xef, 0x77, 0xf7, 0x3e,
+ 0x8f, 0x26, 0x69, 0x15, 0xbd, 0x7d, 0xfd, 0x8c, 0xd4, 0x8e, 0x64, 0x7a,
+ 0x53, 0xae, 0x16, 0x46, 0xa1, 0x5a, 0x6e, 0x89, 0xc7, 0xd9, 0x6f, 0x5e,
+ 0x14, 0x3e, 0x14, 0x7a, 0x50, 0x33, 0x14, 0x5e, 0x9a, 0x41, 0x33, 0xa8,
+ 0x44, 0xe6, 0x4e, 0x12, 0xb7, 0xa4, 0x06, 0xd5, 0x0e, 0x55, 0x9d, 0xd6,
+ 0x80, 0x3a, 0x2f, 0xad, 0x62, 0x7c, 0x4d, 0x3d, 0xfc, 0xac, 0x6e, 0xf6,
+ 0x90, 0x28, 0x7a, 0xc3, 0xa4, 0x1d, 0x92, 0xf0, 0x77, 0xd5, 0x8a, 0x92,
+ 0x35, 0x65, 0xee, 0x18, 0xcf, 0x36, 0x22, 0x0b, 0x4f, 0xf0, 0x46, 0x00,
+ 0xfc, 0x21, 0x62, 0x09, 0x9f, 0xcf, 0x74, 0xba, 0x9a, 0x73, 0x99, 0xd6,
+ 0xb6, 0x00, 0x63, 0xc5, 0x9f, 0x0c, 0x66, 0xa7, 0x58, 0x49, 0x41, 0xcf,
+ 0x83, 0x25, 0x87, 0xc5, 0x45, 0xbb, 0xa3, 0x8f, 0x83, 0xb0, 0x48, 0xbd,
+ 0x56, 0x8e, 0x43, 0x2d, 0xfa, 0xd6, 0x65, 0x01, 0xd3, 0x76, 0x63, 0x34,
+ 0xdc, 0xb6, 0x04, 0x24, 0xce, 0xd9, 0xb5, 0x53, 0xc8, 0x7d, 0xb6, 0x47,
+ 0x97, 0xc3, 0x55, 0x8c, 0xd2, 0xa3, 0x01, 0xf5, 0xa4, 0x03, 0x00, 0xa4,
+ 0x41, 0x06, 0x59, 0x37, 0x71, 0x95, 0x50, 0x64, 0xe6, 0xfc, 0xa1, 0x9d,
+ 0x44, 0x95, 0x59, 0x24, 0x96, 0x56, 0x44, 0xd7, 0xe0, 0xeb, 0xd6, 0x3d,
+ 0x84, 0x66, 0x1c, 0x57, 0x81, 0x8b, 0x48, 0x96, 0x60, 0xc8, 0x42, 0xc4,
+ 0x80, 0xa5, 0xd0, 0xc4, 0x0b, 0x0d, 0x41, 0x08, 0x31, 0x1a, 0x6d, 0xa7,
+ 0xd7, 0x20, 0xe9, 0xcb, 0xc2, 0x80, 0x47, 0xa3, 0x60, 0x56, 0xc7, 0x26,
+ 0x8e, 0x75, 0x4d, 0x89, 0x4b, 0x62, 0x6d, 0xbf, 0x39, 0x3e, 0x39, 0xda,
+ 0x8a, 0xde, 0x24, 0x16, 0x31, 0x1f, 0x4e, 0x8b, 0x19, 0xe0, 0xbf, 0xc8,
+ 0x27, 0xb6, 0x45, 0xaa, 0x46, 0x76, 0x39, 0xf6, 0xd5, 0xe0, 0x05, 0x21,
+ 0x58, 0x76, 0x0d, 0xf2, 0xae, 0xe4, 0xc6, 0xe5, 0x88, 0x44, 0xb4, 0xb2,
+ 0x68, 0x30, 0x5c, 0x05, 0x95, 0x40, 0x3a, 0x6a, 0x72, 0x06, 0xb1, 0xd3,
+ 0xa3, 0xa0, 0x1c, 0x46, 0x1e, 0xba, 0xfa, 0x79, 0xec, 0x1a, 0x71, 0x27,
+ 0xbe, 0x3d, 0x29, 0xee, 0xdb, 0x75, 0x16, 0xe0, 0x99, 0x2b, 0xd3, 0xbf,
+ 0x49, 0x78, 0x32, 0xa2, 0x42, 0x16, 0xf9, 0xcc, 0x61, 0xdc, 0x4b, 0x25,
+ 0x41, 0x9e, 0x6f, 0xc8, 0x50, 0x02, 0x18, 0xbf, 0xae, 0xa4, 0xef, 0x33,
+ 0x41, 0xf4, 0xe7, 0x01, 0x85, 0xb1, 0x06, 0x22, 0x67, 0x78, 0x2d, 0xcc,
+ 0xb5, 0x32, 0x72, 0xe1, 0x6a, 0x5c, 0x19, 0xb3, 0x83, 0x2e, 0x1c, 0x3a,
+ 0x9f, 0x90, 0x41, 0xe8, 0xc3, 0xa0, 0xd9, 0xe2, 0xb0, 0x4b, 0xe0, 0xe0,
+ 0x41, 0x66, 0x51, 0x45, 0x52, 0xf9, 0x04, 0x49, 0x7d, 0xad, 0x34, 0x87,
+ 0x8e, 0xb8, 0x2f, 0xe5, 0xe6, 0xc1, 0xcc, 0x48, 0x96, 0xdf, 0xd9, 0xdf,
+ 0x0d, 0x0b, 0x8d, 0x66, 0x5a, 0x46, 0x9b, 0xe3, 0xb1, 0xb6, 0x7f, 0xbb,
+ 0xc8, 0x9b, 0xbf, 0x30, 0x69, 0xfe, 0x65, 0x95, 0xdd, 0x10, 0x6d, 0x95,
+ 0x4c, 0xc1, 0xc3, 0xee, 0x62, 0xe7, 0x7a, 0xfa, 0xbe, 0x77, 0xae, 0x97,
+ 0x66, 0x39, 0x9d, 0x69, 0x58, 0x14, 0x26, 0x0e, 0x10, 0xc4, 0x07, 0x0f,
+ 0xe4, 0xdf, 0xd5, 0xc4, 0x1a, 0x8e, 0xcc, 0x27, 0xda, 0x99, 0x72, 0x50,
+ 0x07, 0x2b, 0xd2, 0x3d, 0x1d, 0x91, 0x35, 0xdd, 0x5b, 0x5f, 0x22, 0x0c,
+ 0x35, 0xe1, 0x21, 0xde, 0xc2, 0x44, 0xe4, 0xb4, 0x01, 0x75, 0xa9, 0xc4,
+ 0x82, 0x47, 0xcd, 0x02, 0x48, 0x64, 0x8d, 0x0a, 0xf2, 0x34, 0xdf, 0xf3,
+ 0xed, 0xd4, 0x8a, 0x0b, 0xc9, 0x78, 0x8d, 0xac, 0xf2, 0x59, 0xe9, 0xe0,
+ 0xa1, 0xdd, 0x00, 0xa3, 0xc6, 0xe0, 0x44, 0x43, 0x62, 0xa9, 0xa5, 0xdf,
+ 0x3a, 0x97, 0xd3, 0x79, 0x2e, 0xc5, 0x3e, 0xef, 0x42, 0xf3, 0xdd, 0xbf,
+ 0x8b, 0x20, 0xc2, 0x77, 0x91, 0x9e, 0xf4, 0x61, 0x47, 0x84, 0x57, 0x58,
+ 0x16, 0xc3, 0x92, 0x16, 0x91, 0xd9, 0x04, 0x09, 0xe7, 0x34, 0x68, 0x43,
+ 0x02, 0x77, 0x5d, 0x5e, 0xa3, 0x5e, 0x58, 0x9d, 0x50, 0xb8, 0xc3, 0xc0,
+ 0x38, 0xe1, 0xb8, 0xf5, 0x6b, 0x3a, 0xb6, 0x79, 0x99, 0xca, 0xbe, 0xf8,
+ 0xf0, 0xbb, 0xc0, 0xb4, 0xdd, 0x8e, 0xb0, 0xb1, 0x5c, 0x7e, 0x07, 0x8f,
+ 0xe4, 0x62, 0x8e, 0x4c, 0x29, 0xef, 0xca, 0x95, 0x85, 0xd9, 0x2d, 0xcb,
+ 0x43, 0x88, 0x54, 0xba, 0xea, 0xd9, 0xcc, 0xf1, 0x7b, 0xa2, 0x42, 0x52,
+ 0x38, 0x33, 0xae, 0x03, 0xb6, 0x79, 0x9f, 0x54, 0x5b, 0x1e, 0x02, 0xdc,
+ 0x62, 0xda, 0xd6, 0x95, 0xb8, 0x6a, 0x65, 0x2e, 0xb3, 0xfa, 0xa9, 0x2f,
+ 0x09, 0xce, 0x28, 0x5f, 0xd7, 0x05, 0x92, 0xfb, 0xd9, 0x49, 0xa2, 0x18,
+ 0xee, 0xeb, 0x9a, 0x0b, 0x2f, 0xa5, 0x1b, 0xb9, 0x94, 0xca, 0xae, 0x50,
+ 0x2f, 0x4d, 0x36, 0x0b, 0xfa, 0x0d, 0xe2, 0x5f, 0x55, 0xe3, 0x33, 0x47,
+ 0x9b, 0x15, 0x1f, 0x89, 0xa2, 0x9e, 0xb5, 0xd6, 0x6b, 0x0a, 0x9e, 0xb5,
+ 0x44, 0x2f, 0x09, 0x56, 0x0c, 0x30, 0x68, 0x0f, 0xe8, 0x58, 0xb4, 0x1e,
+ 0x61, 0x93, 0xb8, 0xac, 0x64, 0x6b, 0x3a, 0x62, 0x36, 0x5a, 0x10, 0x71,
+ 0x99, 0xf1, 0xdc, 0xc2, 0x8f, 0xc5, 0x07, 0x52, 0x4f, 0x45, 0xd5, 0x1c,
+ 0x68, 0xd9, 0xf1, 0x98, 0x73, 0x26, 0x9a, 0xc7, 0xec, 0xbe, 0x8e, 0xa8,
+ 0x87, 0xfc, 0x13, 0x8d, 0x7b, 0x9f, 0xcf, 0x6b, 0xa3, 0x0a, 0xaa, 0x29,
+ 0xae, 0x9d, 0x2c, 0xaa, 0xca, 0x9b, 0x23, 0xba, 0xb6, 0xc8, 0x6d, 0x47,
+ 0x74, 0x20, 0xe0, 0x47, 0xbe, 0x64, 0x33, 0x5d, 0x15, 0x00, 0x57, 0x10,
+ 0xec, 0x43, 0x29, 0x3c, 0xae, 0xf6, 0xfd, 0xc8, 0x45, 0x7e, 0x4a, 0x32,
+ 0x10, 0x02, 0x3e, 0xd7, 0x14, 0x76, 0x46, 0x66, 0xf4, 0x75, 0xfc, 0xf1,
+ 0xe3, 0xa8, 0x4c, 0xa4, 0x40, 0x71, 0x59, 0xce, 0x91, 0x85, 0x5d, 0xaf,
+ 0xe8, 0x3c, 0xfc, 0x56, 0xcb, 0xb9, 0x5f, 0xa6, 0x57, 0x1c, 0x9a, 0x88,
+ 0x9f, 0x5d, 0x98, 0x13, 0x0e, 0x6c, 0x42, 0xcb, 0x62, 0xfb, 0x27, 0x3d,
+ 0xbf, 0x04, 0xe4, 0x9b, 0x46, 0x68, 0x09, 0xdb, 0xd4, 0x54, 0xd9, 0x76,
+ 0x6a, 0x8e, 0x7b, 0x19, 0x90, 0xb2, 0x9a, 0x24, 0x30, 0x4f, 0x7c, 0x26,
+ 0x8b, 0xdd, 0xfa, 0x58, 0x0d, 0xdf, 0xa8, 0x09, 0xfa, 0x4d, 0x15, 0xb0,
+ 0x48, 0x2b, 0xce, 0x62, 0xd2, 0x97, 0x45, 0xdd, 0xad, 0x19, 0x33, 0x84,
+ 0x61, 0x8a, 0x0e, 0xc6, 0x79, 0x03, 0xf6, 0x46, 0x27, 0xd2, 0x17, 0x31,
+ 0x00, 0xae, 0xc7, 0x10, 0x8e, 0xa1, 0xb5, 0x6f, 0xa7, 0xcb, 0x80, 0x9e,
+ 0xaf, 0x93, 0xb4, 0xf0, 0xfe, 0x83, 0xd2, 0xa9, 0xd7, 0x9e, 0x2b, 0x85,
+ 0xd5, 0x03, 0xd7, 0x2d, 0x88, 0x86, 0xf9, 0x48, 0x11, 0xc1, 0x00, 0xbb,
+ 0x91, 0xa9, 0x94, 0x26, 0x46, 0x72, 0x25, 0xc9, 0xaf, 0x2c, 0x93, 0x88,
+ 0x7a, 0xae, 0x3e, 0x38, 0xd4, 0x8e, 0x28, 0x3b, 0xf3, 0x56, 0x4e, 0x38,
+ 0xa1, 0x5d, 0x0f, 0xb1, 0x40, 0x9a, 0x4c, 0x21, 0x53, 0xb4, 0x71, 0x1d,
+ 0x3d, 0x57, 0x92, 0x9d, 0xed, 0x62, 0x22, 0xde, 0xb8, 0x22, 0xe6, 0x20,
+ 0x41, 0xcd, 0x93, 0xd0, 0x67, 0x12, 0x2d, 0xcb, 0x6b, 0x0d, 0x45, 0xa6,
+ 0x75, 0x2e, 0xf3, 0x81, 0xca, 0x6e, 0x73, 0x06, 0x1d, 0x68, 0x4a, 0x24,
+ 0x32, 0x64, 0x0f, 0x9b, 0x54, 0xd6, 0xd1, 0xfb, 0x4a, 0x6f, 0x73, 0x2d,
+ 0x47, 0x1a, 0x1a, 0x93, 0x84, 0x91, 0x31, 0xcd, 0xc9, 0x36, 0x0d, 0xd3,
+ 0x62, 0x1c, 0x63, 0xb7, 0xd0, 0x5d, 0x1e, 0xe9, 0xd0, 0x24, 0xc5, 0x94,
+ 0x4b, 0xa3, 0x49, 0x57, 0xc4, 0xad, 0x3f, 0x71, 0x74, 0x2e, 0x19, 0x07,
+ 0xa2, 0xb8, 0xe2, 0xbc, 0xf1, 0x3c, 0xab, 0xd2, 0xef, 0x79, 0xb7, 0x59,
+ 0x36, 0xa9, 0x3b, 0x95, 0x38, 0xfa, 0x43, 0xfd, 0x0f, 0xe1, 0x7e, 0xd6,
+ 0x9f, 0x53, 0xda, 0x69, 0xd7, 0xbe, 0x94, 0x3b, 0xd7, 0x41, 0xa3, 0x49,
+ 0x38, 0x3a, 0x03, 0x3b, 0xea, 0x07, 0xba, 0x13, 0x91, 0xc5, 0xa9, 0xd7,
+ 0x6a, 0x23, 0x35, 0x9b, 0x13, 0xe0, 0x2a, 0x7f, 0x37, 0x81, 0xe7, 0x1a,
+ 0xc6, 0xc0, 0x7e, 0xf4, 0xd3, 0x4f, 0x83, 0x88, 0x11, 0xb3, 0x7e, 0x22,
+ 0xed, 0xe0, 0x27, 0x36, 0x05, 0xfd, 0x54, 0x68, 0x74, 0xc2, 0x4f, 0xb7,
+ 0xd4, 0xe5, 0xc1, 0xba, 0x80, 0xf5, 0x28, 0x28, 0xdc, 0x23, 0xa5, 0x8b,
+ 0xc4, 0x45, 0xae, 0x85, 0xcb, 0x58, 0x79, 0x93, 0xbc, 0x6a, 0x07, 0xb0,
+ 0xd6, 0x85, 0x34, 0x4e, 0x1b, 0xb3, 0x5a, 0x64, 0x92, 0x56, 0xa1, 0x9c,
+ 0x06, 0x7c, 0x00, 0xcc, 0xa2, 0xff, 0xbb, 0xbe, 0xdf, 0x9b, 0xa0, 0x10,
+ 0x9a, 0xea, 0xc2, 0xfc, 0x60, 0xcb, 0x40, 0x24, 0x8c, 0xa0, 0x92, 0xba,
+ 0xc5, 0x62, 0xe1, 0xe1, 0xc3, 0x0d, 0x1d, 0xe0, 0x94, 0xad, 0x31, 0x77,
+ 0x28, 0x59, 0x88, 0x58, 0x52, 0xd9, 0x60, 0x36, 0x24, 0x2d, 0xaf, 0xef,
+ 0x21, 0x84, 0xb5, 0x04, 0xe0, 0xcc, 0x59, 0x93, 0x03, 0x3e, 0xd8, 0xe6,
+ 0xec, 0x1e, 0x72, 0xcf, 0x4b, 0x12, 0xec, 0xb0, 0x0b, 0x79, 0x2e, 0x8d,
+ 0xa5, 0x3f, 0xec, 0x07, 0x06, 0x53, 0xc3, 0x14, 0xe9, 0xac, 0x55, 0xe9,
+ 0x41, 0xb0, 0xa4, 0x56, 0x65, 0x67, 0x5a, 0x83, 0x79, 0xf8, 0x24, 0xf1,
+ 0x4d, 0xd0, 0xe3, 0x3d, 0x00, 0x60, 0x0c, 0xc7, 0x42, 0x7b, 0xf8, 0x83,
+ 0x0e, 0x33, 0xae, 0x01, 0x93, 0xdb, 0xbb, 0x69, 0x15, 0x5c, 0xb5, 0x43,
+ 0x76, 0xe6, 0x78, 0x94, 0x77, 0x10, 0x07, 0xdb, 0xc5, 0x70, 0xa7, 0x96,
+ 0x9c, 0x71, 0x7c, 0xdf, 0xc1, 0xa5, 0x7d, 0xee, 0x20, 0x0f, 0x03, 0x75,
+ 0x80, 0x18, 0x89, 0xf8, 0x2e, 0x13, 0x2e, 0x1b, 0x8d, 0xf3, 0x81, 0x54,
+ 0x7c, 0x31, 0xed, 0x23, 0x48, 0x19, 0xea, 0x70, 0xf9, 0xb5, 0x14, 0x11,
+ 0x1e, 0xd3, 0xab, 0xa8, 0xb7, 0xf6, 0x1a, 0xec, 0x75, 0xa6, 0xa8, 0x9b,
+ 0xfc, 0xcf, 0x09, 0x9d, 0x37, 0x8a, 0x0b, 0xa9, 0xf2, 0xf1, 0xa6, 0x5d,
+ 0xe7, 0x7f, 0xb5, 0x2b, 0x7c, 0x4b, 0xed, 0x2f, 0x62, 0xf7, 0x5a, 0x83,
+ 0x27, 0x68, 0x4b, 0xab, 0xac, 0x13, 0xab, 0x03, 0x8d, 0x35, 0x85, 0x17,
+ 0xe0, 0x32, 0x5f, 0x65, 0xb3, 0x7a, 0x18, 0xca, 0x7a, 0xc6, 0xcb, 0xf9,
+ 0x99, 0xdc, 0xa3, 0x9a, 0xda, 0x2c, 0x9d, 0xc4, 0x95, 0x3d, 0x83, 0x59,
+ 0x4b, 0x53, 0x3f, 0x58, 0x6a, 0x63, 0x4c, 0xb3, 0xd6, 0xc2, 0xec, 0x6e,
+ 0xa9, 0xd4, 0x86, 0x6a, 0xdc, 0x1c, 0x2e, 0x93, 0xaa, 0x19, 0xb9, 0x77,
+ 0x9d, 0x0b, 0xd0, 0x4a, 0x6f, 0x3f, 0x3a, 0xae, 0xcc, 0x3b, 0xa4, 0x73,
+ 0x74, 0xf1, 0x0d, 0xcd, 0x30, 0x29, 0x46, 0xb2, 0xf9, 0xe6, 0xf4, 0xed,
+ 0x91, 0x0b, 0x66, 0x15, 0x2d, 0x9f, 0x3f, 0xe9, 0x04, 0xdb, 0x1a, 0x21,
+ 0x22, 0xc1, 0xd2, 0x81, 0x07, 0xed, 0x22, 0x3f, 0x58, 0x1d, 0x52, 0xe6,
+ 0x97, 0x77, 0xab, 0x74, 0xb6, 0x89, 0x94, 0xed, 0xf7, 0x59, 0xfa, 0x71,
+ 0x28, 0x66, 0x0c, 0x00, 0xd1, 0x95, 0x96, 0xb3, 0x6c, 0xe9, 0xce, 0xa2,
+ 0xea, 0xe7, 0x8b, 0x0e, 0xb4, 0x0c, 0x2b, 0xf9, 0x14, 0xa2, 0xc5, 0x21,
+ 0x01, 0x23, 0xcd, 0xc4, 0x1f, 0x22, 0x4d, 0x6e, 0x31, 0x03, 0x20, 0x16,
+ 0x0a, 0xa4, 0x1b, 0xec, 0x7b, 0x47, 0x60, 0x6e, 0xb0, 0xdf, 0xdc, 0xdc,
+ 0xc1, 0xd9, 0xd9, 0xeb, 0x83, 0x8b, 0x03, 0x37, 0x37, 0x5c, 0xc5, 0x60,
+ 0x2a, 0xd0, 0x4d, 0x59, 0x70, 0xd3, 0xe4, 0xfe, 0xfe, 0xef, 0x39, 0x6b,
+ 0xa3, 0x79, 0xd7, 0x9f, 0x9d, 0x9f, 0xb2, 0x85, 0xe1, 0xf7, 0x3f, 0x1d,
+ 0xf8, 0xc2, 0xcd, 0x28, 0xcf, 0xd8, 0x2e, 0x9f, 0xbb, 0xb7, 0x15, 0xf1,
+ 0xf8, 0x0c, 0x8a, 0x67, 0xe0, 0xdc, 0xfc, 0x92, 0x1e, 0x1d, 0x7d, 0xe0,
+ 0x3d, 0x2d, 0xa6, 0x4e, 0x78, 0x12, 0xe3, 0x9d, 0x6c, 0xe7, 0xa0, 0x1d,
+ 0xee, 0x17, 0x4c, 0x24, 0xf7, 0x4c, 0xcc, 0x80, 0x76, 0x6c, 0xad, 0xe6,
+ 0x24, 0xf1, 0x93, 0xd0, 0x5a, 0x81, 0x75, 0xb0, 0xb1, 0x8d, 0xe9, 0x6b,
+ 0xc6, 0x0b, 0xd5, 0x84, 0x93, 0x73, 0xfb, 0x63, 0x1b, 0x24, 0xe9, 0xe8,
+ 0x60, 0xb8, 0xc2, 0x02, 0x24, 0x9c, 0x33, 0x97, 0xb2, 0x5c, 0x23, 0x1b,
+ 0xad, 0xaa, 0x53, 0xad, 0xb3, 0x23, 0xee, 0x08, 0xa2, 0x73, 0x9b, 0xc3,
+ 0xa8, 0x6d, 0x37, 0x1e, 0x0e, 0x87, 0x66, 0x55, 0x96, 0x69, 0xd3, 0x07,
+ 0xad, 0x87, 0x2a, 0x2b, 0x3e, 0x64, 0x7c, 0xbe, 0x9b, 0x4d, 0x84, 0xfc,
+ 0xa1, 0x29, 0xcb, 0x2b, 0x82, 0x80, 0x3e, 0x85, 0x2a, 0xa6, 0xc8, 0x3f,
+ 0x6c, 0x9b, 0x1b, 0xcd, 0x1a, 0x4f, 0x8f, 0x96, 0x2b, 0x36, 0xd8, 0xf0,
+ 0x5f, 0xdb, 0xbb, 0xa3, 0x9d, 0x5e, 0x7b, 0xf4, 0x88, 0x05, 0x84, 0x51,
+ 0xcc, 0x20, 0x76, 0x05, 0x35, 0x39, 0x7f, 0x7c, 0x80, 0xc2, 0xc0, 0x48,
+ 0x22, 0x5d, 0x52, 0x07, 0x9d, 0x63, 0x19, 0x9e, 0xb6, 0x8c, 0x97, 0xe2,
+ 0x15, 0xf0, 0x1c, 0x31, 0xcb, 0x91, 0x37, 0x1b, 0xb3, 0x36, 0x04, 0x43,
+ 0x4c, 0xaf, 0x7b, 0x81, 0xb3, 0x99, 0xb8, 0x35, 0x1b, 0xeb, 0xfc, 0xab,
+ 0xf2, 0xc9, 0xdc, 0xfe, 0x07, 0x28, 0x61, 0x6b, 0xb9, 0x5d, 0xcd, 0xf2,
+ 0x7e, 0x93, 0x90, 0x20, 0x38, 0x47, 0xfa, 0x14, 0xdb, 0xd1, 0x5e, 0x4a,
+ 0x9d, 0xdd, 0x36, 0x62, 0x7e, 0xcd, 0x17, 0x50, 0x72, 0x40, 0x9c, 0xb0,
+ 0x06, 0xbc, 0x15, 0x85, 0x01, 0xe2, 0x1e, 0x00, 0xb4, 0x48, 0x38, 0xa4,
+ 0x33, 0x4a, 0x67, 0xad, 0x2c, 0xed, 0x06, 0xf2, 0x86, 0x1b, 0x04, 0x2b,
+ 0xdf, 0x93, 0xc4, 0x89, 0xfc, 0xd2, 0xba, 0x09, 0x87, 0xc0, 0x23, 0x21,
+ 0xd5, 0x7c, 0xd5, 0x92, 0x17, 0x9a, 0xef, 0x8f, 0x98, 0xcb, 0xd6, 0x30,
+ 0x3a, 0xc4, 0xa8, 0xc3, 0x4f, 0xe4, 0xce, 0xe4, 0x87, 0x72, 0x96, 0x38,
+ 0x53, 0x2d, 0x23, 0xe6, 0xa5, 0x80, 0xf9, 0xc9, 0x14, 0x2f, 0x0e, 0xcf,
+ 0x3e, 0x7c, 0x7b, 0x74, 0x74, 0x76, 0xfc, 0xfa, 0xe4, 0x48, 0xef, 0x19,
+ 0xf7, 0xd1, 0xbb, 0x8b, 0xef, 0x4e, 0x0c, 0xdf, 0xcf, 0xd6, 0xa7, 0x65,
+ 0x06, 0xe3, 0x90, 0x23, 0x34, 0x77, 0x92, 0x66, 0xab, 0x8f, 0x03, 0xa0,
+ 0x8c, 0x10, 0x31, 0x1f, 0x1c, 0xff, 0x30, 0x88, 0xbe, 0x39, 0x1b, 0xbe,
+ 0xff, 0xa1, 0x05, 0x04, 0x51, 0x0b, 0xf2, 0x6d, 0x0a, 0x96, 0x2e, 0xe4,
+ 0x17, 0x55, 0x58, 0xfc, 0xdc, 0x4d, 0xff, 0xed, 0x28, 0x4c, 0xfa, 0xdb,
+ 0xa2, 0x8a, 0x50, 0x73, 0xab, 0x2c, 0x80, 0x7c, 0x0e, 0xa4, 0x78, 0xbd,
+ 0x7a, 0x41, 0x0e, 0xcf, 0x77, 0xb4, 0x8a, 0x73, 0x83, 0x00, 0xef, 0xa3,
+ 0x97, 0x6b, 0x10, 0x79, 0xb6, 0xc7, 0xe3, 0x6f, 0xb6, 0xa2, 0xb3, 0x00,
+ 0xba, 0xd9, 0xd9, 0x5a, 0x46, 0x16, 0xe0, 0xc7, 0x66, 0x1a, 0x6a, 0x3c,
+ 0xb0, 0xda, 0x14, 0x8c, 0xb5, 0xd9, 0x76, 0xd2, 0x6a, 0x0b, 0x76, 0x87,
+ 0x9b, 0xf2, 0x27, 0x92, 0x25, 0xb2, 0x84, 0xa8, 0x37, 0xb0, 0xff, 0x3a,
+ 0x0a, 0xa1, 0x08, 0x8c, 0x4d, 0xc9, 0x08, 0x77, 0x7c, 0x14, 0x26, 0x45,
+ 0x61, 0x87, 0xe9, 0x88, 0xce, 0xd2, 0x99, 0xe4, 0x96, 0xb0, 0xc6, 0x20,
+ 0x92, 0x42, 0x14, 0xf5, 0xff, 0x6b, 0x7b, 0x54, 0x96, 0xd7, 0xdb, 0xe9,
+ 0xec, 0x43, 0x51, 0xc6, 0xfd, 0xe6, 0xe5, 0x1c, 0x7c, 0x3d, 0xe3, 0xaf,
+ 0xa3, 0xfe, 0xc8, 0x3d, 0xaa, 0xbf, 0xf3, 0xe7, 0xbf, 0x25, 0xd4, 0x18,
+ 0xad, 0xcd, 0xa3, 0xc8, 0x90, 0xad, 0x9d, 0xe0, 0x47, 0x47, 0x4e, 0x0c,
+ 0x57, 0xd7, 0x01, 0x37, 0x82, 0x6d, 0x90, 0xcd, 0xed, 0xaa, 0xd3, 0x2c,
+ 0xe0, 0x3d, 0x51, 0x03, 0x11, 0x97, 0xce, 0xed, 0xeb, 0xa3, 0xf3, 0x81,
+ 0x00, 0x46, 0x86, 0x60, 0x91, 0x0e, 0x1d, 0x75, 0xa4, 0x20, 0x91, 0xeb,
+ 0xd4, 0xd3, 0xc1, 0x3f, 0x11, 0x24, 0xf2, 0xa6, 0x98, 0x44, 0x2f, 0xe7,
+ 0xf4, 0xe2, 0xbc, 0x3b, 0xd1, 0x54, 0x2a, 0xf8, 0xf9, 0x32, 0x84, 0x0d,
+ 0x70, 0x13, 0x05, 0x1f, 0x14, 0x09, 0x15, 0xcd, 0x88, 0x5e, 0xda, 0xa5,
+ 0x98, 0x56, 0xb0, 0x89, 0xf1, 0x1b, 0xad, 0xac, 0xbc, 0x3e, 0x22, 0x61,
+ 0x99, 0x4a, 0x18, 0xc1, 0x85, 0x7f, 0x82, 0xef, 0x6b, 0xf9, 0xc6, 0xfe,
+ 0xa0, 0xad, 0x7c, 0xf7, 0x75, 0xd5, 0xfb, 0xb4, 0x71, 0xd2, 0x1a, 0x1f,
+ 0x21, 0xc1, 0x77, 0x94, 0x71, 0x28, 0x4c, 0x74, 0xa9, 0xda, 0x46, 0x18,
+ 0x08, 0x53, 0xb6, 0x40, 0xff, 0x5d, 0x73, 0xcd, 0xe0, 0xab, 0x6e, 0x63,
+ 0xdc, 0xba, 0xc2, 0x14, 0xb1, 0x03, 0xf5, 0x0b, 0x0b, 0x52, 0x58, 0xb5,
+ 0xc9, 0xa7, 0x46, 0x02, 0xa3, 0x35, 0x68, 0x4c, 0x3c, 0x50, 0x24, 0xf2,
+ 0xb1, 0x30, 0xc2, 0xe1, 0xe7, 0x1c, 0xcd, 0x39, 0xfc, 0x8e, 0xd5, 0x40,
+ 0xf3, 0xb2, 0x09, 0xd2, 0x2a, 0x40, 0xee, 0x41, 0x9d, 0x5d, 0xc7, 0xda,
+ 0x95, 0xb6, 0x48, 0xab, 0xdf, 0x90, 0x74, 0xe6, 0xa8, 0x04, 0x91, 0x96,
+ 0xd5, 0x90, 0xdd, 0x56, 0xdd, 0x61, 0xd0, 0x50, 0x9a, 0x34, 0x89, 0xc1,
+ 0xfc, 0x66, 0x01, 0x14, 0xb3, 0xb0, 0x30, 0xa9, 0x77, 0x85, 0x50, 0xaf,
+ 0x52, 0x8b, 0x46, 0x0f, 0xbb, 0x4a, 0x6d, 0xdc, 0xa6, 0xc9, 0x9d, 0xf7,
+ 0xec, 0xd6, 0x50, 0x78, 0xd4, 0x97, 0x8b, 0x65, 0x01, 0x33, 0x93, 0xa2,
+ 0x8b, 0x8c, 0x0c, 0xdd, 0x05, 0x90, 0xb4, 0x88, 0xa7, 0xd7, 0x24, 0x3e,
+ 0x0e, 0x11, 0x30, 0x1a, 0xd5, 0xf1, 0x49, 0xd8, 0x98, 0xd0, 0x18, 0x28,
+ 0xe7, 0xf5, 0x69, 0x18, 0x5a, 0x67, 0xfd, 0x47, 0xff, 0x20, 0x0f, 0xd1,
+ 0x05, 0xbd, 0x09, 0x31, 0xba, 0x6c, 0x5d, 0x28, 0xa9, 0x79, 0xe1, 0x30,
+ 0x4b, 0x25, 0xc5, 0x9a, 0x17, 0xb5, 0xc3, 0x71, 0x16, 0x29, 0x26, 0x69,
+ 0xcd, 0xa2, 0xa5, 0xe0, 0x3b, 0x71, 0xf4, 0xee, 0x64, 0xec, 0x13, 0x56,
+ 0x2a, 0x2d, 0xf0, 0x21, 0x20, 0xd8, 0xeb, 0x1c, 0x1f, 0x61, 0x94, 0xd6,
+ 0xc9, 0x71, 0x47, 0x29, 0x5d, 0x36, 0x09, 0xec, 0x93, 0x5a, 0xbd, 0x48,
+ 0x82, 0xe4, 0xfc, 0x52, 0x0b, 0xc7, 0x20, 0x26, 0x50, 0x3c, 0xd9, 0x66,
+ 0x01, 0x64, 0xcd, 0xc9, 0xa5, 0x2b, 0xb5, 0x97, 0x98, 0x87, 0xf8, 0x27,
+ 0xb1, 0xa3, 0x6a, 0x1c, 0x8c, 0xc5, 0xd7, 0x95, 0xab, 0xc9, 0x30, 0xc8,
+ 0x20, 0x16, 0x86, 0x00, 0x7c, 0x9b, 0x74, 0xca, 0xca, 0xfd, 0x4d, 0x3b,
+ 0x28, 0x65, 0xf3, 0xec, 0xf4, 0xec, 0x89, 0x91, 0x93, 0xa5, 0x7b, 0xd7,
+ 0xdc, 0x9c, 0xd3, 0x88, 0xa5, 0x34, 0x85, 0x94, 0xe2, 0xa7, 0x6b, 0xc4,
+ 0xd5, 0x55, 0x7d, 0x8f, 0xd7, 0x91, 0x17, 0xa2, 0xb1, 0x8e, 0xea, 0xa8,
+ 0xa8, 0x87, 0xb5, 0x71, 0xee, 0x69, 0x90, 0x38, 0xdb, 0x01, 0xda, 0x61,
+ 0x31, 0x06, 0x8e, 0x14, 0x35, 0x86, 0x1e, 0x74, 0x28, 0x64, 0xe8, 0x4f,
+ 0x6e, 0x30, 0x6a, 0x3a, 0x6d, 0xad, 0xe4, 0x11, 0x92, 0xda, 0x49, 0xda,
+ 0x94, 0xfc, 0xef, 0xb2, 0x9e, 0x00, 0x2e, 0xe9, 0x0c, 0x28, 0x5f, 0xc3,
+ 0xae, 0x64, 0xa0, 0x0b, 0xae, 0xd9, 0x49, 0xb1, 0x57, 0x20, 0xd8, 0xd4,
+ 0x15, 0x6f, 0xf9, 0x41, 0x9c, 0x66, 0x12, 0xd8, 0xe8, 0x11, 0x06, 0x06,
+ 0xf5, 0xb0, 0xe8, 0x8e, 0xba, 0x0c, 0x41, 0x55, 0x3d, 0xc9, 0x99, 0x22,
+ 0x9d, 0x9b, 0x04, 0x49, 0xb7, 0x76, 0xba, 0x56, 0xea, 0x89, 0xd2, 0x69,
+ 0xb3, 0x1b, 0x8a, 0x7e, 0xe9, 0x2a, 0x4f, 0xcf, 0x7b, 0xd5, 0x27, 0xd6,
+ 0x93, 0xa5, 0x34, 0x16, 0x45, 0xe4, 0xbb, 0xe4, 0xb8, 0x3f, 0xf5, 0x52,
+ 0x09, 0xe4, 0x63, 0x5a, 0xf5, 0x01, 0xf3, 0x55, 0x62, 0x49, 0x78, 0x4d,
+ 0xba, 0x8e, 0xb2, 0x16, 0x33, 0xb7, 0xb0, 0xd7, 0x7a, 0xba, 0xd3, 0x6e,
+ 0x2d, 0xa7, 0xbf, 0x56, 0xbc, 0xa6, 0x33, 0x22, 0x01, 0xe5, 0x4d, 0xb6,
+ 0x22, 0x67, 0x4c, 0xd6, 0x65, 0x97, 0xc8, 0x8f, 0xd2, 0x27, 0x0b, 0x68,
+ 0x6f, 0xc8, 0x06, 0xb8, 0xe2, 0xf0, 0xfc, 0x26, 0x51, 0x48, 0x1a, 0x03,
+ 0x40, 0xee, 0x0d, 0xae, 0xa9, 0x8a, 0x5c, 0xdd, 0x9c, 0x4d, 0x05, 0x25,
+ 0xf4, 0xe1, 0x74, 0xcd, 0xda, 0x35, 0x5d, 0x70, 0x17, 0x74, 0xbb, 0x3c,
+ 0xf9, 0xe1, 0x87, 0xa8, 0x0e, 0x52, 0xb6, 0xb5, 0x2e, 0x22, 0x1b, 0x0a,
+ 0x3a, 0xdd, 0xb8, 0x5d, 0x3c, 0xc1, 0x68, 0x40, 0x89, 0x8b, 0xbd, 0xc3,
+ 0x50, 0xde, 0x21, 0x99, 0xe8, 0x4e, 0x5f, 0x25, 0xd8, 0x0a, 0xa1, 0x9c,
+ 0x30, 0x3a, 0xa5, 0x7d, 0x19, 0xfb, 0x30, 0x8f, 0x81, 0x8b, 0xb0, 0x14,
+ 0x6f, 0x38, 0xa2, 0x66, 0xc2, 0xa5, 0x2a, 0xdd, 0x75, 0x42, 0x42, 0xc0,
+ 0x5d, 0x36, 0xea, 0x2a, 0x37, 0xd4, 0x06, 0x50, 0x93, 0xc8, 0x73, 0xcc,
+ 0x48, 0xaa, 0x2e, 0x01, 0xf7, 0x91, 0x2d, 0x82, 0x41, 0x91, 0x67, 0x57,
+ 0x36, 0xb5, 0x15, 0xd7, 0x20, 0x1e, 0x08, 0x04, 0x30, 0x08, 0x42, 0x37,
+ 0x87, 0x61, 0x0a, 0x0f, 0x8a, 0x2a, 0x78, 0xf1, 0xcc, 0x51, 0x19, 0xee,
+ 0x16, 0x3f, 0xde, 0x61, 0x1b, 0xb9, 0x43, 0x4d, 0xa0, 0xc0, 0x62, 0x8a,
+ 0x58, 0x06, 0xcd, 0x25, 0x11, 0xd2, 0xff, 0x63, 0xbd, 0xc6, 0xaf, 0xe2,
+ 0x24, 0x09, 0xe9, 0xb5, 0x92, 0x40, 0x38, 0xf2, 0xa0, 0x2a, 0x56, 0x58,
+ 0x21, 0xde, 0x10, 0x4e, 0xca, 0x67, 0x07, 0x80, 0x21, 0x08, 0xb1, 0x40,
+ 0x69, 0x71, 0x1b, 0x28, 0x68, 0x21, 0xf1, 0xd0, 0x0b, 0x40, 0xa5, 0xb4,
+ 0xfc, 0xd2, 0x36, 0x2f, 0xcb, 0x74, 0xe3, 0xcc, 0xb6, 0x9a, 0xe7, 0x73,
+ 0x38, 0x5c, 0xc4, 0x1f, 0x87, 0x78, 0xac, 0x6c, 0x61, 0xab, 0xb7, 0x6c,
+ 0x9d, 0xd2, 0x42, 0x19, 0x2e, 0x98, 0x69, 0xb5, 0x2e, 0xe0, 0x5e, 0xa3,
+ 0x24, 0x99, 0x82, 0xf8, 0x6e, 0xf8, 0xfa, 0xe8, 0xa2, 0x79, 0xb4, 0x00,
+ 0x7b, 0xa0, 0x26, 0x02, 0x84, 0xb9, 0xd3, 0xdf, 0x67, 0xef, 0x2f, 0xb6,
+ 0x7c, 0x5d, 0x1d, 0xa1, 0xd2, 0x40, 0x07, 0x71, 0xe1, 0xd7, 0x6d, 0xb4,
+ 0x44, 0x09, 0x2d, 0x57, 0x06, 0x0b, 0x44, 0x44, 0x77, 0x20, 0xb8, 0x12,
+ 0xd8, 0x93, 0x9d, 0xdd, 0x01, 0xfd, 0xb3, 0x07, 0x6b, 0xdb, 0x93, 0x9d,
+ 0x27, 0xce, 0x83, 0x60, 0x4f, 0xb5, 0x9c, 0x08, 0x1c, 0x52, 0x85, 0xb2,
+ 0x72, 0x81, 0x23, 0x22, 0x7a, 0xf2, 0xf1, 0x23, 0xbe, 0xaa, 0x47, 0xc3,
+ 0x0d, 0x5d, 0x50, 0xed, 0x3a, 0x8f, 0x89, 0x0d, 0xdc, 0xaf, 0x38, 0xcc,
+ 0x66, 0xab, 0x4c, 0xc2, 0x7d, 0xd8, 0xe8, 0x81, 0xf0, 0xf5, 0xd1, 0x3a,
+ 0x28, 0xa9, 0xaa, 0x99, 0x51, 0x1c, 0x62, 0x49, 0x11, 0xad, 0xf0, 0xe4,
+ 0x5d, 0x2f, 0x16, 0x0b, 0xdf, 0x66, 0x8c, 0x78, 0x4c, 0xf2, 0x2d, 0xc1,
+ 0x38, 0x76, 0x3e, 0x86, 0xf7, 0x75, 0x8d, 0x24, 0x88, 0x5d, 0x2a, 0x33,
+ 0x52, 0xd5, 0x7f, 0x0d, 0x48, 0xdb, 0x3e, 0x07, 0x80, 0xd2, 0xa1, 0xc0,
+ 0x0a, 0xdb, 0xaf, 0x7b, 0x12, 0x5c, 0x2a, 0x7f, 0x3c, 0x09, 0x55, 0x0b,
+ 0xab, 0xcf, 0xd6, 0x59, 0x9b, 0xe0, 0x40, 0x2a, 0x86, 0x85, 0xac, 0x8b,
+ 0x8f, 0x1f, 0x57, 0x6c, 0xe2, 0x34, 0x15, 0x96, 0xa0, 0x35, 0xcf, 0x59,
+ 0xeb, 0xd6, 0xaa, 0xb7, 0x13, 0xbf, 0x77, 0xd4, 0x00, 0x41, 0x34, 0x0d,
+ 0x30, 0xed, 0xac, 0x2e, 0xdc, 0x50, 0x26, 0x78, 0x18, 0xa9, 0x7b, 0x1c,
+ 0xfb, 0x6c, 0xee, 0x5c, 0xcd, 0x9d, 0x10, 0xf5, 0xaf, 0x1b, 0x8e, 0xc5,
+ 0x9c, 0xa6, 0xa4, 0x17, 0xcc, 0x05, 0x3e, 0xc8, 0x05, 0x81, 0x17, 0x36,
+ 0x2c, 0x09, 0x1e, 0xf6, 0xc1, 0x57, 0xfc, 0xde, 0xbf, 0xfc, 0x37, 0x45,
+ 0x6e, 0x75, 0xb4, 0x8a, 0x3f, 0xa0, 0x23, 0x2e, 0xa6, 0x26, 0x8e, 0x3f,
+ 0x98, 0x4b, 0x0a, 0x6e, 0x31, 0x84, 0x79, 0xe0, 0x25, 0x49, 0x1c, 0xc9,
+ 0x6c, 0xad, 0xb3, 0x1e, 0x52, 0x26, 0xf1, 0x85, 0x74, 0xb1, 0x5a, 0xf8,
+ 0xec, 0x41, 0x2e, 0xe5, 0x50, 0x25, 0xbe, 0x54, 0x6d, 0x08, 0x29, 0x3c,
+ 0xec, 0xa0, 0x11, 0x00, 0xc8, 0xf9, 0xac, 0x64, 0xe8, 0x86, 0x40, 0x39,
+ 0x33, 0x1c, 0x0d, 0x0d, 0xde, 0xd3, 0x25, 0x50, 0x31, 0x89, 0x9b, 0x47,
+ 0xec, 0x52, 0xdc, 0x92, 0x83, 0xb9, 0x7a, 0x0f, 0x5d, 0x1b, 0xe9, 0x52,
+ 0xa2, 0xe6, 0x38, 0xfc, 0x7e, 0x26, 0xe2, 0x31, 0x36, 0xc1, 0x8d, 0x13,
+ 0x25, 0x82, 0x65, 0x5c, 0x92, 0xc2, 0x40, 0x17, 0x42, 0x2b, 0x5e, 0x65,
+ 0x42, 0x4d, 0xdc, 0xa5, 0xb3, 0xea, 0x1a, 0x38, 0x8d, 0xb8, 0x22, 0x19,
+ 0xed, 0x84, 0xc1, 0x4a, 0x54, 0xe0, 0x48, 0xdb, 0xc9, 0x41, 0x93, 0x6e,
+ 0xc8, 0x7b, 0xd9, 0x23, 0xac, 0x69, 0x24, 0x10, 0x2c, 0x1c, 0x99, 0x8e,
+ 0x6d, 0x40, 0x5c, 0xe7, 0xb6, 0x98, 0x88, 0x1c, 0xd8, 0x00, 0x49, 0x7c,
+ 0xab, 0x4b, 0x06, 0x7c, 0x6c, 0x4b, 0x8f, 0x96, 0xce, 0x33, 0x72, 0x87,
+ 0x02, 0x26, 0x98, 0xfe, 0x8d, 0xe4, 0xd1, 0x7d, 0xab, 0x1a, 0xa9, 0x20,
+ 0x63, 0x81, 0x07, 0x48, 0x32, 0x09, 0xf1, 0xab, 0x9b, 0x74, 0xde, 0xb2,
+ 0x49, 0xa0, 0x7b, 0xd2, 0x9f, 0x17, 0x78, 0xfd, 0x6d, 0x5f, 0xa3, 0x54,
+ 0x18, 0xb7, 0x2d, 0xd1, 0xa0, 0xd3, 0x81, 0x02, 0x38, 0xf6, 0xaf, 0xa4,
+ 0x8b, 0xaf, 0xfb, 0x2e, 0x96, 0xa5, 0x75, 0xd9, 0xf9, 0x48, 0x55, 0xb3,
+ 0xa5, 0x97, 0xfb, 0xd1, 0xde, 0xce, 0xce, 0xb7, 0xc4, 0x62, 0x17, 0xd8,
+ 0x94, 0xdd, 0xaf, 0xbb, 0x8b, 0x02, 0x28, 0x19, 0x17, 0x82, 0xc1, 0xac,
+ 0x45, 0xb7, 0x6f, 0x61, 0xf4, 0xd6, 0x85, 0x93, 0x02, 0xc1, 0xb3, 0x68,
+ 0xb6, 0x2a, 0x8c, 0x13, 0x75, 0x6e, 0x9c, 0xcb, 0x8d, 0x65, 0x7b, 0x68,
+ 0x13, 0x0a, 0x62, 0x81, 0x44, 0x09, 0xde, 0xf9, 0x6b, 0xfa, 0x2d, 0x09,
+ 0x88, 0x02, 0x9d, 0x74, 0x00, 0x2d, 0x90, 0xdc, 0xc1, 0x20, 0x7b, 0xab,
+ 0x82, 0x6b, 0xa0, 0x22, 0x12, 0x14, 0x18, 0x55, 0x30, 0xd2, 0x9a, 0x7b,
+ 0x29, 0xcb, 0x05, 0xf5, 0x04, 0x64, 0xe1, 0x91, 0x78, 0x78, 0x32, 0x5d,
+ 0xd9, 0x5d, 0x4c, 0xc2, 0x72, 0xc9, 0x5b, 0xb0, 0xf4, 0xf0, 0xcf, 0xcc,
+ 0x21, 0x31, 0x04, 0x39, 0x86, 0xce, 0x01, 0x2a, 0x39, 0x68, 0x5e, 0x58,
+ 0x6b, 0x4e, 0x96, 0xe9, 0x52, 0x6b, 0x13, 0xb1, 0xd2, 0x09, 0x9b, 0x2a,
+ 0xe6, 0xc8, 0x88, 0xc2, 0x4b, 0xad, 0xf0, 0xcd, 0x03, 0x91, 0x76, 0x61,
+ 0xff, 0x9d, 0xf3, 0x03, 0x73, 0x56, 0xa8, 0xf3, 0x56, 0xbe, 0xce, 0x7c,
+ 0x09, 0xc3, 0xb2, 0xbb, 0x8c, 0x82, 0x21, 0x71, 0x16, 0xf2, 0x14, 0x65,
+ 0x00, 0x38, 0x9f, 0xe5, 0x37, 0x34, 0x32, 0x01, 0x7e, 0x4f, 0xd0, 0x3e,
+ 0x5e, 0x12, 0xf9, 0x7e, 0xf1, 0x23, 0x57, 0x05, 0xfd, 0xb9, 0xa3, 0xfe,
+ 0x69, 0xac, 0x09, 0x5d, 0x7c, 0x96, 0x2c, 0x69, 0xaa, 0xf0, 0xd5, 0x79,
+ 0xd0, 0x8e, 0x64, 0x1d, 0x5b, 0x15, 0x52, 0x5f, 0xd7, 0xa8, 0x33, 0x24,
+ 0xd8, 0xcc, 0xf9, 0x9b, 0xe5, 0xd6, 0x28, 0x44, 0xf3, 0x93, 0x46, 0x5c,
+ 0x2b, 0xf0, 0x45, 0x67, 0xc2, 0x9c, 0x60, 0xab, 0x6b, 0x31, 0x23, 0x8e,
+ 0x7d, 0x9c, 0x26, 0x3e, 0xd8, 0x0a, 0xad, 0xd8, 0x7c, 0x27, 0xab, 0xf2,
+ 0x9e, 0xd1, 0x8b, 0xc4, 0x8b, 0x51, 0xe6, 0x0e, 0xbf, 0x11, 0x0b, 0x88,
+ 0xe1, 0xb7, 0xc3, 0xd3, 0x18, 0x60, 0x47, 0xa2, 0x91, 0xab, 0x9c, 0x2e,
+ 0xfa, 0xb8, 0x28, 0x48, 0x54, 0xd3, 0xad, 0xd6, 0x54, 0x3a, 0x1a, 0x3c,
+ 0x2b, 0x3f, 0x30, 0x08, 0x39, 0xc7, 0x04, 0xb5, 0xbd, 0x5a, 0x76, 0xc4,
+ 0x93, 0x71, 0x72, 0x6d, 0x0b, 0xd1, 0xac, 0x96, 0xb9, 0x6e, 0xea, 0x87,
+ 0x89, 0x9b, 0x0f, 0x6a, 0x40, 0x27, 0xb0, 0x42, 0xb0, 0xca, 0x14, 0xbc,
+ 0xa9, 0x39, 0xff, 0x02, 0x4d, 0x0e, 0xd9, 0xd2, 0x9c, 0x1f, 0xdd, 0xc9,
+ 0xd2, 0xd1, 0x1f, 0x3d, 0x46, 0x9f, 0x54, 0x43, 0x82, 0x54, 0x1d, 0x28,
+ 0x52, 0x25, 0xc7, 0x53, 0xb0, 0xa6, 0xe8, 0x05, 0xf2, 0x7c, 0xd4, 0x05,
+ 0xb9, 0xcd, 0xcf, 0xe4, 0xa2, 0x54, 0x8a, 0x35, 0xa1, 0x2a, 0xf2, 0xd9,
+ 0x6a, 0x0a, 0x13, 0x0b, 0x47, 0xce, 0xa5, 0xd5, 0x7d, 0x34, 0x11, 0xc8,
+ 0x30, 0xcb, 0x5f, 0xe7, 0xa6, 0x9d, 0x3c, 0xdc, 0x68, 0x4e, 0x0d, 0xee,
+ 0xb1, 0x3c, 0xe5, 0x30, 0x5e, 0x71, 0xc7, 0x00, 0xf3, 0x39, 0x51, 0x41,
+ 0xa3, 0x68, 0xe9, 0x23, 0x28, 0xd1, 0xd4, 0x8d, 0x91, 0x2d, 0x4e, 0x50,
+ 0x56, 0x08, 0x3e, 0x56, 0x2e, 0x76, 0x82, 0xab, 0x8d, 0x11, 0xf1, 0x42,
+ 0x52, 0xfd, 0x8a, 0xc3, 0x75, 0x1b, 0x0d, 0x86, 0xc8, 0xcf, 0x8b, 0x81,
+ 0x0a, 0xe8, 0x0f, 0xfa, 0xb1, 0xde, 0xba, 0x9b, 0x1a, 0x7e, 0xab, 0x14,
+ 0xce, 0x2c, 0x3c, 0x29, 0x0b, 0x8b, 0x7c, 0xa8, 0xb9, 0x81, 0x5a, 0xdc,
+ 0x5d, 0xe7, 0xf3, 0x50, 0x48, 0x69, 0x07, 0x48, 0x10, 0xcf, 0x09, 0x52,
+ 0x39, 0x83, 0xc4, 0x08, 0x46, 0x2b, 0xe2, 0x81, 0x5a, 0xbd, 0x93, 0x09,
+ 0x80, 0xed, 0xff, 0x92, 0x4f, 0x54, 0xbf, 0x8b, 0x58, 0x34, 0xed, 0xca,
+ 0x73, 0x93, 0x70, 0x80, 0x6b, 0xae, 0x29, 0x4b, 0xfc, 0x5d, 0x02, 0x4b,
+ 0x78, 0x3c, 0x59, 0x52, 0x31, 0xbf, 0x41, 0x3c, 0x39, 0x6c, 0x3d, 0x91,
+ 0x54, 0x9b, 0x47, 0x84, 0x30, 0xe7, 0xe9, 0x13, 0xcf, 0x6b, 0x34, 0xf7,
+ 0xd9, 0xe8, 0xc9, 0x1e, 0x67, 0x21, 0x85, 0xcc, 0x28, 0x9e, 0xb2, 0xbe,
+ 0x55, 0x46, 0x96, 0x27, 0x83, 0xe4, 0x35, 0xe5, 0xe6, 0x95, 0x00, 0x43,
+ 0xac, 0x94, 0x47, 0x0d, 0xdb, 0xee, 0x5a, 0x55, 0x39, 0x12, 0x86, 0xb5,
+ 0x2b, 0xe1, 0xdd, 0xa6, 0xf6, 0x56, 0x45, 0x3c, 0xbd, 0x37, 0xc8, 0x5c,
+ 0x1f, 0x29, 0xc6, 0x4d, 0xf0, 0x2b, 0x34, 0x30, 0x3c, 0xdd, 0x42, 0x82,
+ 0xcf, 0xdc, 0x20, 0x98, 0x6b, 0xa7, 0x40, 0x2a, 0x68, 0xa6, 0x63, 0x59,
+ 0x99, 0x8b, 0xa1, 0xb5, 0xb6, 0x46, 0xef, 0xfa, 0x87, 0xb2, 0xdc, 0xab,
+ 0x34, 0x1b, 0x9a, 0x3c, 0xff, 0x52, 0x7f, 0xf9, 0xe2, 0x81, 0xd0, 0x23,
+ 0xbc, 0xe1, 0x34, 0x00, 0xe5, 0xab, 0x7a, 0x37, 0x9b, 0xf5, 0xa9, 0x46,
+ 0xb7, 0x6b, 0x35, 0x18, 0xbb, 0x04, 0xb5, 0x49, 0xd7, 0x26, 0xf4, 0x73,
+ 0x8b, 0x11, 0x92, 0x42, 0xb1, 0xd3, 0x7c, 0xee, 0x1c, 0x1f, 0xd3, 0xce,
+ 0x48, 0x79, 0x2b, 0xf7, 0xac, 0x65, 0x30, 0xb1, 0x20, 0x3a, 0xaa, 0xc6,
+ 0x70, 0xa2, 0x83, 0x0a, 0xf8, 0xe5, 0x10, 0xd6, 0xdb, 0x26, 0xe9, 0xe3,
+ 0xb7, 0x07, 0x67, 0x03, 0xd8, 0x06, 0x71, 0xa9, 0x8e, 0xdf, 0xb2, 0x95,
+ 0x53, 0x2c, 0xe5, 0xf5, 0xb9, 0x8b, 0x1b, 0x4d, 0x50, 0xcf, 0x82, 0x6a,
+ 0x6c, 0x4d, 0xb9, 0x6d, 0xe2, 0x42, 0x1c, 0x1b, 0x4b, 0xa7, 0x05, 0x06,
+ 0xd9, 0xd8, 0xc7, 0xe0, 0x7a, 0x7b, 0x4f, 0x3e, 0x7f, 0x3a, 0xc0, 0x6f,
+ 0xcf, 0x76, 0x5e, 0x88, 0xb6, 0x74, 0x7c, 0x74, 0xf1, 0xa6, 0xa9, 0x71,
+ 0x14, 0xa4, 0xab, 0xc9, 0xbf, 0xc3, 0x24, 0x2e, 0xae, 0xe3, 0xa2, 0xe2,
+ 0xb8, 0xa9, 0x61, 0xb9, 0xa8, 0x96, 0xc3, 0x9d, 0x9d, 0x51, 0x45, 0x0c,
+ 0xa5, 0x56, 0xf7, 0xe0, 0xe9, 0x68, 0x67, 0xeb, 0xb7, 0x24, 0x20, 0x36,
+ 0xd1, 0x0d, 0x79, 0x85, 0xa3, 0x97, 0x6b, 0x0a, 0x96, 0x6f, 0xf2, 0x12,
+ 0x6e, 0x39, 0x1a, 0x72, 0xa5, 0x40, 0x82, 0xd2, 0xf0, 0xa9, 0x37, 0xf7,
+ 0x38, 0x6c, 0x34, 0x47, 0x02, 0x5d, 0xd5, 0x46, 0x9a, 0xac, 0xd6, 0x21,
+ 0x52, 0x6d, 0x5a, 0xd9, 0x0e, 0xa9, 0x13, 0x18, 0x2b, 0x3a, 0x7d, 0x05,
+ 0x7d, 0x1a, 0x06, 0xc2, 0x35, 0x65, 0x73, 0x05, 0x8d, 0xa1, 0x48, 0x18,
+ 0x80, 0x48, 0x2e, 0x21, 0x8d, 0xa7, 0xb0, 0xca, 0xd9, 0x0f, 0x14, 0x97,
+ 0xd8, 0x7b, 0x56, 0x2f, 0xea, 0x8e, 0x35, 0x01, 0xe3, 0xfb, 0x95, 0x6b,
+ 0xe2, 0xef, 0x3d, 0x11, 0x28, 0x61, 0xb3, 0x76, 0x19, 0x7c, 0x6d, 0xd8,
+ 0x85, 0xd2, 0xa0, 0xbe, 0x1f, 0x1e, 0xe6, 0x4e, 0x73, 0x98, 0x1f, 0x51,
+ 0x3a, 0x0f, 0x36, 0xe2, 0x97, 0x10, 0xdf, 0x3f, 0x51, 0xf3, 0xc3, 0x1b,
+ 0x9b, 0xa6, 0xc5, 0x6c, 0x79, 0x48, 0x71, 0x81, 0xee, 0x11, 0xcd, 0x8e,
+ 0x0d, 0x2a, 0xeb, 0x62, 0x0e, 0xbd, 0xb1, 0x2f, 0xad, 0x27, 0xbd, 0x81,
+ 0x2c, 0xc1, 0xa6, 0x07, 0x75, 0xb0, 0x99, 0x2e, 0x21, 0x18, 0xae, 0x6b,
+ 0x4e, 0x50, 0xc1, 0x69, 0x09, 0xed, 0x2f, 0xa8, 0x0b, 0x01, 0x93, 0x64,
+ 0xf2, 0x11, 0xe1, 0x7f, 0xa4, 0xd3, 0x3f, 0x7f, 0xd2, 0x36, 0x81, 0x9f,
+ 0x5e, 0x1c, 0xed, 0x87, 0x45, 0x6b, 0xc4, 0x5c, 0xae, 0x96, 0x2a, 0x09,
+ 0xd8, 0xe3, 0xcc, 0x6f, 0xc6, 0x48, 0x61, 0x00, 0xd5, 0x60, 0x76, 0x83,
+ 0x0e, 0xf4, 0x38, 0xe4, 0x08, 0x72, 0x75, 0x22, 0x71, 0x81, 0x54, 0xad,
+ 0xe0, 0x06, 0x0b, 0x67, 0xb0, 0xda, 0xe1, 0xde, 0xb6, 0xd0, 0x55, 0x9d,
+ 0x15, 0xd3, 0x96, 0xca, 0x35, 0x0c, 0xe6, 0x25, 0x14, 0xda, 0x5a, 0x2c,
+ 0xa1, 0x10, 0x48, 0xea, 0x56, 0x7c, 0x21, 0xa7, 0xdb, 0xb1, 0x68, 0x45,
+ 0x66, 0x40, 0xed, 0x66, 0x9f, 0x0d, 0xb2, 0xdf, 0x2e, 0x0c, 0xc2, 0xea,
+ 0xb2, 0x91, 0x9d, 0x0a, 0xe2, 0x2d, 0xa6, 0xcb, 0xea, 0xd7, 0x12, 0xef,
+ 0xc0, 0x83, 0x31, 0x8b, 0x24, 0x26, 0x61, 0x7a, 0xf0, 0x10, 0x75, 0x95,
+ 0xfd, 0x85, 0x15, 0x51, 0xfd, 0x29, 0xe2, 0xac, 0x01, 0xb9, 0xdb, 0xe0,
+ 0x2c, 0x24, 0x77, 0x9a, 0x2e, 0xd3, 0x00, 0xaa, 0xd5, 0xdd, 0x0f, 0x71,
+ 0x3b, 0x41, 0x9d, 0xbd, 0x22, 0x68, 0xc3, 0x1d, 0xa7, 0xdc, 0x67, 0xb9,
+ 0x4b, 0xe3, 0xf9, 0xe8, 0x81, 0xa3, 0x11, 0x0e, 0x2c, 0x1c, 0x19, 0xaa,
+ 0xa1, 0x38, 0x56, 0x83, 0x5a, 0x48, 0x8e, 0x03, 0x6d, 0x7e, 0x77, 0xfe,
+ 0xe6, 0xcf, 0x66, 0xef, 0xd9, 0x1a, 0x74, 0x1a, 0xd3, 0x1b, 0x53, 0xa8,
+ 0x05, 0xf4, 0xab, 0x44, 0x51, 0x5b, 0x3a, 0xff, 0x47, 0x07, 0xb1, 0xcd,
+ 0x72, 0xc4, 0x1b, 0x6d, 0x72, 0x35, 0x0e, 0xae, 0xac, 0xae, 0x62, 0xff,
+ 0x93, 0xd1, 0x33, 0xb8, 0xa2, 0xde, 0x1c, 0x3e, 0x7b, 0xb2, 0xb7, 0xbb,
+ 0x35, 0x6a, 0xdf, 0x06, 0x1b, 0x9f, 0xb4, 0xfe, 0x6e, 0xcb, 0x92, 0x8f,
+ 0x4b, 0x26, 0x98, 0xcd, 0xa3, 0x1f, 0xce, 0xde, 0xd5, 0xe7, 0x27, 0x33,
+ 0x6a, 0x89, 0x75, 0xeb, 0x66, 0xe8, 0x0d, 0x89, 0xb5, 0xf6, 0x2d, 0x89,
+ 0x10, 0x07, 0xa7, 0x0d, 0x4c, 0xd1, 0x7b, 0x53, 0xa4, 0x7c, 0x06, 0x7a,
+ 0xbc, 0x20, 0xbd, 0x13, 0x12, 0x5e, 0x49, 0x31, 0x39, 0x65, 0x68, 0xaa,
+ 0xa4, 0xd7, 0xc0, 0x92, 0xaa, 0xcf, 0xae, 0x66, 0xc0, 0x86, 0x3a, 0xd9,
+ 0xa1, 0x48, 0x7a, 0x96, 0xa6, 0x6a, 0x24, 0x5c, 0xff, 0xa6, 0x0c, 0xb0,
+ 0x0e, 0xe4, 0xec, 0xb7, 0x0a, 0x4f, 0xa1, 0x61, 0x19, 0xa4, 0xf0, 0xb4,
+ 0xb0, 0x6a, 0x9c, 0xdb, 0xc6, 0x79, 0x22, 0xd6, 0x41, 0x7f, 0x22, 0x84,
+ 0x27, 0xa9, 0x57, 0xb8, 0x69, 0x17, 0x11, 0xb4, 0x30, 0x9b, 0x60, 0x38,
+ 0x25, 0x32, 0xa3, 0x48, 0xa8, 0x28, 0x57, 0xc5, 0x6c, 0xb5, 0xa0, 0x15,
+ 0xf8, 0xea, 0xde, 0xc2, 0x8e, 0xf4, 0xc2, 0x86, 0xca, 0xde, 0xce, 0x69,
+ 0x48, 0x60, 0xfa, 0x7a, 0xb6, 0x53, 0x6b, 0x6d, 0x84, 0x45, 0x68, 0x18,
+ 0x57, 0x87, 0xbb, 0xae, 0xf4, 0x1a, 0x27, 0x1c, 0x8a, 0x75, 0xb0, 0x69,
+ 0x73, 0xe3, 0x8b, 0xfb, 0xb7, 0x94, 0x2a, 0x92, 0x2a, 0x66, 0xb9, 0xff,
+ 0xf1, 0x24, 0xfd, 0x9a, 0x19, 0x5c, 0x1c, 0xf5, 0x52, 0x11, 0x1a, 0x65,
+ 0xec, 0x5c, 0x9e, 0x25, 0xc3, 0x18, 0xb5, 0x68, 0xeb, 0xad, 0xf6, 0x22,
+ 0x3c, 0x78, 0x13, 0x0c, 0xd2, 0x02, 0x28, 0x44, 0xfa, 0x7b, 0x1a, 0x6d,
+ 0xb2, 0x44, 0x16, 0x3d, 0xfb, 0xfc, 0xd9, 0xd3, 0x2d, 0x55, 0xf9, 0x5d,
+ 0x7c, 0xce, 0x56, 0x97, 0xf3, 0x0d, 0xeb, 0xb6, 0x2a, 0x1d, 0x88, 0xf4,
+ 0x22, 0x45, 0x7d, 0x28, 0xd0, 0xba, 0xba, 0xf1, 0xa4, 0xcc, 0x0e, 0x94,
+ 0x71, 0x98, 0x94, 0x2c, 0x06, 0xb7, 0xd9, 0x1c, 0x75, 0x26, 0xc5, 0xa5,
+ 0xa2, 0x4d, 0x1c, 0x8e, 0xa0, 0x4e, 0x47, 0xe4, 0xb2, 0xd1, 0x71, 0x55,
+ 0xc9, 0xd5, 0xe0, 0xf2, 0x2d, 0xd8, 0x86, 0x71, 0x5c, 0x75, 0x9a, 0xbe,
+ 0xc5, 0xc5, 0x14, 0x96, 0x3a, 0x44, 0x59, 0xbf, 0x3c, 0xb8, 0x8b, 0xc4,
+ 0x19, 0x00, 0x83, 0xbf, 0xde, 0x75, 0x5d, 0xc8, 0x8a, 0x24, 0xbd, 0xc2,
+ 0xdc, 0xc7, 0x77, 0x67, 0x7d, 0x1d, 0x05, 0xbd, 0x8a, 0xb7, 0xdf, 0xde,
+ 0xd7, 0x70, 0x1e, 0x5f, 0x5a, 0xb0, 0x6d, 0x6d, 0x5b, 0x24, 0x0b, 0x43,
+ 0x32, 0x96, 0x5b, 0x3d, 0x2f, 0x7c, 0xbd, 0x19, 0xb1, 0xe7, 0xc8, 0x05,
+ 0x8d, 0x18, 0xc6, 0x75, 0xb0, 0x10, 0xbe, 0xbc, 0xb7, 0x42, 0x18, 0xd4,
+ 0x46, 0xb6, 0xa6, 0xba, 0x84, 0x23, 0xb6, 0x30, 0xb9, 0x58, 0xdd, 0x50,
+ 0x08, 0x69, 0xb5, 0xdf, 0x1d, 0x51, 0xb6, 0x6b, 0xae, 0x48, 0xa7, 0x8d,
+ 0x75, 0x58, 0x33, 0x78, 0x29, 0xbb, 0x82, 0x9c, 0x70, 0xe8, 0x36, 0xc3,
+ 0x76, 0xb6, 0x4a, 0xb4, 0x89, 0xf1, 0x6e, 0x6f, 0x6f, 0x3d, 0x3a, 0x66,
+ 0x7d, 0xf0, 0xb1, 0x31, 0x9e, 0x89, 0xb2, 0x91, 0x85, 0x75, 0x2a, 0xfc,
+ 0x10, 0xb8, 0x4b, 0xde, 0x2f, 0x41, 0xba, 0x95, 0xa0, 0x46, 0xb1, 0xbf,
+ 0xb3, 0xd0, 0x12, 0x91, 0x1c, 0xd4, 0x01, 0xc8, 0x03, 0x64, 0xd8, 0x58,
+ 0xe7, 0x57, 0x9f, 0xba, 0x0a, 0xaf, 0x92, 0xac, 0xae, 0x5c, 0x41, 0xb3,
+ 0x35, 0x38, 0x94, 0xb1, 0x55, 0x3a, 0x2c, 0x0b, 0xf2, 0x4c, 0x38, 0x36,
+ 0x27, 0x98, 0x9f, 0x9c, 0x2a, 0xef, 0x54, 0x96, 0x33, 0x68, 0x4a, 0x82,
+ 0x38, 0x9f, 0xdb, 0xac, 0xd8, 0x3d, 0xdd, 0x28, 0xbf, 0x38, 0x6a, 0x01,
+ 0x51, 0xc9, 0x93, 0x7c, 0x7c, 0xcc, 0x23, 0x9d, 0x66, 0x1d, 0x52, 0xab,
+ 0x77, 0x1d, 0xa2, 0x41, 0xd2, 0xf1, 0x6f, 0xfc, 0x9c, 0x05, 0x50, 0xce,
+ 0x92, 0xd5, 0x02, 0xbc, 0x80, 0x12, 0xc3, 0xed, 0xc6, 0x55, 0x70, 0xd4,
+ 0x8d, 0x15, 0xb3, 0x52, 0x69, 0xf8, 0xb4, 0xb6, 0x98, 0x03, 0x39, 0xa1,
+ 0x08, 0xb5, 0xef, 0x12, 0x82, 0x01, 0xdc, 0xff, 0xa0, 0xd8, 0x0f, 0x70,
+ 0x96, 0xf4, 0xb2, 0x51, 0x1c, 0x54, 0x2e, 0x8b, 0x89, 0x5b, 0x68, 0x0d,
+ 0x48, 0x1b, 0x05, 0x37, 0x68, 0xc6, 0x56, 0xa6, 0x2c, 0xa9, 0x8a, 0x69,
+ 0xcb, 0xb0, 0xe4, 0x9c, 0xe1, 0xe5, 0x54, 0x4d, 0xdf, 0x23, 0x3c, 0x48,
+ 0x5d, 0x7f, 0xd0, 0x5f, 0x98, 0x45, 0x6b, 0x22, 0xc4, 0x96, 0xf9, 0xa9,
+ 0x34, 0x28, 0xa8, 0x23, 0xe6, 0xbd, 0x5f, 0xba, 0x20, 0x7d, 0x0d, 0x92,
+ 0x62, 0x1e, 0x29, 0x1a, 0xb3, 0x40, 0x56, 0x65, 0xb3, 0xc8, 0xfb, 0xcb,
+ 0x1d, 0xde, 0xfa, 0xfd, 0xb2, 0x15, 0xfd, 0x1a, 0x94, 0x62, 0xe6, 0x36,
+ 0x00, 0xc2, 0x20, 0xc9, 0x1f, 0x3e, 0x6e, 0x01, 0xba, 0x01, 0x0b, 0xc1,
+ 0xa1, 0xdf, 0x56, 0x2b, 0x86, 0x75, 0x8c, 0x2e, 0x6a, 0x19, 0x11, 0x60,
+ 0xba, 0xc1, 0x4c, 0x37, 0xe9, 0x66, 0x60, 0x76, 0x5e, 0x2d, 0x37, 0x77,
+ 0xb7, 0x04, 0x98, 0x57, 0x8b, 0xa7, 0x74, 0x26, 0x83, 0x5a, 0x35, 0x69,
+ 0x04, 0x77, 0x1d, 0xba, 0xbe, 0xe1, 0xc1, 0x65, 0xc0, 0x74, 0x04, 0x91,
+ 0x5f, 0xea, 0x61, 0x90, 0x55, 0x73, 0x55, 0x1f, 0xd8, 0xff, 0xd5, 0xa5,
+ 0x0e, 0x0b, 0x0c, 0xd4, 0x92, 0xb3, 0x1d, 0x4a, 0x29, 0x62, 0xb7, 0xe9,
+ 0x11, 0xfa, 0xe5, 0x82, 0xb0, 0x62, 0xc8, 0xb4, 0x7c, 0xf3, 0xd9, 0x90,
+ 0x07, 0x7c, 0x55, 0xe4, 0x6d, 0xa8, 0x4e, 0x4e, 0x14, 0xd3, 0x2b, 0xe4,
+ 0x62, 0x5d, 0xf1, 0xe9, 0x1e, 0x67, 0xe5, 0xf4, 0xc2, 0xa2, 0xee, 0x92,
+ 0xfc, 0xd3, 0x31, 0xd9, 0xfa, 0x96, 0xb6, 0xc8, 0xf4, 0x80, 0xb3, 0x0b,
+ 0xd3, 0xa9, 0x9d, 0x72, 0x29, 0x4e, 0x80, 0x44, 0x0f, 0x86, 0xfa, 0x52,
+ 0x9e, 0x4e, 0x0c, 0x44, 0x63, 0x1d, 0x60, 0xd2, 0x26, 0x96, 0xa3, 0xa4,
+ 0xd6, 0x51, 0x67, 0x9b, 0x6d, 0x87, 0x26, 0x0c, 0x00, 0xa4, 0x37, 0x57,
+ 0x81, 0x13, 0x81, 0x7c, 0x12, 0xd9, 0x21, 0x82, 0x33, 0x73, 0x76, 0xa1,
+ 0x02, 0xd9, 0xdf, 0x0e, 0x0f, 0x6a, 0x7f, 0x71, 0xcf, 0x37, 0x59, 0xbf,
+ 0x46, 0x7a, 0x51, 0xbf, 0x64, 0x83, 0x60, 0xd5, 0xb7, 0xe5, 0x6d, 0x24,
+ 0x95, 0xb5, 0xab, 0x41, 0xac, 0xe9, 0x5b, 0x48, 0x5b, 0xba, 0xf0, 0xad,
+ 0x4b, 0xe3, 0xfe, 0x08, 0xbe, 0x1b, 0x48, 0xe0, 0xfb, 0x64, 0xc5, 0xe1,
+ 0x26, 0xcd, 0x4a, 0xa9, 0xc2, 0xaf, 0x45, 0x2c, 0x90, 0x27, 0xb4, 0xca,
+ 0x9d, 0x47, 0x79, 0x61, 0xfc, 0x9f, 0x24, 0x5e, 0x84, 0xb5, 0x22, 0x51,
+ 0xd0, 0xb9, 0x6c, 0x0b, 0x75, 0x2b, 0x90, 0x76, 0x19, 0x9e, 0x88, 0x46,
+ 0x6c, 0xa2, 0xf4, 0x81, 0x00, 0x14, 0x69, 0x5c, 0x5b, 0xef, 0x04, 0xa9,
+ 0x44, 0x03, 0x0e, 0x6d, 0x42, 0x35, 0x5f, 0xb9, 0x7b, 0xd4, 0xb4, 0xaa,
+ 0x8d, 0x38, 0xdc, 0x7d, 0x5a, 0x8f, 0xe9, 0xf5, 0x2a, 0xbb, 0xa1, 0x21,
+ 0xb4, 0xc3, 0x9e, 0xcd, 0xc9, 0x91, 0xa2, 0xe6, 0x89, 0x14, 0x50, 0x35,
+ 0x48, 0x09, 0x79, 0x9d, 0x01, 0xb3, 0x6e, 0x91, 0xc2, 0xaa, 0x75, 0x4c,
+ 0x1e, 0x0a, 0x57, 0x13, 0xdb, 0xae, 0x2c, 0xa0, 0x8c, 0xca, 0x2d, 0xe0,
+ 0xc3, 0x69, 0x90, 0x56, 0x15, 0x43, 0x02, 0xa2, 0xae, 0x82, 0x78, 0x08,
+ 0xe1, 0x53, 0x86, 0x06, 0xc3, 0x97, 0x8d, 0x5a, 0x3a, 0x5b, 0x47, 0x76,
+ 0x55, 0x8a, 0x73, 0x5c, 0xb7, 0x95, 0xc9, 0x34, 0x04, 0x31, 0xec, 0x18,
+ 0x89, 0xf2, 0xe1, 0x61, 0x47, 0x11, 0xc0, 0x8b, 0x46, 0x39, 0x62, 0x47,
+ 0x8a, 0xf6, 0xd2, 0xa0, 0x86, 0x61, 0x0b, 0x27, 0xa4, 0x25, 0x10, 0x74,
+ 0x1c, 0x59, 0xa9, 0x3d, 0xb3, 0x49, 0x2a, 0x46, 0x3e, 0x5f, 0x55, 0x92,
+ 0xf8, 0xcc, 0x66, 0x31, 0xce, 0x27, 0xd9, 0xb2, 0x03, 0x25, 0x07, 0xd0,
+ 0x85, 0x45, 0x08, 0x1f, 0xeb, 0xc4, 0x16, 0x45, 0xd4, 0xb7, 0x33, 0xf9,
+ 0x4a, 0x54, 0x96, 0xaa, 0xee, 0xac, 0x00, 0xe8, 0x5d, 0x21, 0x7c, 0x8e,
+ 0xf5, 0x58, 0xe4, 0x4c, 0x3a, 0x26, 0xdb, 0xb2, 0x20, 0x99, 0x32, 0x51,
+ 0x5b, 0x90, 0xc0, 0x06, 0x0c, 0xe9, 0xc0, 0x57, 0x77, 0x72, 0xc5, 0x0d,
+ 0x4c, 0xe3, 0x78, 0x30, 0x48, 0xe2, 0x81, 0x98, 0xc0, 0x8e, 0xb5, 0xb6,
+ 0x6a, 0x0d, 0x02, 0x90, 0xab, 0x22, 0xbf, 0x0e, 0x8b, 0x65, 0x75, 0x89,
+ 0x6a, 0x95, 0x11, 0x2d, 0x56, 0xec, 0x68, 0x68, 0xd9, 0x9a, 0x69, 0x5f,
+ 0xe6, 0x2b, 0x01, 0x09, 0x67, 0xa7, 0xb5, 0xfa, 0xcb, 0x48, 0x42, 0x8f,
+ 0x27, 0xbc, 0x3b, 0x93, 0x7b, 0x37, 0x4d, 0x4b, 0xb2, 0x47, 0x36, 0xbc,
+ 0xa9, 0xd4, 0x6d, 0xf2, 0xb0, 0xc7, 0x1a, 0xfd, 0x7c, 0x67, 0x8c, 0xb5,
+ 0x45, 0x19, 0xe2, 0x09, 0x09, 0x31, 0x41, 0x6e, 0x94, 0x9f, 0x28, 0x93,
+ 0x5d, 0x75, 0xd8, 0x4c, 0xdd, 0x60, 0x4c, 0x5c, 0x67, 0x9b, 0x40, 0x2c,
+ 0xa5, 0x48, 0x14, 0x77, 0x45, 0x97, 0xc1, 0x12, 0x63, 0xf2, 0x7a, 0x1e,
+ 0x96, 0x95, 0x70, 0x5e, 0x83, 0xe5, 0x72, 0xa4, 0x85, 0x3b, 0xdf, 0xd9,
+ 0x63, 0xd1, 0xe6, 0xf8, 0xec, 0xdd, 0xd1, 0xd7, 0xa7, 0x5b, 0x8f, 0xb9,
+ 0x16, 0x14, 0xd2, 0x10, 0x61, 0x28, 0x38, 0x54, 0x38, 0xde, 0x1d, 0xed,
+ 0xc0, 0xef, 0x04, 0x88, 0xb9, 0xf0, 0x6a, 0xef, 0x0a, 0xba, 0x1b, 0x48,
+ 0x36, 0xaa, 0x9c, 0x57, 0xc1, 0xb5, 0x73, 0xc3, 0xff, 0xd4, 0x80, 0xff,
+ 0xb8, 0x2b, 0xdc, 0xff, 0xeb, 0xf1, 0x78, 0x78, 0x70, 0x76, 0x2c, 0xd5,
+ 0xab, 0xe9, 0xe7, 0x1a, 0xe0, 0xec, 0xae, 0xe8, 0x7e, 0x31, 0x8f, 0x73,
+ 0xc8, 0x60, 0x3d, 0xc0, 0x3f, 0x88, 0xe9, 0x47, 0xf3, 0xcd, 0xeb, 0xf6,
+ 0xec, 0x78, 0x1b, 0x5d, 0xc1, 0xb1, 0x81, 0x95, 0xe8, 0x8e, 0xe9, 0x6b,
+ 0x57, 0x2e, 0x11, 0x74, 0x3f, 0xe4, 0x6c, 0x80, 0x40, 0x8d, 0x81, 0xc4,
+ 0x24, 0x7f, 0x92, 0xc2, 0x3b, 0x5c, 0x19, 0x92, 0x60, 0x37, 0x8c, 0x11,
+ 0xdb, 0xd3, 0x39, 0x23, 0xcd, 0xc0, 0xe1, 0x1b, 0xf6, 0x7b, 0xd8, 0x67,
+ 0x05, 0x6e, 0x91, 0xc1, 0xb1, 0x49, 0xb6, 0xd2, 0xf0, 0x96, 0xa6, 0x71,
+ 0xaf, 0x3f, 0x24, 0xe6, 0xb5, 0xdf, 0x97, 0x7c, 0x8d, 0x24, 0xe3, 0x42,
+ 0xbb, 0x91, 0x9d, 0xb5, 0x28, 0xb0, 0x97, 0xd5, 0x6e, 0x6c, 0x87, 0xb6,
+ 0x33, 0x5c, 0x75, 0x8f, 0x8e, 0x8e, 0x28, 0x8b, 0x57, 0xe2, 0x0d, 0x54,
+ 0xd1, 0xf1, 0x9f, 0x82, 0x8b, 0x1b, 0x1e, 0x89, 0x20, 0xb9, 0xed, 0xa1,
+ 0x6b, 0x5e, 0xf9, 0x8c, 0x4f, 0x84, 0x53, 0xb7, 0x86, 0x8b, 0x00, 0xbf,
+ 0x38, 0x3c, 0xab, 0x55, 0x42, 0x6f, 0x59, 0x3d, 0x26, 0xf7, 0x3e, 0x47,
+ 0x1c, 0xc9, 0xb9, 0x99, 0x6b, 0x7d, 0x31, 0x5a, 0x5f, 0xd8, 0xb0, 0x0a,
+ 0x2a, 0x1c, 0x75, 0xdd, 0x7b, 0xb5, 0x8b, 0xcf, 0x15, 0xff, 0x5c, 0x7f,
+ 0xf5, 0xf9, 0x19, 0x04, 0xb7, 0x9f, 0xfb, 0xb0, 0xb1, 0x34, 0x8a, 0x25,
+ 0x95, 0xce, 0x3a, 0x33, 0xb5, 0x6c, 0x85, 0xac, 0x16, 0x8a, 0xae, 0x11,
+ 0xe3, 0x00, 0x19, 0x66, 0xd7, 0xf1, 0x6b, 0x1a, 0x0d, 0x0b, 0x62, 0xa4,
+ 0x80, 0x06, 0x36, 0xb3, 0xb6, 0x00, 0xe9, 0x8d, 0xe2, 0xe0, 0xdc, 0x28,
+ 0xdb, 0xed, 0x2d, 0x97, 0xdc, 0x46, 0x32, 0x0a, 0x56, 0x45, 0x6b, 0xdc,
+ 0x2a, 0x60, 0x5c, 0x37, 0xce, 0x2c, 0x9b, 0xfb, 0x0b, 0x89, 0x3a, 0x8c,
+ 0xae, 0x57, 0x85, 0x40, 0x1a, 0x28, 0x20, 0x91, 0x22, 0x6d, 0x17, 0x09,
+ 0x8f, 0xb9, 0x3e, 0xe0, 0x56, 0x0d, 0x3e, 0x51, 0xca, 0xe9, 0xd8, 0x2f,
+ 0x34, 0x09, 0x61, 0x52, 0xe4, 0x37, 0x74, 0x5a, 0xf9, 0x35, 0x57, 0x91,
+ 0x5d, 0x64, 0x38, 0xd3, 0x2d, 0xe9, 0x46, 0x99, 0x39, 0xbf, 0x68, 0x47,
+ 0x04, 0x2a, 0x6a, 0x0f, 0x68, 0x8c, 0x83, 0x17, 0x86, 0x04, 0x16, 0x1e,
+ 0xd9, 0x7c, 0x06, 0x24, 0x0a, 0xf1, 0x9b, 0xeb, 0x5f, 0xfb, 0x60, 0xc2,
+ 0xb6, 0x87, 0x5b, 0xe1, 0xfc, 0xff, 0x79, 0x34, 0xe4, 0xc8, 0x22, 0xa4,
+ 0xa1, 0x8e, 0x2d, 0xaf, 0x11, 0x93, 0x70, 0xfd, 0x97, 0x44, 0x55, 0xc2,
+ 0xcd, 0xd9, 0x32, 0xd7, 0xb4, 0x0d, 0xa3, 0x2a, 0xc6, 0x30, 0x80, 0xcc,
+ 0x11, 0x53, 0x35, 0x54, 0x11, 0x8e, 0x4b, 0x91, 0x30, 0x8e, 0x99, 0x2f,
+ 0xe5, 0xa3, 0x78, 0xa5, 0xd0, 0xb3, 0xdb, 0x62, 0x06, 0x8b, 0x65, 0xee,
+ 0xd2, 0x16, 0x7f, 0x13, 0xf8, 0x04, 0x6f, 0x0f, 0xc0, 0xd2, 0x90, 0x5a,
+ 0xae, 0x6e, 0x94, 0x3f, 0x84, 0x70, 0x24, 0xd2, 0x53, 0x4b, 0xa5, 0x10,
+ 0x78, 0x7b, 0x17, 0x27, 0x23, 0x09, 0x84, 0x2e, 0xed, 0x97, 0x81, 0x8f,
+ 0x43, 0x9e, 0x21, 0x50, 0xaa, 0xd1, 0x11, 0x07, 0xbd, 0x74, 0xe8, 0x39,
+ 0x96, 0x24, 0x8a, 0x39, 0xa6, 0x8a, 0xc3, 0x29, 0x2e, 0x09, 0x55, 0x1a,
+ 0x63, 0xf3, 0x36, 0x58, 0xf8, 0x8b, 0x2b, 0xfa, 0xda, 0xa9, 0xf3, 0x95,
+ 0x95, 0xda, 0xf4, 0xad, 0x96, 0x85, 0x7d, 0xe4, 0x90, 0xed, 0xdf, 0xf8,
+ 0x48, 0xef, 0x81, 0x58, 0x90, 0x44, 0x1f, 0xeb, 0x10, 0x20, 0x31, 0x9a,
+ 0xc8, 0x3f, 0x34, 0x08, 0x7e, 0xdf, 0xff, 0x7c, 0xc7, 0x62, 0x7d, 0xd9,
+ 0x68, 0x17, 0x3e, 0x03, 0xe8, 0xc6, 0x0e, 0x35, 0x02, 0xc8, 0x81, 0x79,
+ 0xe5, 0x1e, 0x6d, 0xd6, 0xa3, 0x78, 0x31, 0x7a, 0xba, 0x55, 0xa3, 0x97,
+ 0x6a, 0xbe, 0x70, 0xc8, 0x9a, 0x26, 0x98, 0x44, 0xef, 0x2e, 0x4e, 0xde,
+ 0x76, 0xd8, 0x04, 0xe0, 0x48, 0xc4, 0x77, 0xf5, 0xaf, 0x5a, 0xc6, 0x4e,
+ 0x04, 0x63, 0x73, 0x2c, 0x39, 0x89, 0x8f, 0xe9, 0x55, 0x26, 0xd8, 0xff,
+ 0x6f, 0xd3, 0x69, 0x91, 0x97, 0xf9, 0xa5, 0xb8, 0x33, 0xed, 0x82, 0xa1,
+ 0x2f, 0x8e, 0x8f, 0xc7, 0xd1, 0x5d, 0x32, 0xb1, 0x64, 0xab, 0x56, 0x68,
+ 0xa1, 0xe4, 0x2f, 0x82, 0x04, 0x97, 0x45, 0x9a, 0x54, 0x2c, 0x68, 0x98,
+ 0x5d, 0x8f, 0x13, 0xb0, 0xf9, 0xa5, 0x64, 0x98, 0x64, 0xa4, 0x70, 0x26,
+ 0x50, 0xdf, 0xb8, 0xd0, 0xc0, 0x1c, 0x5c, 0x69, 0x99, 0xe4, 0x1d, 0x96,
+ 0x5d, 0x19, 0x80, 0xb1, 0x14, 0x59, 0x1b, 0xdc, 0x15, 0x93, 0xb8, 0x74,
+ 0xe0, 0x53, 0x69, 0xc1, 0x14, 0xc7, 0xc2, 0x86, 0x9a, 0x63, 0x6e, 0x52,
+ 0x64, 0xf9, 0xb7, 0xb2, 0xdf, 0xb5, 0xfa, 0xa4, 0x63, 0x87, 0x66, 0x90,
+ 0xc8, 0x66, 0x79, 0x01, 0x37, 0x49, 0x80, 0xa6, 0xcc, 0x68, 0xfe, 0x2b,
+ 0x04, 0x7f, 0xf2, 0xf0, 0xee, 0x3b, 0x24, 0xf6, 0xeb, 0x5c, 0x62, 0x2f,
+ 0xb1, 0xcc, 0xcc, 0x95, 0x24, 0x2f, 0x10, 0x41, 0x5a, 0x0a, 0x4e, 0xab,
+ 0x65, 0x8f, 0x8c, 0x95, 0x3c, 0x26, 0xe1, 0xd9, 0x7e, 0xf8, 0xec, 0x24,
+ 0xb5, 0xb6, 0xbf, 0x4e, 0xaf, 0xd6, 0x20, 0xe4, 0x8b, 0x16, 0xd5, 0x14,
+ 0x33, 0x79, 0x44, 0xca, 0x2f, 0x0b, 0x15, 0x2e, 0x9b, 0xa5, 0x58, 0x3a,
+ 0xd0, 0x40, 0x6a, 0x92, 0x25, 0x51, 0xdb, 0x83, 0x55, 0x76, 0x1f, 0x16,
+ 0x29, 0x71, 0x81, 0x68, 0xee, 0xa8, 0x16, 0xfb, 0x21, 0xc1, 0xb1, 0x65,
+ 0x1d, 0x6d, 0x27, 0x89, 0x4a, 0xb0, 0x3a, 0x94, 0x38, 0x13, 0x20, 0x79,
+ 0x36, 0xa3, 0x7f, 0x46, 0x5d, 0x39, 0x7f, 0xd8, 0x72, 0x16, 0x22, 0xd5,
+ 0x28, 0xd0, 0x99, 0x0d, 0xf0, 0xbd, 0xc0, 0x2a, 0xa9, 0xd9, 0x20, 0xd7,
+ 0x87, 0xc2, 0x14, 0xbc, 0xb2, 0x9a, 0xe5, 0x0c, 0x6d, 0xab, 0x8a, 0x00,
+ 0x5f, 0xe1, 0x72, 0x7b, 0xff, 0xc7, 0xdf, 0xdb, 0xf9, 0x48, 0x3f, 0xfe,
+ 0x2c, 0x92, 0xb4, 0x00, 0x68, 0x78, 0x34, 0x09, 0x23, 0x9d, 0xd2, 0x57,
+ 0xfe, 0xe0, 0x4d, 0x62, 0xa4, 0x28, 0x71, 0xcb, 0xc9, 0x11, 0x6a, 0x0a,
+ 0xa7, 0xea, 0x42, 0xd4, 0xab, 0x57, 0xc7, 0x66, 0x7c, 0x1f, 0x60, 0xc3,
+ 0x71, 0x60, 0x45, 0x13, 0x8b, 0x23, 0x47, 0xbc, 0x28, 0x90, 0xf4, 0x6c,
+ 0x1d, 0x0e, 0xb9, 0xc1, 0xcd, 0xd4, 0x6b, 0xce, 0x00, 0xe8, 0x43, 0x1c,
+ 0x3f, 0x18, 0x3f, 0xdf, 0x2c, 0x27, 0x52, 0xc5, 0xb1, 0x0d, 0xa7, 0x2a,
+ 0x7b, 0xab, 0xfe, 0x8d, 0xff, 0xa0, 0xbd, 0x18, 0x54, 0x77, 0xf9, 0xdf,
+ 0x47, 0x1c, 0xd4, 0x08, 0xc6, 0x3b, 0xcc, 0xa5, 0xc4, 0xf6, 0x87, 0xdf,
+ 0xed, 0x72, 0x08, 0x51, 0xaf, 0x5d, 0x3a, 0x1b, 0x2b, 0x60, 0x5b, 0xec,
+ 0x50, 0x78, 0xd6, 0xa0, 0xb7, 0xd6, 0xbb, 0xe3, 0x5e, 0x06, 0x7c, 0x05,
+ 0xfc, 0x7d, 0xc4, 0xff, 0xfe, 0xb8, 0x3b, 0x7c, 0xf6, 0xb3, 0xeb, 0xf5,
+ 0x77, 0xbb, 0x1f, 0x7e, 0xb7, 0xd7, 0xeb, 0xac, 0x1d, 0xaf, 0x89, 0x81,
+ 0xf5, 0x88, 0xbe, 0x12, 0xc5, 0x4b, 0x35, 0x84, 0x56, 0xb5, 0x4d, 0x5f,
+ 0x37, 0x01, 0x85, 0x59, 0xda, 0x69, 0x1f, 0x6c, 0x85, 0x7a, 0x04, 0x0a,
+ 0x3d, 0xac, 0xe1, 0x1b, 0x68, 0x2d, 0x5a, 0xd2, 0x56, 0xc3, 0xb7, 0xa6,
+ 0x82, 0xb5, 0x0d, 0x73, 0x66, 0xcb, 0x72, 0x0a, 0x8c, 0x84, 0xd9, 0x3d,
+ 0xdd, 0x73, 0x82, 0xb4, 0x3a, 0x72, 0xe1, 0x33, 0x26, 0x3d, 0x2a, 0xe1,
+ 0x2a, 0x46, 0xd7, 0xa6, 0xbb, 0xf1, 0x19, 0x51, 0x6e, 0xab, 0xcb, 0x32,
+ 0xe1, 0x4d, 0x42, 0x9e, 0xe6, 0xb5, 0xe0, 0x2a, 0x0e, 0xaf, 0x10, 0xbb,
+ 0x3f, 0x40, 0x4d, 0xb4, 0xd3, 0x47, 0x8e, 0x4f, 0x1c, 0x3a, 0xa7, 0xa4,
+ 0x68, 0x91, 0x96, 0x8f, 0x77, 0x18, 0xe0, 0xf8, 0xea, 0x2e, 0x81, 0xf4,
+ 0xda, 0xbc, 0x77, 0x36, 0x4f, 0x9d, 0xae, 0x83, 0xc7, 0x42, 0x90, 0xfb,
+ 0xf0, 0xf5, 0xc0, 0x1d, 0x9e, 0x44, 0x56, 0x11, 0x7d, 0xba, 0xaa, 0xda,
+ 0x40, 0x24, 0xa3, 0xad, 0xae, 0x1c, 0x81, 0xb0, 0x2d, 0x03, 0x3d, 0xd3,
+ 0x60, 0xee, 0xa8, 0x94, 0x82, 0x3a, 0xa2, 0x0f, 0x0a, 0xd6, 0x2a, 0xf3,
+ 0x22, 0x89, 0x3a, 0x6d, 0xcb, 0x26, 0xae, 0x52, 0xee, 0xc0, 0x61, 0x3c,
+ 0x27, 0xf3, 0xb2, 0x4d, 0x1b, 0x87, 0xec, 0xeb, 0x61, 0x2c, 0xbb, 0x0a,
+ 0x99, 0xe3, 0x83, 0xb0, 0x6e, 0xaa, 0x4b, 0x4c, 0x8c, 0x6f, 0xbd, 0x13,
+ 0xc7, 0xce, 0xa8, 0x46, 0xc9, 0xaf, 0xcb, 0xfc, 0x1e, 0xd5, 0x2d, 0x14,
+ 0x0e, 0xf0, 0x39, 0x76, 0xc5, 0xac, 0x7c, 0x5e, 0x61, 0x90, 0x01, 0xdf,
+ 0x95, 0xcc, 0x8a, 0x1a, 0x07, 0x60, 0x4f, 0x92, 0xf7, 0xd5, 0x18, 0x41,
+ 0xe0, 0x48, 0x51, 0xfc, 0x19, 0x7e, 0x56, 0x00, 0xc9, 0xba, 0x5c, 0x8a,
+ 0x8e, 0xdb, 0xb4, 0x21, 0x73, 0x2f, 0xe7, 0xf1, 0xd5, 0xbf, 0x74, 0xa2,
+ 0xd4, 0x2a, 0x6a, 0x14, 0x73, 0x22, 0xe0, 0xd3, 0x4a, 0x88, 0x6e, 0x96,
+ 0x98, 0x2e, 0x1a, 0x00, 0x98, 0xd0, 0xbc, 0x53, 0xa9, 0x44, 0xf2, 0xfb,
+ 0xbd, 0x9d, 0x36, 0x2b, 0xd6, 0x6c, 0x3a, 0x80, 0xb8, 0x59, 0x2d, 0x22,
+ 0xa6, 0xa7, 0xd2, 0x08, 0x4a, 0x24, 0x4a, 0x5f, 0xf4, 0x20, 0x41, 0xd6,
+ 0x10, 0x9d, 0xa5, 0x21, 0x00, 0x30, 0xd6, 0xa1, 0xd4, 0x76, 0x06, 0x9f,
+ 0xfe, 0x5a, 0xc6, 0xf2, 0x28, 0x67, 0xa1, 0xdb, 0x8b, 0x2f, 0xfc, 0xbd,
+ 0xe1, 0x24, 0xa1, 0x9b, 0xa7, 0x39, 0xc7, 0x4d, 0x1f, 0x5a, 0x3a, 0x88,
+ 0xea, 0x31, 0x54, 0xdc, 0xd9, 0x57, 0x78, 0x27, 0xba, 0x80, 0x4e, 0xc7,
+ 0xb4, 0x7d, 0xca, 0xf5, 0xcc, 0xa3, 0xbd, 0xd1, 0x8e, 0x0a, 0x7e, 0x0f,
+ 0xa6, 0xbf, 0x8a, 0xbf, 0xa6, 0xd6, 0x86, 0xaf, 0x88, 0xc9, 0xf2, 0xfa,
+ 0x5f, 0x56, 0x59, 0x1d, 0x95, 0xbf, 0xd3, 0xcd, 0x25, 0x6a, 0x98, 0x49,
+ 0xf9, 0x5a, 0x05, 0xa1, 0x16, 0xa5, 0x14, 0x9e, 0x72, 0xc5, 0xec, 0x2b,
+ 0xd8, 0xfe, 0xd3, 0x92, 0x32, 0xd0, 0xe0, 0xba, 0xfa, 0x11, 0xad, 0xc1,
+ 0x2a, 0x42, 0x88, 0xd9, 0x6f, 0x0a, 0xf3, 0x91, 0x89, 0xfc, 0xe6, 0xaa,
+ 0x52, 0xe1, 0xbe, 0x3e, 0x7f, 0x73, 0xd8, 0x68, 0xee, 0xf9, 0x67, 0xcf,
+ 0x76, 0x7e, 0xcb, 0x78, 0x94, 0x5a, 0x3d, 0x8b, 0x87, 0xeb, 0x05, 0xfd,
+ 0xaa, 0x82, 0x41, 0xdd, 0xf5, 0x82, 0xac, 0x08, 0xc6, 0x2f, 0x2b, 0x16,
+ 0xa4, 0xae, 0xd1, 0x2e, 0x3f, 0x61, 0x98, 0xa6, 0xe8, 0xe3, 0x7d, 0xc2,
+ 0x5a, 0x48, 0xac, 0x36, 0xa5, 0xa5, 0x06, 0xf5, 0xb3, 0x00, 0xcb, 0x11,
+ 0x5f, 0xab, 0xac, 0xc3, 0xc7, 0x2a, 0x36, 0x70, 0xbe, 0x01, 0xac, 0x76,
+ 0xf4, 0xe1, 0xe9, 0xbb, 0x77, 0x47, 0x87, 0xae, 0x8c, 0x96, 0x22, 0x7e,
+ 0x7b, 0x49, 0x59, 0xca, 0x1f, 0x89, 0x4a, 0xdd, 0x5d, 0x2f, 0x48, 0x02,
+ 0x59, 0x2d, 0x3f, 0x5b, 0x47, 0x80, 0xa4, 0x0b, 0x09, 0xd2, 0x0d, 0xd0,
+ 0x2b, 0x2c, 0x76, 0x5f, 0x18, 0x55, 0x87, 0x0a, 0xda, 0x5d, 0x26, 0xc6,
+ 0xe7, 0xbd, 0x83, 0x7f, 0xb6, 0x4a, 0xc4, 0x68, 0x8e, 0x56, 0x50, 0x24,
+ 0x46, 0x60, 0xd0, 0xff, 0x3f, 0x56, 0x26, 0xe6, 0x1b, 0x0b, 0x5f, 0x68,
+ 0x61, 0xe1, 0xd6, 0xa5, 0x7f, 0x11, 0x62, 0x55, 0xa1, 0x0b, 0x02, 0x1b,
+ 0xba, 0x93, 0x9d, 0xc3, 0x84, 0x3c, 0x0e, 0xab, 0x2d, 0xbd, 0xeb, 0x3b,
+ 0x80, 0x26, 0x59, 0x57, 0xfa, 0x65, 0x1d, 0x38, 0x5c, 0x80, 0x02, 0x27,
+ 0xcc, 0x5b, 0x4a, 0x6d, 0xfd, 0xf2, 0x0a, 0x2d, 0xeb, 0x43, 0x28, 0xb8,
+ 0xbe, 0x8d, 0x13, 0xd0, 0x86, 0xcb, 0x81, 0x71, 0x84, 0x8a, 0x73, 0xaf,
+ 0xe6, 0x5d, 0x16, 0x74, 0x2d, 0x40, 0xa7, 0x24, 0x6c, 0xac, 0x67, 0x73,
+ 0xf8, 0xd1, 0xbd, 0xdb, 0x05, 0xc8, 0x80, 0x90, 0x94, 0x56, 0x6c, 0x4c,
+ 0x36, 0xb4, 0xa6, 0xa0, 0xd1, 0xdb, 0x04, 0x15, 0x1b, 0x5e, 0x4e, 0x0b,
+ 0x06, 0xc2, 0xbb, 0x53, 0x88, 0x4d, 0xdc, 0x10, 0xe1, 0x3f, 0xde, 0xb7,
+ 0x8c, 0x3d, 0x8a, 0x55, 0x4f, 0x64, 0xb6, 0xa0, 0x2b, 0x7c, 0x6e, 0x19,
+ 0xde, 0x69, 0xa5, 0x75, 0x57, 0x51, 0x47, 0x03, 0x67, 0xda, 0xe5, 0x02,
+ 0x69, 0x9c, 0x17, 0xf5, 0x32, 0x6c, 0x79, 0x65, 0xe7, 0x9c, 0x9a, 0x5a,
+ 0xe4, 0xb1, 0xa4, 0x35, 0x01, 0x49, 0xdd, 0x1d, 0x0d, 0x8c, 0xdb, 0xdc,
+ 0x2c, 0xc6, 0x1e, 0x7c, 0x52, 0x7a, 0x3b, 0xa8, 0xd5, 0xa9, 0xb7, 0x2e,
+ 0x00, 0x5e, 0xd5, 0x68, 0x81, 0x17, 0xd0, 0xd4, 0x2f, 0x35, 0x6f, 0x1b,
+ 0x27, 0x50, 0xf9, 0x90, 0xd5, 0xd6, 0x6e, 0x8d, 0x4c, 0x4e, 0xbe, 0xa1,
+ 0xab, 0xe8, 0x5a, 0xd9, 0x52, 0x55, 0x79, 0xc0, 0xe8, 0xeb, 0x25, 0xc7,
+ 0xd7, 0x06, 0x40, 0x03, 0xb5, 0xe8, 0x5c, 0xec, 0x2a, 0x5a, 0x5a, 0x5b,
+ 0x2d, 0xea, 0x5a, 0x5e, 0x36, 0x2f, 0xb6, 0x11, 0xf0, 0x97, 0x21, 0x3b,
+ 0x3a, 0x87, 0xcd, 0x08, 0xdc, 0xb0, 0x0b, 0xab, 0x1b, 0xa6, 0x7a, 0xbe,
+ 0xdb, 0xe4, 0x84, 0x51, 0xe3, 0x0e, 0x44, 0x46, 0x8d, 0x1b, 0x0b, 0x1f,
+ 0x6f, 0x03, 0x63, 0xa3, 0xaf, 0x67, 0xcb, 0x7e, 0xfd, 0xa6, 0xfd, 0x06,
+ 0x05, 0x07, 0xa6, 0x86, 0x48, 0x20, 0x58, 0xaa, 0xae, 0x22, 0x82, 0x46,
+ 0x0d, 0x82, 0x6a, 0x6c, 0x1d, 0x81, 0xb7, 0xbc, 0x0e, 0x16, 0x63, 0x3a,
+ 0xe7, 0x88, 0xde, 0x7e, 0x19, 0x4a, 0x01, 0x1a, 0x02, 0x0d, 0x2f, 0x0b,
+ 0x2d, 0x94, 0x65, 0x0a, 0xd7, 0xaa, 0x02, 0xc7, 0xe5, 0x4d, 0xb9, 0x1e,
+ 0x66, 0xc8, 0x47, 0x73, 0x64, 0x61, 0xf9, 0x10, 0x6b, 0x51, 0xfc, 0x73,
+ 0x69, 0xd5, 0x18, 0x27, 0xef, 0x55, 0xbd, 0x39, 0xb7, 0x45, 0x2d, 0xb0,
+ 0xb0, 0x96, 0x56, 0xea, 0x6a, 0x89, 0xb4, 0xb4, 0x55, 0xf9, 0x7a, 0x44,
+ 0x27, 0xa6, 0xc7, 0x65, 0x46, 0x7a, 0xf5, 0x0c, 0x24, 0x4d, 0xd9, 0xb3,
+ 0xb7, 0x69, 0x25, 0x82, 0x01, 0xb7, 0x25, 0x42, 0xbb, 0x1e, 0xd4, 0x36,
+ 0xc4, 0xfb, 0xb5, 0xc9, 0xb1, 0x47, 0xe0, 0xbf, 0x6d, 0x70, 0x42, 0xd7,
+ 0xd4, 0xfa, 0x51, 0xf5, 0xac, 0x6e, 0xd5, 0xee, 0xce, 0x68, 0xb7, 0x17,
+ 0x02, 0x28, 0x23, 0xb0, 0x82, 0x63, 0x21, 0xc2, 0x76, 0x3a, 0xee, 0xc2,
+ 0x2e, 0xab, 0x6f, 0xd8, 0xc1, 0xe2, 0x7e, 0x14, 0x84, 0xa7, 0xb4, 0xba,
+ 0xd0, 0x10, 0x96, 0x66, 0xcb, 0xc3, 0x40, 0x1b, 0x01, 0xa9, 0x2d, 0x39,
+ 0x94, 0xc7, 0x41, 0x59, 0xd4, 0x2a, 0xdb, 0xcb, 0xfd, 0xed, 0xea, 0xc3,
+ 0x77, 0xe1, 0x59, 0x05, 0x49, 0x14, 0xdd, 0x55, 0xe3, 0x5d, 0xff, 0x2d,
+ 0x2b, 0xd4, 0x2f, 0x16, 0xed, 0xd8, 0x63, 0xe4, 0x8e, 0xa1, 0x7a, 0x3d,
+ 0x9c, 0x6f, 0x8d, 0x8b, 0xcb, 0x2b, 0x9e, 0x8d, 0xf0, 0x82, 0xb8, 0xbc,
+ 0x1d, 0x39, 0x1f, 0x13, 0x64, 0x8f, 0x90, 0xf7, 0xae, 0xca, 0x7a, 0x1c,
+ 0x05, 0xaa, 0xd2, 0x7b, 0x40, 0x8a, 0x90, 0xe1, 0xa2, 0x65, 0x87, 0xa9,
+ 0x31, 0x1c, 0xaa, 0x95, 0x7e, 0x98, 0x2c, 0xd9, 0x60, 0x87, 0x17, 0x39,
+ 0x11, 0x38, 0x09, 0x43, 0x05, 0xf8, 0x9d, 0x3f, 0xfe, 0xd1, 0xf3, 0xa8,
+ 0x7a, 0xe5, 0xb5, 0xdd, 0x17, 0xa3, 0x67, 0xde, 0x4a, 0x25, 0x20, 0x01,
+ 0x51, 0x6f, 0xff, 0x47, 0xa4, 0xc5, 0xfc, 0x3c, 0xfc, 0x91, 0xfe, 0xfc,
+ 0xb9, 0xe7, 0x18, 0x25, 0xc2, 0xc4, 0x44, 0xbe, 0x70, 0x93, 0xb7, 0xa4,
+ 0x0d, 0x3c, 0xe4, 0x82, 0xa9, 0x21, 0x71, 0xb1, 0x2b, 0x11, 0xa7, 0x51,
+ 0x32, 0xab, 0x85, 0x9a, 0xd5, 0x8e, 0x25, 0x09, 0xf6, 0x10, 0x70, 0x88,
+ 0x52, 0xdc, 0x5a, 0x4a, 0x42, 0x88, 0x7f, 0x69, 0x60, 0xe5, 0x6e, 0x14,
+ 0x3f, 0x81, 0xaf, 0x77, 0x4b, 0xc1, 0x57, 0xf6, 0x3c, 0x42, 0x1c, 0x98,
+ 0x9a, 0x42, 0xf4, 0xb3, 0x0d, 0x07, 0xa2, 0xc3, 0x49, 0xa0, 0x56, 0xd6,
+ 0x5e, 0xc2, 0x15, 0x44, 0x10, 0x4a, 0x5c, 0x28, 0x91, 0x4b, 0xb9, 0xd4,
+ 0x39, 0x96, 0x37, 0x3c, 0x45, 0x4d, 0x75, 0x16, 0x4c, 0xb6, 0x8d, 0x40,
+ 0x08, 0xc6, 0xd8, 0x2c, 0x3d, 0x78, 0x12, 0xa0, 0xd4, 0xd7, 0xe4, 0x7d,
+ 0x2e, 0xbc, 0xf6, 0x72, 0x79, 0x5d, 0x50, 0xbb, 0x0f, 0x60, 0x75, 0xd2,
+ 0x53, 0xf2, 0x8c, 0xa3, 0xda, 0xa5, 0x07, 0x8d, 0xfc, 0x2d, 0xd5, 0x11,
+ 0x41, 0x57, 0x59, 0x53, 0x09, 0x07, 0xbc, 0xde, 0xa2, 0xe0, 0x0a, 0xe0,
+ 0xdf, 0x55, 0x48, 0x2c, 0x8c, 0xf6, 0x9e, 0xef, 0x3e, 0xdf, 0x26, 0x2e,
+ 0xf2, 0x64, 0xb4, 0x17, 0x22, 0xac, 0xd3, 0x11, 0xa3, 0x31, 0x34, 0x2f,
+ 0x4f, 0x20, 0xf0, 0x78, 0xd1, 0x8d, 0x39, 0x60, 0x1e, 0x96, 0xd0, 0x55,
+ 0xf9, 0xde, 0x27, 0x2a, 0xc4, 0x8c, 0xa9, 0xe3, 0xf2, 0x0b, 0x5a, 0x79,
+ 0x21, 0xa6, 0xa3, 0xb2, 0x40, 0xc3, 0xa3, 0x51, 0xc7, 0xc0, 0x4a, 0xea,
+ 0x63, 0x4f, 0x52, 0xba, 0xf9, 0xab, 0x7c, 0xa5, 0xc8, 0x71, 0xec, 0xee,
+ 0x70, 0xc5, 0x85, 0x38, 0x3b, 0x24, 0xef, 0x2c, 0xfa, 0x08, 0x00, 0x16,
+ 0x57, 0x68, 0xc2, 0x85, 0x47, 0x04, 0x2e, 0x6e, 0xa4, 0x32, 0xa4, 0x52,
+ 0x24, 0x01, 0x25, 0x57, 0xf8, 0x56, 0x9e, 0xde, 0x37, 0xef, 0x91, 0x6f,
+ 0x88, 0x3c, 0x6f, 0x59, 0x64, 0x8f, 0xed, 0x86, 0x92, 0x64, 0x73, 0x71,
+ 0x91, 0xc6, 0xb2, 0x18, 0x1e, 0xe5, 0x57, 0x3f, 0x90, 0x50, 0xf9, 0xae,
+ 0xb2, 0x96, 0xb5, 0xac, 0x8d, 0x51, 0x33, 0x30, 0x44, 0xb0, 0x40, 0x18,
+ 0x26, 0x97, 0x33, 0xa8, 0xc5, 0x15, 0x28, 0x41, 0x26, 0xe0, 0x0b, 0x0f,
+ 0xe5, 0x96, 0x3c, 0x54, 0x1d, 0x4f, 0x91, 0x76, 0xfe, 0x07, 0x92, 0xc5,
+ 0xde, 0xff, 0x4f, 0x16, 0xff, 0x44, 0xb2, 0x78, 0xd1, 0x45, 0x16, 0x4f,
+ 0xfe, 0x07, 0x92, 0xc5, 0x93, 0xff, 0x9f, 0x2c, 0xfe, 0x79, 0x64, 0xb1,
+ 0xf7, 0xbc, 0x9e, 0x1e, 0x07, 0x7d, 0x92, 0x2e, 0x39, 0x53, 0x2b, 0x5b,
+ 0x28, 0xe8, 0xa0, 0x0c, 0x5d, 0xba, 0x50, 0xd0, 0x89, 0x2c, 0x99, 0x29,
+ 0x54, 0x49, 0x55, 0x60, 0x2f, 0x3d, 0x90, 0x5e, 0xdb, 0x22, 0xc1, 0x70,
+ 0x9c, 0xf1, 0x7c, 0x14, 0x9d, 0xb9, 0xd7, 0x90, 0xe3, 0xc4, 0xe9, 0xbe,
+ 0x88, 0xb2, 0x98, 0x27, 0x97, 0xd8, 0x02, 0xc8, 0x29, 0x03, 0x7c, 0x09,
+ 0x31, 0x8a, 0xad, 0x46, 0xc3, 0x56, 0x76, 0x14, 0xbf, 0x22, 0x81, 0x0f,
+ 0x68, 0x85, 0x15, 0xd0, 0xd8, 0xa7, 0xb3, 0x58, 0x0e, 0x65, 0x9f, 0x64,
+ 0xa9, 0xfe, 0x20, 0x0a, 0xab, 0x14, 0x71, 0xee, 0x5d, 0xbb, 0x5e, 0xd2,
+ 0x47, 0x71, 0xea, 0xfd, 0x2d, 0x29, 0xf2, 0xc8, 0xf2, 0xfa, 0x15, 0x8b,
+ 0x0d, 0x85, 0xc5, 0x4c, 0x4c, 0xf0, 0x1f, 0x72, 0xbf, 0x2d, 0x2d, 0xe3,
+ 0x8f, 0xa8, 0xb7, 0x28, 0xf0, 0x7b, 0x0c, 0xf3, 0xe1, 0xd2, 0x6b, 0x32,
+ 0x16, 0xb5, 0x52, 0x33, 0xba, 0xf9, 0x95, 0x33, 0x91, 0x18, 0xd1, 0xfb,
+ 0xad, 0x73, 0xc0, 0x42, 0x0b, 0x1b, 0x0e, 0xc2, 0xc8, 0x19, 0xa7, 0x6b,
+ 0x5e, 0x0a, 0x00, 0x91, 0x0c, 0xc7, 0x95, 0x13, 0x19, 0x75, 0xc8, 0xe9,
+ 0xaf, 0x13, 0x36, 0x6d, 0x87, 0x03, 0x1a, 0x40, 0x6d, 0xbe, 0x55, 0xcd,
+ 0xdf, 0x85, 0xc8, 0xf9, 0x40, 0x17, 0x3f, 0xc4, 0xf6, 0x90, 0xea, 0x63,
+ 0xae, 0x3a, 0xa2, 0xe5, 0x5e, 0xb9, 0x65, 0x30, 0x47, 0x70, 0xb8, 0x18,
+ 0x9b, 0x48, 0xc7, 0x31, 0xb7, 0x18, 0xba, 0xfc, 0x94, 0x65, 0x80, 0xc9,
+ 0x04, 0x4a, 0x7b, 0xb9, 0x9a, 0xfc, 0x45, 0x35, 0x42, 0x1a, 0x72, 0x0c,
+ 0xf4, 0xba, 0x5a, 0x9d, 0x4c, 0xa9, 0x1a, 0xb3, 0x9a, 0xa8, 0x17, 0xa7,
+ 0xdd, 0x1c, 0x7d, 0x08, 0x8f, 0x9d, 0xab, 0x5c, 0xa3, 0x74, 0xa6, 0x01,
+ 0x3f, 0x3c, 0xa6, 0xd6, 0xa4, 0x82, 0xa8, 0x95, 0xd6, 0xbe, 0xdb, 0x79,
+ 0x62, 0x8d, 0xa1, 0xd4, 0xda, 0x2c, 0xe1, 0x66, 0xb9, 0xd5, 0x54, 0x21,
+ 0xd6, 0xe2, 0x73, 0xf8, 0xf1, 0xb5, 0x6d, 0x11, 0xb9, 0x0e, 0xd8, 0x8b,
+ 0x5a, 0x0e, 0xfe, 0xc8, 0x3f, 0xba, 0x15, 0xa6, 0x1a, 0xf8, 0xb1, 0x05,
+ 0xf3, 0xf1, 0xe3, 0x38, 0x1b, 0x78, 0x7d, 0x5d, 0x07, 0xaf, 0xf8, 0x5b,
+ 0xe9, 0xe1, 0xe1, 0xb6, 0xe1, 0x27, 0xfd, 0x05, 0x1d, 0xbc, 0xcf, 0x24,
+ 0x6d, 0x3e, 0xe4, 0x10, 0x4b, 0x05, 0xe2, 0x61, 0x76, 0x77, 0x17, 0x17,
+ 0x99, 0xc4, 0xe2, 0x85, 0x85, 0xdf, 0x39, 0x05, 0x6a, 0x09, 0x23, 0x4d,
+ 0x0b, 0xeb, 0xf6, 0x92, 0x0d, 0x55, 0xb0, 0x56, 0xe5, 0x99, 0xa5, 0x3b,
+ 0x2a, 0xae, 0xa6, 0xc5, 0xad, 0x2d, 0xf3, 0xca, 0xfc, 0x75, 0xd1, 0x8c,
+ 0x75, 0x8f, 0x02, 0xf7, 0x43, 0x07, 0x20, 0xbb, 0x6d, 0x84, 0xaf, 0x40,
+ 0xc6, 0x2d, 0xc3, 0x04, 0xb3, 0x5a, 0xa2, 0xe4, 0x83, 0xe2, 0x7d, 0x88,
+ 0x54, 0x1f, 0xfb, 0xdd, 0x93, 0xae, 0x9b, 0x11, 0x2e, 0x08, 0xc0, 0xc0,
+ 0x85, 0xe7, 0xf0, 0x41, 0x6f, 0xf3, 0x14, 0xf0, 0xb7, 0x48, 0xe0, 0x1c,
+ 0xfd, 0xba, 0x3a, 0x17, 0x83, 0xa0, 0x7c, 0x5d, 0x5c, 0x86, 0x69, 0x14,
+ 0xed, 0xf0, 0x32, 0xaf, 0x76, 0xc7, 0x02, 0x00, 0x40, 0x54, 0x9c, 0xc5,
+ 0x95, 0x1d, 0x31, 0xbf, 0x0d, 0x18, 0xa6, 0x14, 0x6b, 0xe1, 0xb4, 0x8e,
+ 0x69, 0xd2, 0x8e, 0xd8, 0xf1, 0x15, 0x0d, 0x1e, 0x83, 0x93, 0xd8, 0x6b,
+ 0xdd, 0x27, 0x92, 0x70, 0xfd, 0xe8, 0xad, 0x12, 0x42, 0x04, 0x1a, 0x0b,
+ 0x48, 0x66, 0x21, 0xb5, 0x78, 0x48, 0x4a, 0xbb, 0x1a, 0x25, 0xe7, 0x6a,
+ 0x0d, 0x25, 0x5f, 0xa2, 0xf0, 0xec, 0x5d, 0xc8, 0x57, 0x0b, 0xb6, 0x0c,
+ 0x2a, 0xd0, 0x4b, 0x07, 0x87, 0x7a, 0x64, 0x2a, 0x1f, 0xef, 0x87, 0x71,
+ 0x76, 0xcf, 0x3e, 0xb6, 0x07, 0xae, 0x45, 0x66, 0xe4, 0x6c, 0xf3, 0x60,
+ 0x98, 0x91, 0x54, 0xea, 0xdb, 0x34, 0x22, 0x9b, 0x2d, 0xd4, 0x4b, 0x51,
+ 0x96, 0x17, 0xab, 0x96, 0xf1, 0x0f, 0x4f, 0xd2, 0x36, 0x99, 0x79, 0xdd,
+ 0x63, 0xe2, 0xa9, 0xf3, 0xc7, 0xca, 0x48, 0x42, 0x79, 0x57, 0xcc, 0x2f,
+ 0x20, 0x11, 0xc0, 0xef, 0xd3, 0x6d, 0x69, 0xdf, 0x76, 0xf9, 0x8a, 0x05,
+ 0x57, 0x86, 0x1a, 0x12, 0xaf, 0x5b, 0x36, 0x40, 0xbf, 0x9e, 0x74, 0x4d,
+ 0x19, 0x65, 0x62, 0x1f, 0x91, 0x03, 0xb8, 0xff, 0xb5, 0x20, 0x55, 0xc1,
+ 0x4c, 0x6d, 0x66, 0xeb, 0xfc, 0x26, 0x32, 0x4b, 0x9d, 0xe4, 0x7b, 0x49,
+ 0x87, 0x41, 0x8b, 0x80, 0x81, 0x65, 0x36, 0x63, 0x9e, 0x31, 0xed, 0x49,
+ 0x20, 0x90, 0x5b, 0x13, 0x86, 0xf1, 0xd7, 0x40, 0x7b, 0xe5, 0x49, 0x77,
+ 0x22, 0x8c, 0xfb, 0x76, 0xef, 0x4a, 0x07, 0x26, 0x3e, 0xf8, 0x36, 0x3a,
+ 0xe2, 0x81, 0xa5, 0xf5, 0xb4, 0x05, 0x59, 0xa3, 0x19, 0xa2, 0xc2, 0x1e,
+ 0x25, 0x6b, 0x0c, 0x5c, 0x22, 0xc8, 0x3a, 0xd7, 0xe8, 0x57, 0x2f, 0x92,
+ 0xf4, 0xdf, 0xb1, 0x4a, 0xda, 0x59, 0x27, 0x14, 0x6e, 0x50, 0xd2, 0xbd,
+ 0x3d, 0xa3, 0x75, 0xe9, 0x18, 0x6b, 0x26, 0xe5, 0xd3, 0x29, 0x7c, 0x3e,
+ 0x45, 0x0b, 0x91, 0xe7, 0xae, 0xa3, 0xec, 0x55, 0x38, 0xe1, 0x07, 0xa7,
+ 0xe8, 0x06, 0x54, 0x9b, 0x65, 0x53, 0x08, 0xaf, 0x8f, 0xc5, 0x0d, 0x45,
+ 0x91, 0xb2, 0xc3, 0x19, 0x3f, 0xac, 0x35, 0xbb, 0xc8, 0xbb, 0x4f, 0x9c,
+ 0x7e, 0x47, 0xec, 0x67, 0xf4, 0xdf, 0xdc, 0x53, 0x44, 0x99, 0xd6, 0x76,
+ 0x14, 0xbd, 0xd4, 0xa6, 0xf2, 0xa0, 0x8f, 0x53, 0xa7, 0xb1, 0x3b, 0xda,
+ 0x01, 0xef, 0xfd, 0x78, 0x8f, 0x48, 0xab, 0x7d, 0xbe, 0xc5, 0x7e, 0x6e,
+ 0xb2, 0xe0, 0xf7, 0xca, 0x74, 0xbd, 0x41, 0x1f, 0xf3, 0xe2, 0x77, 0x75,
+ 0x50, 0xae, 0x46, 0x66, 0x08, 0x7f, 0xe8, 0x8a, 0x64, 0xac, 0xaf, 0x47,
+ 0x02, 0xe4, 0x09, 0x2b, 0x47, 0xc2, 0x59, 0xe0, 0x78, 0x7f, 0x77, 0xe7,
+ 0xf3, 0x9d, 0x6e, 0xf0, 0x4f, 0x48, 0x14, 0x16, 0xf1, 0x32, 0x4d, 0x82,
+ 0xca, 0x98, 0xa9, 0x2f, 0x8b, 0x14, 0xf8, 0xd1, 0xf4, 0xca, 0x64, 0x37,
+ 0x5a, 0xd7, 0x3d, 0x00, 0xa7, 0x5a, 0xaa, 0xe6, 0x66, 0xb5, 0xd1, 0x3a,
+ 0x88, 0x32, 0x73, 0x3f, 0x39, 0xbf, 0x8f, 0x73, 0x2e, 0x75, 0x24, 0x55,
+ 0x7b, 0x47, 0x7b, 0x6d, 0x6d, 0x4c, 0x94, 0x77, 0xe1, 0x86, 0x21, 0x8f,
+ 0xd1, 0x07, 0x77, 0x6b, 0x9b, 0xb2, 0x9a, 0x3c, 0x50, 0xf2, 0xe7, 0x1b,
+ 0x3a, 0x37, 0x67, 0x12, 0xb2, 0x2a, 0x45, 0x61, 0x3e, 0xb1, 0xe0, 0x0f,
+ 0x5e, 0x69, 0x55, 0x85, 0x5a, 0x57, 0xed, 0xe7, 0x37, 0xae, 0x87, 0xb4,
+ 0x79, 0x80, 0x18, 0x9d, 0xcf, 0x46, 0x4f, 0x5e, 0x70, 0x9e, 0xb9, 0x54,
+ 0xed, 0x0d, 0xd6, 0x9e, 0x0e, 0x4a, 0xce, 0xc8, 0x68, 0x92, 0x95, 0xad,
+ 0x31, 0x5a, 0xb2, 0xfa, 0xeb, 0xe6, 0xe1, 0xd5, 0x91, 0x65, 0xa3, 0x06,
+ 0x0f, 0x2a, 0x07, 0xc0, 0xcd, 0x54, 0x4f, 0x4f, 0xe2, 0x59, 0x5c, 0xb1,
+ 0xb7, 0x6d, 0xd8, 0xce, 0xe8, 0x10, 0x4b, 0xaf, 0x2a, 0xe7, 0xb3, 0x51,
+ 0x33, 0x1d, 0x41, 0x63, 0x86, 0xb9, 0x07, 0x2b, 0xd6, 0x1d, 0xc4, 0xd9,
+ 0xb6, 0xb0, 0x86, 0x27, 0x5e, 0x1f, 0x9e, 0xa0, 0x3a, 0x28, 0x97, 0x51,
+ 0xb4, 0x9c, 0x7a, 0xae, 0x0c, 0xb6, 0xbc, 0x07, 0x04, 0x69, 0x3a, 0x29,
+ 0xcb, 0xeb, 0x3d, 0xa2, 0x87, 0xbd, 0xd1, 0xe7, 0xac, 0x4f, 0x8a, 0xcd,
+ 0x7b, 0x0d, 0xf8, 0x98, 0x42, 0x66, 0x34, 0x5a, 0x3b, 0x5d, 0x26, 0xd9,
+ 0x78, 0x7c, 0x12, 0x66, 0xe4, 0xff, 0xd5, 0x76, 0xd0, 0x2a, 0xdb, 0xfa,
+ 0x00, 0x5b, 0x5f, 0xf1, 0x35, 0x0f, 0x54, 0x1a, 0x2d, 0x37, 0x6c, 0x01,
+ 0x6c, 0x52, 0x30, 0xaf, 0xc5, 0x97, 0x83, 0xd2, 0x92, 0xa1, 0x47, 0x1e,
+ 0x65, 0x98, 0x35, 0x30, 0x47, 0x31, 0xea, 0x11, 0xf5, 0x13, 0x16, 0x1c,
+ 0x6d, 0x23, 0xaa, 0xd6, 0xb3, 0xdf, 0x1b, 0xf5, 0x28, 0x35, 0xde, 0x2d,
+ 0x89, 0x0b, 0x92, 0x6a, 0x39, 0x16, 0x30, 0x38, 0x2d, 0xff, 0x8b, 0x9b,
+ 0x45, 0xb5, 0x59, 0x5f, 0x73, 0xa2, 0xc3, 0xf3, 0xba, 0x3d, 0x86, 0xfb,
+ 0x75, 0xac, 0x05, 0x26, 0xe2, 0x62, 0x92, 0x56, 0x45, 0xac, 0xd5, 0x70,
+ 0xb4, 0x42, 0x47, 0xe0, 0x16, 0xe6, 0x34, 0x70, 0x24, 0x22, 0xf0, 0x6b,
+ 0x9d, 0xce, 0x48, 0x12, 0x1b, 0xfe, 0x17, 0x7a, 0xd5, 0x06, 0x44, 0x76,
+ 0x44, 0x38, 0xc2, 0x57, 0x47, 0x6f, 0x4e, 0xcf, 0x8f, 0xea, 0x48, 0x64,
+ 0x52, 0x09, 0x00, 0x91, 0x05, 0xcd, 0xd1, 0xfd, 0x05, 0xf9, 0x71, 0x0e,
+ 0x3f, 0xc5, 0x2a, 0x0a, 0x9c, 0x7d, 0xff, 0x3a, 0x28, 0x81, 0x61, 0x75,
+ 0x63, 0x02, 0x84, 0x2b, 0x25, 0xa7, 0x56, 0x76, 0x28, 0x11, 0xe3, 0x96,
+ 0x87, 0xa1, 0x76, 0xc3, 0x13, 0xf0, 0x5f, 0x44, 0xa7, 0x48, 0x67, 0xb1,
+ 0xe4, 0xe6, 0x94, 0x25, 0x1b, 0x88, 0x5c, 0xb3, 0x2d, 0xbf, 0x70, 0xc2,
+ 0xd0, 0xd2, 0x9c, 0xe6, 0x65, 0x17, 0x0b, 0x07, 0x9e, 0x72, 0x2c, 0xea,
+ 0x28, 0x72, 0x9d, 0xf8, 0x5e, 0x10, 0x9b, 0x2c, 0x01, 0x39, 0xe8, 0xa5,
+ 0xcb, 0xa4, 0xc6, 0xf1, 0x7c, 0x12, 0x7f, 0x28, 0xbc, 0xba, 0x15, 0x7c,
+ 0x38, 0x88, 0xfe, 0x22, 0xf5, 0x87, 0x2f, 0x05, 0x27, 0xd9, 0xaf, 0x63,
+ 0x87, 0x70, 0x40, 0xdd, 0x6e, 0x96, 0xc4, 0xc2, 0xfd, 0x48, 0xdd, 0xb2,
+ 0xe9, 0x80, 0xfb, 0x7f, 0xec, 0x47, 0x6a, 0x0c, 0xc1, 0x6d, 0x24, 0xd9,
+ 0x76, 0x6b, 0x32, 0x27, 0x11, 0x08, 0x2a, 0x00, 0x10, 0x5b, 0x8f, 0xc5,
+ 0x50, 0xd9, 0xac, 0xad, 0x0a, 0x40, 0xb7, 0xd7, 0xda, 0xea, 0x84, 0x9a,
+ 0x73, 0xc9, 0x0a, 0x5f, 0xea, 0x4d, 0x60, 0x8d, 0x0c, 0x02, 0x90, 0x6a,
+ 0x04, 0x51, 0xb4, 0xb8, 0x52, 0x18, 0x3d, 0x83, 0x12, 0x11, 0x5a, 0xf0,
+ 0xeb, 0xcf, 0x96, 0x64, 0x09, 0xb8, 0xb2, 0xf2, 0x3e, 0xab, 0xe0, 0xcb,
+ 0x07, 0x17, 0x9b, 0xe6, 0x05, 0xa2, 0x1f, 0xda, 0x64, 0xec, 0xe9, 0xb6,
+ 0x84, 0xe5, 0xf6, 0xc5, 0xb3, 0x17, 0x7c, 0xec, 0x10, 0x22, 0xa4, 0x40,
+ 0x08, 0x9a, 0x3a, 0x82, 0x62, 0x07, 0x3a, 0x62, 0x33, 0x84, 0xb6, 0xa0,
+ 0x7d, 0x74, 0xfb, 0xcd, 0xc8, 0x37, 0x49, 0x18, 0x55, 0x01, 0x24, 0x3a,
+ 0x0e, 0x9a, 0x1a, 0xad, 0x55, 0x63, 0xd7, 0x05, 0xda, 0xe0, 0x66, 0xd1,
+ 0x82, 0x46, 0xb4, 0x0b, 0xf1, 0x8d, 0x26, 0xbf, 0xe9, 0x79, 0x90, 0x76,
+ 0x6b, 0xbb, 0xbf, 0x6e, 0x74, 0x4a, 0x0e, 0x1c, 0xb5, 0x49, 0x84, 0xc9,
+ 0x1e, 0xbf, 0xcd, 0x3f, 0x6c, 0x39, 0xd4, 0x2a, 0x2d, 0x08, 0xc0, 0x78,
+ 0xb4, 0xab, 0xa4, 0x86, 0xb5, 0xb7, 0xae, 0xb9, 0x4b, 0x30, 0x2c, 0x5a,
+ 0xbd, 0x66, 0x6e, 0xa4, 0x54, 0x1e, 0xad, 0xf2, 0x25, 0x0b, 0x33, 0xc2,
+ 0x67, 0x75, 0xef, 0xdb, 0xe1, 0xe4, 0x3c, 0x07, 0xa4, 0xe1, 0x4c, 0xa4,
+ 0x2e, 0x81, 0xc9, 0x0b, 0x24, 0xe3, 0x65, 0x08, 0xa7, 0x51, 0x5a, 0xd4,
+ 0x3b, 0x12, 0x01, 0x05, 0x34, 0x57, 0x36, 0x99, 0x76, 0xb0, 0x26, 0xe1,
+ 0x83, 0xc1, 0x69, 0xd4, 0x3b, 0xa2, 0x51, 0x4c, 0x12, 0xa7, 0x59, 0x19,
+ 0x9e, 0xe3, 0x66, 0x6f, 0xda, 0x20, 0x01, 0x52, 0xae, 0x5d, 0xc1, 0x51,
+ 0xd1, 0x36, 0x97, 0x57, 0x23, 0x01, 0x77, 0x58, 0x56, 0xf7, 0x62, 0x47,
+ 0x49, 0x16, 0x0c, 0x3f, 0x83, 0x1a, 0xe2, 0x88, 0x2c, 0xd3, 0xba, 0x59,
+ 0xc8, 0x46, 0x1b, 0xb6, 0x2b, 0xda, 0x0b, 0x09, 0x44, 0x6f, 0x9c, 0x41,
+ 0x5f, 0xad, 0x93, 0x52, 0x09, 0xea, 0x12, 0xc9, 0x69, 0x0e, 0x2a, 0x4b,
+ 0x56, 0xe7, 0xaf, 0xc6, 0x65, 0x3b, 0x29, 0xae, 0x0d, 0x75, 0x74, 0x7d,
+ 0x55, 0x2c, 0x05, 0xa6, 0x24, 0xea, 0xc0, 0x3d, 0x08, 0x04, 0x49, 0x79,
+ 0xd2, 0x78, 0x05, 0x0a, 0x76, 0x42, 0xd0, 0xc6, 0xab, 0xc7, 0xaf, 0x6b,
+ 0xf0, 0x56, 0x12, 0xe7, 0x4e, 0x3b, 0xdd, 0xdd, 0x9c, 0x8f, 0xf3, 0x96,
+ 0xf0, 0x27, 0x7f, 0x9f, 0xb8, 0xd6, 0xbc, 0xdc, 0x3c, 0xb9, 0xf7, 0xdf,
+ 0x74, 0x37, 0xa7, 0x6d, 0x88, 0x2f, 0x43, 0x5a, 0xb0, 0x66, 0x41, 0x2b,
+ 0x06, 0x0a, 0xcc, 0xd4, 0xc0, 0xb8, 0x8e, 0xd6, 0x49, 0x3b, 0x7a, 0xf1,
+ 0x7a, 0x91, 0xcf, 0x24, 0xb2, 0xe6, 0xb1, 0xb5, 0xe0, 0x07, 0x6d, 0x2d,
+ 0xd4, 0x3a, 0x5c, 0x86, 0xf3, 0x42, 0x23, 0x44, 0xa5, 0x4c, 0x79, 0xca,
+ 0x07, 0xba, 0x9b, 0xf3, 0x13, 0x95, 0xb2, 0x91, 0xdc, 0x3c, 0x5e, 0x0e,
+ 0xa7, 0x90, 0x45, 0xf9, 0xb4, 0x0a, 0x66, 0xc0, 0x0f, 0x74, 0x37, 0xa7,
+ 0xee, 0xfe, 0xf6, 0xcc, 0xd8, 0x52, 0x88, 0xd8, 0xdf, 0xc7, 0x66, 0xc6,
+ 0x0f, 0xb6, 0x76, 0x99, 0x3e, 0x14, 0x1e, 0xde, 0xd8, 0x62, 0xd9, 0x9c,
+ 0x35, 0x41, 0x26, 0xb5, 0x0d, 0xb6, 0x1d, 0xc6, 0x18, 0xba, 0x36, 0x58,
+ 0x43, 0x99, 0xdb, 0x8c, 0xdc, 0x23, 0xbf, 0xc9, 0xea, 0xb8, 0x07, 0xd7,
+ 0x6e, 0xb0, 0xf6, 0xd1, 0x5a, 0x85, 0x79, 0xa6, 0x05, 0x48, 0x3e, 0x08,
+ 0xaa, 0x06, 0xc3, 0x7c, 0x56, 0x1f, 0x1e, 0x5e, 0x90, 0x79, 0x66, 0x55,
+ 0xd1, 0x80, 0xe0, 0xe4, 0x78, 0x85, 0x26, 0xad, 0xc4, 0xf5, 0x7a, 0x69,
+ 0x8a, 0xca, 0xb5, 0x86, 0xec, 0x7d, 0x7f, 0x91, 0xaf, 0x3f, 0x45, 0xd7,
+ 0x68, 0x9a, 0x55, 0x16, 0x77, 0x0d, 0x1e, 0x13, 0x8c, 0xb1, 0xab, 0x4c,
+ 0x51, 0x90, 0x56, 0xd7, 0x9a, 0xe2, 0xe2, 0x86, 0x4d, 0x83, 0x4e, 0x34,
+ 0xf8, 0xb0, 0x3e, 0x28, 0x09, 0x84, 0x86, 0xa7, 0x6d, 0xb7, 0x65, 0x4a,
+ 0xe6, 0xbd, 0xf3, 0xb9, 0x0d, 0xfe, 0x38, 0x3f, 0x40, 0xc7, 0xf5, 0x2e,
+ 0xdd, 0x99, 0x6c, 0x8e, 0x6f, 0x79, 0x37, 0xb3, 0xce, 0xf9, 0x57, 0xeb,
+ 0x3a, 0x2c, 0x0e, 0xee, 0x50, 0x51, 0x58, 0x74, 0x95, 0xc6, 0x2e, 0x2d,
+ 0xff, 0x63, 0xcd, 0x52, 0x74, 0x27, 0x65, 0xb4, 0x3a, 0xa7, 0xc7, 0xb8,
+ 0x39, 0x2b, 0x1b, 0x80, 0xed, 0x58, 0xbf, 0x38, 0xfa, 0xb4, 0x1f, 0xa2,
+ 0xf0, 0xf7, 0x10, 0x1e, 0xd0, 0xaf, 0x91, 0x1d, 0x87, 0x07, 0x18, 0x9e,
+ 0x76, 0xdb, 0x64, 0x79, 0xb3, 0x84, 0x4b, 0x32, 0x0a, 0x2d, 0x20, 0x71,
+ 0xe7, 0xf1, 0x93, 0x25, 0x23, 0x5f, 0xbb, 0xc6, 0xc5, 0xe2, 0x91, 0x43,
+ 0x4e, 0x0f, 0xf8, 0x59, 0x71, 0xd8, 0x6e, 0x30, 0xab, 0xd6, 0xb9, 0x94,
+ 0xb9, 0x2e, 0xd7, 0xac, 0xfc, 0xba, 0x11, 0xd4, 0xa8, 0x70, 0xfd, 0x48,
+ 0xf4, 0xc9, 0xce, 0xe1, 0xf8, 0xc5, 0x65, 0x3f, 0xd2, 0xbd, 0x1f, 0x59,
+ 0x77, 0x73, 0x3a, 0x5c, 0xff, 0x96, 0x2e, 0xcf, 0xc0, 0x41, 0xd5, 0xa8,
+ 0xe9, 0x84, 0xb5, 0xe6, 0x36, 0x6d, 0xd8, 0x01, 0xff, 0x45, 0x0c, 0x82,
+ 0xb5, 0xb5, 0x79, 0x70, 0x08, 0x87, 0x05, 0xf2, 0x7a, 0x10, 0xc9, 0xf5,
+ 0x12, 0x3f, 0x3a, 0x13, 0x18, 0xb6, 0x4d, 0xc3, 0xda, 0x66, 0x78, 0x40,
+ 0x8e, 0x72, 0x85, 0xdb, 0x96, 0xb9, 0x09, 0x83, 0x3d, 0x6b, 0x28, 0xd8,
+ 0x26, 0x87, 0x0d, 0x4a, 0xbc, 0x3a, 0x4a, 0xa6, 0x71, 0xc6, 0x64, 0xeb,
+ 0x52, 0xa7, 0xa5, 0xd9, 0xb2, 0x54, 0xac, 0x58, 0xec, 0x75, 0xdb, 0xbb,
+ 0xa3, 0xdd, 0x41, 0x54, 0xd7, 0xc9, 0x4c, 0xb8, 0xe6, 0xa2, 0xf7, 0x9a,
+ 0x90, 0xc6, 0x5d, 0x37, 0xed, 0x0c, 0xe7, 0xdc, 0x71, 0x69, 0x72, 0xa6,
+ 0x27, 0x05, 0xf8, 0xd7, 0xbd, 0x20, 0xcf, 0x98, 0xcd, 0xad, 0x05, 0xdc,
+ 0x19, 0x3e, 0x7d, 0xf1, 0xa2, 0x76, 0xa5, 0x85, 0x9a, 0xf3, 0xb3, 0x9d,
+ 0x1d, 0x01, 0xb2, 0x6e, 0xbe, 0x46, 0x5f, 0x0c, 0x5f, 0xe0, 0xc5, 0xfa,
+ 0x6b, 0x52, 0x44, 0x61, 0xfd, 0x7b, 0x43, 0xfe, 0xa6, 0xa3, 0x3b, 0xd8,
+ 0x53, 0xd6, 0xbe, 0xf5, 0x82, 0xbb, 0xeb, 0x78, 0x0b, 0x0f, 0xcb, 0x32,
+ 0xe6, 0x97, 0x97, 0x0c, 0xe4, 0xca, 0x4f, 0x4a, 0xe5, 0xf7, 0xbc, 0xb8,
+ 0x8b, 0x8b, 0x59, 0x7b, 0xba, 0x3b, 0x83, 0xe1, 0xee, 0xba, 0xe9, 0xc2,
+ 0x26, 0xc0, 0x23, 0xc1, 0x7e, 0xb2, 0x06, 0x45, 0xc2, 0xf3, 0xe6, 0x37,
+ 0x5b, 0x5d, 0xb3, 0xff, 0x6c, 0x67, 0x67, 0xf0, 0x9c, 0x7f, 0xbe, 0x78,
+ 0xb1, 0xd6, 0x41, 0xe8, 0xfb, 0x78, 0x62, 0x53, 0xab, 0x8d, 0x96, 0xda,
+ 0xe9, 0x68, 0x7d, 0x97, 0x5a, 0xdd, 0x7d, 0xf1, 0x62, 0xc0, 0xbd, 0x3c,
+ 0xfb, 0xa4, 0xd6, 0xab, 0xbb, 0xdc, 0x5b, 0xb6, 0xf8, 0x75, 0x4f, 0x8f,
+ 0x65, 0x63, 0x06, 0xac, 0x0d, 0xbc, 0x02, 0xba, 0x77, 0x60, 0xe8, 0xf1,
+ 0x11, 0xf6, 0x61, 0x20, 0x34, 0xa2, 0x34, 0x96, 0xac, 0x45, 0x8a, 0x03,
+ 0x26, 0x36, 0x85, 0x25, 0xf6, 0x21, 0x2e, 0xe6, 0x4c, 0xf1, 0x49, 0x70,
+ 0x92, 0xf9, 0x38, 0x4b, 0xaf, 0xd2, 0xca, 0xa3, 0x35, 0x94, 0xd1, 0x26,
+ 0xd1, 0xcb, 0x16, 0xac, 0x07, 0x82, 0x42, 0xad, 0xce, 0xe5, 0x3e, 0xa2,
+ 0x31, 0x05, 0x47, 0xae, 0xcf, 0xda, 0x44, 0x9f, 0xb6, 0x22, 0x99, 0xcf,
+ 0x9c, 0x75, 0x49, 0x2f, 0x11, 0x79, 0x6e, 0x28, 0x4f, 0xc8, 0x41, 0x83,
+ 0x0a, 0x28, 0xb8, 0x85, 0x31, 0x62, 0x61, 0x1a, 0x7d, 0x46, 0x0e, 0x01,
+ 0x3c, 0xc8, 0xba, 0x10, 0x4c, 0x40, 0x09, 0xbf, 0xf4, 0x53, 0xed, 0x97,
+ 0x4d, 0x14, 0xcb, 0xa4, 0x5e, 0xc9, 0x7c, 0x96, 0x58, 0x59, 0xa9, 0x3a,
+ 0x70, 0xa1, 0x7b, 0x5d, 0x4c, 0x38, 0xab, 0xa2, 0x81, 0xbd, 0xf4, 0x67,
+ 0x9f, 0xe5, 0x02, 0x3f, 0x31, 0x2b, 0xb4, 0x77, 0xb1, 0x65, 0xd7, 0x20,
+ 0xab, 0xce, 0xce, 0xbe, 0xab, 0x17, 0x3b, 0xcb, 0x35, 0x9a, 0x08, 0x00,
+ 0x71, 0xd8, 0x20, 0x6b, 0xce, 0xaa, 0x7f, 0xa9, 0xab, 0x79, 0x86, 0x78,
+ 0x1e, 0x83, 0x5f, 0x13, 0x33, 0xbb, 0x24, 0xe9, 0x04, 0x41, 0xb8, 0x52,
+ 0xd1, 0x4d, 0xa7, 0x2c, 0xb5, 0x59, 0x36, 0x1a, 0x09, 0x0f, 0x57, 0x49,
+ 0x15, 0x94, 0x39, 0xb1, 0x14, 0x6f, 0x3f, 0x0b, 0x43, 0x46, 0x07, 0x4b,
+ 0x92, 0xc5, 0xf7, 0x35, 0xca, 0x04, 0xb7, 0x4c, 0xbd, 0xc2, 0x52, 0x34,
+ 0x06, 0xd8, 0x84, 0xb5, 0x1d, 0xe3, 0xcd, 0x72, 0x4c, 0x90, 0x76, 0x8d,
+ 0xe8, 0x30, 0x8c, 0x3a, 0x11, 0xfa, 0x0a, 0xcc, 0x05, 0x56, 0x55, 0x28,
+ 0x97, 0x18, 0x8a, 0xad, 0x11, 0xc6, 0x80, 0x72, 0x1a, 0xd8, 0x09, 0xee,
+ 0x36, 0xdc, 0xd2, 0xe4, 0x63, 0x85, 0x12, 0x60, 0x78, 0xcc, 0x6e, 0xa5,
+ 0xf1, 0xf1, 0xff, 0x3e, 0x1a, 0x85, 0x91, 0xd1, 0xff, 0xa0, 0x18, 0xd3,
+ 0xf3, 0x20, 0x0b, 0x94, 0x5f, 0xeb, 0x4a, 0x72, 0x09, 0x40, 0xae, 0x1b,
+ 0xf5, 0x44, 0x6d, 0x6f, 0xd8, 0x33, 0xcb, 0x14, 0x83, 0xac, 0x63, 0x25,
+ 0xcc, 0xae, 0x6a, 0x2b, 0xb4, 0x8c, 0x8b, 0x65, 0xe4, 0xad, 0x12, 0xe6,
+ 0xd5, 0x13, 0x9b, 0xaf, 0x47, 0x56, 0x15, 0x73, 0x69, 0xec, 0x63, 0x71,
+ 0xb4, 0xac, 0x6b, 0x53, 0x98, 0xf6, 0x69, 0xcd, 0xb2, 0xed, 0x5c, 0x09,
+ 0x17, 0x99, 0xc3, 0xbc, 0x00, 0xdc, 0x57, 0x68, 0xa4, 0xe7, 0x9b, 0x98,
+ 0x74, 0x52, 0x3c, 0xde, 0x09, 0x3b, 0x20, 0x28, 0x43, 0x61, 0xae, 0xa6,
+ 0x13, 0x86, 0x64, 0x86, 0xf3, 0xc4, 0x10, 0x51, 0xe0, 0xd9, 0x0a, 0x6b,
+ 0x3e, 0x75, 0xe4, 0x7b, 0x94, 0x74, 0xe1, 0x03, 0x44, 0x91, 0x81, 0xab,
+ 0xa4, 0xf3, 0x08, 0x08, 0x86, 0x86, 0x20, 0x22, 0x60, 0x88, 0x65, 0x50,
+ 0x4b, 0x57, 0xcd, 0x6b, 0xf2, 0x70, 0xab, 0x62, 0x3a, 0xe3, 0x7a, 0xc0,
+ 0xba, 0xc0, 0xf8, 0x0f, 0x3e, 0x5e, 0xbe, 0x6c, 0x17, 0x98, 0x49, 0xae,
+ 0x66, 0x43, 0x15, 0x9a, 0xea, 0x67, 0x98, 0x57, 0xe1, 0xce, 0x05, 0x05,
+ 0x06, 0xbb, 0x9b, 0x06, 0xb1, 0x2a, 0xf1, 0x5c, 0xcd, 0x16, 0x8c, 0xfd,
+ 0x06, 0x77, 0x87, 0xcb, 0xfa, 0x85, 0x09, 0xad, 0x35, 0xd3, 0x0a, 0xd6,
+ 0x43, 0xa0, 0xc0, 0xb8, 0x3a, 0x0e, 0xc8, 0xee, 0x45, 0xfe, 0x59, 0x54,
+ 0x8b, 0x8f, 0x77, 0xc8, 0x73, 0x0b, 0x18, 0xf8, 0x01, 0x33, 0xd2, 0x74,
+ 0xce, 0x52, 0xbf, 0xa8, 0x0e, 0x3f, 0xa0, 0x95, 0xb8, 0x6b, 0x15, 0x35,
+ 0xac, 0xf9, 0xb3, 0x83, 0x04, 0x66, 0x0e, 0xa3, 0x79, 0x28, 0x00, 0xe3,
+ 0x5a, 0x24, 0x8b, 0x9a, 0xbf, 0x58, 0xbc, 0x00, 0xbc, 0xa6, 0x3c, 0x69,
+ 0x97, 0x36, 0x5e, 0x76, 0x5b, 0x6a, 0x67, 0x49, 0x6c, 0x10, 0x1c, 0xb4,
+ 0xa7, 0x44, 0xa9, 0xed, 0x24, 0xea, 0xbb, 0xa4, 0x48, 0x3c, 0x26, 0x2d,
+ 0xa2, 0xd5, 0xe8, 0xf4, 0x8d, 0xa2, 0x71, 0x4e, 0xcf, 0x77, 0x14, 0x9d,
+ 0xb2, 0xfc, 0x91, 0x1a, 0x44, 0x25, 0xc6, 0xe3, 0xab, 0x42, 0x73, 0xb6,
+ 0xb4, 0x18, 0x80, 0xeb, 0xf3, 0xed, 0x40, 0xb5, 0x82, 0xa5, 0x96, 0x06,
+ 0x6e, 0xb5, 0xc4, 0x07, 0xca, 0x44, 0x61, 0x6c, 0x64, 0x96, 0xd3, 0x1b,
+ 0xe6, 0xd1, 0x10, 0x20, 0xfb, 0x00, 0xdc, 0x0a, 0x9a, 0x7b, 0x28, 0x31,
+ 0x6e, 0xf7, 0x45, 0x3d, 0xa6, 0x90, 0xeb, 0x9e, 0xcd, 0x89, 0xa1, 0xbf,
+ 0x64, 0xf7, 0x23, 0xbc, 0x8f, 0xfb, 0x6b, 0x72, 0xa8, 0xce, 0x1c, 0x80,
+ 0xdc, 0x94, 0x86, 0xc0, 0x29, 0x02, 0x9a, 0x2b, 0x22, 0x73, 0xf4, 0x93,
+ 0x94, 0x04, 0x16, 0xa1, 0x15, 0x71, 0x47, 0x2e, 0xe3, 0xb4, 0x18, 0xb5,
+ 0x7c, 0x9a, 0x0e, 0xf0, 0xd3, 0xa6, 0xc6, 0x92, 0xa2, 0x2b, 0xfb, 0xac,
+ 0x55, 0x8e, 0x25, 0x14, 0x75, 0xb3, 0xdc, 0x32, 0x64, 0xd3, 0x35, 0x72,
+ 0x7b, 0x2d, 0x1f, 0x49, 0x91, 0xfa, 0x61, 0x6b, 0x70, 0x75, 0x1f, 0x05,
+ 0x4b, 0x15, 0x41, 0x49, 0x98, 0xf2, 0x2c, 0xa8, 0x0c, 0xd1, 0x8a, 0x5f,
+ 0xb2, 0xba, 0x36, 0x23, 0x41, 0x16, 0xe0, 0xf3, 0xcf, 0x07, 0x8b, 0xfa,
+ 0xcf, 0x25, 0xe1, 0x73, 0x3b, 0xa9, 0xa6, 0xdb, 0x02, 0x2d, 0x05, 0x12,
+ 0xcf, 0x00, 0xb7, 0xe9, 0xb4, 0x83, 0x56, 0x99, 0xfb, 0x96, 0x83, 0x47,
+ 0xcc, 0x0f, 0x41, 0xc9, 0xbb, 0x20, 0x1f, 0x0a, 0x1c, 0xd5, 0x7c, 0xb8,
+ 0x1d, 0x06, 0xda, 0x4b, 0x83, 0x69, 0x0a, 0x16, 0xdd, 0x39, 0x3b, 0x0d,
+ 0xbe, 0xa9, 0x76, 0x4f, 0xf0, 0x2b, 0xbe, 0xcc, 0x62, 0x07, 0xf5, 0x66,
+ 0x49, 0x70, 0xeb, 0xb8, 0x50, 0xbb, 0x3a, 0x38, 0xa3, 0x83, 0x10, 0x0c,
+ 0x36, 0xbe, 0xcb, 0xf4, 0xce, 0xa7, 0x07, 0x23, 0x90, 0xb8, 0x39, 0x83,
+ 0x47, 0x00, 0x4a, 0xcd, 0x23, 0x00, 0x8c, 0x96, 0xc0, 0xae, 0xd1, 0x55,
+ 0x3e, 0xbf, 0x9f, 0xad, 0xce, 0x33, 0xfd, 0xc4, 0x25, 0x48, 0x75, 0x04,
+ 0x9e, 0xe9, 0xe6, 0x3e, 0x1c, 0x3c, 0xb4, 0x3b, 0x7a, 0x52, 0x3f, 0x03,
+ 0xac, 0x11, 0x76, 0x55, 0x9c, 0x80, 0x10, 0x07, 0x4e, 0x88, 0x22, 0x19,
+ 0x88, 0x0d, 0x93, 0x84, 0x1f, 0xb6, 0x30, 0x24, 0x16, 0x26, 0x84, 0x80,
+ 0x03, 0x81, 0x13, 0x61, 0x6e, 0xa3, 0xa5, 0x39, 0xda, 0x60, 0x88, 0x81,
+ 0xff, 0x88, 0xe3, 0x2c, 0xad, 0xf4, 0x4d, 0xa1, 0xd1, 0x96, 0x5e, 0x27,
+ 0x92, 0x39, 0xab, 0xe5, 0x98, 0x78, 0x19, 0x1f, 0x95, 0xd5, 0x72, 0xd4,
+ 0xae, 0x87, 0xe1, 0xe2, 0xc5, 0xf4, 0x5d, 0xea, 0x7e, 0x27, 0x4c, 0x3e,
+ 0x44, 0xea, 0x8d, 0x46, 0xf2, 0x96, 0x56, 0xcc, 0xce, 0x82, 0x6d, 0x5a,
+ 0x3c, 0x11, 0xac, 0x94, 0x6b, 0x11, 0x5c, 0xb8, 0x29, 0xeb, 0x9c, 0x35,
+ 0x7b, 0x48, 0xd0, 0xc5, 0xf6, 0x79, 0x51, 0xa4, 0xe0, 0xd9, 0xc0, 0x7c,
+ 0x01, 0x4f, 0x3f, 0x7e, 0x6c, 0xef, 0x84, 0x2f, 0x66, 0x0e, 0x5d, 0x51,
+ 0x5d, 0xf3, 0xcf, 0x3e, 0x7e, 0xac, 0x7f, 0xf9, 0x40, 0x99, 0x6a, 0x96,
+ 0x1d, 0x50, 0x8f, 0xab, 0xca, 0x75, 0xa5, 0xe2, 0x60, 0x15, 0x0d, 0x96,
+ 0x58, 0x71, 0x1b, 0xef, 0x62, 0x89, 0x5e, 0x6d, 0xfb, 0x82, 0xa0, 0xfd,
+ 0x09, 0x47, 0xaa, 0xae, 0x13, 0x7f, 0x4d, 0x30, 0x18, 0xd6, 0x35, 0x9d,
+ 0x4a, 0xa9, 0x24, 0xa5, 0x44, 0xef, 0x2a, 0x57, 0xaf, 0x34, 0x7b, 0xac,
+ 0x19, 0x16, 0x12, 0x4b, 0x75, 0x4e, 0x80, 0xe5, 0xaf, 0xb2, 0x2a, 0x9d,
+ 0xf3, 0x3b, 0xa8, 0x50, 0x48, 0xaf, 0xef, 0xd2, 0xfa, 0xa7, 0xd9, 0x8a,
+ 0x75, 0x2a, 0x59, 0x6d, 0x74, 0xe8, 0x8a, 0x65, 0x75, 0x2d, 0xfb, 0x3c,
+ 0xbe, 0x8f, 0x5c, 0x24, 0x85, 0x81, 0xd7, 0x07, 0xc0, 0x2c, 0x18, 0x97,
+ 0xa0, 0x20, 0x5a, 0x1e, 0x1a, 0xd6, 0x62, 0x88, 0x57, 0x3b, 0x0e, 0xb3,
+ 0xbb, 0x83, 0x34, 0xe9, 0x2e, 0xf9, 0x48, 0x8b, 0x2d, 0xa1, 0x96, 0x92,
+ 0x3a, 0x4a, 0x8a, 0x1e, 0xdf, 0x32, 0x57, 0x79, 0x41, 0x1b, 0xba, 0x50,
+ 0xa9, 0x43, 0x82, 0x46, 0x5b, 0x61, 0x1a, 0xd2, 0x95, 0x2b, 0x5d, 0x28,
+ 0x01, 0xbc, 0xa8, 0x59, 0x22, 0xde, 0xc1, 0xbc, 0x52, 0x39, 0xd5, 0xca,
+ 0xad, 0x60, 0x75, 0x6d, 0xd4, 0x0f, 0x5d, 0x45, 0x7b, 0xe1, 0x31, 0xfc,
+ 0xc7, 0xe7, 0x5c, 0x05, 0x6b, 0xf4, 0x40, 0xc1, 0x45, 0x13, 0x80, 0xcb,
+ 0x79, 0x92, 0x2c, 0x35, 0x8e, 0xc5, 0x4a, 0xb0, 0xcb, 0xb4, 0xf4, 0x18,
+ 0x8a, 0x08, 0xa0, 0x54, 0xa8, 0x6a, 0xcd, 0xba, 0x03, 0xae, 0xb7, 0x37,
+ 0x7b, 0x9e, 0x7c, 0x22, 0x7e, 0x1c, 0x05, 0xac, 0x44, 0xcf, 0xd5, 0x66,
+ 0x5a, 0x85, 0xe2, 0x4c, 0xf7, 0x89, 0x74, 0x5b, 0xa6, 0xab, 0xac, 0xdb,
+ 0xe6, 0x48, 0x46, 0xd7, 0x7a, 0x6b, 0x54, 0x93, 0x92, 0xda, 0x88, 0x12,
+ 0xe2, 0x7b, 0x85, 0x3c, 0x08, 0x33, 0xe1, 0x15, 0x04, 0x1f, 0x65, 0x7f,
+ 0x08, 0xea, 0x95, 0x42, 0xb7, 0x88, 0x1c, 0x08, 0xea, 0x9c, 0xca, 0x12,
+ 0xb6, 0x58, 0x2d, 0x02, 0xef, 0x1b, 0x6a, 0x84, 0xe9, 0xea, 0x36, 0x72,
+ 0x4f, 0x6d, 0x3c, 0xf6, 0x91, 0xa7, 0x80, 0x36, 0xe4, 0xc0, 0x3f, 0x8b,
+ 0x20, 0x1e, 0x2d, 0xc2, 0x29, 0xa6, 0x44, 0xd9, 0x66, 0x7e, 0x50, 0xe3,
+ 0xa8, 0x38, 0x2e, 0x95, 0x27, 0xe4, 0x1d, 0xe3, 0xc2, 0x76, 0xdc, 0x9e,
+ 0xab, 0x0a, 0xd5, 0x32, 0x83, 0x29, 0x5f, 0xb1, 0x51, 0x01, 0x6e, 0x27,
+ 0xe6, 0x69, 0x30, 0x1a, 0xc6, 0x26, 0xe3, 0xb9, 0xe9, 0xd0, 0xb6, 0xf8,
+ 0xe3, 0x79, 0xce, 0x91, 0xd2, 0xa5, 0x2b, 0xc7, 0x51, 0xb4, 0xf0, 0x6b,
+ 0x50, 0x59, 0x40, 0xd8, 0xcd, 0xac, 0xa3, 0xa2, 0xd8, 0xbb, 0x9c, 0x73,
+ 0xc9, 0x5d, 0xcd, 0x10, 0xd7, 0x8e, 0xbe, 0xd9, 0x2e, 0x1f, 0xa0, 0xed,
+ 0x68, 0x25, 0xa2, 0x41, 0x1d, 0xf3, 0x44, 0x07, 0x0d, 0x94, 0x00, 0x81,
+ 0x6d, 0xbc, 0x36, 0xe4, 0x6f, 0xbe, 0xe3, 0x3a, 0x4a, 0x84, 0xca, 0xe5,
+ 0xc6, 0x8e, 0x4b, 0x44, 0x3d, 0xf0, 0x7c, 0x3a, 0xca, 0x9f, 0x61, 0x07,
+ 0xa8, 0x91, 0x34, 0x9f, 0x21, 0x5e, 0x42, 0x38, 0x4a, 0xab, 0x38, 0xaf,
+ 0xe4, 0x98, 0xea, 0x68, 0xfa, 0xa5, 0xab, 0xfe, 0xc4, 0xaf, 0x4b, 0x59,
+ 0x16, 0x94, 0x56, 0x0d, 0x6a, 0xab, 0x8e, 0x22, 0x2d, 0x14, 0x55, 0xb5,
+ 0x4b, 0xcd, 0x7a, 0x08, 0x15, 0xd0, 0x6e, 0x25, 0x00, 0x1d, 0x56, 0xbb,
+ 0xd3, 0x31, 0xda, 0x7f, 0x22, 0x93, 0x2a, 0x51, 0x4d, 0x3a, 0x9d, 0xb7,
+ 0x33, 0x1e, 0xc6, 0xf8, 0x50, 0x74, 0xb1, 0xbf, 0xae, 0x52, 0x94, 0xbe,
+ 0x02, 0x7c, 0xc0, 0xeb, 0x9c, 0xf7, 0xbf, 0xd4, 0xd8, 0xe9, 0x2b, 0x48,
+ 0x62, 0x1a, 0x46, 0x54, 0x28, 0x57, 0xa1, 0xee, 0x5b, 0x2a, 0x2c, 0x23,
+ 0x0e, 0x8f, 0xac, 0x10, 0x08, 0xd0, 0xdf, 0x17, 0x74, 0x49, 0x8d, 0x1c,
+ 0x8a, 0x39, 0x31, 0x84, 0x0e, 0x80, 0x7f, 0x35, 0xdc, 0x94, 0x37, 0x6d,
+ 0x09, 0x74, 0x50, 0x8b, 0xdf, 0x87, 0xd3, 0x5e, 0x9d, 0x10, 0x15, 0x67,
+ 0x84, 0x90, 0xe6, 0xb7, 0x2d, 0x70, 0x67, 0x56, 0x2b, 0x9d, 0x9b, 0xb2,
+ 0xd0, 0xf0, 0x26, 0xd9, 0xd4, 0x02, 0x23, 0xcb, 0xb8, 0x9c, 0x0f, 0xd3,
+ 0x26, 0xe1, 0x0b, 0x94, 0xa7, 0x0b, 0xd1, 0xf1, 0x22, 0x04, 0x12, 0xca,
+ 0xc6, 0x07, 0xa4, 0x49, 0xb7, 0xf1, 0x3d, 0x1f, 0x62, 0x37, 0x4f, 0x76,
+ 0x6b, 0xaa, 0xd0, 0x18, 0x5b, 0x41, 0xcb, 0x3a, 0xc4, 0x22, 0xae, 0x41,
+ 0xd9, 0xf6, 0xec, 0x7c, 0x58, 0x8a, 0x14, 0x17, 0x48, 0x5b, 0xd8, 0x14,
+ 0xcb, 0x21, 0x30, 0x9c, 0x67, 0x3e, 0x84, 0xad, 0xf2, 0xeb, 0x88, 0x5f,
+ 0xa8, 0xcd, 0xb9, 0x9c, 0x4b, 0xb0, 0x94, 0xc1, 0x4d, 0x09, 0xf4, 0x94,
+ 0x80, 0x4e, 0x5d, 0x14, 0xf7, 0x16, 0x14, 0xc9, 0xa9, 0xcc, 0x17, 0x27,
+ 0xe3, 0x40, 0x05, 0xf0, 0xe6, 0x83, 0x36, 0xe7, 0xe1, 0xb4, 0x3f, 0x91,
+ 0x9d, 0x61, 0x8a, 0x44, 0x3d, 0xe5, 0xb0, 0x7a, 0xb6, 0xab, 0xa8, 0x2c,
+ 0xa6, 0x55, 0x2b, 0x5b, 0xa2, 0x76, 0xb3, 0x26, 0x45, 0x4a, 0xd7, 0xa1,
+ 0x8d, 0x42, 0xd2, 0xed, 0x69, 0xec, 0x43, 0x4b, 0xfe, 0x67, 0x1e, 0x81,
+ 0xd9, 0x10, 0x4b, 0xfb, 0xab, 0x88, 0x02, 0xaa, 0x02, 0x0c, 0x5b, 0x56,
+ 0x90, 0x2a, 0x62, 0x48, 0xd3, 0x39, 0xa2, 0x11, 0x93, 0x6c, 0x5a, 0xdc,
+ 0xd7, 0x10, 0x33, 0x67, 0x9f, 0x50, 0xf0, 0xaf, 0xae, 0x3c, 0x30, 0x3c,
+ 0x2b, 0x33, 0x25, 0xc6, 0x24, 0xd7, 0x2a, 0x90, 0xf4, 0x89, 0x1b, 0x63,
+ 0xfd, 0x5c, 0xef, 0xa2, 0xcc, 0x6a, 0xb3, 0x39, 0x5f, 0xc2, 0x5d, 0xdc,
+ 0x75, 0xb4, 0x99, 0x72, 0x30, 0x4c, 0x8f, 0x02, 0x4a, 0x6d, 0x88, 0x04,
+ 0xc9, 0x2e, 0xa6, 0x99, 0xd0, 0x60, 0x93, 0x7b, 0x5d, 0xae, 0x60, 0x16,
+ 0xd5, 0xb4, 0xc5, 0xc6, 0x6e, 0x63, 0x7d, 0x3a, 0x82, 0xe5, 0x06, 0x91,
+ 0x12, 0x80, 0x52, 0x80, 0x92, 0x00, 0x6d, 0xa6, 0x82, 0x3f, 0x87, 0x14,
+ 0x50, 0xaf, 0x85, 0xde, 0x9a, 0x8e, 0x9c, 0xc3, 0x4a, 0x4d, 0x25, 0x9f,
+ 0xba, 0xed, 0x6e, 0xa3, 0x3f, 0xb9, 0x32, 0xe9, 0xda, 0xdd, 0xf0, 0xdb,
+ 0xa1, 0xfb, 0x01, 0x0b, 0x9a, 0xa7, 0x1a, 0xd0, 0xc8, 0x66, 0x3c, 0xeb,
+ 0xc4, 0x20, 0x42, 0x9d, 0xf3, 0x67, 0x5b, 0xa3, 0x4f, 0xdd, 0x16, 0x27,
+ 0x63, 0xeb, 0xa6, 0xb4, 0x41, 0x93, 0xe3, 0x47, 0xb6, 0x04, 0x02, 0x2c,
+ 0x43, 0xc1, 0xb5, 0xb2, 0x05, 0x14, 0xb6, 0x3c, 0x94, 0xaf, 0xaa, 0x5a,
+ 0xb0, 0x39, 0x5f, 0x24, 0x28, 0xd3, 0x12, 0x23, 0x7f, 0x23, 0x2c, 0x5e,
+ 0x7e, 0x39, 0x8f, 0xef, 0xba, 0x00, 0x9c, 0x71, 0x98, 0xa5, 0x6a, 0x1d,
+ 0xad, 0x76, 0x18, 0xb0, 0x5c, 0x7a, 0xea, 0xfd, 0xea, 0xe8, 0x60, 0x7c,
+ 0x31, 0x6a, 0x5e, 0x39, 0xad, 0x74, 0x22, 0x14, 0x1b, 0x52, 0x33, 0x11,
+ 0xb8, 0x02, 0x1b, 0x16, 0x23, 0x2e, 0x8d, 0x5b, 0x38, 0xf0, 0x3c, 0x1e,
+ 0x9e, 0x8c, 0xce, 0xda, 0xe7, 0xfc, 0xa7, 0x0e, 0x00, 0x23, 0x48, 0x88,
+ 0x70, 0x78, 0x4e, 0xd2, 0x39, 0xcf, 0x80, 0xc6, 0x45, 0xac, 0x77, 0xa1,
+ 0x79, 0x16, 0x5c, 0xdf, 0x3e, 0xca, 0xe7, 0x00, 0xdf, 0x42, 0x37, 0x0d,
+ 0x28, 0xf3, 0x56, 0xb9, 0xd0, 0x83, 0xf3, 0x77, 0xc7, 0xef, 0xbe, 0xde,
+ 0xaf, 0xdd, 0x99, 0xf3, 0x3c, 0x2f, 0x13, 0xf5, 0xd1, 0x0b, 0x8a, 0xba,
+ 0xac, 0x96, 0xe4, 0x87, 0x3a, 0xc4, 0x8d, 0x8e, 0x4b, 0x9c, 0xc1, 0x0d,
+ 0x05, 0x2a, 0xb6, 0xbc, 0x11, 0xd3, 0x9c, 0xd6, 0x96, 0x61, 0x89, 0x67,
+ 0xf4, 0x70, 0x9d, 0xdf, 0x32, 0x9f, 0xde, 0x94, 0x4f, 0xc5, 0xd8, 0xf5,
+ 0xc9, 0xb1, 0xf6, 0xe3, 0xd3, 0xc3, 0x6f, 0xc7, 0x4f, 0x83, 0x48, 0xfb,
+ 0xaa, 0x61, 0xb8, 0xd1, 0xf2, 0xb3, 0x78, 0xa3, 0x9d, 0xa6, 0xfa, 0x48,
+ 0x98, 0x7d, 0x9d, 0x2b, 0x3d, 0x0b, 0x6d, 0xa2, 0x9d, 0xc7, 0xaa, 0x5e,
+ 0xc4, 0x84, 0x4d, 0x5d, 0x69, 0xbe, 0x72, 0x08, 0xfa, 0x01, 0x5c, 0xd5,
+ 0x40, 0xa5, 0xc8, 0xfb, 0x8e, 0x2a, 0x85, 0x56, 0xdd, 0x24, 0xa8, 0x67,
+ 0xd2, 0x8a, 0x8e, 0x63, 0x18, 0x0e, 0x31, 0x96, 0x7c, 0x36, 0x68, 0x8a,
+ 0x3b, 0xc4, 0x29, 0x48, 0xfe, 0x9b, 0xaf, 0xb8, 0x67, 0xe0, 0x75, 0x38,
+ 0x40, 0x13, 0x17, 0xac, 0xd9, 0x94, 0x3f, 0x64, 0xe5, 0x2d, 0x7e, 0x9f,
+ 0xa1, 0x5a, 0xfc, 0x50, 0x75, 0xb3, 0x63, 0x7d, 0x6a, 0x7f, 0x7b, 0xdb,
+ 0x9b, 0xb3, 0x24, 0xb8, 0x70, 0xf4, 0xdb, 0x69, 0x05, 0xd2, 0x67, 0xfc,
+ 0xab, 0x88, 0x22, 0xfe, 0x34, 0xaa, 0x68, 0x49, 0xc9, 0xbf, 0x90, 0x2a,
+ 0x3e, 0x5f, 0xc7, 0x6c, 0x3b, 0x0b, 0xdb, 0x3c, 0x48, 0x13, 0xae, 0xce,
+ 0xcd, 0xff, 0x20, 0xaa, 0x88, 0x3f, 0x8d, 0x2c, 0xe2, 0x1a, 0x5d, 0xac,
+ 0xc9, 0x09, 0xff, 0x2d, 0x31, 0x25, 0x31, 0x8c, 0x67, 0x43, 0x87, 0x8d,
+ 0xff, 0x18, 0xc5, 0xd4, 0x4c, 0xb4, 0x2c, 0x24, 0x80, 0x68, 0x9e, 0xe9,
+ 0x6c, 0x37, 0x61, 0x09, 0x4e, 0x42, 0xd0, 0x34, 0x33, 0xc6, 0x77, 0x43,
+ 0xf4, 0xe3, 0xee, 0xdb, 0x7a, 0x94, 0x03, 0x39, 0xda, 0x12, 0xfc, 0x26,
+ 0xa1, 0xae, 0x56, 0x38, 0xf3, 0x2f, 0xa7, 0xb5, 0xff, 0x57, 0x70, 0xa0,
+ 0x67, 0xbe, 0xb2, 0xc1, 0xa7, 0xd0, 0xdc, 0xb3, 0x6b, 0x47, 0x73, 0x5d,
+ 0x45, 0x3f, 0x8d, 0x37, 0xfd, 0xc6, 0xf9, 0x3a, 0x1d, 0x72, 0x95, 0xad,
+ 0x3a, 0xdc, 0xd4, 0x05, 0xa9, 0xd8, 0x88, 0x6e, 0x08, 0x01, 0xf4, 0x35,
+ 0x09, 0xa4, 0x8d, 0xb4, 0xab, 0x74, 0xec, 0x52, 0xa9, 0x03, 0xeb, 0xb1,
+ 0xa0, 0x51, 0xd1, 0x08, 0x5a, 0x77, 0xe6, 0xb3, 0x5f, 0xc3, 0x1e, 0x8d,
+ 0xd2, 0x19, 0xcf, 0x60, 0x22, 0x49, 0xdb, 0x42, 0xdf, 0x5a, 0x71, 0x33,
+ 0xb7, 0x62, 0xd2, 0x5d, 0xce, 0x60, 0xc0, 0x71, 0x5b, 0x5a, 0xdb, 0xa3,
+ 0xb4, 0x5e, 0xe3, 0xa3, 0x1d, 0x99, 0x05, 0xeb, 0x52, 0xda, 0xfe, 0xdf,
+ 0xc2, 0x43, 0x9f, 0x7d, 0x1a, 0x39, 0xff, 0x33, 0x6e, 0xd6, 0xff, 0x41,
+ 0xc4, 0xdb, 0xb1, 0xcd, 0x9b, 0x8a, 0x4c, 0x26, 0x9a, 0xa1, 0x5c, 0x2c,
+ 0x5b, 0x82, 0x33, 0xe3, 0x44, 0x78, 0x2c, 0xe2, 0xf1, 0xd9, 0x77, 0xcf,
+ 0x25, 0xf0, 0x6d, 0xdc, 0x86, 0xd6, 0x3f, 0x79, 0x7d, 0x70, 0xd6, 0x71,
+ 0x33, 0x5c, 0x91, 0xc2, 0xbf, 0x4c, 0x87, 0xac, 0x56, 0xb1, 0x09, 0xee,
+ 0xa5, 0xfe, 0xc2, 0x24, 0xde, 0x65, 0x64, 0x34, 0x23, 0xa9, 0x3d, 0x2f,
+ 0xd8, 0xdd, 0xe2, 0x31, 0xc6, 0x2c, 0x55, 0x3f, 0x63, 0x87, 0xd3, 0x74,
+ 0x31, 0xdb, 0x96, 0x3f, 0x87, 0x97, 0x7f, 0x9d, 0xb5, 0x55, 0xbd, 0x10,
+ 0x18, 0xbb, 0x96, 0x88, 0xa8, 0x60, 0xe3, 0x69, 0xb5, 0xae, 0x04, 0x73,
+ 0xb9, 0x1f, 0x9c, 0xf2, 0x48, 0x73, 0x6b, 0x01, 0x2a, 0xbd, 0x6e, 0x5e,
+ 0x42, 0x73, 0xad, 0xea, 0x07, 0x52, 0x2b, 0x04, 0x55, 0x07, 0xf8, 0xeb,
+ 0xed, 0xa0, 0x29, 0xd7, 0x7e, 0xc7, 0x67, 0xd6, 0x7a, 0x47, 0x02, 0x0f,
+ 0x77, 0x26, 0x6d, 0x31, 0xc2, 0x9e, 0x8e, 0x2a, 0xe8, 0xa7, 0xfd, 0x25,
+ 0xec, 0x0d, 0x8c, 0xbd, 0x50, 0xb6, 0xaa, 0x90, 0xb0, 0x3b, 0xdf, 0xdf,
+ 0xb5, 0x43, 0x2d, 0xfd, 0xa8, 0xfb, 0x2e, 0x35, 0x6b, 0x34, 0x81, 0x31,
+ 0x9b, 0xa6, 0xcb, 0x78, 0xae, 0x69, 0x9d, 0x0f, 0xd5, 0x4e, 0x6a, 0x96,
+ 0x9e, 0xa9, 0x4f, 0x88, 0x94, 0xed, 0x66, 0x39, 0xb7, 0x3a, 0x18, 0xb7,
+ 0xd5, 0x93, 0xb3, 0xe4, 0x69, 0x6c, 0x1e, 0xce, 0xa7, 0xaa, 0xe9, 0x08,
+ 0xdd, 0x47, 0x0e, 0x2f, 0x9e, 0x68, 0x27, 0x25, 0xc1, 0x41, 0x0d, 0xe8,
+ 0xa7, 0xdd, 0x17, 0xcf, 0x77, 0xa3, 0x32, 0xbe, 0x07, 0x3e, 0x4a, 0xa9,
+ 0xef, 0x3f, 0x1d, 0x3d, 0xd9, 0x7e, 0x3a, 0x7a, 0x1a, 0xf9, 0xd2, 0xb2,
+ 0x93, 0xc4, 0xda, 0x27, 0xc6, 0xd9, 0x42, 0xc5, 0x90, 0xf3, 0xf4, 0xee,
+ 0xe8, 0x90, 0x59, 0xb5, 0xa5, 0xf8, 0x36, 0xd4, 0x3b, 0x03, 0x65, 0xa2,
+ 0x55, 0x1b, 0xb9, 0xac, 0xe0, 0x2e, 0xa5, 0xb4, 0x63, 0x39, 0x22, 0xa3,
+ 0x4d, 0x84, 0xe8, 0x67, 0x6e, 0x24, 0xcc, 0x2c, 0x85, 0x4c, 0x75, 0x65,
+ 0xba, 0x20, 0x40, 0xc2, 0x35, 0x09, 0x56, 0x6c, 0xf4, 0x70, 0x35, 0xa0,
+ 0xb2, 0x22, 0x3d, 0xb5, 0xe8, 0x8e, 0x12, 0x3a, 0x57, 0x63, 0x24, 0x5c,
+ 0x81, 0x5c, 0xed, 0x5a, 0xfc, 0xcc, 0xfa, 0x8a, 0xc5, 0xcf, 0xd7, 0x52,
+ 0x2a, 0x2c, 0xf8, 0xa5, 0xab, 0xd2, 0x65, 0x2d, 0x9b, 0x41, 0xeb, 0xfb,
+ 0xa0, 0x38, 0x70, 0x7f, 0xd8, 0xb7, 0x4b, 0xca, 0x62, 0x67, 0xb8, 0xb7,
+ 0x4a, 0x2c, 0xa6, 0xcd, 0x9a, 0x10, 0xff, 0x70, 0xb9, 0xb5, 0xe2, 0xdb,
+ 0xa0, 0x4a, 0xe6, 0x59, 0x52, 0x69, 0xb9, 0xc9, 0xe8, 0xe5, 0xe9, 0xd9,
+ 0xc5, 0xab, 0xdb, 0x78, 0xde, 0x8a, 0xf1, 0x60, 0x14, 0x45, 0x2b, 0xcd,
+ 0xe9, 0xac, 0xb9, 0xfc, 0x66, 0x90, 0x1c, 0x35, 0x76, 0x39, 0x42, 0xf6,
+ 0x64, 0x17, 0xac, 0xd2, 0xc5, 0xc5, 0x9f, 0xcf, 0x8e, 0x5e, 0xbd, 0x64,
+ 0x5b, 0xf0, 0x17, 0x6c, 0x90, 0x2f, 0x6b, 0xa6, 0x61, 0x2e, 0x03, 0xdd,
+ 0xbe, 0x19, 0x7f, 0x78, 0x7d, 0x3c, 0x3e, 0x3b, 0x39, 0x3d, 0x7c, 0xf5,
+ 0xf2, 0x07, 0x76, 0x61, 0xd2, 0xea, 0xdd, 0x07, 0xef, 0xba, 0xcf, 0x5c,
+ 0xba, 0x43, 0xbb, 0xf8, 0xdd, 0xd1, 0xf7, 0x1f, 0x8e, 0xde, 0x7d, 0xf7,
+ 0xea, 0xe5, 0x6d, 0x5c, 0x0c, 0x78, 0x7e, 0xf2, 0x36, 0x9b, 0x64, 0x3b,
+ 0xea, 0x22, 0x07, 0x6b, 0x74, 0x81, 0x6a, 0x88, 0x4b, 0x8e, 0x1d, 0x7c,
+ 0x20, 0xac, 0x4c, 0xee, 0x32, 0x5f, 0x6f, 0xae, 0x29, 0xe0, 0x07, 0x51,
+ 0x6c, 0xf5, 0x94, 0xd6, 0xf7, 0xe7, 0x27, 0xa3, 0x4e, 0x82, 0x71, 0x15,
+ 0x19, 0x7c, 0x3d, 0x0e, 0xb5, 0x0d, 0xf9, 0x56, 0x51, 0xfc, 0xc2, 0xd7,
+ 0x9d, 0x56, 0xc8, 0xd0, 0x07, 0x63, 0xe8, 0x84, 0x75, 0xf9, 0x70, 0x5a,
+ 0x57, 0x0a, 0x52, 0x82, 0x68, 0x68, 0x06, 0x29, 0x30, 0x0b, 0xb6, 0x2d,
+ 0x32, 0x65, 0xde, 0x36, 0x79, 0xf9, 0xd8, 0x77, 0xf8, 0xde, 0x21, 0xd4,
+ 0x70, 0x04, 0x08, 0xe6, 0x76, 0x28, 0x40, 0xc5, 0x92, 0xa0, 0x52, 0x9f,
+ 0x84, 0x30, 0xe2, 0xbc, 0x58, 0x0b, 0xe6, 0xce, 0x60, 0xe6, 0x37, 0x6e,
+ 0x5c, 0x85, 0xd0, 0x6f, 0x3d, 0xf9, 0xc1, 0x52, 0xd3, 0x82, 0x42, 0x22,
+ 0x1d, 0xe9, 0x71, 0x75, 0x7c, 0x53, 0xf1, 0x44, 0xb2, 0x4c, 0xc9, 0xb9,
+ 0x7b, 0x9c, 0x7e, 0xe9, 0x22, 0x87, 0x65, 0x63, 0x3d, 0x3a, 0x76, 0xdb,
+ 0x97, 0x89, 0x9a, 0xec, 0xee, 0xcc, 0xd9, 0x61, 0xcb, 0x1d, 0x2c, 0xf8,
+ 0xe6, 0x78, 0xcb, 0xa5, 0x3b, 0x72, 0x8b, 0x67, 0xef, 0x2f, 0x82, 0x4c,
+ 0xd7, 0x56, 0xb4, 0x5a, 0xeb, 0x10, 0x36, 0x04, 0x65, 0xbf, 0x50, 0xbd,
+ 0x61, 0xaf, 0x59, 0x57, 0xc6, 0x4c, 0xfd, 0xc4, 0x18, 0xb8, 0xb2, 0xb8,
+ 0xc7, 0x2e, 0x68, 0x89, 0x7e, 0x1a, 0x47, 0x2c, 0xb9, 0x5e, 0x74, 0xbd,
+ 0x68, 0x20, 0x52, 0xe2, 0xea, 0x9f, 0x04, 0xfd, 0x8c, 0xc2, 0x7e, 0xc4,
+ 0xf1, 0xb6, 0xd5, 0x4a, 0xea, 0xbb, 0x6f, 0x46, 0xea, 0xbb, 0xbe, 0x79,
+ 0x9c, 0x0e, 0x52, 0x4e, 0x46, 0x06, 0x9b, 0x37, 0xbb, 0x15, 0x26, 0x44,
+ 0x79, 0x1d, 0x35, 0x54, 0x24, 0x6b, 0x0d, 0xc8, 0xe7, 0x28, 0xf3, 0x8d,
+ 0xec, 0x74, 0x04, 0x7d, 0x19, 0xa4, 0xb5, 0xd5, 0xa4, 0x56, 0x9f, 0xa2,
+ 0x35, 0x5b, 0x76, 0x82, 0x36, 0xc9, 0x26, 0x76, 0x2c, 0xea, 0x9f, 0x1b,
+ 0x02, 0x32, 0xb3, 0xc2, 0xe1, 0x85, 0x8f, 0xda, 0xe3, 0xa0, 0xbb, 0xce,
+ 0x00, 0x2c, 0x94, 0xd7, 0x1b, 0x5e, 0xb4, 0xf0, 0xe0, 0xf8, 0x05, 0x0e,
+ 0x59, 0x0b, 0x42, 0xd9, 0x11, 0x21, 0xca, 0xfb, 0x22, 0x94, 0xa4, 0x19,
+ 0x37, 0x10, 0x2a, 0x46, 0x1a, 0x40, 0xcb, 0xfe, 0x90, 0x35, 0x79, 0xcd,
+ 0x65, 0xd4, 0xbb, 0x9a, 0xe7, 0x93, 0x09, 0x4d, 0xaa, 0xe7, 0x2a, 0x71,
+ 0x5c, 0x10, 0xdb, 0xbc, 0x82, 0xc8, 0x3b, 0x30, 0xb4, 0x40, 0x7f, 0x58,
+ 0x51, 0xc1, 0x0a, 0x7d, 0xad, 0xcb, 0xcd, 0xc5, 0xde, 0x1a, 0xb2, 0xbc,
+ 0xed, 0x2b, 0x2a, 0x4c, 0xdd, 0x07, 0xe5, 0x2f, 0x11, 0x8b, 0xc5, 0x9f,
+ 0x5a, 0xff, 0xad, 0x30, 0x5e, 0xce, 0x25, 0xf5, 0x59, 0x9f, 0xca, 0x7c,
+ 0xc0, 0x72, 0xb4, 0xb2, 0x50, 0xda, 0x91, 0xe7, 0xc9, 0x13, 0xa6, 0x09,
+ 0xf4, 0xfe, 0x83, 0x07, 0xb1, 0x3b, 0xe0, 0x7f, 0xf7, 0xfe, 0xde, 0xb3,
+ 0xfa, 0x51, 0x5c, 0xb1, 0x4f, 0x06, 0x5f, 0x71, 0xc9, 0x9e, 0xd2, 0x8a,
+ 0x56, 0x75, 0xd4, 0xa8, 0x62, 0xb7, 0xe1, 0xda, 0xd6, 0xd3, 0xc5, 0xd5,
+ 0x8f, 0xbb, 0xc3, 0xdd, 0x9d, 0x9d, 0x9d, 0x9f, 0x47, 0x4b, 0x5e, 0xba,
+ 0x4b, 0x34, 0x4f, 0xff, 0x8e, 0x96, 0xe9, 0x94, 0x0d, 0xf9, 0xb4, 0x99,
+ 0x69, 0xcc, 0x4d, 0x6f, 0x4b, 0x7f, 0xdb, 0xc1, 0xcd, 0x5f, 0x4d, 0x97,
+ 0xc3, 0x2c, 0xef, 0x0a, 0x91, 0xb9, 0x58, 0x15, 0x59, 0x50, 0x7c, 0xf5,
+ 0xc3, 0xbb, 0xd3, 0xd7, 0x47, 0x27, 0x07, 0x7f, 0xb6, 0x10, 0x5b, 0x07,
+ 0x9b, 0xc0, 0x03, 0xf9, 0x90, 0xc4, 0xe5, 0xfd, 0x87, 0x32, 0xa9, 0xe8,
+ 0xcb, 0xcd, 0x27, 0x5b, 0xc8, 0x7c, 0x6d, 0xd5, 0xdf, 0xbe, 0x12, 0xb1,
+ 0xdd, 0x70, 0x14, 0x34, 0x62, 0xc9, 0xdf, 0xde, 0xa3, 0xa6, 0xeb, 0xa9,
+ 0x16, 0xf8, 0x5a, 0xb1, 0x37, 0x64, 0x32, 0xbf, 0x29, 0xd3, 0xbf, 0xd1,
+ 0xbd, 0xc3, 0xd8, 0x8a, 0xed, 0x78, 0xe6, 0x0b, 0x45, 0x50, 0xa8, 0x22,
+ 0xfe, 0x2d, 0xfa, 0xea, 0xe4, 0x5b, 0x0e, 0x23, 0x77, 0x4a, 0xcd, 0x42,
+ 0x52, 0xf6, 0xa3, 0x2f, 0x9e, 0xed, 0xee, 0x6d, 0xb9, 0x82, 0x22, 0x92,
+ 0x8c, 0xc2, 0x87, 0xb3, 0xe5, 0x56, 0xff, 0x5b, 0x12, 0x54, 0x76, 0x10,
+ 0xae, 0xec, 0x7d, 0x8c, 0x52, 0xa4, 0x5d, 0x6f, 0x39, 0x80, 0xfe, 0xc1,
+ 0x17, 0x5c, 0x01, 0x66, 0x91, 0x13, 0x45, 0x5a, 0x60, 0x45, 0x17, 0x3e,
+ 0x2b, 0x68, 0x14, 0x14, 0x6b, 0x8d, 0x68, 0x38, 0x9a, 0x5f, 0xd2, 0x2d,
+ 0x9b, 0xfc, 0xa3, 0x65, 0x9d, 0x47, 0x3d, 0x55, 0xb4, 0xda, 0xf3, 0x92,
+ 0xbd, 0xc4, 0x2c, 0x7f, 0x44, 0x2f, 0xed, 0xb7, 0x2f, 0xda, 0x91, 0x75,
+ 0x11, 0x3b, 0x65, 0xda, 0xa8, 0x41, 0x90, 0x5b, 0x22, 0xbe, 0xff, 0x38,
+ 0xa6, 0xd1, 0x17, 0x9a, 0x0a, 0xf3, 0x0d, 0xda, 0xe1, 0x9f, 0x6e, 0x5e,
+ 0xbd, 0xf1, 0xf9, 0x59, 0x6f, 0xa0, 0x7a, 0x0a, 0x75, 0x30, 0xa4, 0xbf,
+ 0x69, 0xbc, 0x10, 0xe1, 0x9f, 0xed, 0x3c, 0x7b, 0xba, 0xa5, 0x46, 0x0f,
+ 0x8c, 0x53, 0x0a, 0xfc, 0xb4, 0x6b, 0x2e, 0xe0, 0x4b, 0x57, 0x2c, 0x59,
+ 0xb0, 0x2f, 0x7c, 0xa2, 0x1d, 0x91, 0x5e, 0x7d, 0x96, 0x62, 0x30, 0xd1,
+ 0xaa, 0xd8, 0xeb, 0xa3, 0x22, 0x74, 0xcf, 0x20, 0xf7, 0x61, 0x98, 0xed,
+ 0xf2, 0xea, 0x4f, 0x1b, 0x0b, 0xe9, 0xc6, 0xf0, 0xd2, 0x7e, 0xeb, 0x5a,
+ 0x48, 0x5f, 0xd6, 0x59, 0x8b, 0xd2, 0x39, 0x5c, 0x25, 0x5e, 0xe1, 0xe6,
+ 0x02, 0x2b, 0xd2, 0xd7, 0x7a, 0x6f, 0x8a, 0xf3, 0xbf, 0x87, 0x93, 0x1c,
+ 0x39, 0x07, 0xa9, 0x82, 0x09, 0xf9, 0x05, 0xb4, 0x0c, 0x97, 0xb2, 0xa3,
+ 0x1e, 0xda, 0xc3, 0xd3, 0xc3, 0xeb, 0x2f, 0xf9, 0xdf, 0xae, 0x69, 0xf1,
+ 0xe7, 0x4e, 0x63, 0xff, 0x27, 0x4c, 0x2b, 0x98, 0x97, 0x5b, 0x51, 0x9d,
+ 0x5b, 0x4b, 0x75, 0xae, 0x1e, 0xdf, 0xbb, 0xdb, 0xdd, 0xd1, 0x4e, 0xa7,
+ 0x93, 0xf3, 0x0d, 0x97, 0xb0, 0xab, 0xa3, 0x68, 0xf1, 0x84, 0x0c, 0x7c,
+ 0x97, 0xfd, 0x94, 0x60, 0x10, 0x4e, 0x07, 0x33, 0x68, 0xb0, 0x35, 0x40,
+ 0x6f, 0xfc, 0xb2, 0x03, 0x3a, 0xa8, 0xd5, 0x68, 0x79, 0xda, 0x3a, 0x99,
+ 0x34, 0xa8, 0xdd, 0x5f, 0x37, 0xa8, 0xdd, 0xdf, 0x74, 0x50, 0x7b, 0xbf,
+ 0x6e, 0x50, 0x7b, 0xbf, 0xd5, 0xa0, 0x8a, 0xa1, 0x25, 0x65, 0x74, 0x63,
+ 0x44, 0x9f, 0x6b, 0xf8, 0x16, 0xc3, 0x1b, 0x2d, 0x18, 0x51, 0x91, 0xd9,
+ 0xe9, 0x85, 0x72, 0xf4, 0xe1, 0x91, 0xbe, 0xeb, 0x43, 0x68, 0x44, 0x60,
+ 0x68, 0x47, 0xce, 0xaa, 0xac, 0xe2, 0x42, 0x0e, 0xcb, 0x7a, 0xc9, 0x51,
+ 0x71, 0xd6, 0xae, 0x32, 0xeb, 0x44, 0x73, 0xbd, 0x11, 0x38, 0x04, 0x99,
+ 0xae, 0x35, 0xcf, 0x69, 0x92, 0x2a, 0x82, 0xed, 0x63, 0x11, 0xda, 0xcf,
+ 0xeb, 0x13, 0x66, 0xe8, 0x9c, 0x4e, 0x9d, 0xcc, 0x55, 0xf8, 0x8d, 0x39,
+ 0xe0, 0x82, 0xe3, 0x32, 0xe4, 0xe1, 0x68, 0xb6, 0x5a, 0x2c, 0x0d, 0xd6,
+ 0x22, 0xcd, 0x34, 0xc8, 0x97, 0xc7, 0x4b, 0x97, 0xf3, 0x55, 0x6e, 0xb7,
+ 0xda, 0xa0, 0x65, 0xd8, 0xe1, 0x92, 0x48, 0xf8, 0x36, 0x11, 0x74, 0x53,
+ 0x0e, 0xeb, 0x4f, 0x33, 0xa9, 0x6d, 0x26, 0x15, 0x61, 0xf3, 0x00, 0x14,
+ 0x4e, 0x45, 0x58, 0x11, 0xc1, 0xdf, 0xb7, 0x5c, 0xe9, 0x2c, 0x36, 0x73,
+ 0x54, 0x0a, 0x07, 0x73, 0xa9, 0xc6, 0x82, 0xfc, 0xb9, 0xa0, 0x42, 0xa4,
+ 0x55, 0x51, 0x5a, 0x63, 0x07, 0xe8, 0xb6, 0x51, 0x87, 0xf6, 0x69, 0xc4,
+ 0xcf, 0x0c, 0x6f, 0x07, 0x52, 0x27, 0x76, 0x92, 0x97, 0x89, 0x24, 0x85,
+ 0x60, 0x1d, 0x5a, 0x36, 0xa3, 0x72, 0x9a, 0xa6, 0xbf, 0xa5, 0x93, 0x4c,
+ 0x7a, 0x45, 0x37, 0x0f, 0x6f, 0x58, 0x2c, 0xdb, 0x25, 0xbb, 0x15, 0x6e,
+ 0x96, 0xdf, 0x2d, 0x89, 0x38, 0x74, 0xfb, 0xf5, 0x7f, 0xd0, 0x86, 0xd1,
+ 0xff, 0x73, 0x35, 0x64, 0xce, 0x3a, 0x4c, 0xe7, 0x31, 0x8c, 0x49, 0xba,
+ 0x34, 0x82, 0x26, 0x3c, 0x4f, 0x62, 0xce, 0x4c, 0x37, 0x13, 0xf6, 0x75,
+ 0xf2, 0x51, 0x94, 0xff, 0xf6, 0x65, 0xaf, 0x80, 0x49, 0xd7, 0x6c, 0x36,
+ 0xc3, 0xb3, 0x07, 0xe3, 0xc3, 0xe3, 0xe3, 0x9a, 0x1d, 0x91, 0x17, 0x4f,
+ 0x92, 0x3b, 0x10, 0x8a, 0x56, 0x72, 0x9a, 0x0b, 0x87, 0x03, 0x62, 0xb8,
+ 0x5d, 0x00, 0x66, 0x82, 0x4c, 0xca, 0x15, 0x9d, 0xe3, 0x32, 0xb5, 0x94,
+ 0xda, 0x58, 0x2f, 0xe8, 0x8c, 0xad, 0x03, 0x9c, 0xdb, 0x70, 0xbd, 0x22,
+ 0x59, 0xb7, 0xfc, 0x47, 0x13, 0xe4, 0xe8, 0xb7, 0x26, 0xbd, 0x8e, 0xdc,
+ 0xc7, 0xb3, 0x42, 0xd3, 0x33, 0x25, 0x6f, 0x41, 0x93, 0x17, 0x19, 0x41,
+ 0x87, 0x35, 0x40, 0xa1, 0x40, 0x1a, 0xa1, 0x0d, 0x16, 0xea, 0xa1, 0xe5,
+ 0xaf, 0x76, 0x40, 0x8e, 0xaa, 0x19, 0xaa, 0x6c, 0x56, 0x22, 0x6f, 0x70,
+ 0xe9, 0x55, 0x96, 0x7e, 0x84, 0x0d, 0x94, 0x84, 0x85, 0x97, 0x9c, 0x7f,
+ 0xb8, 0xa6, 0xfe, 0xe0, 0xa1, 0x15, 0xc7, 0x72, 0x38, 0x87, 0xb4, 0x08,
+ 0x28, 0x40, 0xa4, 0x35, 0xdc, 0xa5, 0x8d, 0x41, 0xa8, 0x8e, 0x83, 0x61,
+ 0x77, 0xd8, 0x1f, 0xb3, 0xa4, 0x62, 0x17, 0x46, 0x5d, 0xe1, 0x78, 0x5a,
+ 0x17, 0x81, 0x57, 0x03, 0xab, 0xf5, 0x08, 0xd9, 0x66, 0x7f, 0xad, 0xec,
+ 0x16, 0xa4, 0x4f, 0x06, 0x85, 0x1e, 0x39, 0xc1, 0xca, 0xe4, 0x8f, 0xb0,
+ 0xae, 0xab, 0xe8, 0xf4, 0x0f, 0x17, 0xee, 0x1e, 0x45, 0xa7, 0x8e, 0x62,
+ 0x86, 0xd9, 0x00, 0xc0, 0xa1, 0x55, 0x31, 0xd5, 0xa8, 0x41, 0xfc, 0x3e,
+ 0xb4, 0x0c, 0xdc, 0xf5, 0x55, 0xbc, 0x91, 0xca, 0x7b, 0xef, 0x31, 0x1f,
+ 0xe5, 0xda, 0x71, 0x43, 0x1c, 0x04, 0x5a, 0xcd, 0x92, 0xb4, 0x95, 0xa5,
+ 0xa6, 0xe1, 0xb5, 0xd4, 0x36, 0x99, 0x44, 0x27, 0xd0, 0x65, 0xf7, 0x7c,
+ 0x15, 0x67, 0x6e, 0x39, 0x4f, 0x2b, 0xae, 0xc5, 0x17, 0xe5, 0x99, 0x83,
+ 0x1f, 0x42, 0x02, 0xca, 0x34, 0x9f, 0x13, 0xbf, 0x69, 0x79, 0x1e, 0x90,
+ 0x73, 0x23, 0x67, 0x13, 0x66, 0xe0, 0xc5, 0x32, 0x27, 0x9d, 0x58, 0xc1,
+ 0xb0, 0xc5, 0x22, 0x87, 0x37, 0x4d, 0xfb, 0xf6, 0x9d, 0x77, 0x20, 0xc3,
+ 0xd6, 0xd4, 0x4a, 0xa4, 0x90, 0xd9, 0x66, 0x4c, 0x63, 0x5a, 0x51, 0x84,
+ 0xc5, 0x75, 0x27, 0xd4, 0xc8, 0x25, 0xff, 0x2d, 0x11, 0x79, 0x52, 0xe4,
+ 0x65, 0xf4, 0xdd, 0x33, 0xc3, 0x68, 0xfb, 0x3e, 0xcd, 0x66, 0xcc, 0x5e,
+ 0xa4, 0x56, 0xbc, 0xb3, 0xce, 0xc8, 0x5a, 0xc3, 0x6f, 0xd0, 0xc9, 0x73,
+ 0xcd, 0x8f, 0x6b, 0xaf, 0x2b, 0xb5, 0x8a, 0xfd, 0xae, 0x31, 0x13, 0x20,
+ 0x63, 0xd3, 0x20, 0x19, 0x32, 0x28, 0x2f, 0x3a, 0x08, 0x37, 0xa8, 0x32,
+ 0x06, 0x60, 0x3c, 0xbe, 0x1b, 0xee, 0xa3, 0x7c, 0x52, 0x49, 0x39, 0x06,
+ 0x37, 0xea, 0x8b, 0x94, 0xcf, 0x82, 0xab, 0xca, 0x3b, 0xcb, 0xdb, 0x21,
+ 0xed, 0xaa, 0xe7, 0xf8, 0x50, 0xe1, 0x86, 0x2c, 0x7e, 0xcd, 0x90, 0x3b,
+ 0xd7, 0x1c, 0x9b, 0xce, 0x06, 0x2f, 0x58, 0xfe, 0x36, 0xd6, 0x44, 0xfb,
+ 0xe2, 0xd6, 0x61, 0x60, 0x57, 0x55, 0xf3, 0xfc, 0xce, 0xb4, 0x50, 0x2d,
+ 0x94, 0x28, 0xe3, 0x72, 0x5d, 0xa5, 0x56, 0x59, 0x86, 0xd0, 0x71, 0x29,
+ 0x0b, 0x36, 0xd0, 0x68, 0xcc, 0x42, 0x7d, 0x06, 0x56, 0x57, 0x49, 0x97,
+ 0xb3, 0xe3, 0x4a, 0xe0, 0x04, 0x84, 0x12, 0x86, 0x62, 0xd8, 0x4f, 0xa5,
+ 0x2c, 0xdb, 0xa5, 0x87, 0xba, 0x6f, 0x53, 0x74, 0xde, 0x38, 0x2c, 0xe1,
+ 0x56, 0x31, 0x01, 0x4a, 0x5e, 0x57, 0xf4, 0x3a, 0xbf, 0xcb, 0x86, 0x27,
+ 0x1c, 0x93, 0x1b, 0x9d, 0xe4, 0x57, 0xb4, 0x54, 0xef, 0xa4, 0x26, 0x43,
+ 0xd3, 0x8a, 0x79, 0xf6, 0x2e, 0xda, 0x7c, 0xcf, 0x73, 0x3a, 0x73, 0xce,
+ 0x32, 0x7e, 0x72, 0x4b, 0x2b, 0xc0, 0x12, 0x63, 0x0c, 0x80, 0xf7, 0x07,
+ 0xd1, 0xd1, 0x0f, 0x07, 0x6f, 0xcf, 0x4e, 0x8e, 0x7e, 0x12, 0x75, 0xac,
+ 0x35, 0x1d, 0xfe, 0xf8, 0x4b, 0x1b, 0x3a, 0x57, 0x19, 0xd7, 0x9a, 0x26,
+ 0x74, 0x5d, 0xcf, 0xef, 0xd7, 0x73, 0x01, 0x39, 0x38, 0x46, 0x7c, 0xe3,
+ 0xf1, 0xd9, 0xf1, 0x50, 0xf1, 0x07, 0xe4, 0xfc, 0x2b, 0xa8, 0x1b, 0xce,
+ 0xaf, 0x26, 0xe4, 0x7d, 0xdb, 0x8e, 0x42, 0xb6, 0xb3, 0x30, 0xf0, 0xc0,
+ 0xc4, 0x03, 0x81, 0xf2, 0xa5, 0x19, 0x74, 0x83, 0x41, 0x57, 0xae, 0x48,
+ 0xea, 0xb4, 0x65, 0x0b, 0x42, 0x3d, 0x2e, 0x8f, 0xbc, 0x5d, 0x26, 0xf3,
+ 0x44, 0xb1, 0x53, 0xd7, 0x70, 0x50, 0xe0, 0x6e, 0x60, 0x1b, 0xd9, 0x43,
+ 0xd1, 0x2a, 0x51, 0xae, 0x1e, 0x8b, 0x89, 0x43, 0x41, 0x54, 0x6f, 0xbe,
+ 0xd0, 0x88, 0x70, 0x0d, 0xd5, 0x3b, 0x1d, 0x5b, 0xd8, 0x27, 0x21, 0x66,
+ 0x15, 0xed, 0xf7, 0x7e, 0x43, 0x29, 0xef, 0xbd, 0x0b, 0x30, 0xf8, 0xc7,
+ 0x5f, 0x24, 0x1a, 0x33, 0xf2, 0xc8, 0x45, 0xf2, 0x20, 0x59, 0xb0, 0x2e,
+ 0x60, 0x84, 0xf1, 0x30, 0x65, 0xcc, 0x72, 0xa5, 0xfd, 0xa6, 0x23, 0xc9,
+ 0xa1, 0x54, 0xd3, 0x88, 0x40, 0x0e, 0x2d, 0x43, 0x90, 0xc7, 0xb5, 0x40,
+ 0xd2, 0x6a, 0x7d, 0xe7, 0x5b, 0x1a, 0xf9, 0x2f, 0xa3, 0x83, 0xc6, 0xbe,
+ 0xb7, 0xe3, 0x07, 0x3f, 0x95, 0x0e, 0xde, 0xff, 0xb6, 0x74, 0x80, 0x6a,
+ 0xd2, 0x2f, 0xdf, 0x9f, 0x9f, 0xac, 0xdb, 0xf2, 0x18, 0xc6, 0x67, 0x86,
+ 0x5c, 0x48, 0xaa, 0xe9, 0x75, 0x3d, 0x41, 0x0d, 0x18, 0xf9, 0x79, 0xc9,
+ 0xa1, 0xbb, 0xe0, 0xc9, 0xf7, 0x01, 0x58, 0x48, 0x2b, 0xe5, 0x52, 0x45,
+ 0x6e, 0x6d, 0x96, 0x1a, 0xe5, 0x94, 0x70, 0x5c, 0x0d, 0x01, 0x4c, 0xed,
+ 0x23, 0xc9, 0xc5, 0x0b, 0xc9, 0xb3, 0xd4, 0xd0, 0x92, 0x1a, 0x9a, 0xa8,
+ 0x22, 0x5d, 0x12, 0xa3, 0xb4, 0x44, 0x06, 0xd8, 0xf6, 0xbb, 0xee, 0x5e,
+ 0x9e, 0x10, 0xe3, 0x67, 0x88, 0x07, 0x77, 0xe0, 0x52, 0xde, 0x86, 0x39,
+ 0x1f, 0x0a, 0xd5, 0x11, 0x34, 0x36, 0x1f, 0xb0, 0x02, 0x3e, 0xd7, 0xbf,
+ 0xcb, 0x87, 0xe5, 0xea, 0x6d, 0xdb, 0x9a, 0x86, 0x72, 0x73, 0xe3, 0x85,
+ 0xaf, 0x80, 0x05, 0xc8, 0x71, 0x0c, 0xfa, 0xfd, 0x76, 0x15, 0xcf, 0x6f,
+ 0x24, 0xf3, 0x9c, 0xb4, 0x80, 0x42, 0x33, 0xea, 0x0d, 0x16, 0x4c, 0x73,
+ 0x60, 0x88, 0x53, 0x33, 0xca, 0x6c, 0x17, 0xee, 0xef, 0x64, 0x75, 0x75,
+ 0x65, 0x6a, 0x71, 0x99, 0x24, 0x86, 0x85, 0xd1, 0x2f, 0x23, 0xd1, 0xb8,
+ 0x68, 0xd5, 0x7a, 0xab, 0x6c, 0xa6, 0xe8, 0xb8, 0xd1, 0x75, 0x9e, 0xcf,
+ 0x7a, 0x52, 0xfd, 0x8f, 0x45, 0xe4, 0x36, 0x24, 0x48, 0x11, 0x96, 0x45,
+ 0xed, 0x7f, 0xd1, 0xb7, 0xbc, 0xe1, 0x9e, 0xd6, 0x46, 0x66, 0x05, 0xae,
+ 0x27, 0x0a, 0x14, 0x91, 0x36, 0x1f, 0x96, 0x41, 0xd4, 0x7f, 0xd9, 0xef,
+ 0xcc, 0x4a, 0xaf, 0xbf, 0x23, 0xa6, 0x03, 0x01, 0x12, 0x9b, 0x3a, 0xe7,
+ 0x23, 0xed, 0xc3, 0x75, 0x4a, 0x82, 0x6e, 0xa6, 0xbe, 0x28, 0xce, 0xf0,
+ 0xd7, 0xf8, 0x8f, 0xa6, 0x18, 0x06, 0x55, 0x32, 0x56, 0xd9, 0xde, 0x0d,
+ 0x15, 0x23, 0xed, 0xff, 0x41, 0x47, 0xe0, 0x0a, 0xfe, 0x00, 0xfe, 0xef,
+ 0x32, 0xf7, 0x60, 0x5f, 0x2d, 0x2c, 0x36, 0x1e, 0x43, 0xdb, 0xfd, 0xec,
+ 0xab, 0x1c, 0x8a, 0x78, 0x22, 0xa5, 0x9f, 0x50, 0x4a, 0x5b, 0x2a, 0xeb,
+ 0x5e, 0x5b, 0x99, 0xe6, 0xd4, 0x44, 0x47, 0x21, 0x18, 0xa6, 0x92, 0xb4,
+ 0x0d, 0x91, 0x6e, 0x82, 0x96, 0x53, 0xd8, 0x7c, 0xa5, 0x0f, 0x80, 0xe6,
+ 0x14, 0x9c, 0x5f, 0x97, 0x03, 0xa8, 0xee, 0xb2, 0xa3, 0x6a, 0x89, 0x31,
+ 0x45, 0xf3, 0xb8, 0xfa, 0xb3, 0x27, 0xd9, 0x13, 0x96, 0xf8, 0xc1, 0x9a,
+ 0x31, 0x1e, 0x4c, 0x32, 0x68, 0x20, 0xea, 0xc8, 0x18, 0xb4, 0x61, 0xa7,
+ 0x05, 0x09, 0xc1, 0xb2, 0x90, 0x9d, 0xe6, 0x54, 0x57, 0xfb, 0x2d, 0x46,
+ 0xe2, 0xd7, 0x6a, 0x8e, 0xb5, 0xc6, 0x42, 0xcd, 0xb1, 0xc3, 0x9b, 0x1a,
+ 0x66, 0xd0, 0xd5, 0xf1, 0x64, 0x91, 0x34, 0x17, 0xf0, 0xaa, 0x3b, 0x7e,
+ 0x10, 0x51, 0x1e, 0x7c, 0x48, 0xa3, 0x97, 0x22, 0xab, 0xac, 0x4f, 0x08,
+ 0xb6, 0x60, 0x83, 0xc0, 0x94, 0x10, 0x61, 0xe5, 0x90, 0xd3, 0x66, 0x30,
+ 0xce, 0x6c, 0xfa, 0x9a, 0x27, 0xec, 0x3a, 0x83, 0xc3, 0xa4, 0x65, 0xd9,
+ 0x85, 0x2d, 0x0f, 0x41, 0x32, 0xd2, 0x4a, 0xa4, 0x42, 0x5e, 0x55, 0x38,
+ 0x7f, 0x1f, 0xb3, 0x25, 0x05, 0xa3, 0xd1, 0x80, 0x91, 0x2a, 0xf9, 0xc8,
+ 0x4a, 0xfa, 0xc7, 0x96, 0x23, 0x41, 0x51, 0x74, 0x43, 0xce, 0x65, 0xc1,
+ 0x0c, 0x5a, 0xf1, 0x59, 0x7b, 0x69, 0x89, 0xa7, 0x88, 0x59, 0x8c, 0x5b,
+ 0xe0, 0xe8, 0x15, 0x38, 0x7e, 0xd4, 0x93, 0xf1, 0xb0, 0x67, 0x22, 0x57,
+ 0xc9, 0x9f, 0x5b, 0x80, 0xe5, 0x43, 0x81, 0x38, 0x62, 0xc9, 0x11, 0xd5,
+ 0xf6, 0xa5, 0x46, 0xe8, 0x46, 0x07, 0x46, 0x27, 0x86, 0xd8, 0xfb, 0xd2,
+ 0x0c, 0x28, 0x3d, 0xf3, 0x95, 0xfa, 0x4a, 0xa5, 0x66, 0x6d, 0xa8, 0xc2,
+ 0x55, 0xe9, 0x70, 0x2b, 0x89, 0x3b, 0x18, 0x00, 0x14, 0xbc, 0x6b, 0xd4,
+ 0xe8, 0xb0, 0xd7, 0x5d, 0x95, 0xc0, 0xad, 0x01, 0x62, 0x0b, 0xc1, 0x5e,
+ 0x54, 0x01, 0x31, 0x6b, 0x8f, 0xf4, 0x62, 0xb7, 0x18, 0x97, 0x99, 0xaa,
+ 0xd2, 0x6a, 0xd5, 0xf6, 0xd4, 0x28, 0xee, 0x1f, 0x9c, 0x70, 0x60, 0xe2,
+ 0xbc, 0x13, 0xde, 0x53, 0x86, 0x83, 0xc4, 0xd6, 0xa1, 0x0a, 0xb1, 0xcd,
+ 0x6a, 0x72, 0x9a, 0x38, 0xd0, 0xe5, 0xa6, 0x71, 0xe3, 0x80, 0x65, 0x02,
+ 0x3f, 0xba, 0xba, 0xa7, 0x86, 0x1a, 0xf8, 0xfd, 0x7f, 0xd8, 0x97, 0x00,
+ 0xba, 0xfc, 0xbb, 0x2d, 0x96, 0x0e, 0x3b, 0x6e, 0x55, 0x16, 0x07, 0x83,
+ 0xfb, 0x3d, 0x16, 0x05, 0x30, 0xdd, 0xb2, 0x32, 0xc0, 0xe0, 0xe1, 0xe6,
+ 0x7e, 0x3f, 0x72, 0xde, 0x70, 0x6b, 0xc2, 0x6a, 0xcf, 0x77, 0x00, 0xe8,
+ 0xca, 0x31, 0xfe, 0x29, 0xe3, 0xaa, 0x78, 0x56, 0x95, 0x5e, 0xa1, 0x2d,
+ 0x64, 0x1b, 0x7f, 0x2a, 0xa4, 0x5a, 0x5b, 0x54, 0xc5, 0x13, 0xc1, 0x19,
+ 0xd6, 0xcf, 0xdb, 0x56, 0x2f, 0x8e, 0x35, 0xd9, 0xc7, 0x6e, 0xfc, 0x7e,
+ 0x28, 0x20, 0xa6, 0x4a, 0xe8, 0x8a, 0x49, 0x6c, 0x9f, 0xc9, 0xb6, 0xdc,
+ 0xa5, 0xd9, 0x93, 0xbd, 0x61, 0x20, 0xe9, 0x0c, 0x3a, 0xc3, 0xf5, 0xd8,
+ 0x1a, 0x98, 0x4f, 0xa7, 0xf0, 0xb5, 0x4d, 0x85, 0x39, 0xfc, 0x5e, 0x11,
+ 0x70, 0x90, 0xe8, 0x25, 0x10, 0x0d, 0x33, 0x93, 0x1b, 0x56, 0x1e, 0x52,
+ 0xa6, 0xd3, 0xc5, 0xd5, 0x49, 0x3c, 0xc1, 0xee, 0x38, 0x90, 0xaa, 0xae,
+ 0x78, 0x26, 0x3e, 0xa1, 0x34, 0xd0, 0x0f, 0x70, 0xa9, 0x29, 0xdd, 0x1d,
+ 0xca, 0x67, 0xc3, 0x0b, 0x7c, 0x66, 0x58, 0x58, 0x9a, 0xad, 0x9c, 0xcc,
+ 0x5c, 0x4c, 0xeb, 0xa0, 0x8d, 0x18, 0x14, 0x75, 0x85, 0x02, 0x71, 0x74,
+ 0x2c, 0x9d, 0xee, 0xd6, 0x38, 0xed, 0x30, 0x7d, 0x90, 0x62, 0x52, 0xc4,
+ 0xad, 0x1f, 0x6e, 0x0d, 0x16, 0x8c, 0x39, 0xc9, 0x34, 0x56, 0x52, 0x42,
+ 0x4c, 0x99, 0x8e, 0x8c, 0x2d, 0xd8, 0x4d, 0x31, 0xbe, 0x5a, 0x35, 0xba,
+ 0xa3, 0x2e, 0x29, 0x2a, 0x55, 0x50, 0xb5, 0xa0, 0xb2, 0x21, 0xdd, 0x72,
+ 0x86, 0xd2, 0x51, 0xe5, 0x73, 0x09, 0x89, 0xe0, 0x96, 0x1f, 0x99, 0x2b,
+ 0xa7, 0xa3, 0x0a, 0x6e, 0x6d, 0x50, 0x42, 0xa9, 0x0e, 0xbe, 0x04, 0x36,
+ 0x64, 0xd2, 0xd4, 0x23, 0x55, 0xd4, 0xd4, 0x16, 0x12, 0x1d, 0x23, 0x41,
+ 0x3c, 0x97, 0x28, 0x27, 0x0c, 0x0f, 0xd8, 0xc3, 0x13, 0xc3, 0x43, 0x35,
+ 0xff, 0xdc, 0xc3, 0xcd, 0xb9, 0x71, 0xc8, 0x55, 0x3d, 0x0c, 0x84, 0xb4,
+ 0x51, 0x33, 0xb7, 0x6c, 0xb7, 0x15, 0x6a, 0x7c, 0x59, 0x2d, 0x3f, 0x00,
+ 0x60, 0xf4, 0x03, 0x00, 0xc7, 0x2e, 0x02, 0x2b, 0x04, 0x3e, 0xc0, 0x72,
+ 0x09, 0x26, 0x1c, 0xe9, 0xec, 0xa9, 0x56, 0x16, 0x9a, 0xe7, 0x22, 0x86,
+ 0xb5, 0x62, 0x28, 0xdb, 0x2b, 0xd7, 0xa8, 0x93, 0x60, 0xee, 0xa2, 0x46,
+ 0x12, 0xd9, 0xd3, 0xd6, 0xc0, 0x38, 0x34, 0xe3, 0x03, 0x90, 0x58, 0x1c,
+ 0x85, 0xd0, 0x1d, 0x92, 0x14, 0x0c, 0x55, 0xdf, 0x80, 0x6a, 0x01, 0x9d,
+ 0x48, 0x2e, 0xed, 0x2a, 0xb3, 0x90, 0x90, 0x87, 0x07, 0x06, 0x3d, 0x41,
+ 0xeb, 0x45, 0x6a, 0x75, 0x1a, 0x8e, 0x98, 0xc2, 0x2e, 0xd2, 0x30, 0x59,
+ 0x56, 0x77, 0x01, 0x05, 0xbc, 0x53, 0x8f, 0xcc, 0x13, 0x69, 0x28, 0x7b,
+ 0x91, 0xfa, 0x9e, 0xd2, 0xd8, 0xe3, 0x20, 0xca, 0x14, 0x70, 0x4e, 0x30,
+ 0x61, 0xd6, 0x09, 0xae, 0xf3, 0xbb, 0x47, 0x0f, 0x97, 0x04, 0xc2, 0xf0,
+ 0x55, 0x3e, 0x5a, 0xb3, 0x32, 0x5a, 0xb0, 0xbe, 0xb1, 0x32, 0xf5, 0x05,
+ 0xd1, 0x15, 0xf1, 0xc2, 0x5b, 0x47, 0xd8, 0x5c, 0xb4, 0x06, 0x05, 0x27,
+ 0x8a, 0x36, 0x1d, 0xb0, 0xaa, 0x54, 0xbe, 0xb1, 0xd8, 0x1d, 0x3d, 0x93,
+ 0x5a, 0xee, 0xe6, 0xb1, 0xe6, 0xc0, 0x5b, 0x5a, 0x18, 0x05, 0xed, 0x0d,
+ 0x47, 0x34, 0xe0, 0x87, 0x74, 0x19, 0xb0, 0x84, 0xa0, 0xbe, 0xbb, 0xc3,
+ 0xed, 0x93, 0xa0, 0x41, 0x26, 0xc9, 0x00, 0xcc, 0x8f, 0x0f, 0xd1, 0x63,
+ 0xe3, 0x98, 0x22, 0xfc, 0x21, 0x12, 0x38, 0x8b, 0x20, 0xb5, 0x78, 0x68,
+ 0xb2, 0x87, 0xda, 0x94, 0x8e, 0xcf, 0x6e, 0x9f, 0xb6, 0x4d, 0x48, 0x8d,
+ 0xff, 0xe8, 0xa1, 0xe7, 0xf5, 0xc3, 0xf5, 0xa2, 0x23, 0x0d, 0x49, 0xa6,
+ 0x24, 0x90, 0x62, 0x3a, 0x25, 0x19, 0x7e, 0x98, 0x1e, 0xa2, 0x3e, 0x11,
+ 0xf0, 0x81, 0xc6, 0x30, 0x1f, 0x1e, 0x43, 0x30, 0x87, 0x47, 0x47, 0x42,
+ 0x7d, 0x19, 0xc9, 0x70, 0xfd, 0xd4, 0x77, 0x0a, 0xd5, 0x45, 0x7d, 0xd3,
+ 0x6d, 0x1b, 0xb9, 0x6f, 0x80, 0x9a, 0xa1, 0x57, 0x9e, 0x0c, 0xa5, 0x5b,
+ 0x4a, 0x8c, 0x3a, 0x84, 0xc6, 0x47, 0x41, 0x28, 0x78, 0x0c, 0x06, 0xa7,
+ 0x50, 0xba, 0x31, 0xd0, 0x10, 0xfc, 0x87, 0x8a, 0xc0, 0x89, 0xc8, 0x77,
+ 0xa9, 0xe3, 0x9b, 0x78, 0xea, 0xfd, 0x75, 0x84, 0xd6, 0x1e, 0x87, 0x75,
+ 0xf7, 0x01, 0x54, 0xac, 0xa6, 0x53, 0xc3, 0x7a, 0x72, 0x38, 0x22, 0xb1,
+ 0xae, 0x86, 0xd9, 0x3f, 0x87, 0x62, 0x15, 0xc8, 0xe7, 0x8f, 0xac, 0x05,
+ 0x07, 0x0e, 0xba, 0x09, 0x69, 0xb6, 0x8c, 0x5d, 0xd9, 0x0a, 0x5c, 0xc1,
+ 0xa0, 0x0b, 0xe0, 0x14, 0x53, 0x4e, 0xbd, 0x79, 0xb8, 0x39, 0x56, 0xde,
+ 0xc3, 0x12, 0x85, 0x2e, 0x9d, 0x00, 0x58, 0x25, 0x62, 0xce, 0xa1, 0xfb,
+ 0xd0, 0xcf, 0xfa, 0x53, 0x18, 0x55, 0xc7, 0x92, 0x30, 0x83, 0x76, 0x87,
+ 0xef, 0xc2, 0xf3, 0xec, 0xfa, 0x11, 0xfc, 0x6f, 0x13, 0xea, 0x9a, 0xc3,
+ 0xd6, 0x38, 0x4f, 0x8f, 0xcd, 0xa1, 0x93, 0xc4, 0x75, 0x0e, 0x76, 0xda,
+ 0x82, 0x39, 0xac, 0x3b, 0x6d, 0xbf, 0xd5, 0x61, 0xe3, 0x68, 0xb5, 0x0f,
+ 0x86, 0xec, 0x2a, 0x23, 0x11, 0xd0, 0x29, 0x8f, 0xd3, 0x24, 0x31, 0x66,
+ 0xc2, 0xa7, 0x99, 0xda, 0xed, 0xe9, 0x8e, 0xd8, 0x30, 0xb4, 0xa6, 0xa6,
+ 0x85, 0xe8, 0xa1, 0xd6, 0xcc, 0xb9, 0xea, 0x9a, 0x82, 0xf2, 0xfe, 0x08,
+ 0xb9, 0x72, 0x8d, 0x8d, 0xce, 0x1e, 0xed, 0x20, 0x7c, 0xda, 0xf8, 0xa5,
+ 0x88, 0xcf, 0x27, 0x1d, 0xd4, 0xf0, 0x98, 0x75, 0x77, 0xad, 0x31, 0xab,
+ 0x9f, 0xd8, 0xf5, 0xda, 0x30, 0x5b, 0x92, 0xe4, 0x93, 0x99, 0xdf, 0x07,
+ 0x6e, 0x2b, 0x66, 0x83, 0x61, 0x00, 0xbb, 0x2b, 0xcf, 0x04, 0x82, 0x26,
+ 0xc9, 0x8a, 0xe5, 0xaa, 0x10, 0x48, 0xb0, 0xc7, 0xef, 0x68, 0xd3, 0xa5,
+ 0x5d, 0x7b, 0x1c, 0x4b, 0xc8, 0xa3, 0x5b, 0x32, 0x3a, 0x22, 0xc0, 0x9a,
+ 0xd6, 0x8c, 0xca, 0x4d, 0x31, 0x1c, 0x95, 0x7e, 0xd8, 0x1c, 0x93, 0x1f,
+ 0xd4, 0x2f, 0x1c, 0x95, 0xb4, 0xf7, 0x29, 0x63, 0x2a, 0xe7, 0x1f, 0x68,
+ 0x0c, 0xe9, 0xe5, 0x3d, 0x6d, 0x7b, 0x49, 0x82, 0xf8, 0xe3, 0xd2, 0x7a,
+ 0x24, 0x0f, 0x1a, 0xd1, 0x31, 0x22, 0x02, 0x0d, 0xbb, 0x88, 0xa6, 0x49,
+ 0x51, 0x49, 0x8d, 0x64, 0x80, 0x56, 0xe0, 0xd7, 0x47, 0x48, 0x50, 0x7d,
+ 0x14, 0x2a, 0xb2, 0x38, 0x65, 0x64, 0xc4, 0xc0, 0x80, 0x30, 0x72, 0x41,
+ 0xc1, 0xd5, 0xb6, 0x3a, 0xf2, 0x76, 0xa2, 0xa6, 0xe9, 0xb5, 0x0c, 0x6a,
+ 0x55, 0x8d, 0x1e, 0x00, 0x13, 0x75, 0xfd, 0x93, 0xa2, 0x12, 0x2f, 0x97,
+ 0x7a, 0xc4, 0x3f, 0x61, 0xee, 0x02, 0xe6, 0x04, 0x72, 0x57, 0x48, 0x2e,
+ 0x05, 0x48, 0xac, 0xf2, 0xfc, 0xc6, 0x97, 0x96, 0x83, 0xd1, 0xee, 0xe1,
+ 0xe6, 0x04, 0x8d, 0x4f, 0x57, 0x70, 0x7b, 0x3c, 0xfe, 0x86, 0x61, 0x3a,
+ 0x1d, 0xb7, 0xd9, 0xf6, 0x9e, 0x3f, 0x88, 0x5e, 0x9f, 0x70, 0x09, 0xba,
+ 0x8a, 0x94, 0x58, 0x07, 0x67, 0xec, 0xf9, 0xd4, 0x65, 0xa8, 0x8b, 0x95,
+ 0xbf, 0xc9, 0x44, 0x2f, 0x0e, 0xcf, 0x22, 0xd7, 0x8d, 0xce, 0xaa, 0x5e,
+ 0x64, 0x95, 0x51, 0xad, 0x1f, 0xa1, 0x73, 0x15, 0x48, 0xeb, 0x73, 0xec,
+ 0x9c, 0x11, 0xab, 0x43, 0x6c, 0x72, 0x5c, 0x2d, 0xff, 0x1f, 0xda, 0x58,
+ 0xe8, 0x63, 0x92, 0x48, 0x0c, 0x03, 0xee, 0xe3, 0x43, 0xe6, 0x92, 0x4d,
+ 0xdd, 0x25, 0xcc, 0x3a, 0xc6, 0x2c, 0x43, 0x96, 0x1c, 0xba, 0xe6, 0x80,
+ 0xb5, 0x32, 0x82, 0x24, 0xfd, 0x7c, 0xea, 0x98, 0x7d, 0x1e, 0x86, 0x03,
+ 0x8a, 0xe3, 0x31, 0x4b, 0xe1, 0x39, 0x83, 0xb6, 0x9c, 0x24, 0xa4, 0xff,
+ 0x7d, 0x8a, 0x16, 0xae, 0x06, 0x61, 0x41, 0x76, 0x66, 0x04, 0x04, 0xd7,
+ 0xa8, 0x2f, 0x29, 0x46, 0xa2, 0x3c, 0x47, 0x1c, 0x3e, 0xca, 0x26, 0x62,
+ 0x4d, 0xf3, 0x42, 0xed, 0x4d, 0x6f, 0x99, 0x9a, 0x9a, 0x9a, 0x89, 0x5a,
+ 0x11, 0xd3, 0x15, 0x87, 0x2f, 0x75, 0xe4, 0xe3, 0xb5, 0x54, 0xd3, 0x69,
+ 0x3e, 0x17, 0x9f, 0xcc, 0x2d, 0xd0, 0x75, 0xbb, 0xf7, 0xc2, 0xcb, 0x5d,
+ 0xdd, 0x8b, 0x9d, 0x56, 0x4a, 0x1b, 0x0a, 0xd0, 0x69, 0xcf, 0x3f, 0xca,
+ 0xa6, 0x88, 0xc5, 0x2d, 0xcb, 0x20, 0x32, 0x01, 0x64, 0x22, 0x84, 0x3a,
+ 0xb0, 0xf3, 0x81, 0x4a, 0x65, 0x9f, 0x46, 0x0a, 0xb0, 0xc3, 0xd9, 0xd2,
+ 0x1a, 0x00, 0xa4, 0x86, 0x7a, 0xb0, 0x77, 0x40, 0xbe, 0x54, 0xd0, 0x69,
+ 0xde, 0xd0, 0xc7, 0x46, 0x17, 0x4b, 0xb9, 0xb8, 0xc6, 0x2a, 0x48, 0x58,
+ 0x57, 0xed, 0x96, 0x49, 0x3e, 0x26, 0xed, 0xca, 0x1c, 0x9d, 0x2c, 0x3e,
+ 0xd5, 0xd8, 0x63, 0x9f, 0x12, 0x12, 0xac, 0x56, 0x10, 0x9c, 0xf4, 0x29,
+ 0x52, 0x6c, 0x97, 0x60, 0x8f, 0xa1, 0x62, 0xe4, 0x9f, 0x7e, 0x7c, 0x7e,
+ 0x93, 0x23, 0x2f, 0xd1, 0x35, 0x28, 0x1e, 0xd1, 0x75, 0x74, 0xa2, 0x4f,
+ 0x55, 0xaa, 0x80, 0x29, 0x66, 0xd6, 0x2c, 0x3b, 0x48, 0x4d, 0x16, 0x21,
+ 0x16, 0xcf, 0x36, 0x10, 0x6a, 0x87, 0x64, 0xa0, 0x78, 0xa8, 0x60, 0x07,
+ 0x1a, 0x33, 0xc3, 0x30, 0xca, 0x89, 0xd4, 0xa7, 0x22, 0xd1, 0x7c, 0xce,
+ 0xa7, 0xa7, 0x4a, 0x3e, 0xe9, 0xa6, 0xe1, 0xeb, 0xbf, 0xfb, 0xcc, 0x88,
+ 0xc4, 0xe6, 0x57, 0xd8, 0x01, 0xae, 0xd6, 0x8f, 0x8e, 0x65, 0xe3, 0x49,
+ 0x58, 0x25, 0x1c, 0x80, 0x9f, 0x42, 0x46, 0x6c, 0xc2, 0x48, 0xb4, 0x18,
+ 0x16, 0x26, 0xe4, 0x70, 0x2a, 0xc5, 0xff, 0x91, 0x68, 0xed, 0xbe, 0x45,
+ 0xfa, 0xa8, 0xaa, 0x96, 0x2a, 0xd0, 0x2e, 0xb8, 0xf3, 0xaa, 0xd3, 0xe2,
+ 0x8a, 0x8c, 0x1a, 0x33, 0x62, 0xca, 0x84, 0xe0, 0x20, 0x76, 0x26, 0x27,
+ 0x76, 0x13, 0x27, 0x52, 0xee, 0xc4, 0xe7, 0xb1, 0x40, 0xbd, 0x60, 0xe1,
+ 0xe5, 0x91, 0x11, 0x78, 0xb3, 0x24, 0x3b, 0xc7, 0x90, 0xa9, 0x38, 0x9f,
+ 0xf9, 0x68, 0x0c, 0xd5, 0x81, 0x7d, 0xb9, 0xac, 0xfd, 0x87, 0x9b, 0x53,
+ 0x67, 0xdd, 0x6f, 0x51, 0xac, 0x21, 0x40, 0x68, 0x78, 0xf9, 0xa3, 0xa5,
+ 0xd6, 0xee, 0x6f, 0x6f, 0xff, 0xfc, 0x63, 0x2d, 0x92, 0xe2, 0xcb, 0x9f,
+ 0x7f, 0x79, 0x69, 0x68, 0x41, 0x24, 0xea, 0xf4, 0x93, 0x68, 0x68, 0x85,
+ 0x3a, 0x9f, 0x5a, 0x3e, 0x22, 0x0d, 0x07, 0x0b, 0x86, 0xe3, 0x4a, 0x3b,
+ 0xe6, 0xeb, 0xca, 0x2d, 0xd7, 0xb1, 0xcf, 0x3f, 0xfa, 0x22, 0x8a, 0xa5,
+ 0x54, 0xca, 0x76, 0x88, 0x4e, 0x83, 0x28, 0x80, 0xf1, 0x19, 0x74, 0x62,
+ 0x58, 0x70, 0x87, 0x1c, 0x49, 0xe8, 0x91, 0x57, 0xe0, 0x2a, 0x12, 0xc5,
+ 0x29, 0x98, 0xe4, 0x54, 0xe0, 0x45, 0x5c, 0xa0, 0x7d, 0x17, 0x7a, 0xbb,
+ 0xc0, 0xd8, 0xbe, 0xcb, 0x3d, 0xdc, 0x45, 0x00, 0x18, 0xa2, 0x79, 0x6a,
+ 0x7a, 0xd4, 0xe7, 0x02, 0x12, 0x5f, 0x7a, 0x5c, 0xbf, 0x16, 0xaa, 0x2f,
+ 0x97, 0x32, 0x83, 0xc3, 0xc6, 0x95, 0xb6, 0x16, 0xa0, 0xd0, 0x0b, 0xc9,
+ 0x55, 0xd7, 0x0e, 0x14, 0x3e, 0xcf, 0x5b, 0x27, 0xd3, 0xac, 0x2b, 0x7c,
+ 0x54, 0x90, 0x3f, 0xba, 0x41, 0x45, 0x1f, 0x86, 0x3a, 0x31, 0x5b, 0x92,
+ 0xac, 0xb4, 0x6c, 0xa3, 0xb2, 0xd7, 0x96, 0xcb, 0xc3, 0xe0, 0x50, 0x84,
+ 0x45, 0xae, 0x87, 0x3f, 0xe9, 0x80, 0xf5, 0xa1, 0x3b, 0x28, 0x15, 0x7c,
+ 0xe0, 0xae, 0xac, 0x69, 0x95, 0x18, 0xca, 0xa4, 0x23, 0xee, 0x4e, 0x47,
+ 0x66, 0x79, 0xb9, 0xc7, 0x1a, 0xd8, 0xd6, 0x5f, 0x9b, 0x82, 0x8d, 0x64,
+ 0x15, 0x09, 0x1a, 0x68, 0xc5, 0x67, 0x0a, 0xd8, 0x8a, 0x83, 0x3f, 0x91,
+ 0x1c, 0x74, 0x69, 0xbd, 0x87, 0x64, 0x54, 0x1b, 0x71, 0x57, 0x36, 0xc1,
+ 0x81, 0xf1, 0xc0, 0x86, 0x90, 0xa3, 0xa1, 0x60, 0x9c, 0xdc, 0x8b, 0x70,
+ 0xd5, 0x2c, 0xac, 0x56, 0xae, 0x89, 0x70, 0x1d, 0x97, 0x09, 0xc9, 0x42,
+ 0x62, 0xdb, 0x90, 0x02, 0x21, 0x8c, 0xab, 0x29, 0x6b, 0xcb, 0x6f, 0x7b,
+ 0x60, 0x7d, 0x17, 0x34, 0x4c, 0xdf, 0x23, 0x78, 0xcf, 0x88, 0xa3, 0xbb,
+ 0x02, 0xfb, 0x34, 0x1c, 0xa2, 0xf8, 0xf8, 0xb5, 0x90, 0xb3, 0xf3, 0x45,
+ 0x79, 0x26, 0x08, 0xa8, 0x5a, 0x96, 0x14, 0xe2, 0x36, 0x60, 0xdf, 0xa5,
+ 0x5b, 0xa6, 0x6a, 0x45, 0xa2, 0xce, 0xbc, 0x5d, 0x33, 0x1d, 0xfe, 0x4a,
+ 0x61, 0x48, 0x9a, 0xa5, 0x34, 0x5c, 0x1a, 0x0f, 0x6a, 0x4e, 0xf6, 0x5e,
+ 0x1b, 0x59, 0xe3, 0x35, 0x7b, 0xaf, 0x61, 0x7c, 0x41, 0xf4, 0x56, 0x2d,
+ 0xa8, 0xdc, 0x57, 0x48, 0x6b, 0x53, 0x2b, 0xef, 0xc1, 0x46, 0xdb, 0x24,
+ 0x87, 0xaa, 0x24, 0x3e, 0xb8, 0x43, 0x27, 0x5d, 0x07, 0x32, 0xe1, 0xde,
+ 0x70, 0xe1, 0xa9, 0x47, 0x51, 0x4b, 0x2a, 0xb5, 0x71, 0x22, 0x0a, 0x28,
+ 0xac, 0x28, 0xec, 0xf1, 0xa5, 0xcf, 0x86, 0xfd, 0xfd, 0xd3, 0x1d, 0x66,
+ 0x2e, 0xd6, 0x4a, 0x1c, 0x06, 0x4d, 0xfd, 0xfe, 0x49, 0xfc, 0x10, 0xc3,
+ 0x84, 0x12, 0xd5, 0xe2, 0x96, 0x52, 0xe0, 0x87, 0x4b, 0xa3, 0xc3, 0xb7,
+ 0x70, 0x17, 0x5b, 0xf0, 0xa7, 0xbc, 0xd5, 0x42, 0x3b, 0xed, 0x38, 0x49,
+ 0x83, 0x20, 0x7b, 0xa1, 0x0a, 0x59, 0x89, 0xf1, 0xdd, 0x68, 0x53, 0x59,
+ 0xd5, 0x56, 0x47, 0x34, 0x0b, 0x06, 0xc0, 0x25, 0x60, 0xe1, 0x4d, 0xe2,
+ 0x4d, 0xf9, 0xe3, 0xfa, 0xa0, 0xe6, 0x7f, 0xdc, 0xd5, 0xf5, 0x83, 0x14,
+ 0x4a, 0x11, 0xae, 0xbc, 0xb6, 0xec, 0xb7, 0x84, 0xb6, 0x8f, 0x5d, 0x02,
+ 0xb5, 0xab, 0x1a, 0x62, 0x6f, 0x6a, 0x42, 0x5c, 0x98, 0x72, 0xca, 0x6d,
+ 0xad, 0x32, 0xb6, 0x4a, 0x74, 0xc0, 0x4a, 0x7b, 0xc2, 0xc5, 0x81, 0x75,
+ 0x79, 0x52, 0x17, 0xb5, 0xcb, 0xcf, 0x99, 0xd9, 0x3c, 0x44, 0x6b, 0x47,
+ 0xfd, 0x0c, 0x0b, 0xa4, 0x0f, 0x3c, 0x1e, 0x32, 0x1a, 0x5f, 0x2d, 0x04,
+ 0xab, 0xa3, 0xf5, 0x12, 0xc2, 0xcc, 0xc8, 0xaf, 0x8f, 0x2e, 0xb6, 0xda,
+ 0x38, 0xbb, 0x1a, 0xcd, 0x80, 0x91, 0xa1, 0x68, 0x96, 0x9e, 0xef, 0xd8,
+ 0x15, 0xa5, 0x71, 0xc9, 0xc1, 0x12, 0x88, 0x94, 0x7c, 0x24, 0xd9, 0x2a,
+ 0xeb, 0xc6, 0xcb, 0x3c, 0xa4, 0x65, 0x60, 0x86, 0x1c, 0x04, 0x23, 0x69,
+ 0xf4, 0x90, 0x95, 0x43, 0x09, 0xf4, 0x1c, 0x06, 0x22, 0xe0, 0x16, 0x5f,
+ 0x1f, 0x9d, 0x1c, 0x5d, 0x1c, 0x21, 0xb9, 0xa4, 0x65, 0xc8, 0x9d, 0xe3,
+ 0xf6, 0xaa, 0x92, 0xe9, 0x75, 0x46, 0x34, 0x7f, 0xc5, 0xdb, 0x81, 0xdc,
+ 0xee, 0xef, 0x93, 0xc9, 0xeb, 0x83, 0xef, 0xb8, 0xea, 0x1b, 0x9f, 0x99,
+ 0xb3, 0xf3, 0xd3, 0xb3, 0x37, 0xc7, 0xef, 0x5e, 0x0f, 0xa2, 0xc3, 0xd3,
+ 0xb3, 0x3f, 0x0f, 0xa2, 0xb7, 0xa7, 0xdf, 0x1d, 0x75, 0x44, 0xeb, 0x72,
+ 0xfc, 0x59, 0x47, 0xe0, 0x93, 0xd6, 0x56, 0xd1, 0xf2, 0x03, 0x80, 0xa8,
+ 0x96, 0x9a, 0x22, 0xf5, 0x80, 0x75, 0x66, 0xcb, 0x25, 0x32, 0xe2, 0x69,
+ 0xe9, 0x69, 0x2d, 0x07, 0xd1, 0x37, 0x47, 0x07, 0xaf, 0x9b, 0xe2, 0xc0,
+ 0xd9, 0xe9, 0x58, 0x66, 0xc5, 0xb3, 0x73, 0x93, 0x66, 0xf6, 0x4d, 0xcc,
+ 0x92, 0xed, 0xdc, 0xac, 0x64, 0xde, 0x24, 0x01, 0x4e, 0x28, 0x1d, 0x01,
+ 0x18, 0xc9, 0x66, 0x6b, 0x2b, 0x46, 0x23, 0x06, 0xc2, 0x05, 0xdb, 0x3d,
+ 0x7c, 0x13, 0x22, 0xe5, 0xc6, 0x60, 0xf9, 0x85, 0x40, 0xc4, 0xb9, 0xc0,
+ 0xee, 0x82, 0x62, 0xa6, 0x38, 0xd0, 0xca, 0xde, 0x78, 0x6b, 0x36, 0x3a,
+ 0x9d, 0x27, 0x52, 0x8b, 0xc9, 0x20, 0x86, 0x20, 0x2a, 0x49, 0xf4, 0x43,
+ 0xac, 0x31, 0x6c, 0x93, 0x84, 0x23, 0x6c, 0x4a, 0xd4, 0x14, 0x02, 0x91,
+ 0x68, 0x14, 0x74, 0x9b, 0xbd, 0xcb, 0xba, 0x4a, 0x24, 0x99, 0x45, 0x39,
+ 0x41, 0x52, 0x63, 0x33, 0x24, 0x2f, 0xa1, 0xef, 0x53, 0x83, 0xb3, 0x7e,
+ 0x90, 0x8f, 0x3b, 0xc0, 0x29, 0x20, 0x52, 0xac, 0x2e, 0x89, 0x3c, 0x13,
+ 0x09, 0x17, 0xc1, 0x3e, 0xe9, 0x41, 0xc4, 0xcd, 0x70, 0xcc, 0x47, 0xfc,
+ 0x1a, 0xa9, 0x26, 0xdd, 0x57, 0xc0, 0xe6, 0x9b, 0x35, 0xa7, 0x3b, 0x2c,
+ 0x74, 0xa6, 0x2d, 0x06, 0x59, 0x2b, 0x27, 0xc7, 0xb4, 0xaf, 0x7c, 0xd4,
+ 0x9b, 0x81, 0x88, 0x08, 0x36, 0x94, 0x12, 0xb5, 0x29, 0x6f, 0x35, 0xce,
+ 0x3a, 0xb5, 0xd5, 0xee, 0x98, 0xb1, 0x91, 0x3b, 0x7b, 0xe6, 0x2f, 0x1e,
+ 0xeb, 0xba, 0x65, 0x06, 0x3b, 0x3f, 0xba, 0x38, 0x6f, 0x78, 0xf5, 0x9f,
+ 0x77, 0xd8, 0xf2, 0x36, 0x19, 0x8a, 0xb9, 0xb3, 0x57, 0xfe, 0x62, 0x5d,
+ 0xaf, 0xe0, 0x2e, 0xdc, 0xef, 0x43, 0x69, 0xc7, 0x4f, 0xba, 0x80, 0x94,
+ 0x37, 0x05, 0xf3, 0xb9, 0xa3, 0x3f, 0xfe, 0xe2, 0x81, 0x59, 0x7e, 0x73,
+ 0x74, 0x72, 0xd6, 0x9e, 0xe5, 0x77, 0xe7, 0x6f, 0xfe, 0x3c, 0x7a, 0x20,
+ 0xa1, 0xf4, 0x1f, 0x1f, 0x16, 0xfc, 0x31, 0xae, 0xaa, 0x4e, 0x04, 0xf5,
+ 0x32, 0x86, 0xd5, 0xce, 0x60, 0xe6, 0x2d, 0x12, 0xa4, 0x0e, 0x83, 0x27,
+ 0xc8, 0xca, 0x81, 0xde, 0x46, 0x53, 0x6f, 0x89, 0x0d, 0x4e, 0xc4, 0xd2,
+ 0x12, 0xd9, 0xc4, 0x5e, 0x25, 0xf1, 0x94, 0x3e, 0x73, 0x75, 0xf7, 0xf0,
+ 0x1d, 0x8f, 0x25, 0x9d, 0x70, 0x45, 0x96, 0x51, 0x90, 0xb7, 0xdf, 0x21,
+ 0xbc, 0x6a, 0x64, 0x2f, 0x7a, 0x73, 0xc7, 0xfb, 0xe3, 0xec, 0x6a, 0x94,
+ 0x17, 0x29, 0xdb, 0xe7, 0xb4, 0x4e, 0x9e, 0x34, 0x16, 0xa1, 0x1a, 0x2c,
+ 0x9f, 0x5a, 0x66, 0x00, 0x5d, 0xcd, 0x59, 0xc8, 0x90, 0x80, 0x06, 0x44,
+ 0xed, 0xa6, 0x17, 0xd0, 0xee, 0xf9, 0x3b, 0xd7, 0xaa, 0xc9, 0xcc, 0x5d,
+ 0x91, 0x75, 0xe5, 0x3d, 0xed, 0xf3, 0xc2, 0x33, 0x14, 0xd3, 0x37, 0xdc,
+ 0x6c, 0xfd, 0x44, 0x39, 0xa2, 0x8b, 0xb8, 0x45, 0x01, 0x50, 0x91, 0xb6,
+ 0x6e, 0x90, 0x92, 0x6e, 0x50, 0xdb, 0xb0, 0x7b, 0x04, 0x51, 0xb2, 0xa3,
+ 0x44, 0x4b, 0x63, 0xf0, 0xbf, 0x9d, 0xc5, 0x90, 0x9c, 0xab, 0x87, 0x67,
+ 0xc3, 0x0e, 0x65, 0x2d, 0xed, 0x20, 0x2f, 0x4b, 0x15, 0x87, 0x49, 0xc3,
+ 0x41, 0xa2, 0xa1, 0xc9, 0x2d, 0xd4, 0x88, 0xa0, 0x43, 0x01, 0xa4, 0x19,
+ 0xd4, 0x3c, 0x6e, 0x5c, 0x09, 0x10, 0x60, 0x1a, 0x62, 0x3a, 0xa3, 0xee,
+ 0x83, 0x17, 0x5a, 0x73, 0xb2, 0xd2, 0x86, 0x01, 0xac, 0x5e, 0x30, 0x24,
+ 0x23, 0xd4, 0x5d, 0x2b, 0x46, 0xc0, 0xea, 0x84, 0x80, 0x25, 0xfe, 0xf9,
+ 0xb1, 0x92, 0x54, 0x12, 0x10, 0x5e, 0x07, 0x7e, 0x12, 0xf9, 0x6b, 0xa5,
+ 0xb8, 0x16, 0x60, 0xef, 0xb0, 0x6a, 0x60, 0x4d, 0x36, 0x3a, 0x7d, 0x9d,
+ 0x65, 0x94, 0x54, 0xd3, 0x1a, 0xc6, 0x10, 0x62, 0xd7, 0x89, 0x8e, 0x45,
+ 0x42, 0x20, 0x0e, 0x3f, 0x88, 0xa4, 0xe8, 0x88, 0xc4, 0x43, 0xe9, 0x7b,
+ 0xc3, 0x0e, 0x9b, 0x10, 0xdb, 0xbe, 0xd6, 0xb0, 0xe6, 0x7f, 0xdc, 0x29,
+ 0xfe, 0xb3, 0x27, 0x0a, 0x59, 0xc4, 0x97, 0xf8, 0xe3, 0x17, 0x91, 0x45,
+ 0x50, 0xf1, 0x43, 0xfc, 0x70, 0x9b, 0x44, 0xfb, 0x35, 0xfa, 0x18, 0xb6,
+ 0xf2, 0x5d, 0x67, 0x5b, 0x92, 0x50, 0xe8, 0x37, 0x5b, 0x6d, 0x5c, 0x7c,
+ 0x9d, 0xd6, 0x69, 0x22, 0x78, 0x06, 0xe9, 0x04, 0x6d, 0xa5, 0x54, 0xf6,
+ 0x58, 0x92, 0x3d, 0x52, 0x2e, 0x78, 0xcb, 0xb7, 0x29, 0x4e, 0x4f, 0xf2,
+ 0x5b, 0x62, 0xae, 0xfd, 0x0d, 0x98, 0x6b, 0x5c, 0x37, 0x13, 0x07, 0xe0,
+ 0xe5, 0x2c, 0x86, 0x69, 0x17, 0x59, 0xf2, 0xd4, 0xf4, 0x17, 0xff, 0xd9,
+ 0x5d, 0xb6, 0xd2, 0xea, 0x39, 0x2b, 0xde, 0xbf, 0xa4, 0xf0, 0x8b, 0xf3,
+ 0x80, 0x55, 0x2c, 0x2e, 0x2a, 0x84, 0x8a, 0x80, 0x8b, 0x7c, 0xa6, 0x88,
+ 0x63, 0x71, 0xe5, 0x97, 0x3a, 0xe9, 0x84, 0x87, 0x92, 0xa2, 0x41, 0x7c,
+ 0x0a, 0x91, 0xdb, 0x44, 0x2b, 0xcb, 0xe3, 0x5e, 0xd3, 0x5e, 0x60, 0xeb,
+ 0x6e, 0xe1, 0xa8, 0x6a, 0x75, 0x15, 0x16, 0xb8, 0x5b, 0xf3, 0x31, 0xf5,
+ 0x28, 0x0e, 0xe5, 0x3b, 0x3c, 0x24, 0x7a, 0x5f, 0xd9, 0xbe, 0x95, 0x50,
+ 0x16, 0xc3, 0x85, 0xa0, 0x0b, 0x00, 0x23, 0x87, 0x36, 0xbb, 0x7a, 0x95,
+ 0x34, 0xcc, 0xd2, 0x70, 0xf3, 0x38, 0x3c, 0x03, 0x78, 0xf8, 0xb1, 0x8b,
+ 0x67, 0xec, 0x8a, 0xef, 0x0f, 0x8a, 0xb0, 0x5d, 0x25, 0x95, 0x8b, 0x66,
+ 0x9a, 0x79, 0x59, 0x5c, 0x06, 0xb5, 0xb9, 0xe0, 0xc9, 0x6c, 0x89, 0x3d,
+ 0xba, 0x73, 0x2b, 0x1c, 0xce, 0x5f, 0x0d, 0x0c, 0x88, 0x1a, 0xe5, 0xf7,
+ 0x19, 0x08, 0x88, 0x6e, 0x60, 0x20, 0xff, 0x68, 0x19, 0x3c, 0x34, 0x1b,
+ 0xac, 0x48, 0x2b, 0xd5, 0xa2, 0xaa, 0x57, 0xfc, 0xb0, 0x3c, 0x19, 0xb6,
+ 0x83, 0x5b, 0xb9, 0x95, 0x70, 0x45, 0xcd, 0x18, 0xc7, 0x88, 0x60, 0xd1,
+ 0xe6, 0x70, 0xcb, 0x49, 0x7d, 0x28, 0x35, 0x26, 0xa4, 0xd1, 0x76, 0x5f,
+ 0xc7, 0x2e, 0xe4, 0xd4, 0xe5, 0x47, 0x08, 0x50, 0xbf, 0x51, 0x88, 0xd2,
+ 0x04, 0x77, 0xb6, 0x2d, 0x26, 0x64, 0xe3, 0x96, 0x69, 0x47, 0x7c, 0x78,
+ 0xab, 0xb1, 0x2c, 0xb9, 0x0b, 0x1b, 0xf3, 0x7a, 0x97, 0x6b, 0xf0, 0x37,
+ 0x3c, 0x53, 0xd7, 0x22, 0x95, 0xce, 0x97, 0x2d, 0x7b, 0x04, 0x7b, 0xfb,
+ 0x23, 0xfe, 0xc6, 0xcc, 0xfb, 0x22, 0x45, 0xc6, 0x12, 0x71, 0x8e, 0xe2,
+ 0x83, 0x21, 0xf2, 0x97, 0xc3, 0x2d, 0xec, 0x04, 0xe3, 0x28, 0xaf, 0xf9,
+ 0x52, 0x75, 0x60, 0x02, 0xb5, 0x2a, 0x11, 0x6f, 0x07, 0xa8, 0x34, 0x94,
+ 0xb5, 0xe3, 0x8c, 0xde, 0xe2, 0xc3, 0x51, 0xf4, 0x5a, 0xb3, 0x06, 0x90,
+ 0xd5, 0xbf, 0xba, 0x4a, 0x30, 0x2c, 0x84, 0x91, 0x07, 0xcd, 0x7c, 0xa7,
+ 0x29, 0x3e, 0x1d, 0x84, 0xa2, 0xef, 0x97, 0xb5, 0xb4, 0x03, 0x71, 0x76,
+ 0x08, 0xcc, 0x58, 0x66, 0xb5, 0x9a, 0x26, 0xf8, 0xdb, 0x6c, 0xa0, 0x29,
+ 0xa2, 0x5e, 0xcb, 0x51, 0x87, 0x15, 0x43, 0xdc, 0x27, 0x98, 0xb8, 0xf7,
+ 0x7a, 0x98, 0x9f, 0xc0, 0xde, 0x67, 0x59, 0x55, 0xf2, 0x71, 0x5c, 0xd3,
+ 0x5d, 0x60, 0x04, 0xd0, 0xbe, 0x9e, 0x14, 0x33, 0x38, 0x07, 0xef, 0xf9,
+ 0xd1, 0x22, 0x2e, 0x44, 0xa1, 0xcc, 0x6e, 0xcc, 0x84, 0x2c, 0x96, 0x91,
+ 0x64, 0xba, 0xaa, 0xea, 0x28, 0x8b, 0xa1, 0x65, 0xc5, 0x6a, 0xf2, 0x61,
+ 0x58, 0x9b, 0x70, 0x07, 0xe9, 0x7e, 0xf4, 0xce, 0xcc, 0x82, 0xbc, 0xdf,
+ 0xdb, 0x52, 0x0f, 0x99, 0x78, 0x3b, 0xf5, 0xe3, 0x2e, 0x44, 0x03, 0x1b,
+ 0x73, 0x91, 0x08, 0xde, 0x1a, 0xf2, 0x88, 0x21, 0x1e, 0x75, 0x76, 0x4f,
+ 0x14, 0x59, 0xcc, 0xba, 0xfa, 0x7e, 0x23, 0xa5, 0xac, 0x83, 0xae, 0x9d,
+ 0xa9, 0x4e, 0xab, 0x5c, 0x97, 0xad, 0x1c, 0x8a, 0x56, 0xcf, 0x50, 0xa8,
+ 0x49, 0xd7, 0x75, 0xf1, 0xe4, 0xf6, 0xaa, 0xad, 0x7f, 0x2b, 0xb8, 0x1c,
+ 0xf1, 0x5a, 0x1e, 0xc9, 0x8e, 0xa5, 0x7a, 0x7c, 0xe4, 0x52, 0xfa, 0x5a,
+ 0xb3, 0xb8, 0x29, 0x26, 0x4f, 0xe9, 0xc7, 0xb7, 0xfc, 0x83, 0x19, 0x10,
+ 0x2b, 0x5e, 0x02, 0x1f, 0x2d, 0x08, 0x54, 0x6d, 0x4e, 0xc3, 0x95, 0x3a,
+ 0xf4, 0x87, 0x6e, 0x7a, 0x69, 0xf9, 0x23, 0x9c, 0x7d, 0xe3, 0x6b, 0x8f,
+ 0xc0, 0x17, 0x6c, 0xed, 0x0c, 0xcc, 0x96, 0xb6, 0xb1, 0x36, 0xfa, 0x68,
+ 0x3c, 0x00, 0x4a, 0xb2, 0x14, 0x2e, 0x1a, 0x4b, 0x2e, 0x19, 0x2d, 0x42,
+ 0x5b, 0x34, 0xa1, 0xa5, 0xfa, 0x1b, 0x9b, 0x66, 0x57, 0xa4, 0xc9, 0x10,
+ 0x61, 0x4f, 0x61, 0xf6, 0x5b, 0x38, 0x8e, 0x87, 0x8a, 0xc4, 0x0e, 0xad,
+ 0x46, 0xe0, 0xed, 0x60, 0xa4, 0x15, 0xe3, 0x47, 0xba, 0x66, 0x08, 0xeb,
+ 0xa7, 0x8c, 0xbc, 0xcd, 0xa8, 0x33, 0x7d, 0xf3, 0xc1, 0xa5, 0x7a, 0xcd,
+ 0x79, 0x71, 0x26, 0x06, 0xca, 0x51, 0x40, 0x6e, 0x52, 0xec, 0x36, 0x7b,
+ 0xb2, 0x4a, 0xad, 0x7c, 0x30, 0x1e, 0x56, 0x83, 0xa5, 0x64, 0x99, 0xae,
+ 0x19, 0x27, 0x12, 0xf7, 0x50, 0x19, 0x0a, 0xe9, 0x4c, 0x37, 0x96, 0x77,
+ 0xb7, 0x48, 0x16, 0x0c, 0x7b, 0xe9, 0x93, 0xf1, 0x20, 0x26, 0x22, 0x83,
+ 0x1a, 0x9d, 0xaf, 0xf1, 0x79, 0xcd, 0x38, 0x4d, 0x9b, 0xd5, 0x7f, 0x09,
+ 0xcb, 0xff, 0x97, 0x96, 0x01, 0xbc, 0xbc, 0xcf, 0xa6, 0xd7, 0xaf, 0xdf,
+ 0x8d, 0x37, 0x1e, 0x88, 0xe9, 0x0f, 0x27, 0x87, 0xe7, 0x8b, 0x3c, 0x63,
+ 0x62, 0x08, 0x82, 0x2c, 0x58, 0x6b, 0x3a, 0x08, 0xbe, 0xeb, 0x6e, 0xae,
+ 0xf6, 0x82, 0x09, 0x03, 0x08, 0x0d, 0x16, 0x73, 0x84, 0xc6, 0x27, 0xe2,
+ 0x22, 0x1d, 0xc6, 0x7c, 0x14, 0xba, 0x6b, 0xc7, 0xba, 0x33, 0xcd, 0x19,
+ 0x42, 0xc9, 0xcc, 0x9a, 0x2c, 0x50, 0x47, 0x90, 0x21, 0x3c, 0xda, 0x74,
+ 0x7d, 0xf6, 0xee, 0xe8, 0xeb, 0x53, 0xfb, 0xf1, 0x4b, 0xb6, 0xf9, 0x24,
+ 0x2e, 0xae, 0x92, 0x0e, 0x68, 0xd1, 0x70, 0x85, 0x6a, 0x70, 0x47, 0x81,
+ 0x02, 0x40, 0xb4, 0x3a, 0xe7, 0xd7, 0x85, 0x4c, 0x07, 0x4a, 0xad, 0xf8,
+ 0xa8, 0x58, 0x37, 0x25, 0x5a, 0x94, 0xbd, 0xaf, 0xbf, 0x6a, 0x5f, 0x90,
+ 0xaf, 0xdf, 0xad, 0xe9, 0x8e, 0xbf, 0x19, 0x9a, 0x3c, 0xa4, 0x96, 0xc0,
+ 0x20, 0x73, 0xbf, 0xbd, 0x16, 0x0a, 0x28, 0xdd, 0x3d, 0x00, 0x43, 0x9b,
+ 0x7e, 0x84, 0x4b, 0xd0, 0x13, 0xfa, 0xe3, 0xc1, 0x07, 0x15, 0xbb, 0xae,
+ 0xbb, 0x2b, 0x06, 0xb5, 0xdb, 0x1c, 0x4b, 0xb1, 0xb1, 0x73, 0x89, 0x44,
+ 0x3a, 0x53, 0xc3, 0xf4, 0x56, 0xc7, 0x16, 0xad, 0xc5, 0xcd, 0xf3, 0x78,
+ 0x07, 0x11, 0xea, 0x51, 0x6d, 0xb4, 0x99, 0xcf, 0x9e, 0xfc, 0xd8, 0xde,
+ 0x73, 0xea, 0xb0, 0x13, 0x6a, 0x71, 0x48, 0x87, 0x69, 0x9b, 0x0f, 0xbd,
+ 0x25, 0x61, 0x8c, 0xef, 0xab, 0xc7, 0x4f, 0x86, 0xdb, 0x0a, 0xf7, 0x4e,
+ 0xb4, 0x39, 0xa1, 0x4b, 0xd0, 0x5d, 0x9b, 0x52, 0xbe, 0xe9, 0x29, 0x10,
+ 0xfc, 0xba, 0x9b, 0x7b, 0xf6, 0xf9, 0xb3, 0xa7, 0x5b, 0x5b, 0x83, 0xc8,
+ 0x4c, 0xc9, 0x92, 0x30, 0xc6, 0xee, 0x1e, 0x66, 0x05, 0x12, 0xae, 0xc3,
+ 0x63, 0xbe, 0x46, 0x79, 0x3e, 0xcb, 0xcf, 0x69, 0x5b, 0xed, 0xbc, 0x9a,
+ 0xeb, 0x5e, 0xe5, 0x75, 0x61, 0xf8, 0x0a, 0x30, 0x49, 0x07, 0x22, 0x11,
+ 0x1b, 0x9b, 0x29, 0xe9, 0x6e, 0x53, 0x3f, 0xc8, 0xda, 0x83, 0x26, 0xa5,
+ 0xe5, 0x1d, 0x7a, 0x8b, 0x78, 0x9f, 0xc0, 0x99, 0xec, 0xf2, 0x62, 0x34,
+ 0xed, 0x37, 0xc7, 0x27, 0x47, 0x8e, 0x8f, 0xfc, 0xd7, 0xf6, 0x88, 0x07,
+ 0x59, 0x4c, 0x5b, 0x5c, 0x53, 0x04, 0xc9, 0x20, 0x1f, 0x7b, 0x10, 0xa1,
+ 0xba, 0xe5, 0xb7, 0x03, 0xd1, 0x66, 0xf1, 0xb1, 0xc7, 0xc9, 0xa4, 0x86,
+ 0x8f, 0xde, 0x7d, 0x77, 0x7c, 0x7e, 0xfa, 0xee, 0xed, 0xd1, 0x3b, 0x97,
+ 0xf7, 0xc0, 0xd7, 0x73, 0xb7, 0xdb, 0xb1, 0xe5, 0x81, 0x49, 0x39, 0x73,
+ 0x86, 0x05, 0x52, 0x76, 0x89, 0xf1, 0x2c, 0x68, 0xb7, 0xf4, 0xaf, 0x51,
+ 0xd8, 0x5c, 0xf0, 0x90, 0xed, 0x1b, 0x13, 0xc9, 0x92, 0x03, 0x96, 0x67,
+ 0x9c, 0x59, 0x36, 0x92, 0x24, 0x10, 0xf1, 0xf6, 0xa4, 0xe2, 0xac, 0xfc,
+ 0x38, 0x4d, 0x14, 0x4e, 0xbf, 0x0c, 0xca, 0xf7, 0x59, 0x12, 0x94, 0xcf,
+ 0x15, 0xab, 0x0d, 0xc2, 0x93, 0x9a, 0x94, 0x37, 0x5f, 0xe7, 0xf5, 0x04,
+ 0x34, 0x44, 0x58, 0xf9, 0xe5, 0x5a, 0x5d, 0x47, 0x70, 0x25, 0x45, 0x12,
+ 0x21, 0x11, 0x05, 0xb7, 0xae, 0x47, 0x74, 0xb5, 0xb0, 0x81, 0xa6, 0xfa,
+ 0x1f, 0xcc, 0xa0, 0x16, 0x50, 0x80, 0xba, 0x1d, 0x5f, 0x68, 0xf4, 0x40,
+ 0x1b, 0xc6, 0xb0, 0x0c, 0x5d, 0x74, 0x0e, 0x83, 0xc5, 0xb0, 0x18, 0xe0,
+ 0xdd, 0xdc, 0x08, 0xef, 0xfa, 0x0f, 0x67, 0xe7, 0xa7, 0x3f, 0xfc, 0xf9,
+ 0x1f, 0xdc, 0x45, 0x70, 0xb4, 0x7f, 0xe4, 0x1b, 0xcf, 0x1a, 0xff, 0xf9,
+ 0x57, 0xf5, 0xf6, 0x60, 0x77, 0xf5, 0xf6, 0x07, 0x9a, 0x68, 0xb8, 0x0e,
+ 0x73, 0x1e, 0xce, 0x38, 0x41, 0x72, 0xf7, 0xe5, 0xd5, 0x2d, 0x90, 0xd8,
+ 0x31, 0x07, 0x49, 0x2d, 0x2f, 0x6b, 0xa5, 0x7e, 0xba, 0xea, 0x01, 0x02,
+ 0x05, 0x1c, 0x25, 0xfe, 0xbc, 0xbc, 0x14, 0x16, 0x7a, 0x1c, 0xa0, 0xae,
+ 0x04, 0xee, 0x7f, 0xb7, 0x1e, 0x07, 0x27, 0x27, 0xbf, 0x7e, 0x11, 0x5c,
+ 0xc0, 0x47, 0x6d, 0x19, 0x60, 0x00, 0x71, 0x13, 0x1a, 0x3a, 0x01, 0xd7,
+ 0xc8, 0xbf, 0x03, 0x4d, 0xd2, 0x0d, 0xe7, 0xdd, 0xa9, 0x8e, 0x46, 0x1c,
+ 0x7f, 0xc3, 0x32, 0x21, 0x45, 0x00, 0x7e, 0x17, 0x56, 0xb9, 0xf8, 0x5a,
+ 0xe4, 0x81, 0xb5, 0x4a, 0xea, 0x86, 0x5f, 0x5a, 0xe5, 0x76, 0x04, 0x11,
+ 0x00, 0x5d, 0x08, 0x29, 0xe8, 0xb9, 0xf3, 0x59, 0x4b, 0xfd, 0x15, 0x94,
+ 0xd5, 0x42, 0x06, 0x7b, 0x47, 0xa4, 0x01, 0xdb, 0x8d, 0x39, 0x6e, 0xa9,
+ 0x48, 0xcb, 0x1b, 0xa4, 0xef, 0xf3, 0xa1, 0x1c, 0x48, 0xdd, 0xd9, 0x0a,
+ 0x65, 0xb8, 0x59, 0x63, 0xc0, 0x50, 0x68, 0xec, 0x32, 0x62, 0xfa, 0xf7,
+ 0xe2, 0xf4, 0xf0, 0xf4, 0x84, 0x7e, 0x39, 0x7a, 0x73, 0xfc, 0x83, 0x67,
+ 0x68, 0x52, 0x8f, 0x45, 0x39, 0xaf, 0x31, 0x08, 0x57, 0x9f, 0xa5, 0xed,
+ 0xc2, 0x6e, 0xc1, 0x64, 0xd7, 0xd5, 0xc8, 0xce, 0xf0, 0x99, 0x4f, 0x0a,
+ 0x98, 0x09, 0xe3, 0x8c, 0x82, 0x1d, 0xc2, 0x45, 0x1c, 0x32, 0xbd, 0xfa,
+ 0xde, 0xca, 0xa0, 0x20, 0x4f, 0xa5, 0x97, 0x2e, 0x3a, 0x35, 0x34, 0xb8,
+ 0x9a, 0x8d, 0x45, 0x8d, 0x2c, 0x6c, 0x1b, 0xf6, 0x88, 0xcf, 0xac, 0x71,
+ 0x0f, 0x82, 0x49, 0x9a, 0xf2, 0x1d, 0x04, 0xbd, 0x68, 0x90, 0xc4, 0x46,
+ 0x18, 0x98, 0xe1, 0x07, 0x0b, 0x07, 0xac, 0x6b, 0xae, 0x3e, 0x27, 0x5d,
+ 0x00, 0x4d, 0x7d, 0x46, 0x4a, 0x21, 0x7c, 0xfa, 0x5e, 0x01, 0x72, 0xf1,
+ 0x41, 0x1d, 0x79, 0xf8, 0x30, 0xf8, 0x41, 0x99, 0xfc, 0xeb, 0x2a, 0xbd,
+ 0x8d, 0x91, 0xe2, 0x0f, 0x7c, 0x00, 0x79, 0xa9, 0xd1, 0x46, 0xfc, 0xab,
+ 0x1a, 0x89, 0xeb, 0xad, 0x3c, 0xfb, 0x35, 0x8d, 0x3c, 0x6b, 0xb4, 0x71,
+ 0xfd, 0xab, 0x1a, 0x71, 0x75, 0xc5, 0xe8, 0x5a, 0xfc, 0xe1, 0xf8, 0x22,
+ 0x3a, 0x3c, 0x7d, 0xed, 0x69, 0xf4, 0xc2, 0x5d, 0xed, 0x31, 0xc9, 0x35,
+ 0x24, 0x8c, 0xc3, 0xbe, 0x86, 0xba, 0xaa, 0x41, 0x35, 0x71, 0xa4, 0x2b,
+ 0x96, 0xbe, 0xd0, 0x7d, 0x8a, 0x8f, 0x0a, 0xc9, 0x41, 0x0c, 0xd1, 0x42,
+ 0xf5, 0x71, 0xad, 0x50, 0xeb, 0xc2, 0x56, 0x98, 0xb2, 0xb9, 0xbc, 0x40,
+ 0x5c, 0x18, 0x9a, 0xc8, 0x24, 0x66, 0x8f, 0x6a, 0x26, 0x8e, 0x68, 0xd6,
+ 0x04, 0x2a, 0x1f, 0xf9, 0x98, 0xbb, 0x9c, 0x66, 0x18, 0x78, 0x38, 0xf3,
+ 0x17, 0xf1, 0x48, 0xa2, 0xfe, 0x73, 0x61, 0x73, 0x8c, 0xa6, 0x96, 0x4c,
+ 0xbd, 0xab, 0x9c, 0x30, 0xab, 0x51, 0x8c, 0x16, 0x96, 0x80, 0xe4, 0xc5,
+ 0x52, 0x1b, 0x7c, 0x59, 0x38, 0x8f, 0x7c, 0x2f, 0x66, 0x4e, 0x97, 0xd7,
+ 0x9a, 0xa7, 0x2d, 0x16, 0xe5, 0x9a, 0x70, 0xfd, 0xec, 0xc9, 0x8f, 0x37,
+ 0x52, 0x80, 0x9d, 0xce, 0x9f, 0x66, 0xe1, 0xa6, 0x7f, 0x0b, 0xee, 0xe8,
+ 0x27, 0x3e, 0x00, 0x65, 0x11, 0xcf, 0x25, 0x2c, 0x48, 0x02, 0x21, 0x49,
+ 0xdf, 0xa9, 0xe2, 0x8f, 0x88, 0xe4, 0x62, 0x91, 0x08, 0x6b, 0x38, 0x0d,
+ 0xd8, 0xe0, 0x53, 0x65, 0xce, 0x91, 0xa9, 0xf6, 0x72, 0xfe, 0xcc, 0x65,
+ 0xa0, 0x79, 0x77, 0x71, 0xe9, 0x02, 0x42, 0x39, 0x7e, 0x45, 0x41, 0xa8,
+ 0xc4, 0x45, 0x51, 0x72, 0x85, 0xdb, 0x6e, 0xb7, 0xb1, 0xeb, 0xd6, 0x40,
+ 0x8b, 0x72, 0x09, 0x19, 0x47, 0xd0, 0x40, 0x3a, 0x4d, 0x25, 0xc5, 0x2a,
+ 0x2d, 0xe5, 0x4b, 0xae, 0xe5, 0x26, 0x8b, 0x36, 0x5c, 0x63, 0xaf, 0xcd,
+ 0x05, 0x7c, 0x4e, 0x39, 0x9c, 0xc9, 0x1f, 0xb3, 0x1c, 0x2b, 0x29, 0x01,
+ 0x56, 0x5c, 0xe0, 0x93, 0xbe, 0xb8, 0x17, 0x57, 0x70, 0x9c, 0xe5, 0x1d,
+ 0x90, 0x48, 0x6e, 0x63, 0x54, 0x09, 0xf6, 0x1a, 0xe7, 0x33, 0x8b, 0x5b,
+ 0x50, 0x5e, 0x6e, 0x65, 0xbe, 0x8c, 0x89, 0xc3, 0xe0, 0xa3, 0xb5, 0x0a,
+ 0x94, 0x6b, 0x49, 0x5e, 0xc2, 0x54, 0x72, 0xef, 0x78, 0xae, 0xed, 0xa8,
+ 0x3b, 0x6d, 0x25, 0x50, 0x3d, 0x9e, 0xaf, 0xe9, 0x87, 0x1b, 0x93, 0x7d,
+ 0x93, 0x4e, 0x9a, 0x69, 0x1b, 0xdc, 0x7e, 0xbb, 0xb5, 0xcf, 0x9a, 0x24,
+ 0x62, 0x59, 0x14, 0x0c, 0xf9, 0x99, 0x87, 0xc9, 0x54, 0x9f, 0xeb, 0x93,
+ 0x6c, 0x85, 0xb8, 0x4b, 0xd8, 0x72, 0xe4, 0xe2, 0x7d, 0x8b, 0x64, 0x39,
+ 0x77, 0x53, 0xb4, 0x0f, 0x91, 0xbd, 0x05, 0x67, 0x24, 0x56, 0x7c, 0xaa,
+ 0xe3, 0x6d, 0x87, 0x94, 0x85, 0x02, 0xe3, 0x0b, 0xdf, 0x49, 0x8c, 0x6c,
+ 0x1b, 0x22, 0x92, 0x2c, 0x75, 0x04, 0xa9, 0x95, 0x7a, 0xf1, 0x11, 0xe7,
+ 0x8b, 0x03, 0x4e, 0xcf, 0xfe, 0xb6, 0x37, 0xda, 0x91, 0x90, 0x72, 0x53,
+ 0xf8, 0x40, 0x7e, 0xac, 0xc3, 0xaa, 0x10, 0xd4, 0x16, 0x5f, 0x73, 0x03,
+ 0x20, 0x1b, 0x71, 0xa6, 0x31, 0x6d, 0xa8, 0x09, 0x3f, 0x8a, 0xde, 0xb6,
+ 0xb3, 0x80, 0xf3, 0xcb, 0x4a, 0xb1, 0xcf, 0xd8, 0xd2, 0x3e, 0x0b, 0xea,
+ 0x4b, 0xe1, 0x4a, 0x0e, 0x4a, 0x86, 0xf0, 0x09, 0x70, 0xf7, 0x0e, 0xe2,
+ 0x09, 0xa3, 0x76, 0x7a, 0xbb, 0x07, 0xfe, 0xf3, 0xeb, 0xb0, 0xbb, 0xdb,
+ 0x5c, 0xec, 0xb3, 0x83, 0xf1, 0xd8, 0x16, 0xfa, 0x30, 0x5c, 0x50, 0x59,
+ 0x42, 0xcd, 0xae, 0x65, 0xf0, 0x3d, 0x43, 0x66, 0x6d, 0xab, 0x3b, 0xda,
+ 0x46, 0x23, 0x4b, 0x6e, 0xf7, 0x89, 0xeb, 0xcb, 0x75, 0xf5, 0x9d, 0xb4,
+ 0x35, 0xf8, 0xc4, 0xae, 0xba, 0xfb, 0xfa, 0xae, 0xa3, 0xaf, 0xa7, 0x2d,
+ 0x22, 0xda, 0xdb, 0xfb, 0xcc, 0x00, 0x50, 0x04, 0x52, 0x7e, 0x1e, 0xf9,
+ 0x0e, 0x83, 0x1e, 0xe9, 0xb9, 0x21, 0x6c, 0x95, 0xed, 0xbe, 0x94, 0x2e,
+ 0x78, 0x34, 0x41, 0x57, 0xcf, 0x5c, 0x57, 0xa4, 0x33, 0xf5, 0xe1, 0x34,
+ 0xd3, 0x43, 0xd2, 0x3a, 0x3b, 0xb0, 0x53, 0xf3, 0x41, 0x39, 0xe6, 0x35,
+ 0x20, 0x31, 0x6c, 0x6d, 0xde, 0xa1, 0x8d, 0x22, 0xe8, 0xe7, 0x33, 0x3f,
+ 0x25, 0x3f, 0x6e, 0x56, 0x6c, 0x14, 0x62, 0x6d, 0x14, 0x1c, 0x56, 0x47,
+ 0x28, 0x16, 0x67, 0xef, 0x02, 0xc0, 0x9a, 0x7c, 0x46, 0x5e, 0xf5, 0xbd,
+ 0xc8, 0xf1, 0x3b, 0x63, 0x22, 0xd6, 0xfa, 0x36, 0xa3, 0xe8, 0x14, 0x4a,
+ 0x58, 0x0d, 0x05, 0x57, 0xd0, 0x67, 0x62, 0x6f, 0xa5, 0x29, 0xc2, 0xd3,
+ 0xbe, 0xfb, 0xc2, 0xaf, 0x89, 0x0d, 0xc9, 0x9c, 0x96, 0xdb, 0x7a, 0x7c,
+ 0xbc, 0x7f, 0xc4, 0x62, 0x12, 0x12, 0x44, 0x88, 0x70, 0xfe, 0x14, 0x50,
+ 0x47, 0x5b, 0xf8, 0x7c, 0x74, 0xa4, 0xb6, 0x9c, 0x6b, 0xe1, 0x12, 0x9c,
+ 0x24, 0xb8, 0x83, 0x3c, 0x25, 0xff, 0x75, 0xc5, 0x0c, 0x09, 0xb7, 0x2e,
+ 0xdd, 0xa1, 0xfa, 0xa7, 0xbd, 0x27, 0x88, 0x2b, 0x5c, 0x05, 0x0b, 0xb7,
+ 0xb2, 0xcf, 0x91, 0xd0, 0x93, 0xe1, 0xd6, 0xdf, 0xe7, 0x7b, 0x4a, 0xcd,
+ 0x09, 0x61, 0x9c, 0x0e, 0x76, 0x61, 0xe4, 0x52, 0x09, 0x0d, 0x7f, 0x04,
+ 0x30, 0xa8, 0xca, 0x00, 0x05, 0xba, 0xa0, 0xe5, 0x31, 0x72, 0x9d, 0x2b,
+ 0xd3, 0xd7, 0x41, 0xd4, 0x83, 0xed, 0x02, 0xe9, 0x22, 0x52, 0xfb, 0x40,
+ 0xf4, 0x74, 0x67, 0xa7, 0xa3, 0xca, 0x4f, 0x3c, 0xc9, 0x6f, 0x2d, 0x66,
+ 0x55, 0x91, 0x64, 0xf0, 0x96, 0x28, 0xcd, 0x10, 0x2d, 0x4a, 0x16, 0x53,
+ 0x87, 0x97, 0x6c, 0x13, 0xe0, 0x15, 0x33, 0x8f, 0x50, 0xb0, 0x6e, 0x72,
+ 0x2a, 0xbf, 0x07, 0xb4, 0x8d, 0x2d, 0x5a, 0xe3, 0x38, 0x0a, 0xee, 0x8d,
+ 0x95, 0xa5, 0x88, 0x83, 0xda, 0x47, 0x1a, 0x25, 0xd1, 0x1a, 0x99, 0x22,
+ 0x31, 0x07, 0xdd, 0x3c, 0x6b, 0x53, 0xc4, 0xf8, 0xe2, 0xf4, 0x5c, 0x29,
+ 0xac, 0xcd, 0x75, 0xb5, 0xb0, 0x36, 0x3f, 0xe2, 0xe3, 0x76, 0x07, 0x1d,
+ 0x61, 0x08, 0xce, 0x20, 0x2f, 0x19, 0xa3, 0xb4, 0x5c, 0x41, 0xaf, 0xcf,
+ 0x7d, 0xc8, 0xa0, 0x4e, 0xed, 0x3b, 0xb5, 0xc0, 0x5b, 0x79, 0x1c, 0xab,
+ 0xb6, 0x1d, 0xbc, 0x24, 0x07, 0xed, 0x74, 0x05, 0x62, 0x17, 0x83, 0x31,
+ 0xd3, 0x91, 0x9a, 0x8e, 0x39, 0x4e, 0x56, 0xad, 0x69, 0xce, 0x35, 0xd8,
+ 0xa4, 0x45, 0x39, 0x44, 0xa7, 0xae, 0x02, 0x92, 0x85, 0x11, 0xb8, 0xbb,
+ 0xcb, 0xab, 0xae, 0x70, 0x5b, 0xb3, 0xc3, 0x49, 0x82, 0x32, 0x34, 0x8d,
+ 0x34, 0xe6, 0xbc, 0x8c, 0xe6, 0x6e, 0x4f, 0x49, 0x32, 0x92, 0xe8, 0xd5,
+ 0xdc, 0x4a, 0xcc, 0x9b, 0xa8, 0xe8, 0xa5, 0xac, 0x1d, 0xb7, 0xce, 0x67,
+ 0xa7, 0xe7, 0x17, 0x36, 0x34, 0x74, 0x8b, 0x0f, 0x1a, 0xe7, 0x87, 0x51,
+ 0xd4, 0x22, 0x01, 0x02, 0x07, 0x67, 0x91, 0x4d, 0x68, 0x69, 0xa5, 0x2a,
+ 0x11, 0xca, 0xa6, 0xa0, 0x1d, 0x6b, 0x88, 0x75, 0xb6, 0xe2, 0xde, 0xa2,
+ 0xca, 0x58, 0xdb, 0x71, 0x3c, 0x47, 0xcc, 0x28, 0xcc, 0xa0, 0xbb, 0xdd,
+ 0xbd, 0x5e, 0xa6, 0x79, 0xb2, 0xdb, 0xa6, 0x0e, 0x56, 0x9e, 0xcf, 0x8f,
+ 0xb8, 0x1c, 0xfb, 0xc5, 0xb5, 0xfc, 0xd6, 0x1a, 0xbb, 0x58, 0x71, 0xf5,
+ 0xc3, 0xee, 0x20, 0x15, 0x50, 0x07, 0xe7, 0xfb, 0x70, 0x10, 0x3a, 0xb7,
+ 0xef, 0xac, 0xca, 0xc1, 0x9a, 0x3d, 0x09, 0x72, 0xbb, 0xc1, 0x36, 0x95,
+ 0x56, 0x90, 0x86, 0x8f, 0x0f, 0x7a, 0xda, 0x4b, 0x8f, 0x6e, 0x5d, 0x39,
+ 0x12, 0x8c, 0xfb, 0xec, 0x5b, 0x78, 0xea, 0x5b, 0x58, 0x32, 0x7f, 0xd7,
+ 0x06, 0x8e, 0xcd, 0xbb, 0xce, 0x1f, 0xba, 0x30, 0xde, 0xab, 0x24, 0x33,
+ 0xc2, 0x90, 0xe7, 0x7c, 0x3b, 0xcf, 0x9c, 0xf7, 0xc8, 0xe4, 0xa3, 0x60,
+ 0x28, 0xfc, 0xb1, 0x25, 0xd5, 0x22, 0x84, 0xaf, 0x41, 0x76, 0x4f, 0x9e,
+ 0xfb, 0x1b, 0x82, 0x55, 0x09, 0x1f, 0x27, 0xa2, 0x2b, 0x10, 0xdc, 0x48,
+ 0x1c, 0x67, 0x93, 0x66, 0xab, 0x04, 0x46, 0xb3, 0xb8, 0x98, 0x33, 0x30,
+ 0xb9, 0x06, 0x7a, 0xb4, 0xdc, 0xd2, 0x9a, 0x1e, 0xee, 0xfb, 0xd1, 0x9b,
+ 0xe8, 0xf8, 0xe4, 0xc8, 0x6f, 0x97, 0x40, 0x9a, 0xe3, 0x30, 0x7b, 0x21,
+ 0x8f, 0x0e, 0x6e, 0xe6, 0xae, 0x8b, 0x51, 0x74, 0xc6, 0xf5, 0xe8, 0xe0,
+ 0x7e, 0x2a, 0xff, 0xcd, 0xb7, 0x26, 0x87, 0x05, 0xc6, 0x18, 0xba, 0x40,
+ 0x61, 0x14, 0x4d, 0x33, 0xda, 0x5d, 0x7c, 0xc2, 0xbf, 0x06, 0xa5, 0xc4,
+ 0x5a, 0x53, 0x7e, 0xe1, 0x5f, 0x2e, 0x69, 0x1e, 0xa4, 0xaa, 0x35, 0x1f,
+ 0x79, 0xaa, 0xb4, 0x45, 0x7a, 0x1c, 0x9a, 0x70, 0xec, 0x99, 0xcf, 0x74,
+ 0x21, 0xf5, 0x3e, 0x66, 0xd2, 0xc2, 0xa5, 0x3d, 0x53, 0x63, 0xe3, 0x41,
+ 0x53, 0x72, 0x29, 0x1c, 0xc8, 0x3a, 0x21, 0x7e, 0x9e, 0x4e, 0x0e, 0x3b,
+ 0x4b, 0xa8, 0xad, 0x8c, 0x39, 0xee, 0xdc, 0xc1, 0xd6, 0xba, 0x5c, 0x28,
+ 0xe6, 0x98, 0xfc, 0x82, 0xa2, 0x09, 0xb6, 0x41, 0x71, 0x1b, 0xc5, 0xf5,
+ 0x9e, 0x0a, 0x35, 0x3a, 0xd2, 0x71, 0xf7, 0x58, 0x6d, 0x74, 0xdc, 0xb1,
+ 0x4f, 0x22, 0xe2, 0xdd, 0x66, 0xd3, 0x10, 0xdd, 0xf2, 0xa1, 0x74, 0xf7,
+ 0xf4, 0x99, 0x6f, 0xea, 0x12, 0x65, 0x1a, 0x8c, 0xbf, 0x1f, 0xd4, 0x78,
+ 0x90, 0xc3, 0xfc, 0x4f, 0xdd, 0x93, 0xa2, 0x2c, 0x88, 0x85, 0xba, 0xe3,
+ 0x58, 0x05, 0x7d, 0x08, 0x31, 0x5c, 0xe4, 0x1c, 0x31, 0x91, 0xdd, 0x7b,
+ 0xf8, 0x90, 0x91, 0xc4, 0x20, 0x8a, 0x0d, 0x42, 0xea, 0x5f, 0x38, 0x60,
+ 0x11, 0xd1, 0x36, 0x55, 0x41, 0x5f, 0xc4, 0x1f, 0x5b, 0x57, 0xfd, 0x62,
+ 0xb5, 0x50, 0xd4, 0x84, 0xa0, 0xa7, 0xcf, 0x55, 0x9b, 0xbd, 0xc9, 0x88,
+ 0x24, 0xbd, 0xfe, 0x17, 0x32, 0xd3, 0xdc, 0xb9, 0x88, 0x2d, 0x95, 0x23,
+ 0x93, 0x50, 0xe5, 0xd2, 0x55, 0xfb, 0xea, 0x00, 0x26, 0xe7, 0x0b, 0x59,
+ 0xc5, 0x44, 0x0b, 0x8a, 0xcc, 0x03, 0xdc, 0x4b, 0x5e, 0x6f, 0x7d, 0x4c,
+ 0xbe, 0x7a, 0xc0, 0x67, 0x5f, 0x24, 0x7f, 0x41, 0x91, 0xcd, 0x91, 0x5c,
+ 0x3a, 0x02, 0x3b, 0x25, 0xb3, 0xe4, 0x90, 0x05, 0xcf, 0xf2, 0x9e, 0xbe,
+ 0x50, 0x53, 0x85, 0xaa, 0xc2, 0x56, 0xf9, 0xb1, 0x69, 0x69, 0x7e, 0xb6,
+ 0xeb, 0xec, 0x3e, 0x8c, 0x51, 0xd0, 0x2f, 0x85, 0x3b, 0x04, 0x48, 0x05,
+ 0xc4, 0xe0, 0xc6, 0xe3, 0x6f, 0xa2, 0xb7, 0xaf, 0x9f, 0x71, 0xba, 0xec,
+ 0x55, 0x52, 0x70, 0x51, 0x55, 0xaf, 0x8b, 0x9d, 0x7e, 0x1b, 0x34, 0xb6,
+ 0x17, 0xc6, 0x04, 0x88, 0xfe, 0xa4, 0x0c, 0x4d, 0x25, 0x6d, 0xda, 0x42,
+ 0x86, 0xdd, 0xbb, 0x32, 0x17, 0x8a, 0x21, 0x65, 0x1b, 0x1a, 0x25, 0x64,
+ 0x97, 0x66, 0xb6, 0x45, 0x9d, 0x89, 0x3d, 0x7b, 0xe2, 0x99, 0x58, 0x71,
+ 0xbf, 0x64, 0xe0, 0xff, 0xec, 0x8a, 0x05, 0xea, 0x8e, 0x13, 0xf5, 0x4c,
+ 0x18, 0xe7, 0xa1, 0x9c, 0x7b, 0x16, 0x66, 0xdb, 0xaf, 0xc5, 0xa5, 0x85,
+ 0xcd, 0x04, 0xef, 0x3d, 0x0b, 0xd5, 0x49, 0x12, 0xc8, 0x71, 0x2f, 0x2a,
+ 0x1e, 0x3f, 0x24, 0x95, 0xe0, 0xd9, 0xe7, 0xee, 0x59, 0xb6, 0x1d, 0xa4,
+ 0x59, 0x50, 0x19, 0x65, 0xcd, 0x1b, 0x2a, 0x04, 0x8b, 0x68, 0xe0, 0xc5,
+ 0x33, 0x91, 0x7b, 0x82, 0xb5, 0x0f, 0x5e, 0x79, 0x51, 0xd7, 0x96, 0x51,
+ 0x52, 0xd0, 0x17, 0xe8, 0xe6, 0x49, 0xa5, 0xcb, 0xeb, 0xf0, 0x70, 0x3e,
+ 0x97, 0x9b, 0xfa, 0xac, 0x09, 0x3c, 0x61, 0x3c, 0x30, 0x09, 0x7d, 0x77,
+ 0x76, 0xd4, 0x85, 0xf4, 0x0f, 0x0f, 0x22, 0x7b, 0xa5, 0x55, 0x28, 0x9d,
+ 0x69, 0x3d, 0xe8, 0x64, 0x57, 0xcf, 0x0c, 0x4d, 0x39, 0xbf, 0xca, 0xd2,
+ 0xbf, 0x25, 0x41, 0xa6, 0xb5, 0x55, 0xb5, 0x09, 0x1e, 0xdf, 0x53, 0x86,
+ 0x71, 0x1b, 0xcf, 0x53, 0x65, 0x8a, 0x6c, 0x47, 0xf7, 0x0f, 0x3c, 0x51,
+ 0xaa, 0xfd, 0x98, 0xf2, 0x11, 0x95, 0x48, 0x59, 0xae, 0x6f, 0xc6, 0x1e,
+ 0x9c, 0xa4, 0x06, 0x64, 0xf2, 0xfc, 0xa9, 0xca, 0x5e, 0x26, 0x1f, 0xf3,
+ 0xbd, 0xc4, 0x0b, 0x31, 0x07, 0xe4, 0x79, 0x93, 0x4d, 0x3f, 0xd7, 0xab,
+ 0x4f, 0xb7, 0x52, 0x83, 0xb4, 0x62, 0xe3, 0xd0, 0xec, 0x15, 0x28, 0x92,
+ 0xbb, 0x34, 0xd3, 0xfc, 0xa7, 0xd6, 0xeb, 0xcf, 0xd7, 0x98, 0xa0, 0x4a,
+ 0xb9, 0x37, 0x8f, 0x40, 0x4b, 0xc1, 0xf3, 0x9f, 0xf9, 0x93, 0x20, 0x95,
+ 0xbf, 0x04, 0x31, 0xde, 0xe5, 0xf4, 0x20, 0x76, 0xcf, 0x0a, 0x8a, 0xd8,
+ 0x59, 0x62, 0xd5, 0x65, 0x09, 0x3b, 0x6d, 0x36, 0xeb, 0x4a, 0x36, 0xbc,
+ 0x74, 0xdd, 0xcf, 0x73, 0xe6, 0xa6, 0x41, 0x7f, 0x42, 0x52, 0x6f, 0x50,
+ 0x22, 0xd2, 0x2b, 0x08, 0x59, 0xad, 0x98, 0x9b, 0x7f, 0xfa, 0x85, 0xd2,
+ 0x86, 0xdd, 0x97, 0x26, 0xa6, 0xae, 0x7d, 0xe3, 0xb3, 0x9d, 0x50, 0x68,
+ 0x9d, 0xb1, 0xa5, 0x5e, 0x20, 0x24, 0xd7, 0xbe, 0x20, 0x94, 0x71, 0x4c,
+ 0xd7, 0xc8, 0x15, 0x11, 0x35, 0x9e, 0xf1, 0x38, 0xc6, 0xfe, 0xb1, 0xbd,
+ 0x1a, 0xd3, 0xbd, 0x08, 0x45, 0xa8, 0xe8, 0xf8, 0x75, 0xf0, 0xe0, 0x13,
+ 0x3f, 0xc1, 0x78, 0xce, 0xd2, 0xc0, 0xbd, 0x58, 0x22, 0x4a, 0xad, 0xa7,
+ 0x17, 0x3c, 0xfa, 0x54, 0xd3, 0x58, 0x24, 0xda, 0x05, 0xcb, 0xdf, 0x7a,
+ 0x46, 0xc8, 0xe1, 0x10, 0x59, 0x67, 0x15, 0x10, 0x17, 0x32, 0xf3, 0x16,
+ 0x34, 0xf7, 0xfe, 0xb3, 0xe7, 0x0f, 0x3c, 0xab, 0x97, 0x66, 0xe9, 0xae,
+ 0xfa, 0xe0, 0xbd, 0xcf, 0xda, 0xc7, 0xdc, 0xd4, 0x02, 0xc3, 0x85, 0xa1,
+ 0xa3, 0xc6, 0x27, 0x2d, 0xda, 0x64, 0x40, 0xc1, 0x7f, 0x33, 0xd3, 0x4f,
+ 0xc1, 0xd9, 0x77, 0xe5, 0xbf, 0x85, 0xe3, 0xfd, 0x3c, 0x00, 0x9f, 0x52,
+ 0xa3, 0x8f, 0xab, 0xea, 0x1c, 0x56, 0x7a, 0xf4, 0x11, 0xe5, 0x58, 0x9d,
+ 0xa0, 0x05, 0xd9, 0x73, 0x92, 0x23, 0x56, 0x99, 0xe7, 0x1c, 0xa2, 0x0c,
+ 0x2a, 0x2c, 0xa7, 0xc5, 0x76, 0xeb, 0xe8, 0xbe, 0xa1, 0x4d, 0x05, 0x75,
+ 0x04, 0xc6, 0xb3, 0x9d, 0xc6, 0x31, 0x28, 0xaf, 0x57, 0xa2, 0x7a, 0xbb,
+ 0x19, 0x79, 0x30, 0xa8, 0xe0, 0xb5, 0x3d, 0xcf, 0xbd, 0x30, 0x36, 0x48,
+ 0x8d, 0x87, 0x34, 0x5a, 0xd1, 0xcd, 0x23, 0x90, 0xa1, 0x39, 0x3e, 0x50,
+ 0x45, 0xde, 0x83, 0xc9, 0x6e, 0xc6, 0x6b, 0x80, 0x0f, 0x14, 0xab, 0x25,
+ 0xe8, 0x46, 0x45, 0x1b, 0x0e, 0x88, 0xa7, 0x5d, 0xba, 0x4e, 0xa6, 0x37,
+ 0x76, 0x64, 0x36, 0xe3, 0x06, 0xc2, 0x4b, 0xf0, 0xd6, 0x53, 0xb7, 0xb4,
+ 0x50, 0x6b, 0xce, 0x8f, 0x9a, 0x9a, 0x80, 0x7f, 0x54, 0xa8, 0xe6, 0xfc,
+ 0x62, 0x7c, 0xb6, 0xcf, 0x63, 0x16, 0x17, 0x0c, 0x1d, 0x88, 0xc3, 0x71,
+ 0xf2, 0x57, 0xcd, 0xf3, 0x2d, 0xfd, 0xd3, 0xcf, 0xd7, 0x3c, 0x3d, 0xd6,
+ 0x18, 0xa9, 0xe3, 0x19, 0xb3, 0x5f, 0xda, 0x87, 0xf0, 0xa5, 0xcf, 0x14,
+ 0x2f, 0xc1, 0x4c, 0xbb, 0x62, 0x39, 0xe2, 0x91, 0xb9, 0x94, 0x1a, 0xff,
+ 0xf0, 0xe7, 0x5e, 0xaf, 0xb9, 0x5e, 0x65, 0x37, 0x4e, 0x5e, 0xd4, 0x00,
+ 0x36, 0xdb, 0x60, 0xff, 0xc2, 0x0b, 0x3b, 0x1a, 0x01, 0x66, 0x97, 0x73,
+ 0x7f, 0x0f, 0xd4, 0x52, 0x61, 0x31, 0xab, 0xe2, 0x3b, 0x22, 0xfe, 0xba,
+ 0x0a, 0xd6, 0xe0, 0xc5, 0x8e, 0xbb, 0x7e, 0x97, 0xab, 0x09, 0x09, 0xa4,
+ 0xd1, 0x4d, 0x72, 0xdf, 0xa8, 0xbd, 0xce, 0x8e, 0x80, 0x34, 0x63, 0x43,
+ 0x84, 0x7f, 0xc4, 0x35, 0xf0, 0xc3, 0x0f, 0xc2, 0xe3, 0x5d, 0x04, 0x95,
+ 0xba, 0x16, 0x5c, 0x3d, 0x64, 0x62, 0x88, 0x22, 0x16, 0xf0, 0xf1, 0x82,
+ 0x3d, 0xbe, 0x48, 0xe6, 0x09, 0xc3, 0x80, 0x8b, 0x9e, 0x02, 0xc2, 0xee,
+ 0x4a, 0x2a, 0xe4, 0x18, 0x63, 0xb8, 0x55, 0x38, 0x7d, 0x17, 0x06, 0xbd,
+ 0x8c, 0x03, 0x53, 0xd5, 0x58, 0x45, 0x3b, 0x7e, 0xf0, 0xfe, 0xe2, 0x9b,
+ 0xd3, 0xf3, 0x71, 0xb4, 0xcd, 0xf8, 0x8c, 0x17, 0xe7, 0xc7, 0x5f, 0xbd,
+ 0x27, 0xfd, 0xdf, 0xb9, 0x65, 0x5e, 0xc7, 0x59, 0x4a, 0x37, 0xc7, 0xb8,
+ 0x4a, 0x32, 0xda, 0xc7, 0x2b, 0xab, 0xb9, 0x89, 0x10, 0x1d, 0xbe, 0x2b,
+ 0xf3, 0x62, 0xe0, 0xca, 0xaa, 0xdf, 0x5d, 0xe7, 0xba, 0x19, 0x12, 0x6c,
+ 0xc9, 0x69, 0x05, 0x9c, 0xad, 0x91, 0x7b, 0xdd, 0x36, 0xad, 0x63, 0x6e,
+ 0x46, 0xe6, 0x5d, 0x8d, 0x2e, 0xbe, 0x39, 0x78, 0xf7, 0xed, 0xd8, 0x30,
+ 0xee, 0xbf, 0xff, 0xfe, 0xfb, 0xd0, 0xeb, 0xbf, 0xbf, 0xbd, 0x0d, 0xf1,
+ 0xf2, 0x3a, 0xfe, 0xf8, 0x71, 0x54, 0x26, 0x1b, 0x1b, 0x6f, 0xbc, 0xaf,
+ 0xce, 0x57, 0x4c, 0x2d, 0x57, 0x24, 0x59, 0xd0, 0xd7, 0xdb, 0xb4, 0xbe,
+ 0x5c, 0xa1, 0x75, 0x7b, 0x55, 0xa5, 0x73, 0xba, 0x90, 0x92, 0x12, 0x6f,
+ 0x6f, 0x6f, 0x6c, 0x8c, 0x8f, 0x8e, 0xa2, 0x83, 0x93, 0xf1, 0x69, 0xf0,
+ 0xee, 0xe6, 0x2e, 0x47, 0xae, 0x5c, 0x25, 0xd5, 0x26, 0x43, 0x9d, 0x9e,
+ 0x1c, 0x5c, 0xb0, 0xce, 0xfb, 0xdd, 0xd1, 0xf9, 0xf8, 0xf8, 0xf4, 0x1d,
+ 0xef, 0x0e, 0x07, 0x2c, 0xc6, 0xf3, 0x3b, 0x8e, 0x57, 0xbd, 0x4c, 0x81,
+ 0x3b, 0x73, 0x67, 0xe5, 0x4f, 0x9b, 0x38, 0xf2, 0x74, 0x5f, 0xdd, 0x31,
+ 0x04, 0xb4, 0x06, 0x3a, 0x70, 0xe0, 0x3a, 0xad, 0x84, 0x45, 0x22, 0x6e,
+ 0x44, 0xde, 0xee, 0x25, 0xd5, 0x7b, 0x92, 0x89, 0x84, 0x57, 0x0f, 0x04,
+ 0xad, 0x01, 0xe9, 0x2d, 0x41, 0xdc, 0x64, 0xe7, 0xc4, 0xc7, 0xc7, 0x5c,
+ 0x67, 0x24, 0x7a, 0x3f, 0x3e, 0xf8, 0xfa, 0x88, 0x1f, 0xfd, 0x3a, 0xa9,
+ 0xfc, 0x7e, 0x48, 0x99, 0x56, 0xee, 0xe4, 0x5d, 0x52, 0x95, 0xd3, 0x78,
+ 0xc9, 0x69, 0xe9, 0xd4, 0xcd, 0x50, 0xee, 0xa1, 0xa0, 0x6d, 0xd1, 0x05,
+ 0x7c, 0x2d, 0xdb, 0x4c, 0x9f, 0x47, 0xa1, 0xd9, 0xb0, 0xdd, 0xf3, 0xa3,
+ 0x83, 0xd7, 0x6f, 0x8f, 0x2c, 0x40, 0x5f, 0x6a, 0x3b, 0x50, 0xa3, 0xd7,
+ 0xf9, 0x22, 0x09, 0x6c, 0xe1, 0x2c, 0x1b, 0xf0, 0xe2, 0xd3, 0x37, 0x5c,
+ 0xe9, 0xb5, 0xbb, 0x3b, 0xbf, 0x51, 0x78, 0x76, 0x74, 0x99, 0x6e, 0x4b,
+ 0xeb, 0xd6, 0x5f, 0xec, 0x96, 0x44, 0xc1, 0xb7, 0x4d, 0x5c, 0x16, 0x9b,
+ 0x06, 0x8c, 0x21, 0x9f, 0xef, 0xec, 0xec, 0x3c, 0x30, 0x0f, 0xe8, 0x13,
+ 0x7a, 0xeb, 0xd2, 0x54, 0xf6, 0xf9, 0xf1, 0x6d, 0xdf, 0xbe, 0x1f, 0xf1,
+ 0x5c, 0xd3, 0xff, 0xb9, 0x20, 0x5b, 0x26, 0x38, 0xb3, 0x69, 0x95, 0x74,
+ 0x0f, 0x79, 0x9a, 0xe7, 0x6e, 0x07, 0x6a, 0x8b, 0x43, 0x12, 0x32, 0x24,
+ 0x1e, 0x8d, 0xec, 0xc4, 0x1b, 0x32, 0x70, 0xd2, 0x7f, 0x10, 0xcd, 0x56,
+ 0xdc, 0x37, 0x9b, 0xe4, 0x6f, 0xa8, 0x4d, 0xfe, 0x31, 0xca, 0x8b, 0xab,
+ 0xed, 0xc5, 0x3e, 0x44, 0x1a, 0x7a, 0xe8, 0x0d, 0x03, 0x83, 0x44, 0x24,
+ 0x1a, 0xbb, 0xa0, 0xf4, 0x92, 0x17, 0x96, 0xf3, 0x67, 0x3e, 0x61, 0x5c,
+ 0xbf, 0x60, 0x15, 0x24, 0x22, 0xea, 0xd2, 0x66, 0x6e, 0x15, 0x19, 0x3b,
+ 0x3a, 0x29, 0x79, 0xc3, 0xd8, 0xe2, 0x38, 0x22, 0x06, 0x42, 0xbd, 0x70,
+ 0xb8, 0x1b, 0x48, 0x84, 0x7e, 0x2d, 0x88, 0x64, 0x46, 0xd5, 0x47, 0xf0,
+ 0x5d, 0x2d, 0x0f, 0x2a, 0x38, 0x89, 0xec, 0xc1, 0x5d, 0x72, 0xde, 0x66,
+ 0x81, 0xea, 0x22, 0xe8, 0x81, 0xf3, 0x41, 0x89, 0xf3, 0x5c, 0xe9, 0xc2,
+ 0x21, 0x06, 0x88, 0x1b, 0x6e, 0xf6, 0x39, 0x1c, 0x82, 0x7e, 0x4a, 0x47,
+ 0x2d, 0x9f, 0xd0, 0x79, 0x30, 0x29, 0x59, 0xfd, 0x4c, 0xaf, 0xe9, 0x80,
+ 0x76, 0xc6, 0x34, 0x8a, 0x56, 0x5f, 0x2b, 0x5f, 0xe0, 0xb4, 0x94, 0xee,
+ 0x82, 0x12, 0x3d, 0x0c, 0xab, 0xb6, 0x8d, 0x2c, 0xb2, 0x4f, 0xee, 0xe3,
+ 0xf0, 0x4c, 0x7f, 0xe3, 0x58, 0x9a, 0xf4, 0x96, 0x27, 0xcf, 0x2c, 0x9e,
+ 0x2e, 0x6b, 0xbe, 0x03, 0x4c, 0xc6, 0x45, 0x68, 0x0e, 0xd4, 0x55, 0x64,
+ 0x3c, 0x84, 0xfa, 0xc6, 0x03, 0x23, 0xdc, 0xa7, 0xa5, 0xe1, 0x2b, 0xe5,
+ 0xbf, 0xb6, 0x47, 0x65, 0x79, 0xbd, 0x9d, 0xce, 0x3e, 0x14, 0x65, 0x1c,
+ 0xfd, 0x54, 0xe7, 0xf7, 0xe5, 0xb4, 0x39, 0x89, 0xff, 0xc2, 0x0a, 0xfe,
+ 0xa2, 0x95, 0x5a, 0x3f, 0x8b, 0xdf, 0x62, 0x06, 0xc3, 0x21, 0xe0, 0x0a,
+ 0xb4, 0xa7, 0x0f, 0xf4, 0xc0, 0x07, 0x87, 0xb9, 0xf0, 0x2b, 0x66, 0xd7,
+ 0xc1, 0x0a, 0x69, 0x92, 0x12, 0x68, 0x4e, 0xbc, 0xa5, 0x9b, 0xd0, 0x7b,
+ 0x7a, 0x74, 0x7e, 0xdc, 0xdb, 0xd9, 0xd9, 0xdd, 0xdf, 0xfd, 0xfc, 0xc5,
+ 0xce, 0xfe, 0xee, 0xee, 0xee, 0xde, 0xfe, 0xee, 0xfe, 0xfe, 0xde, 0xce,
+ 0xcf, 0xdb, 0xbd, 0x75, 0x4b, 0xf7, 0xf6, 0xab, 0x35, 0x0d, 0xd2, 0xac,
+ 0x7b, 0x12, 0xc5, 0xfa, 0x93, 0x9b, 0x3d, 0x66, 0x35, 0xeb, 0x45, 0xe5,
+ 0x62, 0x42, 0x5d, 0xe9, 0xe1, 0x0c, 0x27, 0x53, 0x92, 0x24, 0x9d, 0x04,
+ 0x13, 0x7a, 0x7d, 0xfa, 0xfd, 0xbb, 0x93, 0xd3, 0x83, 0xd7, 0xd1, 0xc5,
+ 0x69, 0x74, 0x00, 0xbb, 0x5f, 0x07, 0x9f, 0x44, 0x24, 0x3a, 0x67, 0x5c,
+ 0x0a, 0xe0, 0x83, 0xf7, 0x11, 0x98, 0x91, 0xca, 0x85, 0x3e, 0x61, 0x10,
+ 0xcd, 0x71, 0xe6, 0xd0, 0xeb, 0xb8, 0xa5, 0xd1, 0x75, 0xb5, 0x78, 0xfc,
+ 0x46, 0xf8, 0x94, 0x9e, 0x07, 0xe2, 0x8a, 0xf7, 0xaa, 0x3b, 0x86, 0x63,
+ 0x27, 0x5f, 0xd3, 0x9a, 0xd4, 0xa1, 0xa5, 0x6e, 0x6c, 0x97, 0x84, 0xb3,
+ 0x29, 0x81, 0x5b, 0x78, 0x03, 0xe7, 0x12, 0xde, 0xaf, 0x66, 0x70, 0x90,
+ 0x2b, 0xdf, 0xae, 0x71, 0x12, 0x90, 0x91, 0x58, 0x28, 0xdd, 0x6a, 0x4d,
+ 0xf0, 0x74, 0xed, 0x94, 0xe8, 0x2e, 0x4f, 0x3e, 0x62, 0xd6, 0x75, 0xde,
+ 0x2b, 0x61, 0xce, 0x7e, 0x76, 0x28, 0x3c, 0x60, 0xc6, 0x88, 0xb4, 0xb0,
+ 0x21, 0x23, 0xc2, 0xab, 0xa3, 0x3b, 0xee, 0xc7, 0x58, 0xb2, 0xef, 0x82,
+ 0xbf, 0x09, 0xef, 0xf1, 0x6d, 0x67, 0xdf, 0x95, 0x01, 0xbc, 0x1f, 0x1f,
+ 0xbf, 0xfb, 0x1a, 0x1e, 0xdc, 0xef, 0x4f, 0xcf, 0x5f, 0x8f, 0xa9, 0x59,
+ 0x16, 0x70, 0x36, 0x60, 0xe2, 0x63, 0x4e, 0xa8, 0xa3, 0x92, 0x73, 0xc9,
+ 0x5d, 0xff, 0x51, 0xc8, 0x69, 0xe0, 0x50, 0x12, 0x30, 0xcc, 0x40, 0xe1,
+ 0x61, 0xf4, 0x83, 0xee, 0x5b, 0x23, 0xa0, 0xc6, 0x2f, 0x17, 0xf1, 0xf4,
+ 0x9a, 0x35, 0x74, 0x21, 0x56, 0x84, 0xda, 0x6d, 0x73, 0xce, 0xcc, 0x36,
+ 0x2b, 0x5e, 0xdb, 0x55, 0x0e, 0x72, 0x44, 0x2b, 0x92, 0xad, 0x68, 0x35,
+ 0xae, 0x02, 0xf3, 0x0c, 0xd1, 0xfa, 0xe5, 0x3c, 0xbe, 0x42, 0x87, 0xed,
+ 0x63, 0x10, 0x74, 0xa6, 0xdd, 0x7f, 0x6a, 0x97, 0x7c, 0x6d, 0xa0, 0xbd,
+ 0x63, 0x10, 0x00, 0x10, 0xd1, 0x00, 0xe9, 0xa0, 0x9e, 0x27, 0x91, 0x3a,
+ 0xd9, 0x4f, 0x8f, 0x90, 0x1e, 0xae, 0x12, 0xdd, 0x2c, 0xa1, 0x84, 0xca,
+ 0xbd, 0x82, 0x24, 0x43, 0x82, 0xf9, 0x30, 0x40, 0xa4, 0x11, 0xe5, 0x94,
+ 0x5b, 0x0a, 0x8c, 0x40, 0xa5, 0x0f, 0x4b, 0xf4, 0x55, 0x6e, 0x64, 0xc9,
+ 0x79, 0x30, 0x40, 0x53, 0x2a, 0x2d, 0xde, 0x4d, 0xc5, 0xe0, 0x1e, 0x97,
+ 0xc4, 0xe3, 0x80, 0x95, 0x9e, 0xa1, 0xa3, 0xf8, 0x7a, 0x19, 0x1e, 0x55,
+ 0xbe, 0xac, 0x68, 0x28, 0x31, 0x17, 0x57, 0x44, 0xc9, 0x60, 0x03, 0xcb,
+ 0x26, 0x75, 0x4a, 0xb2, 0x9a, 0x7b, 0x16, 0xf6, 0x22, 0xad, 0xa4, 0xa5,
+ 0xe4, 0x15, 0x38, 0xe8, 0x07, 0xbe, 0xbc, 0x04, 0xcb, 0x69, 0x43, 0x43,
+ 0x0a, 0xfc, 0x3d, 0xe9, 0x4d, 0x97, 0x7c, 0xc7, 0x91, 0x10, 0x4f, 0x0c,
+ 0x5c, 0x28, 0x47, 0x53, 0x70, 0x83, 0xfa, 0xac, 0xb5, 0x65, 0xb3, 0x2c,
+ 0x1c, 0x69, 0x8e, 0x39, 0xb3, 0x37, 0xc3, 0xba, 0x15, 0xdc, 0x40, 0xe8,
+ 0x91, 0xbb, 0x05, 0x3a, 0xf2, 0xf1, 0x63, 0x0f, 0xc8, 0x12, 0x2c, 0x9b,
+ 0x04, 0xdb, 0xf9, 0xf7, 0x68, 0x8f, 0xb8, 0xa9, 0xb4, 0x2a, 0x93, 0xf9,
+ 0xa5, 0x22, 0xe8, 0xc8, 0x15, 0xc2, 0xb3, 0x8c, 0x1b, 0x38, 0x3b, 0xec,
+ 0x2f, 0xcd, 0x1c, 0xa8, 0x47, 0xae, 0xbc, 0xe4, 0x0a, 0x6c, 0x5d, 0x9e,
+ 0x03, 0x49, 0xd6, 0x78, 0x88, 0x38, 0x45, 0xff, 0x24, 0x81, 0x5a, 0xae,
+ 0xb9, 0x1a, 0xeb, 0xa8, 0x45, 0x18, 0xf3, 0xad, 0x63, 0x6b, 0xc7, 0xab,
+ 0x75, 0xbf, 0x64, 0x34, 0x7c, 0x8e, 0x8a, 0xf0, 0xa5, 0x35, 0x63, 0x4b,
+ 0xe3, 0x01, 0xf0, 0x47, 0xf2, 0x91, 0x93, 0x5a, 0x74, 0x6e, 0x5e, 0xc9,
+ 0x73, 0x42, 0xbd, 0xce, 0x97, 0x5b, 0xc3, 0xe7, 0xe0, 0x85, 0xbc, 0xda,
+ 0x8c, 0x91, 0xc5, 0x8a, 0x9a, 0x46, 0xe2, 0x8a, 0x18, 0x68, 0xaa, 0xa1,
+ 0x2b, 0xbd, 0xab, 0x48, 0x17, 0x92, 0x6f, 0x76, 0x6f, 0xde, 0x3f, 0x38,
+ 0x5f, 0x63, 0x51, 0x20, 0x21, 0x04, 0x07, 0x1d, 0x33, 0x29, 0xa1, 0x52,
+ 0x48, 0x2d, 0x54, 0xb3, 0x36, 0xcb, 0xd5, 0xc4, 0x6f, 0x2c, 0xd3, 0x08,
+ 0x82, 0x1c, 0xb9, 0x49, 0xf8, 0x9a, 0x71, 0x6a, 0x5c, 0x8c, 0xef, 0xaa,
+ 0x05, 0x7a, 0x94, 0x2a, 0x74, 0x14, 0x31, 0x14, 0x24, 0x30, 0xae, 0x4a,
+ 0x47, 0x39, 0xb4, 0x5a, 0x37, 0x7a, 0x21, 0x6e, 0x20, 0xfa, 0xb5, 0xcd,
+ 0x6e, 0x94, 0xf3, 0xae, 0xe7, 0x37, 0x8f, 0xb3, 0x9a, 0xf6, 0x90, 0x4c,
+ 0x5f, 0x9c, 0xdf, 0x0b, 0x37, 0x48, 0xb3, 0x87, 0x99, 0x8e, 0x0e, 0xe2,
+ 0x93, 0x3a, 0xc6, 0x5c, 0x15, 0x2a, 0x06, 0x6e, 0x15, 0x1f, 0x7d, 0x28,
+ 0x91, 0x1c, 0x48, 0x8a, 0x69, 0x24, 0x77, 0x98, 0x51, 0xd2, 0xad, 0x23,
+ 0x0e, 0xbc, 0xa4, 0x7e, 0xee, 0x47, 0x5f, 0xc5, 0x65, 0x3a, 0x1d, 0x68,
+ 0x95, 0x45, 0xad, 0xba, 0xc8, 0x6f, 0xf8, 0xe2, 0x7b, 0x9b, 0x92, 0xd6,
+ 0xb3, 0x35, 0x8a, 0xbe, 0xb7, 0xba, 0x99, 0xa4, 0x43, 0x4a, 0x99, 0xb2,
+ 0x74, 0x8a, 0xd2, 0xa8, 0x35, 0x1c, 0x21, 0xa5, 0xcf, 0x10, 0xb0, 0x07,
+ 0x9d, 0xf8, 0xb2, 0x38, 0xd8, 0xd5, 0xb8, 0xbc, 0x71, 0x9e, 0x30, 0xec,
+ 0x95, 0xb2, 0x22, 0xe0, 0x0c, 0x8a, 0x2c, 0x2d, 0x96, 0x81, 0x7c, 0xe5,
+ 0xc2, 0x4b, 0xf0, 0xb7, 0x3b, 0xbe, 0x56, 0xed, 0x16, 0xd6, 0xd7, 0x52,
+ 0xe3, 0x12, 0x2d, 0x7a, 0x84, 0xaf, 0x5f, 0x6e, 0xce, 0xb1, 0xa8, 0xe1,
+ 0x90, 0x16, 0x8c, 0x97, 0x46, 0x19, 0xe8, 0xe9, 0xc5, 0xd1, 0xbf, 0x44,
+ 0x07, 0x4d, 0xe7, 0x39, 0xdf, 0x4c, 0x35, 0xe0, 0xa0, 0x81, 0x27, 0x30,
+ 0x8c, 0x5d, 0x42, 0x11, 0x33, 0x2d, 0x89, 0xca, 0xdb, 0xbf, 0xa1, 0x89,
+ 0xcf, 0xde, 0x44, 0x5c, 0xe6, 0x1a, 0x59, 0x5d, 0xdd, 0x1b, 0x40, 0x3e,
+ 0xbf, 0x06, 0x97, 0xc2, 0x9d, 0xaf, 0x02, 0x2b, 0xb9, 0xa3, 0x69, 0x2c,
+ 0x91, 0xed, 0x0c, 0x0f, 0x46, 0x9b, 0x92, 0x09, 0x03, 0x45, 0x10, 0xb6,
+ 0xc4, 0x0a, 0x0a, 0x00, 0x57, 0x5a, 0x41, 0xd5, 0x92, 0x0c, 0x2e, 0x29,
+ 0x94, 0x17, 0x14, 0x94, 0x8d, 0x43, 0xa4, 0xb6, 0x0f, 0x7c, 0xe4, 0x3e,
+ 0xd8, 0xc5, 0xa2, 0x57, 0xa0, 0x8c, 0xe5, 0x52, 0xf4, 0xa0, 0x3a, 0xc9,
+ 0xda, 0xb1, 0x93, 0xdb, 0xec, 0xcc, 0xc2, 0x10, 0xb1, 0x11, 0x53, 0xe0,
+ 0x20, 0xcd, 0xef, 0xc5, 0x6b, 0x8e, 0x3b, 0xd5, 0xb8, 0x66, 0x78, 0x31,
+ 0x01, 0xd9, 0x0c, 0x78, 0x4a, 0xa8, 0x5a, 0xad, 0x75, 0x98, 0x24, 0xe8,
+ 0x9b, 0x5a, 0xad, 0x87, 0xea, 0x23, 0x79, 0x07, 0xab, 0xca, 0xa3, 0x10,
+ 0x18, 0xc1, 0x30, 0x55, 0xa0, 0x94, 0x0a, 0xad, 0x91, 0x15, 0x21, 0x6e,
+ 0x10, 0x34, 0x71, 0xc3, 0xe3, 0xaa, 0xc1, 0x9e, 0x5c, 0x85, 0xa3, 0x20,
+ 0x46, 0xf5, 0x8d, 0x83, 0x94, 0xd3, 0x66, 0xb9, 0x52, 0xe3, 0x34, 0x09,
+ 0x32, 0x74, 0xb2, 0x7c, 0x23, 0xb8, 0xf9, 0x84, 0x7e, 0xf2, 0xd2, 0x78,
+ 0xa2, 0xc0, 0x8d, 0x49, 0x91, 0xb6, 0x49, 0x22, 0x95, 0x13, 0xb8, 0xb8,
+ 0x0e, 0x76, 0x11, 0x68, 0x9c, 0x7c, 0x02, 0x85, 0x32, 0x17, 0x20, 0xee,
+ 0x0d, 0x4f, 0xdd, 0x7c, 0x07, 0xad, 0x9b, 0x27, 0xa7, 0xea, 0x32, 0xb9,
+ 0x99, 0xbd, 0x5c, 0x44, 0x27, 0xd6, 0x53, 0x32, 0xad, 0x41, 0x09, 0xe3,
+ 0x91, 0x8e, 0x9a, 0x77, 0x07, 0x92, 0x6d, 0xe6, 0xe4, 0x2c, 0xdb, 0xf4,
+ 0x1a, 0x6e, 0x1e, 0xf3, 0x94, 0x59, 0xb4, 0xb8, 0xd7, 0xd4, 0x14, 0x95,
+ 0x0d, 0x18, 0xe3, 0x01, 0x56, 0x89, 0xcf, 0x3f, 0x6f, 0xc9, 0x82, 0x1f,
+ 0xdd, 0xd3, 0xfb, 0xf4, 0x75, 0x60, 0xfd, 0x98, 0x73, 0xa0, 0x09, 0x5b,
+ 0x1b, 0x20, 0x87, 0x3a, 0x13, 0x48, 0x87, 0x86, 0x11, 0xc0, 0x80, 0x49,
+ 0x8f, 0xce, 0x2f, 0xd3, 0xa2, 0xb2, 0x81, 0xe7, 0xfb, 0x1b, 0xa2, 0x5e,
+ 0xcb, 0x40, 0xe3, 0x52, 0x02, 0x96, 0xd6, 0x28, 0x66, 0xc6, 0x26, 0x9b,
+ 0xa3, 0x0d, 0xa4, 0x66, 0x92, 0xdc, 0x47, 0x7c, 0xa9, 0xb2, 0x12, 0x30,
+ 0xce, 0xb5, 0x61, 0x5e, 0x64, 0x1d, 0x8c, 0xa3, 0x8e, 0x06, 0x1d, 0xb9,
+ 0x02, 0x99, 0x9e, 0x47, 0xbc, 0x5f, 0x3f, 0x9c, 0xf7, 0xbf, 0x66, 0x38,
+ 0x07, 0xd1, 0x83, 0x29, 0x1a, 0x5a, 0xfe, 0x94, 0x39, 0x7e, 0x69, 0xc9,
+ 0x69, 0x39, 0xa8, 0xda, 0xe4, 0x1e, 0x59, 0x23, 0xd4, 0xb8, 0x9d, 0xd4,
+ 0xeb, 0x96, 0xb5, 0x0d, 0x13, 0x59, 0x2e, 0x4f, 0x43, 0xa9, 0xe1, 0xf6,
+ 0x07, 0x36, 0x94, 0x4f, 0x1d, 0xae, 0xc1, 0x5f, 0x5a, 0x0e, 0x56, 0x23,
+ 0xbd, 0x42, 0xd3, 0x9e, 0x76, 0x47, 0x3b, 0xa1, 0x7c, 0xe5, 0x92, 0xa1,
+ 0x0a, 0x40, 0xaa, 0x56, 0x80, 0x96, 0xf2, 0x22, 0x0a, 0xcf, 0x04, 0xd9,
+ 0x81, 0x8d, 0xd7, 0xf4, 0xb3, 0x5d, 0x81, 0x99, 0xa6, 0x93, 0xa4, 0xb5,
+ 0x77, 0x18, 0x41, 0x27, 0x59, 0x2c, 0x91, 0x34, 0x62, 0x1c, 0x30, 0x14,
+ 0x02, 0x70, 0x8e, 0x9e, 0xfa, 0x23, 0xf5, 0xcc, 0x6d, 0xb7, 0x8e, 0x51,
+ 0x72, 0x0a, 0xb4, 0x9c, 0xb9, 0x84, 0xf5, 0x43, 0xf8, 0x4c, 0x12, 0x69,
+ 0xa9, 0x5a, 0x9b, 0xdc, 0x76, 0x58, 0x4f, 0x34, 0x65, 0x7a, 0xc6, 0x65,
+ 0x1b, 0x5d, 0xae, 0x0a, 0x30, 0x5e, 0x05, 0x15, 0x54, 0x34, 0x1a, 0x6e,
+ 0x95, 0xe3, 0x73, 0x3b, 0x38, 0x0d, 0xd2, 0xb7, 0x13, 0x14, 0x28, 0xe7,
+ 0x73, 0x2d, 0xd6, 0x71, 0x20, 0x67, 0x68, 0xf9, 0x38, 0xef, 0x7b, 0x73,
+ 0xe2, 0x19, 0xb5, 0x3b, 0x4f, 0x69, 0x40, 0x7d, 0xc0, 0xb2, 0x58, 0xf5,
+ 0x65, 0xe5, 0x85, 0x46, 0xc2, 0x0e, 0x61, 0xbc, 0x5e, 0xd8, 0xb8, 0x5d,
+ 0x8d, 0xaa, 0xc9, 0x74, 0xe5, 0x1a, 0x18, 0x44, 0xc3, 0xff, 0xa5, 0x2b,
+ 0xc3, 0xe2, 0x39, 0xc7, 0x8e, 0xa1, 0x04, 0xc5, 0x32, 0x40, 0xe8, 0xd4,
+ 0x14, 0x3f, 0x30, 0x7c, 0x0e, 0x0c, 0xb5, 0x79, 0xb8, 0xbc, 0x5b, 0xcb,
+ 0x11, 0x02, 0xff, 0x7b, 0x13, 0x62, 0xb1, 0xd6, 0x2a, 0x4e, 0x2b, 0xab,
+ 0x90, 0xe6, 0x36, 0x5c, 0x4d, 0x0b, 0x89, 0x15, 0x6c, 0x0d, 0xd8, 0x5d,
+ 0x64, 0x5f, 0x71, 0xd5, 0xbf, 0xc3, 0x3c, 0x0e, 0x97, 0xd5, 0x57, 0x0d,
+ 0xd3, 0x91, 0x0a, 0xf1, 0x3b, 0x53, 0x86, 0xe4, 0xb7, 0x0e, 0xe9, 0x85,
+ 0xe1, 0x7b, 0x35, 0x67, 0x7c, 0x29, 0x3d, 0x8c, 0x60, 0x76, 0x97, 0x1e,
+ 0xce, 0x50, 0x2b, 0xd9, 0x1e, 0xd8, 0xd7, 0x97, 0x38, 0x29, 0xb6, 0xa7,
+ 0x96, 0x9c, 0xfa, 0xaa, 0xc8, 0xf3, 0x96, 0x34, 0xcb, 0x85, 0x76, 0x31,
+ 0x85, 0xa1, 0x38, 0x74, 0xf8, 0x90, 0xc9, 0xaf, 0xf2, 0xae, 0x2a, 0x8f,
+ 0xf7, 0xdc, 0xc4, 0x48, 0xa2, 0xee, 0xd5, 0xf6, 0xb2, 0xb7, 0xbb, 0x2d,
+ 0x83, 0xd9, 0x96, 0x06, 0x44, 0xae, 0x53, 0x92, 0xf4, 0x41, 0x20, 0x06,
+ 0x40, 0x14, 0xde, 0x5c, 0x9c, 0x23, 0xc0, 0xc1, 0x3b, 0x0b, 0x8d, 0x3c,
+ 0x86, 0x77, 0x8d, 0xaf, 0x26, 0xba, 0x6b, 0xa5, 0xba, 0x50, 0xae, 0xfb,
+ 0xb3, 0xe1, 0x37, 0x68, 0xe0, 0x44, 0x3e, 0x22, 0xa5, 0xe1, 0x6d, 0xa8,
+ 0x35, 0x25, 0x0a, 0x97, 0xc9, 0x15, 0x51, 0x5d, 0x0e, 0x1d, 0x1f, 0x74,
+ 0xf1, 0xaf, 0x13, 0x45, 0x9f, 0x1f, 0xbc, 0xfb, 0xfa, 0x08, 0x92, 0x80,
+ 0x03, 0x52, 0x4c, 0x99, 0xda, 0x67, 0xab, 0x29, 0x54, 0x21, 0x5a, 0x31,
+ 0xc4, 0xbe, 0x01, 0x5a, 0x58, 0xf8, 0x79, 0x0a, 0xa8, 0x2b, 0x21, 0x5e,
+ 0x6c, 0xb7, 0x46, 0xb4, 0x6d, 0x44, 0x66, 0x51, 0x85, 0x04, 0xc1, 0x0a,
+ 0x23, 0x23, 0xa5, 0xe7, 0x80, 0x36, 0x98, 0x2c, 0x63, 0x45, 0xa8, 0x89,
+ 0x43, 0x08, 0x13, 0xb5, 0xb3, 0x8c, 0xea, 0x67, 0x71, 0xc3, 0xd2, 0x5b,
+ 0x9c, 0x4e, 0x5f, 0x40, 0xa7, 0x1f, 0x85, 0x56, 0x35, 0x81, 0xd8, 0xd8,
+ 0xdd, 0xd9, 0xf1, 0xb5, 0x63, 0x3c, 0x14, 0x4b, 0x8b, 0x5b, 0x16, 0xd1,
+ 0xce, 0xf0, 0xc5, 0x8b, 0x75, 0x8c, 0xd0, 0x35, 0x0a, 0x3c, 0x94, 0x67,
+ 0x9f, 0xdc, 0xe6, 0x90, 0x1f, 0x5d, 0xd7, 0x66, 0x87, 0x46, 0x83, 0x82,
+ 0xf5, 0x1a, 0x4d, 0x58, 0x3a, 0xa9, 0x45, 0x2d, 0x3c, 0xe2, 0xac, 0x81,
+ 0xf3, 0x2c, 0x73, 0x6a, 0x0d, 0x2f, 0xe5, 0x86, 0xc7, 0x7e, 0x06, 0x70,
+ 0x86, 0x19, 0x83, 0x96, 0x1c, 0x50, 0x98, 0x3a, 0x1f, 0xee, 0x27, 0x2d,
+ 0x4c, 0xa0, 0xc0, 0xaf, 0x59, 0xa2, 0xcb, 0xf6, 0x6c, 0x4c, 0x24, 0x78,
+ 0x7f, 0xc6, 0xf6, 0xbf, 0xe3, 0x77, 0x5f, 0x8b, 0x39, 0x84, 0x74, 0x7b,
+ 0xd8, 0xd2, 0xb7, 0x1b, 0x9a, 0xfe, 0x7b, 0x29, 0x02, 0xc3, 0xe1, 0xa4,
+ 0x08, 0xde, 0x90, 0x0a, 0xae, 0x69, 0x26, 0xac, 0xc0, 0xef, 0xfe, 0x1a,
+ 0x5b, 0xe5, 0x45, 0x34, 0x0c, 0x84, 0x13, 0xad, 0x00, 0xc3, 0x92, 0xc9,
+ 0xe2, 0xde, 0x34, 0x23, 0xed, 0x01, 0xad, 0x9b, 0x67, 0xc6, 0x35, 0x2b,
+ 0x7a, 0xae, 0xa8, 0xe7, 0xa0, 0xa0, 0x96, 0x6c, 0xd2, 0xd1, 0xa5, 0x74,
+ 0x83, 0xf3, 0xdd, 0x90, 0x44, 0x3e, 0x6d, 0x28, 0x35, 0x53, 0x67, 0xbd,
+ 0x66, 0x20, 0x4b, 0x56, 0x03, 0xb3, 0xfd, 0x34, 0xcd, 0x90, 0x52, 0x95,
+ 0x3c, 0xe4, 0xea, 0xbc, 0xdb, 0x28, 0x30, 0x9a, 0xe7, 0xff, 0xfd, 0x71,
+ 0x3e, 0x30, 0x42, 0x3e, 0xa8, 0x7c, 0x53, 0x65, 0x33, 0x6f, 0xd3, 0xd0,
+ 0x11, 0x77, 0x3a, 0x42, 0x2e, 0xe4, 0x7d, 0xe9, 0x3a, 0xee, 0xee, 0x4e,
+ 0xde, 0xb7, 0xa5, 0xe9, 0x38, 0x00, 0x2c, 0xd2, 0x6a, 0x8d, 0x20, 0x97,
+ 0x7a, 0x6a, 0xba, 0x0c, 0x4b, 0xe1, 0xe0, 0x1c, 0x69, 0x5d, 0x2c, 0xd9,
+ 0x88, 0x34, 0xbf, 0x1d, 0x05, 0x84, 0x98, 0x86, 0x80, 0x28, 0x8f, 0xcb,
+ 0xeb, 0x06, 0x81, 0xa1, 0x97, 0x0a, 0xc1, 0xcc, 0x2c, 0x8d, 0x85, 0x1a,
+ 0xc5, 0xb8, 0xf2, 0x40, 0xd6, 0xc5, 0x2a, 0x53, 0xde, 0xc7, 0xfa, 0x16,
+ 0x0d, 0x3e, 0x2e, 0xaf, 0x51, 0x92, 0xd9, 0x99, 0xa2, 0xda, 0xe2, 0x15,
+ 0xba, 0x57, 0x54, 0x66, 0x92, 0xa7, 0x44, 0x98, 0x82, 0x70, 0x5d, 0x5b,
+ 0x8a, 0xfa, 0x0a, 0x6c, 0x6c, 0xb0, 0x11, 0x7e, 0x9b, 0x4d, 0xf1, 0xe3,
+ 0xf6, 0x02, 0x9a, 0x2d, 0xfd, 0x41, 0x7b, 0xbc, 0xf7, 0x31, 0x3c, 0x62,
+ 0x99, 0x0f, 0xac, 0x27, 0x9f, 0x7a, 0xe2, 0x44, 0x7e, 0xef, 0xf0, 0x2b,
+ 0xe2, 0xd0, 0x05, 0x8c, 0xac, 0x93, 0xd4, 0xeb, 0xd6, 0xb4, 0x50, 0x17,
+ 0x80, 0xd1, 0x07, 0x9a, 0x19, 0x50, 0x20, 0x1a, 0xdb, 0x05, 0x85, 0x1d,
+ 0xb8, 0xb2, 0x82, 0x74, 0x66, 0xec, 0x3d, 0x84, 0x2c, 0xf1, 0xe5, 0x8e,
+ 0xe6, 0x92, 0x87, 0xc2, 0xb2, 0x85, 0xa8, 0xbf, 0x70, 0x75, 0x4b, 0xf6,
+ 0x1c, 0xfa, 0xc4, 0x0c, 0x65, 0x80, 0x02, 0x76, 0x50, 0x21, 0xaa, 0x7d,
+ 0x7c, 0xc1, 0x66, 0x04, 0x5c, 0x7d, 0xa6, 0x8f, 0x7e, 0x77, 0x74, 0xfe,
+ 0xd5, 0xe9, 0xf8, 0x88, 0xf6, 0xe3, 0xf5, 0xd1, 0x57, 0xef, 0x99, 0x6b,
+ 0x31, 0x75, 0x88, 0xe9, 0x19, 0xc0, 0xc0, 0x62, 0xff, 0x02, 0xdc, 0x19,
+ 0x87, 0xeb, 0x81, 0x4c, 0x45, 0x0e, 0x1a, 0x18, 0x15, 0x9a, 0x88, 0x27,
+ 0xf8, 0xba, 0xf3, 0x44, 0x6c, 0x95, 0x29, 0x92, 0x10, 0x3c, 0x06, 0x38,
+ 0xc7, 0xfa, 0x71, 0xcd, 0x76, 0xa8, 0x97, 0x7a, 0x94, 0xa4, 0x08, 0x65,
+ 0xb9, 0xef, 0x8d, 0x9a, 0xb7, 0x62, 0x99, 0xd6, 0xc3, 0xe7, 0xeb, 0xcd,
+ 0xa3, 0x02, 0x03, 0x88, 0xf7, 0xd0, 0xc9, 0xd1, 0x0a, 0xd7, 0x39, 0xcf,
+ 0xe5, 0xd6, 0x44, 0x69, 0x74, 0x6e, 0x1b, 0xf7, 0x78, 0x5a, 0xe1, 0x0a,
+ 0x17, 0x85, 0x42, 0xcb, 0xb4, 0x97, 0x42, 0xdc, 0xc4, 0xde, 0x24, 0xed,
+ 0x7c, 0xae, 0xd7, 0x01, 0xb8, 0x5f, 0x99, 0x08, 0x4e, 0x9c, 0xdc, 0xda,
+ 0xea, 0x0f, 0x97, 0x40, 0x5f, 0x2d, 0xa8, 0xb2, 0xa9, 0x4a, 0xf0, 0x1d,
+ 0xe6, 0xa9, 0x05, 0x3e, 0xa5, 0x90, 0xb9, 0x95, 0xf9, 0xc3, 0xca, 0x07,
+ 0x21, 0x39, 0x4a, 0x3a, 0xb7, 0xeb, 0x59, 0xcf, 0x85, 0xcc, 0x94, 0xed,
+ 0x1c, 0x22, 0x08, 0x18, 0x22, 0x33, 0xa0, 0x01, 0xeb, 0x45, 0xbe, 0xbd,
+ 0x80, 0x22, 0x67, 0x97, 0xf3, 0x09, 0x02, 0x15, 0x72, 0x7d, 0xe9, 0xf3,
+ 0x3a, 0xb2, 0x58, 0x90, 0x4d, 0x24, 0xcc, 0x55, 0xc3, 0xf0, 0x78, 0x4b,
+ 0xe1, 0x12, 0x10, 0xe2, 0x6b, 0x9f, 0x77, 0x69, 0x5d, 0xaa, 0x9e, 0xf3,
+ 0x19, 0x0d, 0x1c, 0x27, 0x1b, 0x1b, 0x1b, 0xaf, 0x8f, 0x2e, 0x0e, 0x8e,
+ 0x4f, 0x8e, 0x5e, 0x47, 0xc7, 0xef, 0xde, 0x9c, 0x9e, 0xbf, 0x3d, 0xb8,
+ 0xd0, 0x68, 0x8c, 0xd7, 0xce, 0x22, 0xe7, 0xc1, 0x9c, 0x14, 0x8c, 0x3d,
+ 0xb0, 0xd6, 0x81, 0x84, 0x69, 0x17, 0xaf, 0x14, 0x78, 0x5f, 0x96, 0x21,
+ 0xa9, 0xad, 0xc1, 0x46, 0xa4, 0x51, 0x1c, 0x1e, 0xfd, 0x8a, 0xe5, 0x82,
+ 0x6d, 0xe7, 0x7b, 0x1f, 0xd9, 0x72, 0x9a, 0x19, 0x0d, 0x55, 0x18, 0x1f,
+ 0x6c, 0x2a, 0x66, 0x1b, 0xc8, 0xd5, 0x3c, 0xd1, 0x3b, 0x91, 0xb7, 0x53,
+ 0xd2, 0xff, 0x41, 0x93, 0xc3, 0xe3, 0xed, 0x3a, 0xe4, 0x30, 0x0c, 0x2d,
+ 0x06, 0x86, 0x16, 0x03, 0x0e, 0x25, 0x04, 0xdd, 0xb8, 0xcc, 0x11, 0x54,
+ 0x12, 0xb6, 0xe9, 0xe0, 0x24, 0xb0, 0xa3, 0x8c, 0x1e, 0x8c, 0xd8, 0x1f,
+ 0x7c, 0x12, 0xee, 0x2f, 0xe3, 0x39, 0x6c, 0x70, 0x11, 0x90, 0x4a, 0x31,
+ 0x99, 0x18, 0x3f, 0xb5, 0xa4, 0x9d, 0x72, 0x67, 0x1d, 0x88, 0xae, 0x8e,
+ 0x61, 0x9b, 0x77, 0x4e, 0x8b, 0x06, 0x86, 0x4d, 0x6d, 0x3a, 0x7f, 0x3d,
+ 0x49, 0x4c, 0xc3, 0x63, 0x2d, 0x26, 0xc9, 0x6b, 0xc1, 0x80, 0xed, 0xfc,
+ 0x33, 0x33, 0x44, 0x45, 0x17, 0x3e, 0xea, 0x35, 0xfe, 0x94, 0xa6, 0xac,
+ 0x2e, 0x2a, 0x3d, 0x6d, 0xfe, 0xdc, 0x1a, 0x66, 0xcb, 0xf0, 0x35, 0x3d,
+ 0x34, 0x5b, 0x2d, 0x96, 0x5a, 0x8f, 0xd8, 0x24, 0x6a, 0xd8, 0xf2, 0x6c,
0x0b, 0x45, 0x68, 0x83, 0xf0, 0x01, 0xc3, 0xcf, 0x1b, 0x5d, 0x03, 0x99,
- 0x07, 0xe8, 0xbb, 0x36, 0x57, 0x60, 0x0d, 0x18, 0x5e, 0xf3, 0xde, 0x59,
- 0x61, 0x18, 0x17, 0x71, 0xd4, 0x90, 0x5c, 0xb0, 0x20, 0xe7, 0xee, 0x59,
- 0xac, 0x64, 0xf0, 0x42, 0xea, 0x03, 0x94, 0xb0, 0xfe, 0x1b, 0x56, 0x65,
- 0x86, 0x49, 0x56, 0x1b, 0xd4, 0xab, 0x22, 0x76, 0x3e, 0x36, 0x26, 0x15,
- 0xbe, 0xd8, 0x0c, 0xe9, 0x09, 0x39, 0xbd, 0x75, 0xed, 0x51, 0x74, 0xdb,
- 0x23, 0x50, 0x2e, 0x4e, 0xfc, 0xe4, 0xde, 0x4a, 0x67, 0x73, 0x95, 0x0c,
- 0x81, 0xc9, 0x5c, 0xd3, 0x2a, 0x47, 0x21, 0xf0, 0xb8, 0x91, 0xef, 0x12,
- 0xc0, 0xd7, 0xc5, 0x0d, 0xeb, 0xf2, 0x48, 0xed, 0x1c, 0xdd, 0x87, 0x39,
- 0x78, 0x12, 0x7a, 0xa6, 0x75, 0x9a, 0xc0, 0xf4, 0xe6, 0x6b, 0x56, 0x52,
- 0xd1, 0x5e, 0xb2, 0x00, 0x46, 0x70, 0x7f, 0xa9, 0x16, 0x00, 0x26, 0xcf,
- 0x4a, 0x75, 0x96, 0x56, 0x50, 0xa8, 0x90, 0x89, 0x23, 0x77, 0x86, 0x33,
- 0xc3, 0xfa, 0x7a, 0x18, 0x01, 0x5e, 0x16, 0x58, 0xb4, 0xe0, 0x86, 0xa6,
- 0x0c, 0xa6, 0x61, 0x87, 0x42, 0xa2, 0xee, 0x5d, 0x2b, 0xe6, 0xe0, 0xa0,
- 0x66, 0x10, 0x3a, 0xad, 0xb1, 0xa4, 0xa7, 0x45, 0x25, 0xe7, 0x0d, 0x12,
- 0xfe, 0x3a, 0xb3, 0x9e, 0x75, 0x90, 0xc1, 0xfa, 0xe2, 0x9a, 0xfa, 0x58,
- 0x4f, 0xae, 0x58, 0x47, 0x1a, 0xd1, 0xd0, 0x23, 0x06, 0x3a, 0x91, 0xc7,
- 0x5f, 0x9d, 0xa5, 0x97, 0x69, 0x36, 0xfd, 0xfd, 0xee, 0xf6, 0x79, 0x7a,
- 0xb5, 0x9c, 0xa6, 0xff, 0x8a, 0x17, 0x5f, 0x3d, 0x79, 0xb2, 0xbb, 0xfd,
- 0xd9, 0xe7, 0xdb, 0xeb, 0xed, 0xe8, 0x03, 0x1f, 0x90, 0x85, 0x08, 0x1b,
- 0xbe, 0xc9, 0xc0, 0x77, 0xd1, 0xcf, 0x70, 0x7c, 0x95, 0x43, 0xa9, 0x63,
- 0x41, 0x49, 0xd7, 0x20, 0x15, 0x6d, 0x12, 0x6c, 0x52, 0x60, 0x07, 0x19,
- 0x95, 0x97, 0xe8, 0xfa, 0x77, 0x3b, 0x7b, 0xc2, 0xca, 0x00, 0x12, 0x8d,
- 0x7b, 0x82, 0xd7, 0xe2, 0x65, 0x3e, 0xa7, 0x1b, 0xe8, 0x8b, 0xa4, 0x4e,
- 0xaf, 0x1c, 0xad, 0x6a, 0x36, 0xbd, 0xe4, 0x50, 0x38, 0xff, 0xe6, 0x25,
- 0x13, 0x79, 0x3e, 0x97, 0x52, 0x36, 0x5c, 0xa6, 0x05, 0x42, 0xd6, 0x22,
- 0x2b, 0x81, 0x20, 0x78, 0x55, 0xa6, 0x33, 0xcb, 0x54, 0xe1, 0xf7, 0x39,
- 0x6a, 0x6d, 0xb8, 0x98, 0x22, 0x8b, 0xc2, 0x42, 0xcf, 0x44, 0xe2, 0x15,
- 0x82, 0x9b, 0x2e, 0x2a, 0x0f, 0xc2, 0x27, 0xd7, 0x4d, 0x58, 0x00, 0x86,
- 0x16, 0x0b, 0x36, 0x95, 0x75, 0xcc, 0x4a, 0x58, 0x06, 0xb8, 0xd9, 0xc4,
- 0x66, 0x3a, 0xc4, 0xef, 0x40, 0x7f, 0x48, 0x05, 0x71, 0x71, 0x7d, 0x21,
- 0x79, 0xd5, 0x82, 0xd1, 0xb1, 0x6e, 0x69, 0x0d, 0x79, 0x63, 0x5e, 0xa9,
- 0x8f, 0xd8, 0x4c, 0x5e, 0x9a, 0x95, 0x68, 0xe7, 0x8b, 0x57, 0x20, 0x88,
- 0x9d, 0x2f, 0xfe, 0xd5, 0x7d, 0xb6, 0xab, 0x9f, 0xed, 0x7e, 0xf1, 0xaf,
- 0xc3, 0x21, 0xc6, 0xc7, 0x14, 0xd2, 0xb3, 0xaf, 0x7b, 0x8a, 0xb6, 0x92,
- 0xea, 0x11, 0x96, 0xbf, 0x1c, 0xf8, 0xb1, 0xec, 0xf5, 0xba, 0xf5, 0x1c,
- 0xae, 0x72, 0x5f, 0x3d, 0xaa, 0x8e, 0x6f, 0xe5, 0x56, 0xde, 0x0d, 0xa0,
- 0xd6, 0x55, 0xd7, 0xa2, 0x3b, 0x3f, 0x08, 0xda, 0xd1, 0xd8, 0x4b, 0xbc,
- 0xfc, 0x07, 0xa6, 0xd4, 0x3f, 0xac, 0x25, 0xea, 0xdd, 0xe4, 0xed, 0xb8,
- 0x87, 0xc3, 0xc3, 0xc8, 0x96, 0x1e, 0x4d, 0xad, 0xde, 0x0c, 0xb7, 0xcc,
- 0xb9, 0x1f, 0x7c, 0x07, 0x4a, 0xc8, 0x38, 0x06, 0xfb, 0x47, 0x05, 0xbf,
- 0x74, 0x49, 0x33, 0xf6, 0x8c, 0xe4, 0xc9, 0x90, 0x8c, 0x51, 0x4b, 0xc5,
- 0x23, 0xae, 0x7f, 0xf2, 0xc3, 0x0f, 0x2a, 0x50, 0xd1, 0x2f, 0x3a, 0xf2,
- 0x6b, 0xe2, 0x45, 0x13, 0x62, 0x6f, 0x33, 0x94, 0x89, 0x67, 0x9c, 0x41,
- 0x9a, 0x87, 0x5e, 0xf9, 0x97, 0x3a, 0x53, 0x69, 0x84, 0xb6, 0x76, 0xff,
- 0xfc, 0xe0, 0xe8, 0x08, 0x61, 0xa6, 0x58, 0xd4, 0x43, 0x61, 0x63, 0xa0,
- 0xcd, 0x0d, 0x84, 0x78, 0xf8, 0xa8, 0xc4, 0x90, 0xf4, 0x79, 0xef, 0xb0,
- 0xed, 0xa0, 0x7e, 0x6a, 0xcc, 0x14, 0x70, 0xdd, 0x4a, 0xd0, 0xac, 0x48,
- 0x39, 0xaf, 0xd6, 0xe5, 0xc1, 0xab, 0x7c, 0x5d, 0x9d, 0x58, 0xf2, 0xc9,
- 0xba, 0x07, 0xcf, 0x91, 0xfd, 0xc0, 0xa6, 0xbd, 0x12, 0xd1, 0x29, 0xff,
- 0x5b, 0xf6, 0x6a, 0x67, 0xbb, 0xfb, 0x09, 0x78, 0x6d, 0x19, 0x4e, 0xfc,
- 0x95, 0x77, 0x08, 0x3e, 0xf4, 0x7c, 0x3e, 0x91, 0xa7, 0xaf, 0xf3, 0xc9,
- 0x84, 0xee, 0x84, 0xdb, 0x74, 0xba, 0x24, 0x5a, 0x18, 0xf1, 0x0d, 0xcb,
- 0xff, 0xbf, 0x62, 0x1c, 0xf0, 0x58, 0xe9, 0xb3, 0xd5, 0x72, 0x34, 0xcb,
- 0x1b, 0x03, 0xde, 0xe2, 0x09, 0x7e, 0xc1, 0x13, 0xfe, 0x3e, 0x73, 0xd4,
- 0x91, 0xb1, 0x68, 0x27, 0xb2, 0x5f, 0xef, 0xb2, 0x28, 0x46, 0x69, 0xd9,
- 0x53, 0x77, 0x8e, 0x8d, 0xb3, 0xb7, 0xb3, 0xfb, 0xe4, 0xe9, 0xb3, 0xde,
- 0x50, 0xe5, 0x34, 0xb0, 0x88, 0x3a, 0x04, 0xa8, 0x90, 0x26, 0x1c, 0xa0,
- 0x42, 0x80, 0xe5, 0xda, 0xe5, 0x5c, 0x65, 0x2e, 0xc6, 0xdd, 0xbd, 0x92,
- 0xde, 0xfe, 0x95, 0xfb, 0x79, 0x85, 0x2e, 0xfe, 0x35, 0x9f, 0xbc, 0x72,
- 0x33, 0xfc, 0x57, 0x9e, 0xcb, 0x2b, 0x9d, 0x04, 0xed, 0xab, 0x65, 0x20,
- 0x56, 0x61, 0x6d, 0x9a, 0xc7, 0x36, 0xd7, 0x36, 0x71, 0x0d, 0x93, 0x46,
- 0x04, 0xc3, 0x60, 0x22, 0xde, 0x0f, 0x48, 0xab, 0x3e, 0x03, 0x6f, 0xeb,
- 0xe3, 0x80, 0x5a, 0x19, 0x70, 0x2b, 0x03, 0xcf, 0xb0, 0x81, 0x02, 0x3f,
- 0xe0, 0x8d, 0xe8, 0x6b, 0x1a, 0xe6, 0x14, 0x56, 0x16, 0x15, 0x05, 0x8a,
- 0x02, 0x41, 0x00, 0x07, 0x5f, 0x1f, 0xf5, 0xaa, 0xb0, 0x24, 0x43, 0xbf,
- 0xcb, 0x3e, 0xed, 0x42, 0x0c, 0xc7, 0xe9, 0x82, 0x4f, 0xff, 0x9a, 0x95,
- 0x53, 0x4c, 0x39, 0x8e, 0x84, 0xfb, 0x95, 0x8c, 0x69, 0xea, 0x4c, 0x6f,
- 0x9d, 0x29, 0x5b, 0xbc, 0x4b, 0x01, 0xa8, 0x0f, 0x9a, 0x01, 0x62, 0xb3,
- 0x04, 0x94, 0xc0, 0xe7, 0xb3, 0x70, 0xe9, 0x96, 0x83, 0x37, 0xce, 0xe9,
- 0xe9, 0xd2, 0xfb, 0xf4, 0x51, 0xfa, 0x4a, 0xf8, 0x89, 0xb1, 0x88, 0x75,
- 0x28, 0xc0, 0x9e, 0x4f, 0x84, 0xdc, 0x03, 0x69, 0xff, 0xa3, 0x4c, 0x93,
- 0x34, 0xc5, 0x6c, 0x22, 0x82, 0x21, 0xf3, 0xcf, 0x97, 0x5f, 0x1a, 0xca,
- 0xf3, 0x17, 0x09, 0xaa, 0xa2, 0xca, 0x5b, 0xea, 0x77, 0x54, 0x03, 0x94,
- 0xd8, 0x6c, 0xf1, 0x92, 0xaa, 0x07, 0xce, 0x05, 0x16, 0x44, 0xe3, 0xa8,
- 0x60, 0xa0, 0x50, 0xfc, 0x98, 0xe8, 0xe8, 0x5e, 0x8d, 0x0d, 0xdc, 0x42,
- 0xef, 0x4f, 0x38, 0x04, 0x2f, 0x79, 0x1b, 0xf0, 0xf5, 0x17, 0xbd, 0x35,
- 0x57, 0x1d, 0xc3, 0x49, 0xee, 0x2d, 0x07, 0xb2, 0x10, 0x68, 0x38, 0x1f,
- 0x12, 0xa8, 0x0d, 0xd2, 0x58, 0xa4, 0x31, 0x06, 0xe8, 0x40, 0xe9, 0x70,
- 0x92, 0xa6, 0xa6, 0x13, 0x05, 0xf4, 0x74, 0x06, 0x6a, 0x69, 0x3c, 0xe3,
- 0xdc, 0x06, 0x96, 0x1e, 0x7b, 0x1c, 0xad, 0x8a, 0xf7, 0x7a, 0x0e, 0x21,
- 0x19, 0x36, 0x53, 0x30, 0xbc, 0x32, 0x33, 0x9c, 0xc9, 0x35, 0x05, 0x34,
- 0xf7, 0xd2, 0x7c, 0x38, 0xb1, 0x2a, 0x10, 0x1e, 0x7c, 0x92, 0xa3, 0x60,
- 0xd9, 0x44, 0x47, 0xe4, 0x0d, 0x67, 0x10, 0x6b, 0xa7, 0xaf, 0x78, 0xb9,
- 0x77, 0x86, 0x57, 0xf9, 0xa5, 0x2c, 0x06, 0xb1, 0xc8, 0xab, 0x6c, 0x8b,
- 0xfe, 0xec, 0xd3, 0xe7, 0xbb, 0x2c, 0x95, 0xf1, 0x2f, 0x4f, 0x10, 0x8f,
- 0x15, 0xde, 0xfd, 0xc1, 0xd9, 0x70, 0xe7, 0x82, 0x7f, 0xc9, 0xdd, 0x9d,
- 0xaf, 0x5e, 0x1d, 0x1d, 0x25, 0xc8, 0x3c, 0xaa, 0x00, 0x17, 0x06, 0x95,
- 0xb0, 0xa2, 0xc5, 0x2a, 0xe9, 0x92, 0x73, 0x5a, 0x5c, 0xf0, 0x88, 0x06,
- 0x52, 0xa8, 0xa0, 0xce, 0x72, 0x77, 0xae, 0xe6, 0x19, 0xce, 0x01, 0xc2,
- 0xcd, 0x9a, 0xdd, 0x6d, 0xf6, 0xc3, 0x48, 0x5b, 0x62, 0xef, 0xb7, 0x9c,
- 0x55, 0xcf, 0x50, 0x1d, 0xbe, 0xc2, 0x15, 0x77, 0xbf, 0xc1, 0xcd, 0xb2,
- 0x50, 0xe0, 0xd3, 0x8c, 0xb1, 0xcd, 0x79, 0x7b, 0x07, 0x83, 0x42, 0xb2,
- 0x26, 0x6d, 0xb2, 0x07, 0x6d, 0x93, 0xbb, 0xc9, 0xa6, 0x15, 0x74, 0x75,
- 0x05, 0x6a, 0xb4, 0x5e, 0x0d, 0x4c, 0x1b, 0x1d, 0xf5, 0xc2, 0xb3, 0x5f,
- 0x8c, 0xeb, 0x8c, 0x74, 0x5d, 0x46, 0xd5, 0x9a, 0x09, 0x9f, 0x3b, 0x9c,
- 0x49, 0x41, 0x4d, 0x90, 0xf0, 0x74, 0x20, 0xb7, 0xa7, 0x8a, 0x44, 0x83,
- 0x37, 0xc3, 0xe4, 0x18, 0x11, 0xe3, 0x55, 0x2a, 0xe8, 0x2c, 0x76, 0xc3,
- 0x1a, 0x35, 0x10, 0xe9, 0x88, 0x0c, 0xbe, 0x26, 0x69, 0x2f, 0x0c, 0x89,
- 0x61, 0x24, 0x95, 0x1b, 0x4c, 0xba, 0x10, 0x97, 0xc8, 0x17, 0x2a, 0x8f,
- 0xf4, 0x61, 0x0b, 0x77, 0xcf, 0xc1, 0xe6, 0x2f, 0x76, 0x3f, 0x24, 0x7f,
- 0x39, 0x82, 0x0d, 0x1a, 0x09, 0xa1, 0xb0, 0x43, 0xb6, 0xee, 0x0e, 0x81,
- 0x84, 0x54, 0x66, 0x62, 0x74, 0x61, 0x64, 0x06, 0x06, 0x89, 0x81, 0x4f,
- 0x98, 0x5a, 0x03, 0x95, 0x01, 0xff, 0x9a, 0xc8, 0x68, 0x1d, 0x7a, 0xe3,
- 0x34, 0x73, 0xca, 0xb5, 0xec, 0x55, 0xe1, 0xc2, 0xcd, 0x61, 0x8b, 0x11,
- 0x71, 0xc3, 0xbb, 0xeb, 0x78, 0x90, 0x3c, 0xae, 0xf4, 0x96, 0x7e, 0x61,
- 0xe1, 0x6c, 0x54, 0xd2, 0xae, 0x67, 0xa5, 0x5c, 0x0d, 0x12, 0x23, 0x54,
- 0x08, 0x27, 0x11, 0x35, 0xe5, 0xed, 0x71, 0x62, 0x28, 0x37, 0x97, 0x5e,
- 0x54, 0xb4, 0xc8, 0x4c, 0x4c, 0x51, 0x2d, 0x23, 0x22, 0x0f, 0xe9, 0x53,
- 0x72, 0xcb, 0xc9, 0xda, 0x72, 0xa6, 0x7c, 0xc2, 0x8b, 0xd3, 0x38, 0xb2,
- 0xc1, 0x13, 0xf2, 0x2a, 0xd3, 0x11, 0x91, 0x49, 0x8f, 0x97, 0xa0, 0xd7,
- 0x4f, 0x7a, 0x3c, 0x54, 0xfe, 0xa2, 0x87, 0xf5, 0xc4, 0xc7, 0xc1, 0xf2,
- 0xf5, 0x86, 0x1d, 0xa7, 0x90, 0x9f, 0x79, 0xf5, 0x65, 0x63, 0x95, 0xf0,
- 0xb9, 0x35, 0xf5, 0x4a, 0x92, 0x4c, 0x22, 0x99, 0xdb, 0xde, 0x0d, 0xda,
- 0x7f, 0x75, 0x50, 0x30, 0x42, 0x21, 0x35, 0x13, 0x84, 0xb9, 0x8e, 0xdd,
- 0x67, 0x39, 0x12, 0x66, 0xa3, 0x86, 0x1e, 0x3f, 0xc5, 0x17, 0xc6, 0x8a,
- 0x5c, 0x08, 0xa8, 0x70, 0x37, 0x21, 0x01, 0xe3, 0xbc, 0xb4, 0x9b, 0xb9,
- 0xe8, 0x7d, 0x77, 0x05, 0xac, 0x0c, 0xe0, 0x39, 0x3b, 0x43, 0x64, 0x50,
- 0xfa, 0xba, 0xbe, 0xae, 0x01, 0xa7, 0xbc, 0xaf, 0x63, 0x41, 0xd7, 0x5d,
- 0x54, 0xae, 0xa9, 0xf4, 0xb6, 0xca, 0x5d, 0xbc, 0x6b, 0x91, 0x8f, 0x01,
- 0xa9, 0xfd, 0xea, 0xcb, 0x49, 0x71, 0xc5, 0x9c, 0xab, 0x4f, 0x07, 0x8d,
- 0x7f, 0x22, 0x20, 0x79, 0x57, 0x3b, 0x95, 0x01, 0xe3, 0xac, 0x88, 0x14,
- 0x6f, 0x7f, 0xaf, 0x08, 0x51, 0x7d, 0xc3, 0xa6, 0xd0, 0xb1, 0xb6, 0xed,
- 0x9a, 0x96, 0xfd, 0xa0, 0xf6, 0xdd, 0x17, 0x61, 0x5f, 0xb6, 0x38, 0xa9,
- 0xb6, 0x0c, 0xd9, 0x88, 0x38, 0x45, 0x2d, 0x57, 0x39, 0x3a, 0x2e, 0x10,
- 0xe8, 0x56, 0x73, 0x22, 0x74, 0x26, 0xa5, 0x21, 0xe9, 0x10, 0x48, 0x5a,
- 0x5f, 0xef, 0xcb, 0x9e, 0xe4, 0x08, 0xf4, 0x5e, 0xf6, 0xc0, 0xc1, 0x98,
- 0x2f, 0x59, 0x0d, 0x3c, 0xbd, 0x9c, 0x7a, 0x72, 0x2b, 0x0e, 0x44, 0x76,
+ 0x07, 0xe8, 0xbb, 0x32, 0x57, 0x60, 0x05, 0x18, 0x5e, 0xf3, 0xde, 0x59,
+ 0x8d, 0x13, 0x17, 0x71, 0x54, 0x93, 0x5c, 0xb0, 0x20, 0x63, 0xf7, 0x2c,
+ 0x56, 0x32, 0x78, 0x21, 0xf6, 0x01, 0x4a, 0x58, 0xff, 0x4d, 0x2b, 0x98,
+ 0xc2, 0x24, 0xab, 0x0d, 0xea, 0x55, 0xd1, 0x76, 0x3e, 0xd6, 0x26, 0x15,
+ 0xbe, 0x58, 0x0f, 0xe9, 0x09, 0x39, 0xbd, 0x75, 0xed, 0x51, 0x74, 0x9b,
+ 0x23, 0x50, 0x2e, 0x4e, 0xfc, 0xe4, 0xde, 0x8a, 0x40, 0x73, 0xdd, 0x07,
+ 0x81, 0xc9, 0xdc, 0x90, 0xd4, 0x26, 0xe3, 0x94, 0x70, 0x88, 0x19, 0xf9,
+ 0xae, 0x50, 0xfc, 0x38, 0xbf, 0x61, 0x5d, 0x1e, 0xa9, 0x9d, 0x5a, 0x08,
+ 0xde, 0x60, 0xe6, 0x11, 0x7a, 0xa6, 0x35, 0x87, 0xc0, 0xf4, 0xb2, 0x0d,
+ 0xab, 0x0e, 0x68, 0x2f, 0x59, 0x00, 0x23, 0xb8, 0xbf, 0xe0, 0xdf, 0x83,
+ 0xc9, 0xb3, 0x52, 0x9d, 0xc4, 0x25, 0x14, 0x2a, 0x64, 0xe2, 0xc8, 0x9d,
+ 0xe1, 0xcc, 0xb0, 0xbe, 0xc2, 0x43, 0x80, 0x97, 0x05, 0x16, 0x2d, 0xb8,
+ 0xa1, 0x31, 0x83, 0x69, 0xb8, 0x22, 0xd7, 0x88, 0xba, 0x77, 0xad, 0x98,
+ 0x83, 0x83, 0x9a, 0x41, 0xe8, 0xb4, 0xc6, 0x92, 0x9e, 0xe5, 0xa5, 0x9c,
+ 0x37, 0x48, 0xf8, 0x3d, 0x66, 0x3d, 0x3d, 0x90, 0x41, 0x6f, 0x79, 0x4d,
+ 0x7d, 0xf4, 0xa2, 0x2b, 0xd6, 0x91, 0x26, 0x34, 0xf4, 0x16, 0x03, 0x9d,
+ 0xc9, 0xe3, 0xaf, 0xce, 0xe3, 0xcb, 0x38, 0x99, 0xff, 0x7e, 0x6f, 0x67,
+ 0x1c, 0x5f, 0xad, 0xe6, 0xf1, 0xbf, 0xe2, 0xc5, 0x57, 0x4f, 0x9e, 0xec,
+ 0xed, 0x7c, 0xf6, 0xf9, 0x4e, 0xaf, 0x19, 0x7d, 0xe0, 0x03, 0xb2, 0x10,
+ 0x61, 0xc3, 0x37, 0x19, 0xf8, 0x2e, 0xfa, 0x19, 0x4d, 0xaf, 0x52, 0x28,
+ 0x75, 0x2c, 0x28, 0xe9, 0x1a, 0xc4, 0xa2, 0x4d, 0x82, 0x4d, 0x0a, 0xec,
+ 0x20, 0xa3, 0xf2, 0x12, 0x5d, 0xff, 0x6e, 0x77, 0x5f, 0x58, 0x19, 0x40,
+ 0xa2, 0x71, 0x4f, 0xf0, 0x5a, 0xbc, 0x4c, 0x33, 0xba, 0x81, 0xbe, 0x88,
+ 0xaa, 0xf8, 0xca, 0xd1, 0xaa, 0x66, 0xd3, 0x4b, 0x0e, 0x85, 0xf3, 0x6f,
+ 0x5e, 0x32, 0x91, 0xa7, 0x99, 0x14, 0x67, 0xe1, 0xd2, 0x23, 0x10, 0xb2,
+ 0x96, 0x49, 0x01, 0x04, 0xc1, 0xab, 0x22, 0x5e, 0x58, 0xa6, 0x0a, 0xbf,
+ 0xcf, 0x51, 0x6b, 0xa3, 0xe5, 0x1c, 0x59, 0x14, 0x16, 0x7a, 0x26, 0x12,
+ 0xaf, 0x10, 0xdc, 0x7c, 0x59, 0x7a, 0x10, 0x3e, 0xb9, 0x6e, 0xc2, 0xa2,
+ 0x26, 0xb4, 0x58, 0xb0, 0xa9, 0xf4, 0x30, 0x2b, 0x61, 0x19, 0xe0, 0x66,
+ 0x33, 0x9b, 0xe9, 0x08, 0xbf, 0x03, 0xfd, 0x21, 0x16, 0xc4, 0xc5, 0xde,
+ 0x52, 0xf2, 0xaa, 0x05, 0xa3, 0xa3, 0x67, 0x69, 0x0d, 0x69, 0x6d, 0x5e,
+ 0xb1, 0x8f, 0xd8, 0x8c, 0x5e, 0x9a, 0x95, 0x68, 0xf7, 0x8b, 0x57, 0x20,
+ 0x88, 0xdd, 0x2f, 0xfe, 0xd5, 0x7d, 0xb6, 0xa7, 0x9f, 0xed, 0x7d, 0xf1,
+ 0xaf, 0xa3, 0x11, 0xc6, 0xc7, 0x14, 0xd2, 0xb7, 0xaf, 0xfb, 0x8a, 0xb6,
+ 0x12, 0xeb, 0x11, 0x96, 0xbf, 0x1c, 0xf8, 0xb1, 0xec, 0x75, 0xcf, 0x7a,
+ 0x0e, 0x57, 0x79, 0xa0, 0x1e, 0x55, 0xc7, 0xb7, 0x52, 0x2b, 0x54, 0x06,
+ 0x50, 0xeb, 0xb2, 0x6b, 0xd1, 0x9d, 0x1f, 0x04, 0xed, 0x68, 0xec, 0x25,
+ 0x5e, 0xfe, 0x03, 0x53, 0xea, 0x1f, 0x36, 0x22, 0xf5, 0x6e, 0xf2, 0x76,
+ 0xdc, 0xc3, 0xe1, 0x61, 0x64, 0x4b, 0x8f, 0xc6, 0x56, 0x44, 0x85, 0x5b,
+ 0xe6, 0xdc, 0x0f, 0xbe, 0x03, 0x25, 0x64, 0x1c, 0x83, 0xfd, 0xa3, 0x82,
+ 0x5f, 0xba, 0xa4, 0x19, 0x7b, 0x46, 0xf2, 0x64, 0x48, 0xc6, 0x40, 0xed,
+ 0x0f, 0xa9, 0xe8, 0xf1, 0xc3, 0x0f, 0x2a, 0x50, 0xd1, 0x2f, 0x3a, 0xf2,
+ 0x6b, 0xe2, 0x45, 0x33, 0x62, 0x6f, 0x0b, 0x54, 0x3c, 0x67, 0x9c, 0x41,
+ 0x9a, 0x87, 0x5e, 0xf9, 0x97, 0x3a, 0x53, 0x69, 0x84, 0xb6, 0xf6, 0x60,
+ 0x7c, 0x78, 0x7c, 0x8c, 0x30, 0x53, 0x2c, 0xea, 0x91, 0xb0, 0x31, 0xd0,
+ 0xe6, 0x26, 0x42, 0x3c, 0x7c, 0x54, 0x62, 0x48, 0xfa, 0xbc, 0x77, 0xd8,
+ 0x76, 0x50, 0x3f, 0x35, 0x66, 0x0a, 0xb8, 0x6e, 0x25, 0x68, 0x56, 0xa4,
+ 0x9c, 0x57, 0x3d, 0x79, 0xf0, 0x2a, 0xed, 0xa9, 0x13, 0x4b, 0x3e, 0xe9,
+ 0x79, 0xf0, 0x1c, 0xd9, 0x0f, 0x6c, 0xda, 0x2b, 0x11, 0x9d, 0xd2, 0xbf,
+ 0x25, 0xaf, 0x76, 0x77, 0xba, 0x9f, 0x80, 0xd7, 0x96, 0xe1, 0xc4, 0x5f,
+ 0x79, 0x87, 0xe0, 0x43, 0xcf, 0xa7, 0x33, 0x79, 0xfa, 0x3a, 0x9d, 0xcd,
+ 0xe8, 0x4e, 0xb8, 0x8d, 0xe7, 0x2b, 0xa2, 0x85, 0x09, 0xdf, 0xb0, 0xfc,
+ 0xff, 0x6b, 0xc6, 0x01, 0x8f, 0x95, 0x3e, 0x5b, 0xae, 0x26, 0x8b, 0xb4,
+ 0x36, 0xe0, 0x6d, 0x9e, 0xe0, 0x17, 0x3c, 0xe1, 0xef, 0x13, 0x47, 0x1d,
+ 0x09, 0x8b, 0x76, 0x22, 0xfb, 0xf5, 0x2f, 0xf3, 0x7c, 0x12, 0x17, 0x7d,
+ 0x75, 0xe7, 0xd8, 0x38, 0xfb, 0xbb, 0x7b, 0x4f, 0x9e, 0x3e, 0xeb, 0x8f,
+ 0x54, 0x4e, 0x03, 0x8b, 0xa8, 0x42, 0x80, 0x0a, 0x69, 0xc2, 0x01, 0x2a,
+ 0x04, 0x58, 0xae, 0x5d, 0xce, 0x55, 0xe6, 0x62, 0xdc, 0xdd, 0x2b, 0xe9,
+ 0xed, 0x5f, 0xb9, 0x9f, 0x57, 0xe8, 0xe2, 0x5f, 0xd3, 0xd9, 0x2b, 0x37,
+ 0xc3, 0x7f, 0xe5, 0xb9, 0xbc, 0xd2, 0x49, 0xd0, 0xbe, 0x5a, 0x06, 0x62,
+ 0x19, 0x56, 0x5b, 0x79, 0x6c, 0x73, 0x6d, 0x13, 0x37, 0x30, 0x69, 0x44,
+ 0x30, 0x0c, 0x67, 0xe2, 0xfd, 0x80, 0xb4, 0xea, 0x33, 0xf0, 0xb6, 0x3f,
+ 0x0e, 0xa9, 0x95, 0x21, 0xb7, 0x32, 0xf4, 0x0c, 0x1b, 0x28, 0xf0, 0x43,
+ 0xde, 0x88, 0x81, 0xa6, 0x61, 0xce, 0x61, 0x65, 0x51, 0x51, 0x20, 0xcf,
+ 0x11, 0x04, 0x70, 0xf8, 0xf5, 0x71, 0x5f, 0x03, 0x6f, 0x44, 0x4d, 0x1c,
+ 0x74, 0xd9, 0xa7, 0x5d, 0x88, 0xe1, 0x34, 0x5e, 0xf2, 0xe9, 0xdf, 0x88,
+ 0xb4, 0x38, 0x60, 0xcc, 0x71, 0x24, 0xdc, 0xaf, 0x64, 0x4c, 0x53, 0x67,
+ 0x7a, 0xeb, 0xcc, 0xd9, 0xe2, 0x5d, 0x08, 0x40, 0x7d, 0xd0, 0x0c, 0x10,
+ 0x9b, 0x25, 0xa0, 0x04, 0x3e, 0x9f, 0xa5, 0x4b, 0xb7, 0x1c, 0xbe, 0x71,
+ 0x4e, 0x4f, 0x97, 0xde, 0xa7, 0x8f, 0xd2, 0x57, 0xc2, 0x4f, 0x8c, 0x45,
+ 0xf4, 0xa0, 0x00, 0x7b, 0x3e, 0x11, 0x72, 0x0f, 0xa4, 0xfd, 0x4f, 0x12,
+ 0x4d, 0xd2, 0x14, 0xb3, 0x89, 0x08, 0x86, 0xcc, 0x3f, 0x5f, 0x7e, 0x69,
+ 0x28, 0xcf, 0x5f, 0x44, 0x28, 0xf0, 0x29, 0x6f, 0xa9, 0xdf, 0x51, 0x0d,
+ 0x50, 0x62, 0xb3, 0xc5, 0x4b, 0xaa, 0x1e, 0x38, 0x17, 0x58, 0x10, 0x8d,
+ 0xa3, 0x82, 0x81, 0x42, 0xf1, 0x63, 0xa2, 0x93, 0x7b, 0x35, 0x36, 0x70,
+ 0x0b, 0xfd, 0x3f, 0xe1, 0x10, 0xbc, 0xe4, 0x6d, 0xc0, 0xd7, 0x5f, 0xf4,
+ 0xc5, 0x78, 0xe8, 0xde, 0xe5, 0x61, 0x34, 0x1c, 0xc8, 0x42, 0xa0, 0xe1,
+ 0x7c, 0x48, 0xa0, 0x36, 0x48, 0x63, 0x91, 0xc6, 0x18, 0xa0, 0x03, 0x55,
+ 0xb0, 0x49, 0x9a, 0x9a, 0xcf, 0x14, 0xd0, 0xd3, 0x19, 0xa8, 0xa5, 0xf1,
+ 0x84, 0x73, 0x1b, 0x58, 0x7a, 0xec, 0x73, 0xb4, 0x2a, 0xde, 0xeb, 0x3b,
+ 0x84, 0x64, 0xd8, 0x4c, 0xc1, 0xf0, 0x8a, 0xc4, 0x70, 0x26, 0x37, 0x14,
+ 0xd0, 0xdc, 0x4b, 0xf3, 0xe1, 0xc4, 0xca, 0x40, 0x78, 0xf0, 0x49, 0x8e,
+ 0x82, 0x65, 0xd3, 0x3a, 0x22, 0x6f, 0x38, 0x83, 0x58, 0x3b, 0x7d, 0xc5,
+ 0xcb, 0xbd, 0x3b, 0xba, 0x4a, 0x2f, 0x65, 0x31, 0x88, 0x45, 0x5e, 0x25,
+ 0xdb, 0xf4, 0xe7, 0x80, 0x3e, 0xdf, 0x63, 0xa9, 0x8c, 0x7f, 0x79, 0x82,
+ 0x78, 0xac, 0xf0, 0xee, 0x0f, 0xce, 0x86, 0x3b, 0x17, 0xfc, 0x4b, 0xea,
+ 0xee, 0x7c, 0xf5, 0xea, 0xe8, 0x28, 0x41, 0xe6, 0xad, 0xaa, 0x66, 0x61,
+ 0x50, 0x09, 0x2b, 0x5a, 0xac, 0x92, 0xae, 0x38, 0xa7, 0xc5, 0x05, 0x8f,
+ 0x68, 0x20, 0x85, 0x0a, 0xea, 0x2c, 0x77, 0xa7, 0x6a, 0x9e, 0xe1, 0x1c,
+ 0x20, 0xdc, 0xac, 0xc9, 0xdd, 0xd6, 0x20, 0x8c, 0xb4, 0x25, 0xf6, 0x7e,
+ 0xcb, 0x59, 0xf5, 0x0c, 0xd5, 0xe1, 0x4b, 0x36, 0x71, 0xf7, 0x9b, 0xdc,
+ 0xec, 0x46, 0x14, 0xa6, 0x19, 0x63, 0x9b, 0xd3, 0xe6, 0x0e, 0x06, 0x35,
+ 0x51, 0x4d, 0xda, 0x64, 0x0f, 0xda, 0x16, 0x77, 0x93, 0xcc, 0x4b, 0xe8,
+ 0xea, 0x0a, 0xd4, 0x68, 0xbd, 0x1a, 0x98, 0x36, 0x3a, 0xea, 0x87, 0x67,
+ 0x3f, 0x9f, 0x56, 0x09, 0xe9, 0xba, 0x8c, 0xaa, 0xb5, 0x10, 0x3e, 0x77,
+ 0xb4, 0x90, 0xe2, 0x90, 0x20, 0xe1, 0xf9, 0x50, 0x6e, 0x4f, 0x15, 0x89,
+ 0x86, 0x6f, 0x46, 0xd1, 0x09, 0x22, 0xc6, 0xcb, 0x58, 0xd0, 0x59, 0xec,
+ 0x86, 0x35, 0x6a, 0x20, 0xd2, 0x11, 0x19, 0x7c, 0x43, 0xd2, 0x5e, 0x18,
+ 0x12, 0xc3, 0x48, 0x2a, 0x35, 0x98, 0x74, 0x21, 0x2e, 0x91, 0x2f, 0x54,
+ 0x1e, 0x19, 0xc0, 0x16, 0xee, 0x9e, 0x83, 0xcd, 0x5f, 0xec, 0x7e, 0x48,
+ 0xfe, 0x72, 0x04, 0x1b, 0x34, 0x12, 0x42, 0x61, 0x87, 0x6c, 0xdd, 0x1d,
+ 0x02, 0x09, 0xa9, 0x4c, 0xc4, 0xe8, 0xc2, 0xc8, 0x0c, 0x0c, 0x12, 0x03,
+ 0x9f, 0x30, 0xb5, 0x06, 0x2a, 0x03, 0xfe, 0x35, 0x91, 0x51, 0x0f, 0x7a,
+ 0xe3, 0x3c, 0x71, 0xca, 0xb5, 0x96, 0xbc, 0x73, 0xe1, 0xe6, 0xb0, 0xc5,
+ 0x88, 0xb8, 0xe1, 0xdd, 0x75, 0x3c, 0x48, 0x1e, 0x57, 0x7c, 0x4b, 0xbf,
+ 0xb0, 0x70, 0x36, 0x29, 0x68, 0xd7, 0x93, 0x42, 0xae, 0x06, 0x89, 0x11,
+ 0xca, 0x85, 0x93, 0x88, 0x9a, 0xf2, 0xf6, 0x24, 0x32, 0x94, 0x9b, 0x4b,
+ 0x2f, 0x2a, 0x5a, 0x64, 0x26, 0xa6, 0xa8, 0x96, 0x11, 0x91, 0x87, 0xf4,
+ 0x29, 0xb9, 0xe5, 0x64, 0x6d, 0x39, 0x53, 0x3e, 0xe2, 0xc5, 0xa9, 0x1d,
+ 0xd9, 0xe0, 0x09, 0x79, 0x95, 0xe9, 0x88, 0xc8, 0xa4, 0xcf, 0x4b, 0xd0,
+ 0x1f, 0x44, 0x7d, 0x1e, 0x2a, 0x7f, 0xd1, 0xc7, 0x7a, 0xe2, 0xe3, 0x60,
+ 0xf9, 0xfa, 0xa3, 0x8e, 0x53, 0xc8, 0xcf, 0xbc, 0xfa, 0xb2, 0xb6, 0x4a,
+ 0xf8, 0xdc, 0x9a, 0x7a, 0x25, 0x49, 0x26, 0x2d, 0x99, 0xdb, 0xde, 0x0d,
+ 0xda, 0x7f, 0x75, 0x98, 0x33, 0x42, 0x21, 0x35, 0x13, 0x84, 0xb9, 0x4e,
+ 0xdd, 0x67, 0x29, 0x12, 0x66, 0x5b, 0x0d, 0x3d, 0x7e, 0x8a, 0x2f, 0x8c,
+ 0x15, 0xb9, 0x10, 0x50, 0xe1, 0x6e, 0x42, 0x02, 0xc6, 0x79, 0x69, 0x37,
+ 0x53, 0xd1, 0xfb, 0xee, 0x72, 0x58, 0x19, 0xc0, 0x73, 0x76, 0x47, 0xc8,
+ 0xa0, 0xf4, 0x55, 0x6a, 0x5d, 0x03, 0x4e, 0x79, 0xef, 0x61, 0x41, 0x7b,
+ 0x2e, 0x2a, 0xd7, 0x54, 0x7a, 0x5b, 0xe5, 0x2e, 0xde, 0xb5, 0x4c, 0xa7,
+ 0x80, 0xd4, 0x7e, 0xf5, 0xe5, 0x2c, 0xbf, 0x62, 0xce, 0x35, 0xa0, 0x83,
+ 0xc6, 0x3f, 0x11, 0x90, 0xbc, 0xa7, 0x9d, 0xca, 0x80, 0x71, 0x56, 0x44,
+ 0x8a, 0xb7, 0xbf, 0xd7, 0x84, 0xa8, 0xbe, 0x61, 0x53, 0xe8, 0x54, 0xdb,
+ 0x76, 0x4d, 0xcb, 0x7e, 0x50, 0xfb, 0xee, 0x8b, 0xb0, 0x2f, 0x5b, 0x9c,
+ 0x58, 0x5b, 0x86, 0x6c, 0x44, 0x9c, 0xa2, 0x92, 0xab, 0x1c, 0x1d, 0xe7,
+ 0x08, 0x74, 0xab, 0x38, 0x11, 0x3a, 0xa9, 0xe4, 0xde, 0x9a, 0x6b, 0x5a,
+ 0x5f, 0xff, 0xcb, 0xbe, 0xe4, 0x08, 0xf4, 0x5f, 0xf6, 0xc1, 0xc1, 0x98,
+ 0x2f, 0x59, 0x55, 0x37, 0xbd, 0x9c, 0xfa, 0x72, 0x2b, 0x0e, 0x45, 0x76,
0x50, 0xc4, 0x3f, 0x7f, 0x40, 0x70, 0x2d, 0x7b, 0x35, 0x32, 0x0c, 0x9e,
- 0x84, 0x99, 0x80, 0x29, 0x57, 0x46, 0xc5, 0xf0, 0xa5, 0xa3, 0x5a, 0x02,
- 0x65, 0xf4, 0xd2, 0x85, 0x58, 0x06, 0xb4, 0x94, 0x8a, 0xe3, 0x17, 0xc4,
- 0xcc, 0xb9, 0x9c, 0x2f, 0x38, 0x37, 0x7e, 0x5c, 0x4b, 0x3d, 0x4b, 0x9c,
- 0xa5, 0x61, 0xf2, 0x7e, 0x2e, 0xa5, 0x04, 0x32, 0x56, 0x96, 0xf3, 0x72,
- 0xbc, 0x9c, 0xb1, 0xa9, 0x62, 0xcc, 0x06, 0x32, 0x5c, 0x3c, 0x22, 0x1e,
- 0x34, 0xdc, 0xf3, 0xe1, 0x80, 0xc5, 0x38, 0x22, 0x06, 0x73, 0xed, 0x17,
- 0xa1, 0x28, 0x1c, 0x80, 0xa5, 0x06, 0x71, 0x48, 0x05, 0x0e, 0x35, 0x45,
- 0x19, 0x10, 0x7b, 0x06, 0x0f, 0xdf, 0x1c, 0x9e, 0x9d, 0x1d, 0x9e, 0xf1,
- 0x7a, 0xef, 0xcf, 0x1b, 0x65, 0xe3, 0x1c, 0x74, 0xaa, 0x77, 0x35, 0x5a,
- 0xd8, 0x6f, 0x0c, 0xa1, 0x2f, 0xac, 0x30, 0x9d, 0x4c, 0x18, 0x64, 0x1c,
- 0x1a, 0x84, 0xe0, 0x04, 0x49, 0xb1, 0xee, 0xd0, 0xbc, 0x88, 0xb0, 0x6f,
- 0xe7, 0x36, 0x08, 0x8b, 0x36, 0x06, 0xb2, 0x85, 0x6f, 0xa1, 0xd4, 0xaa,
- 0xa4, 0x4b, 0x4b, 0xc9, 0xbf, 0xce, 0x1a, 0x62, 0xea, 0x50, 0x23, 0x75,
- 0x33, 0x75, 0xa6, 0x4f, 0x9d, 0x7d, 0x02, 0x53, 0xbe, 0xe4, 0x33, 0xca,
- 0xba, 0x13, 0x16, 0xa3, 0xaa, 0x97, 0x8b, 0x7c, 0xe2, 0xac, 0xbd, 0xf4,
- 0x39, 0x89, 0x7f, 0x89, 0x9c, 0xf2, 0xca, 0x62, 0x5d, 0xe0, 0xd5, 0x34,
- 0x63, 0x44, 0x68, 0x6d, 0x6b, 0xe1, 0xf7, 0x26, 0xc8, 0x96, 0x93, 0xa0,
- 0x31, 0xab, 0x99, 0xd4, 0xcc, 0x2d, 0x57, 0xda, 0xcf, 0x60, 0x65, 0x64,
- 0x6e, 0x61, 0xe1, 0x37, 0x21, 0x67, 0x60, 0x5b, 0xd6, 0xcc, 0xc7, 0xbb,
- 0x73, 0x08, 0xdb, 0x9e, 0xc0, 0xa0, 0x20, 0xa5, 0xb4, 0xdc, 0x4b, 0x7e,
- 0xac, 0xf2, 0xf1, 0xcf, 0xfe, 0xf2, 0x40, 0xfa, 0x8f, 0x0f, 0x49, 0x17,
- 0x0b, 0x3d, 0x4d, 0x5e, 0x17, 0x4a, 0x95, 0x61, 0x49, 0xe5, 0x7e, 0x7f,
- 0x7e, 0x78, 0x96, 0xec, 0x7f, 0xcd, 0x28, 0xc0, 0xff, 0xcd, 0x0d, 0xe6,
- 0xe7, 0xf4, 0x76, 0x58, 0x53, 0x1c, 0x3e, 0xc5, 0x36, 0xc9, 0xcc, 0x14,
- 0x2e, 0xb8, 0x5c, 0x8d, 0x9d, 0xcd, 0xad, 0xfa, 0xb6, 0xbf, 0xee, 0x9b,
- 0x7b, 0xb8, 0x96, 0x3c, 0xba, 0x8b, 0x9f, 0xb2, 0x87, 0x7c, 0xc8, 0xc2,
- 0x5d, 0x14, 0x54, 0x24, 0x71, 0x49, 0xd8, 0xde, 0xe8, 0xe8, 0xab, 0x48,
- 0xed, 0x94, 0x5d, 0xda, 0x4f, 0x7a, 0x6f, 0x8b, 0xbf, 0x91, 0x30, 0x90,
- 0x6e, 0x3d, 0x19, 0x6e, 0x27, 0x1b, 0xdf, 0xe7, 0xf3, 0x17, 0xcf, 0xfe,
- 0x94, 0x1c, 0x6d, 0xf6, 0x1a, 0xc1, 0xfc, 0x52, 0x81, 0x75, 0x94, 0xce,
- 0x6f, 0xdc, 0x96, 0x9d, 0xe0, 0x64, 0x4b, 0x50, 0x9d, 0x55, 0x65, 0x91,
- 0xaa, 0xd1, 0x2b, 0x5b, 0x44, 0xe2, 0xa7, 0xe6, 0x05, 0x24, 0xdf, 0x39,
- 0xc8, 0x6b, 0xd6, 0xf2, 0xe9, 0xa9, 0x09, 0x2f, 0xdd, 0x8b, 0x67, 0x51,
- 0x13, 0x4f, 0x5d, 0x1b, 0xef, 0xa5, 0x8d, 0x5f, 0xd8, 0xc4, 0xee, 0x70,
- 0x7b, 0x37, 0xd9, 0x38, 0x39, 0xdf, 0xda, 0x75, 0x2d, 0xc4, 0x4d, 0xec,
- 0xa2, 0x09, 0x7e, 0xa8, 0xf9, 0xf2, 0x53, 0xee, 0xff, 0xc7, 0x6c, 0xfe,
- 0x73, 0xb2, 0xf1, 0xc3, 0xce, 0x0e, 0x35, 0xf0, 0xa7, 0x64, 0xff, 0xe8,
- 0x87, 0xe4, 0xe9, 0x90, 0x1a, 0x7b, 0x97, 0xde, 0x6a, 0x73, 0x0a, 0x66,
- 0x7b, 0x8e, 0x46, 0xe8, 0xfb, 0xa8, 0x8d, 0x67, 0xad, 0x36, 0x8e, 0x49,
- 0x2f, 0xfc, 0x48, 0xd7, 0xca, 0xf6, 0xf0, 0xc9, 0x6e, 0x92, 0x3f, 0xfb,
- 0xfc, 0xb9, 0x35, 0xa4, 0x6d, 0xe0, 0xfb, 0xa6, 0xb5, 0x52, 0xe0, 0x52,
- 0x48, 0xd4, 0x39, 0xfc, 0x48, 0x0c, 0x0d, 0x2c, 0x02, 0x95, 0x32, 0xae,
- 0xd3, 0xd2, 0x6a, 0x18, 0x73, 0xb9, 0x03, 0xda, 0x29, 0x85, 0x91, 0xce,
- 0x60, 0xb6, 0xa4, 0x8b, 0x73, 0x2f, 0x1a, 0x0e, 0xeb, 0xa6, 0xf6, 0xe8,
- 0x9f, 0x92, 0xb7, 0xe7, 0x47, 0x87, 0x34, 0xa3, 0x6d, 0x1a, 0x9a, 0x5f,
- 0x43, 0x19, 0x10, 0xbe, 0xc2, 0xe2, 0xbe, 0x00, 0x2a, 0xa9, 0xb6, 0x11,
- 0x56, 0xdb, 0x05, 0xd1, 0xd1, 0xc5, 0x5d, 0xa1, 0x5f, 0x0e, 0x49, 0x19,
- 0xec, 0x5f, 0xb1, 0x0a, 0x21, 0x57, 0x2d, 0xba, 0xfe, 0xb6, 0x98, 0xd3,
- 0x31, 0x29, 0x8b, 0x92, 0x23, 0xa7, 0x7a, 0x0d, 0x69, 0xe1, 0xdb, 0xd7,
- 0x87, 0x92, 0x52, 0xff, 0x36, 0x9d, 0x13, 0x8f, 0x64, 0x74, 0xac, 0xea,
- 0x86, 0xfd, 0xff, 0xe2, 0xce, 0x91, 0xf7, 0x8f, 0xef, 0xe7, 0x1f, 0x69,
- 0x1f, 0x3f, 0x1b, 0xee, 0x70, 0xc8, 0x36, 0x6b, 0xbd, 0x6f, 0xde, 0xd2,
- 0xdf, 0x3b, 0x4f, 0x7b, 0x09, 0x7f, 0xd5, 0xd4, 0xe0, 0xed, 0xbc, 0xae,
- 0x1d, 0x9c, 0x9c, 0x7c, 0x7b, 0x24, 0x01, 0x20, 0x07, 0x6a, 0x56, 0x65,
- 0xe1, 0xca, 0x69, 0xc5, 0xc2, 0x5d, 0x49, 0x7b, 0xf3, 0xd9, 0x4a, 0x70,
- 0xc6, 0xdd, 0x64, 0xd9, 0x82, 0xa3, 0x11, 0xea, 0x16, 0x47, 0xa8, 0x95,
- 0x47, 0xbb, 0xd8, 0x26, 0x16, 0x7f, 0x1a, 0xc8, 0x5e, 0x15, 0x43, 0x25,
- 0x9b, 0x09, 0x77, 0x74, 0xef, 0x60, 0x3b, 0x52, 0x5f, 0x0e, 0x51, 0xeb,
- 0xa6, 0x68, 0x53, 0x66, 0x82, 0x96, 0xa2, 0x23, 0xf4, 0xa2, 0xea, 0xbe,
- 0xbd, 0x73, 0x92, 0xee, 0x65, 0xd0, 0x7b, 0x6a, 0xb5, 0xed, 0x05, 0xd8,
- 0xd2, 0x90, 0x68, 0x17, 0x5a, 0xea, 0x07, 0xa6, 0x63, 0x8b, 0xa8, 0x37,
- 0xde, 0x5c, 0xc1, 0x96, 0x8d, 0xf0, 0xbc, 0x77, 0xfb, 0x6f, 0x0f, 0x5f,
- 0x7d, 0xb7, 0x7f, 0xfc, 0xfe, 0x90, 0x5e, 0xc9, 0x01, 0xe3, 0xee, 0x42,
- 0xf8, 0x30, 0xc6, 0x59, 0x8e, 0x4a, 0xbf, 0x15, 0x89, 0x07, 0xbd, 0x35,
- 0x09, 0x2f, 0x4f, 0xd6, 0xf9, 0xad, 0x1d, 0x79, 0x8d, 0xe8, 0x82, 0xff,
- 0xda, 0x95, 0xbf, 0x76, 0xff, 0xb4, 0xbe, 0xd9, 0x98, 0x74, 0xa4, 0x25,
- 0x33, 0xbd, 0xdc, 0x49, 0xbd, 0x27, 0x0e, 0x0f, 0x92, 0xdc, 0x0d, 0x59,
- 0x95, 0x75, 0xf3, 0xd1, 0x84, 0x45, 0x2f, 0x37, 0x46, 0xf7, 0xa1, 0x0e,
- 0xbe, 0xce, 0x2f, 0xbd, 0x82, 0x80, 0xb1, 0x0e, 0xa0, 0xfb, 0xcc, 0x56,
- 0x4b, 0xda, 0xb0, 0x26, 0xb2, 0x8f, 0x0b, 0x8e, 0x88, 0xdc, 0x58, 0x97,
- 0x5f, 0x5e, 0xbd, 0xde, 0xbf, 0x38, 0xe4, 0x17, 0xac, 0x7b, 0xab, 0x6d,
- 0x60, 0x69, 0x14, 0x3c, 0x9e, 0x0d, 0x75, 0x4d, 0xbf, 0xe2, 0x09, 0xad,
- 0x6f, 0x8a, 0x2f, 0x03, 0x4e, 0xf5, 0xd6, 0xb8, 0x98, 0xa7, 0x49, 0xe0,
- 0xb6, 0x4f, 0x53, 0xaf, 0x2c, 0x62, 0x65, 0x63, 0x5d, 0xbe, 0x5b, 0x77,
- 0x16, 0x5c, 0xba, 0xcb, 0x7b, 0xb7, 0x99, 0xb9, 0x2b, 0x27, 0x48, 0xb2,
- 0x88, 0x32, 0x6b, 0x25, 0x24, 0xcd, 0xef, 0x8f, 0x3a, 0x2b, 0xc4, 0xe2,
- 0x14, 0xa0, 0x6d, 0xbb, 0x8d, 0xd7, 0x3c, 0x78, 0xb6, 0x31, 0x15, 0xc5,
- 0xce, 0xee, 0x93, 0x3f, 0x61, 0x3d, 0x5f, 0xad, 0x6f, 0xd1, 0xdd, 0xb0,
- 0xfe, 0x27, 0xee, 0x3a, 0xf7, 0x35, 0xb5, 0xdd, 0x7e, 0xb0, 0x3e, 0xa5,
- 0x14, 0x25, 0xe1, 0x32, 0xbc, 0xeb, 0x01, 0xbc, 0x0f, 0x16, 0xf4, 0x4e,
- 0xb2, 0xc4, 0x0c, 0x0c, 0xc7, 0x82, 0x07, 0xb0, 0x5f, 0xa3, 0xec, 0x2a,
- 0x9f, 0xa3, 0xd4, 0x9f, 0x18, 0x75, 0xd1, 0x5d, 0x78, 0x7f, 0xf4, 0xe5,
- 0x5d, 0x99, 0xa3, 0x02, 0x08, 0x71, 0x9f, 0xb3, 0x7b, 0x4b, 0x24, 0xab,
- 0x2a, 0x53, 0x71, 0x65, 0xcf, 0x22, 0xc9, 0x78, 0xa4, 0xb6, 0x1d, 0x53,
- 0x46, 0x20, 0x13, 0x10, 0x6b, 0xb9, 0x87, 0xa0, 0x84, 0x68, 0x83, 0x30,
- 0xc8, 0xc2, 0xee, 0xec, 0x74, 0xc4, 0x49, 0xe6, 0x2e, 0x35, 0x26, 0xd0,
- 0xca, 0xdd, 0xd2, 0xdb, 0xf1, 0xcb, 0x03, 0x64, 0x26, 0xbe, 0x28, 0x65,
- 0x2d, 0x2b, 0x67, 0x43, 0x82, 0xb7, 0x51, 0x9f, 0x6d, 0xee, 0x53, 0x2b,
- 0x1f, 0x0d, 0xd3, 0x10, 0x95, 0x5e, 0xf4, 0x63, 0x62, 0x35, 0xf3, 0xac,
- 0x7c, 0x30, 0xc0, 0xa2, 0xc3, 0x19, 0x85, 0x29, 0x06, 0x91, 0x0e, 0xfc,
- 0xce, 0x70, 0x38, 0xf4, 0x75, 0xc9, 0x79, 0x5b, 0xd4, 0x07, 0x85, 0x5a,
- 0x46, 0x01, 0x7e, 0x2c, 0xd6, 0x78, 0x03, 0xc2, 0x3c, 0x04, 0xea, 0x4d,
- 0x0d, 0xbc, 0x51, 0x3b, 0x81, 0x3b, 0x1a, 0x81, 0x8d, 0xa3, 0xa7, 0xdd,
- 0xf6, 0x0c, 0xb4, 0xe1, 0xa6, 0x6b, 0x13, 0x1e, 0x18, 0x9b, 0xd8, 0x1e,
- 0xb5, 0xc0, 0xa6, 0xe3, 0x53, 0x85, 0x5b, 0x0b, 0xa6, 0x60, 0x0e, 0x20,
- 0x07, 0x9d, 0x48, 0xc6, 0xb1, 0x2c, 0x9a, 0x0e, 0x45, 0x4b, 0xad, 0x31,
- 0x93, 0x2b, 0xee, 0x00, 0x82, 0x20, 0xc5, 0x6a, 0x16, 0x25, 0x6b, 0x7a,
- 0xbc, 0xc6, 0x76, 0x83, 0x2c, 0x9c, 0xd8, 0xac, 0xed, 0x28, 0x96, 0x30,
- 0xeb, 0xcc, 0x90, 0xfd, 0x35, 0xcb, 0x51, 0xe1, 0x68, 0x2a, 0x4b, 0xe2,
- 0x21, 0xb1, 0xad, 0x98, 0xc1, 0xed, 0xa5, 0x93, 0xf7, 0xe6, 0x2a, 0x8e,
- 0x36, 0x1b, 0x08, 0xa0, 0x8b, 0x25, 0x22, 0x1a, 0xf7, 0x50, 0x50, 0x8f,
- 0x87, 0xfc, 0xe5, 0x63, 0x6b, 0xd1, 0x39, 0xcb, 0x5b, 0x6b, 0xe3, 0x6f,
- 0xe5, 0x26, 0xeb, 0xa2, 0x15, 0x15, 0xeb, 0xb2, 0x40, 0x67, 0x78, 0xbe,
- 0x97, 0xa4, 0x77, 0x74, 0xf5, 0xcc, 0x33, 0x8e, 0xcf, 0x44, 0xa4, 0x03,
- 0xac, 0x32, 0xc7, 0x81, 0x9d, 0xd1, 0xcd, 0x50, 0xa9, 0x56, 0x63, 0x9a,
- 0x98, 0xef, 0xec, 0x59, 0x89, 0x6d, 0x81, 0xcb, 0x35, 0x83, 0x5e, 0x8e,
- 0x7a, 0xe0, 0x0c, 0x6f, 0xaa, 0x92, 0xba, 0xa9, 0xe7, 0x3c, 0xf2, 0x4d,
- 0x54, 0x4b, 0x16, 0x71, 0x1e, 0x71, 0x89, 0x6c, 0xe7, 0x90, 0xb8, 0x0a,
- 0x5b, 0xad, 0x74, 0x3e, 0x09, 0x3a, 0x71, 0xfe, 0x69, 0x35, 0x3f, 0x71,
- 0x78, 0xef, 0x7c, 0x00, 0xa0, 0x0b, 0x57, 0x4c, 0x57, 0xd4, 0xab, 0xab,
- 0x2b, 0xab, 0xbc, 0xd3, 0x9a, 0x5a, 0x37, 0x91, 0x1d, 0xf3, 0xaa, 0x70,
- 0x14, 0xf4, 0xfd, 0xaa, 0xd5, 0xbc, 0x30, 0x9b, 0x8f, 0x59, 0x5d, 0x1a,
- 0xc4, 0x6c, 0x3e, 0x49, 0xd9, 0xb7, 0xda, 0x25, 0x5d, 0x21, 0x41, 0xa3,
- 0xe9, 0x43, 0x3e, 0x39, 0x5b, 0x43, 0xe1, 0x84, 0xb9, 0x07, 0x64, 0xb0,
- 0x4d, 0x07, 0x3a, 0x9f, 0x8f, 0x40, 0xf1, 0x91, 0xa8, 0x77, 0x2e, 0xd4,
- 0x4a, 0x2a, 0x03, 0x8e, 0x52, 0xaf, 0x72, 0xad, 0x25, 0x0d, 0x6b, 0x2f,
- 0x17, 0x54, 0x39, 0x9a, 0x2b, 0x1f, 0x2a, 0x6e, 0x33, 0x0f, 0x10, 0xe9,
- 0x0d, 0x8e, 0x1e, 0x65, 0x57, 0x4f, 0xbf, 0x63, 0x26, 0x2d, 0x07, 0xaf,
- 0xe3, 0x57, 0x98, 0x64, 0x6b, 0x55, 0x86, 0x49, 0xd0, 0xa4, 0x98, 0x4a,
- 0x8a, 0x90, 0xc5, 0xcb, 0xd8, 0xd4, 0x6f, 0x6d, 0x2d, 0x0a, 0x8d, 0x08,
- 0xc4, 0x4b, 0xa0, 0x9a, 0x48, 0xc1, 0x11, 0x43, 0xca, 0x77, 0x31, 0x7a,
- 0xde, 0xff, 0x6b, 0xb3, 0x5c, 0x77, 0x9b, 0xb4, 0x6e, 0x35, 0x09, 0x40,
- 0x04, 0xa0, 0x01, 0x16, 0xe8, 0x9c, 0x0b, 0xff, 0x42, 0xf7, 0x09, 0x94,
- 0x0c, 0x0b, 0x5a, 0x8b, 0x91, 0x46, 0x67, 0xce, 0x85, 0x68, 0x20, 0x0f,
- 0x85, 0x38, 0x2f, 0xe2, 0x0a, 0x06, 0xa3, 0x35, 0xc9, 0x37, 0x1a, 0x8c,
- 0xc3, 0xca, 0xda, 0xab, 0x01, 0x0b, 0x46, 0x8d, 0x83, 0xf9, 0xd8, 0x39,
- 0x3d, 0x3d, 0x3b, 0xf9, 0xfa, 0xec, 0xf0, 0xfc, 0x3c, 0x79, 0x7b, 0x78,
- 0x21, 0xba, 0xfe, 0x85, 0x84, 0xde, 0x5d, 0xb1, 0xba, 0x9e, 0xc0, 0xd7,
- 0x60, 0x08, 0x4e, 0x16, 0x72, 0x62, 0x86, 0x04, 0xe4, 0x3c, 0x15, 0xec,
- 0x47, 0x83, 0xfc, 0x06, 0x25, 0x7e, 0xaa, 0x11, 0x7b, 0xd7, 0xb0, 0xf6,
- 0x23, 0xa6, 0x09, 0x0e, 0x49, 0x67, 0x3c, 0xf7, 0x66, 0x54, 0x08, 0xc6,
- 0x12, 0xe5, 0xe4, 0x72, 0x0e, 0xbd, 0x09, 0x9d, 0xaf, 0x6c, 0xfa, 0x89,
- 0xe9, 0xfd, 0x9e, 0x56, 0xb3, 0xe6, 0xb2, 0xe9, 0xfc, 0xeb, 0x99, 0x11,
- 0xc5, 0xef, 0x93, 0x1f, 0xa8, 0xcd, 0x09, 0x29, 0xaf, 0x6c, 0x41, 0xa6,
- 0x5b, 0xf6, 0x1c, 0xd5, 0x4e, 0x7d, 0x51, 0x21, 0x94, 0x28, 0x0d, 0xfe,
- 0xe3, 0x42, 0xc4, 0xc3, 0xee, 0x9a, 0x3c, 0x8d, 0xa2, 0x3a, 0x02, 0x96,
- 0xa9, 0x31, 0x75, 0xae, 0x67, 0x2d, 0x63, 0x9c, 0x24, 0xc7, 0xd9, 0x65,
- 0x0d, 0x29, 0x84, 0xbb, 0xa3, 0xe6, 0xb6, 0x19, 0xfd, 0x79, 0x87, 0xab,
- 0x9e, 0xd1, 0xaf, 0x4f, 0x3e, 0x7f, 0xbe, 0xfd, 0xb9, 0xfc, 0x6a, 0xff,
- 0xbe, 0x78, 0xba, 0xad, 0x28, 0xea, 0xf4, 0xd7, 0xd3, 0xbd, 0xa7, 0x3b,
- 0x7b, 0x0c, 0xee, 0xb8, 0xbd, 0xb7, 0x4d, 0xff, 0xff, 0x54, 0x3f, 0x61,
- 0x04, 0xcb, 0x17, 0xbb, 0x9f, 0x7f, 0x86, 0x68, 0x18, 0xa6, 0x8f, 0x29,
- 0x75, 0x32, 0xa8, 0x8b, 0x01, 0x30, 0xa6, 0x20, 0xf9, 0xfc, 0xbe, 0x69,
- 0x89, 0x64, 0xf7, 0xfa, 0x98, 0x9d, 0xa9, 0x57, 0xa2, 0xd3, 0x4c, 0x33,
- 0x3e, 0xf6, 0x6a, 0x55, 0x15, 0xdc, 0x1b, 0x8b, 0x10, 0x97, 0xb4, 0x6d,
- 0x9d, 0x86, 0xbe, 0x5d, 0xe3, 0x6f, 0x80, 0xb6, 0x35, 0xde, 0x91, 0x40,
- 0xf3, 0x00, 0x1f, 0xee, 0x97, 0x76, 0x6d, 0x89, 0xe4, 0x6b, 0x40, 0x7d,
- 0xd3, 0xad, 0xd2, 0xf7, 0xc6, 0x56, 0x09, 0xda, 0x3d, 0xc5, 0x62, 0xe0,
- 0x4c, 0x72, 0x12, 0x2e, 0x25, 0x5c, 0xf9, 0x97, 0xf6, 0x27, 0x96, 0x2b,
- 0x7e, 0x4b, 0xa9, 0x21, 0x89, 0x7b, 0x73, 0xb9, 0x08, 0x1d, 0x7d, 0x35,
- 0x88, 0x67, 0xcd, 0x6f, 0xbf, 0x5f, 0x29, 0x66, 0x65, 0xfa, 0x90, 0xcb,
- 0xe1, 0x92, 0xc2, 0xba, 0x1d, 0x53, 0x8e, 0x9a, 0x53, 0x32, 0xfa, 0x05,
- 0xcd, 0xf9, 0x19, 0x81, 0x82, 0xdd, 0xce, 0x0d, 0x82, 0xcd, 0xc9, 0x25,
- 0xb0, 0xcd, 0x56, 0xc3, 0xa1, 0x8a, 0xda, 0x35, 0x27, 0xaf, 0x3a, 0x92,
- 0x1d, 0xc8, 0x1b, 0x2a, 0x73, 0xba, 0xbc, 0x38, 0x3a, 0x85, 0xb7, 0x05,
- 0xae, 0x78, 0x79, 0xde, 0x28, 0x3b, 0xea, 0x8a, 0xa9, 0x31, 0xe8, 0x4f,
- 0xfb, 0xc0, 0x79, 0x72, 0x87, 0xee, 0xc1, 0xa9, 0xf9, 0xd8, 0x7a, 0x57,
- 0x58, 0x78, 0xc3, 0xc5, 0xaa, 0x77, 0x1d, 0x49, 0xff, 0x1c, 0xc2, 0xd7,
- 0x5d, 0x73, 0xe1, 0xed, 0x83, 0xa2, 0xd2, 0x5a, 0x16, 0x83, 0xa1, 0x4a,
- 0x19, 0xdb, 0x7f, 0xd3, 0x58, 0xd8, 0xe0, 0x77, 0x2e, 0x6c, 0x0b, 0x97,
- 0x99, 0xd6, 0x08, 0x4d, 0x85, 0xf2, 0xa7, 0x61, 0x2e, 0xad, 0xe3, 0x76,
- 0xa3, 0xb4, 0x6c, 0xa0, 0xe8, 0xaf, 0x49, 0x2d, 0x09, 0xba, 0x5e, 0xe9,
- 0xba, 0x40, 0xba, 0xa3, 0xc8, 0x11, 0xff, 0xb2, 0xb6, 0x76, 0x7e, 0x7a,
- 0x78, 0xf8, 0x3a, 0x39, 0x3e, 0x7a, 0x7b, 0x74, 0x11, 0x48, 0xe1, 0xee,
- 0xf6, 0x30, 0x4b, 0xab, 0x55, 0x9c, 0x6a, 0x2d, 0x87, 0xc7, 0x6c, 0x96,
- 0xfe, 0xec, 0xfe, 0x9e, 0x65, 0x9a, 0x45, 0x31, 0x6d, 0xbf, 0x07, 0x7d,
- 0x1b, 0xc0, 0x4e, 0xc3, 0xe4, 0xab, 0x20, 0x30, 0x32, 0xa9, 0x48, 0xa2,
- 0x19, 0xbb, 0x72, 0xcb, 0x83, 0x3f, 0x6b, 0x9c, 0x46, 0x53, 0x5c, 0x52,
- 0xe8, 0x59, 0x97, 0xd2, 0xa3, 0xb1, 0xad, 0xad, 0x51, 0xf1, 0xda, 0x66,
- 0x12, 0x5a, 0x1d, 0x98, 0xe5, 0x10, 0xb6, 0x77, 0x97, 0x01, 0xed, 0x60,
- 0x96, 0x4b, 0xae, 0x65, 0x18, 0x53, 0xec, 0x2a, 0xd0, 0x5e, 0x14, 0xc2,
- 0xc7, 0xc3, 0x1e, 0xc3, 0xd2, 0xe2, 0x16, 0x50, 0x6b, 0x7d, 0x85, 0x35,
- 0xab, 0x9f, 0x6c, 0xbb, 0x74, 0x85, 0x05, 0x78, 0x8e, 0xca, 0xf7, 0xdc,
- 0xd9, 0x4e, 0x42, 0x42, 0xc8, 0x92, 0x45, 0xf9, 0x72, 0x39, 0x8f, 0xae,
- 0xbb, 0x3f, 0xcb, 0xbb, 0x34, 0xff, 0xe7, 0xdb, 0xb8, 0xde, 0x2e, 0xd3,
- 0x72, 0x40, 0xe2, 0xd6, 0xfd, 0xc0, 0x4c, 0xaa, 0x42, 0x11, 0x1a, 0x6f,
- 0x2c, 0xf6, 0x9e, 0xcc, 0x17, 0xbb, 0x6d, 0x89, 0x88, 0x3e, 0xe7, 0xa4,
- 0x80, 0x5f, 0x72, 0xaa, 0x07, 0x80, 0xa7, 0xce, 0x99, 0xbe, 0x66, 0xe1,
- 0xf4, 0x02, 0x8e, 0x87, 0x25, 0xb6, 0x5d, 0xf4, 0x3c, 0x8a, 0x33, 0x10,
- 0xc0, 0x56, 0xb9, 0xd5, 0x9c, 0xa7, 0xa9, 0x73, 0x89, 0xe5, 0xe9, 0x59,
- 0xb2, 0xf3, 0x39, 0xcf, 0xe3, 0xd3, 0xe6, 0xf3, 0xa6, 0x28, 0xc7, 0x2e,
- 0xa7, 0x18, 0x3a, 0x42, 0x90, 0x60, 0x2a, 0x69, 0x11, 0xa8, 0xd5, 0x24,
- 0xab, 0x6b, 0x41, 0xb1, 0x08, 0xda, 0x63, 0xa5, 0x44, 0xfd, 0xe9, 0x30,
- 0x47, 0xc1, 0xc1, 0x2d, 0x62, 0x11, 0xdf, 0x35, 0xba, 0x2e, 0x6c, 0x60,
- 0x95, 0xa0, 0xbd, 0x5e, 0xe9, 0x12, 0x50, 0x65, 0x19, 0xd8, 0x24, 0x42,
- 0xb4, 0x76, 0x97, 0x4f, 0x20, 0x4a, 0x7b, 0x80, 0x3a, 0xda, 0x2f, 0x21,
- 0x3e, 0x89, 0x95, 0x86, 0xcf, 0x12, 0xce, 0x4e, 0x37, 0x32, 0x15, 0x60,
- 0x78, 0x59, 0x0b, 0x58, 0x14, 0x36, 0x20, 0x3f, 0x70, 0x7e, 0xb3, 0xf7,
- 0x0b, 0xb0, 0xfe, 0xc4, 0xac, 0x79, 0xdd, 0xf7, 0xc2, 0xb9, 0x02, 0x75,
- 0x3d, 0x35, 0x63, 0xc2, 0x5b, 0x47, 0xd8, 0xcd, 0x39, 0x33, 0x52, 0x4b,
- 0x30, 0xed, 0x9d, 0x6d, 0x12, 0x5a, 0xa7, 0x45, 0xa3, 0xf4, 0x39, 0x11,
- 0x55, 0xac, 0x89, 0x62, 0x5a, 0x03, 0xac, 0xce, 0xce, 0xf6, 0xb7, 0xab,
- 0x57, 0x1d, 0xe0, 0xfb, 0x0f, 0xbe, 0xbc, 0xfb, 0xf4, 0x81, 0x4d, 0x3b,
- 0x29, 0xa1, 0x8c, 0x67, 0x16, 0x03, 0x09, 0x41, 0xd0, 0x7b, 0x5e, 0xa2,
- 0x6d, 0x23, 0xc2, 0xcf, 0xae, 0x52, 0x1e, 0xfe, 0x43, 0xa3, 0xb7, 0x9c,
- 0x90, 0xd6, 0x50, 0xde, 0x6a, 0x54, 0xb6, 0x7c, 0x59, 0xb1, 0x59, 0x6c,
- 0x01, 0x78, 0x3e, 0xaf, 0xbb, 0xba, 0x74, 0x72, 0xc1, 0x66, 0x08, 0xde,
- 0x16, 0xce, 0xd9, 0x6f, 0x32, 0x09, 0xa3, 0x9e, 0x32, 0xbb, 0x5a, 0x0a,
- 0x12, 0x46, 0x21, 0xba, 0x3e, 0xa3, 0x59, 0xeb, 0x79, 0x25, 0xde, 0xcc,
- 0xe1, 0x43, 0x42, 0x4f, 0x60, 0xbc, 0xe3, 0xd4, 0x44, 0x56, 0x11, 0x39,
- 0xda, 0x17, 0x03, 0x1b, 0x65, 0xc7, 0xec, 0x05, 0x03, 0x37, 0x58, 0x4b,
- 0xda, 0x65, 0xb3, 0x05, 0xae, 0x71, 0x88, 0x4c, 0x5f, 0x21, 0x14, 0xc7,
- 0xec, 0x39, 0xad, 0x8c, 0xbd, 0x61, 0xb5, 0xb8, 0x05, 0xd0, 0x40, 0x5f,
- 0xa9, 0x16, 0x2d, 0xb9, 0xae, 0x98, 0xe3, 0x57, 0x06, 0x9b, 0x29, 0x10,
- 0xfb, 0x6c, 0xec, 0x3f, 0x38, 0x79, 0xf7, 0xe6, 0xe8, 0x6b, 0x07, 0x65,
- 0x24, 0x4c, 0xbc, 0x01, 0xb1, 0x21, 0xe6, 0xe3, 0xd0, 0xd3, 0xad, 0x85,
- 0x18, 0x35, 0xfa, 0x96, 0xd8, 0xd3, 0x87, 0xf0, 0x03, 0x30, 0x90, 0xf9,
- 0x13, 0x36, 0x90, 0x0b, 0xfe, 0x47, 0xb5, 0xe9, 0xcd, 0x0d, 0x2d, 0xa8,
- 0x3a, 0xc9, 0xd2, 0x48, 0xcb, 0x7a, 0xb9, 0x70, 0x41, 0x84, 0x41, 0x21,
- 0x47, 0x05, 0xdf, 0xb6, 0x54, 0xf4, 0xe5, 0x42, 0x58, 0x93, 0x26, 0x94,
- 0x36, 0xac, 0xb9, 0x72, 0x07, 0xb0, 0x39, 0x41, 0xb1, 0x54, 0xf4, 0x02,
- 0x88, 0xe2, 0x72, 0xa6, 0x0c, 0xd9, 0x19, 0xc6, 0xcb, 0x9b, 0xff, 0x66,
- 0x82, 0x62, 0x98, 0x61, 0xc1, 0xf3, 0x99, 0xa8, 0x63, 0x3c, 0x6f, 0x54,
- 0x94, 0x76, 0xc1, 0x38, 0x2e, 0xfa, 0xd7, 0xfb, 0x87, 0x2a, 0x57, 0x22,
- 0xdb, 0xc5, 0x27, 0x59, 0x1a, 0x6b, 0x0a, 0x57, 0x25, 0x7c, 0x9d, 0xf8,
- 0xe4, 0x15, 0xbb, 0x65, 0xf6, 0x18, 0x82, 0x7e, 0x26, 0x80, 0x72, 0x61,
- 0xfa, 0xa9, 0x72, 0x49, 0x0f, 0x15, 0x7f, 0x74, 0x19, 0x64, 0xb4, 0x49,
- 0x9c, 0xa0, 0x11, 0x9d, 0xd8, 0x88, 0xd9, 0xc0, 0xd2, 0xfb, 0x5d, 0x6f,
- 0x50, 0xdd, 0xcf, 0x46, 0xc5, 0xd4, 0x12, 0x2f, 0x1c, 0x80, 0x84, 0x3d,
- 0x14, 0x16, 0x56, 0x4b, 0xc4, 0x53, 0x5b, 0x07, 0x66, 0x49, 0x1f, 0x2b,
- 0xe5, 0xc7, 0x2f, 0xc5, 0x89, 0xe0, 0x1e, 0xb2, 0x59, 0x00, 0xdb, 0x87,
- 0x79, 0x7c, 0x36, 0x1f, 0x4f, 0x0b, 0xa5, 0x6a, 0x4e, 0x30, 0xc7, 0x4a,
- 0x35, 0xa7, 0xce, 0x1e, 0xbf, 0x62, 0xc9, 0x16, 0x0e, 0x14, 0x1e, 0x21,
- 0x71, 0x67, 0x5d, 0x11, 0x35, 0x30, 0x41, 0x7e, 0x5b, 0xbe, 0xd0, 0xa8,
- 0xfc, 0x00, 0xdf, 0x46, 0x2a, 0x95, 0xd0, 0x50, 0x7f, 0x12, 0x83, 0xa2,
- 0xf8, 0xfd, 0xfe, 0x6c, 0x9d, 0xdb, 0xa3, 0xad, 0xa5, 0x27, 0x7a, 0x4a,
- 0xcb, 0x2b, 0x45, 0xe9, 0x53, 0x4f, 0x1a, 0x94, 0x44, 0x57, 0x3f, 0xc6,
- 0x19, 0x26, 0x59, 0x28, 0x71, 0x51, 0x33, 0x10, 0x9f, 0x96, 0x92, 0x53,
- 0xa8, 0x19, 0x57, 0x62, 0x92, 0x74, 0x84, 0x18, 0x70, 0x9c, 0xdf, 0xb9,
- 0x58, 0x94, 0xd4, 0xdf, 0x65, 0x56, 0xd6, 0xc2, 0xdb, 0x67, 0xf5, 0x32,
- 0x0b, 0x5e, 0x63, 0x23, 0x1e, 0x34, 0xe1, 0x4c, 0x0d, 0x27, 0xd2, 0x15,
- 0x64, 0x09, 0xc6, 0xb5, 0x41, 0xf2, 0x4f, 0x56, 0xf9, 0x26, 0xe4, 0xfb,
- 0x57, 0x5a, 0xcf, 0x8a, 0xce, 0xb3, 0x22, 0xa5, 0x28, 0x7c, 0xe0, 0xe7,
- 0xdb, 0x6a, 0x7e, 0xab, 0x35, 0x5c, 0xb5, 0x4a, 0xf6, 0xcf, 0x0e, 0x49,
- 0xb2, 0xbd, 0x9a, 0x03, 0xa3, 0x62, 0x5e, 0x5b, 0x52, 0x5d, 0x36, 0xd7,
- 0x02, 0x5a, 0x73, 0x3b, 0x1f, 0xdc, 0xe1, 0x5d, 0xf0, 0x26, 0x13, 0x93,
- 0x06, 0x06, 0x48, 0xfe, 0xb6, 0x27, 0xb9, 0xb1, 0x81, 0x09, 0x83, 0xeb,
- 0x30, 0x4c, 0x82, 0x90, 0x14, 0xbb, 0x48, 0xa8, 0xab, 0xc2, 0x80, 0x84,
- 0x4f, 0x23, 0xb6, 0x1e, 0x22, 0x08, 0xdb, 0x5a, 0xe3, 0x54, 0xfb, 0x54,
- 0x84, 0xbf, 0x1a, 0x2e, 0xa7, 0xf6, 0xd5, 0x70, 0x7b, 0x7a, 0x72, 0xea,
- 0x77, 0x9b, 0x8c, 0xfe, 0x8a, 0x7b, 0x86, 0x65, 0x91, 0xb6, 0x5c, 0x90,
- 0xb9, 0x08, 0x7b, 0xb1, 0x5e, 0x4f, 0x02, 0xe1, 0x57, 0x52, 0x00, 0x39,
- 0xc6, 0x5a, 0x0c, 0xd3, 0x8a, 0x04, 0xa4, 0x76, 0x1d, 0x51, 0x07, 0x26,
- 0x7a, 0x56, 0x99, 0x2a, 0x38, 0x5c, 0x78, 0xc4, 0x68, 0x49, 0x52, 0x3a,
- 0xbb, 0xc1, 0x9f, 0x3a, 0x6d, 0xbb, 0xbf, 0x73, 0xb3, 0xf5, 0x63, 0x70,
- 0x5f, 0xf2, 0x47, 0xaf, 0x1c, 0xba, 0x1d, 0x8f, 0x62, 0xc8, 0x1d, 0x81,
- 0xa5, 0xc2, 0x67, 0xca, 0xbf, 0xe0, 0x63, 0x44, 0xbd, 0x19, 0xda, 0x29,
- 0xb8, 0x8e, 0x83, 0xd0, 0x2a, 0xd4, 0xa7, 0xea, 0x07, 0x22, 0x8e, 0x3d,
- 0x70, 0xe8, 0x51, 0x28, 0x1a, 0x0f, 0xbe, 0xdd, 0xb2, 0x1a, 0xb8, 0x6c,
- 0xbf, 0xe1, 0x04, 0x62, 0x3b, 0xf0, 0x55, 0xd6, 0x28, 0x9a, 0xeb, 0x32,
- 0x85, 0xd6, 0x07, 0xeb, 0xb4, 0x16, 0xbd, 0xe9, 0xd4, 0x33, 0x7c, 0x7b,
- 0x8c, 0x77, 0x15, 0x49, 0x75, 0x5e, 0x60, 0x52, 0xde, 0xc5, 0xd5, 0x38,
- 0xee, 0x1b, 0x29, 0x0e, 0x5c, 0xce, 0x8c, 0x33, 0x80, 0x1c, 0xb0, 0x17,
- 0xd2, 0x44, 0x10, 0x24, 0x70, 0x9b, 0x57, 0xe6, 0x7c, 0x24, 0xda, 0x1e,
- 0x4b, 0x4c, 0x44, 0x2d, 0x80, 0x04, 0x59, 0x3d, 0x0e, 0x96, 0x32, 0x1b,
- 0x5f, 0x17, 0x12, 0x53, 0x4b, 0x8b, 0x16, 0x64, 0x7a, 0xae, 0x27, 0xff,
- 0xa9, 0x34, 0xf0, 0xad, 0x4f, 0xda, 0x63, 0x42, 0x18, 0x0a, 0x0e, 0xe5,
- 0xd0, 0x13, 0xc4, 0xe1, 0x0f, 0x17, 0x67, 0xfb, 0xc9, 0x37, 0x87, 0xfb,
- 0xaf, 0x0f, 0xcf, 0xce, 0x5b, 0x97, 0xbe, 0x86, 0x7f, 0x88, 0x84, 0xc6,
- 0x46, 0x60, 0x88, 0xc6, 0x06, 0x3c, 0xa0, 0x71, 0xfb, 0xc6, 0xf5, 0x88,
- 0x78, 0xf8, 0x20, 0xd1, 0xf9, 0x60, 0x85, 0x48, 0xbc, 0x05, 0x40, 0x3d,
- 0xae, 0xc0, 0x6c, 0x5c, 0x1b, 0x63, 0xe2, 0x50, 0x1c, 0xc4, 0x60, 0x26,
- 0xf3, 0x30, 0x63, 0xc6, 0x63, 0xf5, 0xf9, 0xcb, 0x64, 0x52, 0x58, 0x32,
- 0x60, 0x73, 0xe7, 0xbe, 0xf1, 0xf9, 0xde, 0x01, 0xdb, 0xd2, 0x4b, 0x46,
- 0xad, 0x86, 0xeb, 0x3f, 0x0c, 0xa8, 0xdf, 0x01, 0x2d, 0xfe, 0x80, 0xc1,
- 0x1c, 0xef, 0xb3, 0x6a, 0xbd, 0x65, 0x02, 0x6c, 0x76, 0xbf, 0x26, 0x25,
- 0x9c, 0xa2, 0x93, 0xf4, 0x4d, 0x67, 0x4b, 0x7c, 0xba, 0xb8, 0xca, 0x73,
- 0xa4, 0x41, 0xe0, 0x52, 0x0d, 0x84, 0x64, 0x3d, 0x41, 0x51, 0x7a, 0x8b,
- 0x06, 0x28, 0x79, 0x35, 0x53, 0xe3, 0xc1, 0x30, 0x10, 0x9d, 0x02, 0x64,
- 0x1d, 0x3a, 0x7b, 0x72, 0xa9, 0x4f, 0x05, 0xa0, 0x59, 0x2c, 0x66, 0x34,
- 0x2c, 0x7d, 0x28, 0xbc, 0x1f, 0xe0, 0x00, 0xd1, 0x18, 0xfc, 0xaa, 0xe1,
- 0x1f, 0x55, 0x63, 0xa8, 0x62, 0x77, 0x6b, 0x73, 0x3c, 0x06, 0x47, 0xf3,
- 0x16, 0xba, 0xcf, 0x5d, 0x5a, 0x59, 0x11, 0x7d, 0x57, 0xa2, 0xc0, 0x58,
- 0xa9, 0x87, 0x7d, 0x53, 0xea, 0x93, 0x4a, 0x91, 0x42, 0x61, 0x6c, 0x41,
- 0x2e, 0x50, 0x48, 0xcc, 0xa8, 0x81, 0x86, 0xe8, 0x71, 0xf7, 0x5c, 0x96,
- 0x7c, 0x53, 0x54, 0xb8, 0x0b, 0xe2, 0xc7, 0xf9, 0x92, 0xef, 0x5a, 0x7e,
- 0xbc, 0xa1, 0xfe, 0x2d, 0x07, 0x12, 0x0b, 0x4c, 0x65, 0xb0, 0xaf, 0xd3,
- 0xfd, 0x8b, 0x6f, 0xe0, 0x5d, 0x05, 0x09, 0xbf, 0x06, 0x62, 0x8a, 0xf9,
- 0xd4, 0xe2, 0x94, 0x2c, 0xa7, 0xc0, 0x89, 0xfc, 0x6b, 0xc0, 0x8c, 0x26,
- 0x4f, 0xc2, 0x7b, 0x97, 0x4b, 0x20, 0xd2, 0x54, 0x6a, 0xc2, 0x82, 0x47,
- 0x37, 0xea, 0xf2, 0x21, 0xf4, 0xdd, 0xe5, 0xdb, 0xb9, 0x78, 0xcb, 0x9e,
- 0x24, 0xc2, 0xf7, 0x64, 0x4e, 0x20, 0x7a, 0x16, 0xe6, 0x58, 0xe3, 0x09,
- 0x91, 0x87, 0xf1, 0x05, 0x67, 0x3a, 0x8b, 0x03, 0x6a, 0x52, 0x74, 0xe3,
- 0x1e, 0x06, 0x47, 0xfa, 0xcb, 0xd9, 0xfd, 0x30, 0x06, 0xe0, 0x49, 0xbe,
- 0x5a, 0xd6, 0x4d, 0xb6, 0xd2, 0xc2, 0x3f, 0x76, 0x92, 0x65, 0x59, 0x14,
- 0x75, 0x30, 0x06, 0x48, 0x3f, 0x69, 0xad, 0x27, 0x5a, 0x00, 0x2e, 0x65,
- 0x2c, 0xdc, 0xd4, 0x5c, 0xe5, 0xee, 0x50, 0x30, 0x4c, 0x47, 0x55, 0x31,
- 0x5d, 0xd6, 0x41, 0xf4, 0xf5, 0x2f, 0x1b, 0x73, 0x30, 0xe8, 0x8d, 0xa3,
- 0xa1, 0x81, 0x7d, 0xce, 0x05, 0xa2, 0x8e, 0x34, 0x7d, 0x12, 0x2f, 0xe1,
- 0x6c, 0x2c, 0x8b, 0x79, 0xb3, 0x78, 0x1c, 0x02, 0xbd, 0x37, 0xd7, 0xd6,
- 0xce, 0x6d, 0xb3, 0x19, 0xee, 0x35, 0xde, 0xf4, 0xef, 0x21, 0x4d, 0xf2,
- 0x18, 0xc4, 0x59, 0x30, 0xa6, 0x5f, 0x0c, 0x04, 0x2e, 0x93, 0x3d, 0x05,
- 0x0b, 0x97, 0x3d, 0xce, 0xab, 0xe6, 0xa4, 0xf0, 0x95, 0x73, 0x57, 0x58,
- 0x7e, 0xd9, 0x45, 0x61, 0x40, 0xfe, 0xea, 0xae, 0xf3, 0x04, 0xd1, 0xc8,
- 0x86, 0xef, 0x44, 0x98, 0xe6, 0x4b, 0xc0, 0x2a, 0x0d, 0xbb, 0x70, 0x5c,
- 0x1e, 0xe4, 0xd6, 0x7f, 0x6d, 0x25, 0xfd, 0x44, 0x8b, 0xc0, 0x77, 0x80,
- 0x1c, 0xfd, 0x5f, 0x08, 0xbc, 0x52, 0x78, 0x5f, 0x6e, 0x73, 0xd8, 0x04,
- 0x90, 0x1d, 0x92, 0x0a, 0x75, 0x5d, 0x8e, 0x3d, 0xf5, 0x93, 0x74, 0x90,
- 0xdd, 0xb1, 0xfe, 0x62, 0x3a, 0x82, 0xc2, 0x85, 0x48, 0xb1, 0x5f, 0x07,
- 0xc0, 0x04, 0xb8, 0x8d, 0x4b, 0x67, 0xd5, 0xe3, 0xba, 0x9b, 0x52, 0x84,
- 0x52, 0xc4, 0x7a, 0xd4, 0x60, 0x32, 0xb7, 0xa9, 0x64, 0xd4, 0x3b, 0xbd,
- 0xbd, 0x4a, 0xaa, 0x42, 0x7e, 0x5a, 0xd2, 0x91, 0x06, 0x76, 0x29, 0xf9,
- 0x07, 0xb5, 0xfd, 0x82, 0xa2, 0xb8, 0x16, 0x71, 0x2a, 0xd1, 0x74, 0xe6,
- 0x8e, 0xb4, 0x41, 0x9a, 0x14, 0xc0, 0xde, 0x4a, 0xc0, 0x5a, 0x2a, 0xf2,
- 0x08, 0x47, 0x92, 0x31, 0x86, 0xb1, 0x24, 0x6d, 0x73, 0xd5, 0x46, 0xd3,
- 0x64, 0xec, 0x4a, 0xb5, 0x34, 0x8e, 0xb5, 0xb0, 0x86, 0xb6, 0x0c, 0x5f,
- 0xef, 0x7e, 0x24, 0xe1, 0xc3, 0x33, 0x77, 0x97, 0x32, 0x4e, 0x9a, 0x17,
- 0x09, 0x6c, 0x4a, 0x5a, 0xf7, 0x55, 0x82, 0x37, 0xc2, 0x80, 0x14, 0x1f,
- 0xb1, 0x79, 0xc5, 0x59, 0x1e, 0x6a, 0x92, 0x52, 0x2c, 0x13, 0xd8, 0xbf,
- 0xae, 0x73, 0x8d, 0x2b, 0x95, 0x55, 0x6f, 0x56, 0xd5, 0x84, 0x85, 0x8f,
- 0x43, 0x0a, 0xbc, 0x57, 0xd5, 0x05, 0x3e, 0x0c, 0xe3, 0x03, 0x33, 0x74,
- 0xa8, 0xaa, 0x7a, 0x89, 0x1c, 0x85, 0x39, 0xe5, 0x12, 0x85, 0xe1, 0x62,
- 0x9d, 0x3f, 0xb1, 0xf7, 0xb0, 0x4b, 0x0e, 0x62, 0x9d, 0x27, 0x92, 0x40,
- 0xa2, 0x50, 0x71, 0x7c, 0xa1, 0xec, 0xee, 0x40, 0x31, 0x95, 0x98, 0x0d,
- 0xe0, 0x94, 0x5a, 0x0b, 0x86, 0x97, 0xd6, 0x5e, 0xfc, 0xcd, 0xbe, 0xae,
- 0x92, 0xcb, 0xb8, 0x57, 0x17, 0xb3, 0xc8, 0x85, 0x81, 0xdf, 0xa9, 0x51,
- 0x3d, 0x4e, 0xb2, 0xb8, 0xab, 0xba, 0x5c, 0x8e, 0x1b, 0x10, 0x7d, 0xa0,
- 0x88, 0x86, 0x6b, 0xde, 0xad, 0x71, 0x11, 0xea, 0xf6, 0x47, 0xa7, 0xaa,
- 0xde, 0x8b, 0xf6, 0xc1, 0x23, 0xdb, 0x48, 0x1b, 0x49, 0x2e, 0xae, 0xb0,
- 0x68, 0xd8, 0xef, 0xa6, 0xa3, 0xb2, 0xc1, 0xa9, 0xcb, 0xa8, 0x6f, 0x95,
- 0x87, 0xe7, 0xec, 0x84, 0xe0, 0xee, 0x55, 0x41, 0x0c, 0x82, 0x47, 0x99,
- 0x28, 0xf8, 0x22, 0xc4, 0x1a, 0x36, 0x59, 0xae, 0x39, 0x80, 0x44, 0x1a,
- 0xd2, 0x40, 0x43, 0x55, 0xc5, 0xfb, 0xbb, 0x45, 0x0b, 0x69, 0xe5, 0x81,
- 0x5c, 0x5d, 0xac, 0xca, 0x83, 0x2c, 0xb6, 0xe2, 0x54, 0x01, 0xd1, 0xe4,
- 0xe4, 0x43, 0x05, 0x8b, 0xd3, 0xf5, 0x1b, 0x26, 0xaf, 0xf5, 0x50, 0x68,
- 0x0f, 0x6d, 0x71, 0x22, 0xbe, 0x1b, 0x4f, 0x05, 0x0a, 0x25, 0xa2, 0xa3,
- 0xd7, 0x66, 0x53, 0x05, 0xcb, 0xc1, 0xda, 0xb0, 0x66, 0x63, 0x9b, 0x44,
- 0xeb, 0x6a, 0x5d, 0xd0, 0x10, 0x78, 0xc6, 0xbd, 0x69, 0xb6, 0xdd, 0x0b,
- 0x0a, 0x7b, 0x6d, 0x48, 0xd0, 0x7f, 0x01, 0xed, 0xc7, 0x81, 0x15, 0x8a,
- 0xf5, 0x82, 0x83, 0xdb, 0x36, 0x3b, 0x86, 0x42, 0x4d, 0xfc, 0xd2, 0xc1,
- 0xec, 0xbc, 0xd8, 0x1d, 0xee, 0x3c, 0xff, 0x7c, 0xb8, 0x3d, 0xdc, 0xd9,
- 0x66, 0xfe, 0xc2, 0x43, 0x09, 0x06, 0x27, 0xeb, 0xd2, 0xd1, 0x55, 0xe3,
- 0xbd, 0xb8, 0xcf, 0x77, 0x87, 0x17, 0xdf, 0x9f, 0x9c, 0x7d, 0x9b, 0x1c,
- 0xbd, 0xbb, 0x38, 0x3c, 0x7b, 0xb3, 0x7f, 0xf0, 0xa9, 0x80, 0xfd, 0xa1,
- 0xd9, 0x3a, 0xa8, 0x6d, 0x9d, 0xf9, 0x85, 0x89, 0x6d, 0x83, 0x7e, 0xcd,
- 0xb2, 0xfa, 0x7a, 0x7b, 0x6f, 0xe7, 0x41, 0x48, 0xea, 0x0e, 0xf3, 0xa0,
- 0x7f, 0xdf, 0x26, 0xb5, 0xc3, 0x93, 0x5a, 0xdd, 0x8a, 0x83, 0x66, 0x3c,
- 0x97, 0xd8, 0x2a, 0x17, 0x97, 0x0b, 0x36, 0x8f, 0xd2, 0x49, 0x40, 0x64,
- 0x55, 0xc6, 0x3e, 0x12, 0xf0, 0x5b, 0x49, 0xaf, 0x55, 0x90, 0x19, 0x8d,
- 0x41, 0x57, 0x9e, 0xbb, 0x26, 0x75, 0xa4, 0x6b, 0x35, 0xa7, 0x08, 0x9c,
- 0xed, 0x04, 0x22, 0x9e, 0x71, 0x65, 0xcd, 0x5d, 0x63, 0x6a, 0xd1, 0xd2,
- 0xa6, 0x02, 0x38, 0x38, 0x71, 0x79, 0x22, 0x0e, 0x85, 0x00, 0xa1, 0x0f,
- 0x26, 0xa7, 0x63, 0xac, 0xcd, 0x52, 0xe0, 0x61, 0xf8, 0x6c, 0x0b, 0x7b,
- 0xb5, 0xb2, 0xb8, 0x66, 0x4c, 0xac, 0x61, 0x1a, 0x3d, 0xd0, 0x81, 0xe0,
- 0x34, 0x04, 0xa3, 0x91, 0xae, 0x20, 0x50, 0x31, 0x48, 0x1a, 0xe0, 0x21,
- 0x1b, 0x08, 0xc9, 0x72, 0x47, 0x21, 0x77, 0x42, 0xe4, 0x3f, 0xab, 0x6a,
- 0xc1, 0xad, 0x57, 0x0d, 0x90, 0xc2, 0x44, 0xca, 0x59, 0x85, 0xaf, 0x8b,
- 0xa8, 0x8d, 0xe8, 0xcc, 0x49, 0x99, 0xde, 0xa1, 0x26, 0x4b, 0xee, 0x21,
- 0x47, 0xd7, 0x92, 0x46, 0x4d, 0x2e, 0x16, 0x9c, 0xfc, 0x9a, 0x27, 0xa7,
- 0x87, 0x6f, 0x07, 0x56, 0x49, 0x98, 0x7e, 0x17, 0x63, 0x94, 0xe1, 0x4b,
- 0x4a, 0x6e, 0xcf, 0x22, 0x9b, 0x5b, 0x2c, 0x0d, 0x78, 0xa2, 0x06, 0xff,
- 0x84, 0x13, 0xe0, 0x43, 0xe3, 0x10, 0x28, 0x35, 0x64, 0xd4, 0x62, 0x2e,
- 0x25, 0xb7, 0xb0, 0x0d, 0xcb, 0xc9, 0xfb, 0xa9, 0x01, 0xcb, 0xc9, 0x86,
- 0x0b, 0xd2, 0xe5, 0xfe, 0x10, 0x89, 0x8a, 0xa8, 0x01, 0x17, 0x26, 0x50,
- 0x58, 0xe6, 0xf5, 0xe9, 0xb7, 0x07, 0xe7, 0xbf, 0xdb, 0xd9, 0xd5, 0xe1,
- 0x6c, 0x9a, 0x56, 0xc0, 0xbc, 0xaa, 0x9d, 0x94, 0x0f, 0x76, 0x1d, 0x8e,
- 0xd1, 0x52, 0xac, 0x71, 0xc0, 0xb1, 0x19, 0x1b, 0x2e, 0x31, 0x68, 0xb3,
- 0x91, 0x19, 0xb4, 0x26, 0x05, 0xed, 0x4d, 0xc4, 0x74, 0xd5, 0x7e, 0xd9,
- 0x25, 0x82, 0x9a, 0x50, 0x5a, 0x95, 0xa9, 0x76, 0xa1, 0x7e, 0xe9, 0xdc,
- 0x3e, 0x92, 0x96, 0xb5, 0x35, 0xe4, 0x90, 0xfb, 0x70, 0x96, 0xf6, 0x9e,
- 0xf3, 0x7a, 0xfb, 0x6f, 0x19, 0x27, 0x56, 0x6f, 0x76, 0x03, 0x04, 0xf2,
- 0xdd, 0xe0, 0x00, 0x68, 0xf4, 0xfa, 0xc4, 0xea, 0xbe, 0xcd, 0x7d, 0x19,
- 0x14, 0x7e, 0xfa, 0x84, 0x36, 0x8a, 0x4e, 0x96, 0xe0, 0x36, 0x30, 0x53,
- 0x28, 0xa6, 0xac, 0xba, 0xb8, 0x47, 0x5e, 0x97, 0x5c, 0x6f, 0x66, 0x21,
- 0x71, 0xa4, 0xef, 0x86, 0xc9, 0x37, 0xd9, 0x9c, 0x13, 0xe7, 0x39, 0xe2,
- 0xce, 0x72, 0xaf, 0x10, 0x17, 0xc8, 0x85, 0x27, 0x51, 0x88, 0xef, 0x38,
- 0x4b, 0x15, 0x93, 0x93, 0x78, 0x5d, 0x25, 0x1a, 0xae, 0x15, 0xa1, 0x4a,
- 0x39, 0x3a, 0x4f, 0x01, 0x44, 0x1d, 0xd8, 0x85, 0x80, 0x44, 0x73, 0x03,
- 0x1b, 0x4d, 0x60, 0x4d, 0x94, 0x44, 0x40, 0x73, 0x7a, 0xcc, 0xe1, 0x6b,
- 0x52, 0xab, 0xf2, 0x35, 0xe0, 0xb4, 0xd9, 0x5a, 0x28, 0x1a, 0x97, 0x67,
- 0x2a, 0x93, 0xf2, 0x9a, 0x4d, 0x1f, 0x15, 0x5d, 0x37, 0xe9, 0x7c, 0x7c,
- 0x3f, 0x9c, 0x90, 0x2c, 0xcb, 0xc6, 0xb3, 0xe1, 0xf2, 0x66, 0x2b, 0x38,
- 0xa6, 0xcc, 0xf2, 0xaf, 0x05, 0x23, 0xa0, 0x69, 0xf8, 0xb6, 0x0a, 0xc7,
- 0x31, 0x74, 0x58, 0xda, 0x38, 0x13, 0x4c, 0x12, 0x96, 0xed, 0x2f, 0xc7,
- 0x73, 0x25, 0xc8, 0xd6, 0x61, 0xe2, 0x10, 0x8e, 0xb9, 0x85, 0xe1, 0x22,
- 0x9b, 0xed, 0xb9, 0x6c, 0x64, 0xe3, 0x0f, 0x5a, 0x55, 0xc3, 0x29, 0x16,
- 0x81, 0x91, 0x76, 0x9e, 0x5d, 0x4d, 0x55, 0xa0, 0x08, 0x55, 0x17, 0xd7,
- 0x44, 0x47, 0x0a, 0x88, 0x28, 0x3c, 0x5a, 0x22, 0x09, 0x12, 0x3b, 0xd1,
- 0x61, 0xad, 0x21, 0xb5, 0xf2, 0x70, 0xc9, 0x02, 0xbd, 0x6f, 0x44, 0x91,
- 0x43, 0x00, 0xb6, 0x8c, 0x6a, 0xf2, 0x62, 0xe2, 0xb1, 0x48, 0x24, 0x75,
- 0x3f, 0x31, 0x10, 0x2c, 0x28, 0x04, 0x30, 0xee, 0x1a, 0x15, 0x0d, 0xe7,
- 0xa7, 0x15, 0x12, 0x96, 0xb3, 0x42, 0x5f, 0xdf, 0x3e, 0x61, 0x8b, 0xf7,
- 0xc5, 0xf1, 0xb9, 0x79, 0x45, 0xe6, 0xd9, 0x5d, 0x40, 0x5a, 0x52, 0x7a,
- 0x40, 0xe9, 0x8f, 0x0d, 0x40, 0x02, 0xa9, 0x0c, 0xb4, 0x03, 0x8c, 0x44,
- 0xb8, 0x82, 0x77, 0x93, 0xf9, 0xe4, 0x07, 0x5b, 0x04, 0x0d, 0x23, 0xe6,
- 0xa1, 0x58, 0xbd, 0x33, 0x11, 0x86, 0x1c, 0xd2, 0x0b, 0x63, 0xf7, 0x91,
- 0xb0, 0xf4, 0xa4, 0x9f, 0x0c, 0x76, 0x81, 0x9f, 0xb3, 0xd3, 0x5c, 0xc4,
- 0xb4, 0x16, 0x98, 0x40, 0x6e, 0x83, 0x5a, 0xb2, 0x56, 0x94, 0x1d, 0x6c,
- 0x28, 0x49, 0xdf, 0xd2, 0xfb, 0xfc, 0x63, 0x57, 0x27, 0x74, 0xbb, 0x83,
- 0x88, 0x6d, 0xc1, 0xad, 0x9c, 0xde, 0xc7, 0x22, 0xc3, 0xee, 0x83, 0xbb,
- 0x8a, 0xdc, 0x88, 0xbb, 0xdc, 0x01, 0x48, 0x4b, 0xd1, 0x04, 0x98, 0x42,
- 0x15, 0x12, 0xd4, 0x06, 0x40, 0x4b, 0xa8, 0x46, 0xee, 0x79, 0x72, 0xbb,
- 0x6b, 0xbe, 0x66, 0xfe, 0xc6, 0xd6, 0x4d, 0x8c, 0xf5, 0x9e, 0x89, 0x44,
- 0x69, 0x8b, 0x1c, 0xe5, 0x16, 0x50, 0x2d, 0x67, 0x3d, 0x11, 0xcd, 0x12,
- 0x17, 0x69, 0x70, 0x99, 0x62, 0xae, 0x66, 0x05, 0x49, 0x79, 0x17, 0x3c,
- 0x7a, 0x56, 0xe0, 0x83, 0x30, 0x27, 0x44, 0x7e, 0x07, 0x11, 0x91, 0x47,
- 0x73, 0x97, 0x28, 0xa1, 0xa6, 0x7c, 0x40, 0xf4, 0x61, 0xfb, 0xaf, 0x73,
- 0x31, 0x4c, 0x20, 0xd6, 0x14, 0xd7, 0x39, 0x9d, 0xfc, 0x5e, 0x42, 0x87,
- 0x69, 0xc9, 0x1c, 0xbf, 0x76, 0xc5, 0xd7, 0xce, 0x05, 0xda, 0xb3, 0x17,
- 0xb2, 0xb9, 0xc1, 0x17, 0x3c, 0x95, 0xaa, 0xe7, 0xe7, 0xae, 0x10, 0xe7,
- 0xcd, 0x89, 0xa8, 0x9f, 0xc3, 0xca, 0x8d, 0x9d, 0x96, 0x56, 0x55, 0xbd,
- 0x77, 0xf8, 0x91, 0x65, 0x9c, 0x9e, 0xf6, 0x24, 0x5f, 0x4b, 0x4e, 0x3f,
- 0xd6, 0xe8, 0xf4, 0xe8, 0x9d, 0xd4, 0x09, 0x77, 0x67, 0x21, 0x63, 0xe8,
- 0xc5, 0x35, 0x29, 0x71, 0x8f, 0xf1, 0xa4, 0x86, 0x01, 0x2f, 0x86, 0x23,
- 0xa6, 0x19, 0xa6, 0xf1, 0x5c, 0xfb, 0x3a, 0x5b, 0x4a, 0xef, 0x3d, 0xbe,
- 0xe7, 0xaa, 0x6a, 0xda, 0x6b, 0xd5, 0xbe, 0x75, 0x7b, 0xd2, 0xba, 0x50,
- 0x9c, 0x45, 0x6a, 0x3c, 0xf1, 0x02, 0x3e, 0xea, 0x7b, 0x73, 0x2b, 0x0d,
- 0x3e, 0xd7, 0x6f, 0x65, 0x3a, 0x86, 0xa6, 0xf0, 0xdf, 0x25, 0xc3, 0x2d,
- 0xea, 0xb0, 0xda, 0xb2, 0x17, 0x17, 0x37, 0xe3, 0x8a, 0x6e, 0x38, 0x4e,
- 0xeb, 0xfd, 0x11, 0x0a, 0x39, 0xb6, 0x83, 0x46, 0x3c, 0xf9, 0x39, 0x19,
- 0x8c, 0xa7, 0x98, 0x5f, 0x82, 0x2a, 0xdb, 0x3f, 0xd2, 0xce, 0xf3, 0x13,
- 0x3f, 0xbb, 0x3d, 0x7c, 0x93, 0xf3, 0x79, 0xfb, 0xd8, 0xb7, 0xa9, 0x9f,
- 0x88, 0xc2, 0x20, 0xf8, 0xb6, 0xc9, 0xfe, 0xe4, 0x96, 0x93, 0xee, 0x26,
- 0xfa, 0x27, 0xcf, 0xe7, 0x70, 0x8e, 0xfa, 0xa4, 0x98, 0x69, 0x3a, 0x92,
- 0x92, 0xe4, 0xdf, 0xe5, 0xa4, 0x74, 0x1c, 0xb4, 0xe4, 0x0b, 0xce, 0xff,
- 0xe3, 0x01, 0xe2, 0xad, 0xe0, 0x4b, 0x4b, 0xe6, 0xe8, 0x6b, 0xce, 0x82,
- 0x0f, 0x2d, 0x65, 0xee, 0xcc, 0x5b, 0x37, 0x4c, 0xbe, 0x62, 0x1f, 0x67,
- 0x99, 0x05, 0xe8, 0xaf, 0x7a, 0xf1, 0x49, 0x1d, 0x3f, 0xde, 0x8c, 0x54,
- 0xf0, 0x27, 0x86, 0x6e, 0x26, 0x51, 0x0e, 0x8c, 0x9b, 0x93, 0xfb, 0xa6,
- 0x39, 0x39, 0x8c, 0xcb, 0x52, 0xda, 0x69, 0x2a, 0x96, 0x2f, 0x91, 0x44,
- 0x53, 0x09, 0x70, 0x29, 0x65, 0x84, 0x72, 0x61, 0x4e, 0x32, 0x4b, 0xec,
- 0x2f, 0x42, 0x34, 0x15, 0xb3, 0x1c, 0xa3, 0x29, 0x93, 0x08, 0x1c, 0x49,
- 0xe0, 0x0e, 0xf7, 0xa3, 0x3e, 0xb8, 0x26, 0xd6, 0x9c, 0xb9, 0xa1, 0x9e,
- 0x8b, 0x49, 0xcf, 0x86, 0x78, 0xce, 0x77, 0x94, 0x6d, 0x82, 0xfb, 0xd2,
- 0xb2, 0x23, 0x21, 0x85, 0x6e, 0x09, 0xef, 0x72, 0xb4, 0x2b, 0xab, 0xdb,
- 0x9c, 0x02, 0x27, 0x35, 0x9e, 0xbf, 0x7f, 0xcb, 0xa5, 0x4d, 0x50, 0xb6,
- 0xfa, 0xe2, 0x6c, 0xff, 0xdd, 0xf9, 0x1b, 0x31, 0x8d, 0x5f, 0x14, 0x41,
- 0x35, 0x6c, 0xf5, 0x2b, 0x98, 0xff, 0xd8, 0xc1, 0xc4, 0xdd, 0x49, 0xbd,
- 0x0d, 0x8b, 0xa7, 0xd7, 0x52, 0xd9, 0xfd, 0x36, 0xde, 0xbe, 0xd4, 0xd9,
- 0xe6, 0xd5, 0xe0, 0xa1, 0x6d, 0x9c, 0x6f, 0x3a, 0x41, 0xa8, 0x0a, 0x6b,
- 0xb2, 0xf9, 0x72, 0xf5, 0x86, 0x0c, 0xad, 0x0f, 0xf1, 0xb2, 0x1c, 0xd8,
- 0x60, 0xec, 0x53, 0xb9, 0x7b, 0x57, 0x82, 0x91, 0x1e, 0x90, 0xaa, 0x38,
- 0xd0, 0x4a, 0x35, 0x41, 0x05, 0x3a, 0x67, 0x4e, 0x95, 0xbb, 0x57, 0xa1,
- 0xfc, 0x5c, 0xe3, 0x61, 0xde, 0xa7, 0x35, 0xbd, 0xf1, 0x87, 0x9d, 0xcd,
- 0xee, 0xe6, 0x2f, 0x7e, 0x69, 0xf3, 0xdd, 0x63, 0x37, 0xdd, 0xcc, 0xa7,
- 0x14, 0x6d, 0xfc, 0x61, 0x77, 0xf3, 0xc1, 0x19, 0x85, 0x59, 0x91, 0xbe,
- 0x4f, 0x7a, 0x83, 0x07, 0x9b, 0xbc, 0x92, 0x63, 0xe6, 0x64, 0x26, 0x17,
- 0xa1, 0x13, 0xe0, 0x0d, 0x37, 0x00, 0x3b, 0x38, 0x6c, 0xdb, 0x49, 0xea,
- 0xde, 0xf1, 0xa6, 0xd9, 0x25, 0x47, 0xff, 0xfb, 0x30, 0x84, 0x91, 0x9c,
- 0xf7, 0xea, 0xf0, 0x8a, 0x62, 0x74, 0x80, 0xaa, 0x18, 0xa2, 0xef, 0xdd,
- 0x07, 0xfa, 0xf6, 0xb3, 0x0b, 0xcc, 0x12, 0xec, 0xc5, 0xe6, 0x30, 0x38,
- 0x43, 0xc3, 0xd6, 0x7e, 0xd6, 0x7c, 0x99, 0xf5, 0xd5, 0xfd, 0x5d, 0x1c,
- 0xbd, 0x3d, 0x64, 0xd4, 0xec, 0xd7, 0x47, 0x0c, 0x3e, 0x77, 0xae, 0xf0,
- 0x8f, 0x66, 0x81, 0x70, 0x88, 0xbc, 0x61, 0xb5, 0x14, 0x71, 0xef, 0xba,
- 0x68, 0x33, 0xc7, 0x39, 0xdc, 0x4e, 0x70, 0xd7, 0x1a, 0x03, 0x5d, 0x59,
- 0xa6, 0xe5, 0xd1, 0xe5, 0xe0, 0x6d, 0x31, 0x81, 0x96, 0x3c, 0x38, 0x47,
- 0xa8, 0x20, 0xbd, 0x45, 0x1f, 0xbe, 0x9f, 0xcf, 0x1a, 0x1f, 0x0f, 0x3b,
- 0x32, 0x75, 0xd7, 0x56, 0x15, 0xe5, 0xf9, 0xdb, 0xd6, 0x60, 0xc0, 0x83,
- 0x19, 0x48, 0x58, 0x97, 0x3a, 0x77, 0x1a, 0xf8, 0x1c, 0xc6, 0x5a, 0x68,
- 0x81, 0xf2, 0xe9, 0xbd, 0x04, 0x22, 0xa4, 0x3e, 0x7c, 0xcc, 0x67, 0x6f,
- 0x5e, 0x71, 0x06, 0x99, 0x37, 0xf1, 0x89, 0x11, 0x6f, 0x2d, 0x04, 0x2f,
- 0x85, 0x22, 0x95, 0xdd, 0xf9, 0xf8, 0x27, 0xad, 0xd9, 0x5c, 0x2c, 0xee,
- 0x31, 0xcb, 0xbb, 0x46, 0x68, 0x45, 0xa7, 0x7f, 0xf5, 0x6f, 0xf2, 0x4e,
- 0xa3, 0x0c, 0x95, 0x62, 0x4c, 0x07, 0x14, 0xa8, 0x9f, 0x68, 0xd5, 0xa6,
- 0x93, 0x32, 0xb8, 0xae, 0x74, 0xd8, 0x56, 0xdd, 0x2e, 0x00, 0x36, 0x0d,
- 0x70, 0x58, 0x9b, 0xe3, 0x0c, 0x41, 0x60, 0x0b, 0x4e, 0x7d, 0x7d, 0x5d,
- 0x38, 0xe7, 0x18, 0xb1, 0x9d, 0x45, 0xb3, 0x2a, 0x72, 0x96, 0x58, 0x92,
- 0xb7, 0xe4, 0xf0, 0xf7, 0x06, 0x3d, 0xd4, 0x65, 0xc8, 0xe7, 0x1d, 0x93,
- 0x19, 0xfc, 0xf2, 0xd9, 0x44, 0xae, 0xd7, 0x64, 0xfd, 0x92, 0x81, 0x30,
- 0xd8, 0x8f, 0xb5, 0x2e, 0x03, 0x10, 0x9c, 0x18, 0x21, 0x2e, 0xba, 0x20,
- 0x98, 0xaf, 0x99, 0x22, 0x29, 0x4a, 0xb5, 0x8b, 0x8c, 0x75, 0x46, 0x72,
- 0xb1, 0x4a, 0x32, 0x23, 0x5d, 0x2e, 0x26, 0x08, 0xca, 0x90, 0x70, 0xd4,
- 0x7f, 0x67, 0x50, 0xec, 0xf2, 0x3e, 0xd9, 0xd9, 0xed, 0x27, 0xbb, 0xdb,
- 0x3b, 0xbb, 0x1d, 0x73, 0x58, 0xff, 0x77, 0x0e, 0x8a, 0xda, 0xc5, 0xd7,
- 0xeb, 0x9f, 0x3a, 0x0b, 0x9f, 0xcf, 0x80, 0x9b, 0x44, 0x33, 0x7f, 0x89,
- 0xf9, 0xb0, 0x7f, 0x16, 0x40, 0xcc, 0x28, 0x95, 0x0c, 0x38, 0x3b, 0x5c,
- 0x5b, 0x62, 0x24, 0xb4, 0x12, 0x9b, 0xae, 0x74, 0xd8, 0x04, 0x95, 0x74,
- 0xa4, 0x5a, 0x2d, 0x22, 0x5f, 0x9c, 0xa5, 0x34, 0x2d, 0x51, 0x3f, 0xb4,
- 0xb9, 0x47, 0x79, 0x6d, 0xdb, 0xc2, 0xa1, 0x35, 0xbc, 0x37, 0x44, 0xef,
- 0xaf, 0x8f, 0x0e, 0x2e, 0x0c, 0xef, 0xf0, 0x92, 0x85, 0xa7, 0xf2, 0xfe,
- 0xd3, 0x8a, 0x31, 0x3e, 0xf8, 0xcc, 0x64, 0xef, 0x3a, 0x23, 0x31, 0x7a,
- 0x3e, 0x5a, 0x5e, 0xed, 0xfd, 0x25, 0x2d, 0xaf, 0x8a, 0xf9, 0x63, 0xcf,
- 0x4f, 0x90, 0x50, 0xb6, 0x47, 0x1c, 0x6a, 0xe7, 0xc5, 0xce, 0x13, 0xe4,
- 0x7f, 0x4f, 0x73, 0x14, 0x04, 0x62, 0x06, 0xd1, 0x9b, 0xf5, 0x04, 0x60,
- 0x03, 0x69, 0x12, 0x0e, 0x55, 0x63, 0x3e, 0xe9, 0xc9, 0x75, 0x9f, 0x86,
- 0xcf, 0x4e, 0xf4, 0x59, 0x49, 0x3d, 0xef, 0x69, 0xae, 0x42, 0x8f, 0xd3,
- 0x34, 0x97, 0x8b, 0x5e, 0x13, 0x22, 0xfe, 0x91, 0xb9, 0x72, 0x17, 0xae,
- 0xf6, 0xe4, 0x81, 0x03, 0xbe, 0x47, 0x06, 0x51, 0x99, 0xa5, 0x37, 0xbe,
- 0x76, 0xb2, 0x47, 0xdf, 0x30, 0x97, 0xc7, 0xd9, 0x9b, 0x03, 0x41, 0x30,
- 0xb5, 0x7c, 0x29, 0x2c, 0x75, 0xe2, 0x4c, 0x53, 0x9b, 0x3c, 0xca, 0x47,
- 0xfa, 0xe7, 0xdc, 0x86, 0xbd, 0xc9, 0xe8, 0x13, 0x1e, 0xa2, 0x73, 0x27,
- 0x60, 0x71, 0xfb, 0xcd, 0xd2, 0x3b, 0xac, 0xa8, 0xa1, 0x7e, 0x88, 0x15,
- 0x4a, 0xde, 0x90, 0x42, 0xb4, 0xe2, 0x71, 0xe0, 0xa1, 0x59, 0xf9, 0x69,
- 0xb3, 0xee, 0xd0, 0xb8, 0xb9, 0xc8, 0xeb, 0xeb, 0xfd, 0xd3, 0x40, 0xd1,
- 0x85, 0x22, 0xe9, 0x8d, 0x7a, 0xfc, 0x1c, 0x2b, 0x3a, 0xa8, 0xc3, 0xae,
- 0xd5, 0x98, 0xfa, 0x5e, 0x45, 0xa9, 0xc1, 0x27, 0x59, 0x36, 0x42, 0x80,
- 0x7c, 0xa1, 0xf7, 0x09, 0xec, 0x4f, 0xa8, 0x66, 0x30, 0x9d, 0xa4, 0x70,
- 0x84, 0xea, 0x2d, 0x04, 0x99, 0x0b, 0x6d, 0xe5, 0x1a, 0x0d, 0x45, 0x7b,
- 0xf3, 0x31, 0xd1, 0x24, 0x0e, 0xcd, 0x56, 0xd1, 0x7a, 0x23, 0x78, 0x8c,
- 0xb3, 0x92, 0xef, 0x6d, 0x02, 0xc2, 0x9f, 0x69, 0xf0, 0x69, 0x75, 0x43,
- 0xac, 0x54, 0x1c, 0xf8, 0xd4, 0x7b, 0xae, 0x2e, 0x70, 0x36, 0xfa, 0xe4,
- 0x12, 0x48, 0xc3, 0xe6, 0x27, 0xe0, 0x20, 0x35, 0x36, 0x4c, 0xae, 0x20,
- 0xd6, 0x38, 0xa7, 0x55, 0x26, 0xa8, 0x85, 0xc9, 0xc5, 0x5d, 0x21, 0x2a,
- 0x46, 0x65, 0xe1, 0xb5, 0x12, 0x8a, 0x5a, 0x2d, 0x73, 0x91, 0x22, 0x69,
- 0xf3, 0xc0, 0x0f, 0x82, 0x2a, 0xb2, 0xeb, 0xce, 0xf2, 0xf5, 0xda, 0xf9,
- 0x3d, 0xcf, 0x5f, 0x7f, 0x9b, 0x70, 0x3e, 0x3d, 0xf7, 0x71, 0xc0, 0x78,
- 0xfe, 0x1c, 0xc2, 0x30, 0x83, 0xf6, 0xf7, 0xf5, 0x92, 0xcf, 0xfb, 0xc1,
- 0x75, 0xba, 0x60, 0x05, 0x68, 0x67, 0x9b, 0xcd, 0x25, 0xdf, 0x5b, 0x66,
- 0x1e, 0x1f, 0x54, 0xab, 0x72, 0x5f, 0xad, 0x07, 0x96, 0x94, 0x09, 0x17,
- 0xa9, 0x67, 0x0d, 0xa8, 0x69, 0xa4, 0xa5, 0xeb, 0xb3, 0xda, 0x12, 0x14,
- 0xff, 0x8a, 0x48, 0xa3, 0xac, 0x26, 0x37, 0x5b, 0x63, 0xfa, 0xe7, 0xc9,
- 0xf6, 0x16, 0x80, 0x34, 0x6b, 0xd8, 0x34, 0x99, 0x26, 0x77, 0x77, 0x9f,
- 0x3d, 0xeb, 0x27, 0xeb, 0x6c, 0x65, 0xb4, 0x0e, 0xf8, 0x48, 0xd0, 0xc9,
- 0x5a, 0xef, 0x2a, 0xa7, 0xbb, 0x55, 0x5e, 0x8e, 0xf9, 0x7f, 0xfc, 0x9a,
- 0x55, 0x91, 0xbc, 0xd0, 0xac, 0x1b, 0xac, 0xc3, 0x3c, 0xc4, 0xc6, 0x11,
- 0xb2, 0xe2, 0xef, 0x8e, 0x9c, 0x1d, 0x89, 0x9d, 0x46, 0x8b, 0xac, 0x58,
- 0x98, 0x77, 0x78, 0xa6, 0xf5, 0x41, 0xd0, 0x7d, 0xe0, 0x52, 0x83, 0x3f,
- 0x5f, 0xc2, 0xe1, 0x14, 0x04, 0xa1, 0x5a, 0x8e, 0x06, 0x9a, 0x0d, 0x2c,
- 0x5a, 0x65, 0x4e, 0x27, 0x97, 0xfe, 0x9c, 0x9a, 0xb9, 0x3e, 0xe2, 0xc8,
- 0x5f, 0x25, 0xeb, 0x4a, 0x5b, 0xfc, 0x63, 0x08, 0xe7, 0x6e, 0x36, 0xe6,
- 0x69, 0x14, 0xaf, 0xf4, 0x8f, 0x7f, 0xfb, 0x37, 0x6a, 0xf6, 0xdf, 0xb8,
- 0x95, 0x57, 0x7f, 0xa8, 0xea, 0xeb, 0xe0, 0x99, 0x75, 0x25, 0xf8, 0x23,
- 0xef, 0xda, 0x46, 0xb8, 0x1a, 0x60, 0x66, 0x91, 0xb4, 0xf6, 0xf6, 0x58,
- 0x39, 0x72, 0x3f, 0x98, 0x5f, 0x8e, 0x74, 0x42, 0x31, 0x92, 0xba, 0x68,
- 0x91, 0xaf, 0xd8, 0xed, 0x9c, 0x71, 0x1a, 0x3a, 0x5d, 0x24, 0x40, 0x11,
- 0xdc, 0x34, 0x11, 0xe3, 0xf0, 0xdd, 0x77, 0x47, 0x67, 0x27, 0xef, 0xde,
- 0x1e, 0xbe, 0xbb, 0x48, 0xbe, 0xdb, 0x3f, 0x3b, 0xda, 0xff, 0xea, 0x58,
- 0xb3, 0xdd, 0x79, 0x0a, 0x1c, 0xe4, 0x23, 0xb2, 0x77, 0x0b, 0x05, 0x36,
- 0x48, 0x44, 0xea, 0xac, 0x1d, 0xd2, 0xaa, 0x8a, 0xfc, 0x41, 0x21, 0xcc,
- 0xa1, 0x89, 0x7c, 0x40, 0x19, 0xa4, 0x3e, 0x0b, 0x9f, 0x1f, 0xac, 0x22,
- 0x12, 0x2b, 0x4f, 0xf7, 0x41, 0xfe, 0x34, 0xc7, 0x1f, 0x31, 0x95, 0x1a,
- 0x7f, 0xf2, 0xb5, 0x00, 0x5d, 0x71, 0x8d, 0xaf, 0x25, 0x05, 0xdf, 0x2a,
- 0x8d, 0xd8, 0xab, 0xd8, 0x43, 0xb9, 0x5c, 0xfc, 0x18, 0xf6, 0x8f, 0x8f,
- 0x7d, 0x57, 0x0f, 0x17, 0xa1, 0x51, 0xf8, 0x25, 0x49, 0xde, 0x42, 0xa3,
- 0xec, 0x18, 0xbc, 0x2a, 0x3c, 0x1e, 0xfb, 0xfc, 0x3e, 0x84, 0x5e, 0xe7,
- 0xce, 0x68, 0x3b, 0x36, 0x04, 0x37, 0x83, 0xbd, 0xc4, 0x74, 0x80, 0xf2,
- 0xea, 0xa6, 0x9f, 0xf4, 0xfe, 0xd0, 0xd3, 0x3a, 0xe2, 0x00, 0x0b, 0x96,
- 0x12, 0x37, 0x9b, 0x7e, 0x50, 0xef, 0x4e, 0xfc, 0x98, 0xd4, 0xf1, 0xe9,
- 0x06, 0xe0, 0x5e, 0xf4, 0x6e, 0xeb, 0xca, 0xe4, 0x19, 0xc4, 0x8b, 0xfa,
- 0xc7, 0xb5, 0x0e, 0x84, 0x83, 0x03, 0x50, 0x1a, 0x65, 0xc7, 0x56, 0xe7,
- 0xbb, 0xd0, 0xda, 0xd2, 0x71, 0x80, 0x09, 0x8d, 0xb9, 0xce, 0xd9, 0xd4,
- 0xe1, 0x6a, 0x73, 0x99, 0x35, 0x90, 0x96, 0x9a, 0x6d, 0x7a, 0xea, 0x4e,
- 0x5c, 0x56, 0xca, 0x41, 0x41, 0x55, 0x1f, 0xb7, 0xac, 0xd4, 0x0d, 0x7c,
- 0x8c, 0x9c, 0x0f, 0x50, 0xe6, 0x13, 0xc5, 0x18, 0xec, 0xa4, 0x8a, 0x21,
- 0x5c, 0x53, 0x67, 0x07, 0x80, 0x64, 0x9f, 0x73, 0x51, 0x46, 0x5f, 0x4a,
- 0x03, 0xb1, 0xc3, 0xc4, 0x45, 0x4a, 0x4e, 0xc8, 0x9b, 0xab, 0x10, 0x82,
- 0x78, 0x5c, 0xc8, 0xe8, 0xe9, 0x55, 0x61, 0xf2, 0x77, 0xea, 0x9c, 0xe6,
- 0xae, 0xe0, 0x58, 0x20, 0xd3, 0x3b, 0xe0, 0x30, 0x67, 0xb2, 0x84, 0x7b,
- 0xdd, 0x1c, 0x04, 0x1c, 0x5e, 0xc6, 0x5b, 0x6e, 0x05, 0xa4, 0xab, 0x20,
- 0x35, 0xdb, 0x67, 0x2f, 0x30, 0x2f, 0x91, 0x20, 0x7d, 0x43, 0xf2, 0x02,
- 0x7a, 0x9a, 0xa5, 0x72, 0x23, 0xd0, 0x11, 0xc3, 0xe2, 0x07, 0xd1, 0xa4,
- 0xc6, 0xac, 0xa2, 0x49, 0xb3, 0x5d, 0xd3, 0xe9, 0x99, 0x72, 0x02, 0x99,
- 0x71, 0xa2, 0x34, 0x19, 0xe5, 0x57, 0x02, 0x09, 0xc0, 0xf9, 0xe7, 0x4c,
- 0x25, 0x40, 0x78, 0x23, 0xc5, 0x9e, 0xb7, 0x0a, 0xf8, 0x6d, 0x90, 0xdd,
- 0xaf, 0x8b, 0x69, 0x08, 0x32, 0x66, 0x33, 0xa9, 0xb4, 0x94, 0x9a, 0x99,
- 0x3e, 0xe1, 0xfa, 0x58, 0xf2, 0x3a, 0x5a, 0x34, 0x9a, 0xa2, 0x93, 0x6b,
- 0x6c, 0x1e, 0xdb, 0xd4, 0x01, 0x95, 0x38, 0x47, 0x26, 0x90, 0xa5, 0x52,
- 0x63, 0x1d, 0x2c, 0x6e, 0x99, 0xb9, 0x05, 0xec, 0x68, 0x5c, 0xe6, 0x71,
- 0xc3, 0xc1, 0x8b, 0x73, 0x2b, 0x63, 0x01, 0x68, 0x65, 0xa2, 0x17, 0x8f,
- 0x72, 0xb3, 0x1e, 0x90, 0x6e, 0x96, 0x42, 0x67, 0x11, 0x4d, 0xf0, 0xa0,
- 0x69, 0xa5, 0x36, 0x02, 0xc6, 0x33, 0x27, 0x12, 0x91, 0xc7, 0x44, 0x81,
- 0xd4, 0xbf, 0x06, 0xae, 0x94, 0x99, 0xfa, 0x9d, 0x37, 0x7d, 0xdc, 0x81,
- 0x48, 0x01, 0x4c, 0xad, 0x63, 0x2d, 0x26, 0x09, 0x0f, 0x3d, 0x57, 0xc2,
- 0x04, 0x1e, 0x54, 0xc3, 0xf6, 0x98, 0x58, 0xbe, 0xcd, 0x74, 0x1a, 0xe0,
- 0x8b, 0x8b, 0x39, 0x22, 0x8d, 0x64, 0x0f, 0x76, 0x0e, 0x0d, 0x85, 0x03,
- 0x48, 0xe4, 0x8f, 0x60, 0x11, 0x07, 0x13, 0xd1, 0x98, 0x72, 0x96, 0xce,
- 0x5a, 0x26, 0xcd, 0x80, 0xa1, 0x99, 0x77, 0x3c, 0xbc, 0x98, 0xb4, 0x9c,
- 0x46, 0x9e, 0xce, 0x44, 0x76, 0xf4, 0xd4, 0x37, 0xbb, 0x97, 0xa8, 0xc3,
- 0xb5, 0xb5, 0x83, 0xf7, 0xe7, 0x17, 0x27, 0x6f, 0x93, 0x93, 0xf7, 0x17,
- 0xa7, 0xef, 0x2f, 0xf4, 0xe6, 0x1a, 0x49, 0xcc, 0xb6, 0x44, 0x2e, 0x88,
- 0x10, 0x60, 0x9b, 0x39, 0x53, 0xff, 0x3e, 0x42, 0x4c, 0x0a, 0xa0, 0x0a,
- 0x06, 0x80, 0x42, 0x2e, 0x27, 0x0b, 0x50, 0x5b, 0x02, 0x57, 0x8c, 0x25,
- 0xbf, 0xa3, 0x25, 0x47, 0x3e, 0x2d, 0x0c, 0x79, 0x96, 0xe2, 0x05, 0xb5,
- 0xc7, 0xce, 0x5a, 0xb3, 0x54, 0xcd, 0x7d, 0x53, 0x8d, 0x81, 0x73, 0xbe,
- 0x09, 0xe0, 0x14, 0x56, 0xcc, 0x14, 0xdb, 0x8e, 0x37, 0xfd, 0x84, 0x21,
- 0x9d, 0x5a, 0x6f, 0xd3, 0x0c, 0xd0, 0x16, 0x55, 0x8b, 0x50, 0xa3, 0x66,
- 0x62, 0x61, 0x98, 0xdf, 0x58, 0x17, 0x34, 0xc3, 0x6b, 0x17, 0x11, 0xcf,
- 0x51, 0x44, 0x88, 0x04, 0x94, 0x00, 0x0a, 0x0e, 0xb9, 0x13, 0x8d, 0x81,
- 0xf4, 0x40, 0x76, 0x59, 0x44, 0xb7, 0xec, 0x5d, 0xd2, 0xfb, 0x3e, 0x0b,
- 0x1b, 0xfc, 0xfd, 0x7f, 0x70, 0xda, 0xe6, 0x07, 0xfb, 0xe4, 0xef, 0xd2,
- 0xe5, 0x4f, 0xf3, 0x1e, 0x02, 0xe8, 0x9a, 0x9e, 0xf2, 0x6f, 0x0f, 0xcf,
- 0xbe, 0x3a, 0x3c, 0x3b, 0x39, 0x07, 0x3f, 0x30, 0x73, 0x57, 0x4c, 0xeb,
- 0x37, 0x59, 0x39, 0xca, 0xca, 0x42, 0xcb, 0x68, 0xd9, 0x5f, 0xcf, 0xb6,
- 0xbe, 0x3e, 0x3f, 0xdf, 0x3f, 0x3d, 0x72, 0x85, 0x6a, 0x5c, 0x02, 0x99,
- 0xa8, 0x48, 0x73, 0x49, 0x71, 0xe4, 0xf9, 0xdb, 0x2b, 0x44, 0x17, 0xe3,
- 0x1b, 0x09, 0x2c, 0x8e, 0x7c, 0xd2, 0x66, 0x57, 0x67, 0x67, 0xb4, 0xe6,
- 0x15, 0x72, 0xc3, 0x06, 0x04, 0x15, 0x82, 0xcd, 0x0b, 0x2a, 0x3c, 0xfb,
- 0x02, 0xfa, 0x2e, 0x02, 0xef, 0xa6, 0x1c, 0x0d, 0x88, 0xda, 0x6f, 0xac,
- 0x6e, 0xb3, 0xe4, 0x41, 0x10, 0xab, 0x94, 0x00, 0x69, 0x6f, 0x6b, 0x20,
- 0x99, 0x2e, 0xaf, 0xb7, 0x6e, 0xf8, 0x7c, 0x70, 0x11, 0x95, 0xe9, 0x50,
- 0xb8, 0xbb, 0x1c, 0x28, 0x8b, 0x7a, 0x65, 0x16, 0xfb, 0x10, 0x38, 0x05,
- 0xf5, 0xe6, 0x2a, 0x1f, 0x8a, 0xbd, 0x8b, 0x3e, 0x79, 0xea, 0x50, 0xba,
- 0xc2, 0x32, 0xe2, 0x97, 0x24, 0x80, 0x2f, 0xee, 0x26, 0x7a, 0x89, 0x00,
- 0xa4, 0x7a, 0x2e, 0xee, 0x09, 0xe1, 0xe1, 0x6d, 0x07, 0x15, 0x57, 0x67,
- 0x44, 0xc2, 0x86, 0x86, 0xa3, 0x27, 0xa3, 0x69, 0x3a, 0xbf, 0xc1, 0x6d,
- 0x86, 0xfb, 0x89, 0x55, 0x4e, 0xc3, 0x9e, 0xe2, 0xaa, 0x99, 0xf0, 0x47,
- 0x2a, 0x1c, 0x04, 0x84, 0xc0, 0x29, 0x33, 0xb7, 0x7b, 0xb1, 0xe5, 0x3b,
- 0x88, 0xad, 0xc0, 0xf3, 0x86, 0xe3, 0xe4, 0x17, 0x81, 0x4d, 0x47, 0x87,
- 0xc7, 0x74, 0x31, 0xb9, 0x24, 0x13, 0xa8, 0xe8, 0xd9, 0x94, 0x4d, 0xc1,
- 0x16, 0x11, 0x24, 0x79, 0x95, 0x39, 0x18, 0x99, 0x70, 0x0f, 0xc3, 0x4f,
- 0x87, 0xff, 0x08, 0xe4, 0x82, 0xf4, 0xd1, 0xca, 0x55, 0x19, 0x51, 0xce,
- 0x2d, 0x4c, 0x0c, 0xe0, 0xa0, 0xbe, 0xe8, 0x48, 0x58, 0xfe, 0x46, 0xc3,
- 0xed, 0x0e, 0x7c, 0x3c, 0x90, 0xab, 0x07, 0x26, 0x83, 0xf0, 0x62, 0xa9,
- 0xf3, 0x30, 0x36, 0xb2, 0x5b, 0x56, 0x6e, 0x93, 0xbc, 0xde, 0x65, 0x04,
- 0x10, 0x4c, 0xb3, 0x89, 0xfa, 0x3b, 0x1c, 0x1c, 0x90, 0x85, 0x2c, 0x37,
- 0xc3, 0x84, 0x6d, 0xe0, 0x12, 0x0d, 0xc0, 0xc6, 0xdb, 0x69, 0x6d, 0x4e,
- 0x43, 0x84, 0xb8, 0xea, 0x0d, 0x5c, 0x4f, 0xc0, 0x72, 0xca, 0x06, 0x52,
- 0x6d, 0x18, 0x9d, 0x2b, 0x88, 0x15, 0xb0, 0x0d, 0x4a, 0xbe, 0x06, 0xb4,
- 0x18, 0x27, 0xdf, 0x0e, 0xde, 0xf1, 0x75, 0x51, 0x0c, 0x46, 0x4b, 0xe8,
- 0x65, 0x41, 0x9d, 0x2e, 0xc9, 0xe1, 0x24, 0x75, 0x4d, 0xc0, 0xd4, 0xf0,
- 0x3d, 0xfb, 0xa3, 0x90, 0x1d, 0x2f, 0x2e, 0x2a, 0xa4, 0x4b, 0x36, 0x81,
- 0x76, 0x1c, 0xbc, 0x8a, 0xe4, 0x20, 0xf8, 0x02, 0xc2, 0x6e, 0x82, 0xba,
- 0xc9, 0x2e, 0x5a, 0x70, 0xae, 0x55, 0x5e, 0xe1, 0x59, 0x69, 0x46, 0x5c,
- 0xd7, 0x0e, 0xef, 0xfe, 0x02, 0x62, 0x42, 0xa6, 0x28, 0xf0, 0x16, 0x4a,
- 0x6d, 0x89, 0x1b, 0xb7, 0x35, 0x57, 0x96, 0x12, 0x64, 0x88, 0x74, 0x2a,
- 0x65, 0x3a, 0x56, 0x5e, 0x25, 0x72, 0x98, 0xea, 0x8b, 0x8b, 0x3f, 0x9f,
- 0x1e, 0xbe, 0xb2, 0x37, 0x1f, 0xda, 0x33, 0x01, 0x4c, 0x43, 0xcc, 0x4c,
- 0xa6, 0x00, 0xa5, 0x41, 0x6d, 0x6c, 0x22, 0xb2, 0x41, 0x6d, 0xbe, 0x7c,
- 0xe9, 0x66, 0x90, 0xfc, 0xf0, 0xfa, 0xe8, 0xfc, 0xf4, 0xf8, 0xe4, 0xe0,
- 0xd5, 0xcb, 0x1f, 0x8c, 0x25, 0x7f, 0xc1, 0x2e, 0x02, 0x91, 0xd3, 0xdc,
- 0x67, 0x1e, 0xd0, 0x41, 0xdf, 0x7b, 0x77, 0xf8, 0xfd, 0x07, 0xd2, 0x0e,
- 0x5e, 0x31, 0xac, 0x7b, 0xff, 0x36, 0x9d, 0xea, 0x4b, 0xac, 0x62, 0x75,
- 0xc8, 0x76, 0xc3, 0x26, 0x02, 0x5f, 0x7b, 0x61, 0x5d, 0x79, 0x52, 0x9f,
- 0xa7, 0x70, 0x6f, 0x61, 0x74, 0x41, 0x25, 0xaa, 0xb4, 0x91, 0x56, 0xdb,
- 0x51, 0x4c, 0xd8, 0x5f, 0xff, 0xbd, 0x5a, 0x62, 0x2a, 0x39, 0x84, 0x20,
- 0xf4, 0xcc, 0x23, 0x6e, 0x55, 0xbf, 0xf1, 0xf1, 0xbc, 0x0a, 0x9f, 0x5c,
- 0x72, 0x00, 0x8b, 0xc3, 0x9f, 0xd4, 0x0a, 0xd5, 0xf0, 0x79, 0x2b, 0x48,
- 0xa5, 0x22, 0x2f, 0x71, 0x08, 0xad, 0x45, 0xd3, 0x1b, 0x1f, 0x53, 0x11,
- 0xc6, 0x8d, 0x25, 0xb5, 0x5a, 0xb9, 0x28, 0xc8, 0x73, 0x7a, 0x78, 0x76,
- 0x7e, 0x74, 0x7e, 0xc1, 0x6a, 0x94, 0x16, 0x6e, 0x54, 0x1b, 0xb4, 0x55,
- 0xd5, 0x04, 0x66, 0x43, 0x13, 0x6f, 0x34, 0x2c, 0x16, 0xd2, 0x38, 0xd1,
- 0x8e, 0xcd, 0x35, 0x93, 0x38, 0xf9, 0x06, 0x90, 0xcc, 0x50, 0x16, 0x44,
- 0x05, 0x35, 0x37, 0xbd, 0xb4, 0x03, 0x5c, 0x28, 0x69, 0xb4, 0x6a, 0x66,
- 0xa0, 0xde, 0x0d, 0x76, 0x67, 0x9a, 0x8f, 0x82, 0x4a, 0xd9, 0x4d, 0x17,
- 0x32, 0x47, 0x27, 0x28, 0x42, 0x47, 0x78, 0x84, 0xcc, 0x1e, 0xee, 0x33,
- 0xa3, 0xb5, 0x96, 0xaf, 0x5e, 0x6b, 0x9a, 0xd5, 0x18, 0xe6, 0xaf, 0x3a,
- 0x45, 0x15, 0xca, 0x49, 0x58, 0xb3, 0x1c, 0x9f, 0x06, 0x41, 0xa8, 0x0a,
- 0xfa, 0x04, 0xbc, 0x5a, 0x65, 0xd9, 0xcc, 0x94, 0x73, 0xc9, 0x44, 0x63,
- 0x43, 0x0b, 0x49, 0x2d, 0xc8, 0xac, 0x47, 0x9c, 0x90, 0xce, 0x2c, 0x12,
- 0x41, 0x54, 0x74, 0xbc, 0xe2, 0x14, 0x36, 0x20, 0x6b, 0x4d, 0x58, 0xde,
- 0x82, 0x05, 0x2e, 0xec, 0xcc, 0xae, 0x53, 0x5e, 0xc1, 0xd1, 0x32, 0xac,
- 0x04, 0xe7, 0x46, 0x2f, 0x45, 0x49, 0xb0, 0xf0, 0x88, 0x90, 0x4c, 0x4b,
- 0x40, 0x57, 0xd6, 0x8a, 0x14, 0x6f, 0x8a, 0x8f, 0x86, 0x3b, 0x0e, 0x9b,
- 0x20, 0x3e, 0x46, 0x97, 0x56, 0xad, 0xf4, 0xa1, 0x15, 0x0d, 0x4a, 0x47,
- 0x32, 0xf9, 0x96, 0x99, 0xc5, 0x2d, 0x89, 0x99, 0xa1, 0x62, 0x87, 0xc3,
- 0x7c, 0xec, 0x2e, 0x63, 0x4e, 0x3a, 0x62, 0xff, 0x62, 0xa9, 0x00, 0x49,
- 0xc4, 0xfe, 0xd8, 0xb2, 0x8c, 0x7a, 0x93, 0x28, 0xc4, 0xcc, 0x5e, 0x37,
- 0x03, 0xcf, 0xf3, 0x61, 0xdc, 0xb2, 0xdc, 0x01, 0x59, 0x89, 0x79, 0xfd,
- 0x5e, 0x3b, 0x74, 0x09, 0xf2, 0xb6, 0x59, 0x7d, 0xc9, 0xb7, 0x4a, 0x91,
- 0xde, 0x63, 0x76, 0xdd, 0x20, 0x4d, 0xb4, 0xd2, 0xe4, 0x5b, 0xe7, 0x9e,
- 0x06, 0xc3, 0x6b, 0x14, 0xdd, 0xe5, 0xd9, 0x35, 0x5c, 0x83, 0x24, 0x5f,
- 0x2e, 0x50, 0x41, 0x69, 0xac, 0x10, 0xf2, 0x08, 0xda, 0x75, 0x0d, 0xda,
- 0x25, 0xe2, 0x17, 0x8b, 0x56, 0xf5, 0xed, 0xfb, 0xe3, 0x8b, 0xa3, 0xd3,
- 0xd0, 0xfd, 0x98, 0x7c, 0x7f, 0x74, 0xf1, 0x0d, 0x49, 0xed, 0xe7, 0x47,
- 0xef, 0xbe, 0x3e, 0x66, 0x1f, 0xcf, 0xdb, 0xb7, 0xfb, 0xef, 0x18, 0x5d,
- 0xe0, 0x1d, 0x22, 0x1b, 0xf7, 0xa1, 0x38, 0x30, 0x3b, 0xa2, 0x25, 0x66,
- 0xda, 0xe1, 0xbc, 0xf3, 0x7e, 0xec, 0x6a, 0x68, 0x1d, 0x3f, 0x29, 0xaa,
- 0x3c, 0x6f, 0x2e, 0xd2, 0x1a, 0x4a, 0x64, 0x43, 0x33, 0xb8, 0x67, 0xc3,
- 0x0e, 0x8e, 0x2d, 0x2b, 0x5b, 0xbc, 0xd0, 0x6d, 0xec, 0x78, 0xe4, 0x38,
- 0x8a, 0x84, 0x0e, 0x37, 0xba, 0xdc, 0xdd, 0xde, 0x7d, 0x81, 0x1d, 0x75,
- 0xc8, 0xb3, 0xd0, 0x63, 0x48, 0x66, 0x9a, 0xab, 0x5e, 0x23, 0xf7, 0x65,
- 0x33, 0xe7, 0x80, 0x7a, 0xc4, 0x90, 0x10, 0x47, 0x50, 0x78, 0x8b, 0x20,
- 0x6b, 0x9c, 0xac, 0x34, 0x9f, 0x1d, 0x87, 0x17, 0xea, 0xb0, 0x51, 0x72,
- 0xcc, 0xc2, 0x03, 0xaf, 0x8a, 0xcc, 0x9f, 0xdc, 0xc1, 0x89, 0x35, 0x63,
- 0xe6, 0x5f, 0xa8, 0x61, 0x72, 0xb9, 0x0c, 0x98, 0xaf, 0x0d, 0x68, 0x4b,
- 0x36, 0x5d, 0x99, 0x21, 0x35, 0x9f, 0xed, 0x89, 0x58, 0xe9, 0xb0, 0x95,
- 0xad, 0x3a, 0x1f, 0x35, 0x67, 0x2d, 0x6b, 0x28, 0x0a, 0xe2, 0xb1, 0x35,
- 0xad, 0x49, 0xe7, 0x0c, 0x6e, 0x69, 0x8f, 0x35, 0xb2, 0xb2, 0xe5, 0xbe,
- 0x3b, 0x31, 0xd3, 0x9e, 0xa5, 0xb5, 0xb9, 0xba, 0x6f, 0xde, 0x73, 0x8a,
- 0xca, 0x6a, 0x45, 0x31, 0xcc, 0x3e, 0x66, 0xec, 0xe4, 0xe4, 0x5f, 0xff,
- 0xb2, 0xb8, 0x0a, 0x33, 0xde, 0xa4, 0xae, 0xf4, 0xa2, 0x6b, 0x67, 0x15,
- 0xc8, 0x59, 0xc4, 0x22, 0xad, 0x65, 0xd7, 0x18, 0x81, 0x16, 0xa8, 0xdb,
- 0x59, 0xd5, 0xa1, 0x7e, 0xbf, 0x1b, 0x7f, 0xbf, 0x2b, 0x66, 0xc7, 0xa3,
- 0xd3, 0xdb, 0xe7, 0x0e, 0x00, 0x55, 0xf2, 0xb8, 0x43, 0xf1, 0xcd, 0x84,
- 0x02, 0xa6, 0x30, 0x7e, 0x54, 0xee, 0x9c, 0x54, 0x78, 0xa2, 0xd8, 0xfe,
- 0x39, 0x82, 0x6c, 0x59, 0x22, 0x3f, 0x15, 0x8f, 0xc0, 0x4c, 0x2c, 0x61,
- 0xbf, 0x08, 0xb2, 0x03, 0x9f, 0xe2, 0xeb, 0x8a, 0x1a, 0xa4, 0xef, 0x9f,
- 0xba, 0x58, 0x7c, 0xcf, 0xd3, 0x50, 0xa3, 0x4d, 0xb3, 0xa1, 0x06, 0xf9,
- 0xe2, 0xd6, 0x8a, 0xfc, 0xd2, 0xaf, 0xcf, 0x5d, 0x7d, 0x9e, 0xaa, 0xe1,
- 0xa3, 0x6a, 0x80, 0x0d, 0x1b, 0xf3, 0xc7, 0xe0, 0x10, 0x16, 0xc9, 0x9c,
- 0xc1, 0x2b, 0x19, 0xad, 0x71, 0x65, 0xcd, 0x80, 0xec, 0xa0, 0x4a, 0x29,
- 0x0c, 0xcc, 0x53, 0x64, 0xc6, 0x82, 0x1f, 0x05, 0xcc, 0x25, 0x04, 0xfa,
- 0xd7, 0x5d, 0xff, 0x71, 0x77, 0x7b, 0x7b, 0x67, 0x6f, 0xe7, 0xf3, 0x17,
- 0xdb, 0x7b, 0x3b, 0x3b, 0x3b, 0xbb, 0x7b, 0x3b, 0x7b, 0x7b, 0xbb, 0xdb,
- 0x3f, 0x6f, 0xb1, 0xfd, 0xe8, 0x36, 0xcf, 0xee, 0xcc, 0x31, 0x25, 0xb9,
- 0x78, 0x20, 0x6b, 0x29, 0xd6, 0xae, 0x1a, 0xbc, 0xea, 0xb9, 0x26, 0xf9,
- 0x38, 0x54, 0x09, 0x09, 0x99, 0x17, 0x04, 0xb9, 0x85, 0xcf, 0x34, 0xc5,
- 0x19, 0x0c, 0x50, 0xae, 0x31, 0xaa, 0xbf, 0x2e, 0x79, 0xa6, 0x23, 0x16,
- 0x07, 0x20, 0xd3, 0x54, 0x2e, 0xaf, 0xef, 0x6a, 0x5a, 0x8c, 0x46, 0xc8,
- 0x5c, 0x70, 0xa9, 0xad, 0xc3, 0x84, 0xa1, 0x54, 0x6f, 0x84, 0x24, 0xd4,
- 0x73, 0x80, 0xa0, 0x42, 0x39, 0xe8, 0x7e, 0x75, 0x44, 0xf0, 0xd2, 0x40,
- 0xea, 0x71, 0xc1, 0x65, 0x05, 0x26, 0xcc, 0x94, 0x68, 0x91, 0x4a, 0x97,
- 0xf2, 0x92, 0x5c, 0x66, 0x9f, 0x6f, 0xef, 0xed, 0x71, 0xe5, 0x8f, 0xdf,
- 0xef, 0xf4, 0x35, 0x1e, 0x34, 0x0c, 0x72, 0xef, 0xbb, 0xeb, 0x49, 0xda,
- 0x60, 0xf5, 0x23, 0x9c, 0xe7, 0x7c, 0x39, 0xcb, 0x4a, 0x52, 0x44, 0xb8,
- 0x76, 0x2c, 0x02, 0x22, 0x61, 0xf4, 0x16, 0x88, 0x35, 0x00, 0xb2, 0xb4,
- 0x82, 0xf1, 0xf9, 0x46, 0x10, 0xa8, 0x58, 0x97, 0x84, 0x2e, 0x70, 0x41,
- 0x7e, 0x8a, 0xae, 0x6d, 0x54, 0xbf, 0x81, 0x1d, 0x5f, 0x52, 0x59, 0x24,
- 0x89, 0x47, 0xee, 0x5b, 0xe5, 0x0c, 0x38, 0x5c, 0x73, 0xa9, 0x68, 0xca,
- 0x8f, 0x8b, 0x0c, 0x0f, 0x8b, 0x49, 0x20, 0xdc, 0x6a, 0xfe, 0xce, 0x8f,
- 0xc1, 0x64, 0x77, 0x9f, 0xed, 0xfc, 0x2c, 0xe1, 0x8a, 0x7c, 0x20, 0xfc,
- 0xaa, 0x69, 0x35, 0xb8, 0x49, 0x98, 0xa1, 0x61, 0x84, 0xb4, 0x91, 0x0d,
- 0xaf, 0x86, 0x26, 0x55, 0xa8, 0xb5, 0xb1, 0x1f, 0x06, 0x8d, 0x0b, 0x4c,
- 0xb9, 0xd4, 0x29, 0x86, 0x9e, 0x66, 0x06, 0x25, 0x33, 0x08, 0x8b, 0x31,
- 0xb3, 0x51, 0xd6, 0x87, 0x6e, 0x98, 0xc3, 0x8b, 0x7d, 0xba, 0x3c, 0xbe,
- 0x8d, 0x15, 0xfd, 0xb7, 0x19, 0x69, 0xe5, 0xbc, 0xd9, 0x1b, 0x38, 0x0f,
- 0xb7, 0x0e, 0x1c, 0x98, 0xd7, 0xee, 0x69, 0xb2, 0xc1, 0x3e, 0x8b, 0x67,
- 0x9f, 0x3f, 0x7b, 0xba, 0x29, 0x95, 0x18, 0xe4, 0xb5, 0x8c, 0xf3, 0x43,
- 0x60, 0x95, 0x54, 0x70, 0x1a, 0x36, 0x27, 0x3b, 0x96, 0xf4, 0xfe, 0xec,
- 0x48, 0x8e, 0xf4, 0xb5, 0x60, 0x08, 0x88, 0xd2, 0xdb, 0x06, 0x93, 0xc3,
- 0x7d, 0x1b, 0x08, 0x19, 0xb3, 0x9c, 0x81, 0x0e, 0x91, 0x7b, 0xcd, 0x17,
- 0xa3, 0xcb, 0xfd, 0xc7, 0x0d, 0x4b, 0x07, 0xb4, 0x40, 0x7d, 0x42, 0x2d,
- 0xfb, 0x84, 0xc1, 0x00, 0x19, 0x91, 0x81, 0x59, 0x95, 0xce, 0x9c, 0x06,
- 0xc6, 0x7a, 0x90, 0xf0, 0x23, 0xe1, 0xfe, 0x2d, 0x30, 0xee, 0x4d, 0xf1,
- 0xf8, 0x43, 0x28, 0x64, 0x32, 0xa4, 0x07, 0x2d, 0x74, 0x94, 0x47, 0xdc,
- 0xc8, 0x46, 0xf3, 0xd2, 0x66, 0x80, 0xe9, 0x64, 0x70, 0x2e, 0xca, 0x8a,
- 0xdc, 0x12, 0x8a, 0x3b, 0xbb, 0x86, 0x65, 0x31, 0x6f, 0x98, 0x7c, 0x34,
- 0x97, 0x1e, 0x39, 0xed, 0x08, 0x39, 0x9e, 0xd1, 0x75, 0x54, 0xde, 0xab,
- 0x84, 0x0d, 0x35, 0xc1, 0x95, 0x53, 0x6b, 0x05, 0x04, 0x08, 0x6a, 0x44,
- 0x18, 0x49, 0xef, 0x40, 0x53, 0x4c, 0x69, 0x6e, 0x0c, 0xa0, 0xc1, 0xf6,
- 0x07, 0x33, 0xfb, 0x2a, 0x88, 0x97, 0x09, 0xd3, 0xcb, 0xec, 0x77, 0x7b,
- 0x2e, 0x08, 0xa5, 0x4c, 0xdb, 0x13, 0x5b, 0x31, 0x34, 0x01, 0xd4, 0x44,
- 0xf8, 0x94, 0xd3, 0x7e, 0x36, 0x30, 0x92, 0xad, 0xad, 0xcd, 0x15, 0xa3,
- 0xd1, 0xaf, 0xbb, 0x7a, 0x3f, 0x05, 0x26, 0x49, 0x90, 0xd1, 0x49, 0x7b,
- 0xde, 0x6c, 0x9c, 0x97, 0x36, 0xaf, 0x78, 0x27, 0x27, 0x1a, 0x17, 0x2b,
- 0x66, 0x54, 0x53, 0xaf, 0x64, 0xf0, 0xc6, 0xbc, 0x9a, 0x93, 0xd0, 0x50,
- 0x1c, 0xc3, 0x88, 0x92, 0xa2, 0xd2, 0xe2, 0xde, 0x1c, 0x26, 0xfb, 0x4c,
- 0x0d, 0x8d, 0x8e, 0x83, 0x21, 0x9b, 0x3d, 0xd7, 0x60, 0xcf, 0x4d, 0x88,
- 0x75, 0xe6, 0xbc, 0x7e, 0xf0, 0xa5, 0x89, 0x79, 0x06, 0x09, 0xe0, 0x8c,
- 0xbd, 0xa3, 0x4c, 0xe0, 0x4f, 0x1c, 0xe7, 0x0c, 0xe0, 0x8c, 0xf3, 0x79,
- 0xa3, 0x4e, 0xa8, 0x36, 0x02, 0x47, 0xb7, 0x9b, 0x04, 0x90, 0x12, 0x4b,
- 0x43, 0xe0, 0x0d, 0x6b, 0x07, 0x02, 0x81, 0x40, 0x83, 0xda, 0x45, 0xb0,
- 0x76, 0x44, 0x2c, 0xde, 0xd6, 0x91, 0x90, 0x57, 0x63, 0x3d, 0xfa, 0x42,
- 0xf1, 0x12, 0xc4, 0x20, 0xf1, 0xb6, 0x74, 0x48, 0x98, 0x61, 0xec, 0x1f,
- 0x1d, 0x73, 0x54, 0xdc, 0x31, 0xa9, 0x78, 0xe7, 0x26, 0x2a, 0x21, 0x4a,
- 0x14, 0xf1, 0x7a, 0xf3, 0x9c, 0xc5, 0xf5, 0xbe, 0xab, 0x37, 0x62, 0xc9,
- 0x52, 0xd0, 0x5b, 0xd8, 0xb9, 0x27, 0xaa, 0xbf, 0x62, 0x04, 0xd2, 0x6e,
- 0x91, 0xbc, 0x54, 0x89, 0xd1, 0x16, 0xf8, 0xbb, 0x8c, 0x4c, 0x0f, 0x47,
- 0x2a, 0x54, 0x6a, 0x61, 0xd3, 0x28, 0x77, 0x54, 0x66, 0xd3, 0xec, 0x56,
- 0xad, 0xab, 0x82, 0x66, 0xfa, 0xb5, 0xfa, 0x30, 0xa5, 0xde, 0x69, 0xed,
- 0x5d, 0xb1, 0x0d, 0x37, 0x29, 0xf7, 0xb9, 0x25, 0x98, 0x30, 0x1e, 0xea,
- 0x83, 0xbb, 0xf7, 0x10, 0xfc, 0xe6, 0x32, 0xe6, 0xf7, 0x06, 0xac, 0xe3,
- 0x6a, 0x68, 0xeb, 0xfb, 0x4a, 0xd1, 0x1c, 0xda, 0xb1, 0xe2, 0x62, 0x2b,
- 0xb4, 0x8a, 0x79, 0x62, 0x7c, 0xef, 0x1b, 0x48, 0xb2, 0x78, 0x0c, 0xf8,
- 0xe2, 0xe9, 0xb3, 0xa1, 0x56, 0x2a, 0xc0, 0x93, 0x42, 0xc6, 0xe5, 0x30,
- 0xfa, 0x92, 0x38, 0x0a, 0xda, 0x28, 0xa6, 0xf4, 0x27, 0xc2, 0xa9, 0x24,
- 0xc0, 0x92, 0x9e, 0x65, 0x90, 0xd7, 0x20, 0xa2, 0x95, 0xfe, 0x94, 0x64,
- 0x08, 0xfd, 0x0b, 0x4d, 0x95, 0x4b, 0x60, 0x09, 0xf7, 0xe5, 0x32, 0x64,
- 0xa7, 0x63, 0x3d, 0x1e, 0xba, 0xd1, 0xab, 0xcf, 0x5f, 0xc6, 0xff, 0xda,
- 0x5c, 0xd2, 0x26, 0x86, 0x14, 0xa5, 0xad, 0xae, 0xec, 0xc2, 0x48, 0x0a,
- 0x1c, 0x7e, 0xb5, 0x64, 0x67, 0x98, 0x2b, 0xdf, 0xc3, 0xa3, 0x98, 0xf1,
- 0x55, 0x94, 0x49, 0x2d, 0x51, 0xd7, 0x38, 0x6b, 0x74, 0x4b, 0xda, 0x5d,
- 0x69, 0xfd, 0xb8, 0xb8, 0xe3, 0x42, 0xa8, 0x97, 0x97, 0xf9, 0x98, 0xab,
- 0xdb, 0x78, 0xcc, 0x60, 0x66, 0xf1, 0xf2, 0xe0, 0xcc, 0x6a, 0x2f, 0xd1,
- 0xdc, 0x92, 0xc5, 0x72, 0x34, 0xa5, 0xbb, 0xda, 0xa2, 0xd9, 0xe9, 0x50,
- 0x61, 0x95, 0x48, 0xd9, 0x42, 0x73, 0xe2, 0xcb, 0x87, 0xbe, 0xd9, 0x8a,
- 0xa0, 0xd6, 0xea, 0xf0, 0x2c, 0x81, 0xcf, 0x50, 0x11, 0x96, 0xc3, 0x8c,
- 0x67, 0xc5, 0xdc, 0x92, 0x61, 0x96, 0x95, 0x80, 0x49, 0x5a, 0x29, 0xf9,
- 0x35, 0xf1, 0x4c, 0xe4, 0x53, 0x85, 0x6c, 0x57, 0xcd, 0x1c, 0x6f, 0x84,
- 0x93, 0x99, 0x0c, 0x16, 0xd7, 0x0b, 0xdb, 0x69, 0x93, 0x87, 0x44, 0x58,
- 0xd2, 0xf4, 0x0b, 0x9c, 0xbc, 0xd3, 0x6f, 0x4e, 0x87, 0xc9, 0x21, 0xb7,
- 0x24, 0x63, 0x52, 0x39, 0x17, 0x26, 0x1a, 0xfa, 0x8e, 0x26, 0x7b, 0xc5,
- 0xf7, 0xd7, 0x49, 0xc9, 0x7f, 0xa1, 0x35, 0xfd, 0x52, 0xac, 0xb2, 0xf8,
- 0xb6, 0xd9, 0x2b, 0x35, 0x64, 0x41, 0xd6, 0xa7, 0xf8, 0x9d, 0x8e, 0x0a,
- 0x49, 0x5f, 0x6e, 0x9b, 0x7c, 0x0f, 0x45, 0xd9, 0x80, 0xde, 0x91, 0x37,
- 0x13, 0x12, 0xca, 0x20, 0x5a, 0x2d, 0xee, 0xb1, 0x7f, 0x01, 0x6f, 0x14,
- 0xf1, 0x53, 0x1a, 0x08, 0x48, 0x4b, 0xc9, 0xcf, 0x85, 0xef, 0xc9, 0xb9,
- 0x2a, 0x05, 0x74, 0xa6, 0xcc, 0x34, 0xd8, 0xb1, 0x50, 0x2f, 0xa9, 0x18,
- 0x34, 0xaa, 0xac, 0x75, 0x5c, 0x03, 0xf5, 0xcd, 0xbe, 0x60, 0xad, 0x9b,
- 0xc7, 0x42, 0x42, 0x0b, 0x6d, 0xc1, 0x70, 0xed, 0xff, 0x06, 0xef, 0x88,
- 0xd8, 0x9f, 0x70, 0x88, 0x02, 0x00,
+ 0x84, 0x99, 0x00, 0x05, 0xdf, 0x31, 0x2a, 0x86, 0x2f, 0x9d, 0x54, 0x12,
+ 0x28, 0xa3, 0x97, 0x2e, 0xc4, 0x32, 0xa0, 0xa5, 0x94, 0x1c, 0xbf, 0x20,
+ 0x66, 0xce, 0x55, 0xb6, 0xe4, 0xdc, 0xf8, 0x29, 0x00, 0xdc, 0xf5, 0x2c,
+ 0x8d, 0xa2, 0xf7, 0x99, 0x94, 0x12, 0x48, 0x58, 0x59, 0x4e, 0x8b, 0xe9,
+ 0x6a, 0xc1, 0xa6, 0x8a, 0x29, 0x1b, 0xc8, 0x70, 0xf1, 0x88, 0x78, 0x50,
+ 0x73, 0xcf, 0x87, 0x03, 0x16, 0xe3, 0x88, 0x18, 0xcc, 0xb5, 0x5f, 0x84,
+ 0xa2, 0x70, 0x00, 0x96, 0x1a, 0xc4, 0x21, 0x15, 0x38, 0xd4, 0x14, 0x65,
+ 0x40, 0xec, 0x19, 0x3c, 0x7a, 0x73, 0x74, 0x7e, 0x7e, 0x74, 0xce, 0xeb,
+ 0x7d, 0xa0, 0xa1, 0x1f, 0x86, 0x5d, 0x61, 0xd0, 0xa9, 0xde, 0xd5, 0x68,
+ 0x61, 0xbf, 0x6d, 0x08, 0x7d, 0x61, 0x85, 0xf1, 0x6c, 0xc6, 0x20, 0xe3,
+ 0xd0, 0x20, 0x04, 0x27, 0x48, 0xea, 0x4e, 0x87, 0xe6, 0x45, 0x84, 0x7d,
+ 0x3b, 0xb7, 0x41, 0x58, 0x87, 0x30, 0x90, 0x2d, 0x7c, 0x0b, 0x85, 0xd6,
+ 0xd9, 0x5c, 0x59, 0x4a, 0xfe, 0x75, 0x52, 0x13, 0x53, 0x47, 0x1a, 0xa9,
+ 0x9b, 0xa8, 0x33, 0x7d, 0xee, 0xec, 0x13, 0x98, 0xf2, 0x25, 0x9f, 0x51,
+ 0xd6, 0x9d, 0xb0, 0x18, 0x65, 0xb5, 0x5a, 0xa6, 0x33, 0x67, 0xed, 0xa5,
+ 0xcf, 0x49, 0xfc, 0x8b, 0xe4, 0x94, 0x97, 0x16, 0xeb, 0x02, 0xaf, 0xa6,
+ 0x19, 0x23, 0x42, 0x6b, 0x5b, 0x03, 0xbf, 0x37, 0x42, 0xb6, 0x9c, 0x04,
+ 0x8d, 0x59, 0xcd, 0xa4, 0x7a, 0x6e, 0xb9, 0xd2, 0x7e, 0x02, 0x2b, 0x23,
+ 0x73, 0x0b, 0x0b, 0xbf, 0x09, 0x39, 0x03, 0xdb, 0xb2, 0x16, 0x3e, 0xde,
+ 0x9d, 0x43, 0xd8, 0xf6, 0x05, 0x06, 0x05, 0x29, 0xa5, 0xc5, 0x7e, 0xf4,
+ 0x63, 0x99, 0x4e, 0x7f, 0xf6, 0x97, 0x07, 0xd2, 0x7f, 0xea, 0x55, 0xd2,
+ 0xb0, 0x74, 0xba, 0x50, 0xaa, 0x0c, 0x4b, 0x2a, 0xf7, 0xfb, 0xf1, 0xd1,
+ 0x79, 0x74, 0xf0, 0x35, 0xa3, 0x00, 0xff, 0x37, 0x37, 0x98, 0x9f, 0xd3,
+ 0xdb, 0x61, 0x43, 0x71, 0xf8, 0x14, 0xdb, 0x24, 0x31, 0x53, 0xb8, 0xe0,
+ 0x72, 0xd5, 0x76, 0x36, 0xb5, 0x4a, 0xd2, 0xfe, 0xba, 0xaf, 0xef, 0xe1,
+ 0x46, 0xf4, 0xe8, 0x2e, 0x7e, 0xca, 0x1e, 0xf2, 0x21, 0x0b, 0x77, 0x51,
+ 0x50, 0x91, 0xc4, 0x25, 0x61, 0x7b, 0xa3, 0xa3, 0x2f, 0x5b, 0x6a, 0xa7,
+ 0xec, 0xd2, 0x41, 0xd4, 0x7f, 0x9b, 0xff, 0x8d, 0x84, 0x81, 0x78, 0xfb,
+ 0xc9, 0x68, 0x27, 0xda, 0xfc, 0x3e, 0xcd, 0x5e, 0x3c, 0xfb, 0x53, 0x74,
+ 0xbc, 0xd5, 0xaf, 0x05, 0xf3, 0x4b, 0x65, 0xc1, 0x49, 0x9c, 0xdd, 0xb8,
+ 0x2d, 0x3b, 0xc5, 0xc9, 0x96, 0xa0, 0x3a, 0xab, 0xca, 0x22, 0x05, 0x90,
+ 0xd7, 0xb6, 0x88, 0xc4, 0x4f, 0xcd, 0x0b, 0x88, 0xbe, 0x73, 0x90, 0xd7,
+ 0xac, 0xe5, 0xd3, 0x53, 0x33, 0x5e, 0xba, 0x17, 0xcf, 0x5a, 0x4d, 0x3c,
+ 0x75, 0x6d, 0xbc, 0x97, 0x36, 0x7e, 0x61, 0x13, 0x7b, 0xa3, 0x9d, 0xbd,
+ 0x68, 0xf3, 0x74, 0xbc, 0xbd, 0xe7, 0x5a, 0x68, 0x37, 0xb1, 0x87, 0x26,
+ 0xf8, 0xa1, 0xfa, 0xcb, 0x4f, 0xb9, 0xff, 0x1f, 0x93, 0xec, 0xe7, 0x68,
+ 0xf3, 0x87, 0xdd, 0x5d, 0x6a, 0xe0, 0x4f, 0xd1, 0xc1, 0xf1, 0x0f, 0xd1,
+ 0xd3, 0x11, 0x35, 0xf6, 0x2e, 0xbe, 0xd5, 0xe6, 0x14, 0xcc, 0x76, 0x8c,
+ 0x46, 0xe8, 0xfb, 0x56, 0x1b, 0xcf, 0x1a, 0x6d, 0x9c, 0x90, 0x5e, 0xf8,
+ 0x91, 0xae, 0x95, 0x9d, 0xd1, 0x93, 0xbd, 0x28, 0x7d, 0xf6, 0xf9, 0x73,
+ 0x6b, 0x48, 0xdb, 0xc0, 0xf7, 0x75, 0x6b, 0xa5, 0xc0, 0xa5, 0x90, 0xa8,
+ 0x73, 0xf4, 0x91, 0x18, 0x1a, 0x58, 0x04, 0x2a, 0x65, 0x5c, 0xc7, 0x85,
+ 0x55, 0xe5, 0xe5, 0x72, 0x07, 0xb4, 0x53, 0x0a, 0x23, 0x9d, 0xc0, 0x6c,
+ 0x49, 0x17, 0xe7, 0x7e, 0x6b, 0x38, 0xac, 0x9b, 0xda, 0xa3, 0x7f, 0x8a,
+ 0xde, 0x8e, 0x8f, 0x8f, 0x68, 0x46, 0x3b, 0x34, 0x34, 0xbf, 0x86, 0x32,
+ 0x20, 0x7c, 0x85, 0xc5, 0x7d, 0x01, 0x54, 0x52, 0x6d, 0x23, 0xac, 0x1f,
+ 0x0b, 0xa2, 0xa3, 0x8b, 0xbb, 0x44, 0xbf, 0x1c, 0x92, 0x32, 0x3c, 0xb8,
+ 0x62, 0x15, 0x42, 0xae, 0x5a, 0x74, 0xfd, 0x6d, 0x9e, 0xd1, 0x31, 0x29,
+ 0xf2, 0x82, 0x23, 0xa7, 0xfa, 0x35, 0x69, 0xe1, 0xdb, 0xd7, 0x47, 0x92,
+ 0x52, 0xff, 0x36, 0xce, 0x88, 0x47, 0x32, 0x3a, 0x56, 0x79, 0xc3, 0xfe,
+ 0x7f, 0x71, 0xe7, 0xc8, 0xfb, 0x27, 0xf7, 0xd9, 0x47, 0xda, 0xc7, 0xcf,
+ 0x46, 0xbb, 0x1c, 0xb2, 0xcd, 0x5a, 0xef, 0x9b, 0xb7, 0xf4, 0xf7, 0xee,
+ 0xd3, 0x7e, 0xc4, 0x5f, 0xd5, 0x35, 0x78, 0x3b, 0xaf, 0x1b, 0x87, 0xa7,
+ 0xa7, 0xdf, 0x1e, 0x4b, 0x00, 0xc8, 0xa1, 0x9a, 0x55, 0x59, 0xb8, 0x72,
+ 0x5a, 0xb1, 0x70, 0x57, 0xd2, 0xde, 0x7c, 0xb6, 0x12, 0x9c, 0x71, 0x37,
+ 0x49, 0xb2, 0xe4, 0x68, 0x84, 0xaa, 0xc1, 0x11, 0x2a, 0xe5, 0xd1, 0x2e,
+ 0xb6, 0x89, 0xc5, 0x9f, 0x1a, 0xb2, 0x57, 0xc9, 0x50, 0xc9, 0x66, 0xc2,
+ 0x9d, 0xdc, 0x3b, 0xd8, 0x8e, 0xd8, 0xb9, 0xcc, 0xac, 0x6e, 0x8a, 0x36,
+ 0x65, 0x26, 0x68, 0x29, 0x3a, 0x42, 0x2f, 0xaa, 0xee, 0xdb, 0x1f, 0x93,
+ 0x74, 0x2f, 0x83, 0xde, 0x57, 0xab, 0x6d, 0x3f, 0xc0, 0x96, 0x86, 0x44,
+ 0xbb, 0xd4, 0x52, 0x3f, 0x30, 0x1d, 0x5b, 0x44, 0xbd, 0xf1, 0xe6, 0x12,
+ 0xb6, 0x6c, 0x84, 0xe7, 0xbd, 0x3b, 0x78, 0x7b, 0xf4, 0xea, 0xbb, 0x83,
+ 0x93, 0xf7, 0x47, 0xf4, 0x4a, 0x0a, 0x18, 0x77, 0x17, 0xc2, 0x87, 0x31,
+ 0x2e, 0x52, 0xd4, 0xae, 0x2d, 0x49, 0x3c, 0xe8, 0x6f, 0x48, 0x78, 0x79,
+ 0xd4, 0xe3, 0xb7, 0x76, 0xe5, 0x35, 0xa2, 0x0b, 0xfe, 0x6b, 0x4f, 0xfe,
+ 0xda, 0xfb, 0x53, 0x6f, 0xab, 0x36, 0xe9, 0x96, 0x96, 0xcc, 0xf4, 0x72,
+ 0x27, 0xf5, 0x9e, 0x38, 0x3c, 0x48, 0x72, 0x37, 0x64, 0x55, 0x7a, 0xe6,
+ 0xa3, 0xb1, 0xbb, 0x8d, 0x9f, 0xdd, 0x9c, 0xdc, 0x87, 0x3a, 0x78, 0x8f,
+ 0x5f, 0x7a, 0x05, 0x01, 0xa3, 0x07, 0xa0, 0xfb, 0xc4, 0x56, 0x4b, 0xda,
+ 0xb0, 0x26, 0x92, 0x8f, 0x4b, 0x8e, 0x88, 0xdc, 0xec, 0xc9, 0x2f, 0xaf,
+ 0x5e, 0x1f, 0x5c, 0x1c, 0xf1, 0x0b, 0xd6, 0xbd, 0xd5, 0x36, 0xb0, 0x34,
+ 0x0a, 0x1e, 0xcf, 0xa6, 0xba, 0xa6, 0x5f, 0xf1, 0x84, 0x7a, 0x5b, 0xe2,
+ 0xcb, 0x80, 0x53, 0xbd, 0x31, 0x2e, 0xe6, 0x69, 0x12, 0xb8, 0xed, 0xd3,
+ 0xd4, 0x4b, 0x8b, 0x58, 0xd9, 0xec, 0xc9, 0x77, 0x3d, 0x67, 0xc1, 0xd5,
+ 0xfa, 0xf0, 0xea, 0xae, 0x9c, 0x21, 0xc9, 0xa2, 0x95, 0x59, 0x2b, 0x21,
+ 0x69, 0x7e, 0x7f, 0xd4, 0x59, 0x21, 0x16, 0xa7, 0x00, 0x6d, 0xdb, 0x6d,
+ 0xbc, 0xe6, 0xc1, 0xb3, 0x8d, 0x29, 0xcf, 0x77, 0xf7, 0x9e, 0xfc, 0x09,
+ 0xeb, 0xf9, 0xaa, 0xb7, 0x4d, 0x77, 0x43, 0xef, 0x4f, 0xdc, 0x75, 0x6a,
+ 0x36, 0xce, 0x20, 0x88, 0x9c, 0xf5, 0x29, 0xa5, 0x28, 0x09, 0x97, 0xe1,
+ 0x5d, 0x0f, 0xe0, 0x7d, 0xb0, 0xa0, 0x77, 0x92, 0x25, 0x66, 0x60, 0x38,
+ 0x16, 0x3c, 0x80, 0xfd, 0x9a, 0x24, 0x57, 0x69, 0x96, 0xb9, 0x1a, 0xb9,
+ 0xd2, 0x5d, 0x78, 0x7f, 0x0c, 0xe4, 0x5d, 0x99, 0xa3, 0x02, 0x08, 0x71,
+ 0x9f, 0x8b, 0x7b, 0x4b, 0x24, 0x2b, 0x4b, 0x53, 0x71, 0x65, 0xcf, 0x5a,
+ 0x92, 0xf1, 0x44, 0x6d, 0x3b, 0xa6, 0x8c, 0x40, 0x26, 0x20, 0xd6, 0x72,
+ 0x0f, 0x41, 0x09, 0xd1, 0x06, 0x61, 0x90, 0x85, 0xdd, 0xd9, 0xf1, 0x84,
+ 0x93, 0xcc, 0x5d, 0x6a, 0x4c, 0xa0, 0x95, 0xbb, 0xa5, 0xb7, 0xe3, 0x97,
+ 0x06, 0xc8, 0x4c, 0x7c, 0x51, 0xca, 0x5a, 0x96, 0xce, 0x86, 0x04, 0x6f,
+ 0xa3, 0x3e, 0x5b, 0xdf, 0xa7, 0x46, 0x3e, 0x1a, 0xa6, 0x21, 0x2a, 0xbd,
+ 0xe8, 0xc7, 0xc4, 0x6a, 0xb2, 0xa4, 0x78, 0x30, 0xc0, 0xa2, 0xc3, 0x19,
+ 0x85, 0x29, 0x06, 0x91, 0x0e, 0xfc, 0xce, 0x68, 0x34, 0xf2, 0x95, 0xb6,
+ 0x79, 0x5b, 0xd4, 0x07, 0x85, 0x5a, 0x46, 0x01, 0x7e, 0x2c, 0xd6, 0x78,
+ 0x13, 0xc2, 0x3c, 0x04, 0xea, 0x2d, 0x0d, 0xbc, 0x51, 0x3b, 0x81, 0x3b,
+ 0x1a, 0x81, 0x8d, 0xa3, 0xaf, 0xdd, 0xf6, 0x0d, 0xb4, 0xe1, 0xa6, 0x6b,
+ 0x13, 0x1e, 0x18, 0x9b, 0xd8, 0x1e, 0xb5, 0xc0, 0xa6, 0xe3, 0x53, 0xb9,
+ 0x5b, 0x0b, 0xa6, 0x60, 0x0e, 0x20, 0x07, 0x9d, 0x48, 0xc6, 0xb1, 0x2c,
+ 0x9a, 0x0e, 0x45, 0x4b, 0xad, 0x31, 0x93, 0xcb, 0xef, 0x00, 0x82, 0x20,
+ 0xc5, 0x6a, 0x96, 0x05, 0x6b, 0x7a, 0xbc, 0xc6, 0x76, 0x83, 0x2c, 0x9d,
+ 0xd8, 0xac, 0xed, 0x28, 0x96, 0x30, 0xeb, 0xcc, 0x90, 0xfd, 0x35, 0xcb,
+ 0x51, 0xe1, 0x68, 0x4a, 0x4b, 0xe2, 0x21, 0xb1, 0x2d, 0x5f, 0xc0, 0xed,
+ 0xa5, 0x93, 0xf7, 0xe6, 0x2a, 0x8e, 0x36, 0x1b, 0x0a, 0xa0, 0x8b, 0x25,
+ 0x22, 0x1a, 0xf7, 0x50, 0x50, 0x8f, 0x87, 0xfc, 0xe5, 0x53, 0x6b, 0xd1,
+ 0x39, 0xcb, 0x1b, 0x6b, 0xe3, 0x6f, 0xe5, 0x3a, 0xeb, 0xa2, 0x15, 0x15,
+ 0xeb, 0xb2, 0x40, 0x67, 0x78, 0xbe, 0x17, 0xc5, 0x77, 0x5c, 0xf1, 0x3d,
+ 0xe1, 0xf8, 0x4c, 0x44, 0x3a, 0xc0, 0x2a, 0x73, 0x12, 0xd8, 0x19, 0xdd,
+ 0x0c, 0x95, 0x6a, 0x35, 0xa6, 0x89, 0xf9, 0xce, 0xbe, 0x15, 0x8e, 0x16,
+ 0xb8, 0x5c, 0x33, 0xe8, 0xa5, 0xa8, 0x70, 0xcd, 0xf0, 0xa6, 0x2a, 0xa9,
+ 0x9b, 0x7a, 0xce, 0x23, 0xdf, 0x42, 0x11, 0x60, 0x11, 0xe7, 0x11, 0x97,
+ 0xc8, 0x76, 0x0e, 0x89, 0xab, 0xb0, 0xd5, 0x8a, 0xb3, 0x59, 0xd0, 0x89,
+ 0xf3, 0x4f, 0xab, 0xf9, 0x89, 0xc3, 0x7b, 0xb3, 0x21, 0x80, 0x2e, 0x5c,
+ 0x31, 0x5d, 0x51, 0xaf, 0xae, 0xae, 0xac, 0xf2, 0x4e, 0x63, 0x6a, 0xdd,
+ 0x44, 0x76, 0xc2, 0xab, 0xc2, 0x51, 0xd0, 0xf7, 0xeb, 0x56, 0xf3, 0xc2,
+ 0x6c, 0x3e, 0x66, 0x75, 0xa9, 0x11, 0xb3, 0xf9, 0x24, 0x65, 0xdf, 0x2a,
+ 0x97, 0x74, 0x85, 0x04, 0x8d, 0xba, 0x0f, 0xf9, 0xf4, 0x7c, 0x03, 0x85,
+ 0x13, 0x32, 0x0f, 0xc8, 0x60, 0x9b, 0x0e, 0x74, 0x3e, 0x1f, 0x81, 0xe2,
+ 0x23, 0x51, 0xef, 0x5c, 0xa8, 0x95, 0x54, 0x06, 0x9c, 0xc4, 0x5e, 0xe5,
+ 0xda, 0x88, 0x6a, 0xd6, 0x5e, 0x2e, 0xa8, 0x72, 0x9c, 0x29, 0x1f, 0xca,
+ 0x6f, 0x13, 0x0f, 0x10, 0xe9, 0x0d, 0x8e, 0x1e, 0x65, 0x57, 0x4f, 0xbf,
+ 0x63, 0x26, 0x0d, 0x07, 0xaf, 0xe3, 0x57, 0x98, 0x64, 0x63, 0x55, 0x46,
+ 0x51, 0xd0, 0xa4, 0x98, 0x4a, 0xf2, 0x90, 0xc5, 0xcb, 0xd8, 0xd4, 0x6f,
+ 0x6d, 0x2d, 0x0a, 0x8d, 0x08, 0xc4, 0x4b, 0xa0, 0x9a, 0x48, 0xc1, 0x11,
+ 0x43, 0xca, 0x77, 0x31, 0x7a, 0xde, 0xff, 0x6b, 0xb3, 0xec, 0xb9, 0x4d,
+ 0xea, 0x59, 0x4d, 0x02, 0x10, 0x01, 0x68, 0x80, 0x05, 0x3a, 0xe7, 0xc2,
+ 0x3f, 0x98, 0xc7, 0x1c, 0xc4, 0x92, 0x4b, 0x74, 0x00, 0xb6, 0x0c, 0x44,
+ 0x0d, 0x63, 0x5a, 0x83, 0xa7, 0xb6, 0x8e, 0x9f, 0x8b, 0xd6, 0x10, 0x5a,
+ 0x63, 0x21, 0x05, 0xcd, 0x10, 0x95, 0x20, 0x9a, 0x7b, 0x1a, 0x96, 0x8e,
+ 0x5e, 0x8f, 0x5d, 0x30, 0xa9, 0x9d, 0xd1, 0xc7, 0x8e, 0xec, 0xd9, 0xf9,
+ 0xe9, 0xd7, 0xe7, 0x47, 0xe3, 0x71, 0xf4, 0xf6, 0xe8, 0x42, 0xd4, 0xfe,
+ 0x0b, 0x89, 0xc2, 0xbb, 0x62, 0xcd, 0x3d, 0x82, 0xdb, 0xc1, 0xc0, 0x9c,
+ 0x2c, 0xfa, 0xc4, 0x6c, 0x0a, 0x48, 0x7f, 0xca, 0xd9, 0xa5, 0x06, 0x51,
+ 0x0e, 0xfa, 0xfc, 0x5c, 0x83, 0xf7, 0xae, 0x61, 0xf8, 0x47, 0x78, 0x13,
+ 0x7c, 0x93, 0xce, 0x8e, 0xee, 0x2d, 0xaa, 0x90, 0x91, 0x25, 0xe0, 0xc9,
+ 0xa5, 0x1f, 0x7a, 0x6b, 0x3a, 0xdf, 0xde, 0xf4, 0x13, 0xd3, 0xfb, 0x7d,
+ 0x74, 0x91, 0x57, 0x5c, 0x14, 0x9c, 0x7f, 0x3d, 0x37, 0xfa, 0xf8, 0x7d,
+ 0xf4, 0x03, 0xb5, 0x39, 0xa3, 0x55, 0x67, 0x63, 0x32, 0x5d, 0xb8, 0x63,
+ 0x14, 0x3e, 0xf5, 0xf5, 0x85, 0x50, 0xad, 0x34, 0xac, 0xf7, 0xbe, 0x2a,
+ 0x8a, 0x51, 0x77, 0x79, 0x9e, 0x5a, 0x7d, 0x1d, 0xc1, 0xcd, 0xd4, 0xf0,
+ 0x3a, 0xd7, 0xb3, 0x56, 0x34, 0x8e, 0xa2, 0x93, 0xe4, 0xb2, 0x82, 0x40,
+ 0xc2, 0xdd, 0x51, 0x73, 0x3b, 0x0c, 0x04, 0xbd, 0xcb, 0x05, 0xd0, 0xe8,
+ 0xd7, 0x27, 0x9f, 0x3f, 0xdf, 0xf9, 0x5c, 0x7e, 0xb5, 0x7f, 0x5f, 0x3c,
+ 0xdd, 0x51, 0x40, 0x75, 0xfa, 0xeb, 0xe9, 0xfe, 0xd3, 0xdd, 0x7d, 0xc6,
+ 0x79, 0xdc, 0xd9, 0xdf, 0xa1, 0xff, 0x7f, 0xaa, 0x9f, 0x30, 0x98, 0xe5,
+ 0x8b, 0xbd, 0xcf, 0x3f, 0x43, 0x60, 0x0c, 0xd3, 0xc7, 0x9c, 0x3a, 0x19,
+ 0x56, 0xf9, 0x10, 0x70, 0x53, 0x10, 0x82, 0x7e, 0x5f, 0x37, 0x4a, 0xb2,
+ 0xa7, 0x7d, 0xca, 0x7e, 0xd5, 0x2b, 0x51, 0x6f, 0xe6, 0x09, 0x73, 0x00,
+ 0x35, 0xb0, 0x0a, 0x04, 0x8e, 0x05, 0x8b, 0x4b, 0x06, 0xb7, 0x4e, 0x43,
+ 0xdf, 0xae, 0xf0, 0x37, 0xf0, 0xdb, 0x6a, 0xef, 0x48, 0xcc, 0x79, 0x00,
+ 0x15, 0xf7, 0x4b, 0xbb, 0xb6, 0x9c, 0xf2, 0x0d, 0x00, 0xc0, 0xe9, 0x56,
+ 0xe9, 0x7b, 0x53, 0x2b, 0x0a, 0xed, 0x9e, 0x62, 0x89, 0x70, 0x21, 0xe9,
+ 0x09, 0x97, 0x12, 0xb9, 0xfc, 0x4b, 0xfb, 0x13, 0x23, 0x16, 0xbf, 0xa5,
+ 0xd4, 0x10, 0xb5, 0x7b, 0x73, 0x69, 0x09, 0x1d, 0x7d, 0xd5, 0x88, 0x67,
+ 0xc3, 0x6f, 0xbf, 0x5f, 0x29, 0xe6, 0x6a, 0xfa, 0x90, 0x4b, 0xe7, 0x92,
+ 0x1a, 0xbb, 0x1d, 0x53, 0x6e, 0x35, 0xa7, 0x64, 0xf4, 0x0b, 0x9a, 0xf3,
+ 0x33, 0x02, 0x05, 0xbb, 0x9d, 0x1b, 0x06, 0x9b, 0x93, 0x4a, 0x8c, 0x9b,
+ 0xad, 0x86, 0x03, 0x18, 0xb5, 0x1b, 0x4f, 0x5e, 0x75, 0x24, 0x3b, 0x94,
+ 0x37, 0x54, 0xfc, 0x74, 0x29, 0x72, 0x74, 0x0a, 0x6f, 0x73, 0xdc, 0xf6,
+ 0xf2, 0xbc, 0x51, 0x76, 0xab, 0x2b, 0xa6, 0xc6, 0xa0, 0x3f, 0xed, 0x03,
+ 0xe7, 0xc9, 0x1d, 0xba, 0x07, 0xa7, 0xe6, 0xc3, 0xec, 0x5d, 0x8d, 0xe1,
+ 0x4d, 0x17, 0xb6, 0xde, 0x75, 0x24, 0xfd, 0x73, 0x88, 0x64, 0x77, 0xcd,
+ 0x85, 0x17, 0x11, 0xea, 0x4b, 0x6b, 0x85, 0x0c, 0x46, 0x2d, 0x65, 0x98,
+ 0xff, 0x2d, 0x63, 0x61, 0xc3, 0xdf, 0xb9, 0x08, 0x2e, 0xdc, 0x6b, 0x5a,
+ 0x2e, 0x34, 0x16, 0xca, 0x9f, 0x87, 0x69, 0xb5, 0x8e, 0xdb, 0x4d, 0xe2,
+ 0xa2, 0x06, 0xa8, 0xbf, 0x21, 0x65, 0x25, 0xe8, 0xa6, 0xa5, 0x9b, 0x03,
+ 0x99, 0x8f, 0x22, 0x52, 0xfc, 0xcb, 0xc6, 0xc6, 0xf8, 0xec, 0xe8, 0xe8,
+ 0x75, 0x74, 0x72, 0xfc, 0xf6, 0xf8, 0x22, 0x10, 0xc8, 0xdd, 0x45, 0x62,
+ 0x46, 0x57, 0x2b, 0x3e, 0xd5, 0x58, 0x0e, 0x0f, 0xdf, 0x2c, 0xfd, 0xd9,
+ 0x55, 0xbe, 0x48, 0x34, 0xa1, 0x62, 0xde, 0x7c, 0x0f, 0xaa, 0x37, 0x30,
+ 0x9e, 0x46, 0xd1, 0x57, 0x41, 0x8c, 0x64, 0x54, 0x92, 0x70, 0x33, 0x75,
+ 0x95, 0x97, 0x87, 0x7f, 0xd6, 0x90, 0x8d, 0xba, 0xe4, 0xa4, 0x28, 0xb4,
+ 0x2e, 0xbb, 0x47, 0xc3, 0x5c, 0x1b, 0xa3, 0xe2, 0xb5, 0x4d, 0x24, 0xca,
+ 0x3a, 0xb0, 0xd0, 0x21, 0x82, 0xef, 0x2e, 0x01, 0xf0, 0xc1, 0x22, 0x95,
+ 0xb4, 0xcb, 0x30, 0xbc, 0xd8, 0x15, 0xa3, 0xbd, 0xc8, 0x85, 0x8f, 0x87,
+ 0x3d, 0x86, 0x55, 0xc6, 0x2d, 0xb6, 0xd6, 0xfa, 0x0a, 0xcb, 0x57, 0x3f,
+ 0xd9, 0x71, 0x99, 0x0b, 0x4b, 0xf0, 0x1c, 0x15, 0xf5, 0xb9, 0xb3, 0xdd,
+ 0x88, 0xe4, 0x91, 0x15, 0x4b, 0xf5, 0xc5, 0x2a, 0x6b, 0x5d, 0x77, 0x7f,
+ 0x96, 0x77, 0x69, 0xfe, 0xcf, 0x77, 0x70, 0xbd, 0x5d, 0xc6, 0xc5, 0x90,
+ 0x24, 0xaf, 0xfb, 0xa1, 0x59, 0x57, 0x85, 0x22, 0x34, 0xf4, 0x58, 0x4c,
+ 0x3f, 0x89, 0xaf, 0x7b, 0xdb, 0x90, 0x16, 0x7d, 0xfa, 0x49, 0x0e, 0x17,
+ 0xe5, 0x5c, 0x0f, 0x00, 0x4f, 0x9d, 0x93, 0x7e, 0xcd, 0xd8, 0xe9, 0x65,
+ 0x1d, 0x8f, 0x50, 0x6c, 0xbb, 0xe8, 0x79, 0x14, 0x27, 0x23, 0x80, 0xad,
+ 0x72, 0xab, 0x29, 0x4f, 0x53, 0xe7, 0xd2, 0x16, 0xad, 0x17, 0xd1, 0xee,
+ 0xe7, 0x3c, 0x8f, 0x4f, 0x9b, 0xcf, 0x9b, 0xbc, 0x98, 0xba, 0xf4, 0x62,
+ 0xa8, 0x0b, 0x41, 0xae, 0xa9, 0x64, 0x48, 0xa0, 0x6c, 0x93, 0xac, 0xae,
+ 0xc5, 0xc7, 0x22, 0x7e, 0x8f, 0xf5, 0x13, 0x75, 0xad, 0xc3, 0x32, 0x05,
+ 0x5f, 0xb7, 0x48, 0x48, 0x7c, 0xd7, 0xe8, 0xba, 0xb0, 0xad, 0x55, 0xe2,
+ 0xf7, 0xfa, 0x85, 0xcb, 0x45, 0x95, 0x65, 0x60, 0xeb, 0x08, 0xd1, 0xda,
+ 0x5d, 0x3a, 0x83, 0x54, 0xed, 0xb1, 0xea, 0x68, 0xbf, 0x84, 0xf8, 0x24,
+ 0x6c, 0x1a, 0xee, 0x4b, 0xf8, 0x3d, 0xdd, 0xc8, 0x54, 0x80, 0xe1, 0x65,
+ 0xcd, 0x61, 0x5c, 0xd8, 0x84, 0xfc, 0xc0, 0xa9, 0xce, 0xde, 0x45, 0xc0,
+ 0xaa, 0x14, 0xb3, 0xe6, 0x9e, 0xef, 0x85, 0xd3, 0x06, 0xaa, 0x6a, 0x6e,
+ 0x76, 0x85, 0xb7, 0x8e, 0xb0, 0xeb, 0x73, 0x66, 0xd0, 0x96, 0x60, 0xda,
+ 0xbb, 0x3b, 0x24, 0xbf, 0xce, 0xf3, 0x5a, 0x15, 0x74, 0x22, 0xaa, 0xb6,
+ 0x52, 0x8a, 0x69, 0x0d, 0xb1, 0x3a, 0xbb, 0x3b, 0xdf, 0xae, 0x5f, 0x75,
+ 0xe0, 0xf0, 0x3f, 0xf8, 0xf2, 0xde, 0xd3, 0x07, 0x36, 0xed, 0xb4, 0x80,
+ 0x5e, 0x9e, 0x58, 0x38, 0x24, 0x04, 0x41, 0xef, 0x84, 0x69, 0x6d, 0x1b,
+ 0x11, 0x7e, 0x72, 0x15, 0xf3, 0xf0, 0x1f, 0x1a, 0xbd, 0xa5, 0x87, 0x34,
+ 0x86, 0xf2, 0x56, 0x03, 0xb4, 0xe5, 0xcb, 0x92, 0x2d, 0x64, 0x4b, 0x20,
+ 0xf5, 0x79, 0x35, 0xd6, 0x65, 0x96, 0x0b, 0x4c, 0x43, 0xf0, 0xb6, 0x70,
+ 0xce, 0x41, 0x9d, 0x49, 0x18, 0xf5, 0x14, 0xc9, 0xd5, 0x4a, 0x40, 0x31,
+ 0x72, 0x51, 0xfb, 0x19, 0xd8, 0x5a, 0xcf, 0x2b, 0xf1, 0x66, 0x8e, 0x24,
+ 0x12, 0x7a, 0x02, 0xe3, 0x9d, 0xc6, 0x26, 0xb2, 0x8a, 0xc8, 0xd1, 0xbc,
+ 0x18, 0xd8, 0x3e, 0x3b, 0x65, 0x87, 0x18, 0xb8, 0xc1, 0x46, 0xd4, 0xac,
+ 0xa0, 0x2d, 0xc8, 0x8d, 0x23, 0x24, 0xfd, 0x0a, 0xa1, 0x38, 0x66, 0xcf,
+ 0x19, 0x66, 0xec, 0x18, 0xab, 0xc4, 0x43, 0x80, 0x06, 0x06, 0x4a, 0xb5,
+ 0x68, 0xc9, 0x75, 0xc5, 0x1c, 0xbf, 0x34, 0x04, 0x4d, 0x41, 0xdb, 0x67,
+ 0xbb, 0xff, 0xe1, 0xe9, 0xbb, 0x37, 0xc7, 0x5f, 0x3b, 0x54, 0x23, 0x61,
+ 0xe2, 0x35, 0xb4, 0x0d, 0xb1, 0x24, 0x87, 0x4e, 0x6f, 0xad, 0xc9, 0xa8,
+ 0x81, 0xb8, 0xc4, 0x9e, 0x3e, 0x84, 0x1f, 0x80, 0x81, 0x64, 0x4f, 0xd8,
+ 0x56, 0x2e, 0x50, 0x20, 0xe5, 0x96, 0xb7, 0x3c, 0x34, 0x50, 0xeb, 0x24,
+ 0x61, 0x23, 0x2e, 0xaa, 0xd5, 0xd2, 0xc5, 0x13, 0x06, 0x35, 0x1d, 0x15,
+ 0x87, 0xdb, 0xb2, 0xd2, 0x57, 0x4b, 0x61, 0x4d, 0x9a, 0x5b, 0x5a, 0x33,
+ 0xec, 0xca, 0x1d, 0xc0, 0x96, 0x05, 0x85, 0x55, 0xd1, 0x0b, 0xa0, 0x15,
+ 0xa2, 0x33, 0x67, 0xf4, 0xce, 0x30, 0x74, 0xde, 0x5c, 0x39, 0x33, 0xd4,
+ 0xc5, 0x0c, 0x6b, 0x9f, 0x2f, 0x44, 0x33, 0xe3, 0x79, 0xa3, 0xb8, 0xb4,
+ 0x8b, 0xcb, 0x71, 0x81, 0xc0, 0xde, 0x55, 0x54, 0xba, 0x6a, 0xd9, 0x2e,
+ 0x54, 0xc9, 0x32, 0x5a, 0x63, 0x78, 0x2d, 0xe1, 0xf6, 0xc4, 0x27, 0xaf,
+ 0xd8, 0x43, 0xb3, 0xcf, 0x68, 0xf4, 0x0b, 0xc1, 0x96, 0x0b, 0x33, 0x51,
+ 0x95, 0x4b, 0x7a, 0xd4, 0xf8, 0xe3, 0xcb, 0x20, 0xb9, 0x4d, 0x42, 0x06,
+ 0x8d, 0xe8, 0xc4, 0x5c, 0xcc, 0xb6, 0x96, 0xfe, 0xef, 0xfa, 0xc3, 0xf2,
+ 0x7e, 0x31, 0xc9, 0xe7, 0x96, 0x83, 0xe1, 0xb0, 0x24, 0xec, 0xa1, 0xb0,
+ 0xc6, 0x5a, 0x24, 0x4e, 0xdb, 0x2a, 0xb0, 0x50, 0xfa, 0xb0, 0x29, 0x3f,
+ 0x7e, 0xa9, 0x53, 0x04, 0x4f, 0x91, 0xcd, 0x02, 0x30, 0x3f, 0xcc, 0xe3,
+ 0x93, 0x6c, 0x3a, 0xcf, 0x95, 0xaa, 0x39, 0xd7, 0x1c, 0x2b, 0x55, 0x9f,
+ 0x3a, 0x3b, 0xff, 0xf2, 0x15, 0x1b, 0x3b, 0x50, 0x83, 0x84, 0xc4, 0x9d,
+ 0x9e, 0x82, 0x6b, 0x60, 0x82, 0xfc, 0xb6, 0x7c, 0xa1, 0x01, 0xfa, 0x01,
+ 0xd4, 0x8d, 0x14, 0x2d, 0xa1, 0xa1, 0xfe, 0x24, 0xb6, 0x45, 0x71, 0x01,
+ 0xfe, 0xd9, 0x3a, 0xb7, 0x47, 0x1b, 0x4b, 0x4f, 0xf4, 0x14, 0x17, 0x57,
+ 0x0a, 0xd8, 0xa7, 0x4e, 0x35, 0x28, 0x89, 0xae, 0x94, 0x8c, 0xb3, 0x51,
+ 0xb2, 0x50, 0xe2, 0x02, 0x68, 0x20, 0x3e, 0xad, 0x24, 0xbd, 0x50, 0x93,
+ 0xaf, 0xc4, 0x3a, 0xe9, 0x08, 0x31, 0xe0, 0x38, 0xbf, 0x73, 0x61, 0x29,
+ 0xb1, 0xbf, 0xcb, 0xac, 0xc2, 0x85, 0x37, 0xd5, 0xea, 0x65, 0x16, 0xbc,
+ 0xc6, 0xf6, 0x3c, 0x68, 0xc2, 0x89, 0xda, 0x50, 0xa4, 0x2b, 0xc8, 0x12,
+ 0x0c, 0x71, 0x83, 0x3c, 0xa0, 0xa4, 0xf4, 0x4d, 0xc8, 0xf7, 0xaf, 0xb4,
+ 0xb4, 0x15, 0x9d, 0x67, 0x05, 0x4d, 0x51, 0x24, 0xc1, 0xcf, 0x77, 0xd4,
+ 0x12, 0x57, 0x69, 0xe4, 0x6a, 0x19, 0x1d, 0x9c, 0x1f, 0x91, 0x64, 0x7b,
+ 0x95, 0x01, 0xae, 0x22, 0xab, 0x2c, 0xbf, 0x2e, 0xc9, 0xb4, 0x96, 0x56,
+ 0x66, 0xe7, 0x83, 0x3b, 0xbc, 0x0b, 0xde, 0x64, 0x62, 0xd2, 0x18, 0x01,
+ 0x49, 0xe5, 0xf6, 0x24, 0x37, 0x35, 0x5c, 0x61, 0x70, 0x1d, 0x46, 0x4c,
+ 0x10, 0x92, 0x62, 0x6f, 0x09, 0x75, 0x95, 0x1b, 0xa6, 0xf0, 0x59, 0x8b,
+ 0xad, 0x87, 0x60, 0xc2, 0xb6, 0xd6, 0x38, 0xd5, 0x3e, 0x2b, 0xe1, 0xaf,
+ 0x06, 0xd1, 0xa9, 0x7d, 0xd5, 0x3c, 0xa0, 0x9e, 0x9c, 0x06, 0xdd, 0xd6,
+ 0xa3, 0xbf, 0xe2, 0x9e, 0x61, 0x59, 0xa4, 0x29, 0x17, 0x24, 0x2e, 0xd8,
+ 0x5e, 0x0c, 0xd9, 0xb3, 0x40, 0xf8, 0x95, 0x6c, 0x40, 0x0e, 0xb7, 0x16,
+ 0x1b, 0xb5, 0x82, 0x02, 0xa9, 0x89, 0x47, 0xd4, 0x81, 0x99, 0x9e, 0x55,
+ 0xa6, 0x0a, 0x8e, 0x1c, 0x9e, 0x30, 0x70, 0x92, 0x54, 0xd1, 0xae, 0xf1,
+ 0xa7, 0x4e, 0x33, 0xef, 0xef, 0xdc, 0x6c, 0xfd, 0x18, 0xdc, 0x97, 0xfc,
+ 0xd1, 0x2b, 0x07, 0x74, 0xc7, 0xa3, 0x18, 0x71, 0x47, 0x60, 0xa9, 0x70,
+ 0x9f, 0xf2, 0x2f, 0xf8, 0x18, 0x01, 0x70, 0x06, 0x7c, 0x0a, 0xae, 0xe3,
+ 0xd0, 0xb4, 0x72, 0x75, 0xaf, 0xfa, 0x81, 0x88, 0x8f, 0x0f, 0x1c, 0x7a,
+ 0x12, 0x8a, 0xc6, 0xc3, 0x6f, 0xb7, 0xad, 0x1c, 0x2e, 0x9b, 0x72, 0x38,
+ 0x97, 0xd8, 0x0e, 0x7c, 0x99, 0xd4, 0xea, 0xe7, 0xba, 0xa4, 0xa1, 0xde,
+ 0xb0, 0x47, 0x6b, 0xd1, 0x9f, 0xcf, 0x3d, 0xc3, 0xb7, 0xc7, 0x78, 0x57,
+ 0x91, 0x5f, 0xe7, 0x05, 0x26, 0xe5, 0x5d, 0x5c, 0x98, 0xe3, 0xbe, 0x96,
+ 0xed, 0xc0, 0x95, 0xcd, 0x38, 0x19, 0xc8, 0x61, 0x7c, 0x21, 0x63, 0x04,
+ 0xf1, 0x02, 0xb7, 0x69, 0x69, 0x7e, 0x48, 0xa2, 0xed, 0xa9, 0x84, 0x47,
+ 0x54, 0x82, 0x4d, 0x90, 0x54, 0xd3, 0x60, 0x29, 0x93, 0xe9, 0x75, 0x2e,
+ 0xe1, 0xb5, 0xb4, 0x68, 0x41, 0xd2, 0x67, 0x2f, 0xfa, 0x4f, 0xa5, 0x81,
+ 0x6f, 0x7d, 0xfe, 0x1e, 0x13, 0xc2, 0x48, 0x20, 0x29, 0x47, 0x9e, 0x20,
+ 0x8e, 0x7e, 0xb8, 0x38, 0x3f, 0x88, 0xbe, 0x39, 0x3a, 0x78, 0x7d, 0x74,
+ 0x3e, 0x6e, 0x5c, 0xfa, 0x1a, 0x09, 0x22, 0x12, 0x1a, 0xdb, 0x83, 0x21,
+ 0x1a, 0x1b, 0x06, 0x81, 0x86, 0xf0, 0x1b, 0xd7, 0x23, 0xe2, 0xe1, 0x83,
+ 0x44, 0xe7, 0x83, 0x15, 0x22, 0x71, 0x1c, 0x00, 0x00, 0xb9, 0x04, 0xb3,
+ 0x71, 0x6d, 0x4c, 0x89, 0x43, 0x71, 0x3c, 0x83, 0x59, 0xcf, 0xc3, 0xe4,
+ 0x19, 0x0f, 0xdb, 0xe7, 0x2f, 0x93, 0x59, 0x6e, 0x79, 0x81, 0xf5, 0x9d,
+ 0xfb, 0xc6, 0xa7, 0x7e, 0x07, 0x6c, 0x4b, 0x2f, 0x19, 0x35, 0x20, 0xf6,
+ 0x7e, 0x18, 0x52, 0xbf, 0x43, 0x5a, 0xfc, 0x21, 0xe3, 0x3a, 0xde, 0x27,
+ 0x65, 0xaf, 0x61, 0x0d, 0xac, 0x77, 0xbf, 0x21, 0xd5, 0x9c, 0x5a, 0x27,
+ 0xe9, 0x9b, 0xce, 0x96, 0xf8, 0x74, 0x71, 0xc1, 0xe7, 0x96, 0x06, 0x81,
+ 0x4b, 0x35, 0x10, 0x92, 0xf5, 0x04, 0xb5, 0x32, 0x5d, 0x34, 0x56, 0xc9,
+ 0xab, 0x99, 0x1a, 0x1a, 0x86, 0x81, 0xe8, 0x14, 0x20, 0xeb, 0xd0, 0xd9,
+ 0x93, 0x4b, 0x7d, 0x2e, 0x58, 0xcd, 0x62, 0x31, 0xa3, 0x61, 0xe9, 0x43,
+ 0xe1, 0xfd, 0x00, 0x5f, 0x88, 0x86, 0xe3, 0x97, 0x35, 0x57, 0xa9, 0xda,
+ 0x45, 0x15, 0xc6, 0x5b, 0x9b, 0xe3, 0x31, 0x38, 0x9a, 0xb7, 0x28, 0x7e,
+ 0xee, 0xd2, 0x2a, 0x8c, 0xe8, 0xbb, 0x12, 0x10, 0xc6, 0x4a, 0x3d, 0x4c,
+ 0x9d, 0x52, 0xaa, 0x54, 0xea, 0x15, 0x0a, 0x63, 0x0b, 0xd2, 0x82, 0x42,
+ 0x62, 0x46, 0x39, 0x34, 0x04, 0x92, 0xbb, 0xe7, 0x92, 0xe8, 0x9b, 0xbc,
+ 0xc4, 0x5d, 0xd0, 0x7e, 0x9c, 0x2f, 0xf9, 0xae, 0xe5, 0xc7, 0x1b, 0xea,
+ 0xea, 0x72, 0x78, 0xb1, 0x80, 0x57, 0x06, 0xfb, 0x3a, 0x3b, 0xb8, 0xf8,
+ 0x06, 0x8e, 0x56, 0x90, 0xf0, 0x6b, 0x80, 0xa7, 0x98, 0x7b, 0xad, 0x9d,
+ 0x9d, 0xe5, 0x14, 0x38, 0x91, 0x7f, 0x0d, 0xa3, 0xd1, 0xe4, 0x49, 0x38,
+ 0xf2, 0x52, 0x89, 0x49, 0x9a, 0x4b, 0x79, 0x58, 0xf0, 0xe8, 0x5a, 0x89,
+ 0x3e, 0x44, 0xc1, 0xbb, 0xd4, 0x3b, 0x17, 0x7a, 0xd9, 0x97, 0x9c, 0xf8,
+ 0xbe, 0xcc, 0x09, 0x44, 0xcf, 0xc2, 0x1c, 0x6b, 0x3c, 0x21, 0x08, 0x31,
+ 0xbe, 0xe0, 0xa4, 0x67, 0xf1, 0x45, 0xcd, 0xf2, 0x6e, 0x08, 0xc4, 0xe0,
+ 0x48, 0x7f, 0xb9, 0xb8, 0x1f, 0xb5, 0xb1, 0x78, 0xa2, 0xaf, 0x56, 0x55,
+ 0x9d, 0xad, 0x34, 0xa0, 0x90, 0x9d, 0x64, 0x59, 0xe4, 0x79, 0x15, 0x8c,
+ 0x01, 0xd2, 0x4f, 0x5c, 0xe9, 0x89, 0x16, 0xac, 0x4b, 0x19, 0x0b, 0x37,
+ 0x95, 0xa9, 0xdc, 0x1d, 0x0a, 0x86, 0xf1, 0xa4, 0xcc, 0xe7, 0xab, 0x2a,
+ 0x08, 0xc4, 0xfe, 0x65, 0x63, 0x0e, 0x06, 0xbd, 0x79, 0x3c, 0x32, 0xdc,
+ 0xcf, 0x4c, 0xd0, 0xea, 0x48, 0xd3, 0x27, 0xf1, 0x12, 0x7e, 0xc7, 0x22,
+ 0xcf, 0xea, 0x75, 0xe4, 0x10, 0xf3, 0xbd, 0xb5, 0xb1, 0x31, 0xb6, 0xcd,
+ 0x66, 0xe4, 0xd7, 0xf6, 0xa6, 0x7f, 0x0f, 0x69, 0x92, 0xc7, 0x20, 0x7e,
+ 0x83, 0x29, 0xfd, 0x62, 0x78, 0x70, 0x89, 0xec, 0x29, 0x58, 0xb8, 0xec,
+ 0x71, 0x5a, 0xd6, 0x27, 0x85, 0xaf, 0x9c, 0xe7, 0xc2, 0x52, 0xcd, 0x2e,
+ 0x72, 0xc3, 0xf4, 0x57, 0xcf, 0x9d, 0x27, 0x88, 0x5a, 0x62, 0x7c, 0x27,
+ 0xd8, 0x34, 0x5f, 0x02, 0x56, 0x74, 0xd8, 0x45, 0xe6, 0xf2, 0x20, 0xb7,
+ 0xff, 0x6b, 0x3b, 0x1a, 0x44, 0x5a, 0x0f, 0xbe, 0x03, 0xef, 0xe8, 0xff,
+ 0x42, 0x0c, 0x96, 0x22, 0xfd, 0x72, 0x9b, 0xa3, 0x3a, 0x96, 0xec, 0x88,
+ 0x54, 0xa8, 0xeb, 0x62, 0xea, 0xa9, 0x9f, 0xa4, 0x83, 0xe4, 0x8e, 0xf5,
+ 0x17, 0xd3, 0x11, 0x14, 0x39, 0x44, 0xea, 0xfe, 0x3a, 0x2c, 0x26, 0x20,
+ 0x6f, 0x5c, 0x3a, 0xab, 0x1e, 0x97, 0xe0, 0x94, 0x7a, 0x94, 0x22, 0xd6,
+ 0xa3, 0x1c, 0x93, 0x79, 0x50, 0x25, 0xb9, 0xde, 0xe9, 0xed, 0x65, 0x54,
+ 0xe6, 0xf2, 0xd3, 0xf2, 0x8f, 0x34, 0xc6, 0x4b, 0xc9, 0x3f, 0x28, 0xf3,
+ 0x17, 0xd4, 0xc7, 0xb5, 0xe0, 0x53, 0x09, 0xac, 0x33, 0xcf, 0xa4, 0x0d,
+ 0xd2, 0xa4, 0x00, 0x76, 0x5c, 0x02, 0xe1, 0x52, 0x41, 0x48, 0x38, 0xa8,
+ 0x8c, 0xe1, 0x8c, 0x25, 0x7f, 0x9b, 0x0b, 0x38, 0x9a, 0x26, 0x63, 0x57,
+ 0xaa, 0x65, 0x74, 0x6c, 0x84, 0xe5, 0xb4, 0x65, 0xf8, 0x7a, 0xf7, 0x23,
+ 0x1f, 0x1f, 0x4e, 0xba, 0xbb, 0x98, 0x21, 0xd3, 0xbc, 0x48, 0x60, 0x53,
+ 0xd2, 0x12, 0xb0, 0x12, 0xc7, 0x11, 0xc6, 0xa6, 0xf8, 0xe0, 0xcd, 0x2b,
+ 0x4e, 0xf8, 0x50, 0x93, 0x94, 0xc2, 0x9a, 0xc0, 0xfe, 0x75, 0x9d, 0x6a,
+ 0x88, 0xa9, 0xac, 0x7a, 0xbd, 0xc0, 0x26, 0x2c, 0x7c, 0x1c, 0x5d, 0xe0,
+ 0x1d, 0xac, 0x2e, 0x06, 0x62, 0xd4, 0x3e, 0x30, 0x23, 0x07, 0xb0, 0xaa,
+ 0x97, 0xc8, 0x71, 0x98, 0x5e, 0x2e, 0x01, 0x19, 0x2e, 0xec, 0xf9, 0x13,
+ 0x7b, 0x0f, 0xbb, 0xe4, 0x78, 0xd6, 0x2c, 0x92, 0x5c, 0x12, 0x45, 0x8d,
+ 0xe3, 0x0b, 0x65, 0x6f, 0x17, 0x8a, 0xa9, 0x84, 0x6f, 0x00, 0xb2, 0xd4,
+ 0x5a, 0x30, 0xe8, 0xb4, 0xe6, 0xe2, 0x6f, 0x0d, 0x74, 0x95, 0x5c, 0xf2,
+ 0xbd, 0x7a, 0x9b, 0x45, 0x2e, 0x0c, 0xfc, 0x4e, 0xb5, 0x42, 0x72, 0x92,
+ 0xd0, 0x5d, 0x56, 0xc5, 0x6a, 0x5a, 0x43, 0xeb, 0x03, 0x45, 0xd4, 0xbc,
+ 0xf4, 0x6e, 0x8d, 0xf3, 0x50, 0xb7, 0x3f, 0x3e, 0x53, 0xf5, 0x5e, 0xb4,
+ 0x0f, 0x1e, 0xd9, 0x66, 0x5c, 0xcb, 0x77, 0x71, 0x35, 0x46, 0xc3, 0x7e,
+ 0xb7, 0x1c, 0x95, 0x0d, 0xcf, 0x5c, 0x72, 0x7d, 0xa3, 0x52, 0x3c, 0x27,
+ 0x2a, 0x04, 0x77, 0xaf, 0x0a, 0x62, 0x10, 0x3c, 0x8a, 0x48, 0x71, 0x18,
+ 0x21, 0xd6, 0xb0, 0xc9, 0x72, 0xc3, 0x61, 0x25, 0xd2, 0x90, 0x86, 0x1a,
+ 0xb5, 0x2a, 0x8e, 0xe0, 0x6d, 0x5a, 0x48, 0xab, 0x14, 0xe4, 0x4a, 0x64,
+ 0x95, 0x1e, 0x6f, 0xb1, 0x11, 0xb2, 0x0a, 0xb4, 0x26, 0x27, 0x1f, 0x2a,
+ 0x6e, 0x9c, 0xae, 0xdf, 0x28, 0x7a, 0xad, 0x87, 0x42, 0x7b, 0x68, 0x8a,
+ 0x13, 0xed, 0xbb, 0xf1, 0x4c, 0x50, 0x51, 0x5a, 0x74, 0xf4, 0xda, 0x6c,
+ 0xaa, 0x60, 0x39, 0x58, 0x1b, 0xd6, 0x6c, 0x6c, 0x93, 0x68, 0x5d, 0xad,
+ 0x0b, 0x1a, 0x02, 0xcf, 0xb8, 0x3f, 0x4f, 0x76, 0xfa, 0x41, 0x8d, 0xaf,
+ 0x4d, 0x89, 0xff, 0xcf, 0xa1, 0xfd, 0x38, 0xdc, 0x42, 0xb1, 0x5e, 0x70,
+ 0x9c, 0xdb, 0x56, 0xc7, 0x50, 0xa8, 0x89, 0x5f, 0x3a, 0x98, 0xdd, 0x17,
+ 0x7b, 0xa3, 0xdd, 0xe7, 0x9f, 0x8f, 0x76, 0x46, 0xbb, 0x3b, 0xcc, 0x5f,
+ 0x78, 0x28, 0xc1, 0xe0, 0x64, 0x5d, 0x3a, 0xba, 0xaa, 0xbd, 0xd7, 0xee,
+ 0xf3, 0xdd, 0xd1, 0xc5, 0xf7, 0xa7, 0xe7, 0xdf, 0x46, 0xc7, 0xef, 0x2e,
+ 0x8e, 0xce, 0xdf, 0x1c, 0x1c, 0x7e, 0x2a, 0x76, 0x7f, 0x68, 0xb6, 0x0e,
+ 0xca, 0x5c, 0x27, 0x7e, 0x61, 0xda, 0xb6, 0x41, 0xbf, 0x66, 0x49, 0x75,
+ 0xbd, 0xb3, 0xbf, 0xfb, 0x20, 0x3a, 0x75, 0x87, 0x79, 0xd0, 0xbf, 0x6f,
+ 0x93, 0xda, 0xe5, 0x49, 0xad, 0x6f, 0xc5, 0xa1, 0x34, 0x8e, 0x25, 0xcc,
+ 0xca, 0x85, 0xe8, 0x82, 0xcd, 0xa3, 0x8a, 0x12, 0xc0, 0x59, 0x95, 0xb1,
+ 0x4f, 0x04, 0x07, 0x57, 0x32, 0x6d, 0x15, 0x6f, 0x46, 0xc3, 0xd1, 0x95,
+ 0xe7, 0x6e, 0x48, 0x49, 0xe9, 0x4a, 0xcd, 0x29, 0x82, 0x6c, 0x3b, 0x83,
+ 0x88, 0x67, 0x5c, 0x59, 0xd3, 0xd8, 0x98, 0x5a, 0xb4, 0xca, 0xa9, 0x60,
+ 0x0f, 0xce, 0x5c, 0xca, 0x88, 0x03, 0x24, 0x40, 0x14, 0x84, 0xc9, 0xe9,
+ 0x18, 0x6b, 0xbd, 0x2a, 0x78, 0x18, 0x49, 0xdb, 0x80, 0x61, 0x2d, 0x2d,
+ 0xc4, 0x19, 0x13, 0xab, 0x99, 0x46, 0x0f, 0x75, 0x20, 0x38, 0x0d, 0xc1,
+ 0x68, 0xa4, 0x2b, 0x08, 0x54, 0x8c, 0x97, 0x06, 0xa4, 0xc8, 0x1a, 0x58,
+ 0xb2, 0xdc, 0x51, 0x48, 0xa3, 0x10, 0xf9, 0xcf, 0x0a, 0x5c, 0x70, 0xeb,
+ 0x65, 0x0d, 0xaf, 0x30, 0x92, 0xca, 0x56, 0xe1, 0xeb, 0x22, 0x6a, 0x23,
+ 0x50, 0x73, 0x56, 0xc4, 0x77, 0x28, 0xcf, 0x92, 0x7a, 0xf4, 0xd1, 0x8d,
+ 0xa8, 0x56, 0x9e, 0x8b, 0x05, 0x27, 0xbf, 0xe6, 0xd1, 0xd9, 0xd1, 0xdb,
+ 0xa1, 0x15, 0x15, 0xa6, 0xdf, 0xc5, 0x18, 0x65, 0x50, 0x93, 0x92, 0xe6,
+ 0xb3, 0x4c, 0x32, 0x0b, 0xab, 0x01, 0x4f, 0xd4, 0x38, 0xa0, 0x70, 0x02,
+ 0x7c, 0x68, 0x1c, 0x18, 0xa5, 0x46, 0x8f, 0x5a, 0xf8, 0xa5, 0xa4, 0x19,
+ 0x36, 0x11, 0x3a, 0x79, 0x3f, 0x35, 0x76, 0x39, 0xda, 0x74, 0xf1, 0xba,
+ 0xdc, 0x1f, 0x82, 0x52, 0x11, 0x33, 0xe0, 0xc2, 0x04, 0x72, 0x4b, 0xc2,
+ 0x3e, 0xfb, 0xf6, 0x70, 0xfc, 0xbb, 0xdd, 0x3d, 0x1d, 0xce, 0x96, 0x69,
+ 0x05, 0xcc, 0xab, 0x9a, 0xf9, 0xf9, 0x60, 0xd7, 0xe1, 0x18, 0x2d, 0xdb,
+ 0x1a, 0x07, 0x1c, 0x9b, 0xb1, 0xe9, 0x72, 0x84, 0xb6, 0x6a, 0x49, 0x42,
+ 0x1b, 0x52, 0xdb, 0xde, 0x44, 0x4c, 0x57, 0xf8, 0x97, 0x5d, 0x22, 0x28,
+ 0x0f, 0xa5, 0x05, 0x9a, 0x2a, 0x17, 0xf5, 0x17, 0x67, 0xf6, 0x91, 0xb4,
+ 0xac, 0xad, 0x21, 0x9d, 0xdc, 0x47, 0xb6, 0x34, 0xf7, 0x9c, 0xd7, 0xdb,
+ 0x7f, 0xcb, 0x90, 0xb1, 0x7a, 0xb3, 0x1b, 0x36, 0x90, 0xef, 0x06, 0x07,
+ 0x40, 0x03, 0xd9, 0x67, 0x56, 0x02, 0x2e, 0xf3, 0x15, 0x51, 0xf8, 0xe9,
+ 0x53, 0xda, 0x28, 0x3a, 0x59, 0x02, 0xe1, 0xc0, 0x4c, 0x21, 0x9f, 0xb3,
+ 0xea, 0xe2, 0x1e, 0x79, 0x5d, 0x70, 0xe9, 0x99, 0xa5, 0x84, 0x94, 0xbe,
+ 0x1b, 0x45, 0xdf, 0x24, 0x19, 0xe7, 0xd0, 0x73, 0xf0, 0x9d, 0xa5, 0x61,
+ 0x21, 0x44, 0x90, 0x6b, 0x50, 0xa2, 0x26, 0xdf, 0x49, 0x12, 0x2b, 0x3c,
+ 0x27, 0xf1, 0xba, 0x52, 0x34, 0x5c, 0xab, 0x47, 0x15, 0x73, 0xa0, 0x9e,
+ 0x62, 0x89, 0x3a, 0xdc, 0x0b, 0xc1, 0x8b, 0xe6, 0x06, 0x36, 0xeb, 0x18,
+ 0x9b, 0xa8, 0x8e, 0x80, 0xe6, 0xf4, 0x98, 0xc3, 0xd7, 0xa4, 0x56, 0xe5,
+ 0x6b, 0x20, 0x6b, 0xb3, 0xb5, 0x50, 0x34, 0x2e, 0xcf, 0x54, 0x66, 0xc5,
+ 0x35, 0x9b, 0x3e, 0x4a, 0xba, 0x6e, 0xe2, 0x6c, 0x7a, 0x3f, 0x9a, 0x91,
+ 0x2c, 0xcb, 0xc6, 0xb3, 0xd1, 0xea, 0x66, 0x3b, 0x38, 0xa6, 0xcc, 0xf2,
+ 0xaf, 0x05, 0x2e, 0xa0, 0x6e, 0xf8, 0xb6, 0x62, 0xc7, 0x6d, 0x14, 0xb1,
+ 0xb8, 0x76, 0x26, 0x98, 0x24, 0x2c, 0xf1, 0x5f, 0x8e, 0xe7, 0x5a, 0xbc,
+ 0xad, 0xa3, 0xc8, 0x81, 0x1d, 0x73, 0x0b, 0xa3, 0x65, 0xb2, 0xd8, 0x77,
+ 0x89, 0xc9, 0xc6, 0x1f, 0xb4, 0xc0, 0x86, 0x53, 0x2c, 0x02, 0x23, 0x6d,
+ 0x96, 0x5c, 0xcd, 0x55, 0xa0, 0x08, 0x55, 0x17, 0xd7, 0x44, 0x47, 0x36,
+ 0x88, 0x28, 0x3c, 0x5a, 0x2d, 0x09, 0x12, 0x3b, 0xd1, 0x61, 0xa5, 0xd1,
+ 0xb5, 0xf2, 0x70, 0xc1, 0x02, 0xbd, 0x6f, 0x44, 0x41, 0x44, 0x80, 0xbb,
+ 0x8c, 0xc2, 0xf2, 0x62, 0xe2, 0xb1, 0xa0, 0x24, 0x75, 0x3f, 0x31, 0x26,
+ 0x2c, 0x28, 0x04, 0x88, 0xee, 0x1a, 0x20, 0x0d, 0xe7, 0xa7, 0xd5, 0x14,
+ 0x96, 0xb3, 0x42, 0x5f, 0xdf, 0x3e, 0x61, 0x8b, 0xf7, 0xc5, 0xc9, 0xd8,
+ 0xbc, 0x22, 0x59, 0x72, 0x17, 0x90, 0x96, 0x54, 0x21, 0x50, 0xfa, 0x63,
+ 0x03, 0x90, 0xa0, 0x2b, 0x03, 0xf8, 0x00, 0x23, 0x11, 0xae, 0xe0, 0xdd,
+ 0x64, 0x3e, 0x0f, 0xc2, 0x16, 0x41, 0x23, 0x8a, 0x79, 0x28, 0x56, 0xfa,
+ 0x4c, 0x84, 0x21, 0x07, 0xfa, 0xc2, 0x30, 0x7e, 0x24, 0x2c, 0x3d, 0x19,
+ 0x44, 0xc3, 0x3d, 0x40, 0xe9, 0xec, 0xd6, 0x17, 0x31, 0xae, 0x04, 0x31,
+ 0x90, 0xdb, 0xa0, 0x96, 0xac, 0x15, 0x65, 0x07, 0x9b, 0x4a, 0xd2, 0xb7,
+ 0xf4, 0x3e, 0xff, 0xd8, 0xd3, 0x09, 0xdd, 0xee, 0x22, 0x78, 0x5b, 0x20,
+ 0x2c, 0xe7, 0xf7, 0x6d, 0x91, 0x61, 0xef, 0xc1, 0x5d, 0x45, 0x9a, 0xc4,
+ 0x5d, 0xea, 0xb0, 0xa4, 0xa5, 0x7e, 0x02, 0x4c, 0xa1, 0x8a, 0x0e, 0x6a,
+ 0x03, 0xa0, 0x25, 0x54, 0x23, 0x77, 0x16, 0xdd, 0xee, 0x99, 0xaf, 0x99,
+ 0xbf, 0xb1, 0x75, 0x13, 0x63, 0xbd, 0x67, 0x22, 0xad, 0x0c, 0x46, 0x0e,
+ 0x78, 0x0b, 0xa8, 0x96, 0x13, 0xa0, 0x88, 0x66, 0x89, 0x8b, 0xd4, 0xb8,
+ 0x4c, 0x9e, 0xa9, 0x59, 0x41, 0xb2, 0xdf, 0x05, 0x9a, 0x9e, 0x15, 0xf8,
+ 0x20, 0xcc, 0x09, 0x41, 0xe0, 0x41, 0x70, 0xe4, 0x71, 0xe6, 0x72, 0x26,
+ 0xd4, 0x94, 0x0f, 0xb4, 0x3e, 0x6c, 0xff, 0x75, 0x2a, 0x86, 0x09, 0x84,
+ 0x9d, 0xe2, 0x3a, 0xa7, 0x93, 0xdf, 0x8f, 0xe8, 0x30, 0xad, 0x98, 0xe3,
+ 0x57, 0xae, 0x0e, 0xdb, 0x58, 0x50, 0x3e, 0xfb, 0x21, 0x9b, 0x1b, 0x7e,
+ 0xc1, 0x53, 0x29, 0xfb, 0x7e, 0xee, 0x8a, 0x76, 0x5e, 0x9f, 0x88, 0xfa,
+ 0x39, 0xac, 0xf2, 0xd8, 0x59, 0x61, 0x05, 0xd6, 0xfb, 0x47, 0x1f, 0x59,
+ 0xc6, 0xe9, 0x6b, 0x4f, 0xf2, 0xb5, 0xa4, 0xf7, 0x63, 0x8d, 0xce, 0x8e,
+ 0xdf, 0x49, 0xc9, 0x70, 0x77, 0x16, 0x12, 0x46, 0x61, 0xdc, 0x90, 0x6a,
+ 0xf7, 0x18, 0x4f, 0x6c, 0x70, 0xf0, 0x62, 0x38, 0x62, 0x9a, 0x61, 0x1a,
+ 0x4f, 0xb5, 0xaf, 0xf3, 0x95, 0xf4, 0xde, 0xe7, 0x7b, 0xae, 0x2c, 0xe7,
+ 0xfd, 0x46, 0x19, 0x5c, 0xb7, 0x27, 0x8d, 0x0b, 0xc5, 0x59, 0xa4, 0xa6,
+ 0x33, 0x2f, 0xe0, 0xa3, 0xd4, 0x37, 0xb7, 0x52, 0xe3, 0x73, 0x83, 0x46,
+ 0xd2, 0x63, 0x68, 0x0a, 0xff, 0x5d, 0x34, 0xda, 0xa6, 0x0e, 0xcb, 0x6d,
+ 0x7b, 0x71, 0x79, 0x33, 0x2d, 0xe9, 0x86, 0xe3, 0x0c, 0xdf, 0x1f, 0xa1,
+ 0x90, 0x63, 0x3b, 0x68, 0xc4, 0xb3, 0x9f, 0xa3, 0xe1, 0x74, 0x8e, 0xf9,
+ 0x45, 0x28, 0xb8, 0xfd, 0x23, 0xed, 0x3c, 0x3f, 0xf1, 0xb3, 0xdb, 0xc3,
+ 0x37, 0x29, 0x9f, 0xb7, 0x8f, 0x03, 0x9b, 0xfa, 0xa9, 0x28, 0x0c, 0x02,
+ 0x75, 0x1b, 0x1d, 0xcc, 0x6e, 0x39, 0xff, 0x6e, 0xa6, 0x7f, 0xf2, 0x7c,
+ 0x8e, 0x32, 0x94, 0x2a, 0xc5, 0x4c, 0xe3, 0x89, 0x54, 0x27, 0xff, 0x2e,
+ 0x25, 0xa5, 0xe3, 0xb0, 0x21, 0x5f, 0x70, 0x2a, 0x20, 0x0f, 0x10, 0x6f,
+ 0x05, 0x5f, 0x5a, 0x5e, 0xc7, 0x40, 0xd3, 0x17, 0x7c, 0xe4, 0x1f, 0x73,
+ 0x67, 0xde, 0xba, 0x51, 0xf4, 0x15, 0xfb, 0x38, 0x8b, 0x24, 0x00, 0x82,
+ 0xd5, 0x8b, 0x4f, 0x4a, 0xfa, 0xf1, 0x66, 0xc4, 0x02, 0x45, 0x31, 0x72,
+ 0x33, 0x69, 0xa5, 0xc3, 0xb8, 0x39, 0xb9, 0x6f, 0xea, 0x93, 0xc3, 0xb8,
+ 0x2c, 0xbb, 0x9d, 0xa6, 0x62, 0xa9, 0x13, 0x51, 0x6b, 0x2a, 0x01, 0x44,
+ 0xa5, 0x8c, 0x50, 0x2e, 0xcc, 0x59, 0x62, 0x39, 0xfe, 0x79, 0x08, 0xac,
+ 0x62, 0x96, 0x63, 0x34, 0x65, 0x12, 0x81, 0x23, 0x09, 0xdc, 0xe1, 0x7e,
+ 0xd4, 0x87, 0xd7, 0xc4, 0x9a, 0x13, 0x37, 0xd4, 0xb1, 0x98, 0xf4, 0x6c,
+ 0x88, 0x63, 0xbe, 0xa3, 0x6c, 0x13, 0xdc, 0x97, 0x96, 0x28, 0x09, 0x29,
+ 0x74, 0x5b, 0x78, 0x97, 0xa3, 0x5d, 0x59, 0xdd, 0xfa, 0x14, 0x38, 0xbf,
+ 0x71, 0xfc, 0xfe, 0x2d, 0x57, 0x39, 0x41, 0x05, 0xeb, 0x8b, 0xf3, 0x83,
+ 0x77, 0xe3, 0x37, 0x62, 0x1a, 0xbf, 0xc8, 0x83, 0xc2, 0xd8, 0xea, 0x57,
+ 0x30, 0xff, 0xb1, 0x43, 0x8c, 0xbb, 0x93, 0xd2, 0x1b, 0x16, 0x5a, 0xaf,
+ 0x55, 0xb3, 0x07, 0x4d, 0xe8, 0x7d, 0x29, 0xb9, 0xcd, 0xab, 0xc1, 0x43,
+ 0xdb, 0x1c, 0x6f, 0x39, 0x41, 0xa8, 0x0c, 0xcb, 0xb3, 0xf9, 0xca, 0xf5,
+ 0x06, 0x12, 0xad, 0x0f, 0xf1, 0xb2, 0x1c, 0xda, 0x60, 0xec, 0x53, 0xb9,
+ 0x7b, 0xd7, 0xe2, 0x92, 0x1e, 0x92, 0xaa, 0x38, 0xd4, 0xa2, 0x35, 0x41,
+ 0x31, 0x3a, 0x67, 0x4e, 0x95, 0xbb, 0x57, 0x51, 0xfd, 0x5c, 0xe3, 0x61,
+ 0x0a, 0xa8, 0x35, 0xbd, 0xf9, 0x87, 0xdd, 0xad, 0xee, 0xe6, 0x2f, 0x7e,
+ 0x69, 0xf3, 0xdd, 0x63, 0x37, 0xdd, 0xcc, 0x67, 0x17, 0x6d, 0xfe, 0x61,
+ 0x6f, 0xeb, 0xc1, 0x19, 0x85, 0x09, 0x92, 0xbe, 0x4f, 0x7a, 0x83, 0x07,
+ 0x1b, 0xbd, 0x92, 0x63, 0xe6, 0x64, 0x26, 0x17, 0xa1, 0x13, 0x40, 0x0f,
+ 0xd7, 0xb0, 0x3b, 0x38, 0x82, 0xdb, 0x49, 0xea, 0xde, 0xf1, 0xa6, 0x89,
+ 0x26, 0xc7, 0xff, 0xfb, 0x28, 0x44, 0x94, 0xcc, 0xfa, 0x55, 0x78, 0x45,
+ 0x31, 0x50, 0x40, 0x99, 0x8f, 0xd0, 0xf7, 0xde, 0x03, 0x7d, 0xfb, 0xd9,
+ 0x05, 0x66, 0x09, 0xf6, 0x62, 0x73, 0x18, 0x9c, 0x01, 0x63, 0x6b, 0x3f,
+ 0x1b, 0xbe, 0xe2, 0xfa, 0xfa, 0xfe, 0x2e, 0x8e, 0xdf, 0x1e, 0x31, 0x80,
+ 0xf6, 0xeb, 0x63, 0xc6, 0xa1, 0x1b, 0x2b, 0x12, 0xa4, 0x59, 0x20, 0x1c,
+ 0x38, 0x6f, 0x58, 0x38, 0x45, 0xdc, 0xbb, 0x2e, 0xda, 0xcc, 0x71, 0x0e,
+ 0xb7, 0x13, 0xdc, 0xb5, 0x86, 0x43, 0x97, 0x96, 0x74, 0x79, 0x7c, 0x39,
+ 0x7c, 0x9b, 0xcf, 0xa0, 0x25, 0x0f, 0xc7, 0x08, 0x15, 0xa4, 0xb7, 0xe8,
+ 0xc3, 0xf7, 0xd9, 0xa2, 0xf6, 0xf1, 0xa8, 0x23, 0x69, 0x77, 0x63, 0x5d,
+ 0x7d, 0x9e, 0xbf, 0x6d, 0x0f, 0x87, 0x3c, 0x98, 0xa1, 0x84, 0x75, 0xa9,
+ 0x73, 0xa7, 0x06, 0xd5, 0x61, 0xac, 0x85, 0x16, 0x28, 0x9d, 0xdf, 0x4b,
+ 0x20, 0x42, 0xec, 0xc3, 0xc7, 0x7c, 0x22, 0xe7, 0x15, 0x27, 0x93, 0x79,
+ 0x13, 0x9f, 0x18, 0xf1, 0x36, 0x42, 0x1c, 0x53, 0x28, 0x52, 0xc9, 0x9d,
+ 0x8f, 0x7f, 0xd2, 0xf2, 0xcd, 0xf9, 0xf2, 0x1e, 0xb3, 0xbc, 0xab, 0x85,
+ 0x56, 0x74, 0xfa, 0x57, 0xff, 0x26, 0xef, 0xd4, 0x2a, 0x52, 0x29, 0xdc,
+ 0x74, 0x40, 0x81, 0xfa, 0x89, 0x16, 0x70, 0x3a, 0x2d, 0x82, 0xeb, 0x4a,
+ 0x87, 0x6d, 0x85, 0xee, 0x02, 0x8c, 0xd3, 0x00, 0x92, 0xb5, 0x3e, 0xce,
+ 0x10, 0x0f, 0x36, 0xe7, 0x2c, 0xd8, 0xd7, 0xb9, 0x73, 0x8e, 0x11, 0xdb,
+ 0x59, 0xd6, 0x0b, 0x24, 0x27, 0x91, 0xe5, 0x7b, 0x4b, 0x3a, 0x7f, 0x7f,
+ 0xd8, 0x47, 0x89, 0x86, 0x34, 0xeb, 0x98, 0xcc, 0xf0, 0x97, 0xcf, 0xa6,
+ 0xe5, 0x7a, 0x8d, 0x7a, 0x97, 0x8c, 0x89, 0xc1, 0x7e, 0xac, 0x9e, 0x0c,
+ 0x40, 0x20, 0x63, 0x84, 0xb8, 0xe8, 0x82, 0x60, 0xbe, 0x66, 0x8a, 0xa4,
+ 0x28, 0xd5, 0x2e, 0x32, 0xd6, 0x19, 0xc9, 0xc5, 0x2a, 0xc9, 0x8c, 0x74,
+ 0xb5, 0x9c, 0x21, 0x28, 0x43, 0xc2, 0x51, 0xff, 0x9d, 0xf1, 0xb1, 0x8b,
+ 0xfb, 0x68, 0x77, 0x6f, 0x10, 0xed, 0xed, 0xec, 0xee, 0x75, 0xcc, 0xa1,
+ 0xf7, 0xef, 0x1c, 0x14, 0xb5, 0x87, 0xaf, 0x7b, 0x9f, 0x3a, 0x0b, 0x9f,
+ 0xda, 0x80, 0x9b, 0x44, 0x93, 0x80, 0x89, 0xf9, 0xb0, 0x7f, 0x16, 0x98,
+ 0xcc, 0xa8, 0x9a, 0x0c, 0x64, 0x3b, 0x5c, 0x5b, 0x62, 0x24, 0xb4, 0x6a,
+ 0x9b, 0xae, 0x8a, 0xd8, 0x0c, 0x45, 0x75, 0xa4, 0x70, 0x2d, 0x22, 0x5f,
+ 0x9c, 0xa5, 0x34, 0x2e, 0x50, 0x4a, 0xb4, 0xbe, 0x47, 0x69, 0x65, 0xdb,
+ 0xc2, 0xa1, 0x35, 0xbc, 0x37, 0x44, 0xef, 0xaf, 0x8f, 0x0f, 0x2f, 0x0c,
+ 0xfa, 0xf0, 0x92, 0x85, 0xa7, 0xe2, 0xfe, 0xd3, 0xea, 0x32, 0x3e, 0xf8,
+ 0xcc, 0x6c, 0xff, 0x3a, 0x21, 0x31, 0x3a, 0x9b, 0xac, 0xae, 0xf6, 0xff,
+ 0x12, 0x17, 0x57, 0x79, 0xf6, 0xd8, 0xf3, 0x33, 0xe4, 0x96, 0xed, 0x13,
+ 0x87, 0xda, 0x7d, 0xb1, 0xfb, 0x44, 0x12, 0x17, 0x52, 0xd4, 0x06, 0x62,
+ 0x06, 0xd1, 0x5f, 0xf4, 0x05, 0x6b, 0x03, 0x19, 0x13, 0x0e, 0x60, 0x23,
+ 0x9b, 0xf5, 0xe5, 0xba, 0x8f, 0xc3, 0x67, 0x67, 0xfa, 0xac, 0x64, 0xa1,
+ 0xf7, 0x37, 0xa4, 0x4c, 0x4a, 0x9f, 0x33, 0x36, 0x57, 0xcb, 0x7e, 0x1d,
+ 0x2d, 0xfe, 0x91, 0xb9, 0x72, 0x17, 0xae, 0x0c, 0xe5, 0xa1, 0xc3, 0xc0,
+ 0x47, 0x32, 0x51, 0x91, 0xc4, 0x37, 0xbe, 0x8c, 0xb2, 0x07, 0xe2, 0x30,
+ 0x97, 0xc7, 0xf9, 0x9b, 0x43, 0x01, 0x33, 0xb5, 0xd4, 0x29, 0x2c, 0x75,
+ 0xe4, 0x4c, 0x53, 0x5b, 0x3c, 0xca, 0x47, 0xfa, 0xe7, 0xdc, 0x86, 0xfd,
+ 0xd9, 0xe4, 0x13, 0x1e, 0xa2, 0x73, 0x27, 0xb8, 0x71, 0x07, 0xf5, 0x2a,
+ 0x3c, 0xac, 0xa8, 0xa1, 0x94, 0x88, 0xd5, 0x4c, 0xde, 0x94, 0x9a, 0xb4,
+ 0xe2, 0x71, 0xe0, 0xa1, 0x59, 0x25, 0x6a, 0xb3, 0xee, 0xd0, 0xb8, 0xb9,
+ 0xde, 0xeb, 0xeb, 0x83, 0xb3, 0x40, 0xd1, 0x85, 0x22, 0xe9, 0x8d, 0x7a,
+ 0xfc, 0x1c, 0x2b, 0x3a, 0x28, 0xc9, 0xae, 0x85, 0x99, 0x06, 0x5e, 0x45,
+ 0xa9, 0xc0, 0x27, 0x59, 0x36, 0x42, 0x80, 0x7c, 0xae, 0xf7, 0x09, 0xec,
+ 0x4f, 0x28, 0x6c, 0x30, 0x9f, 0xc5, 0x70, 0x84, 0xea, 0x2d, 0x04, 0x99,
+ 0x0b, 0x6d, 0xa5, 0x1a, 0x0d, 0x45, 0x7b, 0xf3, 0x31, 0xd2, 0x24, 0x0e,
+ 0xcd, 0x56, 0xd1, 0xd2, 0x23, 0x78, 0x8c, 0x13, 0x94, 0xef, 0x6d, 0x02,
+ 0xc2, 0x9f, 0x69, 0xf0, 0x71, 0x79, 0x43, 0xac, 0x54, 0x1c, 0xf8, 0xd4,
+ 0x7b, 0xaa, 0x2e, 0x70, 0x36, 0xfa, 0xa4, 0x12, 0x48, 0xc3, 0xe6, 0x27,
+ 0x40, 0x22, 0xd5, 0x36, 0x4c, 0xae, 0x20, 0xd6, 0x38, 0xe7, 0x65, 0x22,
+ 0x00, 0x86, 0xd1, 0xc5, 0x5d, 0x2e, 0x2a, 0x46, 0x69, 0xe1, 0xb5, 0x12,
+ 0x8a, 0x5a, 0xae, 0x52, 0x91, 0x22, 0x69, 0xf3, 0xc0, 0x0f, 0x82, 0x82,
+ 0xb2, 0x3d, 0x67, 0xf9, 0x7a, 0xed, 0xfc, 0x9e, 0xe3, 0xd7, 0xdf, 0x46,
+ 0x9c, 0x5a, 0xcf, 0x7d, 0x1c, 0x32, 0xb4, 0x3f, 0x87, 0x30, 0x2c, 0xa0,
+ 0xfd, 0x7d, 0xbd, 0xe2, 0xf3, 0x7e, 0x78, 0x1d, 0x2f, 0x59, 0x01, 0xda,
+ 0xdd, 0x61, 0x73, 0xc9, 0xf7, 0x96, 0xa4, 0xc7, 0x07, 0xd5, 0x0a, 0xde,
+ 0x97, 0xbd, 0xc0, 0x92, 0x32, 0xe3, 0x7a, 0xf5, 0xac, 0x01, 0xd5, 0x8d,
+ 0xb4, 0x74, 0x7d, 0x96, 0xdb, 0x02, 0xe8, 0x5f, 0x12, 0x69, 0x14, 0xe5,
+ 0xec, 0x66, 0x7b, 0x4a, 0xff, 0x3c, 0xd9, 0xd9, 0x06, 0xa6, 0x66, 0x05,
+ 0x9b, 0x26, 0xd3, 0xe4, 0xde, 0xde, 0xb3, 0x67, 0x83, 0xa8, 0xc7, 0x56,
+ 0x46, 0xeb, 0x80, 0x8f, 0x04, 0x9d, 0xac, 0x5e, 0x57, 0x65, 0xdd, 0xed,
+ 0xe2, 0x72, 0xca, 0xff, 0xe3, 0xd7, 0xac, 0xa0, 0xe4, 0x85, 0x66, 0xdd,
+ 0x60, 0x1d, 0xb2, 0x10, 0x26, 0x47, 0xc8, 0x8a, 0xbf, 0x3b, 0x76, 0x76,
+ 0x24, 0x76, 0x1a, 0x2d, 0x93, 0x7c, 0x69, 0xde, 0xe1, 0x85, 0x96, 0x0a,
+ 0x41, 0xf7, 0x81, 0x4b, 0x0d, 0xfe, 0x7c, 0x09, 0x87, 0x53, 0x3c, 0x84,
+ 0x72, 0x35, 0x19, 0x6a, 0x62, 0xb0, 0x68, 0x95, 0x29, 0x9d, 0x5c, 0xfa,
+ 0x73, 0x6e, 0xe6, 0xfa, 0x16, 0x47, 0xfe, 0x2a, 0xea, 0x29, 0x6d, 0xf1,
+ 0x8f, 0x11, 0x9c, 0xbb, 0xc9, 0x94, 0xa7, 0x91, 0xbf, 0xd2, 0x3f, 0xfe,
+ 0xed, 0xdf, 0xa8, 0xd9, 0x7f, 0xe3, 0x56, 0x5e, 0xfd, 0xa1, 0xac, 0xae,
+ 0x83, 0x67, 0x7a, 0x4a, 0xf0, 0xc7, 0xde, 0xb5, 0x8d, 0x70, 0x35, 0x20,
+ 0xce, 0x22, 0x7f, 0xed, 0xed, 0x89, 0x72, 0xe4, 0x41, 0x30, 0xbf, 0x14,
+ 0x99, 0x85, 0x62, 0x24, 0x75, 0xd1, 0x22, 0x5f, 0xb1, 0xdb, 0x39, 0xe1,
+ 0x8c, 0x74, 0xba, 0x48, 0x00, 0x28, 0xb8, 0x65, 0x22, 0xc6, 0xd1, 0xbb,
+ 0xef, 0x8e, 0xcf, 0x4f, 0xdf, 0xbd, 0x3d, 0x7a, 0x77, 0x11, 0x7d, 0x77,
+ 0x70, 0x7e, 0x7c, 0xf0, 0xd5, 0x89, 0x26, 0xbe, 0xf3, 0x14, 0x38, 0xc8,
+ 0x47, 0x64, 0xef, 0x06, 0x20, 0x6c, 0x90, 0x88, 0xd4, 0x59, 0x46, 0xa4,
+ 0x51, 0x20, 0xf9, 0x83, 0xa2, 0x99, 0x43, 0x13, 0xf9, 0x80, 0x8a, 0x48,
+ 0x03, 0x16, 0x3e, 0x3f, 0x58, 0x71, 0x24, 0x56, 0x9e, 0xee, 0x83, 0x54,
+ 0x6a, 0x8e, 0x3f, 0x62, 0x2a, 0x35, 0xfe, 0xe4, 0xcb, 0x02, 0xba, 0x3a,
+ 0x1b, 0x5f, 0x4b, 0x36, 0xbe, 0x15, 0x1d, 0xb1, 0x57, 0x35, 0x33, 0x0c,
+ 0x76, 0x37, 0x37, 0x86, 0x83, 0x93, 0x13, 0xdf, 0xd5, 0xc3, 0xf5, 0x68,
+ 0x14, 0x89, 0x49, 0x92, 0xb7, 0xd0, 0x28, 0x3b, 0x06, 0xaf, 0x72, 0x0f,
+ 0xcd, 0x9e, 0xdd, 0x87, 0x28, 0xec, 0xdc, 0x19, 0x6d, 0xc7, 0xa6, 0x40,
+ 0x68, 0xb0, 0x97, 0x98, 0x0e, 0x50, 0x5a, 0xde, 0x0c, 0xa2, 0xfe, 0x1f,
+ 0xfa, 0x5a, 0x52, 0x1c, 0xb8, 0xc1, 0x52, 0xed, 0x66, 0xcb, 0x0f, 0xea,
+ 0xdd, 0xa9, 0x1f, 0x93, 0x3a, 0x3e, 0xdd, 0x00, 0xdc, 0x8b, 0xde, 0x6d,
+ 0x5d, 0x9a, 0x3c, 0x83, 0x78, 0x51, 0xff, 0xb8, 0x96, 0x84, 0x70, 0xc8,
+ 0x00, 0x4a, 0xa3, 0xec, 0xd8, 0xea, 0x7c, 0x17, 0x5a, 0x5b, 0x3c, 0x0d,
+ 0xe0, 0xa1, 0x31, 0xd7, 0x8c, 0x4d, 0x1d, 0xae, 0x4c, 0x97, 0x59, 0x03,
+ 0x69, 0xa9, 0xd9, 0xa6, 0xa7, 0xee, 0xc4, 0x55, 0xa9, 0x1c, 0x14, 0x54,
+ 0xf5, 0x71, 0xdb, 0xaa, 0xde, 0xc0, 0xc7, 0xc8, 0xf9, 0x00, 0x45, 0x3a,
+ 0x53, 0xb8, 0xc1, 0x4e, 0xaa, 0x18, 0xc1, 0x35, 0x75, 0x7e, 0x08, 0x74,
+ 0xf6, 0x8c, 0xeb, 0x33, 0xfa, 0xaa, 0x1a, 0x88, 0x1d, 0x26, 0x2e, 0x52,
+ 0x70, 0x42, 0x5e, 0xa6, 0x42, 0x08, 0xe2, 0x71, 0x21, 0xa3, 0xc7, 0x57,
+ 0xb9, 0xc9, 0xdf, 0xb1, 0x73, 0x9a, 0xbb, 0xda, 0x63, 0x81, 0x4c, 0xef,
+ 0x30, 0xc4, 0x9c, 0xc9, 0x12, 0xee, 0x75, 0x73, 0x10, 0x70, 0x78, 0x19,
+ 0x6f, 0xb9, 0xd5, 0x92, 0x2e, 0x83, 0x2c, 0x6d, 0x9f, 0xbd, 0xc0, 0xbc,
+ 0x44, 0x82, 0xf4, 0x0d, 0xd4, 0x0b, 0x40, 0x6a, 0x96, 0xd5, 0x8d, 0x40,
+ 0x47, 0x0c, 0x8b, 0x1f, 0x44, 0x93, 0x1a, 0xb3, 0x8a, 0x26, 0xcd, 0x76,
+ 0x4d, 0xa7, 0x67, 0xce, 0x09, 0x64, 0xc6, 0x89, 0xe2, 0x68, 0x92, 0x5e,
+ 0x09, 0x3a, 0x00, 0xa7, 0xa2, 0x33, 0x95, 0x00, 0xec, 0x8d, 0x14, 0x7b,
+ 0xde, 0x2a, 0x40, 0xb9, 0x41, 0x76, 0xbf, 0xce, 0xe7, 0x21, 0xde, 0x98,
+ 0xcd, 0xa4, 0xd4, 0xaa, 0x6a, 0x66, 0xfa, 0x84, 0xeb, 0x63, 0xc5, 0xeb,
+ 0x68, 0xd1, 0x68, 0x0a, 0x54, 0xae, 0xb1, 0x79, 0x6c, 0x53, 0x07, 0x6a,
+ 0x62, 0x86, 0x4c, 0x20, 0xcb, 0xaa, 0xc6, 0x3a, 0x58, 0xdc, 0x32, 0x73,
+ 0x0b, 0xd8, 0xd1, 0xb8, 0xe2, 0xe3, 0xa6, 0x43, 0x1a, 0xe7, 0x56, 0xa6,
+ 0x82, 0xd5, 0xca, 0x44, 0x2f, 0x1e, 0xe5, 0x7a, 0x69, 0x20, 0xdd, 0x2c,
+ 0x45, 0xd1, 0x22, 0x9a, 0xe0, 0x41, 0xd3, 0x4a, 0x6d, 0x06, 0x8c, 0x27,
+ 0x23, 0x12, 0x91, 0xc7, 0x44, 0x81, 0xd4, 0xbf, 0x86, 0xae, 0xaa, 0x99,
+ 0xfa, 0x9d, 0xb7, 0x7c, 0xdc, 0x81, 0x48, 0x01, 0x4c, 0xad, 0x53, 0xad,
+ 0x2b, 0x09, 0x0f, 0x3d, 0x17, 0xc5, 0x04, 0x34, 0x54, 0xcd, 0xf6, 0x18,
+ 0x59, 0xbe, 0xcd, 0x7c, 0x1e, 0x40, 0x8d, 0x8b, 0x39, 0x22, 0x6e, 0xc9,
+ 0x1e, 0xec, 0x1c, 0x92, 0x34, 0x54, 0x8d, 0xfc, 0x11, 0x58, 0xe2, 0x60,
+ 0x22, 0x1a, 0x53, 0xce, 0xd2, 0x59, 0xc3, 0xa4, 0x19, 0x30, 0x34, 0xf3,
+ 0x8e, 0x87, 0x17, 0x93, 0x56, 0xd6, 0x48, 0xe3, 0x85, 0xc8, 0x8e, 0x9e,
+ 0xfa, 0x16, 0xf7, 0x12, 0x75, 0xb8, 0xb1, 0x71, 0xf8, 0x7e, 0x7c, 0x71,
+ 0xfa, 0x36, 0x3a, 0x7d, 0x7f, 0x71, 0xf6, 0xfe, 0x42, 0x6f, 0xae, 0x89,
+ 0xc4, 0x6c, 0x4b, 0xe4, 0x82, 0x08, 0x01, 0xb6, 0x99, 0x0b, 0xf5, 0xef,
+ 0x23, 0xc4, 0x24, 0x07, 0xc0, 0x60, 0x80, 0x2d, 0xe4, 0x72, 0xb2, 0x80,
+ 0xba, 0x25, 0xc8, 0xc5, 0x58, 0xf2, 0x3b, 0x5a, 0x72, 0xe4, 0xd3, 0xc2,
+ 0x90, 0x67, 0x29, 0x5e, 0x50, 0x7b, 0xec, 0xac, 0xd5, 0xab, 0xd6, 0xdc,
+ 0xd7, 0xd5, 0x18, 0x38, 0xe7, 0xeb, 0x58, 0x4e, 0x61, 0xf1, 0x4c, 0xb1,
+ 0xed, 0x78, 0xd3, 0x4f, 0x18, 0xd2, 0xa9, 0xa5, 0x37, 0xcd, 0x00, 0x6d,
+ 0x51, 0xb5, 0x08, 0x35, 0xaa, 0x27, 0x16, 0x86, 0xf9, 0x8d, 0x55, 0x4e,
+ 0x33, 0xbc, 0x76, 0x11, 0xf1, 0x1c, 0x45, 0x84, 0x48, 0x40, 0x09, 0xa0,
+ 0xe0, 0x90, 0x3b, 0xd1, 0x18, 0x48, 0x0f, 0x64, 0x97, 0x45, 0xeb, 0x96,
+ 0xbd, 0x8b, 0xfa, 0xdf, 0x27, 0x61, 0x83, 0xbf, 0xff, 0x0f, 0x4e, 0xdb,
+ 0xfc, 0x60, 0x9f, 0xfc, 0x5d, 0xba, 0xfc, 0x29, 0xeb, 0x23, 0x80, 0xae,
+ 0xee, 0x29, 0xff, 0xf6, 0xe8, 0xfc, 0xab, 0xa3, 0xf3, 0xd3, 0x31, 0xf8,
+ 0x81, 0x99, 0xbb, 0xda, 0xb4, 0x7e, 0x93, 0x14, 0x93, 0xa4, 0xc8, 0xb5,
+ 0xa2, 0x96, 0xfd, 0xf5, 0x6c, 0xfb, 0xeb, 0xf1, 0xf8, 0xe0, 0xec, 0xd8,
+ 0xd5, 0xac, 0x71, 0x09, 0x64, 0xa2, 0x22, 0x65, 0x92, 0xe2, 0xc8, 0xf3,
+ 0xb7, 0x57, 0x88, 0x2e, 0xa6, 0x37, 0x12, 0x58, 0xdc, 0xf2, 0x49, 0x9b,
+ 0x5d, 0x9d, 0x9d, 0xd1, 0x9a, 0x57, 0xc8, 0x0d, 0x1b, 0x26, 0x54, 0x88,
+ 0x3b, 0x2f, 0x00, 0xf1, 0xec, 0x0b, 0x18, 0xb8, 0x08, 0xbc, 0x9b, 0x62,
+ 0x32, 0x24, 0x6a, 0xbf, 0xb1, 0x12, 0xce, 0x92, 0x07, 0x41, 0xac, 0x52,
+ 0x02, 0xa4, 0xbd, 0xad, 0x81, 0x64, 0xba, 0xb4, 0xda, 0xbe, 0xe1, 0xf3,
+ 0xc1, 0xf5, 0x54, 0xe6, 0x23, 0xe1, 0xee, 0x72, 0xa0, 0x2c, 0xea, 0x95,
+ 0x59, 0xec, 0x43, 0x38, 0x15, 0xd4, 0x9b, 0x2b, 0x82, 0x28, 0xf6, 0x2e,
+ 0xfa, 0xe4, 0xa9, 0x03, 0xec, 0x0a, 0x2b, 0x8a, 0x5f, 0x92, 0x00, 0xbe,
+ 0xbc, 0x9b, 0xe9, 0x25, 0x02, 0xbc, 0xea, 0x4c, 0xdc, 0x13, 0xc2, 0xc3,
+ 0x9b, 0x0e, 0x2a, 0x2e, 0xd4, 0x88, 0x84, 0x0d, 0x0d, 0x47, 0x8f, 0x26,
+ 0xf3, 0x38, 0xbb, 0xc1, 0x6d, 0x86, 0xfb, 0x89, 0x55, 0x4e, 0x83, 0xa1,
+ 0xe2, 0x02, 0x9a, 0xf0, 0x47, 0x2a, 0x32, 0x04, 0x84, 0xc0, 0x39, 0x33,
+ 0xb7, 0x7b, 0xb1, 0xe5, 0x3b, 0xb4, 0xad, 0xc0, 0xf3, 0x86, 0xe3, 0xe4,
+ 0x17, 0x81, 0x4d, 0x47, 0x47, 0x27, 0x74, 0x31, 0xb9, 0x24, 0x13, 0xa8,
+ 0xe8, 0xc9, 0x9c, 0x4d, 0xc1, 0x16, 0x11, 0x24, 0x79, 0x95, 0x29, 0x18,
+ 0x99, 0x70, 0x0f, 0x83, 0x52, 0x87, 0xff, 0x08, 0xe4, 0x82, 0xf4, 0xd1,
+ 0xd2, 0x15, 0x1c, 0x51, 0xce, 0x2d, 0x4c, 0x0c, 0x38, 0xa1, 0xbe, 0xfe,
+ 0x48, 0x58, 0x09, 0x47, 0xc3, 0xed, 0x0e, 0x7d, 0x3c, 0x90, 0x2b, 0x0d,
+ 0x26, 0x83, 0xf0, 0x62, 0xa9, 0xf3, 0x30, 0xd6, 0xb2, 0x5b, 0xd6, 0x6e,
+ 0x93, 0xbc, 0xde, 0x65, 0x04, 0x10, 0x78, 0xb3, 0x99, 0xfa, 0x3b, 0x1c,
+ 0x32, 0x90, 0x85, 0x2c, 0xd7, 0xc3, 0x84, 0x6d, 0xe0, 0x12, 0x0d, 0xc0,
+ 0xc6, 0xdb, 0x79, 0x65, 0x4e, 0x43, 0x84, 0xb8, 0xea, 0x0d, 0x5c, 0xcd,
+ 0xc0, 0x72, 0x8a, 0x1a, 0x68, 0x6d, 0x18, 0x9d, 0x2b, 0xe0, 0x15, 0xb0,
+ 0x0d, 0x4a, 0xbe, 0x06, 0xb4, 0x18, 0x27, 0xdf, 0x0e, 0xdf, 0xf1, 0x75,
+ 0x91, 0x0f, 0x27, 0x2b, 0xe8, 0x65, 0x41, 0xc9, 0x2e, 0xc9, 0xe1, 0x24,
+ 0x75, 0x4d, 0x70, 0xd5, 0xf0, 0x3d, 0xfb, 0xa3, 0x90, 0x1d, 0x2f, 0x2e,
+ 0x2a, 0xa4, 0x4b, 0xd6, 0x31, 0x77, 0x1c, 0xd2, 0x8a, 0xe4, 0x20, 0xf8,
+ 0x5a, 0xc2, 0x6e, 0x82, 0xba, 0xc9, 0x2e, 0x5a, 0x30, 0xd3, 0x82, 0xaf,
+ 0xf0, 0xac, 0xd4, 0x23, 0xae, 0x2b, 0x07, 0x7d, 0x7f, 0x01, 0x31, 0x21,
+ 0x51, 0x40, 0x78, 0x0b, 0xa5, 0xb6, 0xc4, 0x8d, 0xdb, 0x8a, 0x8b, 0x4c,
+ 0x09, 0x48, 0x44, 0x3c, 0x97, 0x8a, 0x1d, 0x6b, 0xaf, 0x12, 0x39, 0x4c,
+ 0xd5, 0xc5, 0xc5, 0x9f, 0xcf, 0x8e, 0x5e, 0xd9, 0x9b, 0x0f, 0xed, 0x99,
+ 0x60, 0xa7, 0x21, 0x66, 0x26, 0x51, 0xac, 0xd2, 0xa0, 0x4c, 0x36, 0x11,
+ 0xd9, 0xb0, 0x32, 0x5f, 0xbe, 0x74, 0x33, 0x8c, 0x7e, 0x78, 0x7d, 0x3c,
+ 0x3e, 0x3b, 0x39, 0x3d, 0x7c, 0xf5, 0xf2, 0x07, 0x63, 0xc9, 0x5f, 0xb0,
+ 0x8b, 0x40, 0xe4, 0x34, 0xf7, 0x99, 0xc7, 0x76, 0xd0, 0xf7, 0xde, 0x1d,
+ 0x7d, 0xff, 0x81, 0xb4, 0x83, 0x57, 0x8c, 0xf0, 0x3e, 0xb8, 0x8d, 0xe7,
+ 0xfa, 0x12, 0xab, 0x58, 0x1d, 0xb2, 0xdd, 0xa8, 0x0e, 0xc6, 0xd7, 0x5c,
+ 0x58, 0x57, 0xa9, 0xd4, 0xe7, 0x29, 0xdc, 0x5b, 0x18, 0x5d, 0x50, 0x94,
+ 0x2a, 0xae, 0xa5, 0xd5, 0x76, 0xd4, 0x15, 0xf6, 0xd7, 0x7f, 0xbf, 0x92,
+ 0x98, 0x4a, 0x0e, 0x21, 0x08, 0x3d, 0xf3, 0x88, 0x5b, 0xd5, 0x6f, 0x7c,
+ 0x3c, 0xaf, 0x22, 0x29, 0x17, 0x1c, 0xc0, 0xe2, 0xa0, 0x28, 0xb5, 0x58,
+ 0x35, 0x7c, 0xde, 0x8a, 0x57, 0xa9, 0x20, 0x4c, 0x1c, 0x42, 0x6b, 0xd1,
+ 0xf4, 0xc6, 0xc7, 0x54, 0x84, 0x71, 0x63, 0x89, 0xad, 0x6c, 0x2e, 0x6a,
+ 0xf3, 0x9c, 0x1d, 0x9d, 0x8f, 0x8f, 0xc7, 0x17, 0xac, 0x46, 0x69, 0x0d,
+ 0x47, 0xb5, 0x41, 0x5b, 0x81, 0x4d, 0x60, 0x36, 0xd4, 0xa1, 0x47, 0xc3,
+ 0xba, 0x21, 0xb5, 0x13, 0xed, 0xd8, 0x5c, 0x3d, 0x89, 0x93, 0x6f, 0x00,
+ 0xc9, 0x0c, 0x65, 0x41, 0x54, 0x00, 0x74, 0xe3, 0x4b, 0x3b, 0xc0, 0xb9,
+ 0x92, 0x46, 0xa3, 0x7c, 0x06, 0x4a, 0xdf, 0x60, 0x77, 0xe6, 0xe9, 0x24,
+ 0x28, 0x9a, 0x5d, 0x77, 0x21, 0x73, 0x74, 0x82, 0x82, 0x75, 0x84, 0x47,
+ 0xc8, 0xec, 0xe1, 0x3e, 0x33, 0x5a, 0xcb, 0xfa, 0xea, 0xb5, 0xa6, 0x59,
+ 0x8d, 0x61, 0xfe, 0xaa, 0x53, 0x54, 0xa1, 0x9c, 0x84, 0xe5, 0xcb, 0xf1,
+ 0x69, 0x10, 0x84, 0xaa, 0xf8, 0x4f, 0x80, 0xae, 0x55, 0x96, 0xcd, 0x4c,
+ 0x39, 0x95, 0x4c, 0x34, 0x36, 0xb4, 0x90, 0xd4, 0x82, 0xcc, 0x7a, 0xc4,
+ 0x09, 0xe9, 0xcc, 0x5a, 0x22, 0x88, 0x8a, 0x8e, 0x57, 0x9c, 0xc2, 0x06,
+ 0x90, 0xad, 0x19, 0xcb, 0x5b, 0xb0, 0xc0, 0x85, 0x9d, 0xd9, 0x75, 0xca,
+ 0x2b, 0x38, 0x59, 0x85, 0x45, 0xe1, 0xdc, 0xe8, 0xa5, 0x3e, 0x09, 0x16,
+ 0x1e, 0x11, 0x92, 0x71, 0x01, 0x14, 0xcb, 0x4a, 0x41, 0xe3, 0x4d, 0xf1,
+ 0xd1, 0x70, 0xc7, 0x51, 0x1d, 0xcf, 0xc7, 0xe8, 0xd2, 0x0a, 0x97, 0x3e,
+ 0xb4, 0xa2, 0x41, 0x15, 0x49, 0x26, 0xdf, 0x22, 0xb1, 0xb8, 0x25, 0x31,
+ 0x33, 0x94, 0xec, 0x70, 0xc8, 0xa6, 0xee, 0x32, 0xe6, 0xa4, 0x23, 0xf6,
+ 0x2f, 0x16, 0x8a, 0x95, 0x44, 0xec, 0x8f, 0x2d, 0xcb, 0x28, 0x3d, 0x89,
+ 0x9a, 0xcc, 0xec, 0x75, 0x33, 0x1c, 0x3d, 0x1f, 0xc6, 0x2d, 0xcb, 0x1d,
+ 0x90, 0x95, 0x98, 0xd7, 0xef, 0xb5, 0x43, 0x97, 0x20, 0x6f, 0x9b, 0x35,
+ 0x90, 0x7c, 0xab, 0x18, 0xe9, 0x3d, 0x66, 0xd7, 0x0d, 0xd2, 0x44, 0x4b,
+ 0x4d, 0xbe, 0x75, 0xee, 0x69, 0x30, 0xbc, 0x5a, 0xfd, 0x5d, 0x9e, 0x5d,
+ 0xcd, 0x35, 0x48, 0xf2, 0xe5, 0x12, 0xc5, 0x94, 0xa6, 0x8a, 0x26, 0x8f,
+ 0xa0, 0x5d, 0xd7, 0xa0, 0x5d, 0x22, 0x7e, 0xb1, 0x68, 0x55, 0xdf, 0xbe,
+ 0x3f, 0xb9, 0x38, 0x3e, 0x0b, 0xdd, 0x8f, 0xd1, 0xf7, 0xc7, 0x17, 0xdf,
+ 0x90, 0xd4, 0x3e, 0x3e, 0x7e, 0xf7, 0xf5, 0x09, 0xfb, 0x78, 0xde, 0xbe,
+ 0x3d, 0x78, 0xc7, 0xe8, 0x02, 0xef, 0x10, 0xd9, 0x78, 0x00, 0xc5, 0x81,
+ 0xd9, 0x11, 0x2d, 0x31, 0xd3, 0x0e, 0xe7, 0x9d, 0x0f, 0xda, 0xae, 0x86,
+ 0xc6, 0xf1, 0x93, 0xfa, 0xca, 0x59, 0x7d, 0x91, 0x36, 0x50, 0x2d, 0x1b,
+ 0x9a, 0xc1, 0x3d, 0x1b, 0x76, 0x70, 0x6c, 0x59, 0xd9, 0xe2, 0x85, 0x6e,
+ 0xc2, 0xc8, 0x23, 0xc7, 0x51, 0x24, 0x74, 0xb8, 0xd1, 0xe5, 0xee, 0xf6,
+ 0xee, 0x0b, 0xec, 0xa8, 0x03, 0xa1, 0x85, 0x1e, 0x43, 0x32, 0x53, 0xa6,
+ 0x7a, 0x8d, 0xdc, 0x97, 0xf5, 0x9c, 0x03, 0xea, 0x11, 0x43, 0x42, 0x1c,
+ 0x41, 0xee, 0x2d, 0x82, 0xac, 0x71, 0xb2, 0xd2, 0x7c, 0x7e, 0x12, 0x5e,
+ 0xa8, 0xa3, 0x5a, 0xf5, 0x31, 0x0b, 0x0f, 0xbc, 0xca, 0x13, 0x7f, 0x72,
+ 0x87, 0xa7, 0xd6, 0x8c, 0x99, 0x7f, 0xa1, 0x86, 0xc9, 0xe5, 0x32, 0x64,
+ 0xbe, 0x36, 0xa4, 0x2d, 0xd9, 0x72, 0x15, 0x87, 0xd4, 0x7c, 0xb6, 0x2f,
+ 0x62, 0xa5, 0x83, 0x59, 0xb6, 0x42, 0x7d, 0xd4, 0x9c, 0xb5, 0xac, 0xa1,
+ 0x28, 0x88, 0xc7, 0xd6, 0xb4, 0x26, 0x9d, 0x33, 0xb8, 0xa5, 0x3d, 0x56,
+ 0xcb, 0xca, 0x96, 0xfb, 0xee, 0xd4, 0x4c, 0x7b, 0x96, 0xd6, 0xe6, 0x4a,
+ 0xc0, 0x79, 0xcf, 0x29, 0x8a, 0xac, 0xe5, 0xf9, 0x28, 0xf9, 0x98, 0xb0,
+ 0x93, 0x93, 0x7f, 0xfd, 0xcb, 0xf2, 0x2a, 0xcc, 0x78, 0x93, 0x12, 0xd3,
+ 0xcb, 0xae, 0x9d, 0x55, 0x4c, 0x67, 0x11, 0x8b, 0xb4, 0xac, 0x5d, 0x6d,
+ 0x04, 0x5a, 0xab, 0x6e, 0x77, 0x5d, 0x87, 0xfa, 0xfd, 0x5e, 0xfb, 0xfb,
+ 0x3d, 0x31, 0x3b, 0x1e, 0x9f, 0xdd, 0x3e, 0x77, 0x58, 0xa8, 0x92, 0xc7,
+ 0x1d, 0x8a, 0x6f, 0x26, 0x14, 0x30, 0x85, 0xf1, 0xa3, 0x72, 0xe7, 0xc4,
+ 0xc2, 0x13, 0xc5, 0xf6, 0xcf, 0x11, 0x64, 0xab, 0x02, 0xf9, 0xa9, 0x78,
+ 0x04, 0x66, 0x62, 0x09, 0xfb, 0x45, 0x90, 0x1d, 0xf8, 0x14, 0x5f, 0x57,
+ 0xd4, 0x20, 0x7d, 0xff, 0xd4, 0xc5, 0xe2, 0x7b, 0x9e, 0x86, 0x72, 0x6d,
+ 0x9a, 0x0d, 0x35, 0x4c, 0x97, 0xb7, 0x56, 0xef, 0x97, 0x7e, 0x7d, 0xee,
+ 0x4a, 0xf5, 0x94, 0x35, 0x1f, 0x55, 0x0d, 0x77, 0xd8, 0x98, 0x3f, 0x06,
+ 0x87, 0xb0, 0x48, 0xe6, 0x0c, 0x5e, 0xc9, 0x68, 0x8c, 0x2b, 0xa9, 0x07,
+ 0x64, 0x07, 0x05, 0x4b, 0x61, 0x60, 0x9e, 0x23, 0x33, 0x16, 0xfc, 0x28,
+ 0x60, 0x2e, 0x21, 0xe6, 0xbf, 0xee, 0xfa, 0x8f, 0x7b, 0x3b, 0x3b, 0xbb,
+ 0xfb, 0xbb, 0x9f, 0xbf, 0xd8, 0xd9, 0xdf, 0xdd, 0xdd, 0xdd, 0xdb, 0xdf,
+ 0xdd, 0xdf, 0xdf, 0xdb, 0xf9, 0x79, 0x9b, 0xed, 0x47, 0xb7, 0x69, 0x72,
+ 0x67, 0x8e, 0x29, 0xc9, 0xc5, 0x03, 0x59, 0x4b, 0xdd, 0x76, 0xd5, 0xe0,
+ 0x55, 0xcf, 0x35, 0xc9, 0xc7, 0xa1, 0x4a, 0x48, 0xc8, 0xbc, 0x80, 0xc9,
+ 0x2d, 0x7d, 0xa6, 0x29, 0xce, 0x60, 0x00, 0x78, 0x8d, 0x51, 0xfd, 0x75,
+ 0xc5, 0x33, 0x9d, 0xb0, 0x38, 0x00, 0x99, 0xa6, 0x74, 0x79, 0x7d, 0x57,
+ 0xf3, 0x7c, 0x32, 0x41, 0xe6, 0x82, 0x4b, 0x6d, 0x1d, 0x45, 0x8c, 0xaa,
+ 0x7a, 0x23, 0x24, 0xa1, 0x9e, 0x03, 0x04, 0x15, 0xca, 0x41, 0xf7, 0xab,
+ 0x23, 0x82, 0x97, 0x06, 0x52, 0x4f, 0x73, 0xae, 0x30, 0x30, 0x63, 0xa6,
+ 0x44, 0x8b, 0x54, 0xb8, 0x94, 0x97, 0xe8, 0x32, 0xf9, 0x7c, 0x67, 0x7f,
+ 0x9f, 0x8b, 0x80, 0xfc, 0x7e, 0x77, 0xa0, 0xf1, 0xa0, 0x61, 0x90, 0xfb,
+ 0xc0, 0x5d, 0x4f, 0xd2, 0x06, 0xab, 0x1f, 0xe1, 0x3c, 0xb3, 0xd5, 0x22,
+ 0x29, 0x48, 0x11, 0xe1, 0x32, 0xb2, 0x08, 0x88, 0x84, 0xd1, 0x5b, 0xd0,
+ 0xd6, 0x00, 0xc8, 0xd2, 0x08, 0xc6, 0xe7, 0x1b, 0x41, 0x50, 0x63, 0x5d,
+ 0x12, 0xba, 0xc0, 0x05, 0xf9, 0x29, 0xba, 0xb6, 0x51, 0x08, 0x07, 0x76,
+ 0x7c, 0x49, 0x65, 0x91, 0x24, 0x1e, 0xb9, 0x6f, 0x95, 0x33, 0xe0, 0x70,
+ 0x65, 0x52, 0xdc, 0x94, 0x1f, 0x17, 0x19, 0x1e, 0x16, 0x93, 0x40, 0xb8,
+ 0xd5, 0xfc, 0x9d, 0x1f, 0x83, 0xc9, 0xee, 0x3d, 0xdb, 0xfd, 0x59, 0xc2,
+ 0x15, 0xf9, 0x40, 0xf8, 0x55, 0xd3, 0xc2, 0x70, 0xb3, 0x30, 0x43, 0xc3,
+ 0x08, 0x69, 0x33, 0x19, 0x5d, 0x8d, 0x4c, 0xaa, 0x50, 0x6b, 0xe3, 0x20,
+ 0x0c, 0x1a, 0x17, 0xc4, 0x72, 0x29, 0x59, 0x0c, 0x3d, 0xcd, 0x0c, 0x4a,
+ 0x66, 0x10, 0x16, 0x63, 0x66, 0xad, 0xc2, 0x0f, 0xdd, 0x30, 0x47, 0x17,
+ 0x07, 0x74, 0x79, 0x7c, 0xdb, 0x56, 0xf4, 0xdf, 0x26, 0xa4, 0x95, 0xf3,
+ 0x66, 0x6f, 0xe2, 0x3c, 0xdc, 0x3a, 0x9c, 0x60, 0x5e, 0xbb, 0xa7, 0xd1,
+ 0x26, 0xfb, 0x2c, 0x9e, 0x7d, 0xfe, 0xec, 0xe9, 0x96, 0x14, 0x65, 0x90,
+ 0xd7, 0x12, 0xce, 0x0f, 0x81, 0x55, 0x52, 0xc1, 0x69, 0xd8, 0x9c, 0xec,
+ 0x58, 0xd2, 0xfb, 0xf3, 0x63, 0x39, 0xd2, 0xd7, 0x82, 0x21, 0x20, 0x4a,
+ 0x6f, 0x13, 0x57, 0x0e, 0xf7, 0x6d, 0x20, 0x64, 0x2c, 0x52, 0xc6, 0x3c,
+ 0x44, 0xee, 0x35, 0x5f, 0x8c, 0x2e, 0xf7, 0x1f, 0x37, 0x2c, 0x1d, 0xd0,
+ 0x1c, 0xa5, 0x0a, 0xb5, 0x02, 0x14, 0x06, 0x03, 0x90, 0x44, 0xc6, 0x68,
+ 0x55, 0x3a, 0x73, 0x1a, 0x18, 0xeb, 0x41, 0xc2, 0x8f, 0x84, 0xfb, 0x37,
+ 0x70, 0xb9, 0xb7, 0xc4, 0xe3, 0x0f, 0xa1, 0x90, 0xc9, 0x90, 0x1e, 0xb4,
+ 0xd0, 0x51, 0x1e, 0x71, 0x2d, 0x1b, 0xcd, 0x4b, 0x9b, 0x01, 0xa6, 0x93,
+ 0xc1, 0xb9, 0x28, 0x2b, 0x72, 0x4b, 0x28, 0xee, 0xec, 0x0a, 0x96, 0xc5,
+ 0xb4, 0x66, 0xf2, 0xd1, 0x5c, 0x7a, 0xe4, 0xb4, 0x23, 0xe4, 0x78, 0x41,
+ 0xd7, 0x51, 0x71, 0xaf, 0x12, 0x36, 0xd4, 0x04, 0x57, 0x59, 0xad, 0x11,
+ 0x10, 0x20, 0xa8, 0x11, 0x61, 0x24, 0xbd, 0x03, 0x4d, 0x31, 0xa5, 0xb9,
+ 0x36, 0x80, 0x1a, 0xdb, 0x1f, 0x2e, 0xec, 0xab, 0x20, 0x5e, 0x26, 0x4c,
+ 0x2f, 0xb3, 0xdf, 0xed, 0xb9, 0x20, 0x94, 0x32, 0x6e, 0x4e, 0x6c, 0xcd,
+ 0xd0, 0x04, 0x5b, 0x13, 0xe1, 0x53, 0x4e, 0xfb, 0xd9, 0xc4, 0x48, 0xb6,
+ 0xb7, 0xb7, 0xd6, 0x8c, 0x46, 0xbf, 0xee, 0xea, 0xfd, 0x0c, 0x98, 0x24,
+ 0x41, 0x46, 0x27, 0xed, 0x79, 0xbd, 0x71, 0x5e, 0xda, 0xb4, 0xe4, 0x9d,
+ 0x9c, 0x69, 0x5c, 0xac, 0x98, 0x51, 0x4d, 0xbd, 0x92, 0xc1, 0x1b, 0xf3,
+ 0xaa, 0x4f, 0x42, 0x43, 0x71, 0x0c, 0x23, 0x4a, 0xea, 0x4b, 0x8b, 0x7b,
+ 0x73, 0x14, 0x1d, 0x30, 0x35, 0xd4, 0x3a, 0x0e, 0x86, 0x6c, 0xf6, 0x5c,
+ 0x43, 0x40, 0x37, 0x21, 0xd6, 0x99, 0xf3, 0x06, 0xc1, 0x97, 0x26, 0xe6,
+ 0x19, 0x24, 0x80, 0x33, 0xf6, 0x4e, 0x12, 0x81, 0x3f, 0x71, 0x9c, 0x33,
+ 0x40, 0x36, 0x4e, 0xb3, 0x5a, 0xc9, 0x50, 0x6d, 0x04, 0x8e, 0x6e, 0x37,
+ 0x09, 0x80, 0x26, 0x16, 0x06, 0xc6, 0x1b, 0x96, 0x11, 0x04, 0x02, 0x81,
+ 0x06, 0xb5, 0x8b, 0x60, 0xed, 0x88, 0x58, 0xbc, 0xad, 0x13, 0x21, 0xaf,
+ 0xda, 0x7a, 0x0c, 0x84, 0xe2, 0x25, 0x88, 0x41, 0xe2, 0x6d, 0xe9, 0x90,
+ 0x30, 0xc3, 0x38, 0x38, 0x3e, 0xe1, 0xa8, 0xb8, 0x13, 0x52, 0xf1, 0xc6,
+ 0x26, 0x2a, 0x21, 0x4a, 0x14, 0xf1, 0x7a, 0x59, 0xca, 0xe2, 0xfa, 0xc0,
+ 0x95, 0x1e, 0xb1, 0x64, 0x29, 0xe8, 0x2d, 0xec, 0xdc, 0x13, 0xd5, 0x5f,
+ 0x31, 0x02, 0x69, 0xb7, 0x48, 0x5e, 0x2a, 0xc5, 0x68, 0x0b, 0x28, 0x5e,
+ 0x06, 0xa9, 0x87, 0x23, 0x15, 0x2a, 0xb5, 0xb0, 0x69, 0x54, 0x3e, 0x2a,
+ 0x92, 0x79, 0x72, 0xab, 0xd6, 0x55, 0x01, 0x36, 0xfd, 0x5a, 0x7d, 0x98,
+ 0x52, 0xfa, 0xb4, 0xf2, 0xae, 0xd8, 0x9a, 0x9b, 0x94, 0xfb, 0xdc, 0x16,
+ 0x4c, 0x18, 0x0f, 0xf5, 0xc1, 0xdd, 0x7b, 0x34, 0x7e, 0x73, 0x19, 0xf3,
+ 0x7b, 0x43, 0xd6, 0x71, 0x35, 0xb4, 0xf5, 0x7d, 0xa9, 0x68, 0x0e, 0xcd,
+ 0x58, 0x71, 0xb1, 0x15, 0x5a, 0xf1, 0x3c, 0x31, 0xbe, 0x0f, 0x0c, 0x2f,
+ 0x59, 0x3c, 0x06, 0x7c, 0xf1, 0x0c, 0xd8, 0x50, 0x2b, 0xc5, 0xe0, 0x49,
+ 0x21, 0xe3, 0xca, 0x18, 0x03, 0x49, 0x1c, 0x05, 0x6d, 0xe4, 0x73, 0xfa,
+ 0x13, 0xe1, 0x54, 0x12, 0x60, 0x49, 0xcf, 0x32, 0xde, 0x6b, 0x10, 0xd1,
+ 0x4a, 0x7f, 0x4a, 0x32, 0x84, 0xfe, 0x85, 0xa6, 0x8a, 0x15, 0x60, 0x85,
+ 0x07, 0x72, 0x19, 0xb2, 0xd3, 0xb1, 0x9a, 0x8e, 0xdc, 0xe8, 0xd5, 0xe7,
+ 0x2f, 0xe3, 0x7f, 0x6d, 0x2e, 0x69, 0x13, 0x43, 0xf2, 0xc2, 0x56, 0x57,
+ 0x76, 0x61, 0x22, 0xb5, 0x0e, 0xbf, 0x5a, 0xb1, 0x33, 0xcc, 0x55, 0xf2,
+ 0xe1, 0x51, 0x2c, 0xf8, 0x2a, 0x4a, 0xa4, 0xac, 0xa8, 0x6b, 0x9c, 0x35,
+ 0xba, 0x15, 0xed, 0xae, 0xb4, 0x7e, 0x92, 0xdf, 0x71, 0x4d, 0xd4, 0xcb,
+ 0xcb, 0x74, 0xca, 0x85, 0x6e, 0x3c, 0x7c, 0x30, 0xb3, 0x78, 0x79, 0x70,
+ 0x61, 0x65, 0x98, 0x68, 0x6e, 0xd1, 0x72, 0x35, 0x99, 0xd3, 0x5d, 0x6d,
+ 0xd1, 0xec, 0x74, 0xa8, 0xb0, 0x4a, 0xa4, 0x6c, 0xa1, 0x39, 0xf1, 0xe5,
+ 0x43, 0xdf, 0x6c, 0x44, 0x50, 0x6b, 0xa1, 0x78, 0x96, 0xc0, 0x17, 0x28,
+ 0x0e, 0xcb, 0x61, 0xc6, 0x8b, 0x3c, 0xb3, 0x64, 0x98, 0x55, 0x29, 0x60,
+ 0x92, 0x56, 0x55, 0x7e, 0x43, 0x3c, 0x13, 0xe9, 0x5c, 0xd1, 0xdb, 0x55,
+ 0x33, 0xc7, 0x1b, 0xe1, 0x64, 0x66, 0xc3, 0xe5, 0xf5, 0xd2, 0x76, 0xda,
+ 0xe4, 0x21, 0x11, 0x96, 0x34, 0xfd, 0x02, 0x27, 0xef, 0xec, 0x9b, 0xb3,
+ 0x51, 0x74, 0xc4, 0x2d, 0xc9, 0x98, 0x54, 0xce, 0x85, 0x89, 0x86, 0xbe,
+ 0xa3, 0xc9, 0x5e, 0xf1, 0xfd, 0x75, 0x5a, 0xf0, 0x5f, 0x68, 0x4d, 0xbf,
+ 0x14, 0xab, 0x2c, 0xbe, 0xad, 0xf7, 0x4a, 0x0d, 0x59, 0x90, 0xf5, 0x19,
+ 0x7e, 0xa7, 0xa3, 0x42, 0xd2, 0x97, 0xdb, 0x26, 0xdf, 0x43, 0x5e, 0xd4,
+ 0xa0, 0x77, 0xe4, 0xcd, 0x88, 0x84, 0x32, 0x88, 0x56, 0xcb, 0x7b, 0xec,
+ 0x5f, 0xc0, 0x1b, 0x45, 0xfc, 0x94, 0x06, 0x02, 0xd2, 0x52, 0xf2, 0x73,
+ 0xe1, 0x7b, 0x72, 0xae, 0x0a, 0x01, 0x9d, 0x29, 0x12, 0x0d, 0x76, 0xcc,
+ 0xd5, 0x4b, 0x2a, 0x06, 0x8d, 0x32, 0x69, 0x1c, 0xd7, 0x40, 0x7d, 0xb3,
+ 0x2f, 0x58, 0xeb, 0xe6, 0xb1, 0x90, 0xd0, 0x42, 0x5b, 0x30, 0xda, 0xf8,
+ 0xbf, 0x01, 0x87, 0xa5, 0x00, 0x5a, 0xec, 0x78, 0x02, 0x00,
};
#define BUF_SIZE 0x10000
static voidpf zalloc_func(voidpf opaque, unsigned int items, unsigned int size)
diff --git a/src/tool_metalink.c b/src/tool_metalink.c
index 5873adf6a..3573b058b 100644
--- a/src/tool_metalink.c
+++ b/src/tool_metalink.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -29,9 +29,14 @@
# include <fcntl.h>
#endif
-#ifdef USE_OPENSSL
-# include <openssl/md5.h>
-# include <openssl/sha.h>
+#ifdef USE_SSLEAY
+# ifdef USE_OPENSSL
+# include <openssl/md5.h>
+# include <openssl/sha.h>
+# else
+# include <md5.h>
+# include <sha.h>
+# endif
#elif defined(USE_GNUTLS_NETTLE)
# include <nettle/md5.h>
# include <nettle/sha.h>
@@ -376,7 +381,7 @@ static void SHA256_Final(unsigned char digest[32], SHA256_CTX *ctx)
sha256_finish(ctx, digest);
}
-#elif defined(_WIN32) && !defined(USE_OPENSSL)
+#elif defined(_WIN32) && !defined(USE_SSLEAY)
static void win32_crypto_final(struct win32_crypto_hash *ctx,
unsigned char *digest,
@@ -621,10 +626,6 @@ static int check_hash(const char *filename,
}
result = malloc(digest_def->dparams->digest_resultlen);
- if(!result) {
- close(fd);
- return -1;
- }
while(1) {
unsigned char buf[4096];
ssize_t len = read(fd, buf, sizeof(buf));
@@ -680,17 +681,12 @@ static metalink_checksum *new_metalink_checksum_from_hex_digest
size_t i;
size_t len = strlen(hex_digest);
digest = malloc(len/2);
- if(!digest)
- return 0;
-
for(i = 0; i < len; i += 2) {
digest[i/2] = hex_to_uint(hex_digest+i);
}
chksum = malloc(sizeof(metalink_checksum));
- if(chksum) {
- chksum->digest_def = digest_def;
- chksum->digest = digest;
- }
+ chksum->digest_def = digest_def;
+ chksum->digest = digest;
return chksum;
}
@@ -698,14 +694,8 @@ static metalink_resource *new_metalink_resource(const char *url)
{
metalink_resource *res;
res = malloc(sizeof(metalink_resource));
- if(res) {
- res->next = NULL;
- res->url = strdup(url);
- if(!res->url) {
- free(res);
- return NULL;
- }
- }
+ res->next = NULL;
+ res->url = strdup(url);
return res;
}
@@ -730,15 +720,8 @@ static metalinkfile *new_metalinkfile(metalink_file_t *fileinfo)
{
metalinkfile *f;
f = (metalinkfile*)malloc(sizeof(metalinkfile));
- if(!f)
- return NULL;
-
f->next = NULL;
f->filename = strdup(fileinfo->name);
- if(!f->filename) {
- free(f);
- return NULL;
- }
f->checksum = NULL;
f->resource = NULL;
if(fileinfo->checksums) {
@@ -839,10 +822,8 @@ int parse_metalink(struct OperationConfig *config, struct OutStruct *outs,
url = new_getout(config);
if(url) {
- metalinkfile *mlfile = new_metalinkfile(*files);
- if(!mlfile)
- break;
-
+ metalinkfile *mlfile;
+ mlfile = new_metalinkfile(*files);
if(!mlfile->checksum) {
warnings = TRUE;
fprintf(config->global->errors,
diff --git a/src/tool_msgs.c b/src/tool_msgs.c
index 38de977aa..3311b55f5 100644
--- a/src/tool_msgs.c
+++ b/src/tool_msgs.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -38,9 +38,9 @@
* mute (--silent) was selected.
*/
-void warnf(struct GlobalConfig *config, const char *fmt, ...)
+void warnf(struct OperationConfig *config, const char *fmt, ...)
{
- if(!config->mute) {
+ if(!config->global->mute) {
va_list ap;
int len;
char *ptr;
@@ -52,7 +52,7 @@ void warnf(struct GlobalConfig *config, const char *fmt, ...)
ptr = print_buffer;
while(len > 0) {
- fputs(WARN_PREFIX, config->errors);
+ fputs(WARN_PREFIX, config->global->errors);
if(len > (int)WARN_TEXTWIDTH) {
int cut = WARN_TEXTWIDTH-1;
@@ -65,13 +65,13 @@ void warnf(struct GlobalConfig *config, const char *fmt, ...)
max text width then! */
cut = WARN_TEXTWIDTH-1;
- (void)fwrite(ptr, cut + 1, 1, config->errors);
- fputs("\n", config->errors);
+ (void)fwrite(ptr, cut + 1, 1, config->global->errors);
+ fputs("\n", config->global->errors);
ptr += cut+1; /* skip the space too */
len -= cut;
}
else {
- fputs(ptr, config->errors);
+ fputs(ptr, config->global->errors);
len = 0;
}
}
diff --git a/src/tool_msgs.h b/src/tool_msgs.h
index bf97bfba7..15754690f 100644
--- a/src/tool_msgs.h
+++ b/src/tool_msgs.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -23,7 +23,7 @@
***************************************************************************/
#include "tool_setup.h"
-void warnf(struct GlobalConfig *config, const char *fmt, ...);
+void warnf(struct OperationConfig *config, const char *fmt, ...);
void helpf(FILE *errors, const char *fmt, ...);
diff --git a/src/tool_operate.c b/src/tool_operate.c
index ecc0275c3..a21bbcaf4 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -151,7 +151,7 @@ static curl_off_t vms_realfilesize(const char * name,
int ret_stat;
FILE * file;
- file = fopen(name, "r"); /* VMS */
+ file = fopen(name, "r");
if(file == NULL) {
return 0;
}
@@ -320,7 +320,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
if(!curlx_strequal(config->headerfile, "-")) {
FILE *newfile = fopen(config->headerfile, "wb");
if(!newfile) {
- warnf(config->global, "Failed to open %s\n", config->headerfile);
+ warnf(config, "Failed to open %s\n", config->headerfile);
result = CURLE_WRITE_ERROR;
goto quit_curl;
}
@@ -565,7 +565,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
Curl_safefree(storefile);
if(result) {
/* bad globbing */
- warnf(config->global, "bad output glob!\n");
+ warnf(config, "bad output glob!\n");
goto quit_urls;
}
}
@@ -710,7 +710,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
* we should warn him/her.
*/
if(config->proxyanyauth || (authbits>1)) {
- warnf(config->global,
+ warnf(config,
"Using --anyauth or --proxy-anyauth with upload from stdin"
" involves a big risk of it not working. Use a temporary"
" file or a fixed auth type instead!\n");
@@ -722,7 +722,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
set_binmode(stdin);
if(curlx_strequal(uploadfile, ".")) {
if(curlx_nonblock((curl_socket_t)infd, TRUE) < 0)
- warnf(config->global,
+ warnf(config,
"fcntl failed on fd=%d: %s\n", infd, strerror(errno));
}
}
@@ -998,6 +998,10 @@ static CURLcode operate_do(struct GlobalConfig *global,
else
my_setopt(curl, CURLOPT_RESUME_FROM_LARGE, CURL_OFF_T_C(0));
+ my_setopt_str(curl, CURLOPT_SSLCERT, config->cert);
+ my_setopt_str(curl, CURLOPT_SSLCERTTYPE, config->cert_type);
+ my_setopt_str(curl, CURLOPT_SSLKEY, config->key);
+ my_setopt_str(curl, CURLOPT_SSLKEYTYPE, config->key_type);
my_setopt_str(curl, CURLOPT_KEYPASSWD, config->key_passwd);
if(built_in_protos & (CURLPROTO_SCP|CURLPROTO_SFTP)) {
@@ -1025,11 +1029,6 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt_str(curl, CURLOPT_PINNEDPUBLICKEY, config->pinnedpubkey);
if(curlinfo->features & CURL_VERSION_SSL) {
- my_setopt_str(curl, CURLOPT_SSLCERT, config->cert);
- my_setopt_str(curl, CURLOPT_SSLCERTTYPE, config->cert_type);
- my_setopt_str(curl, CURLOPT_SSLKEY, config->key);
- my_setopt_str(curl, CURLOPT_SSLKEYTYPE, config->key_type);
-
if(config->insecure_ok) {
my_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
@@ -1039,17 +1038,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
/* libcurl default is strict verifyhost -> 2L */
/* my_setopt(curl, CURLOPT_SSL_VERIFYHOST, 2L); */
}
-
- if(config->verifystatus)
- my_setopt(curl, CURLOPT_SSL_VERIFYSTATUS, 1L);
-
- if(config->falsestart)
- my_setopt(curl, CURLOPT_SSL_FALSESTART, 1L);
-
- my_setopt_enum(curl, CURLOPT_SSLVERSION, config->ssl_version);
}
- if(config->path_as_is)
- my_setopt(curl, CURLOPT_PATH_AS_IS, 1L);
if(built_in_protos & (CURLPROTO_SCP|CURLPROTO_SFTP)) {
if(!config->insecure_ok) {
@@ -1099,12 +1088,13 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt(curl, CURLOPT_COOKIESESSION, config->cookiesession?1L:0L);
#else
if(config->cookie || config->cookiefile || config->cookiejar) {
- warnf(config->global, "cookie option(s) used even though cookie "
- "support is disabled!\n");
+ warnf(config, "cookie option(s) used even though cookie support "
+ "is disabled!\n");
return CURLE_NOT_BUILT_IN;
}
#endif
+ my_setopt_enum(curl, CURLOPT_SSLVERSION, config->ssl_version);
my_setopt_enum(curl, CURLOPT_TIMECONDITION, (long)config->timecond);
my_setopt(curl, CURLOPT_TIMEVALUE, (long)config->condtime);
my_setopt_str(curl, CURLOPT_CUSTOMREQUEST, config->customrequest);
@@ -1204,26 +1194,21 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt_enum(curl, CURLOPT_FTP_SSL_CCC,
(long)config->ftp_ssl_ccc_mode);
- /* new in curl 7.19.4 */
- if(config->socks5_gssapi_service)
- my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_SERVICE,
- config->socks5_gssapi_service);
-
- /* new in curl 7.19.4 */
- if(config->socks5_gssapi_nec)
- my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_NEC,
- config->socks5_gssapi_nec);
-
- /* new in curl 7.43.0 */
- if(config->proxy_service_name)
- my_setopt_str(curl, CURLOPT_PROXY_SERVICE_NAME,
- config->proxy_service_name);
+#if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI)
+ {
+ /* TODO: Make this a run-time check instead of compile-time one. */
- /* new in curl 7.43.0 */
- if(config->service_name)
- my_setopt_str(curl, CURLOPT_SERVICE_NAME,
- config->service_name);
+ /* new in curl 7.19.4 */
+ if(config->socks5_gssapi_service)
+ my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_SERVICE,
+ config->socks5_gssapi_service);
+ /* new in curl 7.19.4 */
+ if(config->socks5_gssapi_nec)
+ my_setopt_str(curl, CURLOPT_SOCKS5_GSSAPI_NEC,
+ config->socks5_gssapi_nec);
+ }
+#endif
/* curl 7.13.0 */
my_setopt_str(curl, CURLOPT_FTP_ACCOUNT, config->ftp_account);
@@ -1262,8 +1247,8 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt(curl, CURLOPT_TCP_KEEPALIVE, 1L);
if(config->alivetime != 0) {
#if !defined(TCP_KEEPIDLE) || !defined(TCP_KEEPINTVL)
- warnf(config->global, "Keep-alive functionality somewhat crippled "
- "due to missing support in your operating system!\n");
+ warnf(config, "Keep-alive functionality somewhat crippled due to "
+ "missing support in your operating system!\n");
#endif
my_setopt(curl, CURLOPT_TCP_KEEPIDLE, config->alivetime);
my_setopt(curl, CURLOPT_TCP_KEEPINTVL, config->alivetime);
@@ -1327,13 +1312,9 @@ static CURLcode operate_do(struct GlobalConfig *global,
my_setopt_str(curl, CURLOPT_GSSAPI_DELEGATION,
config->gssapi_delegation);
- /* new in 7.25.0 and 7.44.0 */
- {
- long mask = (config->ssl_allow_beast ? CURLSSLOPT_ALLOW_BEAST : 0) |
- (config->ssl_no_revoke ? CURLSSLOPT_NO_REVOKE : 0);
- if(mask)
- my_setopt_bitmask(curl, CURLOPT_SSL_OPTIONS, mask);
- }
+ /* new in 7.25.0 */
+ if(config->ssl_allow_beast)
+ my_setopt(curl, CURLOPT_SSL_OPTIONS, (long)CURLSSLOPT_ALLOW_BEAST);
if(config->mail_auth)
my_setopt_str(curl, CURLOPT_MAIL_AUTH, config->mail_auth);
@@ -1397,18 +1378,6 @@ static CURLcode operate_do(struct GlobalConfig *global,
#endif
result = curl_easy_perform(curl);
- if(!result && !outs.stream && !outs.bytes) {
- /* we have received no data despite the transfer was successful
- ==> force cration of an empty output file (if an output file
- was specified) */
- long cond_unmet = 0L;
- /* do not create (or even overwrite) the file in case we get no
- data because of unmet condition */
- curl_easy_getinfo(curl, CURLINFO_CONDITION_UNMET, &cond_unmet);
- if(!cond_unmet && !tool_create_output_file(&outs))
- result = CURLE_WRITE_ERROR;
- }
-
if(outs.is_cd_filename && outs.stream && !global->mute &&
outs.filename)
printf("curl: Saved to filename '%s'\n", outs.filename);
@@ -1482,8 +1451,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
static const char * const m[]={
NULL, "timeout", "HTTP error", "FTP error"
};
-
- warnf(config->global, "Transient problem: %s "
+ warnf(config, "Transient problem: %s "
"Will retry in %ld seconds. "
"%ld retries left.\n",
m[retry], retry_sleep/1000L, retry_numretries);
@@ -1495,7 +1463,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
if(retry_sleep > RETRY_SLEEP_MAX)
retry_sleep = RETRY_SLEEP_MAX;
}
- if(outs.bytes && outs.filename && outs.stream) {
+ if(outs.bytes && outs.filename) {
/* We have written data to a output file, we truncate file
*/
if(!global->mute)
@@ -1626,7 +1594,7 @@ static CURLcode operate_do(struct GlobalConfig *global,
if(!result && config->xattr && outs.fopened && outs.stream) {
int rc = fwrite_xattr(curl, fileno(outs.stream));
if(rc)
- warnf(config->global, "Error setting extended attributes: %s\n",
+ warnf(config, "Error setting extended attributes: %s\n",
strerror(errno));
}
@@ -1885,6 +1853,9 @@ CURLcode operate(struct GlobalConfig *config, int argc, argv_item_t argv[])
/* Cleanup the libcurl source output */
easysrc_cleanup();
+ /* set current back to first so that isn't NULL */
+ config->current = config->first;
+
/* Dump the libcurl code if previously enabled */
dumpeasysrc(config);
#endif
diff --git a/src/tool_paramhlp.c b/src/tool_paramhlp.c
index d4b96e76d..0e05184c3 100644
--- a/src/tool_paramhlp.c
+++ b/src/tool_paramhlp.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -331,7 +331,7 @@ long proto2num(struct OperationConfig *config, long *val, const char *str)
if no protocols are allowed */
if(action == set)
*val = 0;
- warnf(config->global, "unrecognized protocol '%s'\n", token);
+ warnf(config, "unrecognized protocol '%s'\n", token);
}
}
Curl_safefree(buffer);
@@ -449,10 +449,7 @@ int ftpfilemethod(struct OperationConfig *config, const char *str)
return CURLFTPMETHOD_NOCWD;
if(curlx_raw_equal("multicwd", str))
return CURLFTPMETHOD_MULTICWD;
-
- warnf(config->global, "unrecognized ftp file method '%s', using default\n",
- str);
-
+ warnf(config, "unrecognized ftp file method '%s', using default\n", str);
return CURLFTPMETHOD_MULTICWD;
}
@@ -462,10 +459,7 @@ int ftpcccmethod(struct OperationConfig *config, const char *str)
return CURLFTPSSL_CCC_PASSIVE;
if(curlx_raw_equal("active", str))
return CURLFTPSSL_CCC_ACTIVE;
-
- warnf(config->global, "unrecognized ftp CCC method '%s', using default\n",
- str);
-
+ warnf(config, "unrecognized ftp CCC method '%s', using default\n", str);
return CURLFTPSSL_CCC_PASSIVE;
}
@@ -477,10 +471,7 @@ long delegation(struct OperationConfig *config, char *str)
return CURLGSSAPI_DELEGATION_POLICY_FLAG;
if(curlx_raw_equal("always", str))
return CURLGSSAPI_DELEGATION_FLAG;
-
- warnf(config->global, "unrecognized delegation method '%s', using none\n",
- str);
-
+ warnf(config, "unrecognized delegation method '%s', using none\n", str);
return CURLGSSAPI_DELEGATION_NONE;
}
diff --git a/src/tool_parsecfg.c b/src/tool_parsecfg.c
index 39b43eef4..c5d390b7a 100644
--- a/src/tool_parsecfg.c
+++ b/src/tool_parsecfg.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -69,7 +69,7 @@ int parseconfig(const char *filename, struct GlobalConfig *global)
/* Check if the file exists - if not, try CURLRC in the same
* directory as our executable
*/
- file = fopen(filebuffer, FOPEN_READTEXT);
+ file = fopen(filebuffer, "r");
if(file != NULL) {
fclose(file);
filename = filebuffer;
@@ -114,8 +114,8 @@ int parseconfig(const char *filename, struct GlobalConfig *global)
#endif
}
- if(strcmp(filename, "-"))
- file = fopen(filename, FOPEN_READTEXT);
+ if(strcmp(filename,"-"))
+ file = fopen(filename, "r");
else
file = stdin;
@@ -187,27 +187,24 @@ int parseconfig(const char *filename, struct GlobalConfig *global)
param = line; /* parameter starts here */
while(*line && !ISSPACE(*line))
line++;
+ *line = '\0'; /* zero terminate */
- if(*line) {
- *line = '\0'; /* zero terminate */
-
- /* to detect mistakes better, see if there's data following */
+ /* to detect mistakes better, see if there's data following */
+ line++;
+ /* pass all spaces */
+ while(*line && ISSPACE(*line))
line++;
- /* pass all spaces */
- while(*line && ISSPACE(*line))
- line++;
-
- switch(*line) {
- case '\0':
- case '\r':
- case '\n':
- case '#': /* comment */
- break;
- default:
- warnf(operation->global, "%s:%d: warning: '%s' uses unquoted "
- "white space in the line that may cause side-effects!\n",
- filename, lineno, option);
- }
+
+ switch(*line) {
+ case '\0':
+ case '\r':
+ case '\n':
+ case '#': /* comment */
+ break;
+ default:
+ warnf(operation, "%s:%d: warning: '%s' uses unquoted white space in"
+ " the line that may cause side-effects!\n",
+ filename, lineno, option);
}
}
@@ -264,7 +261,7 @@ int parseconfig(const char *filename, struct GlobalConfig *global)
res != PARAM_VERSION_INFO_REQUESTED &&
res != PARAM_ENGINES_REQUESTED) {
const char *reason = param2text(res);
- warnf(operation->global, "%s:%d: warning: '%s' %s\n",
+ warnf(operation, "%s:%d: warning: '%s' %s\n",
filename, lineno, option, reason);
}
}
diff --git a/src/tool_setopt.c b/src/tool_setopt.c
index 7eb64b039..a53fdc835 100644
--- a/src/tool_setopt.c
+++ b/src/tool_setopt.c
@@ -107,12 +107,6 @@ const NameValue setopt_nv_CURLUSESSL[] = {
NVEND,
};
-const NameValueUnsigned setopt_nv_CURLSSLOPT[] = {
- NV(CURLSSLOPT_ALLOW_BEAST),
- NV(CURLSSLOPT_NO_REVOKE),
- NVEND,
-};
-
const NameValue setopt_nv_CURL_NETRC[] = {
NV(CURL_NETRC_IGNORED),
NV(CURL_NETRC_OPTIONAL),
diff --git a/src/tool_setopt.h b/src/tool_setopt.h
index b32adf988..fcba94cb2 100644
--- a/src/tool_setopt.h
+++ b/src/tool_setopt.h
@@ -52,7 +52,6 @@ extern const NameValue setopt_nv_CURL_SSLVERSION[];
extern const NameValue setopt_nv_CURL_TIMECOND[];
extern const NameValue setopt_nv_CURLFTPSSL_CCC[];
extern const NameValue setopt_nv_CURLUSESSL[];
-extern const NameValueUnsigned setopt_nv_CURLSSLOPT[];
extern const NameValue setopt_nv_CURL_NETRC[];
extern const NameValue setopt_nv_CURLPROTO[];
extern const NameValueUnsigned setopt_nv_CURLAUTH[];
@@ -64,7 +63,6 @@ extern const NameValueUnsigned setopt_nv_CURLAUTH[];
#define setopt_nv_CURLOPT_TIMECONDITION setopt_nv_CURL_TIMECOND
#define setopt_nv_CURLOPT_FTP_SSL_CCC setopt_nv_CURLFTPSSL_CCC
#define setopt_nv_CURLOPT_USE_SSL setopt_nv_CURLUSESSL
-#define setopt_nv_CURLOPT_SSL_OPTIONS setopt_nv_CURLSSLOPT
#define setopt_nv_CURLOPT_NETRC setopt_nv_CURL_NETRC
#define setopt_nv_CURLOPT_PROTOCOLS setopt_nv_CURLPROTO
#define setopt_nv_CURLOPT_REDIR_PROTOCOLS setopt_nv_CURLPROTO
diff --git a/src/tool_strdup.c b/src/tool_strdup.c
index a0bbe88b2..965675c3d 100644
--- a/src/tool_strdup.c
+++ b/src/tool_strdup.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -39,7 +39,7 @@ char *strdup(const char *str)
if(!newstr)
return (char *)NULL;
- memcpy(newstr, str, (len+1)*sizeof(char));
+ memcpy(newstr,str,(len+1)*sizeof(char));
return newstr;
diff --git a/src/tool_urlglob.c b/src/tool_urlglob.c
index 133725242..b6d5591ab 100644
--- a/src/tool_urlglob.c
+++ b/src/tool_urlglob.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -21,9 +21,9 @@
***************************************************************************/
#include "tool_setup.h"
-#define ENABLE_CURLX_PRINTF
-/* use our own printf() functions */
-#include "curlx.h"
+#define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */
+#include <curl/mprintf.h>
+
#include "tool_urlglob.h"
#include "tool_vms.h"
@@ -196,7 +196,7 @@ static CURLcode glob_range(URLGlob *glob, char **patternp,
char *endp;
unsigned long lstep;
errno = 0;
- lstep = strtoul(&pattern[4], &endp, 10);
+ lstep = strtoul(&pattern[3], &endp, 10);
if(errno || (*endp != ']'))
step = -1;
else {
@@ -212,7 +212,7 @@ static CURLcode glob_range(URLGlob *glob, char **patternp,
*posp += (pattern - *patternp);
if((rc != 2) || (min_c >= max_c) || ((max_c - min_c) > ('z' - 'a')) ||
- (step <= 0) )
+ (step < 0) )
/* the pattern is not well-formed */
return GLOBERROR("bad range", *posp, CURLE_URL_MALFORMAT);
@@ -222,8 +222,7 @@ static CURLcode glob_range(URLGlob *glob, char **patternp,
pat->content.CharRange.max_c = max_c;
if(multiply(amount, (pat->content.CharRange.max_c -
- pat->content.CharRange.min_c) /
- pat->content.CharRange.step + 1) )
+ pat->content.CharRange.min_c + 1)))
return GLOBERROR("range overflow", *posp, CURLE_URL_MALFORMAT);
}
else if(ISDIGIT(*pattern)) {
@@ -277,8 +276,7 @@ static CURLcode glob_range(URLGlob *glob, char **patternp,
*posp += (pattern - *patternp);
- if(!endp || (min_n > max_n) || (step_n > (max_n - min_n)) ||
- (step_n <= 0) )
+ if(!endp || (min_n > max_n) || (step_n > (max_n - min_n)))
/* the pattern is not well-formed */
return GLOBERROR("bad range", *posp, CURLE_URL_MALFORMAT);
@@ -289,8 +287,7 @@ static CURLcode glob_range(URLGlob *glob, char **patternp,
pat->content.NumRange.step = step_n;
if(multiply(amount, (pat->content.NumRange.max_n -
- pat->content.NumRange.min_n) /
- pat->content.NumRange.step + 1) )
+ pat->content.NumRange.min_n + 1)))
return GLOBERROR("range overflow", *posp, CURLE_URL_MALFORMAT);
}
else
@@ -669,3 +666,4 @@ CURLcode glob_match_url(char **result, char *filename, URLGlob *glob)
*result = target;
return CURLE_OK;
}
+
diff --git a/src/tool_urlglob.h b/src/tool_urlglob.h
index 62c1abdd6..7a9ec5943 100644
--- a/src/tool_urlglob.h
+++ b/src/tool_urlglob.h
@@ -7,7 +7,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -51,7 +51,7 @@ typedef struct {
int padlength;
unsigned long ptr_n;
unsigned long step;
- } NumRange;
+ } NumRange ;
} content;
} URLPattern;
diff --git a/src/tool_version.h b/src/tool_version.h
index 2502ce7e7..3627edcbe 100644
--- a/src/tool_version.h
+++ b/src/tool_version.h
@@ -25,7 +25,7 @@
#define CURL_NAME "curl"
#define CURL_COPYRIGHT LIBCURL_COPYRIGHT
-#define CURL_VERSION "7.44.0"
+#define CURL_VERSION "7.40.0"
#define CURL_VERSION_MAJOR LIBCURL_VERSION_MAJOR
#define CURL_VERSION_MINOR LIBCURL_VERSION_MINOR
#define CURL_VERSION_PATCH LIBCURL_VERSION_PATCH
diff --git a/src/tool_writeenv.c b/src/tool_writeenv.c
index b28f35a8d..a9462d004 100644
--- a/src/tool_writeenv.c
+++ b/src/tool_writeenv.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -27,8 +27,11 @@
# include <kernel.h>
#endif
+#define _MPRINTF_REPLACE /* use our functions only */
#include <curl/mprintf.h>
+
#include "tool_writeenv.h"
+
#include "memdebug.h" /* keep this as LAST include */
static const struct
diff --git a/src/tool_writeout.c b/src/tool_writeout.c
index 63db90c96..f29d1ac33 100644
--- a/src/tool_writeout.c
+++ b/src/tool_writeout.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2012, 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
@@ -20,9 +20,10 @@
*
***************************************************************************/
#include "tool_setup.h"
-#define ENABLE_CURLX_PRINTF
-/* use our own printf() functions */
-#include "curlx.h"
+
+#define _MPRINTF_REPLACE /* we want curl-functions instead of native ones */
+#include <curl/mprintf.h>
+
#include "tool_cfgable.h"
#include "tool_writeout.h"
diff --git a/test-driver b/test-driver
deleted file mode 100755
index d30605660..000000000
--- a/test-driver
+++ /dev/null
@@ -1,139 +0,0 @@
-#! /bin/sh
-# test-driver - basic testsuite driver script.
-
-scriptversion=2013-07-13.22; # UTC
-
-# Copyright (C) 2011-2013 Free Software Foundation, Inc.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-
-# As a special exception to the GNU General Public License, if you
-# distribute this file as part of a program that contains a
-# configuration script generated by Autoconf, you may include it under
-# the same distribution terms that you use for the rest of that program.
-
-# This file is maintained in Automake, please report
-# bugs to <bug-automake@gnu.org> or send patches to
-# <automake-patches@gnu.org>.
-
-# Make unconditional expansion of undefined variables an error. This
-# helps a lot in preventing typo-related bugs.
-set -u
-
-usage_error ()
-{
- echo "$0: $*" >&2
- print_usage >&2
- exit 2
-}
-
-print_usage ()
-{
- cat <<END
-Usage:
- test-driver --test-name=NAME --log-file=PATH --trs-file=PATH
- [--expect-failure={yes|no}] [--color-tests={yes|no}]
- [--enable-hard-errors={yes|no}] [--]
- TEST-SCRIPT [TEST-SCRIPT-ARGUMENTS]
-The '--test-name', '--log-file' and '--trs-file' options are mandatory.
-END
-}
-
-test_name= # Used for reporting.
-log_file= # Where to save the output of the test script.
-trs_file= # Where to save the metadata of the test run.
-expect_failure=no
-color_tests=no
-enable_hard_errors=yes
-while test $# -gt 0; do
- case $1 in
- --help) print_usage; exit $?;;
- --version) echo "test-driver $scriptversion"; exit $?;;
- --test-name) test_name=$2; shift;;
- --log-file) log_file=$2; shift;;
- --trs-file) trs_file=$2; shift;;
- --color-tests) color_tests=$2; shift;;
- --expect-failure) expect_failure=$2; shift;;
- --enable-hard-errors) enable_hard_errors=$2; shift;;
- --) shift; break;;
- -*) usage_error "invalid option: '$1'";;
- *) break;;
- esac
- shift
-done
-
-missing_opts=
-test x"$test_name" = x && missing_opts="$missing_opts --test-name"
-test x"$log_file" = x && missing_opts="$missing_opts --log-file"
-test x"$trs_file" = x && missing_opts="$missing_opts --trs-file"
-if test x"$missing_opts" != x; then
- usage_error "the following mandatory options are missing:$missing_opts"
-fi
-
-if test $# -eq 0; then
- usage_error "missing argument"
-fi
-
-if test $color_tests = yes; then
- # Keep this in sync with 'lib/am/check.am:$(am__tty_colors)'.
- red='' # Red.
- grn='' # Green.
- lgn='' # Light green.
- blu='' # Blue.
- mgn='' # Magenta.
- std='' # No color.
-else
- red= grn= lgn= blu= mgn= std=
-fi
-
-do_exit='rm -f $log_file $trs_file; (exit $st); exit $st'
-trap "st=129; $do_exit" 1
-trap "st=130; $do_exit" 2
-trap "st=141; $do_exit" 13
-trap "st=143; $do_exit" 15
-
-# Test script is run here.
-"$@" >$log_file 2>&1
-estatus=$?
-if test $enable_hard_errors = no && test $estatus -eq 99; then
- estatus=1
-fi
-
-case $estatus:$expect_failure in
- 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;;
- 0:*) col=$grn res=PASS recheck=no gcopy=no;;
- 77:*) col=$blu res=SKIP recheck=no gcopy=yes;;
- 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;;
- *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;;
- *:*) col=$red res=FAIL recheck=yes gcopy=yes;;
-esac
-
-# Report outcome to console.
-echo "${col}${res}${std}: $test_name"
-
-# Register the test result, and other relevant metadata.
-echo ":test-result: $res" > $trs_file
-echo ":global-test-result: $res" >> $trs_file
-echo ":recheck: $recheck" >> $trs_file
-echo ":copy-in-global-log: $gcopy" >> $trs_file
-
-# Local Variables:
-# mode: shell-script
-# sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
-# time-stamp-start: "scriptversion="
-# time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
-# time-stamp-end: "; # UTC"
-# End:
diff --git a/tests/FILEFORMAT b/tests/FILEFORMAT
index 20ff64a6b..c234c2250 100644
--- a/tests/FILEFORMAT
+++ b/tests/FILEFORMAT
@@ -122,7 +122,7 @@ DELAY [command] [secs]
- Delay responding to this command for the given time
RETRWEIRDO
- Enable the "weirdo" RETR case when multiple response lines appear at once
- when a file is transferred
+ when a file is transfered
RETRNOSIZE
- Make sure the RETR response doesn't contain the size of the file
NOSAVE
@@ -211,11 +211,8 @@ crypto
debug
getrlimit
GnuTLS
-GSS-API
-http2
idn
ipv6
-Kerberos
large_file
libz
Metalink
@@ -223,15 +220,17 @@ NSS
NTLM
OpenSSL
socks
-SPNEGO
SSL
SSLpinning
-SSPI
TLS-SRP
TrackMemory
unittest
+http2
+SSPI
+GSS-API
+Kerberos
+SPNEGO
unix-sockets
-WinSSL
as well as each protocol that curl supports. A protocol only needs to be
specified if it is different from the server (useful when the server
@@ -291,7 +290,7 @@ If there's no test number found above, the HTTP test server will use the
number following the last dot in the given hostname (made so that a CONNECT
can still pass on test number) so that "foo.bar.123" gets treated as test case
123. Alternatively, if an IPv6 address is provided to CONNECT, the last
-hexadecimal group in the address will be used as the test number! For example
+hexadecimal group in the address will be used as the test numer! For example
the address "[1234::ff]" would be treated as test case 255.
Set type="perl" to write the test case as a perl script. It implies that
@@ -341,7 +340,7 @@ Available substitute variables include:
%HTTPTLSPORT - Port number of the HTTP TLS server
%IMAP6PORT - IPv6 port number of the IMAP server
%IMAPPORT - Port number of the IMAP server
-%POP36PORT - IPv6 port number of the POP3 server
+%POP36PORT - IPv6 ort number of the POP3 server
%POP3PORT - Port number of the POP3 server
%PROXYPORT - Port number of the HTTP proxy
%PWD - Current directory
diff --git a/tests/Makefile.am b/tests/Makefile.am
index eac455aee..ca69709da 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -27,7 +27,7 @@ EXTRA_DIST = ftpserver.pl httpserver.pl secureserver.pl runtests.pl getpart.pm \
FILEFORMAT README stunnel.pem memanalyze.pl testcurl.pl valgrind.pm ftp.pm \
sshserver.pl sshhelp.pm testcurl.1 runtests.1 $(HTMLPAGES) $(PDFPAGES) \
serverhelp.pm tftpserver.pl rtspserver.pl directories.pm symbol-scan.pl \
- CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py extern-scan.pl
+ CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py
DISTCLEANFILES = configurehelp.pm
diff --git a/tests/Makefile.in b/tests/Makefile.in
index 589c60602..c97f11609 100644
--- a/tests/Makefile.in
+++ b/tests/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -36,17 +36,7 @@
#
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -110,6 +100,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = tests
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs README
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -130,8 +122,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -190,7 +181,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -274,7 +264,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -327,7 +317,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -344,6 +333,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -409,7 +399,7 @@ EXTRA_DIST = ftpserver.pl httpserver.pl secureserver.pl runtests.pl getpart.pm \
FILEFORMAT README stunnel.pem memanalyze.pl testcurl.pl valgrind.pm ftp.pm \
sshserver.pl sshhelp.pm testcurl.1 runtests.1 $(HTMLPAGES) $(PDFPAGES) \
serverhelp.pm tftpserver.pl rtspserver.pl directories.pm symbol-scan.pl \
- CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py extern-scan.pl
+ CMakeLists.txt mem-include-scan.pl valgrind.supp http_pipe.py
DISTCLEANFILES = configurehelp.pm
@BUILD_UNITTESTS_FALSE@BUILD_UNIT =
@@ -447,6 +437,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -743,8 +734,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
curl:
@cd $(top_builddir) && $(MAKE)
diff --git a/tests/README b/tests/README
index ae8ff25cc..a8b8adcee 100644
--- a/tests/README
+++ b/tests/README
@@ -100,9 +100,7 @@ The cURL Test Suite
(like "./runtests.pl 3 4" to test 3 and 4 only). It also supports test case
ranges with 'to', as in "./runtests 3 to 9" which runs the seven tests from
3 to 9. Any test numbers starting with ! are disabled, as are any test
- numbers found in the files data/DISABLED or data/DISABLED.local (one per
- line). The latter is meant for local temporary disables and will be ignored
- by git.
+ numbers found in the file data/DISABLED (one per line).
When -s is not present, each successful test will display on one line the
test number and description and on the next line a set of flags, the test
@@ -205,26 +203,25 @@ The cURL Test Suite
2.1 Test case numbering
1 - 99 HTTP
- 100 - 199 FTP
- 200 - 299 FILE
+ 100 - 199 FTP*
+ 200 - 299 FILE*
300 - 399 HTTPS
400 - 499 FTPS
500 - 599 libcurl source code tests, not using the curl command tool
600 - 699 SCP/SFTP
700 - 799 SOCKS4 (even numbers) and SOCK5 (odd numbers)
- 800 - 849 IMAP
- 850 - 899 POP3
- 900 - 999 SMTP
- 1000 - 1299 miscellaneous
- 1300 - 1399 unit tests
- 1400 - 1499 miscellaneous
+ 800 - 899 POP3, IMAP, SMTP
+ 1000 - 1299 miscellaneous*
+ 1300 - 1399 unit tests*
+ 1400 - 1499 miscellaneous*
1500 - 1599 libcurl source code tests, not using the curl command tool
(same as 5xx)
- 1600 - 1699 unit tests
- 2000 - x multiple sequential protocols per test case
+ 2000 - x multiple sequential protocols per test case*
- There's nothing in the system that *requires* us to keep within these number
- series.
+ Since 30-apr-2003, there's nothing in the system that requires us to keep
+ within these number series, and those sections marked with * actually
+ contain tests for a variety of protocols. Each test case now specifies its
+ own server requirements, independent of test number.
3. Write tests
diff --git a/tests/certs/EdelCurlRoot-ca.cacert b/tests/certs/EdelCurlRoot-ca.cacert
index d3ec4d359..8bcbc180b 100644
--- a/tests/certs/EdelCurlRoot-ca.cacert
+++ b/tests/certs/EdelCurlRoot-ca.cacert
@@ -1,41 +1,42 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311616 (0xcfa60bc5140)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:f5:ab:a6
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Aug 24 15:07:11 2031 GMT
+ Not Before: May 27 21:36:46 2010 GMT
+ Not After : Oct 30 21:36:46 2026 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
- 00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
- 08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
- d6:6e:74:16:81:16:4e:50:b9:6c:b9:36:0d:19:a4:
- f7:85:99:40:46:26:46:33:86:ce:0c:27:71:e4:8f:
- 0f:b4:3a:99:6d:af:78:48:b7:cb:c4:d3:60:7d:d0:
- 17:6f:23:bc:89:c0:bc:16:b8:94:f0:b2:10:8d:c8:
- e0:35:97:ed:8f:c6:db:9b:cd:aa:f6:8c:45:dc:0f:
- ee:a0:78:12:be:f6:7d:f4:f7:b6:8c:4e:e5:7d:32:
- e8:f7:f7:1e:04:46:9e:08:cd:cb:ec:e2:9a:c3:35:
- 3f:ce:a1:01:e3:10:0a:ec:d9:ab:13:09:eb:e6:39:
- 6b:92:30:c7:08:bd:8a:32:ef:0b:b2:61:6f:11:43:
- 95:cf:31:ea:19:01:cc:1a:6d:d2:d5:57:35:da:c0:
- ae:46:39:d3:33:ed:f8:c0:1e:ad:3d:68:6f:a8:53:
- 24:ac:d6:f9:dd:2b:51:50:77:e4:b7:5d:ad:48:80:
- 5d:65:57:e5:eb:07:82:7d:cb:72:4f:06:6a:34:d4:
- 38:c8:6b:ed:8a:3a:68:5e:35:e3:78:14:da:5d:86:
- 9f:e5:d4:1c:dd:90:c2:7c:a2:00:d4:95:65:04:85:
- ff:83
+ 00:c1:a9:0a:ef:76:06:7d:fe:78:3a:f1:0e:40:6d:
+ c2:5b:ae:8f:8d:7f:f0:d5:89:9e:42:2a:f0:17:94:
+ d9:2e:67:c7:2d:01:1c:95:a3:b1:a6:86:d4:12:3c:
+ 47:3a:70:e6:7b:1f:11:06:d3:73:ae:df:ca:24:19:
+ 03:e4:62:0a:eb:67:d4:dc:ef:9d:2d:e0:82:77:fe:
+ 2a:30:5a:fb:57:e5:b8:4f:36:52:4c:2f:57:ad:12:
+ 6a:94:3e:e4:48:a7:ad:a5:c0:3a:d0:4e:00:99:88:
+ 8f:bd:4a:70:be:3b:5b:6b:ff:5e:6f:29:6d:0c:a7:
+ 55:4a:e2:43:e7:49:0f:99:54:59:68:81:34:d8:a9:
+ fb:c8:0d:14:5a:40:cb:70:1e:f5:3b:c0:42:39:06:
+ f9:63:ad:d9:29:14:53:af:42:10:1d:18:95:b6:15:
+ 8a:d8:41:d8:37:31:0a:97:5a:1b:10:90:ac:1d:ff:
+ 6e:71:33:6b:7e:88:18:20:ed:be:35:ff:e7:69:48:
+ 05:c0:78:2e:04:46:f4:c2:8d:4d:70:6e:42:fa:93:
+ eb:ce:12:3b:d1:f5:ce:3f:29:5c:8c:bd:59:83:e4:
+ a1:c1:3c:8e:3e:38:55:f3:99:18:b0:df:f6:74:c9:
+ 8e:28:f4:38:0d:45:20:d6:db:c0:73:a2:e6:8c:6e:
+ 98:9f
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints: critical
@@ -43,42 +44,42 @@ Certificate:
X509v3 Key Usage: critical
Certificate Sign, CRL Sign
X509v3 Subject Key Identifier:
- 12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
Signature Algorithm: sha1WithRSAEncryption
- d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
- 76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
- d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
- 1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
- f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
- e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
- 28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
- aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
- 1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
- 24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
- 27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
- af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
- b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
- f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
- d8:52:63:75
+ 86:1f:9d:dd:45:11:c8:6b:f1:97:1a:f0:25:b2:0c:f7:1f:58:
+ c4:6a:a5:56:07:32:cb:2d:7a:8c:ae:47:1e:7d:e7:73:6c:3b:
+ 96:1e:75:b4:e5:89:05:a7:7e:b6:52:56:5a:e2:6b:38:e4:18:
+ 3c:64:6f:be:bd:d3:01:76:b4:83:7f:7a:1e:9c:cb:40:1b:9a:
+ dd:43:cb:9a:db:8a:f8:76:50:ab:ad:85:7f:cf:3a:6f:4b:e2:
+ 27:b0:8c:a9:0a:e0:d8:45:00:05:5e:29:ab:a0:8a:78:e5:09:
+ 89:48:8a:0d:42:49:1e:ad:c2:85:2f:29:9d:af:2e:c8:ef:b9:
+ dc:74:33:eb:e9:45:e9:a2:b3:00:ba:76:0b:74:59:c9:a8:96:
+ 4c:f3:cd:9b:34:5a:4a:87:b2:6a:52:74:5b:be:f3:81:f8:32:
+ d0:1f:c9:cc:9f:8a:6a:eb:6e:f3:6d:2c:54:20:86:f6:87:62:
+ c0:ed:55:03:9d:97:a9:5a:ae:39:a0:7e:e4:a6:95:e9:26:19:
+ 91:e6:0f:b6:18:f7:49:6c:a7:ce:fd:c1:04:c2:f9:27:27:4c:
+ 59:e9:bf:7a:f6:65:a0:d9:a0:71:a6:54:c6:6f:9a:5d:23:19:
+ 57:49:59:2c:06:91:3e:28:9b:c1:6f:f2:2d:9a:24:a7:0b:da:
+ cd:cc:f3:bc
-----BEGIN CERTIFICATE-----
-MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDkDCCAnigAwIBAgIGC5iU9aumMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
-KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
-1khgEjDt1m50FoEWTlC5bLk2DRmk94WZQEYmRjOGzgwnceSPD7Q6mW2veEi3y8TT
-YH3QF28jvInAvBa4lPCyEI3I4DWX7Y/G25vNqvaMRdwP7qB4Er72ffT3toxO5X0y
-6Pf3HgRGngjNy+zimsM1P86hAeMQCuzZqxMJ6+Y5a5Iwxwi9ijLvC7JhbxFDlc8x
-6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
-gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
-MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
-uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
-eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
-QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
-y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
-zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
-blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
-gdzYUmN1
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzY0NloXDTI2MTAzMDIxMzY0NlowZzELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+JTAjBgNVBAMMHE5vdGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDBqQrvdgZ9/ng68Q5AbcJbro+Nf/DViZ5C
+KvAXlNkuZ8ctARyVo7GmhtQSPEc6cOZ7HxEG03Ou38okGQPkYgrrZ9Tc750t4IJ3
+/iowWvtX5bhPNlJML1etEmqUPuRIp62lwDrQTgCZiI+9SnC+O1tr/15vKW0Mp1VK
+4kPnSQ+ZVFlogTTYqfvIDRRaQMtwHvU7wEI5BvljrdkpFFOvQhAdGJW2FYrYQdg3
+MQqXWhsQkKwd/25xM2t+iBgg7b41/+dpSAXAeC4ERvTCjU1wbkL6k+vOEjvR9c4/
+KVyMvVmD5KHBPI4+OFXzmRiw3/Z0yY4o9DgNRSDW28BzouaMbpifAgMBAAGjQjBA
+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBStPuI5
+B7hcqiaQlEwmaSGD4k42lDANBgkqhkiG9w0BAQUFAAOCAQEAhh+d3UURyGvxlxrw
+JbIM9x9YxGqlVgcyyy16jK5HHn3nc2w7lh51tOWJBad+tlJWWuJrOOQYPGRvvr3T
+AXa0g396HpzLQBua3UPLmtuK+HZQq62Ff886b0viJ7CMqQrg2EUABV4pq6CKeOUJ
+iUiKDUJJHq3ChS8pna8uyO+53HQz6+lF6aKzALp2C3RZyaiWTPPNmzRaSoeyalJ0
+W77zgfgy0B/JzJ+Kautu820sVCCG9odiwO1VA52XqVquOaB+5KaV6SYZkeYPthj3
+SWynzv3BBML5JydMWem/evZloNmgcaZUxm+aXSMZV0lZLAaRPiibwW/yLZokpwva
+zczzvA==
-----END CERTIFICATE-----
diff --git a/tests/certs/EdelCurlRoot-ca.crt b/tests/certs/EdelCurlRoot-ca.crt
index d3ec4d359..8bcbc180b 100644
--- a/tests/certs/EdelCurlRoot-ca.crt
+++ b/tests/certs/EdelCurlRoot-ca.crt
@@ -1,41 +1,42 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311616 (0xcfa60bc5140)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:f5:ab:a6
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Aug 24 15:07:11 2031 GMT
+ Not Before: May 27 21:36:46 2010 GMT
+ Not After : Oct 30 21:36:46 2026 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
- 00:e1:4c:d9:74:1a:a4:a3:42:57:a4:7a:2e:74:02:
- 08:49:6a:6a:1d:db:de:c3:43:d6:48:60:12:30:ed:
- d6:6e:74:16:81:16:4e:50:b9:6c:b9:36:0d:19:a4:
- f7:85:99:40:46:26:46:33:86:ce:0c:27:71:e4:8f:
- 0f:b4:3a:99:6d:af:78:48:b7:cb:c4:d3:60:7d:d0:
- 17:6f:23:bc:89:c0:bc:16:b8:94:f0:b2:10:8d:c8:
- e0:35:97:ed:8f:c6:db:9b:cd:aa:f6:8c:45:dc:0f:
- ee:a0:78:12:be:f6:7d:f4:f7:b6:8c:4e:e5:7d:32:
- e8:f7:f7:1e:04:46:9e:08:cd:cb:ec:e2:9a:c3:35:
- 3f:ce:a1:01:e3:10:0a:ec:d9:ab:13:09:eb:e6:39:
- 6b:92:30:c7:08:bd:8a:32:ef:0b:b2:61:6f:11:43:
- 95:cf:31:ea:19:01:cc:1a:6d:d2:d5:57:35:da:c0:
- ae:46:39:d3:33:ed:f8:c0:1e:ad:3d:68:6f:a8:53:
- 24:ac:d6:f9:dd:2b:51:50:77:e4:b7:5d:ad:48:80:
- 5d:65:57:e5:eb:07:82:7d:cb:72:4f:06:6a:34:d4:
- 38:c8:6b:ed:8a:3a:68:5e:35:e3:78:14:da:5d:86:
- 9f:e5:d4:1c:dd:90:c2:7c:a2:00:d4:95:65:04:85:
- ff:83
+ 00:c1:a9:0a:ef:76:06:7d:fe:78:3a:f1:0e:40:6d:
+ c2:5b:ae:8f:8d:7f:f0:d5:89:9e:42:2a:f0:17:94:
+ d9:2e:67:c7:2d:01:1c:95:a3:b1:a6:86:d4:12:3c:
+ 47:3a:70:e6:7b:1f:11:06:d3:73:ae:df:ca:24:19:
+ 03:e4:62:0a:eb:67:d4:dc:ef:9d:2d:e0:82:77:fe:
+ 2a:30:5a:fb:57:e5:b8:4f:36:52:4c:2f:57:ad:12:
+ 6a:94:3e:e4:48:a7:ad:a5:c0:3a:d0:4e:00:99:88:
+ 8f:bd:4a:70:be:3b:5b:6b:ff:5e:6f:29:6d:0c:a7:
+ 55:4a:e2:43:e7:49:0f:99:54:59:68:81:34:d8:a9:
+ fb:c8:0d:14:5a:40:cb:70:1e:f5:3b:c0:42:39:06:
+ f9:63:ad:d9:29:14:53:af:42:10:1d:18:95:b6:15:
+ 8a:d8:41:d8:37:31:0a:97:5a:1b:10:90:ac:1d:ff:
+ 6e:71:33:6b:7e:88:18:20:ed:be:35:ff:e7:69:48:
+ 05:c0:78:2e:04:46:f4:c2:8d:4d:70:6e:42:fa:93:
+ eb:ce:12:3b:d1:f5:ce:3f:29:5c:8c:bd:59:83:e4:
+ a1:c1:3c:8e:3e:38:55:f3:99:18:b0:df:f6:74:c9:
+ 8e:28:f4:38:0d:45:20:d6:db:c0:73:a2:e6:8c:6e:
+ 98:9f
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Basic Constraints: critical
@@ -43,42 +44,42 @@ Certificate:
X509v3 Key Usage: critical
Certificate Sign, CRL Sign
X509v3 Subject Key Identifier:
- 12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
Signature Algorithm: sha1WithRSAEncryption
- d4:d0:22:19:78:2e:2e:1d:83:c6:79:89:c1:a8:23:43:4e:86:
- 76:16:31:bd:b7:c0:44:2c:b9:2c:79:99:2f:02:48:33:1e:a7:
- d7:0e:d9:f1:cb:ed:39:1a:34:b3:50:af:c9:8d:64:bf:ff:72:
- 1b:1d:e0:5d:40:3b:b5:00:7c:d1:78:ff:45:ee:d9:05:3f:32:
- f6:cd:f4:d3:79:58:d8:44:94:65:f5:c3:a9:5d:d8:13:d9:57:
- e7:13:18:fa:f3:72:0b:cf:a3:4a:f4:6e:5e:74:30:3c:cb:76:
- 28:f9:44:9a:ba:3e:b7:3e:01:79:3e:cb:5c:df:5a:d4:6c:34:
- aa:bd:c0:6d:25:85:e5:28:f6:15:e1:9d:af:a7:f7:a7:6c:2a:
- 1d:1d:93:1e:89:71:66:c7:0b:e4:ce:36:c1:21:c4:73:5d:2b:
- 24:a9:3d:26:df:1c:e8:60:69:e3:82:98:c3:5b:91:9e:da:bd:
- 27:ee:e0:fd:64:ea:7d:35:91:fd:5e:1e:33:82:24:39:7b:49:
- af:23:05:fc:6e:53:7e:07:69:f4:e7:e3:1f:f0:1c:59:87:4c:
- b6:74:c9:60:ed:f5:ab:a0:31:8a:05:d4:64:9f:1e:16:b6:9f:
- f8:7e:0d:ac:b7:d9:16:b9:b3:bc:0b:03:6b:24:e9:46:81:dc:
- d8:52:63:75
+ 86:1f:9d:dd:45:11:c8:6b:f1:97:1a:f0:25:b2:0c:f7:1f:58:
+ c4:6a:a5:56:07:32:cb:2d:7a:8c:ae:47:1e:7d:e7:73:6c:3b:
+ 96:1e:75:b4:e5:89:05:a7:7e:b6:52:56:5a:e2:6b:38:e4:18:
+ 3c:64:6f:be:bd:d3:01:76:b4:83:7f:7a:1e:9c:cb:40:1b:9a:
+ dd:43:cb:9a:db:8a:f8:76:50:ab:ad:85:7f:cf:3a:6f:4b:e2:
+ 27:b0:8c:a9:0a:e0:d8:45:00:05:5e:29:ab:a0:8a:78:e5:09:
+ 89:48:8a:0d:42:49:1e:ad:c2:85:2f:29:9d:af:2e:c8:ef:b9:
+ dc:74:33:eb:e9:45:e9:a2:b3:00:ba:76:0b:74:59:c9:a8:96:
+ 4c:f3:cd:9b:34:5a:4a:87:b2:6a:52:74:5b:be:f3:81:f8:32:
+ d0:1f:c9:cc:9f:8a:6a:eb:6e:f3:6d:2c:54:20:86:f6:87:62:
+ c0:ed:55:03:9d:97:a9:5a:ae:39:a0:7e:e4:a6:95:e9:26:19:
+ 91:e6:0f:b6:18:f7:49:6c:a7:ce:fd:c1:04:c2:f9:27:27:4c:
+ 59:e9:bf:7a:f6:65:a0:d9:a0:71:a6:54:c6:6f:9a:5d:23:19:
+ 57:49:59:2c:06:91:3e:28:9b:c1:6f:f2:2d:9a:24:a7:0b:da:
+ cd:cc:f3:bc
-----BEGIN CERTIFICATE-----
-MIIDkjCCAnqgAwIBAgIGDPpgvFFAMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDkDCCAnigAwIBAgIGC5iU9aumMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0zMTA4MjQxNTA3MTFaMGgxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjCCASIwDQYJ
-KoZIhvcNAQEBBQADggEPADCCAQoCggEBAOFM2XQapKNCV6R6LnQCCElqah3b3sND
-1khgEjDt1m50FoEWTlC5bLk2DRmk94WZQEYmRjOGzgwnceSPD7Q6mW2veEi3y8TT
-YH3QF28jvInAvBa4lPCyEI3I4DWX7Y/G25vNqvaMRdwP7qB4Er72ffT3toxO5X0y
-6Pf3HgRGngjNy+zimsM1P86hAeMQCuzZqxMJ6+Y5a5Iwxwi9ijLvC7JhbxFDlc8x
-6hkBzBpt0tVXNdrArkY50zPt+MAerT1ob6hTJKzW+d0rUVB35LddrUiAXWVX5esH
-gn3Lck8GajTUOMhr7Yo6aF4143gU2l2Gn+XUHN2QwnyiANSVZQSF/4MCAwEAAaNC
-MEAwDwYDVR0TAQH/BAUwAwEB/zAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFBLK
-uktGBKd1iizoDlSUvBJlpnvOMA0GCSqGSIb3DQEBBQUAA4IBAQDU0CIZeC4uHYPG
-eYnBqCNDToZ2FjG9t8BELLkseZkvAkgzHqfXDtnxy+05GjSzUK/JjWS//3IbHeBd
-QDu1AHzReP9F7tkFPzL2zfTTeVjYRJRl9cOpXdgT2VfnExj683ILz6NK9G5edDA8
-y3Yo+USauj63PgF5Pstc31rUbDSqvcBtJYXlKPYV4Z2vp/enbCodHZMeiXFmxwvk
-zjbBIcRzXSskqT0m3xzoYGnjgpjDW5Ge2r0n7uD9ZOp9NZH9Xh4zgiQ5e0mvIwX8
-blN+B2n05+Mf8BxZh0y2dMlg7fWroDGKBdRknx4Wtp/4fg2st9kWubO8CwNrJOlG
-gdzYUmN1
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzY0NloXDTI2MTAzMDIxMzY0NlowZzELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+JTAjBgNVBAMMHE5vdGhlcm4gTm93aGVyZSBUcnVzdCBBbmNob3IwggEiMA0GCSqG
+SIb3DQEBAQUAA4IBDwAwggEKAoIBAQDBqQrvdgZ9/ng68Q5AbcJbro+Nf/DViZ5C
+KvAXlNkuZ8ctARyVo7GmhtQSPEc6cOZ7HxEG03Ou38okGQPkYgrrZ9Tc750t4IJ3
+/iowWvtX5bhPNlJML1etEmqUPuRIp62lwDrQTgCZiI+9SnC+O1tr/15vKW0Mp1VK
+4kPnSQ+ZVFlogTTYqfvIDRRaQMtwHvU7wEI5BvljrdkpFFOvQhAdGJW2FYrYQdg3
+MQqXWhsQkKwd/25xM2t+iBgg7b41/+dpSAXAeC4ERvTCjU1wbkL6k+vOEjvR9c4/
+KVyMvVmD5KHBPI4+OFXzmRiw3/Z0yY4o9DgNRSDW28BzouaMbpifAgMBAAGjQjBA
+MA8GA1UdEwEB/wQFMAMBAf8wDgYDVR0PAQH/BAQDAgEGMB0GA1UdDgQWBBStPuI5
+B7hcqiaQlEwmaSGD4k42lDANBgkqhkiG9w0BAQUFAAOCAQEAhh+d3UURyGvxlxrw
+JbIM9x9YxGqlVgcyyy16jK5HHn3nc2w7lh51tOWJBad+tlJWWuJrOOQYPGRvvr3T
+AXa0g396HpzLQBua3UPLmtuK+HZQq62Ff886b0viJ7CMqQrg2EUABV4pq6CKeOUJ
+iUiKDUJJHq3ChS8pna8uyO+53HQz6+lF6aKzALp2C3RZyaiWTPPNmzRaSoeyalJ0
+W77zgfgy0B/JzJ+Kautu820sVCCG9odiwO1VA52XqVquOaB+5KaV6SYZkeYPthj3
+SWynzv3BBML5JydMWem/evZloNmgcaZUxm+aXSMZV0lZLAaRPiibwW/yLZokpwva
+zczzvA==
-----END CERTIFICATE-----
diff --git a/tests/certs/EdelCurlRoot-ca.csr b/tests/certs/EdelCurlRoot-ca.csr
index 7d5e3001a..2df94f575 100644
--- a/tests/certs/EdelCurlRoot-ca.csr
+++ b/tests/certs/EdelCurlRoot-ca.csr
@@ -1,17 +1,17 @@
-----BEGIN CERTIFICATE REQUEST-----
-MIICrTCCAZUCAQAwaDELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
-cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAkBgNVBAMMHU5vcnRoZXJu
-IE5vd2hlcmUgVHJ1c3QgQW5jaG9yMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIB
-CgKCAQEA4UzZdBqko0JXpHoudAIISWpqHdvew0PWSGASMO3WbnQWgRZOULlsuTYN
-GaT3hZlARiZGM4bODCdx5I8PtDqZba94SLfLxNNgfdAXbyO8icC8FriU8LIQjcjg
-NZftj8bbm82q9oxF3A/uoHgSvvZ99Pe2jE7lfTLo9/ceBEaeCM3L7OKawzU/zqEB
-4xAK7NmrEwnr5jlrkjDHCL2KMu8LsmFvEUOVzzHqGQHMGm3S1Vc12sCuRjnTM+34
-wB6tPWhvqFMkrNb53StRUHfkt12tSIBdZVfl6weCfctyTwZqNNQ4yGvtijpoXjXj
-eBTaXYaf5dQc3ZDCfKIA1JVlBIX/gwIDAQABoAAwDQYJKoZIhvcNAQELBQADggEB
-ANpolqnyNQ2zhqURf1ImBOTKLqN77neGe01rdkMrQfNP+ZSr5pxcoOZgMjUGrhyQ
-C6RWexcjwMFvr+16bsEyiBgw/PxTziw6ozvJZkDVQanKZet9+6o8P6AzfjOfwIiU
-8OkLYDaNJ0M807fTNFWdt/yDY1WNfNAxIX3gMMJ1dRvvLvgIJVE4RRAaW/pEMHky
-sQTfExs99Xooqh3E6CWyR1bVHWuid0a02LcD2Q0bKTBmi3xyBjEaq3vXxS6j1fDs
-aWpwznwuuX+J7K+MHYJH9DQIg/QY6rQzxokZ92wJGFdzL3m+kou6++OAPu1plpTL
-im5n/e87gdjerEJgCqoP4S8=
+MIICrDCCAZQCAQAwZzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
+cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJTAjBgNVBAMMHE5vdGhlcm4g
+Tm93aGVyZSBUcnVzdCBBbmNob3IwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEK
+AoIBAQDBqQrvdgZ9/ng68Q5AbcJbro+Nf/DViZ5CKvAXlNkuZ8ctARyVo7GmhtQS
+PEc6cOZ7HxEG03Ou38okGQPkYgrrZ9Tc750t4IJ3/iowWvtX5bhPNlJML1etEmqU
+PuRIp62lwDrQTgCZiI+9SnC+O1tr/15vKW0Mp1VK4kPnSQ+ZVFlogTTYqfvIDRRa
+QMtwHvU7wEI5BvljrdkpFFOvQhAdGJW2FYrYQdg3MQqXWhsQkKwd/25xM2t+iBgg
+7b41/+dpSAXAeC4ERvTCjU1wbkL6k+vOEjvR9c4/KVyMvVmD5KHBPI4+OFXzmRiw
+3/Z0yY4o9DgNRSDW28BzouaMbpifAgMBAAGgADANBgkqhkiG9w0BAQsFAAOCAQEA
+eFMy55kFke/e9mrGloRUh1o8dxmzSiVwVCw5DTZQzTFNAMSOZXIId8k2IeHSUd84
+ZyJ1UNyJn2EFcwgaYaMtvZ8xMWR2W0C7lBvOOcjvWmiGze9F2Z5XMQzL8cjkK4jW
+RKIq9b0W6TC8lLO5F2eJpW6BoTQ8cBCDiVIDlCm7xZxPRjHowuyM0Tpewq2PltC1
+p8DbQipZWl5LPaHBSZSmIuUgOBU9porH/Vn0oWXxYfts59103VJY5YKkdz0PiqqA
+5kWYCMFDZyL+nZ2aIol4r8nXkN9MuPOU12aHqPGcDlaGS2i5zfm2Ywsg110k+NCk
+AmqhjnrQjvJhif3rGO4+qw==
-----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/EdelCurlRoot-ca.der b/tests/certs/EdelCurlRoot-ca.der
index 3f4ec7b06..1eaf42453 100644
--- a/tests/certs/EdelCurlRoot-ca.der
+++ b/tests/certs/EdelCurlRoot-ca.der
Binary files differ
diff --git a/tests/certs/EdelCurlRoot-ca.key b/tests/certs/EdelCurlRoot-ca.key
index bf46d1ec5..9a1303af8 100644
--- a/tests/certs/EdelCurlRoot-ca.key
+++ b/tests/certs/EdelCurlRoot-ca.key
@@ -1,27 +1,27 @@
-----BEGIN RSA PRIVATE KEY-----
-MIIEpAIBAAKCAQEA4UzZdBqko0JXpHoudAIISWpqHdvew0PWSGASMO3WbnQWgRZO
-ULlsuTYNGaT3hZlARiZGM4bODCdx5I8PtDqZba94SLfLxNNgfdAXbyO8icC8FriU
-8LIQjcjgNZftj8bbm82q9oxF3A/uoHgSvvZ99Pe2jE7lfTLo9/ceBEaeCM3L7OKa
-wzU/zqEB4xAK7NmrEwnr5jlrkjDHCL2KMu8LsmFvEUOVzzHqGQHMGm3S1Vc12sCu
-RjnTM+34wB6tPWhvqFMkrNb53StRUHfkt12tSIBdZVfl6weCfctyTwZqNNQ4yGvt
-ijpoXjXjeBTaXYaf5dQc3ZDCfKIA1JVlBIX/gwIDAQABAoIBAQDGGcWGgjrLVnUr
-qUcZOARDUW9XK9IWjZpn7xlvrmECo8552Lwp3LDNtcoVB2mhLhxG0jad7eVU6IYL
-ewNK7M+lk0lHX1yrh1Trq0I/tgN8eFyp+cj0Tw2hLcR/O0RmTGsi9tdhi/uNQPEI
-ZivNf31HHVyEyIae7FnOVpotFk6022EElQd8F8GeeKpo9pQs8sHAVOUVC8Mf2sr+
-bFyo9nzU0XkSay72ozU9O5Iw2d5aVrN5f3NS+JG9OpzvouNwkaAMOUsLVvZlUTqY
-0ve5CY2rB3D72h4GJfM2aHi8hwj56yBOsyIhBSXNYJM8nXKEbJaK5ulVv/a7KKTk
-KzSdk/mJAoGBAPXPLLJgx0mZKXNXqSvSsvgVzcpLrJh8figoF4rMzq8+5bN9Y6KU
-Lvb2ODIm/oGCIiGDdFTYqBJ0/EpauaAJgdzIwYnMZXmVB97pmwni9KrDPDwWTOqS
-3Yzh0t4C8DAgwZE4X6Ad/fmn7V06dfJZZJynL9exPp8RF7ptJ2yOnlbdAoGBAOqk
-AfRWuPGeZL9rFkd45+j03MDHglE2xKhsbRobHANItHo7r26D/Ov7QkM+lGlqdrNg
-tTPPtHs50Ek+Sb0X31/Fj45IqQroxctpbZAaJchVl88tvKXA8fkk14a9GLiow3Bk
-UGA5DFRmsIMXEengzRJoxcHAbbciGWdeSneH49nfAoGAVMypHcyXU8Ob8ieuu+iP
-R1i2SvC6VUy1dQMHxCGNuBVZxwcd5Ut7vEUK8/pR2LndLnScIF0x9lQXaUtNOHGv
-NEypv/EcnMoWEgfDLbD3OSXrVMtYs6ABAIYzadXXqLLUNFYfXyyZnpQZJg1x/S5r
-sENZFO8XrGaIKg9YB3JYG50CgYBUQweMpmQOKNKHRz6d9hZaOyzXcg4jeiaPUTiw
-6lFaAI8HYk2yw2VdnUKDgYKshJYR/sWz0IBAzFc3Jk42wM7vxrOx5fgGuebmEHtP
-B4TP96TnusYHRE3hKdDYSyoIjlp5Dx0qIPKDkMkMmolNUvRyCvwRgzgjTvSOgXb+
-i+dQQwKBgQCKn04xYbhkMOiHxNP/DUf6+XmV1V7KbpjIySychbxcTKCV98c9q491
-YjF8FJgi2JdV5XOHWaKti2Qg/tYz7CBtqkQdeNjtfKkOUA8ZyZeiNZdPIza9tzmr
-t6mCthH1oT3jyiddhSYxyfUBW3olPhBPj8YBblmq1QHE8y2j3CNjvw==
+MIIEowIBAAKCAQEAwakK73YGff54OvEOQG3CW66PjX/w1YmeQirwF5TZLmfHLQEc
+laOxpobUEjxHOnDmex8RBtNzrt/KJBkD5GIK62fU3O+dLeCCd/4qMFr7V+W4TzZS
+TC9XrRJqlD7kSKetpcA60E4AmYiPvUpwvjtba/9ebyltDKdVSuJD50kPmVRZaIE0
+2Kn7yA0UWkDLcB71O8BCOQb5Y63ZKRRTr0IQHRiVthWK2EHYNzEKl1obEJCsHf9u
+cTNrfogYIO2+Nf/naUgFwHguBEb0wo1NcG5C+pPrzhI70fXOPylcjL1Zg+ShwTyO
+PjhV85kYsN/2dMmOKPQ4DUUg1tvAc6LmjG6YnwIDAQABAoIBAEQculXigwIJYCwK
+4GJUuEkaqi6wUvonvtuy0mLY3VHu+iSgAXe37SGOxkPro3mwf7/J+2kVMdjNqQDt
+M2s9+G03Ray3MecS0ZB2ekwrk78kcqCZkHRvKj0a/xVI0W2kW/SyGX1uEdPuLe/7
+oI+nvM3NMV+TiGEs8Vi3H/7WuX/JiEpBFNtgKqlT1ZdTblj+igrAT30on9FBfOyo
+NtkxIL7YY1TAZ7YjdpZWrAAyo7gBjXAmeslnJ9IHzKPBsuSXQ4A7JjGOAGyv3INi
+D8mwoa/8pNaZTxFCCRnvezA3JvVa4gWigZtb0JX5Z+H1nERZWoJq4Cj4kMa3ERuC
+iyVXijECgYEA4q5bkQTrQ7liRCrNETmbVspmbuBc6XaAFrYwbrxlzvl2nyumCgKg
+GaPeP2Skh5nPz+1x1EXmYAqXsAfLoE4z6kk1D1Ws4FWxxaAuwlWTmoJ2HXl2dcbR
+f0HLgQ/oswYtNVaP7HASmEf5Y3DeGLDrojh1aOE8kq/MpBHsO28qTA0CgYEA2rVV
+eTfj4VV5tpVlfiU5D947qIERVwIQ+FW8Epokwct1VgUeWwXMQFJFX6KWQdkB+Ktj
+vknBSrN+VmwBMMhuUTpMxvaZFL5UCyLUUt2K8azNDdg9FcfH8dSZnnNoo8aH9k6A
+v5gFk+QQ7VgGVBeLv22PG1zknj4SsGZhzx9H0FsCgYB/8uq8cIpbL8jHsWEO1/VW
+h+hJrVrEbJ7gMvYjizPsH+NU9M5D2DeGQXixT52O7MLgGqalqs7eZxw3wC6vzXSA
+SdIpVbK+7Z/qbP/3sVYfYIRLHsQ+tnqJ2hmEP/aZFmNuN+4FBz13tyiNeKfkR/i5
+GCUtjfUi1xgrg/JTmevGAQKBgQC9QEh0Gj7gj9xAeEpYu9ECwCUTjIv6pFkW6ulR
+l3zTDUG9a7R2wy+ZQReyx7gJxsSD75rh4GSYRXW/RrpJAkcjlrU1PdH9Nyz2be8Y
+vYgr1IGjx0gkfrmvs24yxF75ySOBqTCTmfLJpIJZPuBLCAzvWtiIrvtNSx1U82MT
+nVfBHQKBgDJZQmr5lqdo5Zv/VP+w+VtxeX2oCgw7Mn56TW4IzDEL6ly+sKNNs+Ji
+pp/c2XYw24o7318yV70oWVWscay1SOjK7RdoCat590iuTGMSYyY8pMkgK+QuDqDe
+1Hhyb0iPorMS5wZXx/TROS4+4GOIHLAtZOZ8B+20tczp7HGqUIK1
-----END RSA PRIVATE KEY-----
diff --git a/tests/certs/EdelCurlRoot-ca.prm b/tests/certs/EdelCurlRoot-ca.prm
index d0eff4894..4c53ef515 100644
--- a/tests/certs/EdelCurlRoot-ca.prm
+++ b/tests/certs/EdelCurlRoot-ca.prm
@@ -10,7 +10,7 @@ countryName_value = NN
organizationName = "Organization Name"
organizationName_value = Edel Curl Arctic Illudium Research Cloud
commonName = "Common Name"
-commonName_value = Northern Nowhere Trust Anchor
+commonName_value = Nothern Nowhere Trust Anchor
[ x509v3 ]
basicConstraints = critical,CA:true
keyUsage = critical,keyCertSign,cRLSign
diff --git a/tests/certs/Makefile.am b/tests/certs/Makefile.am
index bd0bbbb7c..ddb5c9fb1 100644
--- a/tests/certs/Makefile.am
+++ b/tests/certs/Makefile.am
@@ -23,26 +23,23 @@ AUTOMAKE_OPTIONS = foreign
SUBDIRS = scripts
-CERTCONFIGS = \
- EdelCurlRoot-ca.prm \
- EdelCurlRoot-ca.cnf \
- Server-localhost-sv.prm \
- Server-localhost.nn-sv.prm \
- Server-localhost0h-sv.prm
-
-GENERATEDCERTS = \
+CERTFILES = \
EdelCurlRoot-ca.cacert \
+ EdelCurlRoot-ca.cnf \
EdelCurlRoot-ca.crt \
EdelCurlRoot-ca.csr \
EdelCurlRoot-ca.der \
EdelCurlRoot-ca.key \
+ EdelCurlRoot-ca.prm \
Server-localhost-sv.crl \
Server-localhost-sv.crt \
Server-localhost-sv.csr \
Server-localhost-sv.der \
Server-localhost-sv.dhp \
Server-localhost-sv.key \
+ Server-localhost-sv.p12 \
Server-localhost-sv.pem \
+ Server-localhost-sv.prm \
Server-localhost-sv.pub.der \
Server-localhost-sv.pub.pem \
Server-localhost.nn-sv.crl \
@@ -52,6 +49,7 @@ GENERATEDCERTS = \
Server-localhost.nn-sv.dhp \
Server-localhost.nn-sv.key \
Server-localhost.nn-sv.pem \
+ Server-localhost.nn-sv.prm \
Server-localhost.nn-sv.pub.der \
Server-localhost.nn-sv.pub.pem \
Server-localhost0h-sv.crl \
@@ -60,7 +58,9 @@ GENERATEDCERTS = \
Server-localhost0h-sv.der \
Server-localhost0h-sv.dhp \
Server-localhost0h-sv.key \
+ Server-localhost0h-sv.p12 \
Server-localhost0h-sv.pem \
+ Server-localhost0h-sv.prm \
Server-localhost0h-sv.pub.der \
Server-localhost0h-sv.pub.pem
@@ -68,24 +68,5 @@ SRPFILES = \
srp-verifier-conf \
srp-verifier-db
-EXTRA_DIST = $(CERTCONFIGS) $(GENERATEDCERTS) $(SRPFILES)
-
-# Rebuild the certificates
-
-clean-certs:
- cd $(srcdir); rm -f $(GENERATEDCERTS)
-
-build-certs: $(srcdir)/EdelCurlRoot-ca.cacert $(srcdir)/Server-localhost-sv.pem \
- $(srcdir)/Server-localhost.nn-sv.pem $(srcdir)/Server-localhost0h-sv.pem
-
-$(srcdir)/EdelCurlRoot-ca.cacert:
- cd $(srcdir); scripts/genroot.sh EdelCurlRoot
-
-$(srcdir)/Server-localhost-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost EdelCurlRoot
-
-$(srcdir)/Server-localhost.nn-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost.nn EdelCurlRoot
+EXTRA_DIST = $(CERTFILES) $(SRPFILES)
-$(srcdir)/Server-localhost0h-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost0h EdelCurlRoot
diff --git a/tests/certs/Makefile.in b/tests/certs/Makefile.in
index f4c8f0a30..0610cae3f 100644
--- a/tests/certs/Makefile.in
+++ b/tests/certs/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = tests/certs
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -169,7 +160,6 @@ am__define_uniq_tagged_files = \
ETAGS = etags
CTAGS = ctags
DIST_SUBDIRS = $(SUBDIRS)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
am__relativize = \
dir0=`pwd`; \
@@ -253,7 +243,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -306,7 +296,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -323,6 +312,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -406,26 +396,23 @@ top_srcdir = @top_srcdir@
###########################################################################
AUTOMAKE_OPTIONS = foreign
SUBDIRS = scripts
-CERTCONFIGS = \
- EdelCurlRoot-ca.prm \
- EdelCurlRoot-ca.cnf \
- Server-localhost-sv.prm \
- Server-localhost.nn-sv.prm \
- Server-localhost0h-sv.prm
-
-GENERATEDCERTS = \
+CERTFILES = \
EdelCurlRoot-ca.cacert \
+ EdelCurlRoot-ca.cnf \
EdelCurlRoot-ca.crt \
EdelCurlRoot-ca.csr \
EdelCurlRoot-ca.der \
EdelCurlRoot-ca.key \
+ EdelCurlRoot-ca.prm \
Server-localhost-sv.crl \
Server-localhost-sv.crt \
Server-localhost-sv.csr \
Server-localhost-sv.der \
Server-localhost-sv.dhp \
Server-localhost-sv.key \
+ Server-localhost-sv.p12 \
Server-localhost-sv.pem \
+ Server-localhost-sv.prm \
Server-localhost-sv.pub.der \
Server-localhost-sv.pub.pem \
Server-localhost.nn-sv.crl \
@@ -435,6 +422,7 @@ GENERATEDCERTS = \
Server-localhost.nn-sv.dhp \
Server-localhost.nn-sv.key \
Server-localhost.nn-sv.pem \
+ Server-localhost.nn-sv.prm \
Server-localhost.nn-sv.pub.der \
Server-localhost.nn-sv.pub.pem \
Server-localhost0h-sv.crl \
@@ -443,7 +431,9 @@ GENERATEDCERTS = \
Server-localhost0h-sv.der \
Server-localhost0h-sv.dhp \
Server-localhost0h-sv.key \
+ Server-localhost0h-sv.p12 \
Server-localhost0h-sv.pem \
+ Server-localhost0h-sv.prm \
Server-localhost0h-sv.pub.der \
Server-localhost0h-sv.pub.pem
@@ -451,7 +441,7 @@ SRPFILES = \
srp-verifier-conf \
srp-verifier-db
-EXTRA_DIST = $(CERTCONFIGS) $(GENERATEDCERTS) $(SRPFILES)
+EXTRA_DIST = $(CERTFILES) $(SRPFILES)
all: all-recursive
.SUFFIXES:
@@ -467,6 +457,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/certs/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/certs/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -761,28 +752,6 @@ uninstall-am:
mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \
ps ps-am tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
-
-# Rebuild the certificates
-
-clean-certs:
- cd $(srcdir); rm -f $(GENERATEDCERTS)
-
-build-certs: $(srcdir)/EdelCurlRoot-ca.cacert $(srcdir)/Server-localhost-sv.pem \
- $(srcdir)/Server-localhost.nn-sv.pem $(srcdir)/Server-localhost0h-sv.pem
-
-$(srcdir)/EdelCurlRoot-ca.cacert:
- cd $(srcdir); scripts/genroot.sh EdelCurlRoot
-
-$(srcdir)/Server-localhost-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost EdelCurlRoot
-
-$(srcdir)/Server-localhost.nn-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost.nn EdelCurlRoot
-
-$(srcdir)/Server-localhost0h-sv.pem: $(srcdir)/EdelCurlRoot-ca.cacert
- cd $(srcdir); scripts/genserv.sh Server-localhost0h EdelCurlRoot
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/certs/Server-localhost-sv.crl b/tests/certs/Server-localhost-sv.crl
index 3e75229ba..804655d00 100644
--- a/tests/certs/Server-localhost-sv.crl
+++ b/tests/certs/Server-localhost-sv.crl
@@ -1,21 +1,12 @@
-----BEGIN X509 CRL-----
-MIIDbzCCAlcCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIBqTAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaoA4wDDAKBgNVHRQEAwIBATANBgkqhkiG9w0BAQUFAAOC
-AQEAllslrhWUoq49PC+KQghVDAeFREP3pKPUlSebVVR8PCtCKrFtc53dUaTl8qhK
-1wOLodr80lfr2kEgzTEDt2CfXryl3orLPeMWe0OWTBsPbuwj+d7m3uq4B43laqJn
-JM5ebRvzHWMJkVNkwiXiadPTW5ZMUqu2Bs97rdcjklUrEcamf9aMLqb6sPGtU4EO
-o/GxGW2eypYwncFmzAc5W3NDRePGPhN5rUDfqm5Id4T9FKmGcNmI7qlLQi+jp23F
-V6RvrqANIemopQQ4kYGy7pzilDYm6+R+fPCIh2H/0eqCDY8NdjygXtWW+pJ58axV
-MPZ2mFPcH5UHiqmi8kRstnA8KQ==
+MIIB2zCBxAIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG
+A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzEx
+WhcNMTAwNjI2MjEzNzExWjAZMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWqAOMAww
+CgYDVR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBAFuPZJ/cNNCeAzkSxVvPPPRX
+Wsv9T6Dt61C5Fmq9eSNN2kRf7/dq5A5nqTIlHbXXiLdj3UqNhUHXe2oA1UpbdHz9
+0JlfwWm1Y/gMr1fh1n0oFebEtCuOgDRpd07Uiz8AqOUBykDNDUlMvVwR9raHL8hj
+NRwzugsfIxl0CvLLqrBpUWMxW3qemk4cWW39yrDdZgKo6eOZAOR3FQYlLIrw6Jcr
+Kmm0PjdcJIfRgJvNysgyx1dIIKe7QXvFTR/QzdHWIWTkiYIW7wUKSzSICvDCr094
+eo3nr3n9BtOqT61Z1m6FGCP6Mm0wFl6xLTCNd6ygfFo7pcAdWlUsdBgKzics0Kc=
-----END X509 CRL-----
diff --git a/tests/certs/Server-localhost-sv.crt b/tests/certs/Server-localhost-sv.crt
index abf69245e..9a3d94498 100644
--- a/tests/certs/Server-localhost-sv.crt
+++ b/tests/certs/Server-localhost-sv.crt
@@ -1,15 +1,16 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311627 (0xcfa60bc514b)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:f9:7c:6a
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:11 2010 GMT
+ Not After : Aug 13 21:37:11 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -18,63 +19,63 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
- b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
- 5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
- 6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
- 68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
- a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
- 62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
- 42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
- 11:d1:9e:ce:be:1e:fe:cf:37
+ 00:b0:27:79:26:2c:b9:e4:d1:81:0a:09:d2:76:fe:
+ 9a:e1:05:68:01:b3:72:77:97:38:e4:60:1c:71:9d:
+ 99:f7:26:7b:21:b5:6d:aa:9f:14:76:07:6c:a4:2a:
+ 2d:7d:ee:f6:6f:8a:58:c4:93:de:fe:a1:25:0f:ff:
+ 57:49:c0:d9:94:d9:07:79:bf:8c:6d:fa:f1:18:82:
+ 67:a0:3f:d7:31:03:82:ec:b9:39:69:07:ec:ec:93:
+ 17:5b:1a:72:91:93:b2:6b:98:66:63:fe:61:29:e7:
+ ad:86:0e:04:ba:bf:8b:55:57:61:a5:4a:f6:ca:e7:
+ c6:d1:b8:65:42:ab:67:64:17
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+ BC:69:86:84:70:3A:AD:DE:08:2A:70:C6:3B:47:8C:11:3F:E0:9A:6D
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
- e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
- be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
- 29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
- 39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
- 04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
- 1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
- 70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
- 2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
- fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
- 80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
- 6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
- 24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
- 88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
- 99:36:52:69
+ 7b:f0:b0:a0:d9:d0:91:38:9b:fe:cf:78:c8:d6:30:5d:87:9d:
+ b3:b9:6e:8b:5a:73:74:93:cb:30:49:d1:00:79:9d:5a:c2:71:
+ a3:93:5f:de:d3:5a:0c:fb:6d:41:83:89:1b:4f:0d:1c:65:0c:
+ 1a:0c:0f:96:79:62:90:e1:74:04:dd:c6:d8:cf:0f:5f:0f:28:
+ 87:d7:86:56:90:b4:d0:88:80:f1:a7:cd:fd:0b:13:58:bb:6d:
+ e6:ab:44:f6:9b:d6:cc:c7:db:3d:3a:90:c4:20:72:f4:38:38:
+ c0:ef:80:1d:60:3f:4e:30:40:11:56:29:70:aa:17:91:90:5f:
+ 70:0b:89:51:af:17:a8:ed:20:4e:76:bb:cf:a8:88:9a:25:0f:
+ 3a:96:26:17:50:2a:af:f3:8b:21:9c:cf:ff:f9:20:fc:fe:c0:
+ 37:95:c7:cd:0d:7a:53:d9:26:12:38:2c:f6:03:95:1b:da:d0:
+ 08:f7:32:91:07:a7:35:0c:14:00:44:c7:43:fb:23:2e:14:44:
+ e6:ee:a9:c9:20:37:09:b8:ae:21:4f:4b:b7:86:4d:e3:41:84:
+ 15:4e:1a:29:00:03:a8:92:99:3c:75:ea:43:0f:e3:2b:f7:17:
+ b1:1b:87:80:04:d3:a7:73:b1:5e:85:38:7d:89:01:16:19:f6:
+ c4:e1:1b:75
-----BEGIN CERTIFICATE-----
-MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDQTCCAimgAwIBAgIGC5iU+XxqMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
-Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
-nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
-VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
-BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
-Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
-AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
-7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
-odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
-JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
-0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
-e0Av3OkojGm+63FKwjBQmTZSaQ==
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzcxMVoXDTE4MDgxMzIxMzcxMVowVDELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+EjAQBgNVBAMMCWxvY2FsaG9zdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
+sCd5Jiy55NGBCgnSdv6a4QVoAbNyd5c45GAccZ2Z9yZ7IbVtqp8UdgdspCotfe72
+b4pYxJPe/qElD/9XScDZlNkHeb+MbfrxGIJnoD/XMQOC7Lk5aQfs7JMXWxpykZOy
+a5hmY/5hKeethg4Eur+LVVdhpUr2yufG0bhlQqtnZBcCAwEAAaOBiTCBhjAUBgNV
+HREEDTALgglsb2NhbGhvc3QwCwYDVR0PBAQDAgUgMBMGA1UdJQQMMAoGCCsGAQUF
+BwMBMB0GA1UdDgQWBBS8aYaEcDqt3ggqcMY7R4wRP+CabTAfBgNVHSMEGDAWgBSt
+PuI5B7hcqiaQlEwmaSGD4k42lDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBBQUA
+A4IBAQB78LCg2dCROJv+z3jI1jBdh52zuW6LWnN0k8swSdEAeZ1awnGjk1/e01oM
++21Bg4kbTw0cZQwaDA+WeWKQ4XQE3cbYzw9fDyiH14ZWkLTQiIDxp839CxNYu23m
+q0T2m9bMx9s9OpDEIHL0ODjA74AdYD9OMEARVilwqheRkF9wC4lRrxeo7SBOdrvP
+qIiaJQ86liYXUCqv84shnM//+SD8/sA3lcfNDXpT2SYSOCz2A5Ub2tAI9zKRB6c1
+DBQARMdD+yMuFETm7qnJIDcJuK4hT0u3hk3jQYQVThopAAOokpk8depDD+Mr9xex
+G4eABNOnc7FehTh9iQEWGfbE4Rt1
-----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost-sv.csr b/tests/certs/Server-localhost-sv.csr
index f919409b1..a8773f556 100644
--- a/tests/certs/Server-localhost-sv.csr
+++ b/tests/certs/Server-localhost-sv.csr
@@ -1,11 +1,11 @@
-----BEGIN CERTIFICATE REQUEST-----
MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
-Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
-lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
-AHuPnBHRns6+Hv7PNwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAsJ+ypJAE5YiR
-A1niVNXKoqXmIQsXGJv9BA39AjT+cdqvdd+WTKCaZ9QXucDArhG9B9Dp66bfSgvT
-WVz6F85ju5HQekZrS2ZxdR1+muWAFE/vDgi22QwTysXvTWUfsqBQ0ZGEmdzyPJJq
-7AGzbAWx8JDhgGg2jStvQJBLhtYxhoY=
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwJ3kmLLnk0YEKCdJ2/prhBWgB
+s3J3lzjkYBxxnZn3JnshtW2qnxR2B2ykKi197vZviljEk97+oSUP/1dJwNmU2Qd5
+v4xt+vEYgmegP9cxA4LsuTlpB+zskxdbGnKRk7JrmGZj/mEp562GDgS6v4tVV2Gl
+SvbK58bRuGVCq2dkFwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAlIivGkhU8iph
+eZQAaiwakIwPx1TPA3+Dl4tbStTr3Ludd8rjZMGPRXKU+wjvfhCmDlyk90yOun2C
+lPIT8W/ibXNgRF1vz+eFofjM0hZtNPOX4G18wwD5y0OTr7obyqJPKAZsJZh6L3YE
+aARr27RCoFv92hFwVr181wAU+bVCekA=
-----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost-sv.der b/tests/certs/Server-localhost-sv.der
index b76db9ddc..766cf539c 100644
--- a/tests/certs/Server-localhost-sv.der
+++ b/tests/certs/Server-localhost-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost-sv.dhp b/tests/certs/Server-localhost-sv.dhp
index e69de29bb..b61c28b8c 100644
--- a/tests/certs/Server-localhost-sv.dhp
+++ b/tests/certs/Server-localhost-sv.dhp
@@ -0,0 +1,5 @@
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAP5mA7oYimErFUulbvNC8V0HwyB62NCj6TZb6YXJwElCksQc8RyHnkrY
+9Wx2+lduFqHjUWalgVF7Gma7CfR/pt+fiU6Jn2vWR2v7KT6hYeRKsJrONJlth+NK
+V7/d4zyvleJ/VSp0TuuSxmMMQ6hG3i5YhSGXyCh4h0pl4Wu/hdVTAgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost-sv.key b/tests/certs/Server-localhost-sv.key
index 354017913..8ade26aab 100644
--- a/tests/certs/Server-localhost-sv.key
+++ b/tests/certs/Server-localhost-sv.key
@@ -1,15 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
-MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
-77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
-Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
-AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
-WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
-t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
-TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
-0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
-umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
-doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
-3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
-wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
-gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+MIICXQIBAAKBgQCwJ3kmLLnk0YEKCdJ2/prhBWgBs3J3lzjkYBxxnZn3JnshtW2q
+nxR2B2ykKi197vZviljEk97+oSUP/1dJwNmU2Qd5v4xt+vEYgmegP9cxA4LsuTlp
+B+zskxdbGnKRk7JrmGZj/mEp562GDgS6v4tVV2GlSvbK58bRuGVCq2dkFwIDAQAB
+AoGBAKa0JHWZHC9MiSa71t5f4qiTGjOJ5AkDJocR4bkv4dZAJ4TmEqvGsnFkY08U
+z0p/i95Q+eLG4eDtFYsHJU8Z343odktK99BUJzkDzqWT9RMzJ5Ykx6LbldJyW5NN
+IwvhDuW3rq8fbCMr+NGe9chc1Rg2lrfeEJDwjki/drBQs7zpAkEA3R6QEcuST7Gq
+JzjfU9uLD2tHLYZFNzS4dm4PvwC2aK7OdEOm7VkXFwUyP97QjwPV7fabrQ2QjwGg
+ek+nVEdH9QJBAMvxFickez9eqgiMfZbfY8t5I+Dxz69ZVGsPvl/6xhiUvgxjREM7
+EnScf86HwlBnteoUtMptAKu7Dbq5inPbkFsCQCV8FuRNZGJKNhQsGf/3Sd21S/21
+s2omb9bz1YuFrWaVq74d8eBup/FpGhmlxilYdx2+Hqn5kLYNiozxj+ZDpzkCQQC8
+7VJAYKNsSR3rXXra0Yd5b3e1Y02qe26g36zU7VOmYeTNRQhv38FxFamwgkOYiPsV
+Jql0/RWqAVburAN+4OARAkB9FwUtKyhs7FM4N9bXi+c8m42hkBv+dSim534tPijS
+UCcCONLEQTv4yjlCOwTKMVDoajkWH1A2e7psTmIR+zwc
-----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost-sv.p12 b/tests/certs/Server-localhost-sv.p12
new file mode 100644
index 000000000..d7b8441a4
--- /dev/null
+++ b/tests/certs/Server-localhost-sv.p12
Binary files differ
diff --git a/tests/certs/Server-localhost-sv.pem b/tests/certs/Server-localhost-sv.pem
index 6ef1fd513..86b48b343 100644
--- a/tests/certs/Server-localhost-sv.pem
+++ b/tests/certs/Server-localhost-sv.pem
@@ -1,11 +1,11 @@
extensions = x509v3
[ x509v3 ]
subjectAltName = DNS:localhost
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
@@ -24,32 +24,33 @@ commonName_value = localhost
# the certficate
# some dhparam
-----BEGIN RSA PRIVATE KEY-----
-MIICXgIBAAKBgQC6X0tpdDGZTfS0typluLcxwTjPNje7XhjjUh9SqlolLwxmiDKw
-77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grKlBbUK2oC46Gzx9HQBrj/39zg
-Mirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/AHuPnBHRns6+Hv7PNwIDAQAB
-AoGBAJdWRGVIPfJP1BJe3eWl3dRgI2JXk1/pY+pLSDYXMIYbM0Wa+RamPRdksPE1
-WadM+zPLNENP0L+/iERe/wiq7sNxKQLwH5eE3tUxC+iC8GO6gQ2zHaWVNu3R79CM
-t8YZhlmG2o+xC4CGYzuITgPE16m24CYauLZHO/YVDzG6yNApAkEA6K0db5bZmIaU
-TJW/jEnPJSubDx8kE1YncTOAKaAeoJwaaSfFphVKNGNrZHu3jBhKFgVNBNxGUWrW
-0pIkDrb3hQJBAM0N7+ghZ/7vaOoKqYHQI2z8SgPsUjQjmubCBALe/Ys3kg9PPpyz
-umJSAOYjC4X1dSlkAkciJqRS0Y6uKgSH4osCQQCVIWftft1GsnNYxt43t5MKOvGu
-doIz1pN/LcgmZddbj9IptfErqxedjl9lzxnstCDADnO3+ssjIfxAiKSNvd3VAkA3
-3yFMTbXpZ9BdXPRc05qjeoasVPr9C+qMD7dKFPpesZCRrVTxG6OgYJmwG0JriLsY
-wRBB05NV2N8SknAOdfwLAkEAw5Hqxc/Xlh6xhy9tBdJXDtuptV10mg6EbO98x9/7
-gyuAArSguhXna+aRqjLRelCwVB9f9aZ1XVoDKWVCsnfCbQ==
+MIICXQIBAAKBgQCwJ3kmLLnk0YEKCdJ2/prhBWgBs3J3lzjkYBxxnZn3JnshtW2q
+nxR2B2ykKi197vZviljEk97+oSUP/1dJwNmU2Qd5v4xt+vEYgmegP9cxA4LsuTlp
+B+zskxdbGnKRk7JrmGZj/mEp562GDgS6v4tVV2GlSvbK58bRuGVCq2dkFwIDAQAB
+AoGBAKa0JHWZHC9MiSa71t5f4qiTGjOJ5AkDJocR4bkv4dZAJ4TmEqvGsnFkY08U
+z0p/i95Q+eLG4eDtFYsHJU8Z343odktK99BUJzkDzqWT9RMzJ5Ykx6LbldJyW5NN
+IwvhDuW3rq8fbCMr+NGe9chc1Rg2lrfeEJDwjki/drBQs7zpAkEA3R6QEcuST7Gq
+JzjfU9uLD2tHLYZFNzS4dm4PvwC2aK7OdEOm7VkXFwUyP97QjwPV7fabrQ2QjwGg
+ek+nVEdH9QJBAMvxFickez9eqgiMfZbfY8t5I+Dxz69ZVGsPvl/6xhiUvgxjREM7
+EnScf86HwlBnteoUtMptAKu7Dbq5inPbkFsCQCV8FuRNZGJKNhQsGf/3Sd21S/21
+s2omb9bz1YuFrWaVq74d8eBup/FpGhmlxilYdx2+Hqn5kLYNiozxj+ZDpzkCQQC8
+7VJAYKNsSR3rXXra0Yd5b3e1Y02qe26g36zU7VOmYeTNRQhv38FxFamwgkOYiPsV
+Jql0/RWqAVburAN+4OARAkB9FwUtKyhs7FM4N9bXi+c8m42hkBv+dSim534tPijS
+UCcCONLEQTv4yjlCOwTKMVDoajkWH1A2e7psTmIR+zwc
-----END RSA PRIVATE KEY-----
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311627 (0xcfa60bc514b)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:f9:7c:6a
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:11 2010 GMT
+ Not After : Aug 13 21:37:11 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -58,63 +59,68 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:ba:5f:4b:69:74:31:99:4d:f4:b4:b7:2a:65:b8:
- b7:31:c1:38:cf:36:37:bb:5e:18:e3:52:1f:52:aa:
- 5a:25:2f:0c:66:88:32:b0:ef:b2:2c:90:38:5e:6e:
- 6f:0e:e4:3b:3f:f0:2e:f1:7a:3d:5e:c3:64:86:3f:
- 68:b7:cf:0b:b3:ea:0a:ca:94:16:d4:2b:6a:02:e3:
- a1:b3:c7:d1:d0:06:b8:ff:df:dc:e0:32:2a:e7:dd:
- 62:cc:71:c4:e8:cf:9d:de:5c:75:69:9d:b6:ce:e2:
- 42:d8:a7:bd:50:54:78:2d:55:67:7f:00:7b:8f:9c:
- 11:d1:9e:ce:be:1e:fe:cf:37
+ 00:b0:27:79:26:2c:b9:e4:d1:81:0a:09:d2:76:fe:
+ 9a:e1:05:68:01:b3:72:77:97:38:e4:60:1c:71:9d:
+ 99:f7:26:7b:21:b5:6d:aa:9f:14:76:07:6c:a4:2a:
+ 2d:7d:ee:f6:6f:8a:58:c4:93:de:fe:a1:25:0f:ff:
+ 57:49:c0:d9:94:d9:07:79:bf:8c:6d:fa:f1:18:82:
+ 67:a0:3f:d7:31:03:82:ec:b9:39:69:07:ec:ec:93:
+ 17:5b:1a:72:91:93:b2:6b:98:66:63:fe:61:29:e7:
+ ad:86:0e:04:ba:bf:8b:55:57:61:a5:4a:f6:ca:e7:
+ c6:d1:b8:65:42:ab:67:64:17
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 7E:42:8D:AC:2E:93:AD:4C:E0:09:AC:C6:08:F1:82:E0:B7:B7:C6:7F
+ BC:69:86:84:70:3A:AD:DE:08:2A:70:C6:3B:47:8C:11:3F:E0:9A:6D
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 00:fe:c4:fc:4b:28:b8:bc:39:8c:6f:f1:72:d3:76:da:28:27:
- e2:97:94:bb:ad:2f:91:c4:db:df:33:4b:48:4e:97:5b:4c:4c:
- be:fc:e4:b7:19:5c:b8:83:6e:ef:2c:b0:d5:7c:fc:0d:cb:7e:
- 29:ed:fd:4d:ef:05:1c:89:15:31:78:9b:18:29:d3:37:83:c7:
- 39:f4:78:27:b7:00:75:d1:fb:f0:29:88:79:e4:e9:a7:d4:65:
- 04:bf:d5:a1:dc:05:b2:17:c4:a9:da:61:10:22:5f:8f:50:fc:
- 1f:ab:f6:39:dd:ab:35:a6:94:54:63:5c:6d:25:f0:dc:3a:0a:
- 70:4e:49:ef:be:fa:2c:0a:cd:ce:a6:2d:26:cd:f8:24:89:77:
- 2c:ea:6e:19:b6:5c:8c:1a:08:ea:a8:9f:2c:1b:c7:fc:13:6c:
- fe:a7:90:08:e5:98:83:30:52:86:ac:83:0b:cb:25:92:21:94:
- 80:13:d7:e8:d0:42:56:83:55:d3:09:9b:e8:c5:96:82:15:64:
- 6b:83:77:eb:99:e5:52:dc:1b:36:29:a0:c9:da:8b:d3:0d:77:
- 24:f2:c3:df:2e:c4:93:e0:34:47:a9:9b:54:d3:75:d5:c7:de:
- 88:a1:ef:7b:40:2f:dc:e9:28:8c:69:be:eb:71:4a:c2:30:50:
- 99:36:52:69
+ 7b:f0:b0:a0:d9:d0:91:38:9b:fe:cf:78:c8:d6:30:5d:87:9d:
+ b3:b9:6e:8b:5a:73:74:93:cb:30:49:d1:00:79:9d:5a:c2:71:
+ a3:93:5f:de:d3:5a:0c:fb:6d:41:83:89:1b:4f:0d:1c:65:0c:
+ 1a:0c:0f:96:79:62:90:e1:74:04:dd:c6:d8:cf:0f:5f:0f:28:
+ 87:d7:86:56:90:b4:d0:88:80:f1:a7:cd:fd:0b:13:58:bb:6d:
+ e6:ab:44:f6:9b:d6:cc:c7:db:3d:3a:90:c4:20:72:f4:38:38:
+ c0:ef:80:1d:60:3f:4e:30:40:11:56:29:70:aa:17:91:90:5f:
+ 70:0b:89:51:af:17:a8:ed:20:4e:76:bb:cf:a8:88:9a:25:0f:
+ 3a:96:26:17:50:2a:af:f3:8b:21:9c:cf:ff:f9:20:fc:fe:c0:
+ 37:95:c7:cd:0d:7a:53:d9:26:12:38:2c:f6:03:95:1b:da:d0:
+ 08:f7:32:91:07:a7:35:0c:14:00:44:c7:43:fb:23:2e:14:44:
+ e6:ee:a9:c9:20:37:09:b8:ae:21:4f:4b:b7:86:4d:e3:41:84:
+ 15:4e:1a:29:00:03:a8:92:99:3c:75:ea:43:0f:e3:2b:f7:17:
+ b1:1b:87:80:04:d3:a7:73:b1:5e:85:38:7d:89:01:16:19:f6:
+ c4:e1:1b:75
-----BEGIN CERTIFICATE-----
-MIIDPzCCAiegAwIBAgIGDPpgvFFLMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDQTCCAimgAwIBAgIGC5iU+XxqMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-ALpfS2l0MZlN9LS3KmW4tzHBOM82N7teGONSH1KqWiUvDGaIMrDvsiyQOF5ubw7k
-Oz/wLvF6PV7DZIY/aLfPC7PqCsqUFtQragLjobPH0dAGuP/f3OAyKufdYsxxxOjP
-nd5cdWmdts7iQtinvVBUeC1VZ38Ae4+cEdGezr4e/s83AgMBAAGjgYYwgYMwFAYD
-VR0RBA0wC4IJbG9jYWxob3N0MAsGA1UdDwQEAwIDqDATBgNVHSUEDDAKBggrBgEF
-BQcDATAdBgNVHQ4EFgQUfkKNrC6TrUzgCazGCPGC4Le3xn8wHwYDVR0jBBgwFoAU
-Esq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0BAQUFAAOC
-AQEAAP7E/EsouLw5jG/xctN22ign4peUu60vkcTb3zNLSE6XW0xMvvzktxlcuINu
-7yyw1Xz8Dct+Ke39Te8FHIkVMXibGCnTN4PHOfR4J7cAddH78CmIeeTpp9RlBL/V
-odwFshfEqdphECJfj1D8H6v2Od2rNaaUVGNcbSXw3DoKcE5J7776LArNzqYtJs34
-JIl3LOpuGbZcjBoI6qifLBvH/BNs/qeQCOWYgzBShqyDC8slkiGUgBPX6NBCVoNV
-0wmb6MWWghVka4N365nlUtwbNimgydqL0w13JPLD3y7Ek+A0R6mbVNN11cfeiKHv
-e0Av3OkojGm+63FKwjBQmTZSaQ==
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzcxMVoXDTE4MDgxMzIxMzcxMVowVDELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+EjAQBgNVBAMMCWxvY2FsaG9zdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
+sCd5Jiy55NGBCgnSdv6a4QVoAbNyd5c45GAccZ2Z9yZ7IbVtqp8UdgdspCotfe72
+b4pYxJPe/qElD/9XScDZlNkHeb+MbfrxGIJnoD/XMQOC7Lk5aQfs7JMXWxpykZOy
+a5hmY/5hKeethg4Eur+LVVdhpUr2yufG0bhlQqtnZBcCAwEAAaOBiTCBhjAUBgNV
+HREEDTALgglsb2NhbGhvc3QwCwYDVR0PBAQDAgUgMBMGA1UdJQQMMAoGCCsGAQUF
+BwMBMB0GA1UdDgQWBBS8aYaEcDqt3ggqcMY7R4wRP+CabTAfBgNVHSMEGDAWgBSt
+PuI5B7hcqiaQlEwmaSGD4k42lDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3DQEBBQUA
+A4IBAQB78LCg2dCROJv+z3jI1jBdh52zuW6LWnN0k8swSdEAeZ1awnGjk1/e01oM
++21Bg4kbTw0cZQwaDA+WeWKQ4XQE3cbYzw9fDyiH14ZWkLTQiIDxp839CxNYu23m
+q0T2m9bMx9s9OpDEIHL0ODjA74AdYD9OMEARVilwqheRkF9wC4lRrxeo7SBOdrvP
+qIiaJQ86liYXUCqv84shnM//+SD8/sA3lcfNDXpT2SYSOCz2A5Ub2tAI9zKRB6c1
+DBQARMdD+yMuFETm7qnJIDcJuK4hT0u3hk3jQYQVThopAAOokpk8depDD+Mr9xex
+G4eABNOnc7FehTh9iQEWGfbE4Rt1
-----END CERTIFICATE-----
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAP5mA7oYimErFUulbvNC8V0HwyB62NCj6TZb6YXJwElCksQc8RyHnkrY
+9Wx2+lduFqHjUWalgVF7Gma7CfR/pt+fiU6Jn2vWR2v7KT6hYeRKsJrONJlth+NK
+V7/d4zyvleJ/VSp0TuuSxmMMQ6hG3i5YhSGXyCh4h0pl4Wu/hdVTAgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost-sv.prm b/tests/certs/Server-localhost-sv.prm
index 97e64cec2..6351025dd 100644
--- a/tests/certs/Server-localhost-sv.prm
+++ b/tests/certs/Server-localhost-sv.prm
@@ -1,11 +1,11 @@
extensions = x509v3
[ x509v3 ]
subjectAltName = DNS:localhost
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
diff --git a/tests/certs/Server-localhost-sv.pub.der b/tests/certs/Server-localhost-sv.pub.der
index e954839ea..7e89b51a1 100644
--- a/tests/certs/Server-localhost-sv.pub.der
+++ b/tests/certs/Server-localhost-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost-sv.pub.pem b/tests/certs/Server-localhost-sv.pub.pem
index d119616b3..2384643d6 100644
--- a/tests/certs/Server-localhost-sv.pub.pem
+++ b/tests/certs/Server-localhost-sv.pub.pem
@@ -1,6 +1,6 @@
-----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC6X0tpdDGZTfS0typluLcxwTjP
-Nje7XhjjUh9SqlolLwxmiDKw77IskDhebm8O5Ds/8C7xej1ew2SGP2i3zwuz6grK
-lBbUK2oC46Gzx9HQBrj/39zgMirn3WLMccToz53eXHVpnbbO4kLYp71QVHgtVWd/
-AHuPnBHRns6+Hv7PNwIDAQAB
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwJ3kmLLnk0YEKCdJ2/prhBWgB
+s3J3lzjkYBxxnZn3JnshtW2qnxR2B2ykKi197vZviljEk97+oSUP/1dJwNmU2Qd5
+v4xt+vEYgmegP9cxA4LsuTlpB+zskxdbGnKRk7JrmGZj/mEp562GDgS6v4tVV2Gl
+SvbK58bRuGVCq2dkFwIDAQAB
-----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost.nn-sv.crl b/tests/certs/Server-localhost.nn-sv.crl
index 0676f731a..db408315d 100644
--- a/tests/certs/Server-localhost.nn-sv.crl
+++ b/tests/certs/Server-localhost.nn-sv.crl
@@ -1,21 +1,13 @@
-----BEGIN X509 CRL-----
-MIIDiDCCAnACAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIBwjAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWqAOMAwwCgYD
-VR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBANd1Fp3lPmLALcGvEB4kB4Uo6vhM
-ZWcAUE96oerpW0OnZ6v7o8ghLvs/pJfIoD+7hV3RuAgUUBqv2N8VTaL2IYarom/H
-CK78oLrIwwej/7K1pIfG53bJuaYyim5Lpl/YzGwhdC2vO2kBXHC1gVj5hN3uM/2A
-+cFPTDMsDU7szGq1bHObEKumXXzG5LfwGJGaHNGdvglV7zKthRjk/plYKE4/F0Ah
-jRQys6crClCKC5vug1GbzKbQue/Pbw1e3Rm/e0DVeOCREdvcHat43SIPf5yUYLsz
-b7P7pIOIoSgiIgEdbmj2pi1xdtxrYRyJJk0H7XQJHDehkyZsy6l62mKam/E=
+MIIB9DCB3QIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG
+A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzI0
+WhcNMTAwNjI2MjEzNzI0WjAyMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWjAXAgYL
+mJT7eF8XDTEwMDUyNzIxMzcyNFqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEB
+BQUAA4IBAQCo8mBpkZqiYWJMkJsZ1qqqOqVRne4iWhPOJSDGDgxoCTA4RgN1sQUv
+/MxO2LgSEyo9GopCpgWlhig+wzQmYCUf7HDw8sLzClUG4XUKRSW2Uq6q5BF5fwIu
+vHksi/RIPdcMx/+3dGIFeoccZZd5o7xgryGySAN6wHy6lY7LeeW7acpaDU43D7yi
+wQipBczrlH/jJDy6ja5FFBrAvvyRc4zC2X1/Rh3f0vNqnX9PLC524HxRmasCKYM8
+vgcPbvJ7Z/HRGOYRu9vTp5X0+lPPj24WE8vX3AZdjyI6qpinHzrsYen/qs6c0v3k
+FKYuzuVlUAy+5aZDhx+GHr+KW+y2T/ol
-----END X509 CRL-----
diff --git a/tests/certs/Server-localhost.nn-sv.crt b/tests/certs/Server-localhost.nn-sv.crt
index 69bd40d25..722aeeb11 100644
--- a/tests/certs/Server-localhost.nn-sv.crt
+++ b/tests/certs/Server-localhost.nn-sv.crt
@@ -1,15 +1,16 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311644 (0xcfa60bc515c)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:fb:78:5f
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:24 2010 GMT
+ Not After : Aug 13 21:37:24 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -18,63 +19,63 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
- 50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
- c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
- dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
- 6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
- 39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
- cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
- e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
- 65:29:09:ca:a2:dc:9e:ab:89
+ 00:d3:d4:4e:db:63:5c:3f:3a:3a:5e:38:09:94:e6:
+ 4d:70:9d:0d:af:49:e6:82:5d:07:b7:f5:cd:a0:df:
+ af:71:f1:cf:bf:d5:9a:bd:af:7c:78:5d:55:3f:14:
+ bd:bb:2c:0e:73:9d:d6:82:9a:d5:e6:f6:21:5d:08:
+ 92:a2:71:5f:80:5f:5c:ce:f0:c2:37:37:79:0f:4d:
+ 3d:d4:f2:80:6d:47:36:45:d1:d2:8b:7a:2e:12:71:
+ 4b:47:86:f5:8c:99:af:e7:0e:cf:b5:c9:4d:7a:75:
+ f7:b2:74:0c:41:e3:ab:bb:2c:9d:6f:54:08:13:5a:
+ 3a:ef:7c:27:f7:3f:0b:0b:71
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost.nn
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+ 81:26:F9:75:CC:9C:2D:3C:36:64:68:41:F7:07:3C:66:86:E5:4A:C1
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
- e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
- a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
- 73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
- 5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
- d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
- 98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
- 30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
- 4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
- 2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
- 8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
- 61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
- 75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
- 03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
- d0:ee:22:39
+ 65:05:8c:48:14:58:8c:1a:d4:95:67:1c:29:52:ed:5a:6e:14:
+ 41:bc:2b:16:20:c4:89:3a:6e:cb:c1:ff:ab:61:79:5f:ce:27:
+ 93:3c:ff:29:7a:25:68:00:27:04:f3:68:17:30:f0:fd:ff:09:
+ 0e:15:2a:25:b1:45:18:93:ab:12:8e:0c:13:11:9a:b8:a4:75:
+ d0:17:1b:ca:f2:66:6b:73:15:dd:8b:bb:34:d6:70:dc:34:1b:
+ e7:7a:30:ea:50:50:2f:88:67:b3:f8:b3:55:62:44:7e:3e:df:
+ 59:4f:a8:57:83:40:9f:bf:52:bf:fd:2c:18:6e:bd:0c:41:b7:
+ 78:1c:9b:fa:c4:ff:c3:2b:46:a4:8f:0c:19:a7:3d:75:81:29:
+ 6b:cf:07:f0:1d:65:d4:0e:19:51:87:92:a8:3d:7e:80:04:84:
+ ad:5e:4e:b6:ef:9a:02:c3:84:95:ec:c3:e8:a1:69:1f:42:cb:
+ da:63:1a:35:6f:d0:ba:62:9e:73:36:63:58:0f:cc:25:c8:59:
+ 73:df:3b:c2:b9:5a:da:3d:e1:3f:0a:1f:0f:41:c4:88:2d:92:
+ 06:88:d4:54:81:e1:12:57:53:ab:6b:f8:c8:90:3e:30:4c:f5:
+ 72:cf:f0:d4:18:70:c1:78:85:30:9c:fe:94:f4:1b:c2:6c:14:
+ 49:7a:0e:27
-----BEGIN CERTIFICATE-----
-MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDRzCCAi+gAwIBAgIGC5iU+3hfMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
-3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
-aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
-FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
-BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
-BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
-AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
-nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
-p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
-DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
-O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
-OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzcyNFoXDTE4MDgxMzIxMzcyNFowVzELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+FTATBgNVBAMMDGxvY2FsaG9zdC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC
+gYEA09RO22NcPzo6XjgJlOZNcJ0Nr0nmgl0Ht/XNoN+vcfHPv9Wava98eF1VPxS9
+uywOc53WgprV5vYhXQiSonFfgF9czvDCNzd5D0091PKAbUc2RdHSi3ouEnFLR4b1
+jJmv5w7PtclNenX3snQMQeOruyydb1QIE1o673wn9z8LC3ECAwEAAaOBjDCBiTAX
+BgNVHREEEDAOggxsb2NhbGhvc3Qubm4wCwYDVR0PBAQDAgUgMBMGA1UdJQQMMAoG
+CCsGAQUFBwMBMB0GA1UdDgQWBBSBJvl1zJwtPDZkaEH3BzxmhuVKwTAfBgNVHSME
+GDAWgBStPuI5B7hcqiaQlEwmaSGD4k42lDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3
+DQEBBQUAA4IBAQBlBYxIFFiMGtSVZxwpUu1abhRBvCsWIMSJOm7Lwf+rYXlfzieT
+PP8peiVoACcE82gXMPD9/wkOFSolsUUYk6sSjgwTEZq4pHXQFxvK8mZrcxXdi7s0
+1nDcNBvnejDqUFAviGez+LNVYkR+Pt9ZT6hXg0Cfv1K//SwYbr0MQbd4HJv6xP/D
+K0akjwwZpz11gSlrzwfwHWXUDhlRh5KoPX6ABIStXk6275oCw4SV7MPooWkfQsva
+Yxo1b9C6Yp5zNmNYD8wlyFlz3zvCuVraPeE/Ch8PQcSILZIGiNRUgeESV1Ora/jI
+kD4wTPVyz/DUGHDBeIUwnP6U9BvCbBRJeg4n
-----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost.nn-sv.csr b/tests/certs/Server-localhost.nn-sv.csr
index 7f2fa7738..642434347 100644
--- a/tests/certs/Server-localhost.nn-sv.csr
+++ b/tests/certs/Server-localhost.nn-sv.csr
@@ -1,11 +1,11 @@
-----BEGIN CERTIFICATE REQUEST-----
MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB
cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z
-dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEArMwRcHQp7XsARIrARwNQ
-nW9Rt8l73X7uKWdbkZvHxeadWT5rMyW3fDl8hHndFZjnJ2OTEDo6QKDd0B5uYPQe
-pPceCguERHfnBRY5qt69Hse8yeFOjIYcP9bN4/JoAlsXU0lRKaiJ89DhXnEHnxVH
-CEDprEnkIaxlKQnKotyeq4kCAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBADnob1ds
-8MytEcgSZdkgP4iQ2L+aPXTPBqTThaV7Zto1mAhwG/D6rTiGq6t+IlZQNoDdZPp3
-r1WDQJj6ed54xUY4Im4m1Np8oURamt5NJMKURDbv0xOQHW8EOoN+F8rfKyu2Hk1O
-hJulv+cBz75yi3+LVu+IEuSFQIQUZiy6V+Il
+dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA09RO22NcPzo6XjgJlOZN
+cJ0Nr0nmgl0Ht/XNoN+vcfHPv9Wava98eF1VPxS9uywOc53WgprV5vYhXQiSonFf
+gF9czvDCNzd5D0091PKAbUc2RdHSi3ouEnFLR4b1jJmv5w7PtclNenX3snQMQeOr
+uyydb1QIE1o673wn9z8LC3ECAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBAM5PenDC
+AtDhzdVKrX6DcJINWck5XFEnvWQksSYU7iDeiQVycQxR+LYKGZiy04u+9C+MN7eq
+JmHAIi+88r7/ZaGJLujqSUOJn8ocZ+vwhJOwh2XBhhLaCjIW/H05g0aNlk80Ye6m
+OA9DCIZUINF0lDQaJCpKXxwNVcz4Rifp5/9T
-----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost.nn-sv.der b/tests/certs/Server-localhost.nn-sv.der
index 9bb4ff356..08cf02f40 100644
--- a/tests/certs/Server-localhost.nn-sv.der
+++ b/tests/certs/Server-localhost.nn-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost.nn-sv.dhp b/tests/certs/Server-localhost.nn-sv.dhp
index e69de29bb..5d54840bb 100644
--- a/tests/certs/Server-localhost.nn-sv.dhp
+++ b/tests/certs/Server-localhost.nn-sv.dhp
@@ -0,0 +1,5 @@
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAPrtEVPhZfEczB9JnWXbln79YnTh/V6ehXMWe414wyn/VT1ow25sLEev
+H2+eT84aDp5e+TfBSFjA6or96/lyQvsgAE+cE6f6uuw9ApVG2MK+BCn4snxHBb6G
+LFQf+9qHZ4BEkpBL60p1fkGu8BM1wXGXEaeYhgGumNA9fm5YJrl7AgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost.nn-sv.key b/tests/certs/Server-localhost.nn-sv.key
index 6a75071b6..bf1cc7ec3 100644
--- a/tests/certs/Server-localhost.nn-sv.key
+++ b/tests/certs/Server-localhost.nn-sv.key
@@ -1,15 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
-Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
-hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
-AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
-TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
-yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
-+wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
-A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
-biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
-kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
-b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
-3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
-Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+MIICXgIBAAKBgQDT1E7bY1w/OjpeOAmU5k1wnQ2vSeaCXQe39c2g369x8c+/1Zq9
+r3x4XVU/FL27LA5zndaCmtXm9iFdCJKicV+AX1zO8MI3N3kPTT3U8oBtRzZF0dKL
+ei4ScUtHhvWMma/nDs+1yU16dfeydAxB46u7LJ1vVAgTWjrvfCf3PwsLcQIDAQAB
+AoGBALr1HQxAq8AaMj3KE5rZkOudkeBtxwaz+QYB6hTcl8pnc8aKTmKwKZlKNtzP
+/4zdG3wriJII+lU4UsX7tP+uNGxKxALrDQRuBPyi8XQfUT1nJth6qkp8g3V/ixfE
+Yah3od9dL3+xsOH28RKKUC5kjmnNupO9KQZ6/CyYfUHAEG+pAkEA+PP+7FIvpPQ+
+7bbG4IIqn7QKVxGbtaFY8pdLnsUkrnIqwEIbZoU12iEKm5qMoXNv30GknXrvxU53
+tdIZU5Z28wJBANnTTMb/jac+Q1SaqmWQnrpcmvuPZ/8xRM6xeSJh+MDpK768WpYe
+nivHvinQjQZBQmNM3IPYbJ33nTAdJylmFQsCQQCn4crATPAKOheRsJdO4RijWAM9
+EgfCJUtZVMPPDr0c0qqXujzGFwDo1y1TH5bEbZc8pATBmhzFHpRFzaf8oVQXAkAX
+Hch5GefDhuUIVn2c17MwneFIrxhfSbA+qzDqyDDo8BXXYQ/P/KHWjZUNxPciYcyU
+0zRXvaERRpTk5UMhrpavAkEAy4ZyhH1UViuWsmTQaRjc5mDs8aXkd2y85A7jnfWA
+8r7CL+sOe4TU1/CVyJf2FJaqHfD/GG6fqqeFoHuaqwTyiw==
-----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost.nn-sv.pem b/tests/certs/Server-localhost.nn-sv.pem
index b3712f74f..b5c253120 100644
--- a/tests/certs/Server-localhost.nn-sv.pem
+++ b/tests/certs/Server-localhost.nn-sv.pem
@@ -1,11 +1,11 @@
extensions = x509v3
[ x509v3 ]
subjectAltName = DNS:localhost.nn
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
@@ -24,32 +24,33 @@ commonName_value = localhost.nn
# the certficate
# some dhparam
-----BEGIN RSA PRIVATE KEY-----
-MIICXQIBAAKBgQCszBFwdCntewBEisBHA1Cdb1G3yXvdfu4pZ1uRm8fF5p1ZPmsz
-Jbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4KC4REd+cFFjmq3r0ex7zJ4U6M
-hhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOmsSeQhrGUpCcqi3J6riQIDAQAB
-AoGAK7nYD+TVV0rw3mdeEJo+JBivTRqnRX2BNuj4uvf4rZOV7adl6SN6Mu05HSzZ
-TUXL+KOx60FQzFnox2lr9QzRU/LelLQ3H9fgVTVmGUCEAoDVRoWas8XlYGZsiHZ/
-yJn+9Z3yQYpufSb0LQiSt73sgrTNPu50gMxe/ZSAbSscyyECQQDV8juKzWmizlTh
-+wVs/pihE0+BX1BRCsezs7FCdDEWle3XidBtYlYyUIm5wx6v8xM/F7Q/nwgymOnV
-A62PtfyjAkEAzsM3DsuJ9dG5n+EPTH3kDdfr0eYy76XPYz4HK8/FgiKPWy55BRCH
-biLcbDAe06olJiCzEvwggFigthrIqj0t4wJBALDTUi74c3SiADn+FI/vJQsMQMv2
-kRVKSZ/WxozcJ645IKjiOKgPfJp9QjeMcxKNXrzoxItIz6eyBqGONqbujO0CQQCh
-b6azdJR5TJEklfL+BGVlsas8rgIjP1FX6Xxr5sQNwbIwvW5cV/WGNs3n4wKOvZBX
-3rwzHIy76XdB+FOpKC+FAkBDVbicC19LE6+tBzOyx4uTEm3N7N8vh566VaOpok02
-Io7F/WYL7WSCXAtvmueWV+FJyVUMN1f2nWfWqaEXP2ag
+MIICXgIBAAKBgQDT1E7bY1w/OjpeOAmU5k1wnQ2vSeaCXQe39c2g369x8c+/1Zq9
+r3x4XVU/FL27LA5zndaCmtXm9iFdCJKicV+AX1zO8MI3N3kPTT3U8oBtRzZF0dKL
+ei4ScUtHhvWMma/nDs+1yU16dfeydAxB46u7LJ1vVAgTWjrvfCf3PwsLcQIDAQAB
+AoGBALr1HQxAq8AaMj3KE5rZkOudkeBtxwaz+QYB6hTcl8pnc8aKTmKwKZlKNtzP
+/4zdG3wriJII+lU4UsX7tP+uNGxKxALrDQRuBPyi8XQfUT1nJth6qkp8g3V/ixfE
+Yah3od9dL3+xsOH28RKKUC5kjmnNupO9KQZ6/CyYfUHAEG+pAkEA+PP+7FIvpPQ+
+7bbG4IIqn7QKVxGbtaFY8pdLnsUkrnIqwEIbZoU12iEKm5qMoXNv30GknXrvxU53
+tdIZU5Z28wJBANnTTMb/jac+Q1SaqmWQnrpcmvuPZ/8xRM6xeSJh+MDpK768WpYe
+nivHvinQjQZBQmNM3IPYbJ33nTAdJylmFQsCQQCn4crATPAKOheRsJdO4RijWAM9
+EgfCJUtZVMPPDr0c0qqXujzGFwDo1y1TH5bEbZc8pATBmhzFHpRFzaf8oVQXAkAX
+Hch5GefDhuUIVn2c17MwneFIrxhfSbA+qzDqyDDo8BXXYQ/P/KHWjZUNxPciYcyU
+0zRXvaERRpTk5UMhrpavAkEAy4ZyhH1UViuWsmTQaRjc5mDs8aXkd2y85A7jnfWA
+8r7CL+sOe4TU1/CVyJf2FJaqHfD/GG6fqqeFoHuaqwTyiw==
-----END RSA PRIVATE KEY-----
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311644 (0xcfa60bc515c)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:94:fb:78:5f
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:24 2010 GMT
+ Not After : Aug 13 21:37:24 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -58,63 +59,68 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:ac:cc:11:70:74:29:ed:7b:00:44:8a:c0:47:03:
- 50:9d:6f:51:b7:c9:7b:dd:7e:ee:29:67:5b:91:9b:
- c7:c5:e6:9d:59:3e:6b:33:25:b7:7c:39:7c:84:79:
- dd:15:98:e7:27:63:93:10:3a:3a:40:a0:dd:d0:1e:
- 6e:60:f4:1e:a4:f7:1e:0a:0b:84:44:77:e7:05:16:
- 39:aa:de:bd:1e:c7:bc:c9:e1:4e:8c:86:1c:3f:d6:
- cd:e3:f2:68:02:5b:17:53:49:51:29:a8:89:f3:d0:
- e1:5e:71:07:9f:15:47:08:40:e9:ac:49:e4:21:ac:
- 65:29:09:ca:a2:dc:9e:ab:89
+ 00:d3:d4:4e:db:63:5c:3f:3a:3a:5e:38:09:94:e6:
+ 4d:70:9d:0d:af:49:e6:82:5d:07:b7:f5:cd:a0:df:
+ af:71:f1:cf:bf:d5:9a:bd:af:7c:78:5d:55:3f:14:
+ bd:bb:2c:0e:73:9d:d6:82:9a:d5:e6:f6:21:5d:08:
+ 92:a2:71:5f:80:5f:5c:ce:f0:c2:37:37:79:0f:4d:
+ 3d:d4:f2:80:6d:47:36:45:d1:d2:8b:7a:2e:12:71:
+ 4b:47:86:f5:8c:99:af:e7:0e:cf:b5:c9:4d:7a:75:
+ f7:b2:74:0c:41:e3:ab:bb:2c:9d:6f:54:08:13:5a:
+ 3a:ef:7c:27:f7:3f:0b:0b:71
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost.nn
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 12:AF:44:46:B1:04:69:61:64:83:39:A2:BD:5D:97:2B:F4:1D:D4:6C
+ 81:26:F9:75:CC:9C:2D:3C:36:64:68:41:F7:07:3C:66:86:E5:4A:C1
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 44:54:d7:d7:75:14:60:a5:1a:1d:1e:a9:dc:6f:b1:b1:d8:13:
- e2:10:22:9a:f5:ca:b6:38:3c:d9:ac:2e:dc:ce:38:bc:cc:38:
- a1:cc:a8:9c:73:37:f9:b6:a8:42:87:d9:80:21:45:81:43:9d:
- 73:3c:67:cf:cd:c5:c3:91:df:60:6b:6d:69:f9:be:a1:92:cc:
- 5d:ea:bc:67:f3:c7:bc:ea:41:d1:11:7b:e3:f1:b8:a7:8d:9a:
- d0:23:6c:df:0e:2a:35:98:50:c1:a6:8b:d2:07:aa:a6:2f:cb:
- 98:a9:a3:8d:a0:8c:87:ab:ec:e1:c5:0b:25:e2:e9:a9:08:13:
- 30:86:1b:e5:b6:ac:03:85:35:0c:9a:5d:5b:82:c4:04:6a:05:
- 4c:f3:f7:b3:b5:ac:92:3b:46:71:a8:7f:54:c7:96:37:dc:38:
- 2c:a2:18:23:10:00:de:f8:21:40:52:99:94:ad:b2:b6:e5:87:
- 8e:29:0b:3b:b3:8a:52:67:54:dc:0a:e9:75:60:33:ff:13:9a:
- 61:a4:15:0c:d0:6f:de:0d:06:23:a8:44:ad:f0:68:60:93:6b:
- 75:06:24:5b:47:9a:b9:3a:ef:d9:4f:df:31:d5:65:3a:e2:94:
- 03:be:88:94:49:7c:6a:d0:da:c0:d0:62:81:f5:61:50:96:5a:
- d0:ee:22:39
+ 65:05:8c:48:14:58:8c:1a:d4:95:67:1c:29:52:ed:5a:6e:14:
+ 41:bc:2b:16:20:c4:89:3a:6e:cb:c1:ff:ab:61:79:5f:ce:27:
+ 93:3c:ff:29:7a:25:68:00:27:04:f3:68:17:30:f0:fd:ff:09:
+ 0e:15:2a:25:b1:45:18:93:ab:12:8e:0c:13:11:9a:b8:a4:75:
+ d0:17:1b:ca:f2:66:6b:73:15:dd:8b:bb:34:d6:70:dc:34:1b:
+ e7:7a:30:ea:50:50:2f:88:67:b3:f8:b3:55:62:44:7e:3e:df:
+ 59:4f:a8:57:83:40:9f:bf:52:bf:fd:2c:18:6e:bd:0c:41:b7:
+ 78:1c:9b:fa:c4:ff:c3:2b:46:a4:8f:0c:19:a7:3d:75:81:29:
+ 6b:cf:07:f0:1d:65:d4:0e:19:51:87:92:a8:3d:7e:80:04:84:
+ ad:5e:4e:b6:ef:9a:02:c3:84:95:ec:c3:e8:a1:69:1f:42:cb:
+ da:63:1a:35:6f:d0:ba:62:9e:73:36:63:58:0f:cc:25:c8:59:
+ 73:df:3b:c2:b9:5a:da:3d:e1:3f:0a:1f:0f:41:c4:88:2d:92:
+ 06:88:d4:54:81:e1:12:57:53:ab:6b:f8:c8:90:3e:30:4c:f5:
+ 72:cf:f0:d4:18:70:c1:78:85:30:9c:fe:94:f4:1b:c2:6c:14:
+ 49:7a:0e:27
-----BEGIN CERTIFICATE-----
-MIIDRTCCAi2gAwIBAgIGDPpgvFFcMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDRzCCAi+gAwIBAgIGC5iU+3hfMA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFcxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRUwEwYDVQQDDAxsb2NhbGhvc3Qubm4wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJ
-AoGBAKzMEXB0Ke17AESKwEcDUJ1vUbfJe91+7ilnW5Gbx8XmnVk+azMlt3w5fIR5
-3RWY5ydjkxA6OkCg3dAebmD0HqT3HgoLhER35wUWOarevR7HvMnhToyGHD/WzePy
-aAJbF1NJUSmoifPQ4V5xB58VRwhA6axJ5CGsZSkJyqLcnquJAgMBAAGjgYkwgYYw
-FwYDVR0RBBAwDoIMbG9jYWxob3N0Lm5uMAsGA1UdDwQEAwIDqDATBgNVHSUEDDAK
-BggrBgEFBQcDATAdBgNVHQ4EFgQUEq9ERrEEaWFkgzmivV2XK/Qd1GwwHwYDVR0j
-BBgwFoAUEsq6S0YEp3WKLOgOVJS8EmWme84wCQYDVR0TBAIwADANBgkqhkiG9w0B
-AQUFAAOCAQEARFTX13UUYKUaHR6p3G+xsdgT4hAimvXKtjg82awu3M44vMw4ocyo
-nHM3+baoQofZgCFFgUOdczxnz83Fw5HfYGttafm+oZLMXeq8Z/PHvOpB0RF74/G4
-p42a0CNs3w4qNZhQwaaL0geqpi/LmKmjjaCMh6vs4cULJeLpqQgTMIYb5basA4U1
-DJpdW4LEBGoFTPP3s7WskjtGcah/VMeWN9w4LKIYIxAA3vghQFKZlK2ytuWHjikL
-O7OKUmdU3ArpdWAz/xOaYaQVDNBv3g0GI6hErfBoYJNrdQYkW0eauTrv2U/fMdVl
-OuKUA76IlEl8atDawNBigfVhUJZa0O4iOQ==
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzcyNFoXDTE4MDgxMzIxMzcyNFowVzELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+FTATBgNVBAMMDGxvY2FsaG9zdC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkC
+gYEA09RO22NcPzo6XjgJlOZNcJ0Nr0nmgl0Ht/XNoN+vcfHPv9Wava98eF1VPxS9
+uywOc53WgprV5vYhXQiSonFfgF9czvDCNzd5D0091PKAbUc2RdHSi3ouEnFLR4b1
+jJmv5w7PtclNenX3snQMQeOruyydb1QIE1o673wn9z8LC3ECAwEAAaOBjDCBiTAX
+BgNVHREEEDAOggxsb2NhbGhvc3Qubm4wCwYDVR0PBAQDAgUgMBMGA1UdJQQMMAoG
+CCsGAQUFBwMBMB0GA1UdDgQWBBSBJvl1zJwtPDZkaEH3BzxmhuVKwTAfBgNVHSME
+GDAWgBStPuI5B7hcqiaQlEwmaSGD4k42lDAMBgNVHRMBAf8EAjAAMA0GCSqGSIb3
+DQEBBQUAA4IBAQBlBYxIFFiMGtSVZxwpUu1abhRBvCsWIMSJOm7Lwf+rYXlfzieT
+PP8peiVoACcE82gXMPD9/wkOFSolsUUYk6sSjgwTEZq4pHXQFxvK8mZrcxXdi7s0
+1nDcNBvnejDqUFAviGez+LNVYkR+Pt9ZT6hXg0Cfv1K//SwYbr0MQbd4HJv6xP/D
+K0akjwwZpz11gSlrzwfwHWXUDhlRh5KoPX6ABIStXk6275oCw4SV7MPooWkfQsva
+Yxo1b9C6Yp5zNmNYD8wlyFlz3zvCuVraPeE/Ch8PQcSILZIGiNRUgeESV1Ora/jI
+kD4wTPVyz/DUGHDBeIUwnP6U9BvCbBRJeg4n
-----END CERTIFICATE-----
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAPrtEVPhZfEczB9JnWXbln79YnTh/V6ehXMWe414wyn/VT1ow25sLEev
+H2+eT84aDp5e+TfBSFjA6or96/lyQvsgAE+cE6f6uuw9ApVG2MK+BCn4snxHBb6G
+LFQf+9qHZ4BEkpBL60p1fkGu8BM1wXGXEaeYhgGumNA9fm5YJrl7AgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost.nn-sv.prm b/tests/certs/Server-localhost.nn-sv.prm
index 399e38a4e..e515ea15b 100644
--- a/tests/certs/Server-localhost.nn-sv.prm
+++ b/tests/certs/Server-localhost.nn-sv.prm
@@ -1,11 +1,11 @@
extensions = x509v3
[ x509v3 ]
subjectAltName = DNS:localhost.nn
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
diff --git a/tests/certs/Server-localhost.nn-sv.pub.der b/tests/certs/Server-localhost.nn-sv.pub.der
index 68b64eb4f..b67ab96ed 100644
--- a/tests/certs/Server-localhost.nn-sv.pub.der
+++ b/tests/certs/Server-localhost.nn-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost.nn-sv.pub.pem b/tests/certs/Server-localhost.nn-sv.pub.pem
index a59a0e6ee..3131e9539 100644
--- a/tests/certs/Server-localhost.nn-sv.pub.pem
+++ b/tests/certs/Server-localhost.nn-sv.pub.pem
@@ -1,6 +1,6 @@
-----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCszBFwdCntewBEisBHA1Cdb1G3
-yXvdfu4pZ1uRm8fF5p1ZPmszJbd8OXyEed0VmOcnY5MQOjpAoN3QHm5g9B6k9x4K
-C4REd+cFFjmq3r0ex7zJ4U6Mhhw/1s3j8mgCWxdTSVEpqInz0OFecQefFUcIQOms
-SeQhrGUpCcqi3J6riQIDAQAB
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDT1E7bY1w/OjpeOAmU5k1wnQ2v
+SeaCXQe39c2g369x8c+/1Zq9r3x4XVU/FL27LA5zndaCmtXm9iFdCJKicV+AX1zO
+8MI3N3kPTT3U8oBtRzZF0dKLei4ScUtHhvWMma/nDs+1yU16dfeydAxB46u7LJ1v
+VAgTWjrvfCf3PwsLcQIDAQAB
-----END PUBLIC KEY-----
diff --git a/tests/certs/Server-localhost0h-sv.crl b/tests/certs/Server-localhost0h-sv.crl
index 319af89ba..87a185900 100644
--- a/tests/certs/Server-localhost0h-sv.crl
+++ b/tests/certs/Server-localhost0h-sv.crl
@@ -1,22 +1,14 @@
-----BEGIN X509 CRL-----
-MIIDoTCCAokCAQEwDQYJKoZIhvcNAQEFBQAwaDELMAkGA1UEBhMCTk4xMTAvBgNV
-BAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxJjAk
-BgNVBAMMHU5vcnRoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yFw0xNTAzMjExNTA3
-MTFaFw0xNTA0MjAxNTA3MTFaMIIB2zAXAgYM+ly45CIXDTE1MDMyMTEzMTQ1N1ow
-FwIGDPpcwXH8Fw0xNTAzMjExMzE1NTNaMBcCBgz6XO7ujBcNMTUwMzIxMTMyMDUx
-WjAXAgYM+lzu7p0XDTE1MDMyMTEzMjA1MVowFwIGDPpc7u6uFw0xNTAzMjExMzIw
-NTFaMBcCBgz6XZyD1RcNMTUwMzIxMTMzOTQ5WjAXAgYM+l4OXa8XDTE1MDMyMTEz
-NTIxNVowFwIGDPpeJlPZFw0xNTAzMjExMzU0NTJaMBcCBgz6XiZT6hcNMTUwMzIx
-MTM1NDUyWjAXAgYM+l4mU/sXDTE1MDMyMTEzNTQ1MlowFwIGDPpemKKEFw0xNTAz
-MjExNDA3MjFaMBcCBgz6XpiilRcNMTUwMzIxMTQwNzIxWjAXAgYM+l6YoqYXDTE1
-MDMyMTE0MDcyMVowFwIGDPpffssxFw0xNTAzMjExNDMyMzBaMBcCBgz6X37yUxcN
-MTUwMzIxMTQzMjMxWjAXAgYM+l9+8mYXDTE1MDMyMTE0MzIzMVowFwIGDPpgvFFL
-Fw0xNTAzMjExNTA3MTFaMBcCBgz6YLxRXBcNMTUwMzIxMTUwNzExWjAXAgYM+mC8
-UW4XDTE1MDMyMTE1MDcxMVqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEBBQUA
-A4IBAQDER99gBe9w8a9X1pQQnzC87kYnW7R0K8wFr4KqCYP0De8tKxhCGrXaoQDK
-AvHQcT3RpCR5PAK5J1InxlCumJJjvo39OLTsaCbSyoynmAMGCXS0earSL83biquG
-jJ29ROXukT3fGE6HO+cKAaHyHeJa6OZEibmCvCls/YvvQTW2jlceOZmi22AL3jYN
-w6UVHRpbHDHupF5YxhwFG1GVTOd9cuik8CqVxPkOfIxeQbEV+qEiDWzjyy2aU3X7
-dLhZE47P5tYgb8nIsXb5PATqiK9vdv4EOyVKiiCmyFemrGGU7MqbTtTjJVB9nS2R
-QMWLS24xr3IcHt7FOX1w8UF/GXiP
+MIICDTCB9gIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE
+CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG
+A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzU0
+WhcNMTAwNjI2MjEzNzU0WjBLMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWjAXAgYL
+mJT7eF8XDTEwMDUyNzIxMzcyNFowFwIGC5iVAAx+Fw0xMDA1MjcyMTM3NTRaoA4w
+DDAKBgNVHRQEAwIBATANBgkqhkiG9w0BAQUFAAOCAQEAWBL4VhArwJkUv91oyMIo
+xyyRmVl+1oY5IjEpLGd+mNIgqXuljQmbp8cS8A+jWinJPOWZqvsHa+mLCl4OuwhP
+JbAtIQ22OQRaVqWRuguG2T1sh3Dd7a1GcupIGKc/zgnY45D4pY4UNZv+KmY3bF0S
+83zn6YoQtBTzF9y2Nq5R0UTdxl6+j5swpo1ttvQPz40yqIlmjmW/llkaD4UBaegl
+zSxmnR5xCjAR7nYm+HyWW9SLSWGptUOd32B9TPJPLDhJa9lfBb8H9l5k7kx9ECJG
+LyujleeXIucfqOgE2cB0zCjExqrGWRp8ZgEWfpdSkDEpXBCDo88TA3dIr2f3Zxwp
+QA==
-----END X509 CRL-----
diff --git a/tests/certs/Server-localhost0h-sv.crt b/tests/certs/Server-localhost0h-sv.crt
index b00859a5c..0dcb5df23 100644
--- a/tests/certs/Server-localhost0h-sv.crt
+++ b/tests/certs/Server-localhost0h-sv.crt
@@ -1,15 +1,16 @@
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311662 (0xcfa60bc516e)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:95:00:0c:7e
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:54 2010 GMT
+ Not After : Aug 13 21:37:54 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -18,63 +19,63 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
- 57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
- e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
- 6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
- 86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
- c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
- 4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
- 7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
- cd:9f:a7:e0:78:db:15:bc:3b
+ 00:cc:a9:91:2b:22:e8:90:2b:e5:4c:dc:ae:6d:da:
+ 4c:f3:32:cc:a5:68:67:5a:3b:b9:86:a3:95:88:3e:
+ e8:63:c3:ed:00:60:19:03:2b:5d:5b:56:8a:da:21:
+ 5e:71:5c:d1:e3:de:51:18:c1:17:14:b1:33:90:00:
+ 5c:9a:e5:73:0b:a8:88:9c:d0:0b:54:bc:ea:3a:39:
+ dd:f6:65:81:4b:29:99:4c:71:d3:f7:69:7f:80:e8:
+ e8:6d:61:41:83:87:eb:ac:2c:bd:0f:eb:1b:fd:a2:
+ 37:97:6d:31:56:ba:4b:51:dd:b1:01:eb:89:f8:25:
+ de:5b:a3:e5:b2:3f:4c:77:53
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+ 3B:2B:84:0D:23:3C:46:F9:9B:E5:C2:FA:B7:30:E7:AC:E3:ED:09:C3
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
- dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
- 66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
- 52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
- 49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
- 36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
- 05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
- 49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
- d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
- fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
- 67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
- ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
- f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
- 39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
- 69:12:71:36
+ a2:fa:61:4e:c0:10:1f:f8:38:2c:fd:a6:74:85:df:8e:ee:41:
+ 90:a1:d7:c9:32:65:5d:61:d5:13:51:3b:11:1c:7b:01:06:70:
+ 9f:93:52:54:15:bd:93:3a:f8:40:e3:e2:ab:01:96:fb:73:c5:
+ 42:2c:ad:ce:e8:52:57:db:b6:15:90:75:e3:e5:75:99:b0:83:
+ ed:b0:fc:f2:d0:d9:3d:68:1c:d9:b4:cd:a1:a9:40:19:44:46:
+ 14:8b:11:6e:2e:1c:65:85:73:45:f0:8b:4f:ea:01:2d:61:0f:
+ ae:0d:70:0c:d3:3c:1c:1f:24:66:a3:0b:62:d1:87:1e:8e:96:
+ f6:43:cf:1c:24:e7:94:d0:7e:b0:ee:1b:6f:14:1f:04:35:e8:
+ fc:3c:c8:9e:e3:6e:0e:4c:7d:a9:23:97:2d:6e:b1:4d:e3:05:
+ 1b:ce:86:2f:2f:b3:c9:60:47:58:ac:ea:4c:cb:c2:7b:0f:08:
+ b8:a7:90:e7:22:32:70:f6:09:3e:f9:54:94:b0:37:50:22:60:
+ 49:1c:84:9e:1a:22:0c:3e:a9:16:7c:5e:b1:50:13:6b:82:14:
+ d3:8a:3d:4d:ed:18:ca:40:59:d6:b9:72:9f:64:e5:0b:e7:a6:
+ b8:ee:29:b5:6a:ec:82:b2:94:56:36:e3:87:b3:07:aa:69:b8:
+ 2c:ef:0c:14
-----BEGIN CERTIFICATE-----
-MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDQzCCAiugAwIBAgIGC5iVAAx+MA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
-Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
-+0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
-VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
-AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
-gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
-A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
-GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
-LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
-UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
-/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
-AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzc1NFoXDTE4MDgxMzIxMzc1NFowVDELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+EjAQBgNVBAMMCWxvY2FsaG9zdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
+zKmRKyLokCvlTNyubdpM8zLMpWhnWju5hqOViD7oY8PtAGAZAytdW1aK2iFecVzR
+495RGMEXFLEzkABcmuVzC6iInNALVLzqOjnd9mWBSymZTHHT92l/gOjobWFBg4fr
+rCy9D+sb/aI3l20xVrpLUd2xAeuJ+CXeW6Plsj9Md1MCAwEAAaOBizCBiDAWBgNV
+HREEDzANggtsb2NhbGhvc3QAaDALBgNVHQ8EBAMCBSAwEwYDVR0lBAwwCgYIKwYB
+BQUHAwEwHQYDVR0OBBYEFDsrhA0jPEb5m+XC+rcw56zj7QnDMB8GA1UdIwQYMBaA
+FK0+4jkHuFyqJpCUTCZpIYPiTjaUMAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEF
+BQADggEBAKL6YU7AEB/4OCz9pnSF347uQZCh18kyZV1h1RNROxEcewEGcJ+TUlQV
+vZM6+EDj4qsBlvtzxUIsrc7oUlfbthWQdePldZmwg+2w/PLQ2T1oHNm0zaGpQBlE
+RhSLEW4uHGWFc0Xwi0/qAS1hD64NcAzTPBwfJGajC2LRhx6OlvZDzxwk55TQfrDu
+G28UHwQ16Pw8yJ7jbg5Mfakjly1usU3jBRvOhi8vs8lgR1is6kzLwnsPCLinkOci
+MnD2CT75VJSwN1AiYEkchJ4aIgw+qRZ8XrFQE2uCFNOKPU3tGMpAWda5cp9k5Qvn
+prjuKbVq7IKylFY244ezB6ppuCzvDBQ=
-----END CERTIFICATE-----
diff --git a/tests/certs/Server-localhost0h-sv.csr b/tests/certs/Server-localhost0h-sv.csr
index d075157da..edf776f3f 100644
--- a/tests/certs/Server-localhost0h-sv.csr
+++ b/tests/certs/Server-localhost0h-sv.csr
@@ -1,11 +1,11 @@
-----BEGIN CERTIFICATE REQUEST-----
MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy
Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
-nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
-odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
-rxOsqM2fp+B42xW8OwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAC6NxWuiENuj/
-oPsopZy/tVZzbioXZP/S9ECCbdgy33bg9zKwQYLeHOSgXxJzES+RhJwQCliFV17j
-jM1CH7heggwkPAx5KelyZ20DeoeaYOi/xv7TjozrZ+EkmivHKBJi3+qNjNYH0ul9
-HhQBO5+sSDAGLMkWL/nAfYKbf/8KSvA=
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMqZErIuiQK+VM3K5t2kzzMsyl
+aGdaO7mGo5WIPuhjw+0AYBkDK11bVoraIV5xXNHj3lEYwRcUsTOQAFya5XMLqIic
+0AtUvOo6Od32ZYFLKZlMcdP3aX+A6OhtYUGDh+usLL0P6xv9ojeXbTFWuktR3bEB
+64n4Jd5bo+WyP0x3UwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAPor+2apn3kPJ
+ZdjyyT/iXETRTrN87PuBaujcV+oVeVSWW+YgGUzDHi+RkEKTxWdz3leW2goE41X9
+2D/n66ASQGs1x8wXwIMIX83MjkWtjqdfcrJVi1l6T7NjzZt6EyJdvreRntCUu8zc
+J5tK3rl/tIeudKUE2COc0Ngu9JUB1j8=
-----END CERTIFICATE REQUEST-----
diff --git a/tests/certs/Server-localhost0h-sv.der b/tests/certs/Server-localhost0h-sv.der
index 93642f42e..14be0ba63 100644
--- a/tests/certs/Server-localhost0h-sv.der
+++ b/tests/certs/Server-localhost0h-sv.der
Binary files differ
diff --git a/tests/certs/Server-localhost0h-sv.dhp b/tests/certs/Server-localhost0h-sv.dhp
index e69de29bb..99e6107e8 100644
--- a/tests/certs/Server-localhost0h-sv.dhp
+++ b/tests/certs/Server-localhost0h-sv.dhp
@@ -0,0 +1,5 @@
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAL/3hRxvWX+Mdyu/aBPU1JeeA5sg4nXtA7B24eCql9Tq53Lks1/HJ5B+
+xSapGAFd+22xhBsNkJihf74oiPEVr9nNoLjFV/DZe259+JYgs+pBTFN+Cp13ALUi
+CeZxX2mlxlstD1SBRTKgxA/j4ttR1Chn8knn+RVdFE9YFKCYPyLrAgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost0h-sv.key b/tests/certs/Server-localhost0h-sv.key
index 5fcc9c582..95c4666ad 100644
--- a/tests/certs/Server-localhost0h-sv.key
+++ b/tests/certs/Server-localhost0h-sv.key
@@ -1,15 +1,15 @@
-----BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
-lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
-I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
-AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
-l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
-79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
-IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
-eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
-SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
-w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
-3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
-sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
-01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+MIICXAIBAAKBgQDMqZErIuiQK+VM3K5t2kzzMsylaGdaO7mGo5WIPuhjw+0AYBkD
+K11bVoraIV5xXNHj3lEYwRcUsTOQAFya5XMLqIic0AtUvOo6Od32ZYFLKZlMcdP3
+aX+A6OhtYUGDh+usLL0P6xv9ojeXbTFWuktR3bEB64n4Jd5bo+WyP0x3UwIDAQAB
+AoGAGT+OBilPUYHoztumtSyqM5J/xqQjo/EcSSzjJKTGHJCuK06vp0FxSfRaOuDE
++u09g4QIsyoXA9l8h/ZTdlR6Jax5nc+iRFs/21isrgKAsZYj4DghjgXJ9LWGHXnb
+7xstVFkFBGnOaeY7dVr54907TYUQwtJg4fk7Vror05gb1qECQQDykAxr2D/CxLk9
+RjWDi/P6JnfF0ZxZzCe0yATvuZ89+rpWQ5uxEJDq5FqwW4QXX+0G2aWDv64YExPS
+JmWQTlojAkEA2AAHDv2KBWFcXeTlWnKZTdzUOniE8PzS5zipi2ssiqXScrj9NX2U
+yCCOkv/42blPXBKbaVnfWBEhtj7pQxHJEQJBAOTvXjnfVXafs/IINPPegLyF2B/G
+EZqTXJp8+mPEP28BGSPYFbdN2mlIc+vlxEtHh3AitdweatNgFiIPiWZk/R8CQEIf
+EAoYtw2alknv7f3YIvHg7d7QUfHrkyxQ/iW9sy7mQBv6YRjkzozM2phJX4ZW4eJP
+l9+SMXqmE+nULFfps+ECQFVkjPDF065x++Fh3BVtNJ0goYStTJM6IcmYKflap+Ux
+cORZUWJ8tvDavlSSwQQYK8kOVTINC6iFwwEQ41HlYLE=
-----END RSA PRIVATE KEY-----
diff --git a/tests/certs/Server-localhost0h-sv.p12 b/tests/certs/Server-localhost0h-sv.p12
new file mode 100644
index 000000000..82e03c785
--- /dev/null
+++ b/tests/certs/Server-localhost0h-sv.p12
Binary files differ
diff --git a/tests/certs/Server-localhost0h-sv.pem b/tests/certs/Server-localhost0h-sv.pem
index a953370e6..45be9c35e 100644
--- a/tests/certs/Server-localhost0h-sv.pem
+++ b/tests/certs/Server-localhost0h-sv.pem
@@ -2,11 +2,11 @@ extensions = x509v3
[ x509v3 ]
#subjectAltName = DNS:localhost\0h
subjectAltName = DER:30:0d:82:0b:6c:6f:63:61:6c:68:6f:73:74:00:68
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
@@ -25,32 +25,33 @@ commonName_value = localhost
# the certificate
# some dhparam
-----BEGIN RSA PRIVATE KEY-----
-MIICXAIBAAKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5nkvn0KxVQ0f6seD8sGMwhDH1
-lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLGodusvrEvTMKYhhly1fkSRQm8
-I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qYrxOsqM2fp+B42xW8OwIDAQAB
-AoGAHdkk2qfLDpShOl5RBA8PpZYxY4iG0d3ad2HVsNhWb0Z9+QGZumDRF1Hu5Zni
-l+hCprcP5tWWA1poODSNHBCNEQRYZcHrfZlh+sDiV6ZmexBg7x9D5azyRbn20vr1
-79UxmisRxnDQQHCfOmgZtgs1EZXnFOs0OotoZAHFr+GLtQECQQD+R2TaWMCEPKJc
-IswGBqLGL8cyy+v2d5Glt5l+xzb/KCdY9cbOR/B9wq//0Nvqyiq1I1jUBVw9NJi/
-eBx/OYxhAkEA5VIC6uMpIck0Qxpbj7/H3k2pBf1HROgmLEq+cVLFgY62CIpTgleO
-SAzTmn0vDXir0jQHJn+JTokvn0PxyNquGwJBAJW+77rSl5WIq8j8yRAnakayrmnQ
-w8ZjBggExsVthorfV8TBAPJMVWmKdOF/W3O62UnRZid+fKKize28S3P1LSECQDF8
-3FJSSWsYH6YnhwDjkz9fJQ281eeB7dL7IlQUV7kY0iHPsCvdtz/HPNcHEuNmWjYX
-sj9VoI0JP/Sv1frRbmcCQDPaeWowPGf1Xtj0oTSlA6KQsKZPO7t15nivgX/AnZWQ
-01l8q6GPHeYwyG/caD3BZwAavsVLg9nhKx0lf0wExM0=
+MIICXAIBAAKBgQDMqZErIuiQK+VM3K5t2kzzMsylaGdaO7mGo5WIPuhjw+0AYBkD
+K11bVoraIV5xXNHj3lEYwRcUsTOQAFya5XMLqIic0AtUvOo6Od32ZYFLKZlMcdP3
+aX+A6OhtYUGDh+usLL0P6xv9ojeXbTFWuktR3bEB64n4Jd5bo+WyP0x3UwIDAQAB
+AoGAGT+OBilPUYHoztumtSyqM5J/xqQjo/EcSSzjJKTGHJCuK06vp0FxSfRaOuDE
++u09g4QIsyoXA9l8h/ZTdlR6Jax5nc+iRFs/21isrgKAsZYj4DghjgXJ9LWGHXnb
+7xstVFkFBGnOaeY7dVr54907TYUQwtJg4fk7Vror05gb1qECQQDykAxr2D/CxLk9
+RjWDi/P6JnfF0ZxZzCe0yATvuZ89+rpWQ5uxEJDq5FqwW4QXX+0G2aWDv64YExPS
+JmWQTlojAkEA2AAHDv2KBWFcXeTlWnKZTdzUOniE8PzS5zipi2ssiqXScrj9NX2U
+yCCOkv/42blPXBKbaVnfWBEhtj7pQxHJEQJBAOTvXjnfVXafs/IINPPegLyF2B/G
+EZqTXJp8+mPEP28BGSPYFbdN2mlIc+vlxEtHh3AitdweatNgFiIPiWZk/R8CQEIf
+EAoYtw2alknv7f3YIvHg7d7QUfHrkyxQ/iW9sy7mQBv6YRjkzozM2phJX4ZW4eJP
+l9+SMXqmE+nULFfps+ECQFVkjPDF065x++Fh3BVtNJ0goYStTJM6IcmYKflap+Ux
+cORZUWJ8tvDavlSSwQQYK8kOVTINC6iFwwEQ41HlYLE=
-----END RSA PRIVATE KEY-----
Certificate:
Data:
Version: 3 (0x2)
- Serial Number: 14269504311662 (0xcfa60bc516e)
- Signature Algorithm: sha1WithRSAEncryption
+ Serial Number:
+ 0b:98:95:00:0c:7e
+ Signature Algorithm: sha1WithRSAEncryption
Issuer:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
- commonName = Northern Nowhere Trust Anchor
+ commonName = Nothern Nowhere Trust Anchor
Validity
- Not Before: Mar 21 15:07:11 2015 GMT
- Not After : Jun 7 15:07:11 2023 GMT
+ Not Before: May 27 21:37:54 2010 GMT
+ Not After : Aug 13 21:37:54 2018 GMT
Subject:
countryName = NN
organizationName = Edel Curl Arctic Illudium Research Cloud
@@ -59,63 +60,68 @@ Certificate:
Public Key Algorithm: rsaEncryption
Public-Key: (1024 bit)
Modulus:
- 00:e3:c7:52:fb:7d:02:b1:a7:0b:4c:2d:a6:2a:b0:
- 57:6b:5e:0b:f9:9e:4b:e7:d0:ac:55:43:47:fa:b1:
- e0:fc:b0:63:30:84:31:f5:95:44:90:9a:b7:22:01:
- 6f:c7:17:16:be:5a:19:ee:47:35:90:a5:5e:27:ba:
- 86:47:3b:c5:63:d2:f2:c6:a1:db:ac:be:b1:2f:4c:
- c2:98:86:19:72:d5:f9:12:45:09:bc:23:e2:00:eb:
- 4d:ba:99:71:b5:4a:fb:49:8c:4d:f3:0b:4e:cf:48:
- 7b:c8:06:37:92:35:ff:bb:4f:ea:98:af:13:ac:a8:
- cd:9f:a7:e0:78:db:15:bc:3b
+ 00:cc:a9:91:2b:22:e8:90:2b:e5:4c:dc:ae:6d:da:
+ 4c:f3:32:cc:a5:68:67:5a:3b:b9:86:a3:95:88:3e:
+ e8:63:c3:ed:00:60:19:03:2b:5d:5b:56:8a:da:21:
+ 5e:71:5c:d1:e3:de:51:18:c1:17:14:b1:33:90:00:
+ 5c:9a:e5:73:0b:a8:88:9c:d0:0b:54:bc:ea:3a:39:
+ dd:f6:65:81:4b:29:99:4c:71:d3:f7:69:7f:80:e8:
+ e8:6d:61:41:83:87:eb:ac:2c:bd:0f:eb:1b:fd:a2:
+ 37:97:6d:31:56:ba:4b:51:dd:b1:01:eb:89:f8:25:
+ de:5b:a3:e5:b2:3f:4c:77:53
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:localhost
X509v3 Key Usage:
- Digital Signature, Key Encipherment, Key Agreement
+ Key Encipherment
X509v3 Extended Key Usage:
TLS Web Server Authentication
X509v3 Subject Key Identifier:
- 23:D7:CE:D8:B2:D0:F8:8E:3C:82:26:6C:F1:F5:2A:8A:48:90:58:66
+ 3B:2B:84:0D:23:3C:46:F9:9B:E5:C2:FA:B7:30:E7:AC:E3:ED:09:C3
X509v3 Authority Key Identifier:
- keyid:12:CA:BA:4B:46:04:A7:75:8A:2C:E8:0E:54:94:BC:12:65:A6:7B:CE
+ keyid:AD:3E:E2:39:07:B8:5C:AA:26:90:94:4C:26:69:21:83:E2:4E:36:94
- X509v3 Basic Constraints:
+ X509v3 Basic Constraints: critical
CA:FALSE
Signature Algorithm: sha1WithRSAEncryption
- 28:b9:77:ea:4a:8d:d6:a5:fb:72:5b:d6:cd:60:40:33:56:bf:
- dd:23:ff:bf:e8:2e:10:cd:30:ab:24:a4:43:d8:98:71:e3:59:
- 66:3e:38:bd:b8:fb:19:1a:13:8f:a1:c8:39:93:b5:83:8d:62:
- 52:a9:7a:5b:0d:69:47:40:5c:51:4c:3a:be:a7:c9:5f:7b:93:
- 49:20:59:23:30:7c:d9:4a:dd:29:2c:ed:96:fd:cb:b8:13:ff:
- 36:2c:27:ce:28:c3:a6:d0:d8:ba:8c:38:9f:78:ff:54:c7:76:
- 05:37:47:f5:d3:55:9c:2c:12:41:81:14:ca:48:a2:b7:6d:05:
- 49:2b:c5:f5:7b:63:6d:6f:cd:3f:f4:8d:74:51:07:ff:e1:40:
- d5:96:60:d8:c8:38:5a:15:f9:c5:fd:e1:5e:a3:02:95:90:4b:
- fc:8a:42:de:72:31:72:3d:dd:a2:df:19:42:c8:fa:a8:77:11:
- 67:e6:64:8c:d0:fd:45:fd:f0:49:8c:e1:85:e6:f5:1f:47:c6:
- ae:f2:70:c3:e8:99:d0:cd:9d:88:6b:33:ba:b9:65:3d:f4:b1:
- f4:d0:3c:76:9c:18:9e:9e:c8:62:29:43:8e:f7:2f:2c:12:37:
- 39:02:26:4e:4b:b0:14:30:80:bb:2d:cc:fc:93:dc:c9:8b:c0:
- 69:12:71:36
+ a2:fa:61:4e:c0:10:1f:f8:38:2c:fd:a6:74:85:df:8e:ee:41:
+ 90:a1:d7:c9:32:65:5d:61:d5:13:51:3b:11:1c:7b:01:06:70:
+ 9f:93:52:54:15:bd:93:3a:f8:40:e3:e2:ab:01:96:fb:73:c5:
+ 42:2c:ad:ce:e8:52:57:db:b6:15:90:75:e3:e5:75:99:b0:83:
+ ed:b0:fc:f2:d0:d9:3d:68:1c:d9:b4:cd:a1:a9:40:19:44:46:
+ 14:8b:11:6e:2e:1c:65:85:73:45:f0:8b:4f:ea:01:2d:61:0f:
+ ae:0d:70:0c:d3:3c:1c:1f:24:66:a3:0b:62:d1:87:1e:8e:96:
+ f6:43:cf:1c:24:e7:94:d0:7e:b0:ee:1b:6f:14:1f:04:35:e8:
+ fc:3c:c8:9e:e3:6e:0e:4c:7d:a9:23:97:2d:6e:b1:4d:e3:05:
+ 1b:ce:86:2f:2f:b3:c9:60:47:58:ac:ea:4c:cb:c2:7b:0f:08:
+ b8:a7:90:e7:22:32:70:f6:09:3e:f9:54:94:b0:37:50:22:60:
+ 49:1c:84:9e:1a:22:0c:3e:a9:16:7c:5e:b1:50:13:6b:82:14:
+ d3:8a:3d:4d:ed:18:ca:40:59:d6:b9:72:9f:64:e5:0b:e7:a6:
+ b8:ee:29:b5:6a:ec:82:b2:94:56:36:e3:87:b3:07:aa:69:b8:
+ 2c:ef:0c:14
-----BEGIN CERTIFICATE-----
-MIIDQTCCAimgAwIBAgIGDPpgvFFuMA0GCSqGSIb3DQEBBQUAMGgxCzAJBgNVBAYT
+MIIDQzCCAiugAwIBAgIGC5iVAAx+MA0GCSqGSIb3DQEBBQUAMGcxCzAJBgNVBAYT
Ak5OMTEwLwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNo
-IENsb3VkMSYwJAYDVQQDDB1Ob3J0aGVybiBOb3doZXJlIFRydXN0IEFuY2hvcjAe
-Fw0xNTAzMjExNTA3MTFaFw0yMzA2MDcxNTA3MTFaMFQxCzAJBgNVBAYTAk5OMTEw
-LwYDVQQKDChFZGVsIEN1cmwgQXJjdGljIElsbHVkaXVtIFJlc2VhcmNoIENsb3Vk
-MRIwEAYDVQQDDAlsb2NhbGhvc3QwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
-AOPHUvt9ArGnC0wtpiqwV2teC/meS+fQrFVDR/qx4PywYzCEMfWVRJCatyIBb8cX
-Fr5aGe5HNZClXie6hkc7xWPS8sah26y+sS9MwpiGGXLV+RJFCbwj4gDrTbqZcbVK
-+0mMTfMLTs9Ie8gGN5I1/7tP6pivE6yozZ+n4HjbFbw7AgMBAAGjgYgwgYUwFgYD
-VR0RBA8wDYILbG9jYWxob3N0AGgwCwYDVR0PBAQDAgOoMBMGA1UdJQQMMAoGCCsG
-AQUFBwMBMB0GA1UdDgQWBBQj187YstD4jjyCJmzx9SqKSJBYZjAfBgNVHSMEGDAW
-gBQSyrpLRgSndYos6A5UlLwSZaZ7zjAJBgNVHRMEAjAAMA0GCSqGSIb3DQEBBQUA
-A4IBAQAouXfqSo3WpftyW9bNYEAzVr/dI/+/6C4QzTCrJKRD2Jhx41lmPji9uPsZ
-GhOPocg5k7WDjWJSqXpbDWlHQFxRTDq+p8lfe5NJIFkjMHzZSt0pLO2W/cu4E/82
-LCfOKMOm0Ni6jDifeP9Ux3YFN0f101WcLBJBgRTKSKK3bQVJK8X1e2Ntb80/9I10
-UQf/4UDVlmDYyDhaFfnF/eFeowKVkEv8ikLecjFyPd2i3xlCyPqodxFn5mSM0P1F
-/fBJjOGF5vUfR8au8nDD6JnQzZ2IazO6uWU99LH00Dx2nBienshiKUOO9y8sEjc5
-AiZOS7AUMIC7Lcz8k9zJi8BpEnE2
+IENsb3VkMSUwIwYDVQQDDBxOb3RoZXJuIE5vd2hlcmUgVHJ1c3QgQW5jaG9yMB4X
+DTEwMDUyNzIxMzc1NFoXDTE4MDgxMzIxMzc1NFowVDELMAkGA1UEBhMCTk4xMTAv
+BgNVBAoMKEVkZWwgQ3VybCBBcmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQx
+EjAQBgNVBAMMCWxvY2FsaG9zdDCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA
+zKmRKyLokCvlTNyubdpM8zLMpWhnWju5hqOViD7oY8PtAGAZAytdW1aK2iFecVzR
+495RGMEXFLEzkABcmuVzC6iInNALVLzqOjnd9mWBSymZTHHT92l/gOjobWFBg4fr
+rCy9D+sb/aI3l20xVrpLUd2xAeuJ+CXeW6Plsj9Md1MCAwEAAaOBizCBiDAWBgNV
+HREEDzANggtsb2NhbGhvc3QAaDALBgNVHQ8EBAMCBSAwEwYDVR0lBAwwCgYIKwYB
+BQUHAwEwHQYDVR0OBBYEFDsrhA0jPEb5m+XC+rcw56zj7QnDMB8GA1UdIwQYMBaA
+FK0+4jkHuFyqJpCUTCZpIYPiTjaUMAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEF
+BQADggEBAKL6YU7AEB/4OCz9pnSF347uQZCh18kyZV1h1RNROxEcewEGcJ+TUlQV
+vZM6+EDj4qsBlvtzxUIsrc7oUlfbthWQdePldZmwg+2w/PLQ2T1oHNm0zaGpQBlE
+RhSLEW4uHGWFc0Xwi0/qAS1hD64NcAzTPBwfJGajC2LRhx6OlvZDzxwk55TQfrDu
+G28UHwQ16Pw8yJ7jbg5Mfakjly1usU3jBRvOhi8vs8lgR1is6kzLwnsPCLinkOci
+MnD2CT75VJSwN1AiYEkchJ4aIgw+qRZ8XrFQE2uCFNOKPU3tGMpAWda5cp9k5Qvn
+prjuKbVq7IKylFY244ezB6ppuCzvDBQ=
-----END CERTIFICATE-----
+-----BEGIN DH PARAMETERS-----
+MIGHAoGBAL/3hRxvWX+Mdyu/aBPU1JeeA5sg4nXtA7B24eCql9Tq53Lks1/HJ5B+
+xSapGAFd+22xhBsNkJihf74oiPEVr9nNoLjFV/DZe259+JYgs+pBTFN+Cp13ALUi
+CeZxX2mlxlstD1SBRTKgxA/j4ttR1Chn8knn+RVdFE9YFKCYPyLrAgEC
+-----END DH PARAMETERS-----
diff --git a/tests/certs/Server-localhost0h-sv.prm b/tests/certs/Server-localhost0h-sv.prm
index 619d82552..5e8944b31 100644
--- a/tests/certs/Server-localhost0h-sv.prm
+++ b/tests/certs/Server-localhost0h-sv.prm
@@ -2,11 +2,11 @@ extensions = x509v3
[ x509v3 ]
#subjectAltName = DNS:localhost\0h
subjectAltName = DER:30:0d:82:0b:6c:6f:63:61:6c:68:6f:73:74:00:68
-keyUsage = keyEncipherment,digitalSignature,keyAgreement
+keyUsage = keyEncipherment
extendedKeyUsage = serverAuth
subjectKeyIdentifier = hash
authorityKeyIdentifier = keyid
-basicConstraints = CA:false
+basicConstraints = critical,CA:false
[ req ]
default_bits = 1024
distinguished_name = req_DN
diff --git a/tests/certs/Server-localhost0h-sv.pub.der b/tests/certs/Server-localhost0h-sv.pub.der
index 1b079f425..2b071d3ad 100644
--- a/tests/certs/Server-localhost0h-sv.pub.der
+++ b/tests/certs/Server-localhost0h-sv.pub.der
Binary files differ
diff --git a/tests/certs/Server-localhost0h-sv.pub.pem b/tests/certs/Server-localhost0h-sv.pub.pem
index c34cc776f..c403ac575 100644
--- a/tests/certs/Server-localhost0h-sv.pub.pem
+++ b/tests/certs/Server-localhost0h-sv.pub.pem
@@ -1,6 +1,6 @@
-----BEGIN PUBLIC KEY-----
-MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDjx1L7fQKxpwtMLaYqsFdrXgv5
-nkvn0KxVQ0f6seD8sGMwhDH1lUSQmrciAW/HFxa+WhnuRzWQpV4nuoZHO8Vj0vLG
-odusvrEvTMKYhhly1fkSRQm8I+IA6026mXG1SvtJjE3zC07PSHvIBjeSNf+7T+qY
-rxOsqM2fp+B42xW8OwIDAQAB
+MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMqZErIuiQK+VM3K5t2kzzMsyl
+aGdaO7mGo5WIPuhjw+0AYBkDK11bVoraIV5xXNHj3lEYwRcUsTOQAFya5XMLqIic
+0AtUvOo6Od32ZYFLKZlMcdP3aX+A6OhtYUGDh+usLL0P6xv9ojeXbTFWuktR3bEB
+64n4Jd5bo+WyP0x3UwIDAQAB
-----END PUBLIC KEY-----
diff --git a/tests/certs/scripts/Makefile.in b/tests/certs/scripts/Makefile.in
index 0c9cb7ce4..c899d7089 100644
--- a/tests/certs/scripts/Makefile.in
+++ b/tests/certs/scripts/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -14,17 +14,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -88,6 +78,8 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = tests/certs/scripts
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/mkinstalldirs
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/m4/curl-confopts.m4 \
@@ -108,8 +100,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -134,7 +125,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -193,7 +183,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -246,7 +236,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -263,6 +252,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -365,6 +355,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__confi
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/certs/scripts/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/certs/scripts/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -539,8 +530,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/certs/scripts/genroot.sh b/tests/certs/scripts/genroot.sh
index 4d2118aae..6ac138873 100755
--- a/tests/certs/scripts/genroot.sh
+++ b/tests/certs/scripts/genroot.sh
@@ -50,15 +50,15 @@ echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -
$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-ca.prm -days $DURATION -req -signkey $PREFIX-ca.key -in $PREFIX-ca.csr -out $PREFIX-$SERIAL-ca.cacert -sha1
-echo "openssl x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert "
-$OPENSSL x509 -text -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline > $PREFIX-ca.cacert
+echo "openssl x509 -text -hash -out $PREFIX-ca.cacert -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline"
+$OPENSSL x509 -text -hash -out $PREFIX-ca.cacert -in $PREFIX-$SERIAL-ca.cacert -nameopt multiline
echo "openssl x509 -in $PREFIX-ca.cacert -outform der -out $PREFIX-ca.der "
$OPENSSL x509 -in $PREFIX-ca.cacert -outform der -out $PREFIX-ca.der
-echo "openssl x509 -in $PREFIX-ca.cacert -text -nameopt multiline > $PREFIX-ca.crt "
+echo "openssl x509 -in $PREFIX-ca.cacert -text -out $PREFIX-ca.crt -nameopt multiline"
-$OPENSSL x509 -in $PREFIX-ca.cacert -text -nameopt multiline > $PREFIX-ca.crt
+$OPENSSL x509 -in $PREFIX-ca.cacert -text -out $PREFIX-ca.crt -nameopt multiline
echo "openssl x509 -noout -text -in $PREFIX-ca.cacert -nameopt multiline"
$OPENSSL x509 -noout -text -in $PREFIX-ca.cacert -nameopt multiline
diff --git a/tests/certs/scripts/genserv.sh b/tests/certs/scripts/genserv.sh
index e7845c5c1..80876ec51 100755
--- a/tests/certs/scripts/genserv.sh
+++ b/tests/certs/scripts/genserv.sh
@@ -81,9 +81,9 @@ $OPENSSL rsa -in $PREFIX-sv.key -pubout -outform DER -out $PREFIX-sv.pub.der
echo "openssl rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem"
$OPENSSL rsa -in $PREFIX-sv.key -pubout -outform PEM -out $PREFIX-sv.pub.pem
-echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt "
+echo "openssl x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -out $PREFIX-sv.crt -text -nameopt multiline -sha1"
-$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -text -nameopt multiline -sha1 > $PREFIX-sv.crt
+$OPENSSL x509 -set_serial $SERIAL -extfile $PREFIX-sv.prm -days $DURATION -CA $CAPREFIX-ca.cacert -CAkey $CAPREFIX-ca.key -in $PREFIX-sv.csr -req -out $PREFIX-sv.crt -text -nameopt multiline -sha1
if [ "$P12." = YES. ] ; then
diff --git a/tests/data/CMakeLists.txt b/tests/data/CMakeLists.txt
deleted file mode 100644
index dec92e544..000000000
--- a/tests/data/CMakeLists.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-# Loads 'TESTCASES' from for the 'make show' target in runtests.pl
-transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-include("${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-
-# Prints all available test cases. Do not quote TESTCASES, it must be displayed
-# as a space-separated string rather than comma-separated (a list in CMake).
-add_custom_target(show COMMAND echo ${TESTCASES})
diff --git a/tests/data/Makefile.am b/tests/data/Makefile.am
index 4ec0364ba..a4b281f3c 100644
--- a/tests/data/Makefile.am
+++ b/tests/data/Makefile.am
@@ -5,7 +5,7 @@ test:
# TESTCASES are taken from Makefile.inc
include Makefile.inc
-EXTRA_DIST = $(TESTCASES) DISABLED CMakeLists.txt
+EXTRA_DIST = $(TESTCASES) DISABLED
filecheck:
@mkdir test-place; \
diff --git a/tests/data/Makefile.in b/tests/data/Makefile.in
index 25917d6c4..99229d9f8 100644
--- a/tests/data/Makefile.in
+++ b/tests/data/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -36,17 +36,7 @@
#
###########################################################################
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -109,6 +99,8 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs
subdir = tests/data
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
@@ -130,8 +122,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -156,7 +147,6 @@ am__can_run_installinfo = \
*) (install-info --version) >/dev/null 2>&1;; \
esac
am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -215,7 +205,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -268,7 +258,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -285,6 +274,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -411,20 +401,18 @@ test800 test801 test802 test803 test804 test805 test806 test807 test808 \
test809 test810 test811 test812 test813 test814 test815 test816 test817 \
test818 test819 test820 test821 test822 test823 test824 test825 test826 \
test827 test828 test829 test830 test831 test832 test833 test834 test835 \
-test836 test837 test838 test839 test840 \
+test836 \
\
test850 test851 test852 test853 test854 test855 test856 test857 test858 \
test859 test860 test861 test862 test863 test864 test865 test866 test867 \
test868 test869 test870 test871 test872 test873 test874 test875 test876 \
-test877 test878 test879 test880 test881 test882 test883 test884 test885 \
-test886 \
+test877 test878 test879 test880 test881 test882 \
\
test900 test901 test902 test903 test904 test905 test906 test907 test908 \
test909 test910 test911 test912 test913 test914 test915 test916 test917 \
test918 test919 test920 test921 test922 test923 test924 test925 test926 \
test927 test928 test929 test930 test931 test932 test933 test934 test935 \
-test936 test937 test938 test939 test940 test941 test942 test943 test944 \
-test945 \
+test936 test937 test938 test939 test940 test941 \
\
test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \
@@ -442,14 +430,14 @@ test1096 test1097 test1098 test1099 test1100 test1101 test1102 test1103 \
test1104 test1105 test1106 test1107 test1108 test1109 test1110 test1111 \
test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 \
test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 \
-test1128 test1129 test1130 test1131 test1132 test1133 test1134 test1135 \
+test1128 test1129 test1130 test1131 test1132 test1133 test1134 \
\
test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \
test1208 test1209 test1210 test1211 test1212 test1213 test1214 test1215 \
test1216 test1217 test1218 test1219 \
test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \
test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \
-test1236 test1237 test1238 test1239 test1240 test1241 \
+test1236 test1237 test1238 test1239 test1240 \
\
test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \
test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \
@@ -467,8 +455,8 @@ test1396 test1397 test1398 \
\
test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 \
test1408 test1409 test1410 test1411 test1412 test1413 test1414 test1415 \
-test1416 test1417 test1418 test1419 test1420 test1421 test1422 test1423 \
-test1424 \
+test1416 test1417 test1418 test1419 test1420 \
+\
test1428 test1429 test1430 test1431 test1432 test1433 test1434 test1435 \
test1436 \
\
@@ -478,9 +466,7 @@ test1516 \
\
test1520 \
\
-test1525 test1526 test1527 test1528 test1529 test1530 test1531 \
-\
-test1600 test1601 test1602 \
+test1525 test1526 test1527 test1528 test1529 \
\
test1800 test1801 \
\
@@ -490,12 +476,11 @@ test2000 test2001 test2002 test2003 test2004 test2005 test2006 test2007 \
test2008 test2009 test2010 test2011 test2012 test2013 test2014 test2015 \
test2016 test2017 test2018 test2019 test2020 test2021 test2022 test2023 \
test2024 test2025 test2026 test2027 test2028 test2029 test2030 test2031 \
-test2032 test2033 test2034 test2035 test2036 test2037 test2038 test2039 \
-test2040 test2041 test2042 test2043
+test2032 test2033 test2034 test2035 test2036 test2037 test2038
# TESTCASES are taken from Makefile.inc
-EXTRA_DIST = $(TESTCASES) DISABLED CMakeLists.txt
+EXTRA_DIST = $(TESTCASES) DISABLED
all: all-am
.SUFFIXES:
@@ -511,6 +496,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/data/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/data/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -519,7 +505,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -685,8 +671,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
iall:
install:
test:
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc
index f39db40da..6467ca0bb 100644
--- a/tests/data/Makefile.inc
+++ b/tests/data/Makefile.inc
@@ -86,20 +86,18 @@ test800 test801 test802 test803 test804 test805 test806 test807 test808 \
test809 test810 test811 test812 test813 test814 test815 test816 test817 \
test818 test819 test820 test821 test822 test823 test824 test825 test826 \
test827 test828 test829 test830 test831 test832 test833 test834 test835 \
-test836 test837 test838 test839 test840 \
+test836 \
\
test850 test851 test852 test853 test854 test855 test856 test857 test858 \
test859 test860 test861 test862 test863 test864 test865 test866 test867 \
test868 test869 test870 test871 test872 test873 test874 test875 test876 \
-test877 test878 test879 test880 test881 test882 test883 test884 test885 \
-test886 \
+test877 test878 test879 test880 test881 test882 \
\
test900 test901 test902 test903 test904 test905 test906 test907 test908 \
test909 test910 test911 test912 test913 test914 test915 test916 test917 \
test918 test919 test920 test921 test922 test923 test924 test925 test926 \
test927 test928 test929 test930 test931 test932 test933 test934 test935 \
-test936 test937 test938 test939 test940 test941 test942 test943 test944 \
-test945 \
+test936 test937 test938 test939 test940 test941 \
\
test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \
@@ -117,14 +115,14 @@ test1096 test1097 test1098 test1099 test1100 test1101 test1102 test1103 \
test1104 test1105 test1106 test1107 test1108 test1109 test1110 test1111 \
test1112 test1113 test1114 test1115 test1116 test1117 test1118 test1119 \
test1120 test1121 test1122 test1123 test1124 test1125 test1126 test1127 \
-test1128 test1129 test1130 test1131 test1132 test1133 test1134 test1135 \
+test1128 test1129 test1130 test1131 test1132 test1133 test1134 \
\
test1200 test1201 test1202 test1203 test1204 test1205 test1206 test1207 \
test1208 test1209 test1210 test1211 test1212 test1213 test1214 test1215 \
test1216 test1217 test1218 test1219 \
test1220 test1221 test1222 test1223 test1224 test1225 test1226 test1227 \
test1228 test1229 test1230 test1231 test1232 test1233 test1234 test1235 \
-test1236 test1237 test1238 test1239 test1240 test1241 \
+test1236 test1237 test1238 test1239 test1240 \
\
test1300 test1301 test1302 test1303 test1304 test1305 test1306 test1307 \
test1308 test1309 test1310 test1311 test1312 test1313 test1314 test1315 \
@@ -142,8 +140,8 @@ test1396 test1397 test1398 \
\
test1400 test1401 test1402 test1403 test1404 test1405 test1406 test1407 \
test1408 test1409 test1410 test1411 test1412 test1413 test1414 test1415 \
-test1416 test1417 test1418 test1419 test1420 test1421 test1422 test1423 \
-test1424 \
+test1416 test1417 test1418 test1419 test1420 \
+\
test1428 test1429 test1430 test1431 test1432 test1433 test1434 test1435 \
test1436 \
\
@@ -153,9 +151,7 @@ test1516 \
\
test1520 \
\
-test1525 test1526 test1527 test1528 test1529 test1530 test1531 \
-\
-test1600 test1601 test1602 \
+test1525 test1526 test1527 test1528 test1529 \
\
test1800 test1801 \
\
@@ -165,5 +161,4 @@ test2000 test2001 test2002 test2003 test2004 test2005 test2006 test2007 \
test2008 test2009 test2010 test2011 test2012 test2013 test2014 test2015 \
test2016 test2017 test2018 test2019 test2020 test2021 test2022 test2023 \
test2024 test2025 test2026 test2027 test2028 test2029 test2030 test2031 \
-test2032 test2033 test2034 test2035 test2036 test2037 test2038 test2039 \
-test2040 test2041 test2042 test2043
+test2032 test2033 test2034 test2035 test2036 test2037 test2038
diff --git a/tests/data/test1001 b/tests/data/test1001
index 91b13203e..4adbd89ad 100644
--- a/tests/data/test1001
+++ b/tests/data/test1001
@@ -85,17 +85,17 @@ test
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/1001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Content-Range: bytes 2-4/5
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
GET http://%HOSTIP:%HTTPPORT/1001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1001", response="6af4d89c952f4dd4cc215a6878dc499d"
Content-Range: bytes 2-4/5
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 3
diff --git a/tests/data/test1002 b/tests/data/test1002
index 83cce6e44..4c3bf1619 100644
--- a/tests/data/test1002
+++ b/tests/data/test1002
@@ -84,17 +84,17 @@ test
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/1002.upload1 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Content-Range: bytes 2-4/5
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
GET http://%HOSTIP:%HTTPPORT/1002.upload1 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1002.upload1", response="198aa9b6acb4b0c71d02a197a5e41f54"
Content-Range: bytes 2-4/5
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 3
@@ -102,10 +102,10 @@ Expect: 100-continue
st
GET http://%HOSTIP:%HTTPPORT/1002.upload2 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/1002.upload2", response="d711f0d2042786d930de635ba0d1a1d0"
Content-Range: bytes 2-4/5
User-Agent: curl/7.16.1
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 3
diff --git a/tests/data/test1030 b/tests/data/test1030
index 5a8ed4cd6..a0f215da3 100644
--- a/tests/data/test1030
+++ b/tests/data/test1030
@@ -94,9 +94,9 @@ a second line
line three
four is the number of lines
PUT /1030 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1030", response="01cb59db1ddaac246b072d5f5f0716d9"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
Expect: 100-continue
diff --git a/tests/data/test1032 b/tests/data/test1032
index b0b6834cc..56918645e 100644
--- a/tests/data/test1032
+++ b/tests/data/test1032
@@ -47,8 +47,8 @@ HTTP HEAD with --range
</strip>
<protocol>
HEAD /1032 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=1-3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1040 b/tests/data/test1040
index e21ed8199..2466e7050 100644
--- a/tests/data/test1040
+++ b/tests/data/test1040
@@ -70,8 +70,8 @@ http://%HOSTIP:%HTTPPORT/1040 -C -
</strip>
<protocol>
GET /1040 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=100-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1041 b/tests/data/test1041
index c77d616a8..c0d23c660 100644
--- a/tests/data/test1041
+++ b/tests/data/test1041
@@ -57,8 +57,8 @@ http://%HOSTIP:%HTTPPORT/1041 -Tlog/test1041.txt -C -
# it can skip part of the file or not. Instead, it sends the entire file.
<protocol>
PUT /1041 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Content-Range: bytes 0-99/100
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 100
Expect: 100-continue
diff --git a/tests/data/test1042 b/tests/data/test1042
index dfebaa152..f9a2255e1 100644
--- a/tests/data/test1042
+++ b/tests/data/test1042
@@ -85,8 +85,8 @@ http://%HOSTIP:%HTTPPORT/1042 -C 200
</strip>
<protocol>
GET /1042 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=200-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1043 b/tests/data/test1043
index 4ab498762..f9bd1057b 100644
--- a/tests/data/test1043
+++ b/tests/data/test1043
@@ -75,8 +75,8 @@ http://%HOSTIP:%HTTPPORT/1043 -C -
</strip>
<protocol>
GET /1043 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=40-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1058 b/tests/data/test1058
index 4eb34da73..0731778e0 100644
--- a/tests/data/test1058
+++ b/tests/data/test1058
@@ -44,8 +44,8 @@ http://%HOSTIP:%HTTPPORT/want/1058 -r -101
</strip>
<protocol>
GET /want/1058 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=-101
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1071 b/tests/data/test1071
index 4352e6111..d338e2ca3 100644
--- a/tests/data/test1071
+++ b/tests/data/test1071
@@ -100,8 +100,8 @@ a second line
line three
four is the number of lines
PUT /1071 HTTP/1.0
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1071", response="df4cef6b52a30e65d472dd848d2055a1"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
diff --git a/tests/data/test1075 b/tests/data/test1075
index 4b30c593a..5b8f186a0 100644
--- a/tests/data/test1075
+++ b/tests/data/test1075
@@ -79,8 +79,8 @@ a second line
line three
four is the number of lines
PUT /1075 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
Expect: 100-continue
diff --git a/tests/data/test1079 b/tests/data/test1079
index ac7b899fb..24cd20d2e 100644
--- a/tests/data/test1079
+++ b/tests/data/test1079
@@ -67,8 +67,8 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1079 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1079", response="e340c7cdca0950462070f46ee139e9f7"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1087 b/tests/data/test1087
index d228976ac..d3bec0c84 100644
--- a/tests/data/test1087
+++ b/tests/data/test1087
@@ -95,8 +95,8 @@ Accept: */*
Proxy-Connection: Keep-Alive
GET http://first.host.it.is/we/want/that/page/10871000 HTTP/1.1
-Host: first.host.it.is
Authorization: Basic aWFtOm15c2VsZg==
+Host: first.host.it.is
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test1088 b/tests/data/test1088
index a807ce9e5..13e7d03cb 100644
--- a/tests/data/test1088
+++ b/tests/data/test1088
@@ -96,14 +96,14 @@ Accept: */*
Proxy-Connection: Keep-Alive
GET http://first.host.it.is/we/want/that/page/10881000 HTTP/1.1
-Host: first.host.it.is
Authorization: Basic aWFtOm15c2VsZg==
+Host: first.host.it.is
Accept: */*
Proxy-Connection: Keep-Alive
GET http://goto.second.host.now/10881002 HTTP/1.1
-Host: goto.second.host.now
Authorization: Basic aWFtOm15c2VsZg==
+Host: goto.second.host.now
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test1095 b/tests/data/test1095
index 6bfe54f33..a4421208e 100644
--- a/tests/data/test1095
+++ b/tests/data/test1095
@@ -74,9 +74,9 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1095 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="test \"this\" realm!!", nonce="1053604145", uri="/1095", response="a1c7931ece9e8617bae2715045e4f49f"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1100 b/tests/data/test1100
index cd6169181..10fa25d45 100644
--- a/tests/data/test1100
+++ b/tests/data/test1100
@@ -93,24 +93,24 @@ chkhostname curlhost
</strip>
<protocol>
POST /1100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST /1100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 18
Content-Type: application/x-www-form-urlencoded
stuff to send awayGET /1100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.19.5-CVS (i686-pc-linux-gnu) libcurl/7.19.5-CVS GnuTLS/2.6.6 zlib/1.2.3.3 c-ares/1.6.1-CVS libidn/1.14 libssh2/1.1
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1101 b/tests/data/test1101
index 75c66195e..63887c4bb 100644
--- a/tests/data/test1101
+++ b/tests/data/test1101
@@ -45,8 +45,8 @@ http://user:secret@%HOSTIP:%HTTPPORT/gimme/1101
</strip>
<protocol>
GET /gimme/1101 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dXNlcjpzZWNyZXQ=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1117 b/tests/data/test1117
index 963f1efec..5b696112b 100644
--- a/tests/data/test1117
+++ b/tests/data/test1117
@@ -73,13 +73,13 @@ partial body
</strip>
<protocol>
GET /want/1117 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=10-22
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /wantmore/11170001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=10-22
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1121 b/tests/data/test1121
index 405066ff6..e704e05fa 100644
--- a/tests/data/test1121
+++ b/tests/data/test1121
@@ -39,8 +39,10 @@ HTTP multiple provided Host: headers
</strip>
<protocol>
GET /1121 HTTP/1.1
-Host: host1
Accept: */*
+Host: host1
+Host: host2
+Host: host3
</protocol>
</verify>
diff --git a/tests/data/test1134 b/tests/data/test1134
index e290b5369..f8db6ebd2 100644
--- a/tests/data/test1134
+++ b/tests/data/test1134
@@ -50,13 +50,13 @@ http://%HOSTIP:%HTTPPORT/1134 -u user1:password1 --next http://%HOSTIP:%HTTPPORT
</strip>
<protocol>
GET /1134 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dXNlcjE6cGFzc3dvcmQx
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /11340001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic MnVzZXI6cGFzc3dvcmQy
+Host: %HOSTIP:%HTTPPORT
Accept: */*
[DISCONNECT]
diff --git a/tests/data/test1135 b/tests/data/test1135
deleted file mode 100644
index 960aade8d..000000000
--- a/tests/data/test1135
+++ /dev/null
@@ -1,95 +0,0 @@
-<testcase>
-<info>
-<keywords>
-source analysis
-CURL_EXTERN
-</keywords>
-</info>
-
-#
-# Client-side
-<client>
-<server>
-none
-</server>
-
-# The VMS and OS/400 builds extract the CURL_EXTERN protos and use in
-# the build. We break binary compatibility by changing order. Only add
-# new entries last or bump the SONAME.
-#
- <name>
-Verify CURL_EXTERN order
- </name>
-
-<command type="perl">
-%SRCDIR/extern-scan.pl %SRCDIR/..
-</command>
-</client>
-
-<verify>
-<stdout>
-CURL_EXTERN int (curl_strequal)(const char *s1, const char *s2);
-CURL_EXTERN int (curl_strnequal)(const char *s1, const char *s2, size_t n);
-CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost,
-CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg,
-CURL_EXTERN void curl_formfree(struct curl_httppost *form);
-CURL_EXTERN char *curl_getenv(const char *variable);
-CURL_EXTERN char *curl_version(void);
-CURL_EXTERN char *curl_easy_escape(CURL *handle,
-CURL_EXTERN char *curl_escape(const char *string,
-CURL_EXTERN char *curl_easy_unescape(CURL *handle,
-CURL_EXTERN char *curl_unescape(const char *string,
-CURL_EXTERN void curl_free(void *p);
-CURL_EXTERN CURLcode curl_global_init(long flags);
-CURL_EXTERN CURLcode curl_global_init_mem(long flags,
-CURL_EXTERN void curl_global_cleanup(void);
-CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *,
-CURL_EXTERN void curl_slist_free_all(struct curl_slist *);
-CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused);
-CURL_EXTERN CURLSH *curl_share_init(void);
-CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...);
-CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *);
-CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion);
-CURL_EXTERN const char *curl_easy_strerror(CURLcode);
-CURL_EXTERN const char *curl_share_strerror(CURLSHcode);
-CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask);
-CURL_EXTERN CURL *curl_easy_init(void);
-CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...);
-CURL_EXTERN CURLcode curl_easy_perform(CURL *curl);
-CURL_EXTERN void curl_easy_cleanup(CURL *curl);
-CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...);
-CURL_EXTERN CURL* curl_easy_duphandle(CURL *curl);
-CURL_EXTERN void curl_easy_reset(CURL *curl);
-CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen,
-CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer,
-CURL_EXTERN int curl_mprintf(const char *format, ...);
-CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...);
-CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...);
-CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength,
-CURL_EXTERN int curl_mvprintf(const char *format, va_list args);
-CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args);
-CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args);
-CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength,
-CURL_EXTERN char *curl_maprintf(const char *format, ...);
-CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args);
-CURL_EXTERN CURLM *curl_multi_init(void);
-CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_wait(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle);
-CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle,
-CURL_EXTERN const char *curl_multi_strerror(CURLMcode);
-CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s,
-CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle,
-CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle,
-CURL_EXTERN char *curl_pushheader_bynum(struct curl_pushheaders *h,
-CURL_EXTERN char *curl_pushheader_byname(struct curl_pushheaders *h,
-</stdout>
-</verify>
-
-</testcase>
diff --git a/tests/data/test12 b/tests/data/test12
index 06dbdf56f..95b891aca 100644
--- a/tests/data/test12
+++ b/tests/data/test12
@@ -47,8 +47,8 @@ http://%HOSTIP:%HTTPPORT/want/12 -r 100-200
</strip>
<protocol>
GET /want/12 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=100-200
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1204 b/tests/data/test1204
index d2f06b68e..02502fb8e 100644
--- a/tests/data/test1204
+++ b/tests/data/test1204
@@ -70,8 +70,8 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1204 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1212 b/tests/data/test1212
index a50601f78..3fd8fdd85 100644
--- a/tests/data/test1212
+++ b/tests/data/test1212
@@ -42,8 +42,8 @@ http://user:secret@%HOSTIP:%HTTPPORT/ulion/1212 --socks5 non-existing-host.haxx.
</strip>
<protocol>
GET /ulion/1212 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dXNlcjpzZWNyZXQ=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1215 b/tests/data/test1215
index f8c52a9a1..d49f71f53 100644
--- a/tests/data/test1215
+++ b/tests/data/test1215
@@ -88,16 +88,16 @@ chkhostname curlhost
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.30.0-DEV
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
GET http://%HOSTIP:%HTTPPORT/1215 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.30.0-DEV
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test1229 b/tests/data/test1229
index 225ba3cc4..77e7e8cc7 100644
--- a/tests/data/test1229
+++ b/tests/data/test1229
@@ -74,8 +74,8 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1229 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="\\user\"", realm="testrealm", nonce="1053604145", uri="/1229", response="f2694d426040712584c156d3de72b8d6"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1237 b/tests/data/test1237
index 21da17dcf..68f023d38 100644
--- a/tests/data/test1237
+++ b/tests/data/test1237
@@ -38,8 +38,8 @@ URL with 1000+ letter user name + password
</strip>
<protocol>
GET /1237 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic QUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQTpCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJCQkI=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1241 b/tests/data/test1241
deleted file mode 100644
index aaa568868..000000000
--- a/tests/data/test1241
+++ /dev/null
@@ -1,64 +0,0 @@
-<testcase>
-<info>
-# verify that dotdot removal can be disabled!
-<keywords>
-HTTP
-HTTP GET
-HTTP proxy
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<data>
-HTTP/1.1 200 OK
-Content-Length: 6
-Connection: close
-
--foo-
-</data>
-
-<data1>
-HTTP/1.1 200 OK
-Content-Length: 7
-Connection: close
-
--cool-
-</data1>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-http
-</server>
- <name>
-HTTP _without_ dotdot removal
- </name>
- <command>
---path-as-is --proxy http://%HOSTIP:%HTTPPORT http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241#soo/../1241 http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001#/../12410001
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET http://test.remote.haxx.se.1241:8990/../../hej/but/who/../1241?stupid=me/../1241 HTTP/1.1
-Host: test.remote.haxx.se.1241:8990
-Accept: */*
-Proxy-Connection: Keep-Alive
-
-GET http://test.remote.haxx.se.1241:8990/../../hej/but/who/../12410001 HTTP/1.1
-Host: test.remote.haxx.se.1241:8990
-Accept: */*
-Proxy-Connection: Keep-Alive
-
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test130 b/tests/data/test130
index 6e6d9c164..827b1a0a2 100644
--- a/tests/data/test130
+++ b/tests/data/test130
@@ -43,7 +43,6 @@ FTP (optional .netrc; no user/pass) dir list PASV
# the following two lines were created while testing curl
machine %HOSTIP login user1 password passwd1
machine %HOSTIP login user2 password passwd2
-default login userdef password passwddef
</file>
</client>
diff --git a/tests/data/test1310 b/tests/data/test1310
index 9ffe0d586..840f3c5fa 100644
--- a/tests/data/test1310
+++ b/tests/data/test1310
@@ -91,15 +91,15 @@ chkhostname curlhost
</strip>
<protocol>
GET /1310 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAAAAwAAAA
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1310 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAE8AAAAYABgAZwAAAAAAAABAAAAACAAIAEAAAAAHAAcASAAAAAAAAAAAAAAAggEAAHRlc3R1c2VyVU5LTk9XTlpkQwKRCZFMhjj0tw47wEjKHRHlvzfxQamFcheMuv8v+xeqphEO5V41xRd7R9deOQ==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1331 b/tests/data/test1331
index 3299df469..689685692 100644
--- a/tests/data/test1331
+++ b/tests/data/test1331
@@ -78,8 +78,8 @@ Accept: */*
Proxy-Connection: Keep-Alive
GET http://z.x.com/1331 HTTP/1.1
-Host: z.x.com
Proxy-Authorization: Basic bXluYW1lOm15cGFzc3dvcmQ=
+Host: z.x.com
Accept: */*
Proxy-Connection: Keep-Alive
Cookie: proxycookie=weirdo
diff --git a/tests/data/test1401 b/tests/data/test1401
index d10cac26d..e709c8e08 100644
--- a/tests/data/test1401
+++ b/tests/data/test1401
@@ -43,9 +43,9 @@ http://%HOSTIP:%HTTPPORT/we/want/1401 --libcurl log/test1401.c --basic -u fake:u
</strip>
<protocol>
GET /we/want/1401 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: stripped
Authorization: Basic ZmFrZTp1c2Vy
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Cookie: chocolate=chip
X-Files: Mulder
diff --git a/tests/data/test1412 b/tests/data/test1412
index ae63290e9..971aac865 100644
--- a/tests/data/test1412
+++ b/tests/data/test1412
@@ -102,15 +102,15 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1412 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/1412", response="0390dbe89e31adca0413d11f91f30e7f"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /14120001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/14120001", response="0085df91870374c8bf4e94415e7fbf8e"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1418 b/tests/data/test1418
index b3a2f23b2..de133af34 100644
--- a/tests/data/test1418
+++ b/tests/data/test1418
@@ -93,13 +93,13 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1418 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/1418", response="986238b7e0077754944c966f56d9bc77"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /14180003 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="loonie", nonce="314156592", uri="/14180003", response="1c6390a67bac3283a9b023402f3b3540"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
[DISCONNECT]
diff --git a/tests/data/test1421 b/tests/data/test1421
deleted file mode 100644
index 6c59b2160..000000000
--- a/tests/data/test1421
+++ /dev/null
@@ -1,72 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTP
-HTTP GET
-HTTP proxy
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<data nocheck="yes">
-HTTP/1.1 200 OK
-Uknown-header: blrub
-Content-Length: 6
-
--foo-
-</data>
-
-<servercmd>
-connection-monitor
-</servercmd>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-http
-</server>
- <name>
-Re-using HTTP proxy connection for two different host names
- </name>
- <command>
---proxy http://%HOSTIP:%HTTPPORT http://test.remote.haxx.se.1421:8990/ http://different.remote.haxx.se.1421:8990
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<stdout>
-HTTP/1.1 200 OK
-Uknown-header: blrub
-Content-Length: 6
-
--foo-
-HTTP/1.1 200 OK
-Uknown-header: blrub
-Content-Length: 6
-
--foo-
-</stdout>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET http://test.remote.haxx.se.1421:8990/ HTTP/1.1
-Host: test.remote.haxx.se.1421:8990
-Accept: */*
-Proxy-Connection: Keep-Alive
-
-GET http://different.remote.haxx.se.1421:8990/ HTTP/1.1
-Host: different.remote.haxx.se.1421:8990
-Accept: */*
-Proxy-Connection: Keep-Alive
-
-[DISCONNECT]
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test1422 b/tests/data/test1422
deleted file mode 100644
index 9b436cc4e..000000000
--- a/tests/data/test1422
+++ /dev/null
@@ -1,63 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTP
-HTTP GET
--J
-</keywords>
-</info>
-
-#
-<reply>
-<data nocheck="yes">
-HTTP/1.1 200 OK
-Date: Thu, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Content-Length: 0
-Connection: close
-Content-Type: text/html
-Content-Disposition: filename=name1422; charset=funny; option=strange
-
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-# this relies on the debug feature to allow us to set directory to store the
-# -O and -J output in, using the CURL_TESTDIR variable
-<features>
-debug
-</features>
-<server>
-http
-</server>
-<name>
-HTTP GET with -O -J and Content-Disposition (empty file)
-</name>
-<setenv>
-CURL_TESTDIR=%PWD/log
-</setenv>
-<command option="no-output,no-include">
-http://%HOSTIP:%HTTPPORT/1422 -J -O file://%PWD/log/name1422
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET /1422 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
-Accept: */*
-
-</protocol>
-
-<file1 name="log/name1422">
-</file1>
-
-</verify>
-</testcase>
diff --git a/tests/data/test1423 b/tests/data/test1423
deleted file mode 100644
index 908ff8c29..000000000
--- a/tests/data/test1423
+++ /dev/null
@@ -1,57 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTP
-HTTP GET
-</keywords>
-</info>
-
-#
-<reply>
-<data nocheck="yes">
-HTTP/1.1 200 OK
-Date: Thu, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Content-Length: 0
-Connection: close
-Content-Type: text/html
-
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-http
-file
-</server>
-<name>
-HTTP GET -o fname without Content-Disposition (empty file)
-</name>
-<command option="no-output,no-include">
-http://%HOSTIP:%HTTPPORT/1423 -o log/outfile1423 file://%PWD/log/outfile1423
-</command>
-<postcheck>
-perl %SRCDIR/libtest/notexists.pl log/1423
-</postcheck>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET /1423 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
-Accept: */*
-
-</protocol>
-
-<file1 name="log/outfile1423">
-</file1>
-
-</verify>
-</testcase>
diff --git a/tests/data/test1424 b/tests/data/test1424
deleted file mode 100644
index 17bc46a1d..000000000
--- a/tests/data/test1424
+++ /dev/null
@@ -1,76 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTP
-HTTP GET
-If-Modified-Since
--z
-</keywords>
-</info>
-#
-# Server-side
-<reply>
-<data nocheck="yes">
-HTTP/1.1 200 OK
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
--foo-
-</data>
-<datacheck>
-HTTP/1.1 200 OK
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 1990 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
-</datacheck>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-http
-</server>
-<name>
-HTTP GET -o fname without Content-Disposition (unmet time condition)
-</name>
-<file name="log/outfile1424">
-original contents
-</file>
-<command option="no-output,no-include">
-http://%HOSTIP:%HTTPPORT/1424 -z "dec 12 11:00:00 1999 GMT" -o log/outfile1424
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET /1424 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
-Accept: */*
-If-Modified-Since: Sun, 12 Dec 1999 11:00:00 GMT
-
-</protocol>
-
-<file1 name="log/outfile1424">
-original contents
-</file1>
-
-</verify>
-</testcase>
diff --git a/tests/data/test1428 b/tests/data/test1428
index 59041ec96..f976569ef 100644
--- a/tests/data/test1428
+++ b/tests/data/test1428
@@ -62,17 +62,17 @@ http://test.1428:%HTTPPORT/we/want/that/page/1428 -p -x %HOSTIP:%PROXYPORT --use
</strip>
<proxy>
CONNECT test.1428:%HTTPPORT HTTP/1.1
-Host: test.1428:%HTTPPORT
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: test.1428:%HTTPPORT
Proxy-Connection: Keep-Alive
header-type: proxy
</proxy>
<protocol>
GET /we/want/that/page/1428 HTTP/1.1
-Host: test.1428:%HTTPPORT
Authorization: Basic aWFtOm15OjtzZWxm
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: test.1428:%HTTPPORT
Accept: */*
header-type: server
diff --git a/tests/data/test1434 b/tests/data/test1434
index 0b33bb958..fba104b83 100644
--- a/tests/data/test1434
+++ b/tests/data/test1434
@@ -81,8 +81,8 @@ http://%HOSTIP:%HTTPPORT/1434 -C 100
</strip>
<protocol>
GET /1434 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=100-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test150 b/tests/data/test150
index 69c5835c6..f846fd079 100644
--- a/tests/data/test150
+++ b/tests/data/test150
@@ -87,15 +87,15 @@ chkhostname curlhost
</strip>
<protocol>
GET /150 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /150 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1510 b/tests/data/test1510
index 2767f600d..fdf6c7dbd 100644
--- a/tests/data/test1510
+++ b/tests/data/test1510
@@ -3,7 +3,6 @@
<keywords>
HTTP
verbose logs
-flaky
</keywords>
</info>
diff --git a/tests/data/test1513 b/tests/data/test1513
index 8abb96fa6..4a63f1806 100644
--- a/tests/data/test1513
+++ b/tests/data/test1513
@@ -7,20 +7,16 @@ PROGRESSFUNCTION
# Server-side
<reply>
-<data nocheck="yes">
-HTTP/1.1 204 PARTIAL
-X-Comment: partial response to keep the client waiting
-</data>
-<postcmd>
-wait 10
-</postcmd>
</reply>
# Client-side
<client>
<server>
-http
+none
</server>
+<features>
+http
+</features>
<tool>
lib1513
</tool>
@@ -30,7 +26,7 @@ return failure immediately from progress callback
# this server/host won't be used for real
<command>
-http://%HOSTIP:%HTTPPORT/1513
+http://localhost/1513
</command>
</client>
diff --git a/tests/data/test1527 b/tests/data/test1527
index e8d52794b..ee4887ac5 100644
--- a/tests/data/test1527
+++ b/tests/data/test1527
@@ -45,7 +45,7 @@ http-proxy
lib1527
</tool>
<name>
-Check same headers are generated with CURLOPT_HEADEROPT == CURLHEADER_UNIFIED
+Check same headers are generated without CURLOPT_PROXYHEADER
</name>
<command>
http://the.old.moo.1527:%HTTPPORT/1527 %HOSTIP:%PROXYPORT
diff --git a/tests/data/test153 b/tests/data/test153
index fc1d812de..89560f81a 100644
--- a/tests/data/test153
+++ b/tests/data/test153
@@ -86,21 +86,21 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1530001 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530001", response="f4f83139396995bac665f24a1f1055c7"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1530002 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/1530002", response="f84511b014fdd0ba6494f42871079c32"
User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /1530002 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="999999", uri="/1530002", cnonce="MTA4MzIy", nc="00000001", qop="auth", response="25291c357671604a16c0242f56721c07", algorithm="MD5"
User-Agent: curl/7.11.0-CVS (i686-pc-linux-gnu) libcurl/7.11.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1530 b/tests/data/test1530
deleted file mode 100644
index 8372d29ef..000000000
--- a/tests/data/test1530
+++ /dev/null
@@ -1,30 +0,0 @@
-<testcase>
-<info>
-<keywords>
-CURLOPT_OPENSOCKETFUNCTION
-</keywords>
-</info>
-
-<client>
-<server>
-none
-</server>
-<features>
-http
-</features>
-<tool>
-lib1530
-</tool>
- <name>
-CURLOPT_OPENSOCKETFUNCTION returns bad socket
- </name>
-</client>
-
-# it should be detected and an error should be reported
-<verify>
-# 7 == CURLE_COULDNT_CONNECT
-<errorcode>
-7
-</errorcode>
-</verify>
-</testcase>
diff --git a/tests/data/test1531 b/tests/data/test1531
deleted file mode 100644
index d58deb6e0..000000000
--- a/tests/data/test1531
+++ /dev/null
Binary files differ
diff --git a/tests/data/test154 b/tests/data/test154
index 3d693f4b3..aa7989ef7 100644
--- a/tests/data/test154
+++ b/tests/data/test154
@@ -93,9 +93,9 @@ Content-Length: 85
Expect: 100-continue
PUT /154 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="gimme all yer s3cr3ts", nonce="11223344", uri="/154", response="b71551e12d1c456e47d8388ecb2edeca"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
Expect: 100-continue
diff --git a/tests/data/test155 b/tests/data/test155
index 46f890fca..4e0870afa 100644
--- a/tests/data/test155
+++ b/tests/data/test155
@@ -118,15 +118,15 @@ Content-Length: 85
Expect: 100-continue
PUT /155 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 0
PUT /155 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
Expect: 100-continue
diff --git a/tests/data/test159 b/tests/data/test159
index 5a062176e..e05ceef27 100644
--- a/tests/data/test159
+++ b/tests/data/test159
@@ -21,20 +21,34 @@ Server: Microsoft-IIS/5.0
Content-Type: text/html; charset=iso-8859-1
Content-Length: 34
WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
-Connection: close
This is not the real page either!
</data1001>
+# This is supposed to be returned when the server gets the second
+# Authorization: NTLM line passed-in from the client
+<data1002>
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
+</data1002>
+
<datacheck>
HTTP/1.1 401 Now gimme that second request of crap
Server: Microsoft-IIS/5.0
Content-Type: text/html; charset=iso-8859-1
Content-Length: 34
WWW-Authenticate: NTLM TlRMTVNTUAACAAAAAgACADAAAAAGgoEAc51AYVDgyNcAAAAAAAAAAG4AbgAyAAAAQ0MCAAQAQwBDAAEAEgBFAEwASQBTAEEAQgBFAFQASAAEABgAYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAwAsAGUAbABpAHMAYQBiAGUAdABoAC4AYwBjAC4AaQBjAGUAZABlAHYALgBuAHUAAAAAAA==
-Connection: close
-This is not the real page either!
+HTTP/1.1 200 Things are fine in server land swsclose
+Server: Microsoft-IIS/5.0
+Content-Type: text/html; charset=iso-8859-1
+Content-Length: 32
+
+Finally, this is the real page!
</datacheck>
</reply>
@@ -50,7 +64,7 @@ debug
http
</server>
<name>
-HTTP with NTLM authorization when talking HTTP/1.0 (known to fail)
+HTTP with NTLM authorization when talking HTTP/1.0
</name>
<setenv>
# we force our own host name, in order to make the test machine independent
@@ -73,9 +87,15 @@ chkhostname curlhost
</strip>
<protocol>
GET /159 HTTP/1.0
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
+Accept: */*
+
+GET /159 HTTP/1.0
+Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
+User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test16 b/tests/data/test16
index 5cbde59ad..98539bebd 100644
--- a/tests/data/test16
+++ b/tests/data/test16
@@ -42,8 +42,8 @@ HTTP with proxy authorization
</strip>
<protocol>
GET http://we.want.that.site.com/16 HTTP/1.1
-Host: we.want.that.site.com
Proxy-Authorization: Basic ZmFrZUB1c2VyOqenp2xvb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29vb29uZw==
+Host: we.want.that.site.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test1600 b/tests/data/test1600
deleted file mode 100644
index 88040747a..000000000
--- a/tests/data/test1600
+++ /dev/null
@@ -1,27 +0,0 @@
-<testcase>
-<info>
-<keywords>
-unittest
-NTLM
-</keywords>
-</info>
-
-#
-# Client-side
-<client>
-<server>
-none
-</server>
-<features>
-unittest
-NTLM
-</features>
- <name>
-NTLM unit tests
- </name>
-<tool>
-unit1600
-</tool>
-</client>
-
-</testcase>
diff --git a/tests/data/test1601 b/tests/data/test1601
deleted file mode 100644
index 125493bb0..000000000
--- a/tests/data/test1601
+++ /dev/null
@@ -1,26 +0,0 @@
-<testcase>
-<info>
-<keywords>
-unittest
-MD5
-</keywords>
-</info>
-
-#
-# Client-side
-<client>
-<server>
-none
-</server>
-<features>
-unittest
-</features>
- <name>
-MD5 unit tests
- </name>
-<tool>
-unit1601
-</tool>
-</client>
-
-</testcase>
diff --git a/tests/data/test1602 b/tests/data/test1602
deleted file mode 100644
index 4717058ce..000000000
--- a/tests/data/test1602
+++ /dev/null
@@ -1,26 +0,0 @@
-<testcase>
-<info>
-<keywords>
-unittest
-hash
-</keywords>
-</info>
-
-#
-# Client-side
-<client>
-<server>
-none
-</server>
-<features>
-unittest
-</features>
- <name>
-Internal hash create/add/destroy testing, exercising clean functions
- </name>
-<tool>
-unit1602
-</tool>
-</client>
-
-</testcase>
diff --git a/tests/data/test162 b/tests/data/test162
index ee2f40aa7..828c2a5e6 100644
--- a/tests/data/test162
+++ b/tests/data/test162
@@ -47,9 +47,9 @@ http://%HOSTIP:%HTTPPORT/162 --proxy http://%HOSTIP:%HTTPPORT --proxy-user foo:b
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/162 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled)
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test164 b/tests/data/test164
index 9240611dd..227bd7170 100644
--- a/tests/data/test164
+++ b/tests/data/test164
@@ -59,8 +59,8 @@ http://%HOSTIP:%HTTPPORT/want/164 -r 0-10,12-15
</strip>
<protocol>
GET /want/164 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=0-10,12-15
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test167 b/tests/data/test167
index 0b14996a3..550803a4d 100644
--- a/tests/data/test167
+++ b/tests/data/test167
@@ -61,17 +61,17 @@ http://data.from.server.requiring.digest.hohoho.com/167 --proxy http://%HOSTIP:%
</strip>
<protocol>
GET http://data.from.server.requiring.digest.hohoho.com/167 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: Basic Zm9vOmJhcg==
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://data.from.server.requiring.digest.hohoho.com/167 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: Basic Zm9vOmJhcg==
Authorization: Digest username="digest", realm="weirdorealm", nonce="12345", uri="/167", response="13c7c02a252cbe1c46d8669898a3be26"
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test168 b/tests/data/test168
index 20e0b6d9c..e46b726e4 100644
--- a/tests/data/test168
+++ b/tests/data/test168
@@ -75,23 +75,23 @@ http://data.from.server.requiring.digest.hohoho.com/168 --proxy http://%HOSTIP:%
</strip>
<protocol>
GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976"
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b zlib/1.1.4 c-ares/1.2.0 libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://data.from.server.requiring.digest.hohoho.com/168 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: Digest username="foo", realm="weirdorealm", nonce="12345", uri="/168", response="fb8608e00ad9239a3dedb14bc8575976"
Authorization: Digest username="digest", realm="realmweirdo", nonce="123456", uri="/168", response="ca87f2d768a231e2d637a55698d5c416"
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test169 b/tests/data/test169
index 73ca9bd20..f236a8900 100644
--- a/tests/data/test169
+++ b/tests/data/test169
@@ -104,23 +104,23 @@ chkhostname curlhost
</strip>
<protocol>
GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://data.from.server.requiring.digest.hohoho.com/169 HTTP/1.1
-Host: data.from.server.requiring.digest.hohoho.com
Authorization: Digest username="digest", realm="r e a l m", nonce="abcdef", uri="/169", response="95d48591985a03c4b49cb962aa7bd3e6"
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.3
+Host: data.from.server.requiring.digest.hohoho.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test17 b/tests/data/test17
index de03c1de0..259580bf5 100644
--- a/tests/data/test17
+++ b/tests/data/test17
@@ -45,8 +45,8 @@ request MOOO
<verify>
<protocol>
MOOO /that.site.com/17 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: agent007 license to drill
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test170 b/tests/data/test170
index 8ce7774f9..f0e596b79 100644
--- a/tests/data/test170
+++ b/tests/data/test170
@@ -36,9 +36,9 @@ http://a.galaxy.far.far.away/170 --proxy http://%HOSTIP:%HTTPPORT --proxy-user f
</strip>
<protocol>
POST http://a.galaxy.far.far.away/170 HTTP/1.1
-Host: a.galaxy.far.far.away
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.12.0-CVS (i686-pc-linux-gnu) libcurl/7.12.0-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 libidn/0.4.3
+Host: a.galaxy.far.far.away
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
diff --git a/tests/data/test176 b/tests/data/test176
index 73c53ca87..ffff82c2c 100644
--- a/tests/data/test176
+++ b/tests/data/test176
@@ -68,16 +68,16 @@ http://%HOSTIP:%HTTPPORT/176 -u auser:apasswd --ntlm -d "junkelijunk"
</strip>
<protocol nonewline="yes">
POST /176 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST /176 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 11
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test1801 b/tests/data/test1801
index 0aedfed51..3e069f585 100644
--- a/tests/data/test1801
+++ b/tests/data/test1801
@@ -23,6 +23,7 @@ lies!
<datacheck>
HTTP/1.1 101 Switching!
+
</datacheck>
# listen to the upgrade request!
@@ -61,9 +62,5 @@ Upgrade: %H2CVER
HTTP2-Settings: AAMAAABkAAQAAP__
</protocol>
-# CURLE_HTTP2: Send failure: Broken pipe
-<errorcode>
-16
-</errorcode>
</verify>
</testcase>
diff --git a/tests/data/test184 b/tests/data/test184
index 8b09dde28..e42a393ea 100644
--- a/tests/data/test184
+++ b/tests/data/test184
@@ -59,10 +59,10 @@ http://deathstar.another.galaxy/184 -L -H "Host: another.visitor.stay.a.while.st
</strip>
<protocol>
GET http://deathstar.another.galaxy/184 HTTP/1.1
-Host: another.visitor.stay.a.while.stay.foreeeeeever
User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6
Accept: */*
Proxy-Connection: Keep-Alive
+Host: another.visitor.stay.a.while.stay.foreeeeeever
GET http://yet.another.host/184 HTTP/1.1
Host: yet.another.host
diff --git a/tests/data/test185 b/tests/data/test185
index 298dd49ce..01a66f6db 100644
--- a/tests/data/test185
+++ b/tests/data/test185
@@ -59,15 +59,15 @@ http://deathstar.another.galaxy/185 -L -H "Host: another.visitor.stay.a.while.st
</strip>
<protocol>
GET http://deathstar.another.galaxy/185 HTTP/1.1
-Host: another.visitor.stay.a.while.stay.foreeeeeever
User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.6b zlib/1.1.4 libidn/0.4.6
Accept: */*
Proxy-Connection: Keep-Alive
+Host: another.visitor.stay.a.while.stay.foreeeeeever
GET http://deathstar.another.galaxy/go/west/185 HTTP/1.1
-Host: another.visitor.stay.a.while.stay.foreeeeeever
Accept: */*
Proxy-Connection: Keep-Alive
+Host: another.visitor.stay.a.while.stay.foreeeeeever
</protocol>
diff --git a/tests/data/test188 b/tests/data/test188
index a23a2a11e..030354414 100644
--- a/tests/data/test188
+++ b/tests/data/test188
@@ -62,15 +62,15 @@ http://%HOSTIP:%HTTPPORT/188 -C 50 -L
</strip>
<protocol>
GET /188 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=50-
User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /188 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=50-
User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.7d zlib/1.2.1.2 libidn/0.5.2
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test189 b/tests/data/test189
index f82b4ad90..deb6e894e 100644
--- a/tests/data/test189
+++ b/tests/data/test189
@@ -56,15 +56,15 @@ http://%HOSTIP:%HTTPPORT/189 -C 50 -L
</strip>
<protocol>
GET /189 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=50-
User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /189 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=50-
User-Agent: curl/7.12.2-CVS (i686-pc-linux-gnu) libcurl/7.12.2-CVS OpenSSL/0.9.7d zlib/1.2.1.2 libidn/0.5.2
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test1902 b/tests/data/test1902
index 533ed55a8..555b4863b 100644
--- a/tests/data/test1902
+++ b/tests/data/test1902
@@ -48,11 +48,11 @@ http://%HOSTIP:%HTTPPIPEPORT/
<file name="log/urls.txt">
0 1k.txt
1000 connection_close.txt
-1 1k.txt
-2 1k.txt
-3 1k.txt
-4 1k.txt
-5 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
+0 1k.txt
</file>
</client>
diff --git a/tests/data/test194 b/tests/data/test194
index 730446f79..26f7f17bb 100644
--- a/tests/data/test194
+++ b/tests/data/test194
@@ -60,8 +60,8 @@ http://%HOSTIP:%HTTPPORT/want/194 -C 87 --fail
</strip>
<protocol>
GET /want/194 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=87-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2 b/tests/data/test2
index 9f9c50618..22b4f1860 100644
--- a/tests/data/test2
+++ b/tests/data/test2
@@ -41,8 +41,8 @@ HTTP GET with user and password
</strip>
<protocol>
GET /2 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic ZmFrZTp1c2Vy
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2023 b/tests/data/test2023
index 382b6cb8a..9b04ff3dd 100644
--- a/tests/data/test2023
+++ b/tests/data/test2023
@@ -133,28 +133,28 @@ chkhostname curlhost
</strip>
<protocol>
GET /20230100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20230200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20230300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20230400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20230500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2024 b/tests/data/test2024
index cd06b7c9f..9c155a2ef 100644
--- a/tests/data/test2024
+++ b/tests/data/test2024
@@ -147,28 +147,28 @@ chkhostname curlhost
</strip>
<protocol>
GET /20240100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20240200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20240200", response="ed646c565f79e2dd9fa37cb5a621213c"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20240300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20240400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20240400", response="9741ced8caacc6124770187b36f007c5"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20240500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/20240500", response="5bc77ec8c2d443b27a1b55f1fd8fbb13"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2025 b/tests/data/test2025
index 1eae4826d..03b6b1417 100644
--- a/tests/data/test2025
+++ b/tests/data/test2025
@@ -228,43 +228,43 @@ chkhostname curlhost
</strip>
<protocol>
GET /20250100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20250500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2026 b/tests/data/test2026
index afbd4f31e..b1d234115 100644
--- a/tests/data/test2026
+++ b/tests/data/test2026
@@ -187,13 +187,13 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20260100", response="5f992a2e761ab926256419f7c685f85b"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260300 HTTP/1.1
@@ -201,18 +201,18 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="3", uri="/20260300", response="132242e602882251929be93228c830ae"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20260500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2027 b/tests/data/test2027
index 3302a155d..e9a62d64f 100644
--- a/tests/data/test2027
+++ b/tests/data/test2027
@@ -210,13 +210,13 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20270100", response="f7fd60eefaff5225971bf9b3d80d6ba6"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20270200", response="785ca3ef511999f7e9c178195f5b388c"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270300 HTTP/1.1
@@ -224,23 +224,23 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/20270300", response="4c735d2360fd6848e7cb32a11ae3612b"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20270400", response="f5906785511fb60a2af8b1cd53008ead"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20270500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20270500", response="8ef4d935fd964a46c3965c0863b52cf1"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2028 b/tests/data/test2028
index 1ae1faeaf..2a03836b3 100644
--- a/tests/data/test2028
+++ b/tests/data/test2028
@@ -268,18 +268,18 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1", uri="/20280100", response="53c80666f5e3a4a55f92a66aaf0078bb"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280300 HTTP/1.1
@@ -287,28 +287,28 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="4", uri="/20280300", response="1aa5d90da9803ca12d04b24e0f19476e"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20280500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2029 b/tests/data/test2029
index 42866a31b..7c697e3d4 100644
--- a/tests/data/test2029
+++ b/tests/data/test2029
@@ -201,38 +201,38 @@ chkhostname curlhost
</strip>
<protocol>
GET /20290100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6d3JvbmdwYXNz
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20290500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2030 b/tests/data/test2030
index 5c2754c19..a80c15ece 100644
--- a/tests/data/test2030
+++ b/tests/data/test2030
@@ -253,43 +253,43 @@ chkhostname curlhost
</strip>
<protocol>
GET /20300100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="2", uri="/20300200", response="2f2d784ba53a0a307758a90e98d25c27"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="5", uri="/20300400", response="d6262e9147db08c62ff2f53b515861e8"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20300500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="7", uri="/20300500", response="198757e61163a779cf24ed4c49c1ad7d"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2031 b/tests/data/test2031
index bd5aa0745..0df841b77 100644
--- a/tests/data/test2031
+++ b/tests/data/test2031
@@ -267,53 +267,53 @@ chkhostname curlhost
</strip>
<protocol>
GET /20310100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310300 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310400 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBANgKEcT5xUUBHw5+0m4FjWTGNzg6PeHJHbaPwNwCt/tXcnIeTQCTMAg12SPDyNXMf3Rlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /20310500 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2032 b/tests/data/test2032
index f708665e6..23f44e638 100644
--- a/tests/data/test2032
+++ b/tests/data/test2032
@@ -123,23 +123,23 @@ chkhostname curlhost
</strip>
<protocol>
GET /20320100 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320100 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320200 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320200 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2033 b/tests/data/test2033
index 6c41700a6..aacbe5e08 100644
--- a/tests/data/test2033
+++ b/tests/data/test2033
@@ -124,23 +124,23 @@ chkhostname curlhost
</strip>
<protocol>
GET /20320100 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320100 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320200 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
GET /20320200 HTTP/1.1
-Host: 127.0.0.1:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAAAYABgAWAAAAAAAAABwAAAACAAIAHAAAAAIAAgAeAAAAAAAAAAAAAAABoIBAI+/Fp9IERAQ74OsdNPbBpg7o8CVwLSO4DtFyIcZHUMKVktWIu92s2892OVpd2JzqnRlc3R1c2VyY3VybGhvc3Q=
+Host: 127.0.0.1:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test2039 b/tests/data/test2039
deleted file mode 100644
index 1595ded05..000000000
--- a/tests/data/test2039
+++ /dev/null
@@ -1,63 +0,0 @@
-<testcase>
-<info>
-<keywords>
-FTP
-EPSV
-LIST
-netrc
-</keywords>
-</info>
-#
-# Server-side
-<reply>
-# When doing LIST, we get the default list output hard-coded in the test
-# FTP server
-<datacheck mode="text">
-total 20
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 .
-drwxr-xr-x 8 98 98 512 Oct 22 13:06 ..
-drwxr-xr-x 2 98 98 512 May 2 1996 .NeXT
--r--r--r-- 1 0 1 35 Jul 16 1996 README
-lrwxrwxrwx 1 0 1 7 Dec 9 1999 bin -> usr/bin
-dr-xr-xr-x 2 0 1 512 Oct 1 1997 dev
-drwxrwxrwx 2 98 98 512 May 29 16:04 download.html
-dr-xr-xr-x 2 0 1 512 Nov 30 1995 etc
-drwxrwxrwx 2 98 1 512 Oct 30 14:33 pub
-dr-xr-xr-x 5 0 1 512 Oct 1 1997 usr
-</datacheck>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-ftp
-</server>
- <name>
-FTP (optional .netrc with 'default' override; no user/pass) dir list PASV
- </name>
- <command>
---netrc-optional --netrc-file log/netrc2039 ftp://%HOSTIP:%FTPPORT/
-</command>
-<file name="log/netrc2039" >
-# the following two lines were created while testing curl
-default login userdef password passwddef
-machine %HOSTIP login user1 password passwd1
-machine %HOSTIP login user2 password passwd2
-</file>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-USER userdef
-PASS passwddef
-PWD
-EPSV
-TYPE A
-LIST
-QUIT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test2040 b/tests/data/test2040
deleted file mode 100644
index ac600174e..000000000
--- a/tests/data/test2040
+++ /dev/null
@@ -1,69 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTP
-HTTP GET
-HTTP Basic auth
-</keywords>
-</info>
-# Server-side
-<reply>
-
-<!-- First request has Basic auth, right password -->
-<data100>
-HTTP/1.1 200 Things are fine in server land
-Server: Microsoft-IIS/5.0
-Content-Type: text/html; charset=iso-8859-1
-Content-Length: 32
-
-Finally, this is the real page!
-</data100>
-
-<!-- Second request with Basic auth disabled -->
-<data200>
-HTTP/1.1 401 Sorry wrong password (2)
-Server: Microsoft-IIS/5.0
-Content-Type: text/html; charset=iso-8859-1
-Content-Length: 29
-WWW-Authenticate: Basic realm="testrealm"
-
-This is a bad password page!
-</data200>
-
-</reply>
-
-# Client-side
-<client>
-<server>
-http
-</server>
-<name>
-HTTP Basic authorization, then without authorization
-</name>
-<command option="no-output,no-include">
--u testuser:testpass http://%HOSTIP:%HTTPPORT/20400100 --next --no-basic http://%HOSTIP:%HTTPPORT/20400200
-</command>
-</client>
-
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET /20400100 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
-Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
-Accept: */*
-
-GET /20400200 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
-Accept: */*
-
-</protocol>
-<stdout>
-Finally, this is the real page!
-This is a bad password page!
-</stdout>
-</verify>
-</testcase>
diff --git a/tests/data/test2041 b/tests/data/test2041
deleted file mode 100644
index dcad2fdc3..000000000
--- a/tests/data/test2041
+++ /dev/null
@@ -1,58 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTPS
-HTTP GET
-PEM certificate
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<data>
-HTTP/1.1 200 OK
-Date: Thu, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Content-Length: 7
-
-MooMoo
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<features>
-SSL
-SSLpinning
-</features>
-<server>
-https Server-localhost-sv.pem
-</server>
- <name>
-simple HTTPS GET with base64-sha256 public key pinning
- </name>
- <command>
---cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//pyh+fICi9M8MFEZvherIT0cs3MN+cXNGoU9Giwyx1so= https://localhost:%HTTPSPORT/2041
-</command>
-# Ensure that we're running on localhost because we're checking the host name
-<precheck>
-perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
-</precheck>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<strip>
-^User-Agent:.*
-</strip>
-<protocol>
-GET /2041 HTTP/1.1
-Host: localhost:%HTTPSPORT
-Accept: */*
-
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test2042 b/tests/data/test2042
deleted file mode 100644
index 2181e5322..000000000
--- a/tests/data/test2042
+++ /dev/null
@@ -1,44 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTPS
-HTTP GET
-PEM certificate
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-</reply>
-
-#
-# Client-side
-<client>
-<features>
-SSL
-SSLpinning
-</features>
-<server>
-https Server-localhost-sv.pem
-</server>
- <name>
-HTTPS wrong base64-sha256 pinnedpubkey but right CN
- </name>
- <command>
---cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//bSIggTf+ikMG0CtmDlpMVBd7yi7H1md4URogRPqerso= https://localhost:%HTTPSPORT/2042
-</command>
-# Ensure that we're running on localhost because we're checking the host name
-<precheck>
-perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
-</precheck>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<errorcode>
-90
-</errorcode>
-</verify>
-</testcase>
diff --git a/tests/data/test2043 b/tests/data/test2043
deleted file mode 100644
index 7a91f5b60..000000000
--- a/tests/data/test2043
+++ /dev/null
@@ -1,33 +0,0 @@
-<testcase>
-<info>
-<keywords>
-HTTPS
-HTTP GET
-</keywords>
-</info>
-
-#
-# Client-side
-<client>
-<features>
-WinSSL
-</features>
-<server>
-none
-</server>
- <name>
-Disable certificate revocation checks
- </name>
- <command>
---ssl-no-revoke -I https://revoked.grc.com/
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<errorcode>
-0
-</errorcode>
-</verify>
-</testcase>
diff --git a/tests/data/test208 b/tests/data/test208
index afb2566b5..a7a99b900 100644
--- a/tests/data/test208
+++ b/tests/data/test208
@@ -54,8 +54,8 @@ the
</strip>
<protocol>
PUT ftp://daniel:mysecret@host.com/we/want/208 HTTP/1.1
-Host: host.com:21
Authorization: Basic ZGFuaWVsOm15c2VjcmV0
+Host: host.com:21
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 78
diff --git a/tests/data/test233 b/tests/data/test233
index b631e52cf..d165da952 100644
--- a/tests/data/test233
+++ b/tests/data/test233
@@ -77,15 +77,15 @@ http://first.host.it.is/we/want/that/page/233 -x %HOSTIP:%HTTPPORT --user iam:my
</strip>
<protocol>
GET http://first.host.it.is/we/want/that/page/233 HTTP/1.1
-Host: first.host.it.is
Proxy-Authorization: Basic dGVzdGluZzp0aGlz
Authorization: Basic aWFtOm15c2VsZg==
+Host: first.host.it.is
Accept: */*
Proxy-Connection: Keep-Alive
GET http://goto.second.host.now/2330002 HTTP/1.1
-Host: goto.second.host.now
Proxy-Authorization: Basic dGVzdGluZzp0aGlz
+Host: goto.second.host.now
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test234 b/tests/data/test234
index 1d2e05b39..d8c708109 100644
--- a/tests/data/test234
+++ b/tests/data/test234
@@ -79,16 +79,16 @@ http://first.host.it.is/we/want/that/page/234 -x %HOSTIP:%HTTPPORT --user iam:my
</strip>
<protocol>
GET http://first.host.it.is/we/want/that/page/234 HTTP/1.1
-Host: first.host.it.is
Proxy-Authorization: Basic dGVzdGluZzp0aGlz
Authorization: Basic aWFtOm15c2VsZg==
+Host: first.host.it.is
Accept: */*
Proxy-Connection: Keep-Alive
GET http://goto.second.host.now/2340002 HTTP/1.1
-Host: goto.second.host.now
Proxy-Authorization: Basic dGVzdGluZzp0aGlz
Authorization: Basic aWFtOm15c2VsZg==
+Host: goto.second.host.now
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test239 b/tests/data/test239
index 6b92f07f7..89ccaefb9 100644
--- a/tests/data/test239
+++ b/tests/data/test239
@@ -79,18 +79,18 @@ chkhostname curlhost
</strip>
<protocol nonewline="yes">
POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST http://%HOSTIP:%HTTPPORT/239 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 6
diff --git a/tests/data/test242 b/tests/data/test242
index 9457c58c3..01d40bdd7 100644
--- a/tests/data/test242
+++ b/tests/data/test242
@@ -45,8 +45,8 @@ HTTP-IPv6 GET with username+password in URL
</strip>
<protocol>
GET /242 HTTP/1.1
-Host: %HOST6IP:%HTTP6PORT
Authorization: Basic Zm9vYmFyOmJhcmZvbw==
+Host: %HOST6IP:%HTTP6PORT
Accept: */*
</protocol>
diff --git a/tests/data/test243 b/tests/data/test243
index 3496055d1..0ac4222a4 100644
--- a/tests/data/test243
+++ b/tests/data/test243
@@ -100,26 +100,26 @@ chkhostname curlhost
</strip>
<protocol nonewline="yes">
POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 6
Content-Type: application/x-www-form-urlencoded
postitPOST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST http://%HOSTIP:%HTTPPORT/243 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 6
diff --git a/tests/data/test245 b/tests/data/test245
index cbb5ee31d..02a277291 100644
--- a/tests/data/test245
+++ b/tests/data/test245
@@ -68,16 +68,16 @@ http://%HOSTIP:%HTTPPORT/245 -u auser:apasswd --digest -d "junkelijunk"
</strip>
<protocol nonewline="yes">
POST /245 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST /245 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/245", response="379a439b1737ba257c1d2f103914b18b"
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 11
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test246 b/tests/data/test246
index acf47da5d..cfa31dbb8 100644
--- a/tests/data/test246
+++ b/tests/data/test246
@@ -78,16 +78,16 @@ http://%HOSTIP:%HTTPPORT/246 -u auser:apasswd --digest -d "junkelijunk"
</strip>
<protocol nonewline="yes">
POST /246 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.12.1-CVS (i686-pc-linux-gnu) libcurl/7.12.1-CVS OpenSSL/0.9.6b ipv6 zlib/1.1.4 GSS libidn/0.4.6
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST /246 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="auser", realm="testrealm", nonce="1053604144", uri="/246", response="761e6fc9a760c39d587092e8d840e740"
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 11
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test256 b/tests/data/test256
index 2b96ecf3d..5f8323b67 100644
--- a/tests/data/test256
+++ b/tests/data/test256
@@ -47,9 +47,9 @@ download on.
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/want/256 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: Basic ZGFuaWVsOnN0ZW5iZXJn
Range: bytes=78-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test257 b/tests/data/test257
index 502448ddb..45642d571 100644
--- a/tests/data/test257
+++ b/tests/data/test257
@@ -88,22 +88,22 @@ machine anotherone.com login user2 password passwd2
</strip>
<protocol>
GET http://supersite.com/want/257 HTTP/1.1
-Host: supersite.com
Authorization: Basic dXNlcjE6cGFzc3dkMQ==
User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: supersite.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://anotherone.com/2570002 HTTP/1.1
-Host: anotherone.com
Authorization: Basic dXNlcjI6cGFzc3dkMg==
User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: anotherone.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://athird.com/2570003 HTTP/1.1
-Host: athird.com
User-Agent: curl/7.14.0-CVS (i686-pc-linux-gnu) libcurl/7.14.0-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: athird.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test258 b/tests/data/test258
index 98c340141..1173707c7 100644
--- a/tests/data/test258
+++ b/tests/data/test258
@@ -80,8 +80,8 @@ bar
</strip>
<protocol>
POST http://remotehost:54321/we/want/258 HTTP/1.1
-Host: remotehost:54321
User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: remotehost:54321
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 409
@@ -105,9 +105,9 @@ bar
------------------------------7c633d5c27ce--
POST http://remotehost:54321/we/want/258 HTTP/1.1
-Host: remotehost:54321
User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3
Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/258", response="2501654ca391f0b5c8c12a1da77e34cd"
+Host: remotehost:54321
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 409
diff --git a/tests/data/test259 b/tests/data/test259
index 9532887a9..d4a82270f 100644
--- a/tests/data/test259
+++ b/tests/data/test259
@@ -76,8 +76,8 @@ bar
</strip>
<protocol>
POST http://remotehost:54321/we/want/259 HTTP/1.1
-Host: remotehost:54321
User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: remotehost:54321
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 409
@@ -102,9 +102,9 @@ bar
------------------------------7c633d5c27ce--
POST http://remotehost:54321/we/want/259 HTTP/1.1
-Host: remotehost:54321
User-Agent: curl/7.10.4 (i686-pc-linux-gnu) libcurl/7.10.4 OpenSSL/0.9.7a ipv6 zlib/1.1.3
Proxy-Authorization: Digest username="uuuser", realm="many secrets", nonce="911", uri="/we/want/259", response="b479994d13e60f3aa192a67c5892ddc5"
+Host: remotehost:54321
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 409
diff --git a/tests/data/test264 b/tests/data/test264
index f4d171a16..3cfb4d88d 100644
--- a/tests/data/test264
+++ b/tests/data/test264
@@ -39,8 +39,8 @@ http://we.want.that.site.com/264 -x http://f%61ke:user@%HOSTIP:%HTTPPORT
</strip>
<protocol>
GET http://we.want.that.site.com/264 HTTP/1.1
-Host: we.want.that.site.com
Proxy-Authorization: Basic ZmFrZTp1c2Vy
+Host: we.want.that.site.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test267 b/tests/data/test267
index 7cc8375a5..ea4a9cf13 100644
--- a/tests/data/test267
+++ b/tests/data/test267
@@ -86,9 +86,9 @@ chkhostname curlhost
</strip>
<protocol nonewline="yes">
POST /267 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Header1: yes
Header2: no
@@ -96,9 +96,9 @@ Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST /267 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Header1: yes
Header2: no
diff --git a/tests/data/test273 b/tests/data/test273
index ce0be331e..c8010d9f3 100644
--- a/tests/data/test273
+++ b/tests/data/test273
@@ -74,9 +74,9 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /273 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/273", response="576ae57b1db0039f8c0de43ef58e49e3"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test275 b/tests/data/test275
index 802c4bbcc..ac54e2594 100644
--- a/tests/data/test275
+++ b/tests/data/test275
@@ -74,13 +74,13 @@ Proxy-Connection: Keep-Alive
</proxy>
<protocol>
GET /we/want/that/page/275 HTTP/1.1
-Host: remotesite.com.275:%HTTPPORT
Authorization: Basic aWFtOm15c2VsZg==
+Host: remotesite.com.275:%HTTPPORT
Accept: */*
GET /we/want/that/page/275 HTTP/1.1
-Host: remotesite.com.275:%HTTPPORT
Authorization: Basic aWFtOm15c2VsZg==
+Host: remotesite.com.275:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test278 b/tests/data/test278
index 3112264a3..6c57822b7 100644
--- a/tests/data/test278
+++ b/tests/data/test278
@@ -39,8 +39,8 @@ http://we.want.that.site.com/278 -x http://f%61ke:@%HOSTIP:%HTTPPORT
</strip>
<protocol>
GET http://we.want.that.site.com/278 HTTP/1.1
-Host: we.want.that.site.com
Proxy-Authorization: Basic ZmFrZTo=
+Host: we.want.that.site.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test279 b/tests/data/test279
index 47f8b687e..5a1938cb3 100644
--- a/tests/data/test279
+++ b/tests/data/test279
@@ -40,8 +40,8 @@ http://we.want.that.site.com/279 -x http://f%61ke@%HOSTIP:%HTTPPORT
</strip>
<protocol>
GET http://we.want.that.site.com/279 HTTP/1.1
-Host: we.want.that.site.com
Proxy-Authorization: Basic ZmFrZTo=
+Host: we.want.that.site.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test287 b/tests/data/test287
index 6772e220f..ec4dfeb05 100644
--- a/tests/data/test287
+++ b/tests/data/test287
@@ -28,7 +28,7 @@ http
HTTP proxy CONNECT with custom User-Agent header
</name>
<command>
-http://test.remote.example.com.287:%HTTPPORT/path/287 -H "User-Agent: looser/2015" --proxy http://%HOSTIP:%HTTPPORT --proxytunnel --proxy-header "User-Agent: looser/2007"
+http://test.remote.example.com.287:%HTTPPORT/path/287 -H "User-Agent: looser/2007" --proxy http://%HOSTIP:%HTTPPORT --proxytunnel
</command>
</client>
diff --git a/tests/data/test299 b/tests/data/test299
index 4daaea47d..a557a14c7 100644
--- a/tests/data/test299
+++ b/tests/data/test299
@@ -43,8 +43,8 @@ FTP over HTTP proxy with user:pass not in url
</strip>
<protocol>
GET ftp://michal:aybabtu@host.com/we/want/299 HTTP/1.1
-Host: host.com:21
Authorization: Basic bWljaGFsOmF5YmFidHU=
+Host: host.com:21
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test3 b/tests/data/test3
index 0fe276467..2167b2a49 100644
--- a/tests/data/test3
+++ b/tests/data/test3
@@ -48,8 +48,8 @@ HTTP POST with auth and contents but with content-length set to 0
</strip>
<protocol nonewline="yes">
POST /3 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic ZmFrZTotdXNlcg==
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 37
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test301 b/tests/data/test301
index c40469578..d5974ce69 100644
--- a/tests/data/test301
+++ b/tests/data/test301
@@ -45,8 +45,8 @@ HTTPS GET with user and password
</strip>
<protocol>
GET /301 HTTP/1.1
-Host: %HOSTIP:%HTTPSPORT
Authorization: Basic ZmFrZTp1c2Vy
+Host: %HOSTIP:%HTTPSPORT
Accept: */*
</protocol>
diff --git a/tests/data/test31 b/tests/data/test31
index 7cf556c0c..dfcac0458 100644
--- a/tests/data/test31
+++ b/tests/data/test31
@@ -53,10 +53,6 @@ Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030
Set-Cookie: magic=yessir; path=/silly/; HttpOnly
Set-Cookie: blexp=yesyes; domain=127.0.0.1; domain=127.0.0.1; expiry=totally bad;
Set-Cookie: partialip=nono; domain=.0.0.1;
-Set-Cookie: withspaces= yes within and around ;
-Set-Cookie: withspaces2 =before equals;
-Set-Cookie: prespace= yes before;
-Set-Cookie: securewithspace=after ; secure =
boo
</data>
@@ -128,10 +124,6 @@ Accept: */*
127.0.0.1 FALSE /we/want/ FALSE 2054030187 nodomain value
#HttpOnly_127.0.0.1 FALSE /silly/ FALSE 0 magic yessir
127.0.0.1 FALSE /we/want/ FALSE 0 blexp yesyes
-127.0.0.1 FALSE /we/want/ FALSE 0 withspaces yes within and around
-127.0.0.1 FALSE /we/want/ FALSE 0 withspaces2 before equals
-127.0.0.1 FALSE /we/want/ FALSE 0 prespace yes before
-127.0.0.1 FALSE /we/want/ TRUE 0 securewithspace after
</file>
</verify>
</testcase>
diff --git a/tests/data/test320 b/tests/data/test320
index 4b6f833ac..8f6df05c9 100644
--- a/tests/data/test320
+++ b/tests/data/test320
@@ -28,8 +28,8 @@ Content-type: text/html
<TR><TD>Cipher</TD><TD>AES-NNN-CBC</TD></TR>
<TR><TD>MAC</TD><TD>SHA1</TD></TR>
<TR><TD>Ciphersuite</TD><TD>SRP_SHA_AES_NNN_CBC_SHA1</TD></TR></p></TABLE>
-<hr><P>Your HTTP header was:<PRE>Host: localhost:9011
-User-Agent: curl-test-suite
+<hr><P>Your HTTP header was:<PRE>User-Agent: curl/7.21.4-DEV (x86_64-apple-darwin10.5.0) libcurl/7.21.4-DEV GnuTLS/2.10.4 zlib/1.2.5 libidn/1.19
+Host: localhost:9011
Accept: */*
</PRE></P>
@@ -50,7 +50,7 @@ TLS-SRP
simple TLS-SRP HTTPS GET, check user in response
</name>
<command>
---insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword abc -A curl-test-suite https://%HOSTIP:%HTTPTLSPORT
+--insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword abc https://%HOSTIP:%HTTPTLSPORT
</command>
</client>
@@ -77,8 +77,8 @@ Content-type: text/html
<TR><TD>Cipher</TD><TD>AES-NNN-CBC</TD></TR>
<TR><TD>MAC</TD><TD>SHA1</TD></TR>
<TR><TD>Ciphersuite</TD><TD>SRP_SHA_AES_NNN_CBC_SHA1</TD></TR></p></TABLE>
-<hr><P>Your HTTP header was:<PRE>Host: %HOSTIP:%HTTPTLSPORT
-User-Agent: curl-test-suite
+<PRE>
+Host: %HOSTIP:%HTTPTLSPORT
Accept: */*
</PRE></P>
@@ -87,6 +87,7 @@ Accept: */*
</file>
<stripfile>
s/^<p>Session ID:.*//
+s/^<hr><P>Your HTTP header was:<PRE>.*/<PRE>/
s/Protocol version:.*[0-9]//
s/GNUTLS/GnuTLS/
s/(AES[-_])\d\d\d([-_]CBC)/$1NNN$2/
diff --git a/tests/data/test33 b/tests/data/test33
index 9f7c31fb1..9b86cd3a9 100644
--- a/tests/data/test33
+++ b/tests/data/test33
@@ -47,9 +47,9 @@ http://%HOSTIP:%HTTPPORT/33 -Tlog/test33.txt -C 50
</strip>
<protocol>
PUT /33 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Content-Range: bytes 50-99/100
User-Agent: curl/7.6 (sparc-sun-solaris2.7) libcurl 7.6-pre4 (SSL 0.9.6) (krb4 enabled)
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 50
Expect: 100-continue
diff --git a/tests/data/test38 b/tests/data/test38
index 848150a33..75155866d 100644
--- a/tests/data/test38
+++ b/tests/data/test38
@@ -46,8 +46,8 @@ download on.
</strip>
<protocol>
GET /want/38 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=78-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test46 b/tests/data/test46
index b6ebe802e..b6f8f83ef 100644
--- a/tests/data/test46
+++ b/tests/data/test46
@@ -51,8 +51,8 @@ TZ=GMT
www.fake.come FALSE / FALSE 1022144953 cookiecliente si
www.loser.com FALSE / FALSE 1139150993 UID 99
-%HOSTIP FALSE / FALSE 1739150993 mooo indeed
-#HttpOnly_%HOSTIP FALSE /want FALSE 1739150993 mooo2 indeed2
+%HOSTIP FALSE / FALSE 1439150993 mooo indeed
+#HttpOnly_%HOSTIP FALSE /want FALSE 1439150993 mooo2 indeed2
%HOSTIP FALSE /want FALSE 0 empty
</file>
</client>
@@ -76,8 +76,8 @@ Cookie: empty=; mooo2=indeed2; mooo=indeed
www.fake.come FALSE / FALSE 1022144953 cookiecliente si
www.loser.com FALSE / FALSE 1139150993 UID 99
-%HOSTIP FALSE / FALSE 1739150993 mooo indeed
-#HttpOnly_%HOSTIP FALSE /want FALSE 1739150993 mooo2 indeed2
+%HOSTIP FALSE / FALSE 1439150993 mooo indeed
+#HttpOnly_%HOSTIP FALSE /want FALSE 1439150993 mooo2 indeed2
%HOSTIP FALSE /want FALSE 0 empty
%HOSTIP FALSE / FALSE 2054030187 ckyPersistent permanent
%HOSTIP FALSE / FALSE 0 ckySession temporary
diff --git a/tests/data/test503 b/tests/data/test503
index e8dc21e8d..ea3148300 100644
--- a/tests/data/test503
+++ b/tests/data/test503
@@ -77,8 +77,8 @@ Proxy-Connection: Keep-Alive
</proxy>
<protocol>
GET /503 HTTP/1.1
-Host: machine.503:%HTTPPORT
Authorization: Basic dGVzdDppbmc=
+Host: machine.503:%HTTPPORT
Accept: */*
[DISCONNECT]
diff --git a/tests/data/test519 b/tests/data/test519
index 976056067..b8ca9ab23 100644
--- a/tests/data/test519
+++ b/tests/data/test519
@@ -64,13 +64,13 @@ http://%HOSTIP:%HTTPPORT/519
<verify>
<protocol>
GET /519 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic bW9uc3Rlcjp1bmRlcmJlZA==
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /519 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic YW5vdGhlcm1vbnN0ZXI6aW53YXJkcm9iZQ==
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test522 b/tests/data/test522
index 89a0dbf51..56d1f3be9 100644
--- a/tests/data/test522
+++ b/tests/data/test522
@@ -48,8 +48,8 @@ http://%HOSTIP/522 %HTTPPORT
</strip>
<protocol>
GET /522 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic eHh4Onl5eQ==
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test523 b/tests/data/test523
index 9abe0ed22..7d3db38ef 100644
--- a/tests/data/test523
+++ b/tests/data/test523
@@ -51,8 +51,8 @@ http://www.example.com:999/523 http://%HOSTIP:%HTTPPORT
</strip>
<protocol>
GET HTTP://www.example.com:19999/523 HTTP/1.1
-Host: www.example.com:19999
Authorization: Basic eHh4Onl5eQ==
+Host: www.example.com:19999
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test540 b/tests/data/test540
index 8decaea9d..a2f7364ca 100644
--- a/tests/data/test540
+++ b/tests/data/test540
@@ -76,21 +76,21 @@ http://test.remote.example.com/path/540 http://%HOSTIP:%HTTPPORT silly:person cu
</strip>
<protocol>
GET http://test.remote.example.com/path/540 HTTP/1.1
-Host: custom.set.host.name
Accept: */*
Proxy-Connection: Keep-Alive
+Host: custom.set.host.name
GET http://test.remote.example.com/path/540 HTTP/1.1
-Host: custom.set.host.name
Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/540", response="ca507dcf189196b6a5374d3233042261"
Accept: */*
Proxy-Connection: Keep-Alive
+Host: custom.set.host.name
GET http://test.remote.example.com/path/540 HTTP/1.1
-Host: custom.set.host.name
Proxy-Authorization: Digest username="silly", realm="weirdorealm", nonce="12345", uri="/path/540", response="ca507dcf189196b6a5374d3233042261"
Accept: */*
Proxy-Connection: Keep-Alive
+Host: custom.set.host.name
</protocol>
</verify>
diff --git a/tests/data/test547 b/tests/data/test547
index cee22c6f7..f4802e29d 100644
--- a/tests/data/test547
+++ b/tests/data/test547
@@ -103,8 +103,8 @@ chkhostname curlhost
</strip>
<protocol>
POST http://test.remote.example.com/path/547 HTTP/1.1
-Host: test.remote.example.com
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
@@ -112,18 +112,18 @@ Content-Type: application/x-www-form-urlencoded
this is the blurb we want to upload
POST http://test.remote.example.com/path/547 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST http://test.remote.example.com/path/547 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
diff --git a/tests/data/test548 b/tests/data/test548
index 34cf5e2ea..54f242f98 100644
--- a/tests/data/test548
+++ b/tests/data/test548
@@ -103,8 +103,8 @@ chkhostname curlhost
</strip>
<protocol>
POST http://test.remote.example.com/path/548 HTTP/1.1
-Host: test.remote.example.com
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
@@ -112,18 +112,18 @@ Content-Type: application/x-www-form-urlencoded
this is the blurb we want to upload
POST http://test.remote.example.com/path/548 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST http://test.remote.example.com/path/548 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
diff --git a/tests/data/test551 b/tests/data/test551
index ed6aee264..5776303e5 100644
--- a/tests/data/test551
+++ b/tests/data/test551
@@ -87,8 +87,8 @@ Content-Type: application/x-www-form-urlencoded
this is the blurb we want to upload
POST http://test.remote.example.com/path/551 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: Digest username="s1lly", realm="something fun to read", nonce="AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", uri="/path/551", response="3325240726fbdaf1e61f3a0dd40b930c"
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
diff --git a/tests/data/test552 b/tests/data/test552
index b44ca3455..61de9fe24 100644
--- a/tests/data/test552
+++ b/tests/data/test552
Binary files differ
diff --git a/tests/data/test555 b/tests/data/test555
index 0f3bb07fc..c802feac6 100644
--- a/tests/data/test555
+++ b/tests/data/test555
@@ -112,8 +112,8 @@ s/^(this is the blurb we want to upload)\r\n/$1\n/ if($has_charconv)
</strippart>
<protocol>
POST http://test.remote.example.com/path/555 HTTP/1.1
-Host: test.remote.example.com
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
@@ -121,18 +121,18 @@ Content-Type: application/x-www-form-urlencoded
this is the blurb we want to upload
POST http://test.remote.example.com/path/555 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 0
Content-Type: application/x-www-form-urlencoded
POST http://test.remote.example.com/path/555 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
Content-Length: 36
diff --git a/tests/data/test56 b/tests/data/test56
index f221981c4..a97b3650e 100644
--- a/tests/data/test56
+++ b/tests/data/test56
@@ -46,8 +46,8 @@ header "Transfer-Encoding: chunked"
<verify>
<protocol>
POST /that.site.com/56 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Transfer-Encoding: chunked
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test565 b/tests/data/test565
index 6e215a24d..90fa4d1c9 100644
--- a/tests/data/test565
+++ b/tests/data/test565
@@ -86,8 +86,8 @@ Content-Type: application/x-www-form-urlencoded
0
POST /565 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="foo", realm="testrealm", nonce="1053604144", uri="/565", response="877424f750af047634dbd94f9933217b"
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Transfer-Encoding: chunked
Content-Type: application/x-www-form-urlencoded
diff --git a/tests/data/test590 b/tests/data/test590
index 55ea4f0e9..0712c162a 100644
--- a/tests/data/test590
+++ b/tests/data/test590
@@ -101,22 +101,22 @@ chkhostname curlhost
</strip>
<protocol>
GET http://test.remote.example.com/path/590 HTTP/1.1
-Host: test.remote.example.com
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://test.remote.example.com/path/590 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
GET http://test.remote.example.com/path/590 HTTP/1.1
-Host: test.remote.example.com
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAAAgACAPYAAAAIAAgA+AAAAAAAAAAAAAAABoKBAB3Hr6SDn3NDNkgebbaP88ExMjM0MjIzNFIW4N7aYT44bAIg1jt2blUBAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAbWVjdXJsaG9zdA==
User-Agent: curl/7.13.2-CVS (i686-pc-linux-gnu) libcurl/7.13.2-CVS OpenSSL/0.9.7e zlib/1.2.2 libidn/0.5.13
+Host: test.remote.example.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test598 b/tests/data/test598
index 89b8e6f58..11a0dbc3c 100644
--- a/tests/data/test598
+++ b/tests/data/test598
@@ -65,8 +65,8 @@ http://%HOSTIP:%HTTPPORT/598
<verify>
<protocol>
GET /598 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: the-moo agent next generation
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Referer: http://example.com/the-moo
Cookie: name=moo
diff --git a/tests/data/test61 b/tests/data/test61
index abc97895a..e6dbbb901 100644
--- a/tests/data/test61
+++ b/tests/data/test61
@@ -56,8 +56,8 @@ http://%HOSTIP:%HTTPPORT/we/want/61 -c log/jar61.txt -H "Host: www.host.foo.com"
</strip>
<protocol>
GET /we/want/61 HTTP/1.1
-Host: www.host.foo.com
Accept: */*
+Host: www.host.foo.com
</protocol>
<file name="log/jar61.txt" mode="text">
diff --git a/tests/data/test62 b/tests/data/test62
index 51b88709e..2e5d1db03 100644
--- a/tests/data/test62
+++ b/tests/data/test62
@@ -51,14 +51,14 @@ http://%HOSTIP:%HTTPPORT/we/want/62 http://%HOSTIP:%HTTPPORT/we/want?hoge=fuga -
</strip>
<protocol>
GET /we/want/62 HTTP/1.1
-Host: www.host.foo.com
Accept: */*
Cookie: test2=yes; test=yes
+Host: www.host.foo.com
GET /we/want?hoge=fuga HTTP/1.1
-Host: www.host.foo.com
Accept: */*
Cookie: test2=yes; test=yes
+Host: www.host.foo.com
</protocol>
</verify>
diff --git a/tests/data/test63 b/tests/data/test63
index ccc19dd24..66ed1d86b 100644
--- a/tests/data/test63
+++ b/tests/data/test63
@@ -42,8 +42,8 @@ http://we.want.that.site.com/63
</strip>
<protocol>
GET http://we.want.that.site.com/63 HTTP/1.1
-Host: we.want.that.site.com
Proxy-Authorization: Basic ZmFrZTp1c2Vy
+Host: we.want.that.site.com
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test64 b/tests/data/test64
index 804a6fa80..7a2e3d072 100644
--- a/tests/data/test64
+++ b/tests/data/test64
@@ -74,9 +74,9 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /64 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/64", response="c55f7f30d83d774a3d2dcacf725abaca"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test65 b/tests/data/test65
index f0b974213..001d598a6 100644
--- a/tests/data/test65
+++ b/tests/data/test65
@@ -74,9 +74,9 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /65 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="2053604145", uri="/65", response="66d68d3251f1839576ba7c766cf9205b"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test67 b/tests/data/test67
index b3431111c..58d35e6a1 100644
--- a/tests/data/test67
+++ b/tests/data/test67
@@ -86,15 +86,15 @@ chkhostname curlhost
</strip>
<protocol>
GET /67 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /67 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test68 b/tests/data/test68
index acd710fea..92a915b69 100644
--- a/tests/data/test68
+++ b/tests/data/test68
@@ -85,15 +85,15 @@ chkhostname curlhost
</strip>
<protocol>
GET /68 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /68 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test69 b/tests/data/test69
index 887a4603f..50603b05a 100644
--- a/tests/data/test69
+++ b/tests/data/test69
@@ -102,20 +102,20 @@ chkhostname curlhost
</strip>
<protocol>
GET /69 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /69 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /69 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test70 b/tests/data/test70
index 9057d6a4b..74f70e1be 100644
--- a/tests/data/test70
+++ b/tests/data/test70
@@ -73,14 +73,14 @@ http://%HOSTIP:%HTTPPORT/70 -u testuser:testpass --anyauth
</strip>
<protocol>
GET /70 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /70 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/70", response="2c9a6f00af0d86497b177b90e90c688a"
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test72 b/tests/data/test72
index 8e3adaa50..b90e19c84 100644
--- a/tests/data/test72
+++ b/tests/data/test72
@@ -72,14 +72,14 @@ http://%HOSTIP:%HTTPPORT/72 -u testuser:testpass --anyauth
</strip>
<protocol>
GET /72 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /72 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604199", uri="/72", response="9fcd1330377365a09bbcb33b2cbb25bd"
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test73 b/tests/data/test73
index a23546d42..d60ee62ad 100644
--- a/tests/data/test73
+++ b/tests/data/test73
@@ -40,8 +40,8 @@ http://%HOSTIP:%HTTPPORT/we/want/73 -c log/jar73.txt -H "Host: host.NOT_DISCLOSE
</strip>
<protocol>
GET /we/want/73 HTTP/1.1
-Host: host.NOT_DISCLOSED.se
Accept: */*
+Host: host.NOT_DISCLOSED.se
</protocol>
<file name="log/jar73.txt" mode="text">
diff --git a/tests/data/test80 b/tests/data/test80
index 147a6aa12..16805cabb 100644
--- a/tests/data/test80
+++ b/tests/data/test80
@@ -73,9 +73,9 @@ Proxy-Connection: Keep-Alive
</proxy>
<protocol>
GET /we/want/that/page/80 HTTP/1.1
-Host: test.80:%HTTPPORT
Authorization: Basic aWFtOm15c2VsZg==
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: test.80:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test81 b/tests/data/test81
index dc054d293..ff258edbd 100644
--- a/tests/data/test81
+++ b/tests/data/test81
@@ -85,16 +85,16 @@ chkhostname curlhost
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/81 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
GET http://%HOSTIP:%HTTPPORT/81 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test82 b/tests/data/test82
index 8b58f75da..9e800bb73 100644
--- a/tests/data/test82
+++ b/tests/data/test82
@@ -45,9 +45,9 @@ http://%HOSTIP:%HTTPPORT/82 --proxy-user testuser:testpass -x http://%HOSTIP:%HT
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/82 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: Basic dGVzdHVzZXI6dGVzdHBhc3M=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test83 b/tests/data/test83
index 120bcc6a1..e00a28893 100644
--- a/tests/data/test83
+++ b/tests/data/test83
@@ -62,16 +62,16 @@ http://test.83:%HTTPPORT/we/want/that/page/83 -p -x %HOSTIP:%PROXYPORT --user 'i
</strip>
<proxy>
CONNECT test.83:%HTTPPORT HTTP/1.1
-Host: test.83:%HTTPPORT
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: test.83:%HTTPPORT
Proxy-Connection: Keep-Alive
</proxy>
<protocol>
GET /we/want/that/page/83 HTTP/1.1
-Host: test.83:%HTTPPORT
Authorization: Basic aWFtOm15OjtzZWxm
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: test.83:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test837 b/tests/data/test837
deleted file mode 100644
index d5974634e..000000000
--- a/tests/data/test837
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-IMAP
-SASL
-SASL AUTH EXTERNAL
-RFC4422
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTHENTICATE +
-REPLY dXNlcg== A002 OK AUTHENTICATE completed
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-imap
-</server>
- <name>
-IMAP external authentication
- </name>
- <command>
-'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/837/;UID=1'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-A001 CAPABILITY
-A002 AUTHENTICATE EXTERNAL
-dXNlcg==
-A003 SELECT 837
-A004 FETCH 1 BODY[]
-A005 LOGOUT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test838 b/tests/data/test838
deleted file mode 100644
index da2d28d05..000000000
--- a/tests/data/test838
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-IMAP
-SASL
-SASL AUTH EXTERNAL
-RFC4422
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTHENTICATE +
-REPLY = A002 OK AUTHENTICATE completed
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-imap
-</server>
- <name>
-IMAP external authentication without credentials
- </name>
- <command>
-'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/838/;UID=1'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-A001 CAPABILITY
-A002 AUTHENTICATE EXTERNAL
-=
-A003 SELECT 838
-A004 FETCH 1 BODY[]
-A005 LOGOUT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test839 b/tests/data/test839
deleted file mode 100644
index 2a544c1cf..000000000
--- a/tests/data/test839
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-IMAP
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC4422
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-CAPA SASL-IR
-REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-imap
-</server>
- <name>
-IMAP external authentication with initial response
- </name>
- <command>
-'imap://user;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/839/;UID=1'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-A001 CAPABILITY
-A002 AUTHENTICATE EXTERNAL dXNlcg==
-A003 SELECT 839
-A004 FETCH 1 BODY[]
-A005 LOGOUT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test84 b/tests/data/test84
index 629dae2fc..4dbf16432 100644
--- a/tests/data/test84
+++ b/tests/data/test84
@@ -43,9 +43,9 @@ http://%HOSTIP:%HTTPPORT/we/want/that/page/84 -x %HOSTIP:%HTTPPORT --user iam:my
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/we/want/that/page/84 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Basic aWFtOm15c2VsZg==
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test840 b/tests/data/test840
deleted file mode 100644
index eaf1aeea4..000000000
--- a/tests/data/test840
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-IMAP
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC4422
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-CAPA SASL-IR
-REPLY AUTHENTICATE A002 OK AUTHENTICATE completed
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-imap
-</server>
- <name>
-IMAP external authentication with initial response without credentials
- </name>
- <command>
-'imap://;AUTH=EXTERNAL@%HOSTIP:%IMAPPORT/840/;UID=1'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-A001 CAPABILITY
-A002 AUTHENTICATE EXTERNAL =
-A003 SELECT 840
-A004 FETCH 1 BODY[]
-A005 LOGOUT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test85 b/tests/data/test85
index cb5e6e052..a5d1a3bca 100644
--- a/tests/data/test85
+++ b/tests/data/test85
@@ -46,10 +46,10 @@ http://%HOSTIP:%HTTPPORT/we/want/that/page/85 -x %HOSTIP:%HTTPPORT --user iam:my
</strip>
<protocol>
GET http://%HOSTIP:%HTTPPORT/we/want/that/page/85 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Proxy-Authorization: Basic dGVzdGluZzp0aGlz
Authorization: Basic aWFtOm15c2VsZg==
User-Agent: curl/7.10.7-pre2 (i686-pc-linux-gnu) libcurl/7.10.7-pre2 OpenSSL/0.9.7a zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Proxy-Connection: Keep-Alive
diff --git a/tests/data/test88 b/tests/data/test88
index e2d019c06..253b4202f 100644
--- a/tests/data/test88
+++ b/tests/data/test88
@@ -85,9 +85,9 @@ Accept: */*
Content-Length: 0
PUT /88 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: Digest username="testuser", realm="testrealm", nonce="1053604145", uri="/88", response="78a49fa53d0c228778297687d4168e71"
User-Agent: curl/7.10.5 (i686-pc-linux-gnu) libcurl/7.10.5 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
Content-Length: 85
Expect: 100-continue
diff --git a/tests/data/test883 b/tests/data/test883
deleted file mode 100644
index 5d5a756a9..000000000
--- a/tests/data/test883
+++ /dev/null
@@ -1,57 +0,0 @@
-<testcase>
-<info>
-<keywords>
-POP3
-SASL
-SASL AUTH EXTERNAL
-RFC1734
-RFC4422
-RFC5034
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH +
-REPLY dXNlcg== +OK Login successful
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-pop3
-</server>
- <name>
-POP3 external authentication
- </name>
- <command>
-'pop3://user;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/883'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-CAPA
-AUTH EXTERNAL
-dXNlcg==
-RETR 883
-QUIT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test884 b/tests/data/test884
deleted file mode 100644
index 34fd94d13..000000000
--- a/tests/data/test884
+++ /dev/null
@@ -1,57 +0,0 @@
-<testcase>
-<info>
-<keywords>
-POP3
-SASL
-SASL AUTH EXTERNAL
-RFC1734
-RFC4422
-RFC5034
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH +
-REPLY = +OK Login successful
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-pop3
-</server>
- <name>
-POP3 external authentication without credentials
- </name>
- <command>
-'pop3://;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/884'
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-CAPA
-AUTH EXTERNAL
-=
-RETR 884
-QUIT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test885 b/tests/data/test885
deleted file mode 100644
index 581e9b24f..000000000
--- a/tests/data/test885
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-POP3
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC1734
-RFC4422
-RFC5034
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH +OK Login successful
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-pop3
-</server>
- <name>
-POP3 external authentication with initial response
- </name>
- <command>
-'pop3://user;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/885' --sasl-ir
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-CAPA
-AUTH EXTERNAL dXNlcg==
-RETR 885
-QUIT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test886 b/tests/data/test886
deleted file mode 100644
index 3aca2f18f..000000000
--- a/tests/data/test886
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-POP3
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC1734
-RFC4422
-RFC5034
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH +OK Login successful
-</servercmd>
-<data>
-From: me@somewhere
-To: fake@nowhere
-
-body
-
---
- yours sincerely
-</data>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-pop3
-</server>
- <name>
-POP3 external authentication with initial response without credentials
- </name>
- <command>
-'pop3://;AUTH=EXTERNAL@%HOSTIP:%POP3PORT/886' --sasl-ir
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-CAPA
-AUTH EXTERNAL =
-RETR 886
-QUIT
-</protocol>
-</verify>
-</testcase>
diff --git a/tests/data/test89 b/tests/data/test89
index c7f69a2b0..cbabe8e7e 100644
--- a/tests/data/test89
+++ b/tests/data/test89
@@ -119,27 +119,27 @@ chkhostname curlhost
</strip>
<protocol>
GET /89 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /89 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /you/890010 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /you/890010 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBALIBPdoGahtQQ8gQ7TJrKTYzMjM0NDIzNBFnpKw8B1BLcb456sVeozgBAQAAAAAAAACAPtXesZ0BMzIzNDQyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test90 b/tests/data/test90
index 3b1231a31..90dae2c0b 100644
--- a/tests/data/test90
+++ b/tests/data/test90
@@ -161,15 +161,15 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /90 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /90 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBAL9LNW5+nkyHZRmyFaL/LJ4xMjM0MjIzNGUCyhgQ9hw6eWAT13EbDa0BAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /you/900010 HTTP/1.1
@@ -177,15 +177,15 @@ Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /you/900010 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /you/900010 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAAAAAD2AAAACAAIAPYAAAAIAAgA/gAAAAAAAAAAAAAABoKBALIBPdoGahtQQ8gQ7TJrKTYzMjM0NDIzNBFnpKw8B1BLcb456sVeozgBAQAAAAAAAACAPtXesZ0BMzIzNDQyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAdGVzdHVzZXJjdXJsaG9zdA==
User-Agent: curl/7.10.8-pre1 (i686-pc-linux-gnu) libcurl/7.10.8-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3 GSS
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test91 b/tests/data/test91
index 35195ad37..26ee318b9 100644
--- a/tests/data/test91
+++ b/tests/data/test91
@@ -103,20 +103,20 @@ chkhostname curlhost
</strip>
<protocol>
GET /91 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /91 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA=
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
GET /91 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Authorization: NTLM TlRMTVNTUAADAAAAGAAYAEAAAACeAJ4AWAAAAAgACAD2AAAABgAGAP4AAAAIAAgABAEAAAAAAAAAAAAABoKBAI9byKoy6qyyS+1JCYN1XYoxMjM0MjIzNEYCr85trkciZ2j/7/T8MmUBAQAAAAAAAACAPtXesZ0BMTIzNDIyMzQAAAAAAgAEAEMAQwABABIARQBMAEkAUwBBAEIARQBUAEgABAAYAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAMALABlAGwAaQBzAGEAYgBlAHQAaAAuAGMAYwAuAGkAYwBlAGQAZQB2AC4AbgB1AAAAAAAAAAAAbXlkb21haW5teXNlbGZjdXJsaG9zdA==
User-Agent: curl/7.10.6-pre1 (i686-pc-linux-gnu) libcurl/7.10.6-pre1 OpenSSL/0.9.7a ipv6 zlib/1.1.3
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test92 b/tests/data/test92
index 1304c81ec..bf7827651 100644
--- a/tests/data/test92
+++ b/tests/data/test92
@@ -45,8 +45,8 @@ http://%HOSTIP:%HTTPPORT/want/92 -C 87
</strip>
<protocol>
GET /want/92 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=87-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/data/test938 b/tests/data/test938
index 7931d0aaa..7299d34c4 100644
--- a/tests/data/test938
+++ b/tests/data/test938
@@ -61,5 +61,3 @@ QUIT
mail body
.
</upload>
-</verify>
-</testcase>
diff --git a/tests/data/test942 b/tests/data/test942
deleted file mode 100644
index 26740f7b6..000000000
--- a/tests/data/test942
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-SMTP
-SASL
-SASL AUTH EXTERNAL
-RFC4422
-RFC4954
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH 334 EXTERNAL supported
-REPLY dXNlcg== 235 Authenticated
-</servercmd>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-smtp
-</server>
- <name>
-SMTP external authentication
- </name>
-<stdin>
-mail body
-</stdin>
- <command>
-'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/942' --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-EHLO 942
-AUTH EXTERNAL
-dXNlcg==
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
-DATA
-QUIT
-</protocol>
-<upload>
-mail body
-.
-</upload>
-</verify>
-</testcase>
diff --git a/tests/data/test943 b/tests/data/test943
deleted file mode 100644
index aef2c6228..000000000
--- a/tests/data/test943
+++ /dev/null
@@ -1,56 +0,0 @@
-<testcase>
-<info>
-<keywords>
-SMTP
-SASL
-SASL AUTH EXTERNAL
-RFC4422
-RFC4954
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH 334 EXTERNAL supported
-REPLY = 235 Authenticated
-</servercmd>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-smtp
-</server>
- <name>
-SMTP external authentication without credentials
- </name>
-<stdin>
-mail body
-</stdin>
- <command>
-'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/943' --mail-rcpt recipient@example.com --mail-from sender@example.com -T -
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-EHLO 943
-AUTH EXTERNAL
-=
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
-DATA
-QUIT
-</protocol>
-<upload>
-mail body
-.
-</upload>
-</verify>
-</testcase>
diff --git a/tests/data/test944 b/tests/data/test944
deleted file mode 100644
index 4b60f120f..000000000
--- a/tests/data/test944
+++ /dev/null
@@ -1,55 +0,0 @@
-<testcase>
-<info>
-<keywords>
-SMTP
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC4422
-RFC4954
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH 235 Authenticated
-</servercmd>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-smtp
-</server>
- <name>
-SMTP external authentication with initial response
- </name>
-<stdin>
-mail body
-</stdin>
- <command>
-'smtp://user;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/944' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T -
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-EHLO 944
-AUTH EXTERNAL dXNlcg==
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
-DATA
-QUIT
-</protocol>
-<upload>
-mail body
-.
-</upload>
-</verify>
-</testcase>
diff --git a/tests/data/test945 b/tests/data/test945
deleted file mode 100644
index 3526408d3..000000000
--- a/tests/data/test945
+++ /dev/null
@@ -1,55 +0,0 @@
-<testcase>
-<info>
-<keywords>
-SMTP
-SASL
-SASL AUTH EXTERNAL
-SASL-IR
-RFC4422
-RFC4954
-</keywords>
-</info>
-
-#
-# Server-side
-<reply>
-<servercmd>
-AUTH EXTERNAL
-REPLY AUTH 235 Authenticated
-</servercmd>
-</reply>
-
-#
-# Client-side
-<client>
-<server>
-smtp
-</server>
- <name>
-SMTP external authentication with initial response without credentials
- </name>
-<stdin>
-mail body
-</stdin>
- <command>
-'smtp://;AUTH=EXTERNAL@%HOSTIP:%SMTPPORT/945' --mail-rcpt recipient@example.com --mail-from sender@example.com --sasl-ir -T -
-</command>
-</client>
-
-#
-# Verify data after the test has been "shot"
-<verify>
-<protocol>
-EHLO 945
-AUTH EXTERNAL =
-MAIL FROM:<sender@example.com>
-RCPT TO:<recipient@example.com>
-DATA
-QUIT
-</protocol>
-<upload>
-mail body
-.
-</upload>
-</verify>
-</testcase>
diff --git a/tests/data/test96 b/tests/data/test96
index 27044bc99..3d9a933a0 100644
--- a/tests/data/test96
+++ b/tests/data/test96
@@ -37,7 +37,7 @@ MEM tool_cfgable.c
MEM tool_cfgable.c
</file>
<stripfile>
-$_ = '' if ((($_ !~ /tool_paramhlp/) && ($_ !~ /tool_cfgable/)) || ($_ =~ /free\(\(nil\)\)/))
+$_ = '' if (($_ !~ /tool_paramhlp/) && ($_ !~ /tool_cfgable/))
s/:\d+.*//
s:^(MEM )(.*/)(.*):$1$3:
</stripfile>
diff --git a/tests/data/test99 b/tests/data/test99
index 9797600cf..2517002f7 100644
--- a/tests/data/test99
+++ b/tests/data/test99
@@ -60,8 +60,8 @@ http://%HOSTIP:%HTTPPORT/99 -C 9999999999
</strip>
<protocol>
GET /99 HTTP/1.1
-Host: %HOSTIP:%HTTPPORT
Range: bytes=9999999999-
+Host: %HOSTIP:%HTTPPORT
Accept: */*
</protocol>
diff --git a/tests/extern-scan.pl b/tests/extern-scan.pl
deleted file mode 100755
index 49d0c86b0..000000000
--- a/tests/extern-scan.pl
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/env perl
-#***************************************************************************
-# _ _ ____ _
-# Project ___| | | | _ \| |
-# / __| | | | |_) | |
-# | (__| |_| | _ <| |___
-# \___|\___/|_| \_\_____|
-#
-# Copyright (C) 2010-2015, 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 http://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.
-#
-###########################################################################
-#
-#
-
-use strict;
-use warnings;
-
-# we may get the dir root pointed out
-my $root=$ARGV[0] || ".";
-
-my @incs = (
- "$root/include/curl/curl.h",
- "$root/include/curl/easy.h",
- "$root/include/curl/mprintf.h",
- "$root/include/curl/multi.h",
- );
-
-my $verbose=0;
-my $summary=0;
-my $misses=0;
-
-my @syms;
-my %doc;
-my %rem;
-
-sub scanheader {
- my ($f)=@_;
- open H, "<$f" || die;
- while(<H>) {
- if (/^(CURL_EXTERN.*)/) {
- print "$1\n";
- }
- }
- close H;
-}
-
-foreach my $i (@incs) {
- scanheader($i);
-}
diff --git a/tests/libtest/CMakeLists.txt b/tests/libtest/CMakeLists.txt
deleted file mode 100644
index cc9d7e1f8..000000000
--- a/tests/libtest/CMakeLists.txt
+++ /dev/null
@@ -1,122 +0,0 @@
-set(TARGET_LABEL_PREFIX "Test ")
-
-function(SETUP_TEST TEST_NAME) # ARGN are the files in the test
- add_executable( ${TEST_NAME} ${ARGN} )
- string(TOUPPER ${TEST_NAME} UPPER_TEST_NAME)
-
- include_directories(
- ${CURL_SOURCE_DIR}/lib # To be able to reach "curl_setup_once.h"
- ${CURL_BINARY_DIR}/lib # To be able to reach "curl_config.h"
- ${CURL_BINARY_DIR}/include # To be able to reach "curl/curlbuild.h"
- )
- if(USE_ARES)
- include_directories(${CARES_INCLUDE_DIR})
- endif()
-
- target_link_libraries( ${TEST_NAME} libcurl ${CURL_LIBS})
-
- set_target_properties(${TEST_NAME}
- PROPERTIES COMPILE_DEFINITIONS ${UPPER_TEST_NAME})
- set_target_properties(${TEST_NAME}
- PROPERTIES PROJECT_LABEL "${TARGET_LABEL_PREFIX}${TEST_NAME}")
-
- # Add the postfix to the executable since it is
- # not added automatically as for modules and shared libraries
- set_target_properties(${TEST_NAME}
- PROPERTIES DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
-
-endfunction()
-
-
-transform_makefile_inc("Makefile.inc" "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
-
-foreach(TEST_NAME ${noinst_PROGRAMS})
- setup_test(${TEST_NAME} ${${TEST_NAME}_SOURCES})
-endforeach()
-
-# Allows for hostname override to make tests machine independent.
-# TODO this cmake build assumes a shared build, detect static linking here!
-if(NOT WIN32)
- add_library(hostname MODULE sethostname.c sethostname.h)
- # Output to .libs for compatibility with autotools, the test data expects a
- # library at (tests)/libtest/.libs/libhostname.so
- set_target_properties(hostname PROPERTIES
- LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/.libs)
-endif()
-
-# # files used only in some libcurl test programs
-# SET(TESTUTIL testutil.c testutil.h)
-
-# # these files are used in every single test program below
-# SET(SUPPORTFILES first.c test.h)
-
-# # These are all libcurl test programs
-# SET(noinst_PROGRAMS
-# lib500 lib501 lib502 lib503 lib504 lib505 lib506
-# lib507 lib508 lib510 lib511 lib512 lib513 lib514 lib515 lib516
-# lib517 lib518 lib519 lib520 lib521 lib523 lib524 lib525 lib526
-# #lib527
-# #lib529
-# lib530
-# #lib532
-# lib533 lib536 lib537 lib540 lib541 lib542 lib543
-# lib544
-# #lib545
-# lib547
-# #lib548
-# lib549 lib552 lib553 lib554 lib555 lib556
-# lib539 lib557
-# lib560
-# )
-
-# SET(noinst_PROGRAMS_USE_TESTUTIL
-# lib502 lib503 lib504
-# lib507
-# lib525 lib526 lib527
-# lib529
-# lib530
-# lib532
-# lib533 lib536
-# lib555
-# )
-
-# MACRO(ADD_TESTUTIL_IF_NECESSARY TEST_NAME)
-# LIST(FIND noinst_PROGRAMS_USE_TESTUTIL ${TEST_NAME} USES_TESTUTIL)
-# IF(NOT ${USES_TESTUTIL} EQUAL -1)
-# LIST(APPEND SOURCE ${TESTUTIL}) # Need TestUtil
-# ENDIF()
-# ENDMACRO()
-
-# # General case
-# FOREACH(TEST_NAME ${noinst_PROGRAMS})
-# SET(SOURCE "${TEST_NAME}.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
-# ENDFOREACH()
-
-# # Special cases
-# SET(TEST_NAME lib527)
-# SET(SOURCE "lib526.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
-
-# SET(TEST_NAME lib529)
-# SET(SOURCE "lib525.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
-
-# SET(TEST_NAME lib532)
-# SET(SOURCE "lib526.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
-
-# SET(TEST_NAME lib545)
-# SET(SOURCE "lib544.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
-
-# SET(TEST_NAME lib548)
-# SET(SOURCE "lib547.c" ${SUPPORTFILES})
-# ADD_TESTUTIL_IF_NECESSARY(${TEST_NAME})
-# SETUP_TEST(${TEST_NAME} ${SOURCE})
diff --git a/tests/libtest/Makefile.am b/tests/libtest/Makefile.am
index d255b222b..80707b165 100644
--- a/tests/libtest/Makefile.am
+++ b/tests/libtest/Makefile.am
@@ -51,7 +51,7 @@ AM_CPPFLAGS = -I$(top_builddir)/include/curl \
endif
EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl \
-test1022.pl Makefile.inc notexists.pl CMakeLists.txt
+test1022.pl Makefile.inc notexists.pl
CFLAG_CURL_SYMBOL_HIDING = @CFLAG_CURL_SYMBOL_HIDING@
@@ -62,8 +62,8 @@ if USE_EXPLICIT_LIB_DEPS
SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
else
-SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@ @NSS_LIBS@
-TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@ @NSS_LIBS@
+SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@
+TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@
endif
# Dependencies (may need to be overriden)
diff --git a/tests/libtest/Makefile.in b/tests/libtest/Makefile.in
index 6561963d5..bc276f571 100644
--- a/tests/libtest/Makefile.in
+++ b/tests/libtest/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -16,17 +16,7 @@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -89,6 +79,9 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs \
+ $(top_srcdir)/depcomp
noinst_PROGRAMS = chkhostname$(EXEEXT) libauthretry$(EXEEXT) \
libntlmconnect$(EXEEXT) lib500$(EXEEXT) lib501$(EXEEXT) \
lib502$(EXEEXT) lib503$(EXEEXT) lib504$(EXEEXT) \
@@ -123,8 +116,7 @@ noinst_PROGRAMS = chkhostname$(EXEEXT) libauthretry$(EXEEXT) \
lib1512$(EXEEXT) lib1513$(EXEEXT) lib1514$(EXEEXT) \
lib1515$(EXEEXT) lib1520$(EXEEXT) lib1525$(EXEEXT) \
lib1526$(EXEEXT) lib1527$(EXEEXT) lib1528$(EXEEXT) \
- lib1529$(EXEEXT) lib1530$(EXEEXT) lib1531$(EXEEXT) \
- lib1900$(EXEEXT) lib2033$(EXEEXT)
+ lib1529$(EXEEXT) lib1900$(EXEEXT) lib2033$(EXEEXT)
@USE_CPPFLAG_CURL_STATICLIB_TRUE@am__append_1 = -DCURL_STATICLIB
@CURL_LT_SHLIB_USE_NO_UNDEFINED_TRUE@am__append_2 = -no-undefined
@CURL_LT_SHLIB_USE_MIMPURE_TEXT_TRUE@am__append_3 = -mimpure-text
@@ -151,8 +143,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -329,487 +320,473 @@ am_lib1529_OBJECTS = lib1529-lib1529.$(OBJEXT) $(am__objects_61) \
$(am__objects_62) $(am__objects_63)
lib1529_OBJECTS = $(am_lib1529_OBJECTS)
lib1529_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_64 = lib1530-first.$(OBJEXT)
-am__objects_65 = lib1530-testutil.$(OBJEXT)
-am__objects_66 = ../../lib/lib1530-warnless.$(OBJEXT)
-am_lib1530_OBJECTS = lib1530-lib1530.$(OBJEXT) $(am__objects_64) \
+am__objects_64 = lib1900-first.$(OBJEXT)
+am__objects_65 = lib1900-testutil.$(OBJEXT)
+am__objects_66 = ../../lib/lib1900-warnless.$(OBJEXT)
+am_lib1900_OBJECTS = lib1900-lib1900.$(OBJEXT) $(am__objects_64) \
$(am__objects_65) $(am__objects_66)
-lib1530_OBJECTS = $(am_lib1530_OBJECTS)
-lib1530_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_67 = lib1531-first.$(OBJEXT)
-am__objects_68 = lib1531-testutil.$(OBJEXT)
-am__objects_69 = ../../lib/lib1531-warnless.$(OBJEXT)
-am_lib1531_OBJECTS = lib1531-lib1531.$(OBJEXT) $(am__objects_67) \
- $(am__objects_68) $(am__objects_69)
-lib1531_OBJECTS = $(am_lib1531_OBJECTS)
-lib1531_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_70 = lib1900-first.$(OBJEXT)
-am__objects_71 = lib1900-testutil.$(OBJEXT)
-am__objects_72 = ../../lib/lib1900-warnless.$(OBJEXT)
-am_lib1900_OBJECTS = lib1900-lib1900.$(OBJEXT) $(am__objects_70) \
- $(am__objects_71) $(am__objects_72)
lib1900_OBJECTS = $(am_lib1900_OBJECTS)
lib1900_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_73 = lib2033-first.$(OBJEXT)
-am__objects_74 = lib2033-testutil.$(OBJEXT)
-am__objects_75 = ../../lib/lib2033-warnless.$(OBJEXT)
+am__objects_67 = lib2033-first.$(OBJEXT)
+am__objects_68 = lib2033-testutil.$(OBJEXT)
+am__objects_69 = ../../lib/lib2033-warnless.$(OBJEXT)
am_lib2033_OBJECTS = lib2033-libntlmconnect.$(OBJEXT) \
- $(am__objects_73) $(am__objects_74) $(am__objects_75)
+ $(am__objects_67) $(am__objects_68) $(am__objects_69)
lib2033_OBJECTS = $(am_lib2033_OBJECTS)
lib2033_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_76 = lib500-first.$(OBJEXT)
-am__objects_77 = lib500-testutil.$(OBJEXT)
-am__objects_78 = lib500-testtrace.$(OBJEXT)
-am_lib500_OBJECTS = lib500-lib500.$(OBJEXT) $(am__objects_76) \
- $(am__objects_77) $(am__objects_78)
+am__objects_70 = lib500-first.$(OBJEXT)
+am__objects_71 = lib500-testutil.$(OBJEXT)
+am__objects_72 = lib500-testtrace.$(OBJEXT)
+am_lib500_OBJECTS = lib500-lib500.$(OBJEXT) $(am__objects_70) \
+ $(am__objects_71) $(am__objects_72)
lib500_OBJECTS = $(am_lib500_OBJECTS)
lib500_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_79 = lib501-first.$(OBJEXT)
-am_lib501_OBJECTS = lib501-lib501.$(OBJEXT) $(am__objects_79)
+am__objects_73 = lib501-first.$(OBJEXT)
+am_lib501_OBJECTS = lib501-lib501.$(OBJEXT) $(am__objects_73)
lib501_OBJECTS = $(am_lib501_OBJECTS)
lib501_LDADD = $(LDADD)
lib501_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_80 = lib502-first.$(OBJEXT)
-am__objects_81 = lib502-testutil.$(OBJEXT)
-am__objects_82 = ../../lib/lib502-warnless.$(OBJEXT)
-am_lib502_OBJECTS = lib502-lib502.$(OBJEXT) $(am__objects_80) \
- $(am__objects_81) $(am__objects_82)
+am__objects_74 = lib502-first.$(OBJEXT)
+am__objects_75 = lib502-testutil.$(OBJEXT)
+am__objects_76 = ../../lib/lib502-warnless.$(OBJEXT)
+am_lib502_OBJECTS = lib502-lib502.$(OBJEXT) $(am__objects_74) \
+ $(am__objects_75) $(am__objects_76)
lib502_OBJECTS = $(am_lib502_OBJECTS)
lib502_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_83 = lib503-first.$(OBJEXT)
-am__objects_84 = lib503-testutil.$(OBJEXT)
-am__objects_85 = ../../lib/lib503-warnless.$(OBJEXT)
-am_lib503_OBJECTS = lib503-lib503.$(OBJEXT) $(am__objects_83) \
- $(am__objects_84) $(am__objects_85)
+am__objects_77 = lib503-first.$(OBJEXT)
+am__objects_78 = lib503-testutil.$(OBJEXT)
+am__objects_79 = ../../lib/lib503-warnless.$(OBJEXT)
+am_lib503_OBJECTS = lib503-lib503.$(OBJEXT) $(am__objects_77) \
+ $(am__objects_78) $(am__objects_79)
lib503_OBJECTS = $(am_lib503_OBJECTS)
lib503_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_86 = lib504-first.$(OBJEXT)
-am__objects_87 = lib504-testutil.$(OBJEXT)
-am__objects_88 = ../../lib/lib504-warnless.$(OBJEXT)
-am_lib504_OBJECTS = lib504-lib504.$(OBJEXT) $(am__objects_86) \
- $(am__objects_87) $(am__objects_88)
+am__objects_80 = lib504-first.$(OBJEXT)
+am__objects_81 = lib504-testutil.$(OBJEXT)
+am__objects_82 = ../../lib/lib504-warnless.$(OBJEXT)
+am_lib504_OBJECTS = lib504-lib504.$(OBJEXT) $(am__objects_80) \
+ $(am__objects_81) $(am__objects_82)
lib504_OBJECTS = $(am_lib504_OBJECTS)
lib504_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_89 = lib505-first.$(OBJEXT)
-am_lib505_OBJECTS = lib505-lib505.$(OBJEXT) $(am__objects_89)
+am__objects_83 = lib505-first.$(OBJEXT)
+am_lib505_OBJECTS = lib505-lib505.$(OBJEXT) $(am__objects_83)
lib505_OBJECTS = $(am_lib505_OBJECTS)
lib505_LDADD = $(LDADD)
lib505_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_90 = lib506-first.$(OBJEXT)
-am_lib506_OBJECTS = lib506-lib506.$(OBJEXT) $(am__objects_90)
+am__objects_84 = lib506-first.$(OBJEXT)
+am_lib506_OBJECTS = lib506-lib506.$(OBJEXT) $(am__objects_84)
lib506_OBJECTS = $(am_lib506_OBJECTS)
lib506_LDADD = $(LDADD)
lib506_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_91 = lib507-first.$(OBJEXT)
-am__objects_92 = lib507-testutil.$(OBJEXT)
-am__objects_93 = ../../lib/lib507-warnless.$(OBJEXT)
-am_lib507_OBJECTS = lib507-lib507.$(OBJEXT) $(am__objects_91) \
- $(am__objects_92) $(am__objects_93)
+am__objects_85 = lib507-first.$(OBJEXT)
+am__objects_86 = lib507-testutil.$(OBJEXT)
+am__objects_87 = ../../lib/lib507-warnless.$(OBJEXT)
+am_lib507_OBJECTS = lib507-lib507.$(OBJEXT) $(am__objects_85) \
+ $(am__objects_86) $(am__objects_87)
lib507_OBJECTS = $(am_lib507_OBJECTS)
lib507_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_94 = lib508-first.$(OBJEXT)
-am_lib508_OBJECTS = lib508-lib508.$(OBJEXT) $(am__objects_94)
+am__objects_88 = lib508-first.$(OBJEXT)
+am_lib508_OBJECTS = lib508-lib508.$(OBJEXT) $(am__objects_88)
lib508_OBJECTS = $(am_lib508_OBJECTS)
lib508_LDADD = $(LDADD)
lib508_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_95 = lib509-first.$(OBJEXT)
-am_lib509_OBJECTS = lib509-lib509.$(OBJEXT) $(am__objects_95)
+am__objects_89 = lib509-first.$(OBJEXT)
+am_lib509_OBJECTS = lib509-lib509.$(OBJEXT) $(am__objects_89)
lib509_OBJECTS = $(am_lib509_OBJECTS)
lib509_LDADD = $(LDADD)
lib509_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_96 = lib510-first.$(OBJEXT)
-am_lib510_OBJECTS = lib510-lib510.$(OBJEXT) $(am__objects_96)
+am__objects_90 = lib510-first.$(OBJEXT)
+am_lib510_OBJECTS = lib510-lib510.$(OBJEXT) $(am__objects_90)
lib510_OBJECTS = $(am_lib510_OBJECTS)
lib510_LDADD = $(LDADD)
lib510_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_97 = lib511-first.$(OBJEXT)
-am_lib511_OBJECTS = lib511-lib511.$(OBJEXT) $(am__objects_97)
+am__objects_91 = lib511-first.$(OBJEXT)
+am_lib511_OBJECTS = lib511-lib511.$(OBJEXT) $(am__objects_91)
lib511_OBJECTS = $(am_lib511_OBJECTS)
lib511_LDADD = $(LDADD)
lib511_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_98 = lib512-first.$(OBJEXT)
-am_lib512_OBJECTS = lib512-lib512.$(OBJEXT) $(am__objects_98)
+am__objects_92 = lib512-first.$(OBJEXT)
+am_lib512_OBJECTS = lib512-lib512.$(OBJEXT) $(am__objects_92)
lib512_OBJECTS = $(am_lib512_OBJECTS)
lib512_LDADD = $(LDADD)
lib512_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_99 = lib513-first.$(OBJEXT)
-am_lib513_OBJECTS = lib513-lib513.$(OBJEXT) $(am__objects_99)
+am__objects_93 = lib513-first.$(OBJEXT)
+am_lib513_OBJECTS = lib513-lib513.$(OBJEXT) $(am__objects_93)
lib513_OBJECTS = $(am_lib513_OBJECTS)
lib513_LDADD = $(LDADD)
lib513_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_100 = lib514-first.$(OBJEXT)
-am_lib514_OBJECTS = lib514-lib514.$(OBJEXT) $(am__objects_100)
+am__objects_94 = lib514-first.$(OBJEXT)
+am_lib514_OBJECTS = lib514-lib514.$(OBJEXT) $(am__objects_94)
lib514_OBJECTS = $(am_lib514_OBJECTS)
lib514_LDADD = $(LDADD)
lib514_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_101 = lib515-first.$(OBJEXT)
-am_lib515_OBJECTS = lib515-lib515.$(OBJEXT) $(am__objects_101)
+am__objects_95 = lib515-first.$(OBJEXT)
+am_lib515_OBJECTS = lib515-lib515.$(OBJEXT) $(am__objects_95)
lib515_OBJECTS = $(am_lib515_OBJECTS)
lib515_LDADD = $(LDADD)
lib515_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_102 = lib516-first.$(OBJEXT)
-am_lib516_OBJECTS = lib516-lib516.$(OBJEXT) $(am__objects_102)
+am__objects_96 = lib516-first.$(OBJEXT)
+am_lib516_OBJECTS = lib516-lib516.$(OBJEXT) $(am__objects_96)
lib516_OBJECTS = $(am_lib516_OBJECTS)
lib516_LDADD = $(LDADD)
lib516_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_103 = lib517-first.$(OBJEXT)
-am_lib517_OBJECTS = lib517-lib517.$(OBJEXT) $(am__objects_103)
+am__objects_97 = lib517-first.$(OBJEXT)
+am_lib517_OBJECTS = lib517-lib517.$(OBJEXT) $(am__objects_97)
lib517_OBJECTS = $(am_lib517_OBJECTS)
lib517_LDADD = $(LDADD)
lib517_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_104 = lib518-first.$(OBJEXT)
-am__objects_105 = ../../lib/lib518-warnless.$(OBJEXT)
-am_lib518_OBJECTS = lib518-lib518.$(OBJEXT) $(am__objects_104) \
- $(am__objects_105)
+am__objects_98 = lib518-first.$(OBJEXT)
+am__objects_99 = ../../lib/lib518-warnless.$(OBJEXT)
+am_lib518_OBJECTS = lib518-lib518.$(OBJEXT) $(am__objects_98) \
+ $(am__objects_99)
lib518_OBJECTS = $(am_lib518_OBJECTS)
lib518_LDADD = $(LDADD)
lib518_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_106 = lib519-first.$(OBJEXT)
-am_lib519_OBJECTS = lib519-lib519.$(OBJEXT) $(am__objects_106)
+am__objects_100 = lib519-first.$(OBJEXT)
+am_lib519_OBJECTS = lib519-lib519.$(OBJEXT) $(am__objects_100)
lib519_OBJECTS = $(am_lib519_OBJECTS)
lib519_LDADD = $(LDADD)
lib519_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_107 = lib520-first.$(OBJEXT)
-am_lib520_OBJECTS = lib520-lib520.$(OBJEXT) $(am__objects_107)
+am__objects_101 = lib520-first.$(OBJEXT)
+am_lib520_OBJECTS = lib520-lib520.$(OBJEXT) $(am__objects_101)
lib520_OBJECTS = $(am_lib520_OBJECTS)
lib520_LDADD = $(LDADD)
lib520_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_108 = lib521-first.$(OBJEXT)
-am_lib521_OBJECTS = lib521-lib521.$(OBJEXT) $(am__objects_108)
+am__objects_102 = lib521-first.$(OBJEXT)
+am_lib521_OBJECTS = lib521-lib521.$(OBJEXT) $(am__objects_102)
lib521_OBJECTS = $(am_lib521_OBJECTS)
lib521_LDADD = $(LDADD)
lib521_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_109 = lib523-first.$(OBJEXT)
-am_lib523_OBJECTS = lib523-lib523.$(OBJEXT) $(am__objects_109)
+am__objects_103 = lib523-first.$(OBJEXT)
+am_lib523_OBJECTS = lib523-lib523.$(OBJEXT) $(am__objects_103)
lib523_OBJECTS = $(am_lib523_OBJECTS)
lib523_LDADD = $(LDADD)
lib523_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_110 = lib524-first.$(OBJEXT)
-am_lib524_OBJECTS = lib524-lib524.$(OBJEXT) $(am__objects_110)
+am__objects_104 = lib524-first.$(OBJEXT)
+am_lib524_OBJECTS = lib524-lib524.$(OBJEXT) $(am__objects_104)
lib524_OBJECTS = $(am_lib524_OBJECTS)
lib524_LDADD = $(LDADD)
lib524_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_111 = lib525-first.$(OBJEXT)
-am__objects_112 = lib525-testutil.$(OBJEXT)
-am__objects_113 = ../../lib/lib525-warnless.$(OBJEXT)
-am_lib525_OBJECTS = lib525-lib525.$(OBJEXT) $(am__objects_111) \
- $(am__objects_112) $(am__objects_113)
+am__objects_105 = lib525-first.$(OBJEXT)
+am__objects_106 = lib525-testutil.$(OBJEXT)
+am__objects_107 = ../../lib/lib525-warnless.$(OBJEXT)
+am_lib525_OBJECTS = lib525-lib525.$(OBJEXT) $(am__objects_105) \
+ $(am__objects_106) $(am__objects_107)
lib525_OBJECTS = $(am_lib525_OBJECTS)
lib525_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_114 = lib526-first.$(OBJEXT)
-am__objects_115 = lib526-testutil.$(OBJEXT)
-am__objects_116 = ../../lib/lib526-warnless.$(OBJEXT)
-am_lib526_OBJECTS = lib526-lib526.$(OBJEXT) $(am__objects_114) \
- $(am__objects_115) $(am__objects_116)
+am__objects_108 = lib526-first.$(OBJEXT)
+am__objects_109 = lib526-testutil.$(OBJEXT)
+am__objects_110 = ../../lib/lib526-warnless.$(OBJEXT)
+am_lib526_OBJECTS = lib526-lib526.$(OBJEXT) $(am__objects_108) \
+ $(am__objects_109) $(am__objects_110)
lib526_OBJECTS = $(am_lib526_OBJECTS)
lib526_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_117 = lib527-first.$(OBJEXT)
-am__objects_118 = lib527-testutil.$(OBJEXT)
-am__objects_119 = ../../lib/lib527-warnless.$(OBJEXT)
-am_lib527_OBJECTS = lib527-lib526.$(OBJEXT) $(am__objects_117) \
- $(am__objects_118) $(am__objects_119)
+am__objects_111 = lib527-first.$(OBJEXT)
+am__objects_112 = lib527-testutil.$(OBJEXT)
+am__objects_113 = ../../lib/lib527-warnless.$(OBJEXT)
+am_lib527_OBJECTS = lib527-lib526.$(OBJEXT) $(am__objects_111) \
+ $(am__objects_112) $(am__objects_113)
lib527_OBJECTS = $(am_lib527_OBJECTS)
lib527_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_120 = lib529-first.$(OBJEXT)
-am__objects_121 = lib529-testutil.$(OBJEXT)
-am__objects_122 = ../../lib/lib529-warnless.$(OBJEXT)
-am_lib529_OBJECTS = lib529-lib525.$(OBJEXT) $(am__objects_120) \
- $(am__objects_121) $(am__objects_122)
+am__objects_114 = lib529-first.$(OBJEXT)
+am__objects_115 = lib529-testutil.$(OBJEXT)
+am__objects_116 = ../../lib/lib529-warnless.$(OBJEXT)
+am_lib529_OBJECTS = lib529-lib525.$(OBJEXT) $(am__objects_114) \
+ $(am__objects_115) $(am__objects_116)
lib529_OBJECTS = $(am_lib529_OBJECTS)
lib529_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_123 = lib530-first.$(OBJEXT)
-am__objects_124 = lib530-testutil.$(OBJEXT)
-am__objects_125 = ../../lib/lib530-warnless.$(OBJEXT)
-am_lib530_OBJECTS = lib530-lib530.$(OBJEXT) $(am__objects_123) \
- $(am__objects_124) $(am__objects_125)
+am__objects_117 = lib530-first.$(OBJEXT)
+am__objects_118 = lib530-testutil.$(OBJEXT)
+am__objects_119 = ../../lib/lib530-warnless.$(OBJEXT)
+am_lib530_OBJECTS = lib530-lib530.$(OBJEXT) $(am__objects_117) \
+ $(am__objects_118) $(am__objects_119)
lib530_OBJECTS = $(am_lib530_OBJECTS)
lib530_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_126 = lib532-first.$(OBJEXT)
-am__objects_127 = lib532-testutil.$(OBJEXT)
-am__objects_128 = ../../lib/lib532-warnless.$(OBJEXT)
-am_lib532_OBJECTS = lib532-lib526.$(OBJEXT) $(am__objects_126) \
- $(am__objects_127) $(am__objects_128)
+am__objects_120 = lib532-first.$(OBJEXT)
+am__objects_121 = lib532-testutil.$(OBJEXT)
+am__objects_122 = ../../lib/lib532-warnless.$(OBJEXT)
+am_lib532_OBJECTS = lib532-lib526.$(OBJEXT) $(am__objects_120) \
+ $(am__objects_121) $(am__objects_122)
lib532_OBJECTS = $(am_lib532_OBJECTS)
lib532_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_129 = lib533-first.$(OBJEXT)
-am__objects_130 = lib533-testutil.$(OBJEXT)
-am__objects_131 = ../../lib/lib533-warnless.$(OBJEXT)
-am_lib533_OBJECTS = lib533-lib533.$(OBJEXT) $(am__objects_129) \
- $(am__objects_130) $(am__objects_131)
+am__objects_123 = lib533-first.$(OBJEXT)
+am__objects_124 = lib533-testutil.$(OBJEXT)
+am__objects_125 = ../../lib/lib533-warnless.$(OBJEXT)
+am_lib533_OBJECTS = lib533-lib533.$(OBJEXT) $(am__objects_123) \
+ $(am__objects_124) $(am__objects_125)
lib533_OBJECTS = $(am_lib533_OBJECTS)
lib533_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_132 = lib536-first.$(OBJEXT)
-am__objects_133 = lib536-testutil.$(OBJEXT)
-am__objects_134 = ../../lib/lib536-warnless.$(OBJEXT)
-am_lib536_OBJECTS = lib536-lib536.$(OBJEXT) $(am__objects_132) \
- $(am__objects_133) $(am__objects_134)
+am__objects_126 = lib536-first.$(OBJEXT)
+am__objects_127 = lib536-testutil.$(OBJEXT)
+am__objects_128 = ../../lib/lib536-warnless.$(OBJEXT)
+am_lib536_OBJECTS = lib536-lib536.$(OBJEXT) $(am__objects_126) \
+ $(am__objects_127) $(am__objects_128)
lib536_OBJECTS = $(am_lib536_OBJECTS)
lib536_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_135 = lib537-first.$(OBJEXT)
-am__objects_136 = ../../lib/lib537-warnless.$(OBJEXT)
-am_lib537_OBJECTS = lib537-lib537.$(OBJEXT) $(am__objects_135) \
- $(am__objects_136)
+am__objects_129 = lib537-first.$(OBJEXT)
+am__objects_130 = ../../lib/lib537-warnless.$(OBJEXT)
+am_lib537_OBJECTS = lib537-lib537.$(OBJEXT) $(am__objects_129) \
+ $(am__objects_130)
lib537_OBJECTS = $(am_lib537_OBJECTS)
lib537_LDADD = $(LDADD)
lib537_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_137 = lib539-first.$(OBJEXT)
-am_lib539_OBJECTS = lib539-lib539.$(OBJEXT) $(am__objects_137)
+am__objects_131 = lib539-first.$(OBJEXT)
+am_lib539_OBJECTS = lib539-lib539.$(OBJEXT) $(am__objects_131)
lib539_OBJECTS = $(am_lib539_OBJECTS)
lib539_LDADD = $(LDADD)
lib539_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_138 = lib540-first.$(OBJEXT)
-am__objects_139 = lib540-testutil.$(OBJEXT)
-am__objects_140 = ../../lib/lib540-warnless.$(OBJEXT)
-am_lib540_OBJECTS = lib540-lib540.$(OBJEXT) $(am__objects_138) \
- $(am__objects_139) $(am__objects_140)
+am__objects_132 = lib540-first.$(OBJEXT)
+am__objects_133 = lib540-testutil.$(OBJEXT)
+am__objects_134 = ../../lib/lib540-warnless.$(OBJEXT)
+am_lib540_OBJECTS = lib540-lib540.$(OBJEXT) $(am__objects_132) \
+ $(am__objects_133) $(am__objects_134)
lib540_OBJECTS = $(am_lib540_OBJECTS)
lib540_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_141 = lib541-first.$(OBJEXT)
-am_lib541_OBJECTS = lib541-lib541.$(OBJEXT) $(am__objects_141)
+am__objects_135 = lib541-first.$(OBJEXT)
+am_lib541_OBJECTS = lib541-lib541.$(OBJEXT) $(am__objects_135)
lib541_OBJECTS = $(am_lib541_OBJECTS)
lib541_LDADD = $(LDADD)
lib541_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_142 = lib542-first.$(OBJEXT)
-am_lib542_OBJECTS = lib542-lib542.$(OBJEXT) $(am__objects_142)
+am__objects_136 = lib542-first.$(OBJEXT)
+am_lib542_OBJECTS = lib542-lib542.$(OBJEXT) $(am__objects_136)
lib542_OBJECTS = $(am_lib542_OBJECTS)
lib542_LDADD = $(LDADD)
lib542_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_143 = lib543-first.$(OBJEXT)
-am_lib543_OBJECTS = lib543-lib543.$(OBJEXT) $(am__objects_143)
+am__objects_137 = lib543-first.$(OBJEXT)
+am_lib543_OBJECTS = lib543-lib543.$(OBJEXT) $(am__objects_137)
lib543_OBJECTS = $(am_lib543_OBJECTS)
lib543_LDADD = $(LDADD)
lib543_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_144 = lib544-first.$(OBJEXT)
-am_lib544_OBJECTS = lib544-lib544.$(OBJEXT) $(am__objects_144)
+am__objects_138 = lib544-first.$(OBJEXT)
+am_lib544_OBJECTS = lib544-lib544.$(OBJEXT) $(am__objects_138)
lib544_OBJECTS = $(am_lib544_OBJECTS)
lib544_LDADD = $(LDADD)
lib544_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_145 = lib545-first.$(OBJEXT)
-am_lib545_OBJECTS = lib545-lib544.$(OBJEXT) $(am__objects_145)
+am__objects_139 = lib545-first.$(OBJEXT)
+am_lib545_OBJECTS = lib545-lib544.$(OBJEXT) $(am__objects_139)
lib545_OBJECTS = $(am_lib545_OBJECTS)
lib545_LDADD = $(LDADD)
lib545_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_146 = lib547-first.$(OBJEXT)
-am_lib547_OBJECTS = lib547-lib547.$(OBJEXT) $(am__objects_146)
+am__objects_140 = lib547-first.$(OBJEXT)
+am_lib547_OBJECTS = lib547-lib547.$(OBJEXT) $(am__objects_140)
lib547_OBJECTS = $(am_lib547_OBJECTS)
lib547_LDADD = $(LDADD)
lib547_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_147 = lib548-first.$(OBJEXT)
-am_lib548_OBJECTS = lib548-lib547.$(OBJEXT) $(am__objects_147)
+am__objects_141 = lib548-first.$(OBJEXT)
+am_lib548_OBJECTS = lib548-lib547.$(OBJEXT) $(am__objects_141)
lib548_OBJECTS = $(am_lib548_OBJECTS)
lib548_LDADD = $(LDADD)
lib548_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_148 = lib549-first.$(OBJEXT)
-am_lib549_OBJECTS = lib549-lib549.$(OBJEXT) $(am__objects_148)
+am__objects_142 = lib549-first.$(OBJEXT)
+am_lib549_OBJECTS = lib549-lib549.$(OBJEXT) $(am__objects_142)
lib549_OBJECTS = $(am_lib549_OBJECTS)
lib549_LDADD = $(LDADD)
lib549_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_149 = lib552-first.$(OBJEXT)
-am__objects_150 = ../../lib/lib552-warnless.$(OBJEXT)
-am_lib552_OBJECTS = lib552-lib552.$(OBJEXT) $(am__objects_149) \
- $(am__objects_150)
+am__objects_143 = lib552-first.$(OBJEXT)
+am__objects_144 = ../../lib/lib552-warnless.$(OBJEXT)
+am_lib552_OBJECTS = lib552-lib552.$(OBJEXT) $(am__objects_143) \
+ $(am__objects_144)
lib552_OBJECTS = $(am_lib552_OBJECTS)
lib552_LDADD = $(LDADD)
lib552_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_151 = lib553-first.$(OBJEXT)
-am_lib553_OBJECTS = lib553-lib553.$(OBJEXT) $(am__objects_151)
+am__objects_145 = lib553-first.$(OBJEXT)
+am_lib553_OBJECTS = lib553-lib553.$(OBJEXT) $(am__objects_145)
lib553_OBJECTS = $(am_lib553_OBJECTS)
lib553_LDADD = $(LDADD)
lib553_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_152 = lib554-first.$(OBJEXT)
-am_lib554_OBJECTS = lib554-lib554.$(OBJEXT) $(am__objects_152)
+am__objects_146 = lib554-first.$(OBJEXT)
+am_lib554_OBJECTS = lib554-lib554.$(OBJEXT) $(am__objects_146)
lib554_OBJECTS = $(am_lib554_OBJECTS)
lib554_LDADD = $(LDADD)
lib554_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_153 = lib555-first.$(OBJEXT)
-am__objects_154 = lib555-testutil.$(OBJEXT)
-am__objects_155 = ../../lib/lib555-warnless.$(OBJEXT)
-am_lib555_OBJECTS = lib555-lib555.$(OBJEXT) $(am__objects_153) \
- $(am__objects_154) $(am__objects_155)
+am__objects_147 = lib555-first.$(OBJEXT)
+am__objects_148 = lib555-testutil.$(OBJEXT)
+am__objects_149 = ../../lib/lib555-warnless.$(OBJEXT)
+am_lib555_OBJECTS = lib555-lib555.$(OBJEXT) $(am__objects_147) \
+ $(am__objects_148) $(am__objects_149)
lib555_OBJECTS = $(am_lib555_OBJECTS)
lib555_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_156 = lib556-first.$(OBJEXT)
-am__objects_157 = ../../lib/lib556-warnless.$(OBJEXT)
-am_lib556_OBJECTS = lib556-lib556.$(OBJEXT) $(am__objects_156) \
- $(am__objects_157)
+am__objects_150 = lib556-first.$(OBJEXT)
+am__objects_151 = ../../lib/lib556-warnless.$(OBJEXT)
+am_lib556_OBJECTS = lib556-lib556.$(OBJEXT) $(am__objects_150) \
+ $(am__objects_151)
lib556_OBJECTS = $(am_lib556_OBJECTS)
lib556_LDADD = $(LDADD)
lib556_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_158 = lib557-first.$(OBJEXT)
-am_lib557_OBJECTS = lib557-lib557.$(OBJEXT) $(am__objects_158)
+am__objects_152 = lib557-first.$(OBJEXT)
+am_lib557_OBJECTS = lib557-lib557.$(OBJEXT) $(am__objects_152)
lib557_OBJECTS = $(am_lib557_OBJECTS)
lib557_LDADD = $(LDADD)
lib557_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_159 = lib558-first.$(OBJEXT)
-am_lib558_OBJECTS = lib558-lib558.$(OBJEXT) $(am__objects_159)
+am__objects_153 = lib558-first.$(OBJEXT)
+am_lib558_OBJECTS = lib558-lib558.$(OBJEXT) $(am__objects_153)
lib558_OBJECTS = $(am_lib558_OBJECTS)
lib558_LDADD = $(LDADD)
lib558_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_160 = lib560-first.$(OBJEXT)
-am__objects_161 = lib560-testutil.$(OBJEXT)
-am__objects_162 = ../../lib/lib560-warnless.$(OBJEXT)
-am_lib560_OBJECTS = lib560-lib560.$(OBJEXT) $(am__objects_160) \
- $(am__objects_161) $(am__objects_162)
+am__objects_154 = lib560-first.$(OBJEXT)
+am__objects_155 = lib560-testutil.$(OBJEXT)
+am__objects_156 = ../../lib/lib560-warnless.$(OBJEXT)
+am_lib560_OBJECTS = lib560-lib560.$(OBJEXT) $(am__objects_154) \
+ $(am__objects_155) $(am__objects_156)
lib560_OBJECTS = $(am_lib560_OBJECTS)
lib560_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_163 = lib562-first.$(OBJEXT)
-am_lib562_OBJECTS = lib562-lib562.$(OBJEXT) $(am__objects_163)
+am__objects_157 = lib562-first.$(OBJEXT)
+am_lib562_OBJECTS = lib562-lib562.$(OBJEXT) $(am__objects_157)
lib562_OBJECTS = $(am_lib562_OBJECTS)
lib562_LDADD = $(LDADD)
lib562_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_164 = lib564-first.$(OBJEXT)
-am__objects_165 = lib564-testutil.$(OBJEXT)
-am__objects_166 = ../../lib/lib564-warnless.$(OBJEXT)
-am_lib564_OBJECTS = lib564-lib564.$(OBJEXT) $(am__objects_164) \
- $(am__objects_165) $(am__objects_166)
+am__objects_158 = lib564-first.$(OBJEXT)
+am__objects_159 = lib564-testutil.$(OBJEXT)
+am__objects_160 = ../../lib/lib564-warnless.$(OBJEXT)
+am_lib564_OBJECTS = lib564-lib564.$(OBJEXT) $(am__objects_158) \
+ $(am__objects_159) $(am__objects_160)
lib564_OBJECTS = $(am_lib564_OBJECTS)
lib564_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_167 = lib565-first.$(OBJEXT)
-am_lib565_OBJECTS = lib565-lib510.$(OBJEXT) $(am__objects_167)
+am__objects_161 = lib565-first.$(OBJEXT)
+am_lib565_OBJECTS = lib565-lib510.$(OBJEXT) $(am__objects_161)
lib565_OBJECTS = $(am_lib565_OBJECTS)
lib565_LDADD = $(LDADD)
lib565_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_168 = lib566-first.$(OBJEXT)
-am_lib566_OBJECTS = lib566-lib566.$(OBJEXT) $(am__objects_168)
+am__objects_162 = lib566-first.$(OBJEXT)
+am_lib566_OBJECTS = lib566-lib566.$(OBJEXT) $(am__objects_162)
lib566_OBJECTS = $(am_lib566_OBJECTS)
lib566_LDADD = $(LDADD)
lib566_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_169 = lib567-first.$(OBJEXT)
-am_lib567_OBJECTS = lib567-lib567.$(OBJEXT) $(am__objects_169)
+am__objects_163 = lib567-first.$(OBJEXT)
+am_lib567_OBJECTS = lib567-lib567.$(OBJEXT) $(am__objects_163)
lib567_OBJECTS = $(am_lib567_OBJECTS)
lib567_LDADD = $(LDADD)
lib567_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_170 = lib568-first.$(OBJEXT)
-am_lib568_OBJECTS = lib568-lib568.$(OBJEXT) $(am__objects_170)
+am__objects_164 = lib568-first.$(OBJEXT)
+am_lib568_OBJECTS = lib568-lib568.$(OBJEXT) $(am__objects_164)
lib568_OBJECTS = $(am_lib568_OBJECTS)
lib568_LDADD = $(LDADD)
lib568_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_171 = lib569-first.$(OBJEXT)
-am_lib569_OBJECTS = lib569-lib569.$(OBJEXT) $(am__objects_171)
+am__objects_165 = lib569-first.$(OBJEXT)
+am_lib569_OBJECTS = lib569-lib569.$(OBJEXT) $(am__objects_165)
lib569_OBJECTS = $(am_lib569_OBJECTS)
lib569_LDADD = $(LDADD)
lib569_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_172 = lib570-first.$(OBJEXT)
-am_lib570_OBJECTS = lib570-lib570.$(OBJEXT) $(am__objects_172)
+am__objects_166 = lib570-first.$(OBJEXT)
+am_lib570_OBJECTS = lib570-lib570.$(OBJEXT) $(am__objects_166)
lib570_OBJECTS = $(am_lib570_OBJECTS)
lib570_LDADD = $(LDADD)
lib570_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_173 = lib571-first.$(OBJEXT)
-am__objects_174 = ../../lib/lib571-warnless.$(OBJEXT)
-am_lib571_OBJECTS = lib571-lib571.$(OBJEXT) $(am__objects_173) \
- $(am__objects_174)
+am__objects_167 = lib571-first.$(OBJEXT)
+am__objects_168 = ../../lib/lib571-warnless.$(OBJEXT)
+am_lib571_OBJECTS = lib571-lib571.$(OBJEXT) $(am__objects_167) \
+ $(am__objects_168)
lib571_OBJECTS = $(am_lib571_OBJECTS)
lib571_LDADD = $(LDADD)
lib571_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_175 = lib572-first.$(OBJEXT)
-am_lib572_OBJECTS = lib572-lib572.$(OBJEXT) $(am__objects_175)
+am__objects_169 = lib572-first.$(OBJEXT)
+am_lib572_OBJECTS = lib572-lib572.$(OBJEXT) $(am__objects_169)
lib572_OBJECTS = $(am_lib572_OBJECTS)
lib572_LDADD = $(LDADD)
lib572_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_176 = lib573-first.$(OBJEXT)
-am__objects_177 = lib573-testutil.$(OBJEXT)
-am__objects_178 = ../../lib/lib573-warnless.$(OBJEXT)
-am__objects_179 = lib573-testtrace.$(OBJEXT)
-am_lib573_OBJECTS = lib573-lib573.$(OBJEXT) $(am__objects_176) \
- $(am__objects_177) $(am__objects_178) $(am__objects_179)
+am__objects_170 = lib573-first.$(OBJEXT)
+am__objects_171 = lib573-testutil.$(OBJEXT)
+am__objects_172 = ../../lib/lib573-warnless.$(OBJEXT)
+am__objects_173 = lib573-testtrace.$(OBJEXT)
+am_lib573_OBJECTS = lib573-lib573.$(OBJEXT) $(am__objects_170) \
+ $(am__objects_171) $(am__objects_172) $(am__objects_173)
lib573_OBJECTS = $(am_lib573_OBJECTS)
lib573_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_180 = lib574-first.$(OBJEXT)
-am_lib574_OBJECTS = lib574-lib574.$(OBJEXT) $(am__objects_180)
+am__objects_174 = lib574-first.$(OBJEXT)
+am_lib574_OBJECTS = lib574-lib574.$(OBJEXT) $(am__objects_174)
lib574_OBJECTS = $(am_lib574_OBJECTS)
lib574_LDADD = $(LDADD)
lib574_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_181 = lib575-first.$(OBJEXT)
-am__objects_182 = lib575-testutil.$(OBJEXT)
-am__objects_183 = ../../lib/lib575-warnless.$(OBJEXT)
-am_lib575_OBJECTS = lib575-lib575.$(OBJEXT) $(am__objects_181) \
- $(am__objects_182) $(am__objects_183)
+am__objects_175 = lib575-first.$(OBJEXT)
+am__objects_176 = lib575-testutil.$(OBJEXT)
+am__objects_177 = ../../lib/lib575-warnless.$(OBJEXT)
+am_lib575_OBJECTS = lib575-lib575.$(OBJEXT) $(am__objects_175) \
+ $(am__objects_176) $(am__objects_177)
lib575_OBJECTS = $(am_lib575_OBJECTS)
lib575_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_184 = lib576-first.$(OBJEXT)
-am_lib576_OBJECTS = lib576-lib576.$(OBJEXT) $(am__objects_184)
+am__objects_178 = lib576-first.$(OBJEXT)
+am_lib576_OBJECTS = lib576-lib576.$(OBJEXT) $(am__objects_178)
lib576_OBJECTS = $(am_lib576_OBJECTS)
lib576_LDADD = $(LDADD)
lib576_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_185 = lib578-first.$(OBJEXT)
-am_lib578_OBJECTS = lib578-lib578.$(OBJEXT) $(am__objects_185)
+am__objects_179 = lib578-first.$(OBJEXT)
+am_lib578_OBJECTS = lib578-lib578.$(OBJEXT) $(am__objects_179)
lib578_OBJECTS = $(am_lib578_OBJECTS)
lib578_LDADD = $(LDADD)
lib578_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_186 = lib579-first.$(OBJEXT)
-am_lib579_OBJECTS = lib579-lib579.$(OBJEXT) $(am__objects_186)
+am__objects_180 = lib579-first.$(OBJEXT)
+am_lib579_OBJECTS = lib579-lib579.$(OBJEXT) $(am__objects_180)
lib579_OBJECTS = $(am_lib579_OBJECTS)
lib579_LDADD = $(LDADD)
lib579_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_187 = lib582-first.$(OBJEXT)
-am__objects_188 = lib582-testutil.$(OBJEXT)
-am__objects_189 = ../../lib/lib582-warnless.$(OBJEXT)
-am_lib582_OBJECTS = lib582-lib582.$(OBJEXT) $(am__objects_187) \
- $(am__objects_188) $(am__objects_189)
+am__objects_181 = lib582-first.$(OBJEXT)
+am__objects_182 = lib582-testutil.$(OBJEXT)
+am__objects_183 = ../../lib/lib582-warnless.$(OBJEXT)
+am_lib582_OBJECTS = lib582-lib582.$(OBJEXT) $(am__objects_181) \
+ $(am__objects_182) $(am__objects_183)
lib582_OBJECTS = $(am_lib582_OBJECTS)
lib582_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_190 = lib583-first.$(OBJEXT)
-am_lib583_OBJECTS = lib583-lib583.$(OBJEXT) $(am__objects_190)
+am__objects_184 = lib583-first.$(OBJEXT)
+am_lib583_OBJECTS = lib583-lib583.$(OBJEXT) $(am__objects_184)
lib583_OBJECTS = $(am_lib583_OBJECTS)
lib583_LDADD = $(LDADD)
lib583_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_191 = lib585-first.$(OBJEXT)
-am__objects_192 = lib585-testutil.$(OBJEXT)
-am__objects_193 = lib585-testtrace.$(OBJEXT)
-am_lib585_OBJECTS = lib585-lib500.$(OBJEXT) $(am__objects_191) \
- $(am__objects_192) $(am__objects_193)
+am__objects_185 = lib585-first.$(OBJEXT)
+am__objects_186 = lib585-testutil.$(OBJEXT)
+am__objects_187 = lib585-testtrace.$(OBJEXT)
+am_lib585_OBJECTS = lib585-lib500.$(OBJEXT) $(am__objects_185) \
+ $(am__objects_186) $(am__objects_187)
lib585_OBJECTS = $(am_lib585_OBJECTS)
lib585_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_194 = lib586-first.$(OBJEXT)
-am_lib586_OBJECTS = lib586-lib586.$(OBJEXT) $(am__objects_194)
+am__objects_188 = lib586-first.$(OBJEXT)
+am_lib586_OBJECTS = lib586-lib586.$(OBJEXT) $(am__objects_188)
lib586_OBJECTS = $(am_lib586_OBJECTS)
lib586_LDADD = $(LDADD)
lib586_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_195 = lib587-first.$(OBJEXT)
-am_lib587_OBJECTS = lib587-lib554.$(OBJEXT) $(am__objects_195)
+am__objects_189 = lib587-first.$(OBJEXT)
+am_lib587_OBJECTS = lib587-lib554.$(OBJEXT) $(am__objects_189)
lib587_OBJECTS = $(am_lib587_OBJECTS)
lib587_LDADD = $(LDADD)
lib587_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_196 = lib590-first.$(OBJEXT)
-am_lib590_OBJECTS = lib590-lib590.$(OBJEXT) $(am__objects_196)
+am__objects_190 = lib590-first.$(OBJEXT)
+am_lib590_OBJECTS = lib590-lib590.$(OBJEXT) $(am__objects_190)
lib590_OBJECTS = $(am_lib590_OBJECTS)
lib590_LDADD = $(LDADD)
lib590_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_197 = lib591-first.$(OBJEXT)
-am__objects_198 = lib591-testutil.$(OBJEXT)
-am__objects_199 = ../../lib/lib591-warnless.$(OBJEXT)
-am_lib591_OBJECTS = lib591-lib591.$(OBJEXT) $(am__objects_197) \
- $(am__objects_198) $(am__objects_199)
+am__objects_191 = lib591-first.$(OBJEXT)
+am__objects_192 = lib591-testutil.$(OBJEXT)
+am__objects_193 = ../../lib/lib591-warnless.$(OBJEXT)
+am_lib591_OBJECTS = lib591-lib591.$(OBJEXT) $(am__objects_191) \
+ $(am__objects_192) $(am__objects_193)
lib591_OBJECTS = $(am_lib591_OBJECTS)
lib591_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_200 = lib597-first.$(OBJEXT)
-am__objects_201 = lib597-testutil.$(OBJEXT)
-am__objects_202 = ../../lib/lib597-warnless.$(OBJEXT)
-am_lib597_OBJECTS = lib597-lib597.$(OBJEXT) $(am__objects_200) \
- $(am__objects_201) $(am__objects_202)
+am__objects_194 = lib597-first.$(OBJEXT)
+am__objects_195 = lib597-testutil.$(OBJEXT)
+am__objects_196 = ../../lib/lib597-warnless.$(OBJEXT)
+am_lib597_OBJECTS = lib597-lib597.$(OBJEXT) $(am__objects_194) \
+ $(am__objects_195) $(am__objects_196)
lib597_OBJECTS = $(am_lib597_OBJECTS)
lib597_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_203 = lib598-first.$(OBJEXT)
-am_lib598_OBJECTS = lib598-lib598.$(OBJEXT) $(am__objects_203)
+am__objects_197 = lib598-first.$(OBJEXT)
+am_lib598_OBJECTS = lib598-lib598.$(OBJEXT) $(am__objects_197)
lib598_OBJECTS = $(am_lib598_OBJECTS)
lib598_LDADD = $(LDADD)
lib598_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_204 = lib599-first.$(OBJEXT)
-am_lib599_OBJECTS = lib599-lib599.$(OBJEXT) $(am__objects_204)
+am__objects_198 = lib599-first.$(OBJEXT)
+am_lib599_OBJECTS = lib599-lib599.$(OBJEXT) $(am__objects_198)
lib599_OBJECTS = $(am_lib599_OBJECTS)
lib599_LDADD = $(LDADD)
lib599_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_205 = libauthretry-first.$(OBJEXT)
+am__objects_199 = libauthretry-first.$(OBJEXT)
am_libauthretry_OBJECTS = libauthretry-libauthretry.$(OBJEXT) \
- $(am__objects_205)
+ $(am__objects_199)
libauthretry_OBJECTS = $(am_libauthretry_OBJECTS)
libauthretry_LDADD = $(LDADD)
libauthretry_DEPENDENCIES = $(am__DEPENDENCIES_1)
-am__objects_206 = libntlmconnect-first.$(OBJEXT)
-am__objects_207 = libntlmconnect-testutil.$(OBJEXT)
-am__objects_208 = ../../lib/libntlmconnect-warnless.$(OBJEXT)
+am__objects_200 = libntlmconnect-first.$(OBJEXT)
+am__objects_201 = libntlmconnect-testutil.$(OBJEXT)
+am__objects_202 = ../../lib/libntlmconnect-warnless.$(OBJEXT)
am_libntlmconnect_OBJECTS = libntlmconnect-libntlmconnect.$(OBJEXT) \
- $(am__objects_206) $(am__objects_207) $(am__objects_208)
+ $(am__objects_200) $(am__objects_201) $(am__objects_202)
libntlmconnect_OBJECTS = $(am_libntlmconnect_OBJECTS)
libntlmconnect_DEPENDENCIES = $(am__DEPENDENCIES_1)
AM_V_P = $(am__v_P_@AM_V@)
@@ -854,34 +831,33 @@ SOURCES = $(libhostname_la_SOURCES) $(chkhostname_SOURCES) \
$(lib1512_SOURCES) $(lib1513_SOURCES) $(lib1514_SOURCES) \
$(lib1515_SOURCES) $(lib1520_SOURCES) $(lib1525_SOURCES) \
$(lib1526_SOURCES) $(lib1527_SOURCES) $(lib1528_SOURCES) \
- $(lib1529_SOURCES) $(lib1530_SOURCES) $(lib1531_SOURCES) \
- $(lib1900_SOURCES) $(lib2033_SOURCES) $(lib500_SOURCES) \
- $(lib501_SOURCES) $(lib502_SOURCES) $(lib503_SOURCES) \
- $(lib504_SOURCES) $(lib505_SOURCES) $(lib506_SOURCES) \
- $(lib507_SOURCES) $(lib508_SOURCES) $(lib509_SOURCES) \
- $(lib510_SOURCES) $(lib511_SOURCES) $(lib512_SOURCES) \
- $(lib513_SOURCES) $(lib514_SOURCES) $(lib515_SOURCES) \
- $(lib516_SOURCES) $(lib517_SOURCES) $(lib518_SOURCES) \
- $(lib519_SOURCES) $(lib520_SOURCES) $(lib521_SOURCES) \
- $(lib523_SOURCES) $(lib524_SOURCES) $(lib525_SOURCES) \
- $(lib526_SOURCES) $(lib527_SOURCES) $(lib529_SOURCES) \
- $(lib530_SOURCES) $(lib532_SOURCES) $(lib533_SOURCES) \
- $(lib536_SOURCES) $(lib537_SOURCES) $(lib539_SOURCES) \
- $(lib540_SOURCES) $(lib541_SOURCES) $(lib542_SOURCES) \
- $(lib543_SOURCES) $(lib544_SOURCES) $(lib545_SOURCES) \
- $(lib547_SOURCES) $(lib548_SOURCES) $(lib549_SOURCES) \
- $(lib552_SOURCES) $(lib553_SOURCES) $(lib554_SOURCES) \
- $(lib555_SOURCES) $(lib556_SOURCES) $(lib557_SOURCES) \
- $(lib558_SOURCES) $(lib560_SOURCES) $(lib562_SOURCES) \
- $(lib564_SOURCES) $(lib565_SOURCES) $(lib566_SOURCES) \
- $(lib567_SOURCES) $(lib568_SOURCES) $(lib569_SOURCES) \
- $(lib570_SOURCES) $(lib571_SOURCES) $(lib572_SOURCES) \
- $(lib573_SOURCES) $(lib574_SOURCES) $(lib575_SOURCES) \
- $(lib576_SOURCES) $(lib578_SOURCES) $(lib579_SOURCES) \
- $(lib582_SOURCES) $(lib583_SOURCES) $(lib585_SOURCES) \
- $(lib586_SOURCES) $(lib587_SOURCES) $(lib590_SOURCES) \
- $(lib591_SOURCES) $(lib597_SOURCES) $(lib598_SOURCES) \
- $(lib599_SOURCES) $(libauthretry_SOURCES) \
+ $(lib1529_SOURCES) $(lib1900_SOURCES) $(lib2033_SOURCES) \
+ $(lib500_SOURCES) $(lib501_SOURCES) $(lib502_SOURCES) \
+ $(lib503_SOURCES) $(lib504_SOURCES) $(lib505_SOURCES) \
+ $(lib506_SOURCES) $(lib507_SOURCES) $(lib508_SOURCES) \
+ $(lib509_SOURCES) $(lib510_SOURCES) $(lib511_SOURCES) \
+ $(lib512_SOURCES) $(lib513_SOURCES) $(lib514_SOURCES) \
+ $(lib515_SOURCES) $(lib516_SOURCES) $(lib517_SOURCES) \
+ $(lib518_SOURCES) $(lib519_SOURCES) $(lib520_SOURCES) \
+ $(lib521_SOURCES) $(lib523_SOURCES) $(lib524_SOURCES) \
+ $(lib525_SOURCES) $(lib526_SOURCES) $(lib527_SOURCES) \
+ $(lib529_SOURCES) $(lib530_SOURCES) $(lib532_SOURCES) \
+ $(lib533_SOURCES) $(lib536_SOURCES) $(lib537_SOURCES) \
+ $(lib539_SOURCES) $(lib540_SOURCES) $(lib541_SOURCES) \
+ $(lib542_SOURCES) $(lib543_SOURCES) $(lib544_SOURCES) \
+ $(lib545_SOURCES) $(lib547_SOURCES) $(lib548_SOURCES) \
+ $(lib549_SOURCES) $(lib552_SOURCES) $(lib553_SOURCES) \
+ $(lib554_SOURCES) $(lib555_SOURCES) $(lib556_SOURCES) \
+ $(lib557_SOURCES) $(lib558_SOURCES) $(lib560_SOURCES) \
+ $(lib562_SOURCES) $(lib564_SOURCES) $(lib565_SOURCES) \
+ $(lib566_SOURCES) $(lib567_SOURCES) $(lib568_SOURCES) \
+ $(lib569_SOURCES) $(lib570_SOURCES) $(lib571_SOURCES) \
+ $(lib572_SOURCES) $(lib573_SOURCES) $(lib574_SOURCES) \
+ $(lib575_SOURCES) $(lib576_SOURCES) $(lib578_SOURCES) \
+ $(lib579_SOURCES) $(lib582_SOURCES) $(lib583_SOURCES) \
+ $(lib585_SOURCES) $(lib586_SOURCES) $(lib587_SOURCES) \
+ $(lib590_SOURCES) $(lib591_SOURCES) $(lib597_SOURCES) \
+ $(lib598_SOURCES) $(lib599_SOURCES) $(libauthretry_SOURCES) \
$(libntlmconnect_SOURCES)
DIST_SOURCES = $(libhostname_la_SOURCES) $(chkhostname_SOURCES) \
$(lib1500_SOURCES) $(lib1501_SOURCES) $(lib1502_SOURCES) \
@@ -891,34 +867,33 @@ DIST_SOURCES = $(libhostname_la_SOURCES) $(chkhostname_SOURCES) \
$(lib1512_SOURCES) $(lib1513_SOURCES) $(lib1514_SOURCES) \
$(lib1515_SOURCES) $(lib1520_SOURCES) $(lib1525_SOURCES) \
$(lib1526_SOURCES) $(lib1527_SOURCES) $(lib1528_SOURCES) \
- $(lib1529_SOURCES) $(lib1530_SOURCES) $(lib1531_SOURCES) \
- $(lib1900_SOURCES) $(lib2033_SOURCES) $(lib500_SOURCES) \
- $(lib501_SOURCES) $(lib502_SOURCES) $(lib503_SOURCES) \
- $(lib504_SOURCES) $(lib505_SOURCES) $(lib506_SOURCES) \
- $(lib507_SOURCES) $(lib508_SOURCES) $(lib509_SOURCES) \
- $(lib510_SOURCES) $(lib511_SOURCES) $(lib512_SOURCES) \
- $(lib513_SOURCES) $(lib514_SOURCES) $(lib515_SOURCES) \
- $(lib516_SOURCES) $(lib517_SOURCES) $(lib518_SOURCES) \
- $(lib519_SOURCES) $(lib520_SOURCES) $(lib521_SOURCES) \
- $(lib523_SOURCES) $(lib524_SOURCES) $(lib525_SOURCES) \
- $(lib526_SOURCES) $(lib527_SOURCES) $(lib529_SOURCES) \
- $(lib530_SOURCES) $(lib532_SOURCES) $(lib533_SOURCES) \
- $(lib536_SOURCES) $(lib537_SOURCES) $(lib539_SOURCES) \
- $(lib540_SOURCES) $(lib541_SOURCES) $(lib542_SOURCES) \
- $(lib543_SOURCES) $(lib544_SOURCES) $(lib545_SOURCES) \
- $(lib547_SOURCES) $(lib548_SOURCES) $(lib549_SOURCES) \
- $(lib552_SOURCES) $(lib553_SOURCES) $(lib554_SOURCES) \
- $(lib555_SOURCES) $(lib556_SOURCES) $(lib557_SOURCES) \
- $(lib558_SOURCES) $(lib560_SOURCES) $(lib562_SOURCES) \
- $(lib564_SOURCES) $(lib565_SOURCES) $(lib566_SOURCES) \
- $(lib567_SOURCES) $(lib568_SOURCES) $(lib569_SOURCES) \
- $(lib570_SOURCES) $(lib571_SOURCES) $(lib572_SOURCES) \
- $(lib573_SOURCES) $(lib574_SOURCES) $(lib575_SOURCES) \
- $(lib576_SOURCES) $(lib578_SOURCES) $(lib579_SOURCES) \
- $(lib582_SOURCES) $(lib583_SOURCES) $(lib585_SOURCES) \
- $(lib586_SOURCES) $(lib587_SOURCES) $(lib590_SOURCES) \
- $(lib591_SOURCES) $(lib597_SOURCES) $(lib598_SOURCES) \
- $(lib599_SOURCES) $(libauthretry_SOURCES) \
+ $(lib1529_SOURCES) $(lib1900_SOURCES) $(lib2033_SOURCES) \
+ $(lib500_SOURCES) $(lib501_SOURCES) $(lib502_SOURCES) \
+ $(lib503_SOURCES) $(lib504_SOURCES) $(lib505_SOURCES) \
+ $(lib506_SOURCES) $(lib507_SOURCES) $(lib508_SOURCES) \
+ $(lib509_SOURCES) $(lib510_SOURCES) $(lib511_SOURCES) \
+ $(lib512_SOURCES) $(lib513_SOURCES) $(lib514_SOURCES) \
+ $(lib515_SOURCES) $(lib516_SOURCES) $(lib517_SOURCES) \
+ $(lib518_SOURCES) $(lib519_SOURCES) $(lib520_SOURCES) \
+ $(lib521_SOURCES) $(lib523_SOURCES) $(lib524_SOURCES) \
+ $(lib525_SOURCES) $(lib526_SOURCES) $(lib527_SOURCES) \
+ $(lib529_SOURCES) $(lib530_SOURCES) $(lib532_SOURCES) \
+ $(lib533_SOURCES) $(lib536_SOURCES) $(lib537_SOURCES) \
+ $(lib539_SOURCES) $(lib540_SOURCES) $(lib541_SOURCES) \
+ $(lib542_SOURCES) $(lib543_SOURCES) $(lib544_SOURCES) \
+ $(lib545_SOURCES) $(lib547_SOURCES) $(lib548_SOURCES) \
+ $(lib549_SOURCES) $(lib552_SOURCES) $(lib553_SOURCES) \
+ $(lib554_SOURCES) $(lib555_SOURCES) $(lib556_SOURCES) \
+ $(lib557_SOURCES) $(lib558_SOURCES) $(lib560_SOURCES) \
+ $(lib562_SOURCES) $(lib564_SOURCES) $(lib565_SOURCES) \
+ $(lib566_SOURCES) $(lib567_SOURCES) $(lib568_SOURCES) \
+ $(lib569_SOURCES) $(lib570_SOURCES) $(lib571_SOURCES) \
+ $(lib572_SOURCES) $(lib573_SOURCES) $(lib574_SOURCES) \
+ $(lib575_SOURCES) $(lib576_SOURCES) $(lib578_SOURCES) \
+ $(lib579_SOURCES) $(lib582_SOURCES) $(lib583_SOURCES) \
+ $(lib585_SOURCES) $(lib586_SOURCES) $(lib587_SOURCES) \
+ $(lib590_SOURCES) $(lib591_SOURCES) $(lib597_SOURCES) \
+ $(lib598_SOURCES) $(lib599_SOURCES) $(libauthretry_SOURCES) \
$(libntlmconnect_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
@@ -944,8 +919,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -1004,7 +977,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -1059,7 +1032,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -1076,6 +1048,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -1184,11 +1157,11 @@ AUTOMAKE_OPTIONS = foreign nostdinc
@USE_EMBEDDED_ARES_TRUE@ -I$(top_builddir)/ares \
@USE_EMBEDDED_ARES_TRUE@ -I$(top_srcdir)/ares $(am__append_1)
EXTRA_DIST = test75.pl test307.pl test610.pl test613.pl test1013.pl \
-test1022.pl Makefile.inc notexists.pl CMakeLists.txt
+test1022.pl Makefile.inc notexists.pl
-@USE_EXPLICIT_LIB_DEPS_FALSE@SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@ @NSS_LIBS@
+@USE_EXPLICIT_LIB_DEPS_FALSE@SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_LIBS@
@USE_EXPLICIT_LIB_DEPS_TRUE@SUPPORTFILES_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
-@USE_EXPLICIT_LIB_DEPS_FALSE@TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@ @NSS_LIBS@
+@USE_EXPLICIT_LIB_DEPS_FALSE@TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @CURL_NETWORK_AND_TIME_LIBS@
@USE_EXPLICIT_LIB_DEPS_TRUE@TESTUTIL_LIBS = $(top_builddir)/lib/libcurl.la @LIBCURL_LIBS@
# Dependencies (may need to be overriden)
@@ -1457,12 +1430,6 @@ lib1528_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1528
lib1529_SOURCES = lib1529.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
lib1529_LDADD = $(TESTUTIL_LIBS)
lib1529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1529
-lib1530_SOURCES = lib1530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
-lib1530_LDADD = $(TESTUTIL_LIBS)
-lib1530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1530
-lib1531_SOURCES = lib1531.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
-lib1531_LDADD = $(TESTUTIL_LIBS)
-lib1531_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1531
lib1900_SOURCES = lib1900.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
lib1900_LDADD = $(TESTUTIL_LIBS)
lib1900_CPPFLAGS = $(AM_CPPFLAGS)
@@ -1505,6 +1472,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/libtest/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/libtest/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -1513,7 +1481,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -1686,18 +1654,6 @@ lib1528$(EXEEXT): $(lib1528_OBJECTS) $(lib1528_DEPENDENCIES) $(EXTRA_lib1528_DEP
lib1529$(EXEEXT): $(lib1529_OBJECTS) $(lib1529_DEPENDENCIES) $(EXTRA_lib1529_DEPENDENCIES)
@rm -f lib1529$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(lib1529_OBJECTS) $(lib1529_LDADD) $(LIBS)
-../../lib/lib1530-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
- ../../lib/$(DEPDIR)/$(am__dirstamp)
-
-lib1530$(EXEEXT): $(lib1530_OBJECTS) $(lib1530_DEPENDENCIES) $(EXTRA_lib1530_DEPENDENCIES)
- @rm -f lib1530$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(lib1530_OBJECTS) $(lib1530_LDADD) $(LIBS)
-../../lib/lib1531-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
- ../../lib/$(DEPDIR)/$(am__dirstamp)
-
-lib1531$(EXEEXT): $(lib1531_OBJECTS) $(lib1531_DEPENDENCIES) $(EXTRA_lib1531_DEPENDENCIES)
- @rm -f lib1531$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(lib1531_OBJECTS) $(lib1531_LDADD) $(LIBS)
../../lib/lib1900-warnless.$(OBJEXT): ../../lib/$(am__dirstamp) \
../../lib/$(DEPDIR)/$(am__dirstamp)
@@ -2109,8 +2065,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1527-warnless.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1528-warnless.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1529-warnless.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1530-warnless.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1531-warnless.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib1900-warnless.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib2033-warnless.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../../lib/$(DEPDIR)/lib502-warnless.Po@am__quote@
@@ -2206,12 +2160,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-first.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-lib1529.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1529-testutil.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-first.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-lib1530.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1530-testutil.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-first.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-lib1531.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1531-testutil.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-first.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-lib1900.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lib1900-testutil.Po@am__quote@
@@ -3654,118 +3602,6 @@ lib1529-testutil.obj: testutil.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1529_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1529-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
-lib1530-lib1530.o: lib1530.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-lib1530.o -MD -MP -MF $(DEPDIR)/lib1530-lib1530.Tpo -c -o lib1530-lib1530.o `test -f 'lib1530.c' || echo '$(srcdir)/'`lib1530.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-lib1530.Tpo $(DEPDIR)/lib1530-lib1530.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib1530.c' object='lib1530-lib1530.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-lib1530.o `test -f 'lib1530.c' || echo '$(srcdir)/'`lib1530.c
-
-lib1530-lib1530.obj: lib1530.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-lib1530.obj -MD -MP -MF $(DEPDIR)/lib1530-lib1530.Tpo -c -o lib1530-lib1530.obj `if test -f 'lib1530.c'; then $(CYGPATH_W) 'lib1530.c'; else $(CYGPATH_W) '$(srcdir)/lib1530.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-lib1530.Tpo $(DEPDIR)/lib1530-lib1530.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib1530.c' object='lib1530-lib1530.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-lib1530.obj `if test -f 'lib1530.c'; then $(CYGPATH_W) 'lib1530.c'; else $(CYGPATH_W) '$(srcdir)/lib1530.c'; fi`
-
-lib1530-first.o: first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-first.o -MD -MP -MF $(DEPDIR)/lib1530-first.Tpo -c -o lib1530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-first.Tpo $(DEPDIR)/lib1530-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='first.c' object='lib1530-first.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
-
-lib1530-first.obj: first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-first.obj -MD -MP -MF $(DEPDIR)/lib1530-first.Tpo -c -o lib1530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-first.Tpo $(DEPDIR)/lib1530-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='first.c' object='lib1530-first.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
-
-lib1530-testutil.o: testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-testutil.o -MD -MP -MF $(DEPDIR)/lib1530-testutil.Tpo -c -o lib1530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-testutil.Tpo $(DEPDIR)/lib1530-testutil.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='testutil.c' object='lib1530-testutil.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
-
-lib1530-testutil.obj: testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1530-testutil.obj -MD -MP -MF $(DEPDIR)/lib1530-testutil.Tpo -c -o lib1530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1530-testutil.Tpo $(DEPDIR)/lib1530-testutil.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='testutil.c' object='lib1530-testutil.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1530-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
-
-../../lib/lib1530-warnless.o: ../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1530-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1530-warnless.Tpo -c -o ../../lib/lib1530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1530-warnless.Tpo ../../lib/$(DEPDIR)/lib1530-warnless.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1530-warnless.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1530-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
-
-../../lib/lib1530-warnless.obj: ../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1530-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1530-warnless.Tpo -c -o ../../lib/lib1530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1530-warnless.Tpo ../../lib/$(DEPDIR)/lib1530-warnless.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1530-warnless.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1530_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1530-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
-
-lib1531-lib1531.o: lib1531.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-lib1531.o -MD -MP -MF $(DEPDIR)/lib1531-lib1531.Tpo -c -o lib1531-lib1531.o `test -f 'lib1531.c' || echo '$(srcdir)/'`lib1531.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-lib1531.Tpo $(DEPDIR)/lib1531-lib1531.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib1531.c' object='lib1531-lib1531.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-lib1531.o `test -f 'lib1531.c' || echo '$(srcdir)/'`lib1531.c
-
-lib1531-lib1531.obj: lib1531.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-lib1531.obj -MD -MP -MF $(DEPDIR)/lib1531-lib1531.Tpo -c -o lib1531-lib1531.obj `if test -f 'lib1531.c'; then $(CYGPATH_W) 'lib1531.c'; else $(CYGPATH_W) '$(srcdir)/lib1531.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-lib1531.Tpo $(DEPDIR)/lib1531-lib1531.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='lib1531.c' object='lib1531-lib1531.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-lib1531.obj `if test -f 'lib1531.c'; then $(CYGPATH_W) 'lib1531.c'; else $(CYGPATH_W) '$(srcdir)/lib1531.c'; fi`
-
-lib1531-first.o: first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-first.o -MD -MP -MF $(DEPDIR)/lib1531-first.Tpo -c -o lib1531-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-first.Tpo $(DEPDIR)/lib1531-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='first.c' object='lib1531-first.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-first.o `test -f 'first.c' || echo '$(srcdir)/'`first.c
-
-lib1531-first.obj: first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-first.obj -MD -MP -MF $(DEPDIR)/lib1531-first.Tpo -c -o lib1531-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-first.Tpo $(DEPDIR)/lib1531-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='first.c' object='lib1531-first.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-first.obj `if test -f 'first.c'; then $(CYGPATH_W) 'first.c'; else $(CYGPATH_W) '$(srcdir)/first.c'; fi`
-
-lib1531-testutil.o: testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-testutil.o -MD -MP -MF $(DEPDIR)/lib1531-testutil.Tpo -c -o lib1531-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-testutil.Tpo $(DEPDIR)/lib1531-testutil.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='testutil.c' object='lib1531-testutil.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-testutil.o `test -f 'testutil.c' || echo '$(srcdir)/'`testutil.c
-
-lib1531-testutil.obj: testutil.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1531-testutil.obj -MD -MP -MF $(DEPDIR)/lib1531-testutil.Tpo -c -o lib1531-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1531-testutil.Tpo $(DEPDIR)/lib1531-testutil.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='testutil.c' object='lib1531-testutil.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o lib1531-testutil.obj `if test -f 'testutil.c'; then $(CYGPATH_W) 'testutil.c'; else $(CYGPATH_W) '$(srcdir)/testutil.c'; fi`
-
-../../lib/lib1531-warnless.o: ../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1531-warnless.o -MD -MP -MF ../../lib/$(DEPDIR)/lib1531-warnless.Tpo -c -o ../../lib/lib1531-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1531-warnless.Tpo ../../lib/$(DEPDIR)/lib1531-warnless.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1531-warnless.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1531-warnless.o `test -f '../../lib/warnless.c' || echo '$(srcdir)/'`../../lib/warnless.c
-
-../../lib/lib1531-warnless.obj: ../../lib/warnless.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../../lib/lib1531-warnless.obj -MD -MP -MF ../../lib/$(DEPDIR)/lib1531-warnless.Tpo -c -o ../../lib/lib1531-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../../lib/$(DEPDIR)/lib1531-warnless.Tpo ../../lib/$(DEPDIR)/lib1531-warnless.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../../lib/warnless.c' object='../../lib/lib1531-warnless.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1531_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../../lib/lib1531-warnless.obj `if test -f '../../lib/warnless.c'; then $(CYGPATH_W) '../../lib/warnless.c'; else $(CYGPATH_W) '$(srcdir)/../../lib/warnless.c'; fi`
-
lib1900-lib1900.o: lib1900.c
@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(lib1900_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT lib1900-lib1900.o -MD -MP -MF $(DEPDIR)/lib1900-lib1900.Tpo -c -o lib1900-lib1900.o `test -f 'lib1900.c' || echo '$(srcdir)/'`lib1900.c
@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/lib1900-lib1900.Tpo $(DEPDIR)/lib1900-lib1900.Po
@@ -7057,8 +6893,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/libtest/Makefile.inc b/tests/libtest/Makefile.inc
index 27d5ee98c..3508b8047 100644
--- a/tests/libtest/Makefile.inc
+++ b/tests/libtest/Makefile.inc
@@ -23,7 +23,7 @@ noinst_PROGRAMS = chkhostname libauthretry libntlmconnect \
lib1500 lib1501 lib1502 lib1503 lib1504 lib1505 lib1506 lib1507 lib1508 \
lib1509 lib1510 lib1511 lib1512 lib1513 lib1514 lib1515 \
lib1520 \
- lib1525 lib1526 lib1527 lib1528 lib1529 lib1530 lib1531 \
+ lib1525 lib1526 lib1527 lib1528 lib1529 \
lib1900 \
lib2033
@@ -380,14 +380,6 @@ lib1529_SOURCES = lib1529.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
lib1529_LDADD = $(TESTUTIL_LIBS)
lib1529_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1529
-lib1530_SOURCES = lib1530.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
-lib1530_LDADD = $(TESTUTIL_LIBS)
-lib1530_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1530
-
-lib1531_SOURCES = lib1531.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
-lib1531_LDADD = $(TESTUTIL_LIBS)
-lib1531_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1531
-
lib1900_SOURCES = lib1900.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
lib1900_LDADD = $(TESTUTIL_LIBS)
lib1900_CPPFLAGS = $(AM_CPPFLAGS)
diff --git a/tests/libtest/first.c b/tests/libtest/first.c
index d693173f1..5851faf62 100644
--- a/tests/libtest/first.c
+++ b/tests/libtest/first.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -33,10 +33,6 @@
# include <fcntl.h> /* for setmode() */
#endif
-#ifdef USE_NSS
-#include <nspr.h>
-#endif
-
#ifdef CURLDEBUG
# define MEMDEBUG_NODEFINES
# include "memdebug.h"
@@ -115,24 +111,9 @@ static void memory_tracking_init(void)
# define memory_tracking_init() Curl_nop_stmt
#endif
-/* returns a hexdump in a static memory area */
-char *hexdump(unsigned char *buffer, size_t len)
-{
- static char dump[200*3+1];
- char *p = dump;
- size_t i;
- if(len > 200)
- return NULL;
- for(i=0; i<len; i++, p += 3)
- snprintf(p, 4, "%02x ", buffer[i]);
- return dump;
-}
-
-
int main(int argc, char **argv)
{
char *URL;
- int result;
#ifdef O_BINARY
# ifdef __HIGHC__
@@ -171,13 +152,5 @@ int main(int argc, char **argv)
fprintf(stderr, "URL: %s\n", URL);
- result = test(URL);
-
-#ifdef USE_NSS
- if(PR_Initialized())
- /* prevent valgrind from reporting possibly lost memory (fd cache, ...) */
- PR_Cleanup();
-#endif
-
- return result;
+ return test(URL);
}
diff --git a/tests/libtest/lib1515.c b/tests/libtest/lib1515.c
index d5c8f7d08..4ac9fcfdc 100644
--- a/tests/libtest/lib1515.c
+++ b/tests/libtest/lib1515.c
@@ -39,6 +39,9 @@
#define sleep(s) Sleep(s * 1000)
#endif
+#define _MPRINTF_REPLACE
+#include <curl/mprintf.h>
+
static int debug_callback(CURL *curl, curl_infotype info, char *msg, size_t len, void *ptr)
{
(void)curl;
diff --git a/tests/libtest/lib1527.c b/tests/libtest/lib1527.c
index 1122d8ec0..280c947e3 100644
--- a/tests/libtest/lib1527.c
+++ b/tests/libtest/lib1527.c
@@ -83,7 +83,6 @@ int test(char *URL)
test_setopt(curl, CURLOPT_READFUNCTION, read_callback);
test_setopt(curl, CURLOPT_HTTPPROXYTUNNEL, 1L);
test_setopt(curl, CURLOPT_INFILESIZE, strlen(data));
- test_setopt(curl, CURLOPT_HEADEROPT, CURLHEADER_UNIFIED);
res = curl_easy_perform(curl);
diff --git a/tests/libtest/lib1530.c b/tests/libtest/lib1530.c
deleted file mode 100644
index 76231c97f..000000000
--- a/tests/libtest/lib1530.c
+++ /dev/null
@@ -1,67 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-
-#include "test.h"
-
-#include "memdebug.h"
-
-static curl_socket_t opensocket(void *clientp,
- curlsocktype purpose,
- struct curl_sockaddr *address)
-{
- (void)purpose;
- (void)address;
- (void)clientp;
- fprintf(stderr, "opensocket() returns CURL_SOCKET_BAD\n");
- return CURL_SOCKET_BAD;
-}
-
-int test(char *URL)
-{
- CURL *curl = NULL;
- CURLcode res = CURLE_FAILED_INIT;
- (void)URL;
-
- if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
- fprintf(stderr, "curl_global_init() failed\n");
- return TEST_ERR_MAJOR_BAD;
- }
-
- if((curl = curl_easy_init()) == NULL) {
- fprintf(stderr, "curl_easy_init() failed\n");
- curl_global_cleanup();
- return TEST_ERR_MAJOR_BAD;
- }
-
- test_setopt(curl, CURLOPT_URL, "http://99.99.99.99:9999");
- test_setopt(curl, CURLOPT_VERBOSE, 1L);
- test_setopt(curl, CURLOPT_OPENSOCKETFUNCTION, opensocket);
-
- res = curl_easy_perform(curl);
-
-test_cleanup:
-
- curl_easy_cleanup(curl);
- curl_global_cleanup();
-
- return (int)res;
-}
diff --git a/tests/libtest/lib1531.c b/tests/libtest/lib1531.c
deleted file mode 100644
index 5df34814b..000000000
--- a/tests/libtest/lib1531.c
+++ /dev/null
@@ -1,144 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-#include "test.h"
-
-#include "testutil.h"
-#include "warnless.h"
-#include "memdebug.h"
-
-#define TEST_HANG_TIMEOUT 60 * 1000
-
-char const testData[] = ".abc\0xyz";
-off_t const testDataSize = sizeof(testData) - 1;
-
-int test(char *URL)
-{
- CURL *easy;
- CURLM *multi_handle;
- int still_running; /* keep number of running handles */
- CURLMsg *msg; /* for picking up messages with the transfer status */
- int msgs_left; /* how many messages are left */
-
- /* Allocate one CURL handle per transfer */
- easy = curl_easy_init();
-
- /* init a multi stack */
- multi_handle = curl_multi_init();
-
- /* add the individual transfer */
- curl_multi_add_handle(multi_handle, easy);
-
- /* set the options (I left out a few, you'll get the point anyway) */
- curl_easy_setopt(easy, CURLOPT_URL, URL);
- curl_easy_setopt(easy, CURLOPT_POSTFIELDSIZE_LARGE, testDataSize);
- curl_easy_setopt(easy, CURLOPT_POSTFIELDS, testData);
-
- /* we start some action by calling perform right away */
- curl_multi_perform(multi_handle, &still_running);
-
- do {
- struct timeval timeout;
- int rc; /* select() return code */
- CURLMcode mc; /* curl_multi_fdset() return code */
-
- fd_set fdread;
- fd_set fdwrite;
- fd_set fdexcep;
- int maxfd = -1;
-
- long curl_timeo = -1;
-
- FD_ZERO(&fdread);
- FD_ZERO(&fdwrite);
- FD_ZERO(&fdexcep);
-
- /* set a suitable timeout to play around with */
- timeout.tv_sec = 1;
- timeout.tv_usec = 0;
-
- curl_multi_timeout(multi_handle, &curl_timeo);
- if(curl_timeo >= 0) {
- timeout.tv_sec = curl_timeo / 1000;
- if(timeout.tv_sec > 1)
- timeout.tv_sec = 1;
- else
- timeout.tv_usec = (curl_timeo % 1000) * 1000;
- }
-
- /* get file descriptors from the transfers */
- mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
- if(mc != CURLM_OK)
- {
- fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
- break;
- }
-
- /* On success the value of maxfd is guaranteed to be >= -1. We call
- select(maxfd + 1, ...); specially in case of (maxfd == -1) there are
- no fds ready yet so we call select(0, ...) --or Sleep() on Windows--
- to sleep 100ms, which is the minimum suggested value in the
- curl_multi_fdset() doc. */
-
- if(maxfd == -1) {
-#ifdef _WIN32
- Sleep(100);
- rc = 0;
-#else
- /* Portable sleep for platforms other than Windows. */
- struct timeval wait = { 0, 100 * 1000 }; /* 100ms */
- rc = select(0, NULL, NULL, NULL, &wait);
-#endif
- }
- else {
- /* Note that on some platforms 'timeout' may be modified by select().
- If you need access to the original value save a copy beforehand. */
- rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
- }
-
- switch(rc) {
- case -1:
- /* select error */
- break;
- case 0: /* timeout */
- default: /* action */
- curl_multi_perform(multi_handle, &still_running);
- break;
- }
- } while(still_running);
-
- /* See how the transfers went */
- while ((msg = curl_multi_info_read(multi_handle, &msgs_left))) {
- if (msg->msg == CURLMSG_DONE) {
- printf("HTTP transfer completed with status %d\n", msg->data.result);
- break;
- }
- }
-
- curl_multi_cleanup(multi_handle);
-
- /* Free the CURL handles */
- curl_easy_cleanup(easy);
-
- return 0;
-}
-
diff --git a/tests/libtest/lib506.c b/tests/libtest/lib506.c
index 6dcc36d3c..4dad0d98a 100644
--- a/tests/libtest/lib506.c
+++ b/tests/libtest/lib506.c
@@ -20,6 +20,9 @@
*
***************************************************************************/
#include "test.h"
+
+#include <curl/mprintf.h>
+
#include "memdebug.h"
static const char *HOSTHEADER = "Host: www.host.foo.com";
diff --git a/tests/libtest/lib530.c b/tests/libtest/lib530.c
index e60d11729..06a846439 100644
--- a/tests/libtest/lib530.c
+++ b/tests/libtest/lib530.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -83,15 +83,13 @@ int test(char *URL)
abort_on_test_timeout();
- if(!running) {
- if(handles_added >= NUM_HANDLES)
- break; /* done */
+ if(!running && handles_added >= NUM_HANDLES)
+ break; /* done */
- /* Add the rest of the handles now that the first handle has completed
- its request. */
- while(handles_added < NUM_HANDLES)
- multi_add_handle(m, curl[handles_added++]);
- }
+ /* Add the rest of the handles now that the first handle has sent the
+ request. */
+ while(handles_added < NUM_HANDLES)
+ multi_add_handle(m, curl[handles_added++]);
FD_ZERO(&rd);
FD_ZERO(&wr);
diff --git a/tests/libtest/lib539.c b/tests/libtest/lib539.c
index 053d29806..923893fb2 100644
--- a/tests/libtest/lib539.c
+++ b/tests/libtest/lib539.c
@@ -83,7 +83,8 @@ int test(char *URL)
test_cleanup:
curl_slist_free_all(slist);
- free(newURL);
+ if(newURL)
+ free(newURL);
curl_easy_cleanup(curl);
curl_global_cleanup();
diff --git a/tests/libtest/lib557.c b/tests/libtest/lib557.c
index b88285217..7e5f9e94f 100644
--- a/tests/libtest/lib557.c
+++ b/tests/libtest/lib557.c
@@ -26,6 +26,9 @@
*/
#include "test.h"
+
+#include <curl/mprintf.h>
+
#include "memdebug.h"
diff --git a/tests/libtest/lib568.c b/tests/libtest/lib568.c
index b6f5ab7ca..4b15821f2 100644
--- a/tests/libtest/lib568.c
+++ b/tests/libtest/lib568.c
@@ -28,6 +28,8 @@
#include <fcntl.h>
#endif
+#include <curl/mprintf.h>
+
#include "memdebug.h"
/* build request url */
@@ -159,7 +161,8 @@ test_cleanup:
if(sdpf)
fclose(sdpf);
- free(stream_uri);
+ if(stream_uri)
+ free(stream_uri);
if(custom_headers)
curl_slist_free_all(custom_headers);
diff --git a/tests/libtest/lib569.c b/tests/libtest/lib569.c
index bc4887276..a434d7459 100644
--- a/tests/libtest/lib569.c
+++ b/tests/libtest/lib569.c
@@ -20,6 +20,9 @@
*
***************************************************************************/
#include "test.h"
+
+#include <curl/mprintf.h>
+
#include "memdebug.h"
/* build request url */
@@ -115,7 +118,9 @@ test_cleanup:
if(idfile)
fclose(idfile);
- free(stream_uri);
+ if(stream_uri)
+ free(stream_uri);
+
curl_easy_cleanup(curl);
curl_global_cleanup();
diff --git a/tests/libtest/lib570.c b/tests/libtest/lib570.c
index 178f58f96..fe10de54a 100644
--- a/tests/libtest/lib570.c
+++ b/tests/libtest/lib570.c
@@ -20,6 +20,9 @@
*
***************************************************************************/
#include "test.h"
+
+#include <curl/mprintf.h>
+
#include "memdebug.h"
/* build request url */
@@ -102,7 +105,9 @@ int test(char *URL)
}
test_cleanup:
- free(stream_uri);
+
+ if(stream_uri)
+ free(stream_uri);
curl_easy_cleanup(curl);
curl_global_cleanup();
diff --git a/tests/libtest/lib571.c b/tests/libtest/lib571.c
index d8dad396b..78c1c95a3 100644
--- a/tests/libtest/lib571.c
+++ b/tests/libtest/lib571.c
@@ -37,6 +37,8 @@
# include <fcntl.h>
#endif
+#include <curl/mprintf.h>
+
#include "warnless.h"
#include "memdebug.h"
@@ -195,7 +197,9 @@ int test(char *URL)
}
test_cleanup:
- free(stream_uri);
+
+ if(stream_uri)
+ free(stream_uri);
if(protofile)
fclose(protofile);
diff --git a/tests/libtest/lib572.c b/tests/libtest/lib572.c
index fd547b8b3..3df4d036a 100644
--- a/tests/libtest/lib572.c
+++ b/tests/libtest/lib572.c
@@ -28,6 +28,8 @@
#include <fcntl.h>
#endif
+#include <curl/mprintf.h>
+
#include "memdebug.h"
/* build request url */
@@ -165,7 +167,8 @@ test_cleanup:
if(paramsf)
fclose(paramsf);
- free(stream_uri);
+ if(stream_uri)
+ free(stream_uri);
if(custom_headers)
curl_slist_free_all(custom_headers);
diff --git a/tests/libtest/lib582.c b/tests/libtest/lib582.c
index 4c3ea6f60..952efb4ed 100644
--- a/tests/libtest/lib582.c
+++ b/tests/libtest/lib582.c
@@ -357,8 +357,10 @@ test_cleanup:
fclose(hd_src);
/* free local memory */
- free(sockets.read.sockets);
- free(sockets.write.sockets);
+ if(sockets.read.sockets)
+ free(sockets.read.sockets);
+ if(sockets.write.sockets)
+ free(sockets.write.sockets);
return res;
}
diff --git a/tests/libtest/lib586.c b/tests/libtest/lib586.c
index a1412b5f3..4ee0ad31c 100644
--- a/tests/libtest/lib586.c
+++ b/tests/libtest/lib586.c
@@ -20,6 +20,9 @@
*
***************************************************************************/
#include "test.h"
+
+#include <curl/mprintf.h>
+
#include "memdebug.h"
#define THREADS 2
diff --git a/tests/libtest/test.h b/tests/libtest/test.h
index 468eda98a..4186c4f26 100644
--- a/tests/libtest/test.h
+++ b/tests/libtest/test.h
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -40,10 +40,6 @@
# include "select.h"
#endif
-#define _MPRINTF_REPLACE
-#include <curl/mprintf.h>
-
-
#define test_setopt(A,B,C) \
if((res = curl_easy_setopt((A),(B),(C))) != CURLE_OK) goto test_cleanup
@@ -67,8 +63,6 @@ extern void wait_ms(int ms); /* wait this many milliseconds */
extern int test(char *URL); /* the actual test function provided by each
individual libXXX.c file */
-extern char *hexdump(unsigned char *buffer, size_t len);
-
#ifdef UNITTESTS
extern int unitfail;
#endif
diff --git a/tests/libtest/testtrace.c b/tests/libtest/testtrace.c
index 8d9c6b814..c977d2105 100644
--- a/tests/libtest/testtrace.c
+++ b/tests/libtest/testtrace.c
@@ -21,6 +21,10 @@
***************************************************************************/
#include "test.h"
+
+#define _MPRINTF_REPLACE /* use our functions only */
+#include <curl/mprintf.h>
+
#include "testutil.h"
#include "testtrace.h"
#include "memdebug.h"
@@ -30,7 +34,7 @@ struct libtest_trace_cfg libtest_debug_config;
static time_t epoch_offset; /* for test time tracing */
static int known_offset; /* for test time tracing */
-static
+static
void libtest_debug_dump(const char *timebuf, const char *text, FILE *stream,
const unsigned char *ptr, size_t size, int nohex)
{
diff --git a/tests/memanalyze.pl b/tests/memanalyze.pl
index 701cf161c..54117f8ea 100755
--- a/tests/memanalyze.pl
+++ b/tests/memanalyze.pl
@@ -108,12 +108,9 @@ while(<FILE>) {
$linenum = $2;
$function = $3;
- if($function =~ /free\((\(nil\)|0x([0-9a-f]*))/) {
- $addr = $2;
- if($1 eq "(nil)") {
- ; # do nothing when free(NULL)
- }
- elsif(!exists $sizeataddr{$addr}) {
+ if($function =~ /free\(0x([0-9a-f]*)/) {
+ $addr = $1;
+ if(!exists $sizeataddr{$addr}) {
print "FREE ERROR: No memory allocated: $line\n";
}
elsif(-1 == $sizeataddr{$addr}) {
diff --git a/tests/runtests.html b/tests/runtests.html
index 7dcde484f..6a02b9294 100644
--- a/tests/runtests.html
+++ b/tests/runtests.html
@@ -4,20 +4,15 @@
<title>runtests.pl man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
diff --git a/tests/runtests.pdf b/tests/runtests.pdf
index 6eaaf0a63..994123a52 100644
--- a/tests/runtests.pdf
+++ b/tests/runtests.pdf
Binary files differ
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 3ff318719..846687cb3 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -6,7 +6,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -226,7 +226,7 @@ my $has_cares; # set if built with c-ares
my $has_threadedres;# set if built with threaded resolver
# this version is decided by the particular nghttp2 library that is being used
-my $h2cver = "h2c";
+my $h2cver = "h2c-14";
my $has_openssl; # built with a lib using an OpenSSL-like API
my $has_gnutls; # built with GnuTLS
@@ -235,9 +235,7 @@ my $has_yassl; # built with yassl
my $has_polarssl; # built with polarssl
my $has_axtls; # built with axTLS
my $has_winssl; # built with WinSSL (Secure Channel aka Schannel)
-my $has_darwinssl; # built with DarwinSSL (Secure Transport)
-my $has_boringssl; # built with BoringSSL
-my $has_libressl; # built with libressl
+my $has_darwinssl; # build with DarwinSSL (Secure Transport)
my $has_sslpinning; # built with a TLS backend that supports pinning
@@ -603,7 +601,7 @@ sub torture {
my $ret = 0;
if($gdbthis) {
- runclient($gdbline);
+ runclient($gdbline)
}
else {
$ret = runclient($testcmd);
@@ -2346,12 +2344,10 @@ sub checksystem {
}
elsif ($libcurl =~ /nss/i) {
$has_nss=1;
- $has_sslpinning=1;
$ssllib="NSS";
}
- elsif ($libcurl =~ /(yassl|wolfssl)/i) {
+ elsif ($libcurl =~ /yassl/i) {
$has_yassl=1;
- $has_sslpinning=1;
$ssllib="yassl";
}
elsif ($libcurl =~ /polarssl/i) {
@@ -2366,14 +2362,6 @@ sub checksystem {
$has_darwinssl=1;
$ssllib="DarwinSSL";
}
- elsif ($libcurl =~ /BoringSSL/i) {
- $has_boringssl=1;
- $ssllib="BoringSSL";
- }
- elsif ($libcurl =~ /libressl/i) {
- $has_libressl=1;
- $ssllib="libressl";
- }
if ($libcurl =~ /ares/i) {
$has_cares=1;
$resolver="c-ares";
@@ -4734,7 +4722,7 @@ while(@ARGV) {
}
elsif ($ARGV[0] eq "-c") {
# use this path to curl instead of default
- $DBGCURL=$CURL="\"$ARGV[1]\"";
+ $DBGCURL=$CURL=$ARGV[1];
shift @ARGV;
}
elsif ($ARGV[0] eq "-vc") {
@@ -5002,29 +4990,19 @@ if(!$listonly) {
# Fetch all disabled tests, if there are any
#
-sub disabledtests {
- my ($file) = @_;
-
- if(open(D, "<$file")) {
- while(<D>) {
- if(/^ *\#/) {
- # allow comments
- next;
- }
- if($_ =~ /(\d+)/) {
- $disabled{$1}=$1; # disable this test number
- }
+if(open(D, "<$TESTDIR/DISABLED")) {
+ while(<D>) {
+ if(/^ *\#/) {
+ # allow comments
+ next;
+ }
+ if($_ =~ /(\d+)/) {
+ $disabled{$1}=$1; # disable this test number
}
- close(D);
}
+ close(D);
}
-# globally disabled tests
-disabledtests("$TESTDIR/DISABLED");
-
-# locally disabled tests, ignored by git etc
-disabledtests("$TESTDIR/DISABLED.local");
-
#######################################################################
# If 'all' tests are requested, find out all test numbers
#
diff --git a/tests/server/CMakeLists.txt b/tests/server/CMakeLists.txt
deleted file mode 100644
index 00f5242f9..000000000
--- a/tests/server/CMakeLists.txt
+++ /dev/null
@@ -1,62 +0,0 @@
-set(TARGET_LABEL_PREFIX "Test server ")
-
-function(SETUP_EXECUTABLE TEST_NAME) # ARGN are the files in the test
- add_executable( ${TEST_NAME} ${ARGN} )
- string(TOUPPER ${TEST_NAME} UPPER_TEST_NAME)
-
- include_directories(
- ${CURL_SOURCE_DIR}/lib # To be able to reach "curl_setup_once.h"
- ${CURL_BINARY_DIR}/lib # To be able to reach "curl_config.h"
- ${CURL_BINARY_DIR}/include # To be able to reach "curl/curlbuild.h"
- )
- if(USE_ARES)
- include_directories(${CARES_INCLUDE_DIR})
- endif()
-
- target_link_libraries(${TEST_NAME} ${CURL_LIBS})
-
- # Test servers simply are standalone programs that do not use libcurl
- # library. For convinience and to ease portability of these servers,
- # some source code files from the libcurl subdirectory are also used
- # to build the servers. In order to achieve proper linkage of these
- # files on Win32 targets it is necessary to build the test servers
- # with CURL_STATICLIB defined, independently of how libcurl is built.
- if(NOT CURL_STATICLIB)
- set_target_properties(${TEST_NAME} PROPERTIES
- COMPILE_DEFINITIONS CURL_STATICLIB) # ${UPPER_TEST_NAME}
- endif()
- set_target_properties(${TEST_NAME} PROPERTIES
- PROJECT_LABEL "${TARGET_LABEL_PREFIX}${TEST_NAME}")
-
- # Add the postfix to the executable since it is not added
- # automatically as for modules and shared libraries
- set_target_properties(${TEST_NAME} PROPERTIES
- DEBUG_POSTFIX "${CMAKE_DEBUG_POSTFIX}")
-
-endfunction()
-
-
-transform_makefile_inc("Makefile.inc"
- "${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake")
-include(${CMAKE_CURRENT_BINARY_DIR}/Makefile.inc.cmake)
-
-foreach(EXECUTABLE_NAME ${noinst_PROGRAMS})
- setup_executable(${EXECUTABLE_NAME} ${${EXECUTABLE_NAME}_SOURCES})
-endforeach()
-
-
-# SET(useful
-# getpart.c getpart.h
-# ${CURL_SOURCE_DIR}/lib/strequal.c
-# ${CURL_SOURCE_DIR}/lib/base64.c
-# ${CURL_SOURCE_DIR}/lib/mprintf.c
-# ${CURL_SOURCE_DIR}/lib/memdebug.c
-# ${CURL_SOURCE_DIR}/lib/timeval.c
-# )
-
-# SETUP_EXECUTABLE(sws sws.c util.c util.h ${useful})
-# SETUP_EXECUTABLE(resolve resolve.c util.c util.h ${useful})
-# SETUP_EXECUTABLE(sockfilt sockfilt.c util.c util.h ${useful} ${CURL_SOURCE_DIR}/lib/inet_pton.c)
-# SETUP_EXECUTABLE(getpart testpart.c ${useful})
-# SETUP_EXECUTABLE(tftpd tftpd.c util.c util.h ${useful} tftp.h)
-
diff --git a/tests/server/Makefile.am b/tests/server/Makefile.am
index ab5802025..7533a98b7 100644
--- a/tests/server/Makefile.am
+++ b/tests/server/Makefile.am
@@ -60,5 +60,5 @@ endif
# Makefile.inc provides neat definitions
include Makefile.inc
-EXTRA_DIST = base64.pl Makefile.inc CMakeLists.txt
+EXTRA_DIST = base64.pl Makefile.inc
diff --git a/tests/server/Makefile.in b/tests/server/Makefile.in
index f5f486fee..f63718a21 100644
--- a/tests/server/Makefile.in
+++ b/tests/server/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -15,17 +15,7 @@
@SET_MAKE@
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -89,6 +79,9 @@ POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
@DOING_NATIVE_WINDOWS_TRUE@am__append_1 = -DCURL_STATICLIB
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs \
+ $(top_srcdir)/depcomp
noinst_PROGRAMS = getpart$(EXEEXT) resolve$(EXEEXT) rtspd$(EXEEXT) \
sockfilt$(EXEEXT) sws$(EXEEXT) tftpd$(EXEEXT) \
fake_ntlm$(EXEEXT)
@@ -113,8 +106,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -311,8 +303,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(top_srcdir)/depcomp
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -371,7 +361,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -426,7 +416,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -443,6 +432,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -623,7 +613,7 @@ fake_ntlm_LDADD = @CURL_NETWORK_AND_TIME_LIBS@
fake_ntlm_CFLAGS = $(AM_CFLAGS)
# Makefile.inc provides neat definitions
-EXTRA_DIST = base64.pl Makefile.inc CMakeLists.txt
+EXTRA_DIST = base64.pl Makefile.inc
all: all-am
.SUFFIXES:
@@ -640,6 +630,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/server/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/server/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -648,7 +639,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -2231,8 +2222,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/server/getpart.c b/tests/server/getpart.c
index f773dd058..fb86596e7 100644
--- a/tests/server/getpart.c
+++ b/tests/server/getpart.c
@@ -209,7 +209,8 @@ static int decodedata(char **buf, /* dest buffer */
** let's just assume it is an OOM condition, currently we have
** no input for this function that decodes to zero length data.
*/
- free(buf64);
+ if(buf64)
+ free(buf64);
return GPE_OUT_OF_MEMORY;
}
@@ -434,13 +435,15 @@ int getpart(char **outbuf, size_t *outlen,
} /* while */
- free(buffer);
+ if(buffer)
+ free(buffer);
if(error != GPE_OK) {
if(error == GPE_END_OF_FILE)
error = GPE_OK;
else {
- free(*outbuf);
+ if(*outbuf)
+ free(*outbuf);
*outbuf = NULL;
*outlen = 0;
}
diff --git a/tests/server/rtspd.c b/tests/server/rtspd.c
index 0293f59cf..72422ecf5 100644
--- a/tests/server/rtspd.c
+++ b/tests/server/rtspd.c
@@ -523,7 +523,8 @@ static int ProcessRequest(struct httprequest *req)
} while(ptr && *ptr);
logmsg("Done parsing server commands");
}
- free(cmd);
+ if(cmd)
+ free(cmd);
}
}
else {
@@ -992,7 +993,8 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
}
if(got_exit_signal) {
- free(ptr);
+ if(ptr)
+ free(ptr);
return -1;
}
@@ -1003,7 +1005,8 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
logmsg("fopen() failed with error: %d %s", error, strerror(error));
logmsg("Error opening file: %s", filename);
logmsg("Couldn't open test file");
- free(ptr);
+ if(ptr)
+ free(ptr);
return 0;
}
else {
@@ -1012,15 +1015,18 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
fclose(stream);
if(error) {
logmsg("getpart() failed with error: %d", error);
- free(ptr);
+ if(ptr)
+ free(ptr);
return 0;
}
}
}
if(got_exit_signal) {
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
@@ -1044,8 +1050,10 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
logmsg("fopen() failed with error: %d %s", error, strerror(error));
logmsg("Error opening file: %s", RESPONSE_DUMP);
logmsg("couldn't create logfile: " RESPONSE_DUMP);
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
@@ -1102,22 +1110,28 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
RESPONSE_DUMP, error, strerror(error));
if(got_exit_signal) {
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
if(sendfailure) {
logmsg("Sending response failed. Only (%zu bytes) of (%zu bytes) were sent",
responsesize-count, responsesize);
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
logmsg("Response sent (%zu bytes) and written to " RESPONSE_DUMP,
responsesize);
- free(ptr);
+
+ if(ptr)
+ free(ptr);
if(cmdsize > 0 ) {
char command[32];
@@ -1155,7 +1169,9 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
ptr = NULL;
} while(ptr && *ptr);
}
- free(cmd);
+ if(cmd)
+ free(cmd);
+
req->open = persistant;
prevtestno = req->testno;
diff --git a/tests/server/sws.c b/tests/server/sws.c
index 9ad54e4a8..8cd30c5a5 100644
--- a/tests/server/sws.c
+++ b/tests/server/sws.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, 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
@@ -442,7 +442,8 @@ static int parse_servercmd(struct httprequest *req)
else
break;
}
- free(orgcmd);
+ if(orgcmd)
+ free(orgcmd);
}
return 0; /* OK! */
@@ -913,8 +914,6 @@ static void init_httprequest(struct httprequest *req)
req->callcount = 0;
req->connect_port = 0;
req->done_processing = 0;
- req->upgrade = 0;
- req->upgrade_request = 0;
}
/* returns 1 if the connection should be serviced again immediately, 0 if there
@@ -1127,7 +1126,8 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
}
if(got_exit_signal) {
- free(ptr);
+ if(ptr)
+ free(ptr);
return -1;
}
@@ -1137,7 +1137,8 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
error = errno;
logmsg("fopen() failed with error: %d %s", error, strerror(error));
logmsg(" [4] Error opening file: %s", filename);
- free(ptr);
+ if(ptr)
+ free(ptr);
return 0;
}
else {
@@ -1146,15 +1147,18 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
fclose(stream);
if(error) {
logmsg("getpart() failed with error: %d", error);
- free(ptr);
+ if(ptr)
+ free(ptr);
return 0;
}
}
}
if(got_exit_signal) {
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
@@ -1177,8 +1181,10 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
error = errno;
logmsg("fopen() failed with error: %d %s", error, strerror(error));
logmsg(" [5] Error opening file: %s", responsedump);
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
@@ -1222,22 +1228,28 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
responsedump, error, strerror(error));
if(got_exit_signal) {
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
if(sendfailure) {
logmsg("Sending response failed. Only (%zu bytes) of (%zu bytes) were sent",
responsesize-count, responsesize);
- free(ptr);
- free(cmd);
+ if(ptr)
+ free(ptr);
+ if(cmd)
+ free(cmd);
return -1;
}
logmsg("Response sent (%zu bytes) and written to %s",
responsesize, responsedump);
- free(ptr);
+
+ if(ptr)
+ free(ptr);
if(cmdsize > 0 ) {
char command[32];
@@ -1273,7 +1285,9 @@ static int send_doc(curl_socket_t sock, struct httprequest *req)
ptr = NULL;
} while(ptr && *ptr);
}
- free(cmd);
+ if(cmd)
+ free(cmd);
+
req->open = use_gopher?FALSE:persistant;
prevtestno = req->testno;
@@ -1320,6 +1334,8 @@ static curl_socket_t connect_to(const char *ipaddr, unsigned short port)
if(0 != setsockopt(serverfd, IPPROTO_TCP, TCP_NODELAY,
(void *)&flag, sizeof(flag)))
logmsg("====> TCP_NODELAY for server conection failed");
+ else
+ logmsg("TCP_NODELAY set for server conection");
}
#endif
@@ -1413,7 +1429,6 @@ static void http_connect(curl_socket_t *infdp,
int max_tunnel_idx; /* CTRL or DATA */
int loop;
int i;
- int timeout_count=0;
/* primary tunnel client endpoint already connected */
clientfd[CTRL] = *infdp;
@@ -1442,7 +1457,7 @@ static void http_connect(curl_socket_t *infdp,
fd_set input;
fd_set output;
- struct timeval timeout = {1, 0}; /* 1000 ms */
+ struct timeval timeout = {0, 250000L}; /* 250 ms */
ssize_t rc;
curl_socket_t maxfd = (curl_socket_t)-1;
@@ -1503,7 +1518,6 @@ static void http_connect(curl_socket_t *infdp,
if(rc > 0) {
/* socket action */
bool tcp_fin_wr;
- timeout_count=0;
if(got_exit_signal)
break;
@@ -1529,6 +1543,8 @@ static void http_connect(curl_socket_t *infdp,
if(0 != setsockopt(datafd, IPPROTO_TCP, TCP_NODELAY,
(void *)&flag, sizeof(flag)))
logmsg("====> TCP_NODELAY for client DATA conection failed");
+ else
+ logmsg("TCP_NODELAY set for client DATA conection");
}
#endif
req2.pipelining = FALSE;
@@ -1745,13 +1761,7 @@ static void http_connect(curl_socket_t *infdp,
break;
} /* (rc > 0) */
- else {
- timeout_count++;
- if(timeout_count > 5) {
- logmsg("CONNECT proxy timeout after %d idle seconds!", timeout_count);
- break;
- }
- }
+
}
http_connect_cleanup:
@@ -1857,6 +1867,8 @@ static curl_socket_t accept_connection(curl_socket_t sock)
if(0 != setsockopt(msgsock, IPPROTO_TCP, TCP_NODELAY,
(void *)&flag, sizeof(flag)))
logmsg("====> TCP_NODELAY failed");
+ else
+ logmsg("TCP_NODELAY set");
}
#endif
diff --git a/tests/server/tftpd.c b/tests/server/tftpd.c
index cef129f2e..25557932f 100644
--- a/tests/server/tftpd.c
+++ b/tests/server/tftpd.c
@@ -876,7 +876,8 @@ int main(int argc, char **argv)
memset(&test, 0, sizeof(test));
if (do_tftp(&test, tp, n) < 0)
break;
- free(test.buffer);
+ if(test.buffer)
+ free(test.buffer);
}
sclose(peer);
peer = CURL_SOCKET_BAD;
@@ -1088,7 +1089,8 @@ static int parse_servercmd(struct testcase *req)
else
break;
}
- free(orgcmd);
+ if(orgcmd)
+ free(orgcmd);
}
return 0; /* OK! */
diff --git a/tests/testcurl.html b/tests/testcurl.html
index c13f0bd2e..4a5853f24 100644
--- a/tests/testcurl.html
+++ b/tests/testcurl.html
@@ -4,20 +4,15 @@
<title>testcurl.pl man page</title>
<meta name="generator" content="roffit">
<STYLE type="text/css">
-pre {
- overflow: auto;
- margin: 0;
-}
-
-P.level0, pre.level0 {
+P.level0 {
padding-left: 2em;
}
-P.level1, pre.level1 {
+P.level1 {
padding-left: 4em;
}
-P.level2, pre.level2 {
+P.level2 {
padding-left: 6em;
}
@@ -81,42 +76,40 @@ p.roffit {
<p class="level0"><a name="--targetyour"></a><span class="nroffip">--target=[your os]</span>
<p class="level1">Specify your target environment. Recognized strings include 'vc', 'mingw32', 'borland' and 'netware'. <a name="INITIAL"></a><h2 class="nroffsh">INITIAL SETUP</h2>
<p class="level0">First you make a checkout from git (or you write a script that downloads daily snapshots automatically, find inspiration at <a href="http://curl.haxx.se/auto/autocurl.txt">http://curl.haxx.se/auto/autocurl.txt</a>):
-<p class="level0"><pre class="level0">
-&nbsp; $ mkdir daily-curl
-&nbsp; $ cd daily-curl
-&nbsp; $ git clone git://github.com/bagder/curl.git
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; $ mkdir daily-curl
+ &nbsp; $ cd daily-curl
+ &nbsp; $ git clone git://github.com/bagder/curl.git
+ </pre>
<p class="level0">
<p class="level0">With the curl sources checked out, or downloaded, you can start testing right away. If you want to use <span Class="emphasis">testcurl.pl</span> without command line arguments and to have it store and remember the config in its 'setup' file, then start it manually now and fill in the answers to the questions it prompts you for:
-<p class="level0"><pre class="level0">
-&nbsp; $ ./curl/tests/testcurl.pl
-</pre>
+<p class="level0"><pre>
+<p class="level0">&nbsp; $ ./curl/tests/testcurl.pl
+ </pre>
<p class="level0">
<p class="level0">Now you are ready to go. If you let the script run, it will perform a full cycle and spit out lots of output. Mail us that output as described above. <a name="CRONTAB"></a><h2 class="nroffsh">CRONTAB EXAMPLE</h2>
<p class="level0">The crontab could include something like this:
-<p class="level0"><pre class="level0">
-#35; autobuild curl:
-0 4 * * * cd daily-curl && ./testit.sh
-</pre>
+<p class="level0"><pre>
+<p class="level0"># autobuild curl:
+ 0 4 * * * cd daily-curl && ./testit.sh
+ </pre>
<p class="level0">
<p class="level0">Where testit.sh is a shell script that could look similar to this:
-<p class="level0"><pre class="level0">
-mail="mail -s autobuild curl-autocompile@haxx.se"
-name="--name=whoami"
-email="--email=iamme@nowhere"
-desc='"--desc=supermachine Turbo 2000"'
-testprog="perl ./curl/tests/testcurl.pl $name $email $desc"
-opts1="--configure=--enable-debug"
-opts2="--configure=--enable-ipv6"
-
-&#35; run first test
-$testprog $opts1 | $mail
-
-&#35; run second test
-$testprog $opts2 | $mail
-<p class="roffit">
+<p class="level0"><pre>
+<p class="level0">mail="mail -s autobuild curl-autocompile@haxx.se"
+ name="--name=whoami"
+ email="--email=iamme@nowhere"
+ desc='"--desc=supermachine Turbo 2000"'
+ testprog="perl ./curl/tests/testcurl.pl $name $email $desc"
+ opts1="--configure=--enable-debug"
+ opts2="--configure=--enable-ipv6"
+ <p class="level0"># run first test
+ $testprog $opts1 | $mail
+ <p class="level0"># run second test
+ $testprog $opts2 | $mail
+ <p class="roffit">
This HTML page was made with <a href="http://daniel.haxx.se/projects/roffit/">roffit</a>.
</body></html>
diff --git a/tests/testcurl.pdf b/tests/testcurl.pdf
index 2fca2ac18..993ee5c85 100644
--- a/tests/testcurl.pdf
+++ b/tests/testcurl.pdf
Binary files differ
diff --git a/tests/testcurl.pl b/tests/testcurl.pl
index 2b9e0831c..8c804e4cb 100755
--- a/tests/testcurl.pl
+++ b/tests/testcurl.pl
@@ -6,7 +6,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1998 - 2015, 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
@@ -46,7 +46,6 @@
# --extvercmd=[command] Command to use for displaying version with cross compiles.
# --mktarball=[command] Command to run after completed test
# --name=[name] Set name to report as
-# --notes=[notes] More human-readable information about this configuration
# --nocvsup Don't pull from git even though it is a git tree
# --nogitpull Don't pull from git even though it is a git tree
# --nobuildconf Don't run buildconf
@@ -61,7 +60,6 @@
use strict;
use Cwd;
-use File::Spec;
# Turn on warnings (equivalent to -w, which can't be used with /usr/bin/env)
#BEGIN { $^W = 1; }
@@ -90,28 +88,25 @@ $setupfile = 'setup';
$configurebuild = 1;
while ($ARGV[0]) {
if ($ARGV[0] =~ /--target=/) {
- $targetos = (split(/=/, shift @ARGV, 2))[1];
+ $targetos = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--setup=/) {
- $setupfile = (split(/=/, shift @ARGV, 2))[1];
+ $setupfile = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--extvercmd=/) {
- $extvercmd = (split(/=/, shift @ARGV, 2))[1];
+ $extvercmd = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--mktarball=/) {
- $mktarball = (split(/=/, shift @ARGV, 2))[1];
+ $mktarball = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--name=/) {
- $name = (split(/=/, shift @ARGV, 2))[1];
+ $name = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--email=/) {
- $email = (split(/=/, shift @ARGV, 2))[1];
+ $email = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--desc=/) {
- $desc = (split(/=/, shift @ARGV, 2))[1];
- }
- elsif ($ARGV[0] =~ /--notes=/) {
- $notes = (split(/=/, shift @ARGV, 2))[1];
+ $desc = (split(/=/, shift @ARGV))[1];
}
elsif ($ARGV[0] =~ /--configure=(.*)/) {
$confopts = $1;
@@ -388,10 +383,6 @@ if (-d $CURLDIR) {
mydie "$CURLDIR is not a daily source dir or checked out from git!"
}
}
-
-# make the path absolute so we can use it everywhere
-$CURLDIR = File::Spec->rel2abs("$CURLDIR");
-
$build="build-$$";
$buildlogname="buildlog-$$";
$buildlog="$pwd/$buildlogname";
@@ -464,7 +455,7 @@ if ($git) {
logit " $_";
}
- chdir "$CURLDIR";
+ chdir "$pwd/$CURLDIR";
}
if($nobuildconf) {
@@ -563,7 +554,7 @@ chdir "$pwd/$build";
if ($configurebuild) {
# run configure script
- print `$CURLDIR/configure $confopts 2>&1`;
+ print `../$CURLDIR/configure $confopts 2>&1`;
if (-f "lib/Makefile") {
logit "configure seems to have finished fine";
@@ -573,26 +564,26 @@ if ($configurebuild) {
} else {
logit "copying files to build dir ...";
if (($^O eq 'MSWin32') && ($targetos !~ /netware/)) {
- system("xcopy /s /q \"$CURLDIR\" .");
+ system("xcopy /s /q ..\\$CURLDIR .");
system("buildconf.bat");
}
elsif ($targetos =~ /netware/) {
- system("cp -afr $CURLDIR/* .");
- system("cp -af $CURLDIR/Makefile.dist Makefile");
+ system("cp -afr ../$CURLDIR/* .");
+ system("cp -af ../$CURLDIR/Makefile.dist Makefile");
system("$make -i -C lib -f Makefile.netware prebuild");
system("$make -i -C src -f Makefile.netware prebuild");
- if (-d "$CURLDIR/ares") {
+ if (-d "../$CURLDIR/ares") {
system("$make -i -C ares -f Makefile.netware prebuild");
}
}
elsif ($^O eq 'linux') {
- system("cp -afr $CURLDIR/* .");
- system("cp -af $CURLDIR/Makefile.dist Makefile");
- system("cp -af $CURLDIR/include/curl/curlbuild.h.dist ./include/curl/curlbuild.h");
+ system("cp -afr ../$CURLDIR/* .");
+ system("cp -af ../$CURLDIR/Makefile.dist Makefile");
+ system("cp -af ../$CURLDIR/include/curl/curlbuild.h.dist ./include/curl/curlbuild.h");
system("$make -i -C lib -f Makefile.$targetos prebuild");
system("$make -i -C src -f Makefile.$targetos prebuild");
- if (-d "$CURLDIR/ares") {
- system("cp -af $CURLDIR/ares/ares_build.h.dist ./ares/ares_build.h");
+ if (-d "../$CURLDIR/ares") {
+ system("cp -af ../$CURLDIR/ares/ares_build.h.dist ./ares/ares_build.h");
system("$make -i -C ares -f Makefile.$targetos prebuild");
}
}
diff --git a/tests/unit/Makefile.in b/tests/unit/Makefile.in
index 7b0a10cc0..cd2ed53b2 100644
--- a/tests/unit/Makefile.in
+++ b/tests/unit/Makefile.in
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15 from Makefile.am.
+# Makefile.in generated by automake 1.14.1 from Makefile.am.
# @configure_input@
-# Copyright (C) 1994-2014 Free Software Foundation, Inc.
+# Copyright (C) 1994-2013 Free Software Foundation, Inc.
# This Makefile.in is free software; the Free Software Foundation
# gives unlimited permission to copy and/or distribute it,
@@ -17,17 +17,7 @@
# these files are used in every single unit test program
VPATH = @srcdir@
-am__is_gnu_make = { \
- if test -z '$(MAKELEVEL)'; then \
- false; \
- elif test -n '$(MAKE_HOST)'; then \
- true; \
- elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
- true; \
- else \
- false; \
- fi; \
-}
+am__is_gnu_make = test -n '$(MAKEFILE_LIST)' && test -n '$(MAKELEVEL)'
am__make_running_with_option = \
case $${target_option-} in \
?) ;; \
@@ -90,6 +80,9 @@ PRE_UNINSTALL = :
POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
+DIST_COMMON = $(srcdir)/Makefile.inc $(srcdir)/Makefile.in \
+ $(srcdir)/Makefile.am $(top_srcdir)/mkinstalldirs \
+ $(top_srcdir)/depcomp README
@BUILD_UNITTESTS_TRUE@noinst_PROGRAMS = $(am__EXEEXT_1)
subdir = tests/unit
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
@@ -112,8 +105,7 @@ am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \
$(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
-DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
-mkinstalldirs = $(install_sh) -d
+mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs
CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \
$(top_builddir)/include/curl/curlbuild.h
CONFIG_CLEAN_FILES =
@@ -122,8 +114,7 @@ am__EXEEXT_1 = unit1300$(EXEEXT) unit1301$(EXEEXT) unit1302$(EXEEXT) \
unit1303$(EXEEXT) unit1304$(EXEEXT) unit1305$(EXEEXT) \
unit1307$(EXEEXT) unit1308$(EXEEXT) unit1309$(EXEEXT) \
unit1330$(EXEEXT) unit1394$(EXEEXT) unit1395$(EXEEXT) \
- unit1396$(EXEEXT) unit1397$(EXEEXT) unit1398$(EXEEXT) \
- unit1600$(EXEEXT) unit1601$(EXEEXT) unit1602$(EXEEXT)
+ unit1396$(EXEEXT) unit1397$(EXEEXT) unit1398$(EXEEXT)
PROGRAMS = $(noinst_PROGRAMS)
am__dirstamp = $(am__leading_dot)dirstamp
am__objects_1 = ../libtest/unit1300-first.$(OBJEXT)
@@ -221,24 +212,6 @@ unit1398_OBJECTS = $(am_unit1398_OBJECTS)
unit1398_LDADD = $(LDADD)
unit1398_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
$(top_builddir)/lib/libcurlu.la
-am__objects_16 = ../libtest/unit1600-first.$(OBJEXT)
-am_unit1600_OBJECTS = unit1600-unit1600.$(OBJEXT) $(am__objects_16)
-unit1600_OBJECTS = $(am_unit1600_OBJECTS)
-unit1600_LDADD = $(LDADD)
-unit1600_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
- $(top_builddir)/lib/libcurlu.la
-am__objects_17 = ../libtest/unit1601-first.$(OBJEXT)
-am_unit1601_OBJECTS = unit1601-unit1601.$(OBJEXT) $(am__objects_17)
-unit1601_OBJECTS = $(am_unit1601_OBJECTS)
-unit1601_LDADD = $(LDADD)
-unit1601_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
- $(top_builddir)/lib/libcurlu.la
-am__objects_18 = ../libtest/unit1602-first.$(OBJEXT)
-am_unit1602_OBJECTS = unit1602-unit1602.$(OBJEXT) $(am__objects_18)
-unit1602_OBJECTS = $(am_unit1602_OBJECTS)
-unit1602_LDADD = $(LDADD)
-unit1602_DEPENDENCIES = $(top_builddir)/src/libcurltool.la \
- $(top_builddir)/lib/libcurlu.la
AM_V_P = $(am__v_P_@AM_V@)
am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
am__v_P_0 = false
@@ -277,15 +250,13 @@ SOURCES = $(unit1300_SOURCES) $(unit1301_SOURCES) $(unit1302_SOURCES) \
$(unit1303_SOURCES) $(unit1304_SOURCES) $(unit1305_SOURCES) \
$(unit1307_SOURCES) $(unit1308_SOURCES) $(unit1309_SOURCES) \
$(unit1330_SOURCES) $(unit1394_SOURCES) $(unit1395_SOURCES) \
- $(unit1396_SOURCES) $(unit1397_SOURCES) $(unit1398_SOURCES) \
- $(unit1600_SOURCES) $(unit1601_SOURCES) $(unit1602_SOURCES)
+ $(unit1396_SOURCES) $(unit1397_SOURCES) $(unit1398_SOURCES)
DIST_SOURCES = $(unit1300_SOURCES) $(unit1301_SOURCES) \
$(unit1302_SOURCES) $(unit1303_SOURCES) $(unit1304_SOURCES) \
$(unit1305_SOURCES) $(unit1307_SOURCES) $(unit1308_SOURCES) \
$(unit1309_SOURCES) $(unit1330_SOURCES) $(unit1394_SOURCES) \
$(unit1395_SOURCES) $(unit1396_SOURCES) $(unit1397_SOURCES) \
- $(unit1398_SOURCES) $(unit1600_SOURCES) $(unit1601_SOURCES) \
- $(unit1602_SOURCES)
+ $(unit1398_SOURCES)
am__can_run_installinfo = \
case $$AM_UPDATE_INFO_DIR in \
n|no|NO) false;; \
@@ -310,8 +281,6 @@ am__define_uniq_tagged_files = \
done | $(am__uniquify_input)`
ETAGS = etags
CTAGS = ctags
-am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.inc \
- $(top_srcdir)/depcomp README
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
ACLOCAL = @ACLOCAL@
AMTAR = @AMTAR@
@@ -370,7 +339,7 @@ GREP = @GREP@
HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@
HAVE_LDAP_SSL = @HAVE_LDAP_SSL@
HAVE_LIBZ = @HAVE_LIBZ@
-HAVE_OPENSSL_SRP = @HAVE_OPENSSL_SRP@
+HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@
IDN_ENABLED = @IDN_ENABLED@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
@@ -425,7 +394,6 @@ SED = @SED@
SET_MAKE = @SET_MAKE@
SHELL = @SHELL@
SSL_ENABLED = @SSL_ENABLED@
-SSL_LIBS = @SSL_LIBS@
STRIP = @STRIP@
SUPPORT_FEATURES = @SUPPORT_FEATURES@
SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@
@@ -442,6 +410,7 @@ USE_NSS = @USE_NSS@
USE_OPENLDAP = @USE_OPENLDAP@
USE_POLARSSL = @USE_POLARSSL@
USE_SCHANNEL = @USE_SCHANNEL@
+USE_SSLEAY = @USE_SSLEAY@
USE_UNIX_SOCKETS = @USE_UNIX_SOCKETS@
USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@
VERSION = @VERSION@
@@ -569,9 +538,8 @@ UNITFILES = curlcheck.h \
# These are all unit test programs
-UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 \
- unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398 \
- unit1600 unit1601 unit1602
+UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 \
+ unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398
unit1300_SOURCES = unit1300.c $(UNITFILES)
unit1300_CPPFLAGS = $(AM_CPPFLAGS)
@@ -606,12 +574,6 @@ unit1397_SOURCES = unit1397.c $(UNITFILES)
unit1397_CPPFLAGS = $(AM_CPPFLAGS)
unit1398_SOURCES = unit1398.c $(UNITFILES)
unit1398_CPPFLAGS = $(AM_CPPFLAGS)
-unit1600_SOURCES = unit1600.c $(UNITFILES)
-unit1600_CPPFLAGS = $(AM_CPPFLAGS)
-unit1601_SOURCES = unit1601.c $(UNITFILES)
-unit1601_CPPFLAGS = $(AM_CPPFLAGS)
-unit1602_SOURCES = unit1602.c $(UNITFILES)
-unit1602_CPPFLAGS = $(AM_CPPFLAGS)
all: all-am
.SUFFIXES:
@@ -628,6 +590,7 @@ $(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/Ma
echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tests/unit/Makefile'; \
$(am__cd) $(top_srcdir) && \
$(AUTOMAKE) --foreign tests/unit/Makefile
+.PRECIOUS: Makefile
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
@case '$?' in \
*config.status*) \
@@ -636,7 +599,7 @@ Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
esac;
-$(srcdir)/Makefile.inc $(am__empty):
+$(srcdir)/Makefile.inc:
$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
@@ -751,24 +714,6 @@ unit1397$(EXEEXT): $(unit1397_OBJECTS) $(unit1397_DEPENDENCIES) $(EXTRA_unit1397
unit1398$(EXEEXT): $(unit1398_OBJECTS) $(unit1398_DEPENDENCIES) $(EXTRA_unit1398_DEPENDENCIES)
@rm -f unit1398$(EXEEXT)
$(AM_V_CCLD)$(LINK) $(unit1398_OBJECTS) $(unit1398_LDADD) $(LIBS)
-../libtest/unit1600-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
- ../libtest/$(DEPDIR)/$(am__dirstamp)
-
-unit1600$(EXEEXT): $(unit1600_OBJECTS) $(unit1600_DEPENDENCIES) $(EXTRA_unit1600_DEPENDENCIES)
- @rm -f unit1600$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(unit1600_OBJECTS) $(unit1600_LDADD) $(LIBS)
-../libtest/unit1601-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
- ../libtest/$(DEPDIR)/$(am__dirstamp)
-
-unit1601$(EXEEXT): $(unit1601_OBJECTS) $(unit1601_DEPENDENCIES) $(EXTRA_unit1601_DEPENDENCIES)
- @rm -f unit1601$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(unit1601_OBJECTS) $(unit1601_LDADD) $(LIBS)
-../libtest/unit1602-first.$(OBJEXT): ../libtest/$(am__dirstamp) \
- ../libtest/$(DEPDIR)/$(am__dirstamp)
-
-unit1602$(EXEEXT): $(unit1602_OBJECTS) $(unit1602_DEPENDENCIES) $(EXTRA_unit1602_DEPENDENCIES)
- @rm -f unit1602$(EXEEXT)
- $(AM_V_CCLD)$(LINK) $(unit1602_OBJECTS) $(unit1602_LDADD) $(LIBS)
mostlyclean-compile:
-rm -f *.$(OBJEXT)
@@ -792,9 +737,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1396-first.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1397-first.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1398-first.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1600-first.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1601-first.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@../libtest/$(DEPDIR)/unit1602-first.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1300-unit1300.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1301-unit1301.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1302-unit1302.Po@am__quote@
@@ -810,9 +752,6 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1396-unit1396.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1397-unit1397.Po@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1398-unit1398.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1600-unit1600.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1601-unit1601.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/unit1602-unit1602.Po@am__quote@
.c.o:
@am__fastdepCC_TRUE@ $(AM_V_CC)depbase=`echo $@ | sed 's|[^/]*$$|$(DEPDIR)/&|;s|\.o$$||'`;\
@@ -1258,90 +1197,6 @@ unit1398-unit1398.obj: unit1398.c
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1398_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1398-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-unit1600-unit1600.o: unit1600.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1600-unit1600.o -MD -MP -MF $(DEPDIR)/unit1600-unit1600.Tpo -c -o unit1600-unit1600.o `test -f 'unit1600.c' || echo '$(srcdir)/'`unit1600.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1600-unit1600.Tpo $(DEPDIR)/unit1600-unit1600.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1600.c' object='unit1600-unit1600.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1600-unit1600.o `test -f 'unit1600.c' || echo '$(srcdir)/'`unit1600.c
-
-unit1600-unit1600.obj: unit1600.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1600-unit1600.obj -MD -MP -MF $(DEPDIR)/unit1600-unit1600.Tpo -c -o unit1600-unit1600.obj `if test -f 'unit1600.c'; then $(CYGPATH_W) 'unit1600.c'; else $(CYGPATH_W) '$(srcdir)/unit1600.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1600-unit1600.Tpo $(DEPDIR)/unit1600-unit1600.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1600.c' object='unit1600-unit1600.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1600-unit1600.obj `if test -f 'unit1600.c'; then $(CYGPATH_W) 'unit1600.c'; else $(CYGPATH_W) '$(srcdir)/unit1600.c'; fi`
-
-../libtest/unit1600-first.o: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1600-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1600-first.Tpo -c -o ../libtest/unit1600-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1600-first.Tpo ../libtest/$(DEPDIR)/unit1600-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1600-first.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1600-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-
-../libtest/unit1600-first.obj: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1600-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1600-first.Tpo -c -o ../libtest/unit1600-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1600-first.Tpo ../libtest/$(DEPDIR)/unit1600-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1600-first.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1600_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1600-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-
-unit1601-unit1601.o: unit1601.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1601-unit1601.o -MD -MP -MF $(DEPDIR)/unit1601-unit1601.Tpo -c -o unit1601-unit1601.o `test -f 'unit1601.c' || echo '$(srcdir)/'`unit1601.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1601-unit1601.Tpo $(DEPDIR)/unit1601-unit1601.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1601.c' object='unit1601-unit1601.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1601-unit1601.o `test -f 'unit1601.c' || echo '$(srcdir)/'`unit1601.c
-
-unit1601-unit1601.obj: unit1601.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1601-unit1601.obj -MD -MP -MF $(DEPDIR)/unit1601-unit1601.Tpo -c -o unit1601-unit1601.obj `if test -f 'unit1601.c'; then $(CYGPATH_W) 'unit1601.c'; else $(CYGPATH_W) '$(srcdir)/unit1601.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1601-unit1601.Tpo $(DEPDIR)/unit1601-unit1601.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1601.c' object='unit1601-unit1601.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1601-unit1601.obj `if test -f 'unit1601.c'; then $(CYGPATH_W) 'unit1601.c'; else $(CYGPATH_W) '$(srcdir)/unit1601.c'; fi`
-
-../libtest/unit1601-first.o: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1601-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1601-first.Tpo -c -o ../libtest/unit1601-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1601-first.Tpo ../libtest/$(DEPDIR)/unit1601-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1601-first.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1601-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-
-../libtest/unit1601-first.obj: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1601-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1601-first.Tpo -c -o ../libtest/unit1601-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1601-first.Tpo ../libtest/$(DEPDIR)/unit1601-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1601-first.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1601_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1601-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-
-unit1602-unit1602.o: unit1602.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1602-unit1602.o -MD -MP -MF $(DEPDIR)/unit1602-unit1602.Tpo -c -o unit1602-unit1602.o `test -f 'unit1602.c' || echo '$(srcdir)/'`unit1602.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1602-unit1602.Tpo $(DEPDIR)/unit1602-unit1602.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1602.c' object='unit1602-unit1602.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1602-unit1602.o `test -f 'unit1602.c' || echo '$(srcdir)/'`unit1602.c
-
-unit1602-unit1602.obj: unit1602.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT unit1602-unit1602.obj -MD -MP -MF $(DEPDIR)/unit1602-unit1602.Tpo -c -o unit1602-unit1602.obj `if test -f 'unit1602.c'; then $(CYGPATH_W) 'unit1602.c'; else $(CYGPATH_W) '$(srcdir)/unit1602.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/unit1602-unit1602.Tpo $(DEPDIR)/unit1602-unit1602.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='unit1602.c' object='unit1602-unit1602.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o unit1602-unit1602.obj `if test -f 'unit1602.c'; then $(CYGPATH_W) 'unit1602.c'; else $(CYGPATH_W) '$(srcdir)/unit1602.c'; fi`
-
-../libtest/unit1602-first.o: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1602-first.o -MD -MP -MF ../libtest/$(DEPDIR)/unit1602-first.Tpo -c -o ../libtest/unit1602-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1602-first.Tpo ../libtest/$(DEPDIR)/unit1602-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1602-first.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1602-first.o `test -f '../libtest/first.c' || echo '$(srcdir)/'`../libtest/first.c
-
-../libtest/unit1602-first.obj: ../libtest/first.c
-@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT ../libtest/unit1602-first.obj -MD -MP -MF ../libtest/$(DEPDIR)/unit1602-first.Tpo -c -o ../libtest/unit1602-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) ../libtest/$(DEPDIR)/unit1602-first.Tpo ../libtest/$(DEPDIR)/unit1602-first.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='../libtest/first.c' object='../libtest/unit1602-first.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(unit1602_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o ../libtest/unit1602-first.obj `if test -f '../libtest/first.c'; then $(CYGPATH_W) '../libtest/first.c'; else $(CYGPATH_W) '$(srcdir)/../libtest/first.c'; fi`
-
mostlyclean-libtool:
-rm -f *.lo
@@ -1553,8 +1408,6 @@ uninstall-am:
mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
tags tags-am uninstall uninstall-am
-.PRECIOUS: Makefile
-
# Tell versions [3.59,3.63) of GNU make to not export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
diff --git a/tests/unit/Makefile.inc b/tests/unit/Makefile.inc
index 9073b34e6..526ec1fbd 100644
--- a/tests/unit/Makefile.inc
+++ b/tests/unit/Makefile.inc
@@ -5,9 +5,8 @@ UNITFILES = curlcheck.h \
../libtest/first.c
# These are all unit test programs
-UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 \
- unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398 \
- unit1600 unit1601 unit1602
+UNITPROGS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 \
+ unit1308 unit1309 unit1330 unit1394 unit1395 unit1396 unit1397 unit1398
unit1300_SOURCES = unit1300.c $(UNITFILES)
unit1300_CPPFLAGS = $(AM_CPPFLAGS)
@@ -57,12 +56,3 @@ unit1397_CPPFLAGS = $(AM_CPPFLAGS)
unit1398_SOURCES = unit1398.c $(UNITFILES)
unit1398_CPPFLAGS = $(AM_CPPFLAGS)
-unit1600_SOURCES = unit1600.c $(UNITFILES)
-unit1600_CPPFLAGS = $(AM_CPPFLAGS)
-
-unit1601_SOURCES = unit1601.c $(UNITFILES)
-unit1601_CPPFLAGS = $(AM_CPPFLAGS)
-
-unit1602_SOURCES = unit1602.c $(UNITFILES)
-unit1602_CPPFLAGS = $(AM_CPPFLAGS)
-
diff --git a/tests/unit/curlcheck.h b/tests/unit/curlcheck.h
index 2e3746bdc..96203e075 100644
--- a/tests/unit/curlcheck.h
+++ b/tests/unit/curlcheck.h
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -36,13 +36,11 @@
unitfail++; \
}
-#define verify_memory(dynamic, check, len) \
- if(dynamic && memcmp(dynamic, check, len)) { \
- fprintf(stderr, "%s:%d Memory buffer mismatch size %d. '%s' is not\n", \
- __FILE__, __LINE__, len, hexdump((unsigned char *)check, len)); \
- fprintf(stderr, "%s:%d the same as '%s'\n", \
- __FILE__, __LINE__, hexdump((unsigned char *)dynamic, len)); \
- unitfail++; \
+#define verify_memory(dynamic, check, len) \
+ if(dynamic && memcmp(dynamic, check, len)) { \
+ fprintf(stderr, "%s:%d The dynamic string didn't match '%s'\n", \
+ __FILE__, __LINE__, check); \
+ unitfail++; \
}
/* fail() is for when the test case figured out by itself that a check
diff --git a/tests/unit/unit1305.c b/tests/unit/unit1305.c
index 96913f1fa..91e3b0b27 100644
--- a/tests/unit/unit1305.c
+++ b/tests/unit/unit1305.c
@@ -5,7 +5,7 @@
* | (__| |_| | _ <| |___
* \___|\___/|_| \_\_____|
*
- * Copyright (C) 1998 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2011, 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
@@ -40,19 +40,18 @@
#include "memdebug.h" /* LAST include file */
static struct SessionHandle *data;
-static struct curl_hash hp;
+static struct curl_hash *hp;
static char *data_key;
static struct Curl_dns_entry *data_node;
static CURLcode unit_setup( void )
{
- int rc;
data = curl_easy_init();
if (!data)
return CURLE_OUT_OF_MEMORY;
- rc = Curl_mk_dnscache(&hp);
- if(rc) {
+ hp = Curl_mk_dnscache();
+ if(!hp) {
curl_easy_cleanup(data);
curl_global_cleanup();
return CURLE_OUT_OF_MEMORY;
@@ -66,8 +65,10 @@ static void unit_stop( void )
Curl_freeaddrinfo(data_node->addr);
free(data_node);
}
- free(data_key);
- Curl_hash_destroy(&hp);
+ if (data_key)
+ free(data_key);
+
+ Curl_hash_destroy(hp);
curl_easy_cleanup(data);
curl_global_cleanup();
@@ -129,8 +130,7 @@ UNITTEST_START
abort_unless(rc == CURLE_OK, "data node creation failed");
key_len = strlen(data_key);
- data_node->inuse = 1; /* hash will hold the reference */
- nodep = Curl_hash_add(&hp, data_key, key_len+1, data_node);
+ nodep = Curl_hash_add(hp, data_key, key_len+1, data_node);
abort_unless(nodep, "insertion into hash failed");
/* Freeing will now be done by Curl_hash_destroy */
data_node = NULL;
diff --git a/tests/unit/unit1397.c b/tests/unit/unit1397.c
index c05c119db..fd60c2315 100644
--- a/tests/unit/unit1397.c
+++ b/tests/unit/unit1397.c
@@ -15,7 +15,7 @@ static void unit_stop( void )
UNITTEST_START
/* only these backends define the tested functions */
-#if defined(USE_OPENSSL) || defined(USE_AXTLS) || defined(USE_GSKIT)
+#if defined(USE_SSLEAY) || defined(USE_AXTLS) || defined(USE_GSKIT)
/* here you start doing things and checking that the results are good */
diff --git a/tests/unit/unit1600.c b/tests/unit/unit1600.c
deleted file mode 100644
index 6803cf336..000000000
--- a/tests/unit/unit1600.c
+++ /dev/null
@@ -1,63 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2015, 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 http://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.
- *
- ***************************************************************************/
-#include "curlcheck.h"
-
-#include "urldata.h"
-#include "curl_ntlm_core.h"
-
-CURL *easy;
-
-static CURLcode unit_setup(void)
-{
- easy = curl_easy_init();
- return CURLE_OK;
-}
-
-static void unit_stop(void)
-{
- curl_easy_cleanup(easy);
-}
-
-UNITTEST_START
-
-#if defined(USE_NTLM) && (!defined(USE_WINDOWS_SSPI) || defined(USE_WIN32_CRYPTO))
- unsigned char output[21];
- unsigned char *testp = output;
- Curl_ntlm_core_mk_nt_hash(easy, "1", output);
-
- verify_memory(testp,
- "\x69\x94\x3c\x5e\x63\xb4\xd2\xc1\x04\xdb"
- "\xbc\xc1\x51\x38\xb7\x2b\x00\x00\x00\x00\x00", 21);
-
- Curl_ntlm_core_mk_nt_hash(easy, "hello-you-fool", output);
-
- verify_memory(testp,
- "\x39\xaf\x87\xa6\x75\x0a\x7a\x00\xba\xa0"
- "\xd3\x4f\x04\x9e\xc1\xd0\x00\x00\x00\x00\x00", 21);
-
- Curl_ntlm_core_mk_nt_hash(easy, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", output);
-
- verify_memory(testp,
- "\x36\x9d\xae\x06\x84\x7e\xe1\xc1\x4a\x94\x39\xea\x6f\x44\x8c\x65\x00\x00\x00\x00\x00", 21);
-#endif
-
-UNITTEST_STOP
diff --git a/tests/unit/unit1602.c b/tests/unit/unit1602.c
deleted file mode 100644
index 3b25556bf..000000000
--- a/tests/unit/unit1602.c
+++ /dev/null
@@ -1,80 +0,0 @@
-/***************************************************************************
- * _ _ ____ _
- * Project ___| | | | _ \| |
- * / __| | | | |_) | |
- * | (__| |_| | _ <| |___
- * \___|\___/|_| \_\_____|
- *
- * Copyright (C) 1998 - 2011, 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 http://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.
- *
- ***************************************************************************/
-#include "curlcheck.h"
-
-#define ENABLE_CURLX_PRINTF
-#include "curlx.h"
-
-#include "hash.h"
-
-#include "memdebug.h" /* LAST include file */
-
- static CURLcode unit_setup( void )
-{
- return CURLE_OK;
-}
-
-static void unit_stop( void )
-{
-
-}
-
-static void mydtor(void *p)
-{
- int *ptr = (int*)p;
- free(ptr);
-}
-
-UNITTEST_START
- int *value;
- int *value2;
- size_t klen = sizeof(int);
-
- struct curl_hash hash_static;
- int key = 20;
- int key2 = 25;
- int rc = 0;
-
- rc = Curl_hash_init(&hash_static, 7, Curl_hash_str,
- Curl_str_key_compare, mydtor);
-
- if(rc)
- {
- fail("Curl_hash_init failed to initialize static hash!");
- goto unit_test_abort;
- }
-
- value = malloc(sizeof(int));
- value2 = malloc(sizeof(int));
-
- *value = 199;
- *value2 = 204;
- Curl_hash_add(&hash_static, &key, klen, value);
-
- Curl_hash_clean(&hash_static);
-
- /* Attempt to add another key/value pair */
- Curl_hash_add(&hash_static, &key2, klen, value2);
-
- Curl_hash_destroy(&hash_static);
-
-UNITTEST_STOP
diff --git a/winbuild/BUILD.WINDOWS.txt b/winbuild/BUILD.WINDOWS.txt
index 1556fe654..757c41f57 100644
--- a/winbuild/BUILD.WINDOWS.txt
+++ b/winbuild/BUILD.WINDOWS.txt
@@ -1,5 +1,5 @@
-Building with Visual C++, prerequisites
-=======================================
+Building with Visual C++, prerequises
+=====================================
This document describes how to compile, build and install curl and libcurl
from sources using the Visual C++ build tool. To build with VC++, you will
@@ -19,7 +19,7 @@ Building with Visual C++, prerequisites
http://www.microsoft.com/en-us/download/details.aspx?id=12261
- If you wish to support zlib, openssl, c-ares, ssh2, you will have to download
+ If you wish to support zlib, openssl, ssh2, you will have to download
them separately and copy them to the deps directory as shown below:
somedirectory\
@@ -58,13 +58,12 @@ a directory named using the options given to the nmake call.
nmake /f Makefile.vc mode=<static or dll> <options>
where <options> is one or many of:
- VC=<6,7,8,9,10,11,12,14> - VC versions
+ VC=<6,7,8,9,10,11,12> - VC versions
WITH_DEVEL=<path> - Paths for the development files (SSL, zlib, etc.)
Defaults to sibbling directory deps: ../deps
Libraries can be fetched at http://windows.php.net/downloads/php-sdk/deps/
Uncompress them into the deps folder.
WITH_SSL=<dll or static> - Enable OpenSSL support, DLL or static
- WITH_CARES=<dll or static> - Enable c-ares support, DLL or static
WITH_ZLIB=<dll or static> - Enable zlib support, DLL or static
WITH_SSH2=<dll or static> - Enable libSSH2 support, DLL or static
ENABLE_SSPI=<yes or no> - Enable SSPI support, defaults to yes
@@ -76,23 +75,3 @@ where <options> is one or many of:
GEN_PDB=<yes or no> - Generate Program Database (debug symbols for release build)
DEBUG=<yes or no> - Debug builds
MACHINE=<x86 or x64> - Target architecture (default is x86)
-
-Static linking of Microsoft's C RunTime (CRT):
-==============================================
-If you are using mode=static nmake will create and link to the static build of
-libcurl but *not* the static CRT. If you must you can force nmake to link in
-the static CRT by passing RTLIBCFG=static. Typically you shouldn't use that
-option, and nmake will default to the DLL CRT. RTLIBCFG is rarely used and
-therefore rarely tested. When passing RTLIBCFG for a configuration that was
-already built but not with that option, or if the option was specified
-differently, you must destroy the build directory containing the configuration
-so that nmake can build it from scratch.
-
-Legacy Windows and SSL
-======================
-When you build curl using the build files in this directory the default SSL
-backend will be WinSSL (Windows SSPI, more specifically Schannel), the native
-SSL library that comes with the Windows OS. WinSSL in Windows <= XP is not able
-to connect to servers that no longer support the legacy handshakes and
-algorithms used by those versions. If you will be using curl in one of those
-earlier versions of Windows you should choose another SSL backend like OpenSSL.
diff --git a/winbuild/Makefile.vc b/winbuild/Makefile.vc
index 5b726cd57..6dc58c4ef 100644
--- a/winbuild/Makefile.vc
+++ b/winbuild/Makefile.vc
@@ -15,13 +15,12 @@ CFGSET=true
!MESSAGE Usage: nmake /f Makefile.vc mode=<static or dll> <options>
!MESSAGE where <options> is one or many of:
-!MESSAGE VC=<6,7,8,9,10,11,12,14> - VC versions
+!MESSAGE VC=<6,7,8,9,10,11,12> - VC versions
!MESSAGE WITH_DEVEL=<path> - Paths for the development files (SSL, zlib, etc.)
!MESSAGE Defaults to sibbling directory deps: ../deps
!MESSAGE Libraries can be fetched at http://pecl2.php.net/downloads/php-windows-builds/
!MESSAGE Uncompress them into the deps folder.
!MESSAGE WITH_SSL=<dll or static> - Enable OpenSSL support, DLL or static
-!MESSAGE WITH_CARES=<dll or static> - Enable c-ares support, DLL or static
!MESSAGE WITH_ZLIB=<dll or static> - Enable zlib support, DLL or static
!MESSAGE WITH_SSH2=<dll or static> - Enable libSSH2 support, DLL or static
!MESSAGE ENABLE_IDN=<yes or no> - Enable use of Windows IDN APIs, defaults to yes
@@ -108,14 +107,6 @@ USE_SSL = true
SSL = static
!ENDIF
-!IF "$(WITH_CARES)"=="dll"
-USE_CARES = true
-CARES = dll
-!ELSEIF "$(WITH_CARES)"=="static"
-USE_CARES = true
-CARES = static
-!ENDIF
-
!IF "$(WITH_ZLIB)"=="dll"
USE_ZLIB = true
ZLIB = dll
@@ -150,10 +141,6 @@ CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-static
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-ssl-$(SSL)
!ENDIF
-!IF "$(USE_CARES)"=="true"
-CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-cares-$(CARES)
-!ENDIF
-
!IF "$(USE_ZLIB)"=="true"
CONFIG_NAME_LIB = $(CONFIG_NAME_LIB)-zlib-$(ZLIB)
!ENDIF
diff --git a/winbuild/MakefileBuild.vc b/winbuild/MakefileBuild.vc
index 28d40baa0..b9e150c43 100644
--- a/winbuild/MakefileBuild.vc
+++ b/winbuild/MakefileBuild.vc
@@ -5,7 +5,7 @@
# | (__| |_| | _ <| |___
# \___|\___/|_| \_\_____|
#
-# Copyright (C) 1999 - 2015, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1999 - 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
@@ -22,7 +22,7 @@
###########################################################################
#
-# Makefile for building libcurl with MSVC 6, 7, 8, 9, 10, 11, 12 and 14
+# Makefile for building libcurl with MSVC 6, 7, 8, 9, 10, 11 and 12
#
# Usage: see usage message below
# Should be invoked from winbuild directory
@@ -118,30 +118,9 @@ SSL = static
!ENDIF
!IFDEF USE_SSL
-SSL_CFLAGS = /DUSE_OPENSSL /I"$(DEVEL_INCLUDE)/openssl"
+SSL_CFLAGS = /DUSE_SSLEAY /I"$(DEVEL_INCLUDE)/openssl"
!ENDIF
-!IF "$(WITH_CARES)"=="dll"
-!IF "$(DEBUG)"=="yes"
-CARES_LIBS = caresd.lib
-!ELSE
-CARES_LIBS = cares.lib
-!ENDIF
-USE_CARES = true
-CARES = dll
-!ELSEIF "$(WITH_CARES)"=="static"
-!IF "$(DEBUG)"=="yes"
-CARES_LIBS = libcaresd.lib
-!ELSE
-CARES_LIBS = libcares.lib
-!ENDIF
-USE_CARES = true
-CARES = static
-!ENDIF
-
-!IFDEF USE_CARES
-CARES_CFLAGS = /DUSE_ARES /I"$(DEVEL_INCLUDE)/cares"
-!ENDIF
!IF "$(WITH_ZLIB)"=="dll"
ZLIB_LIBS = zlib.lib
@@ -318,11 +297,6 @@ CFLAGS = $(CFLAGS) $(SSL_CFLAGS)
LFLAGS = $(LFLAGS) $(SSL_LFLAGS) $(SSL_LIBS)
!ENDIF
-!IF "$(USE_CARES)"=="true"
-CFLAGS = $(CFLAGS) $(CARES_CFLAGS)
-LFLAGS = $(LFLAGS) $(CARES_LFLAGS) $(CARES_LIBS)
-!ENDIF
-
!IF "$(USE_ZLIB)"=="true"
CFLAGS = $(CFLAGS) $(ZLIB_CFLAGS)
LFLAGS = $(LFLAGS) $(ZLIB_LFLAGS) $(ZLIB_LIBS)
@@ -402,7 +376,6 @@ package: $(TARGET)
$(TARGET): $(LIB_OBJS) $(LIB_DIROBJ) $(DISTDIR)
@echo Using SSL: $(USE_SSL)
- @echo Using c-ares: $(USE_CARES)
@echo Using SSH2: $(USE_SSH2)
@echo Using ZLIB: $(USE_ZLIB)
@echo Using IDN: $(USE_IDN)