├── .gitattributes ├── .gitignore ├── Android.mk ├── CHANGES ├── CHANGES.0 ├── CMake ├── CMakeConfigurableFile.in ├── CurlCheckCSourceCompiles.cmake ├── CurlCheckCSourceRuns.cmake ├── CurlTests.c ├── FindCARES.cmake ├── FindOpenSSL.cmake ├── FindZLIB.cmake ├── OtherTests.cmake ├── Platforms │ └── WindowsCache.cmake └── Utilities.cmake ├── CMakeLists.txt ├── COPYING ├── CTestConfig.cmake ├── GIT-INFO ├── MacOSX-Framework ├── Makefile.am ├── Makefile.dist ├── Makefile.msvc.names ├── README ├── RELEASE-NOTES ├── TODO-RELEASE ├── acinclude.m4 ├── buildconf ├── buildconf.bat ├── configure.ac ├── curl-config.in ├── curl-style.el ├── docs ├── .gitignore ├── BINDINGS ├── BUGS ├── CONTRIBUTE ├── DISTRO-DILEMMA ├── FAQ ├── FEATURES ├── HISTORY ├── INSTALL ├── INSTALL.cmake ├── INSTALL.devcpp ├── INTERNALS ├── KNOWN_BUGS ├── LICENSE-MIXING ├── MAIL-ETIQUETTE ├── MANUAL ├── Makefile.am ├── README.cmake ├── README.netware ├── README.win32 ├── RESOURCES ├── SSLCERTS ├── THANKS ├── TODO ├── TheArtOfHttpScripting ├── VERSIONS ├── curl-config.1 ├── curl.1 ├── examples │ ├── .gitignore │ ├── 10-at-a-time.c │ ├── Makefile.am │ ├── Makefile.example │ ├── Makefile.inc │ ├── Makefile.m32 │ ├── README │ ├── adddocsref.pl │ ├── anyauthput.c │ ├── cacertinmem.c │ ├── certinfo.c │ ├── chkspeed.c │ ├── cookie_interface.c │ ├── curlgtk.c │ ├── curlx.c │ ├── debug.c │ ├── evhiperfifo.c │ ├── fileupload.c │ ├── fopen.c │ ├── ftp-wildcard.c │ ├── ftpget.c │ ├── ftpgetinfo.c │ ├── ftpgetresp.c │ ├── ftpupload.c │ ├── ftpuploadresume.c │ ├── getinfo.c │ ├── getinmemory.c │ ├── ghiper.c │ ├── hiperfifo.c │ ├── htmltidy.c │ ├── htmltitle.cc │ ├── http-post.c │ ├── httpcustomheader.c │ ├── httpput.c │ ├── https.c │ ├── makefile.dj │ ├── multi-app.c │ ├── multi-debugcallback.c │ ├── multi-double.c │ ├── multi-post.c │ ├── multi-single.c │ ├── multithread.c │ ├── opensslthreadlock.c │ ├── persistant.c │ ├── post-callback.c │ ├── postit2.c │ ├── sampleconv.c │ ├── sendrecv.c │ ├── sepheaders.c │ ├── simple.c │ ├── simplepost.c │ ├── simplesmtp.c │ ├── simplessl.c │ ├── smooth-gtk-thread.c │ ├── smtp-multi.c │ ├── smtp-tls.c │ ├── synctime.c │ ├── threaded-ssl.c │ └── version-check.pl ├── index.html └── libcurl │ ├── .gitignore │ ├── ABI │ ├── Makefile.am │ ├── curl_easy_cleanup.3 │ ├── curl_easy_duphandle.3 │ ├── curl_easy_escape.3 │ ├── curl_easy_getinfo.3 │ ├── curl_easy_init.3 │ ├── curl_easy_pause.3 │ ├── curl_easy_perform.3 │ ├── curl_easy_recv.3 │ ├── curl_easy_reset.3 │ ├── curl_easy_send.3 │ ├── curl_easy_setopt.3 │ ├── curl_easy_strerror.3 │ ├── curl_easy_unescape.3 │ ├── curl_escape.3 │ ├── curl_formadd.3 │ ├── curl_formfree.3 │ ├── curl_formget.3 │ ├── curl_free.3 │ ├── curl_getdate.3 │ ├── curl_getenv.3 │ ├── curl_global_cleanup.3 │ ├── curl_global_init.3 │ ├── curl_global_init_mem.3 │ ├── curl_mprintf.3 │ ├── curl_multi_add_handle.3 │ ├── curl_multi_assign.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_multi_setopt.3 │ ├── curl_multi_socket.3 │ ├── curl_multi_socket_action.3 │ ├── curl_multi_socket_all.3 │ ├── curl_multi_strerror.3 │ ├── curl_multi_timeout.3 │ ├── curl_share_cleanup.3 │ ├── curl_share_init.3 │ ├── curl_share_setopt.3 │ ├── curl_share_strerror.3 │ ├── curl_slist_append.3 │ ├── curl_slist_free_all.3 │ ├── curl_strequal.3 │ ├── curl_strnequal.3 │ ├── curl_unescape.3 │ ├── curl_version.3 │ ├── curl_version_info.3 │ ├── getinfo-times │ ├── index.html │ ├── libcurl-easy.3 │ ├── libcurl-errors.3 │ ├── libcurl-multi.3 │ ├── libcurl-share.3 │ ├── libcurl-tutorial.3 │ ├── libcurl.3 │ ├── libcurl.m4 │ └── symbols-in-versions ├── include ├── Makefile.am ├── README └── curl │ ├── .gitignore │ ├── Makefile.am │ ├── curl.h │ ├── curlbuild.h.cmake │ ├── curlbuild.h.dist │ ├── curlbuild.h.in │ ├── curlrules.h │ ├── curlver.h │ ├── easy.h │ ├── mprintf.h │ ├── multi.h │ ├── stdcheaders.h │ ├── typecheck-gcc.h │ └── types.h ├── install-sh ├── lib ├── .gitignore ├── CMakeLists.txt ├── Makefile.Watcom ├── Makefile.am ├── Makefile.b32 ├── Makefile.inc ├── Makefile.m32 ├── Makefile.netware ├── Makefile.vc6 ├── Makefile.vxworks ├── README.ares ├── README.curl_off_t ├── README.curlx ├── README.encoding ├── README.hostip ├── README.httpauth ├── README.memoryleak ├── README.multi_socket ├── README.pingpong ├── README.pipelining ├── amigaos.c ├── amigaos.h ├── arpa_telnet.h ├── asyn-ares.c ├── asyn-thread.c ├── asyn.h ├── axtls.c ├── axtls.h ├── base64.c ├── checksrc.pl ├── config-amigaos.h ├── config-dos.h ├── config-mac.h ├── config-os400.h ├── config-riscos.h ├── config-symbian.h ├── config-tpf.h ├── config-vms.h ├── config-vxworks.h ├── config-win32.h ├── config-win32ce.h ├── connect.c ├── connect.h ├── content_encoding.c ├── content_encoding.h ├── cookie.c ├── cookie.h ├── curl_addrinfo.c ├── curl_addrinfo.h ├── curl_base64.h ├── curl_config.h.cmake ├── curl_fnmatch.c ├── curl_fnmatch.h ├── curl_gethostname.c ├── curl_gethostname.h ├── curl_hmac.h ├── curl_ldap.h ├── curl_md4.h ├── curl_md5.h ├── curl_memory.h ├── curl_memrchr.c ├── curl_memrchr.h ├── curl_rand.c ├── curl_rand.h ├── curl_rtmp.c ├── curl_rtmp.h ├── curl_sspi.c ├── curl_sspi.h ├── curl_threads.c ├── curl_threads.h ├── curlx.h ├── cyassl.c ├── cyassl.h ├── dict.c ├── dict.h ├── easy.c ├── easyif.h ├── escape.c ├── escape.h ├── file.c ├── file.h ├── fileinfo.c ├── fileinfo.h ├── firefox-db2pem.sh ├── formdata.c ├── formdata.h ├── ftp.c ├── ftp.h ├── ftplistparser.c ├── ftplistparser.h ├── getenv.c ├── getinfo.c ├── getinfo.h ├── gopher.c ├── gopher.h ├── gtls.c ├── gtls.h ├── hash.c ├── hash.h ├── hmac.c ├── hostasyn.c ├── hostip.c ├── hostip.h ├── hostip4.c ├── hostip6.c ├── hostsyn.c ├── http.c ├── http.h ├── http_chunks.c ├── http_chunks.h ├── http_digest.c ├── http_digest.h ├── http_negotiate.c ├── http_negotiate.h ├── http_negotiate_sspi.c ├── http_ntlm.c ├── http_ntlm.h ├── http_proxy.c ├── http_proxy.h ├── idn_win32.c ├── if2ip.c ├── if2ip.h ├── imap.c ├── imap.h ├── inet_ntop.c ├── inet_ntop.h ├── inet_pton.c ├── inet_pton.h ├── krb4.c ├── krb4.h ├── krb5.c ├── ldap.c ├── libcurl.def ├── libcurl.imp ├── libcurl.plist ├── libcurl.rc ├── llist.c ├── llist.h ├── makefile.amiga ├── makefile.dj ├── md4.c ├── md5.c ├── memdebug.c ├── memdebug.h ├── mk-ca-bundle.pl ├── mk-ca-bundle.vbs ├── mprintf.c ├── msvcproj.foot ├── msvcproj.head ├── multi.c ├── multiif.h ├── netrc.c ├── netrc.h ├── non-ascii.c ├── non-ascii.h ├── nonblock.c ├── nonblock.h ├── nss.c ├── nssg.h ├── nwlib.c ├── nwos.c ├── openldap.c ├── parsedate.c ├── parsedate.h ├── pingpong.c ├── pingpong.h ├── polarssl.c ├── polarssl.h ├── pop3.c ├── pop3.h ├── progress.c ├── progress.h ├── qssl.c ├── qssl.h ├── rawstr.c ├── rawstr.h ├── rtsp.c ├── rtsp.h ├── security.c ├── select.c ├── select.h ├── sendf.c ├── sendf.h ├── setup-os400.h ├── setup.h ├── setup_once.h ├── share.c ├── share.h ├── slist.c ├── slist.h ├── smtp.c ├── smtp.h ├── sockaddr.h ├── socks.c ├── socks.h ├── socks_gssapi.c ├── socks_sspi.c ├── speedcheck.c ├── speedcheck.h ├── splay.c ├── splay.h ├── ssh.c ├── ssh.h ├── sslgen.c ├── sslgen.h ├── ssluse.c ├── ssluse.h ├── strdup.c ├── strdup.h ├── strequal.c ├── strequal.h ├── strerror.c ├── strerror.h ├── strtok.c ├── strtok.h ├── strtoofft.c ├── strtoofft.h ├── telnet.c ├── telnet.h ├── tftp.c ├── tftp.h ├── timeval.c ├── timeval.h ├── transfer.c ├── transfer.h ├── url.c ├── url.h ├── urldata.h ├── vc6libcurl.dsw ├── vc8proj.foot ├── vc8proj.head ├── version.c ├── warnless.c ├── warnless.h ├── wildcard.c └── wildcard.h ├── libcurl.pc.in ├── log2changes.pl ├── m4 ├── .gitignore ├── curl-compilers.m4 ├── curl-confopts.m4 ├── curl-functions.m4 ├── curl-override.m4 ├── curl-reentrant.m4 └── curl-system.m4 ├── maketgz ├── missing ├── mkinstalldirs ├── packages ├── AIX │ ├── Makefile.am │ └── RPM │ │ ├── .gitignore │ │ ├── Makefile.am │ │ ├── README │ │ └── curl.spec.in ├── DOS │ ├── README │ └── common.dj ├── EPM │ ├── .gitignore │ ├── Makefile.am │ ├── README │ └── curl.list.in ├── Linux │ ├── Makefile.am │ └── RPM │ │ ├── .gitignore │ │ ├── Makefile.am │ │ ├── README │ │ ├── curl-ssl.spec.in │ │ ├── curl.spec.in │ │ └── make_curl_rpm ├── Makefile.am ├── NetWare │ └── get_ver.awk ├── OS400 │ ├── README.OS400 │ ├── ccsidcurl.c │ ├── ccsidcurl.h │ ├── curl.inc.in │ ├── initscript.sh │ ├── make-include.sh │ ├── make-lib.sh │ ├── make-src.sh │ ├── make-tests.sh │ ├── makefile.sh │ ├── os400sys.c │ └── os400sys.h ├── README ├── Solaris │ └── Makefile.am ├── Symbian │ ├── bwins │ │ └── libcurlu.def │ ├── eabi │ │ └── libcurlu.def │ ├── group │ │ ├── bld.inf │ │ ├── curl.iby │ │ ├── curl.mmp │ │ ├── curl.pkg │ │ ├── libcurl.iby │ │ ├── libcurl.mmp │ │ └── libcurl.pkg │ └── readme.txt ├── TPF │ ├── curl.mak │ ├── maketpf.env_curl │ └── maketpf.env_curllib ├── Win32 │ ├── Makefile.am │ ├── README │ └── cygwin │ │ ├── Makefile.am │ │ └── README └── vms │ ├── Makefile.am │ ├── build_vms.com │ ├── curlmsg.h │ ├── curlmsg.msg │ ├── curlmsg.sdl │ ├── curlmsg_vms.h │ ├── hpssl_alpha.opt │ ├── hpssl_ia64.opt │ ├── hpssl_vax.opt │ ├── ldap.opt │ ├── openssl_alpha.opt │ ├── openssl_ia64.opt │ ├── openssl_ssl_alpha.opt │ ├── openssl_ssl_ia64.opt │ ├── openssl_ssl_vax.opt │ ├── openssl_vax.opt │ └── readme ├── perl ├── Makefile.am ├── README └── contrib │ ├── checklinks.pl.in │ ├── crawlink.pl │ ├── formfind │ ├── getlinks.pl.in │ ├── mirror.pl │ └── recursiveftpget.pl.in ├── sample.emacs ├── src ├── .gitignore ├── CMakeLists.txt ├── Makefile.Watcom ├── Makefile.am ├── Makefile.b32 ├── Makefile.inc ├── Makefile.m32 ├── Makefile.netware ├── Makefile.vc6 ├── config-amigaos.h ├── config-mac.h ├── config-riscos.h ├── config-win32.h ├── curl.rc ├── curlutil.c ├── curlutil.h ├── getpass.c ├── getpass.h ├── homedir.c ├── homedir.h ├── hugehelp.c.cvs ├── hugehelp.h ├── macos │ ├── MACINSTALL.TXT │ ├── curl.mcp.xml.sit.hqx │ └── src │ │ ├── curl_GUSIConfig.cpp │ │ └── macos_main.cpp ├── main.c ├── makefile.amiga ├── makefile.dj ├── mkhelp.pl ├── os-specific.c ├── os-specific.h ├── setup.h ├── urlglob.c ├── urlglob.h ├── vc6curlsrc.dsp ├── vc6curlsrc.dsw ├── version.h ├── writeenv.c ├── writeenv.h ├── writeout.c ├── writeout.h ├── xattr.c └── xattr.h ├── tests ├── .gitignore ├── CMakeLists.txt ├── FILEFORMAT ├── Makefile.am ├── README ├── certs │ ├── 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.nn-sv.crl │ ├── Server-localhost.nn-sv.crt │ ├── Server-localhost.nn-sv.csr │ ├── Server-localhost.nn-sv.der │ ├── Server-localhost.nn-sv.dhp │ ├── Server-localhost.nn-sv.key │ ├── Server-localhost.nn-sv.pem │ ├── Server-localhost.nn-sv.prm │ ├── Server-localhost0h-sv.crl │ ├── Server-localhost0h-sv.crt │ ├── Server-localhost0h-sv.csr │ ├── Server-localhost0h-sv.der │ ├── Server-localhost0h-sv.dhp │ ├── Server-localhost0h-sv.key │ ├── Server-localhost0h-sv.p12 │ ├── Server-localhost0h-sv.pem │ ├── Server-localhost0h-sv.prm │ ├── scripts │ │ ├── genroot.sh │ │ └── genserv.sh │ ├── srp-verifier-conf │ └── srp-verifier-db ├── data │ ├── .gitattributes │ ├── DISABLED │ ├── Makefile.am │ ├── test1 │ ├── test10 │ ├── test100 │ ├── test1000 │ ├── test1001 │ ├── test1002 │ ├── test1003 │ ├── test1004 │ ├── test1005 │ ├── test1006 │ ├── test1007 │ ├── test1008 │ ├── test1009 │ ├── test101 │ ├── test1010 │ ├── test1011 │ ├── test1012 │ ├── test1013 │ ├── test1014 │ ├── test1015 │ ├── test1016 │ ├── test1017 │ ├── test1018 │ ├── test1019 │ ├── test102 │ ├── test1020 │ ├── test1021 │ ├── test1022 │ ├── test1023 │ ├── test1024 │ ├── test1025 │ ├── test1026 │ ├── test1027 │ ├── test1028 │ ├── test1029 │ ├── test103 │ ├── test1030 │ ├── test1031 │ ├── test1032 │ ├── test1033 │ ├── test1034 │ ├── test1035 │ ├── test1036 │ ├── test1037 │ ├── test1038 │ ├── test1039 │ ├── test104 │ ├── test1040 │ ├── test1041 │ ├── test1042 │ ├── test1043 │ ├── test1044 │ ├── test1045 │ ├── test1046 │ ├── test1047 │ ├── test1048 │ ├── test1049 │ ├── test105 │ ├── test1050 │ ├── test1051 │ ├── test1052 │ ├── test1053 │ ├── test1054 │ ├── test1055 │ ├── test1056 │ ├── test1057 │ ├── test1058 │ ├── test1059 │ ├── test106 │ ├── test1060 │ ├── test1061 │ ├── test1062 │ ├── test1063 │ ├── test1064 │ ├── test1065 │ ├── test1066 │ ├── test1067 │ ├── test1068 │ ├── test1069 │ ├── test107 │ ├── test1070 │ ├── test1071 │ ├── test1072 │ ├── test1073 │ ├── test1074 │ ├── test1075 │ ├── test1076 │ ├── test1077 │ ├── test1078 │ ├── test1079 │ ├── test108 │ ├── test1080 │ ├── test1081 │ ├── test1082 │ ├── test1083 │ ├── test1084 │ ├── test1085 │ ├── test1086 │ ├── test1087 │ ├── test1088 │ ├── test1089 │ ├── test109 │ ├── test1090 │ ├── test1091 │ ├── test1092 │ ├── test1093 │ ├── test1094 │ ├── test1095 │ ├── test1096 │ ├── test1097 │ ├── test1098 │ ├── test1099 │ ├── test11 │ ├── test110 │ ├── test1100 │ ├── test1101 │ ├── test1102 │ ├── test1103 │ ├── test1104 │ ├── test1105 │ ├── test1106 │ ├── test1107 │ ├── test1108 │ ├── test1109 │ ├── test111 │ ├── test1110 │ ├── test1111 │ ├── test1112 │ ├── test1113 │ ├── test1114 │ ├── test1115 │ ├── test1116 │ ├── test1117 │ ├── test1118 │ ├── test1119 │ ├── test112 │ ├── test1120 │ ├── test1121 │ ├── test1122 │ ├── test1123 │ ├── test1124 │ ├── test1125 │ ├── test113 │ ├── test114 │ ├── test115 │ ├── test116 │ ├── test117 │ ├── test118 │ ├── test119 │ ├── test12 │ ├── test120 │ ├── test1200 │ ├── test1201 │ ├── test1202 │ ├── test1203 │ ├── test121 │ ├── test122 │ ├── test123 │ ├── test124 │ ├── test125 │ ├── test126 │ ├── test127 │ ├── test128 │ ├── test129 │ ├── test13 │ ├── test130 │ ├── test1300 │ ├── test1301 │ ├── test1302 │ ├── test1303 │ ├── test1304 │ ├── test1305 │ ├── test1306 │ ├── test1307 │ ├── test131 │ ├── test132 │ ├── test133 │ ├── test134 │ ├── test135 │ ├── test136 │ ├── test137 │ ├── test138 │ ├── test139 │ ├── test14 │ ├── test140 │ ├── test141 │ ├── test142 │ ├── test143 │ ├── test144 │ ├── test145 │ ├── test146 │ ├── test147 │ ├── test148 │ ├── test149 │ ├── test15 │ ├── test150 │ ├── test151 │ ├── test152 │ ├── test153 │ ├── test154 │ ├── test155 │ ├── test156 │ ├── test157 │ ├── test158 │ ├── test159 │ ├── test16 │ ├── test160 │ ├── test161 │ ├── test162 │ ├── test163 │ ├── test164 │ ├── test165 │ ├── test166 │ ├── test167 │ ├── test168 │ ├── test169 │ ├── test17 │ ├── test170 │ ├── test171 │ ├── test172 │ ├── test173 │ ├── test174 │ ├── test175 │ ├── test176 │ ├── test177 │ ├── test178 │ ├── test179 │ ├── test18 │ ├── test180 │ ├── test181 │ ├── test182 │ ├── test183 │ ├── test184 │ ├── test185 │ ├── test186 │ ├── test187 │ ├── test188 │ ├── test189 │ ├── test19 │ ├── test190 │ ├── test191 │ ├── test192 │ ├── test193 │ ├── test194 │ ├── test195 │ ├── test196 │ ├── test197 │ ├── test198 │ ├── test199 │ ├── test2 │ ├── test20 │ ├── test200 │ ├── test2000 │ ├── test2001 │ ├── test2002 │ ├── test2003 │ ├── test2004 │ ├── test201 │ ├── test202 │ ├── test203 │ ├── test204 │ ├── test205 │ ├── test206 │ ├── test207 │ ├── test208 │ ├── test209 │ ├── test21 │ ├── test210 │ ├── test211 │ ├── test212 │ ├── test213 │ ├── test214 │ ├── test215 │ ├── test216 │ ├── test217 │ ├── test218 │ ├── test22 │ ├── test220 │ ├── test221 │ ├── test222 │ ├── test223 │ ├── test224 │ ├── test225 │ ├── test226 │ ├── test227 │ ├── test228 │ ├── test229 │ ├── test23 │ ├── test231 │ ├── test233 │ ├── test234 │ ├── test235 │ ├── test236 │ ├── test237 │ ├── test238 │ ├── test239 │ ├── test24 │ ├── test240 │ ├── test241 │ ├── test242 │ ├── test243 │ ├── test245 │ ├── test246 │ ├── test247 │ ├── test248 │ ├── test249 │ ├── test25 │ ├── test250 │ ├── test251 │ ├── test252 │ ├── test253 │ ├── test254 │ ├── test255 │ ├── test256 │ ├── test257 │ ├── test258 │ ├── test259 │ ├── test26 │ ├── test260 │ ├── test261 │ ├── test262 │ ├── test263 │ ├── test264 │ ├── test265 │ ├── test266 │ ├── test267 │ ├── test268 │ ├── test269 │ ├── test27 │ ├── test270 │ ├── test271 │ ├── test272 │ ├── test273 │ ├── test274 │ ├── test275 │ ├── test276 │ ├── test277 │ ├── test278 │ ├── test279 │ ├── test28 │ ├── test280 │ ├── test281 │ ├── test282 │ ├── test283 │ ├── test284 │ ├── test285 │ ├── test286 │ ├── test287 │ ├── test288 │ ├── test289 │ ├── test29 │ ├── test290 │ ├── test291 │ ├── test292 │ ├── test293 │ ├── test294 │ ├── test295 │ ├── test296 │ ├── test297 │ ├── test298 │ ├── test299 │ ├── test3 │ ├── test30 │ ├── test300 │ ├── test301 │ ├── test302 │ ├── test303 │ ├── test304 │ ├── test305 │ ├── test306 │ ├── test307 │ ├── test308 │ ├── test309 │ ├── test31 │ ├── test310 │ ├── test311 │ ├── test312 │ ├── test313 │ ├── test32 │ ├── test320 │ ├── test321 │ ├── test322 │ ├── test323 │ ├── test324 │ ├── test33 │ ├── test34 │ ├── test35 │ ├── test350 │ ├── test351 │ ├── test352 │ ├── test353 │ ├── test354 │ ├── test36 │ ├── test37 │ ├── test38 │ ├── test39 │ ├── test4 │ ├── test40 │ ├── test400 │ ├── test401 │ ├── test402 │ ├── test403 │ ├── test404 │ ├── test405 │ ├── test406 │ ├── test407 │ ├── test408 │ ├── test409 │ ├── test41 │ ├── test42 │ ├── test43 │ ├── test44 │ ├── test45 │ ├── test46 │ ├── test47 │ ├── test48 │ ├── test49 │ ├── test5 │ ├── test50 │ ├── test500 │ ├── test501 │ ├── test502 │ ├── test503 │ ├── test504 │ ├── test505 │ ├── test506 │ ├── test507 │ ├── test508 │ ├── test51 │ ├── test510 │ ├── test511 │ ├── test512 │ ├── test513 │ ├── test514 │ ├── test515 │ ├── test516 │ ├── test517 │ ├── test518 │ ├── test519 │ ├── test52 │ ├── test520 │ ├── test521 │ ├── test522 │ ├── test523 │ ├── test524 │ ├── test525 │ ├── test526 │ ├── test527 │ ├── test528 │ ├── test529 │ ├── test53 │ ├── test530 │ ├── test531 │ ├── test532 │ ├── test533 │ ├── test534 │ ├── test535 │ ├── test536 │ ├── test537 │ ├── test538 │ ├── test539 │ ├── test54 │ ├── test540 │ ├── test541 │ ├── test542 │ ├── test543 │ ├── test544 │ ├── test545 │ ├── test546 │ ├── test547 │ ├── test548 │ ├── test549 │ ├── test55 │ ├── test550 │ ├── test551 │ ├── test552 │ ├── test553 │ ├── test554 │ ├── test555 │ ├── test556 │ ├── test557 │ ├── test56 │ ├── test560 │ ├── test561 │ ├── test562 │ ├── test563 │ ├── test564 │ ├── test565 │ ├── test566 │ ├── test567 │ ├── test568 │ ├── test569 │ ├── test57 │ ├── test570 │ ├── test571 │ ├── test572 │ ├── test573 │ ├── test574 │ ├── test575 │ ├── test576 │ ├── test578 │ ├── test579 │ ├── test58 │ ├── test580 │ ├── test581 │ ├── test582 │ ├── test583 │ ├── test584 │ ├── test59 │ ├── test6 │ ├── test60 │ ├── test600 │ ├── test601 │ ├── test602 │ ├── test603 │ ├── test604 │ ├── test605 │ ├── test606 │ ├── test607 │ ├── test608 │ ├── test609 │ ├── test61 │ ├── test610 │ ├── test611 │ ├── test612 │ ├── test613 │ ├── test614 │ ├── test615 │ ├── test616 │ ├── test617 │ ├── test618 │ ├── test619 │ ├── test62 │ ├── test620 │ ├── test621 │ ├── test622 │ ├── test623 │ ├── test624 │ ├── test625 │ ├── test626 │ ├── test627 │ ├── test628 │ ├── test629 │ ├── test63 │ ├── test630 │ ├── test631 │ ├── test632 │ ├── test633 │ ├── test634 │ ├── test635 │ ├── test636 │ ├── test637 │ ├── test64 │ ├── test65 │ ├── test66 │ ├── test67 │ ├── test68 │ ├── test69 │ ├── test7 │ ├── test70 │ ├── test700 │ ├── test701 │ ├── test702 │ ├── test703 │ ├── test704 │ ├── test705 │ ├── test706 │ ├── test707 │ ├── test708 │ ├── test71 │ ├── test72 │ ├── test73 │ ├── test74 │ ├── test75 │ ├── test76 │ ├── test77 │ ├── test78 │ ├── test79 │ ├── test8 │ ├── test80 │ ├── test800 │ ├── test801 │ ├── test802 │ ├── test803 │ ├── test804 │ ├── test805 │ ├── test806 │ ├── test807 │ ├── test808 │ ├── test809 │ ├── test81 │ ├── test810 │ ├── test811 │ ├── test812 │ ├── test813 │ ├── test82 │ ├── test83 │ ├── test84 │ ├── test85 │ ├── test86 │ ├── test87 │ ├── test88 │ ├── test89 │ ├── test9 │ ├── test90 │ ├── test91 │ ├── test92 │ ├── test93 │ ├── test94 │ ├── test95 │ ├── test97 │ ├── test98 │ └── test99 ├── directories.pm ├── ftp.pm ├── ftpserver.pl ├── getpart.pm ├── httpserver.pl ├── keywords.pl ├── libtest │ ├── .gitignore │ ├── CMakeLists.txt │ ├── Makefile.am │ ├── Makefile.inc │ ├── chkhostname.c │ ├── first.c │ ├── lib500.c │ ├── lib501.c │ ├── lib502.c │ ├── lib503.c │ ├── lib504.c │ ├── lib505.c │ ├── lib506.c │ ├── lib507.c │ ├── lib508.c │ ├── lib510.c │ ├── lib511.c │ ├── lib512.c │ ├── lib513.c │ ├── lib514.c │ ├── lib515.c │ ├── lib516.c │ ├── lib517.c │ ├── lib518.c │ ├── lib519.c │ ├── lib520.c │ ├── lib521.c │ ├── lib523.c │ ├── lib524.c │ ├── lib525.c │ ├── lib526.c │ ├── lib530.c │ ├── lib533.c │ ├── lib536.c │ ├── lib537.c │ ├── lib539.c │ ├── lib540.c │ ├── lib541.c │ ├── lib542.c │ ├── lib543.c │ ├── lib544.c │ ├── lib547.c │ ├── lib549.c │ ├── lib552.c │ ├── lib553.c │ ├── lib554.c │ ├── lib555.c │ ├── lib556.c │ ├── lib557.c │ ├── lib560.c │ ├── lib562.c │ ├── lib564.c │ ├── lib566.c │ ├── lib567.c │ ├── lib568.c │ ├── lib569.c │ ├── lib570.c │ ├── lib571.c │ ├── lib572.c │ ├── lib573.c │ ├── lib574.c │ ├── lib575.c │ ├── lib576.c │ ├── lib578.c │ ├── lib579.c │ ├── lib582.c │ ├── lib583.c │ ├── sethostname.c │ ├── sethostname.h │ ├── test.h │ ├── test1013.pl │ ├── test1022.pl │ ├── test307.pl │ ├── test610.pl │ ├── test613.pl │ ├── test75.pl │ ├── testutil.c │ └── testutil.h ├── memanalyze.pl ├── rtspserver.pl ├── runtests.1 ├── runtests.pl ├── secureserver.pl ├── server │ ├── .gitignore │ ├── CMakeLists.txt │ ├── Makefile.am │ ├── Makefile.inc │ ├── base64.pl │ ├── getpart.c │ ├── getpart.h │ ├── resolve.c │ ├── rtspd.c │ ├── server_sockaddr.h │ ├── sockfilt.c │ ├── sws.c │ ├── testpart.c │ ├── tftp.h │ ├── tftpd.c │ ├── util.c │ └── util.h ├── serverhelp.pm ├── sshhelp.pm ├── sshserver.pl ├── stunnel.pem ├── symbol-scan.pl ├── testcurl.1 ├── testcurl.pl ├── tftpserver.pl ├── unit │ ├── .gitignore │ ├── Makefile.am │ ├── Makefile.inc │ ├── README │ ├── curlcheck.h │ ├── unit1300.c │ ├── unit1301.c │ ├── unit1302.c │ ├── unit1303.c │ ├── unit1304.c │ ├── unit1305.c │ └── unit1307.c └── valgrind.pm ├── vc6curl.dsw └── winbuild ├── BUILD.WINDOWS.txt ├── Makefile.vc ├── MakefileBuild.vc └── gen_resp_file.bat /.gitattributes: -------------------------------------------------------------------------------- 1 | *.dsw -crlf 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .deps 2 | .libs 3 | *.lib 4 | *.pdb 5 | *.dll 6 | *.exe 7 | *.obj 8 | *.asc 9 | .*.swp 10 | Debug 11 | Release 12 | *.exp 13 | Makefile 14 | Makefile.in 15 | aclocal.m4 16 | autom4te.cache 17 | config.guess 18 | config.log 19 | config.status 20 | config.sub 21 | configure 22 | depcomp 23 | libtool 24 | ltmain.sh 25 | compile 26 | curl-config 27 | libcurl.pc 28 | missing 29 | curl-*.tar.gz 30 | curl-*.tar.bz2 31 | curl-*.tar.lzma 32 | curl-*.zip 33 | INSTALL 34 | install-sh 35 | *.o 36 | *.lo 37 | *.la 38 | mkinstalldirs 39 | tags 40 | TAGS 41 | *~ 42 | aclocal.m4.bak 43 | CHANGES.dist 44 | -------------------------------------------------------------------------------- /CHANGES: -------------------------------------------------------------------------------- 1 | _ _ ____ _ 2 | ___| | | | _ \| | 3 | / __| | | | |_) | | 4 | | (__| |_| | _ <| |___ 5 | \___|\___/|_| \_\_____| 6 | 7 | Changelog 8 | 9 | This file no longer holds the changelog. Now you can generate it yourself 10 | like this: 11 | 12 | $ git log --pretty=fuller --no-color --date=short --decorate=full | \ 13 | ./log2changes.pl 14 | 15 | The older, manually edited, changelog is found in git named CHANGES.0 16 | -------------------------------------------------------------------------------- /CHANGES.0: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/CHANGES.0 -------------------------------------------------------------------------------- /CMake/CMakeConfigurableFile.in: -------------------------------------------------------------------------------- 1 | @CMAKE_CONFIGURABLE_FILE_CONTENT@ 2 | 3 | -------------------------------------------------------------------------------- /CMake/FindOpenSSL.cmake: -------------------------------------------------------------------------------- 1 | # Extension of the standard FindOpenSSL.cmake 2 | # Adds OPENSSL_INCLUDE_DIRS and libeay32 3 | include("${CMAKE_ROOT}/Modules/FindOpenSSL.cmake") 4 | 5 | # Bill Hoffman told that libeay32 is necessary for him: 6 | find_library(SSL_LIBEAY NAMES libeay32) 7 | 8 | if(OPENSSL_FOUND) 9 | if(SSL_LIBEAY) 10 | list(APPEND OPENSSL_LIBRARIES ${SSL_LIBEAY}) 11 | else() 12 | set(OPENSSL_FOUND FALSE) 13 | endif() 14 | endif() 15 | 16 | 17 | if(OPENSSL_FOUND) 18 | set(OPENSSL_INCLUDE_DIRS ${OPENSSL_INCLUDE_DIR}) 19 | endif() 20 | -------------------------------------------------------------------------------- /CMake/FindZLIB.cmake: -------------------------------------------------------------------------------- 1 | # Locate zlib 2 | include("${CMAKE_ROOT}/Modules/FindZLIB.cmake") 3 | 4 | find_library(ZLIB_LIBRARY_DEBUG NAMES zd zlibd zdlld zlib1d ) 5 | 6 | if(ZLIB_FOUND AND ZLIB_LIBRARY_DEBUG) 7 | set( ZLIB_LIBRARIES optimized "${ZLIB_LIBRARY}" debug ${ZLIB_LIBRARY_DEBUG}) 8 | endif() 9 | -------------------------------------------------------------------------------- /CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/CMakeLists.txt -------------------------------------------------------------------------------- /CTestConfig.cmake: -------------------------------------------------------------------------------- 1 | ## This file should be placed in the root directory of your project. 2 | ## Then modify the CMakeLists.txt file in the root directory of your 3 | ## project to incorporate the testing dashboard. 4 | ## # The following are required to uses Dart and the Cdash dashboard 5 | ## ENABLE_TESTING() 6 | ## INCLUDE(Dart) 7 | set(CTEST_PROJECT_NAME "CURL") 8 | set(CTEST_NIGHTLY_START_TIME "00:00:00 EST") 9 | 10 | set(CTEST_DROP_METHOD "http") 11 | set(CTEST_DROP_SITE "my.cdash.org") 12 | set(CTEST_DROP_LOCATION "/submit.php?project=CURL") 13 | set(CTEST_DROP_SITE_CDASH TRUE) 14 | -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/README -------------------------------------------------------------------------------- /TODO-RELEASE: -------------------------------------------------------------------------------- 1 | To be addressed in 7.21.6 2 | ========================= 3 | 4 | 284 - bug 3172608 "No re-authentication when HTTP connecton is closed" 5 | http://curl.haxx.se/bug/view.cgi?id=3172608 6 | Would be nice if someone could verify the suggested patch 7 | 8 | 285 - bug 3163118 "Allow programatic use of telnet on Windows" 9 | http://curl.haxx.se/bug/view.cgi?id=3163118 10 | Would appreciate a Windows developer to give it a look before we apply 11 | the suggested patch 12 | 13 | 287 - bug 3215314 Post quote operation to rename fails in Windows 14 | 15 | 289 - 16 | -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | *.pdf 3 | -------------------------------------------------------------------------------- /docs/BINDINGS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/docs/BINDINGS -------------------------------------------------------------------------------- /docs/README.cmake: -------------------------------------------------------------------------------- 1 | _ _ ____ _ 2 | ___| | | | _ \| | 3 | / __| | | | |_) | | 4 | | (__| |_| | _ <| |___ 5 | \___|\___/|_| \_\_____| 6 | 7 | README.cmake 8 | Read the README file first. 9 | 10 | Curl contains CMake build files that provide a way to build Curl with the 11 | CMake build tool (www.cmake.org). CMake is a cross platform meta build tool 12 | that generates native makefiles and IDE project files. The CMake build 13 | system can be used to build Curl on any of its supported platforms. 14 | 15 | Read the INSTALL.cmake file for instructions on how to compile curl with 16 | CMake. 17 | -------------------------------------------------------------------------------- /docs/THANKS: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/docs/THANKS -------------------------------------------------------------------------------- /docs/examples/.gitignore: -------------------------------------------------------------------------------- 1 | 10-at-a-time 2 | anyauthput 3 | certinfo 4 | chkspeed 5 | cookie_interface 6 | debug 7 | fileupload 8 | fopen 9 | ftp-wildcard 10 | ftpget 11 | ftpgetinfo 12 | ftpgetresp 13 | ftpupload 14 | getinfo 15 | getinmemory 16 | http-post 17 | httpcustomheader 18 | httpput 19 | https 20 | multi-app 21 | multi-debugcallback 22 | multi-double 23 | multi-post 24 | multi-single 25 | persistant 26 | post-callback 27 | postit2 28 | sendrecv 29 | sepheaders 30 | simple 31 | simplepost 32 | simplesmtp 33 | simplessl 34 | smtp-multi 35 | smtp-tls 36 | -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | Index to Curl documentation 5 | 6 | 7 | 8 |

Index to Curl documentation

9 | 10 |

Programs

11 | curl-config 12 |
curl 13 | 14 |

Tutorial

15 | The Art Of Scripting HTTP Requests Using Curl (plain text) 16 | 17 |

libcurl

18 | See the libcurl section 19 | 20 | 21 | -------------------------------------------------------------------------------- /docs/libcurl/.gitignore: -------------------------------------------------------------------------------- 1 | *.html 2 | *.pdf 3 | -------------------------------------------------------------------------------- /docs/libcurl/curl_multi_socket_all.3: -------------------------------------------------------------------------------- 1 | .so man3/curl_multi_socket.3 2 | -------------------------------------------------------------------------------- /docs/libcurl/curl_strnequal.3: -------------------------------------------------------------------------------- 1 | .so man3/curl_strequal.3 2 | -------------------------------------------------------------------------------- /include/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = curl 2 | 3 | EXTRA_DIST = README 4 | 5 | AUTOMAKE_OPTIONS = foreign no-dependencies 6 | -------------------------------------------------------------------------------- /include/curl/.gitignore: -------------------------------------------------------------------------------- 1 | curlbuild.h 2 | stamp-h3 3 | curlver.h.dist 4 | -------------------------------------------------------------------------------- /include/curl/types.h: -------------------------------------------------------------------------------- 1 | /* not used */ 2 | -------------------------------------------------------------------------------- /lib/.gitignore: -------------------------------------------------------------------------------- 1 | curl_config.h 2 | curl_config.h.in 3 | stamp-h1 4 | *.orig 5 | *.rej 6 | TAGS 7 | Makefile.vc8.dist 8 | Makefile.vc9.dist 9 | libcurl.plist.dist 10 | libcurl.vcproj 11 | vc6libcurl.dsp 12 | Makefile.vc10.dist 13 | -------------------------------------------------------------------------------- /lib/cookie.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/lib/cookie.c -------------------------------------------------------------------------------- /lib/krb4.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/lib/krb4.c -------------------------------------------------------------------------------- /lib/krb5.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/lib/krb5.c -------------------------------------------------------------------------------- /lib/libcurl.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/lib/libcurl.rc -------------------------------------------------------------------------------- /lib/makefile.amiga: -------------------------------------------------------------------------------- 1 | # 2 | # libcurl Makefile for AmigaOS ... 3 | # 4 | 5 | # change the follow to where you have the AmiTCP SDK v4.3 includes: 6 | 7 | ATCPSDKI= /GG/netinclude 8 | 9 | 10 | CC = m68k-amigaos-gcc 11 | CFLAGS = -I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall 12 | 13 | include Makefile.inc 14 | CSOURCES += amigaos.c 15 | OBJS = $(CSOURCES:.c=.o) 16 | 17 | all: $(OBJS) 18 | ar cru libcurl.a $(OBJS) 19 | ranlib libcurl.a 20 | 21 | install: 22 | $(INSTALL) -c ./libcurl.a /lib/libcurl.a 23 | -------------------------------------------------------------------------------- /lib/msvcproj.foot: -------------------------------------------------------------------------------- 1 | 2 | # Begin Group "Resource Files" 3 | 4 | # PROP Default_Filter "" 5 | # Begin Source File 6 | 7 | SOURCE=.\libcurl.rc 8 | # End Source File 9 | # End Group 10 | # End Target 11 | # End Project 12 | -------------------------------------------------------------------------------- /lib/security.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/lib/security.c -------------------------------------------------------------------------------- /lib/vc6libcurl.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "libcurl"=".\vc6libcurl.dsp" - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /lib/vc8proj.foot: -------------------------------------------------------------------------------- 1 | 2 | 3 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /m4/.gitignore: -------------------------------------------------------------------------------- 1 | libtool.m4 2 | ltoptions.m4 3 | ltsugar.m4 4 | ltversion.m4 5 | lt~obsolete.m4 6 | -------------------------------------------------------------------------------- /mkinstalldirs: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | # mkinstalldirs --- make directory hierarchy 3 | # Author: Noah Friedman 4 | # Created: 1993-05-16 5 | # Public domain 6 | 7 | 8 | errstatus=0 9 | 10 | for file 11 | do 12 | set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` 13 | shift 14 | 15 | pathcomp= 16 | for d 17 | do 18 | pathcomp="$pathcomp$d" 19 | case "$pathcomp" in 20 | -* ) pathcomp=./$pathcomp ;; 21 | esac 22 | 23 | if test ! -d "$pathcomp"; then 24 | echo "mkdir -m0755 $pathcomp" 1>&2 25 | 26 | mkdir -m0755 "$pathcomp" || lasterr=$? 27 | 28 | if test ! -d "$pathcomp"; then 29 | errstatus=$lasterr 30 | fi 31 | fi 32 | 33 | pathcomp="$pathcomp/" 34 | done 35 | done 36 | 37 | exit $errstatus 38 | 39 | # mkinstalldirs ends here 40 | -------------------------------------------------------------------------------- /packages/AIX/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = RPM 2 | 3 | EXTRA_DIST = Makefile.am 4 | -------------------------------------------------------------------------------- /packages/AIX/RPM/.gitignore: -------------------------------------------------------------------------------- 1 | curl.spec 2 | -------------------------------------------------------------------------------- /packages/AIX/RPM/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = README curl.spec.in 2 | 3 | -------------------------------------------------------------------------------- /packages/DOS/README: -------------------------------------------------------------------------------- 1 | Gisle Vanem made curl build fine on DOS (and MingW) with djgpp, OpenSSL and his 2 | Watt-32 stack. 3 | 4 | 'make djgpp' in the root curl dir should build it fine. 5 | 6 | Note 1: djgpp 2.04 beta has a sscanf() bug so the URL parsing isn't 7 | done proberly. Use djgpp 2.03 until they fix it. 8 | 9 | Note 2: Compile Watt-32 (and OpenSSL) with the same version of djgpp. 10 | Otherwise things go wrong because things like FS-extensions and 11 | errnos have been changed between releases. 12 | -------------------------------------------------------------------------------- /packages/EPM/.gitignore: -------------------------------------------------------------------------------- 1 | curl.list 2 | -------------------------------------------------------------------------------- /packages/EPM/Makefile.am: -------------------------------------------------------------------------------- 1 | AUTOMAKE_OPTIONS = foreign 2 | 3 | EXTRA_DIST = README curl.list.in 4 | -------------------------------------------------------------------------------- /packages/EPM/README: -------------------------------------------------------------------------------- 1 | EPM is a free UNIX software/file packaging program that generates distribution 2 | archives from a list of files. EPM Can: 3 | 4 | * Generate portable script-based distribution packages complete with 5 | installation and removal scripts. 6 | * Generate vendor distributions in AIX, BSD, Compaq Tru64, Debian, HP-UX, 7 | IRIX, Red Hat, and Solaris formats. 8 | * Provide a complete, cross-platform software distribution solution for your 9 | applications. 10 | 11 | http://www.easysw.com/epm/ 12 | 13 | -------------------------------------------------------------------------------- /packages/Linux/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = RPM 2 | -------------------------------------------------------------------------------- /packages/Linux/RPM/.gitignore: -------------------------------------------------------------------------------- 1 | curl-ssl.spec 2 | curl.spec 3 | -------------------------------------------------------------------------------- /packages/Linux/RPM/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = README curl-ssl.spec.in curl.spec.in make_curl_rpm 2 | 3 | -------------------------------------------------------------------------------- /packages/Linux/RPM/README: -------------------------------------------------------------------------------- 1 | Author: Daniel (I'm not trustworthy, replace this!) 2 | 3 | Paul Marquis's 'make_curl_rpm' script is a fine example on how to automate the 4 | jobs. You need to fill in your own name and email at least. 5 | 6 | -------------------------------------------------------------------------------- /packages/OS400/make-src.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | # 3 | # 4 | # Not implemented yet on OS/400. 5 | -------------------------------------------------------------------------------- /packages/Symbian/group/bld.inf: -------------------------------------------------------------------------------- 1 | // 2 | // libcurl and curl bld.inf file for Symbian OS 3 | // 4 | PRJ_EXPORTS 5 | libcurl.iby /epoc32/rom/include/libcurl.iby 6 | curl.iby /epoc32/rom/include/curl.iby 7 | 8 | PRJ_MMPFILES 9 | libcurl.mmp 10 | curl.mmp 11 | -------------------------------------------------------------------------------- /packages/Symbian/group/curl.iby: -------------------------------------------------------------------------------- 1 | // 2 | // curl file transfer utility command-line utility 3 | // 4 | // Use this file with buildrom to add curl to a device ROM 5 | // 6 | 7 | #ifndef CURL_IBY 8 | #define CURL_IBY 9 | 10 | #include 11 | #include 12 | 13 | file=ABI_DIR\BUILD_DIR\curl.exe \sys\bin\curl.exe 14 | 15 | #endif // CURL_IBY 16 | -------------------------------------------------------------------------------- /packages/Symbian/group/curl.mmp: -------------------------------------------------------------------------------- 1 | // 2 | // cURL network retrieval client 3 | // 4 | 5 | TARGET curl.exe 6 | TARGETTYPE exe 7 | UID 0x00000000 0xF0206442 8 | 9 | SOURCEPATH ../../../src 10 | SOURCE \ 11 | main.c hugehelp.c urlglob.c writeout.c writeenv.c \ 12 | getpass.c homedir.c curlutil.c os-specific.c xattr.c 13 | 14 | SOURCEPATH ../../../lib 15 | SOURCE \ 16 | rawstr.c nonblock.c 17 | 18 | USERINCLUDE ../../../src ../../../lib ../../../include/curl 19 | 20 | SYSTEMINCLUDE ../../../include /epoc32/include /epoc32/include/stdapis 21 | 22 | LIBRARY euser.lib libc.lib libcurl.lib 23 | STATICLIBRARY libcrt0.lib 24 | 25 | CAPABILITY NetworkServices 26 | 27 | EPOCSTACKSIZE 0x8000 28 | 29 | -------------------------------------------------------------------------------- /packages/Symbian/group/libcurl.iby: -------------------------------------------------------------------------------- 1 | // 2 | // libcurl file transfer DLL 3 | // 4 | // Use this file with buildrom to add libcurl to a device ROM 5 | // 6 | 7 | #ifndef LIBCURL_IBY 8 | #define LIBCURL_IBY 9 | 10 | #include 11 | 12 | file=ABI_DIR\BUILD_DIR\libcurl.dll \sys\bin\libcurl.dll 13 | 14 | #endif // LIBCURL_IBY 15 | -------------------------------------------------------------------------------- /packages/Symbian/group/libcurl.pkg: -------------------------------------------------------------------------------- 1 | ; libcurl package defintion file 2 | ; Use with makesis to create a Symbian .sis package 3 | 4 | ;Language - standard language definitions 5 | &EN 6 | 7 | ;Header - standard sis file header including version number 8 | ;Version scheme: curl's major, curl's minor, curl's subminor*100 + build number 9 | ; e.g. The third Symbian package of curl ver. 7.20.1 would have a SIS package 10 | ; version of 7, 20, 103 11 | #{"libcurl"}, (0xF0206D00), 7, 20, , TYPE=SA 12 | 13 | ; Vendor name 14 | %{"curl project"} 15 | :"curl project" 16 | 17 | ; A dependency on P.I.P.S. is probably a good idea to add here 18 | ;(0x20009A80), *, *, *, {"Open C Standard Libraries"} 19 | ;(0x20009A81), *, *, *, {"P.I.P.S. for UIQ 3"} 20 | 21 | ;Files - standard file specifications 22 | "\epoc32\release\armv5\urel\libcurl.dll" - "$:\sys\bin\libcurl.dll" 23 | -------------------------------------------------------------------------------- /packages/Win32/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = cygwin 2 | 3 | EXTRA_DIST = README 4 | -------------------------------------------------------------------------------- /packages/Win32/README: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/packages/Win32/README -------------------------------------------------------------------------------- /packages/vms/Makefile.am: -------------------------------------------------------------------------------- 1 | EXTRA_DIST = build_vms.com \ 2 | curlmsg.h \ 3 | curlmsg.msg \ 4 | curlmsg.sdl \ 5 | curlmsg_vms.h \ 6 | hpssl_alpha.opt \ 7 | hpssl_ia64.opt \ 8 | hpssl_vax.opt \ 9 | ldap.opt \ 10 | openssl_alpha.opt \ 11 | openssl_ia64.opt \ 12 | openssl_vax.opt \ 13 | openssl_ssl_alpha.opt \ 14 | openssl_ssl_ia64.opt \ 15 | openssl_ssl_vax.opt \ 16 | readme 17 | -------------------------------------------------------------------------------- /packages/vms/hpssl_alpha.opt: -------------------------------------------------------------------------------- 1 | SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE 2 | SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/hpssl_ia64.opt: -------------------------------------------------------------------------------- 1 | SYS$LIBRARY:SSL$LIBCRYPTO_SHR.EXE/SHARE 2 | SYS$LIBRARY:SSL$LIBSSL_SHR.EXE/SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/hpssl_vax.opt: -------------------------------------------------------------------------------- 1 | SYS$LIBRARY:SSL$LIBCRYPTO_SHR32.EXE/SHARE 2 | SYS$LIBRARY:SSL$LIBSSL_SHR32.EXE/SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/ldap.opt: -------------------------------------------------------------------------------- 1 | SYS$SHARE:LDAP$SHR.EXE /SHARE 2 | -------------------------------------------------------------------------------- /packages/vms/openssl_alpha.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:LIBCRYPTO.EXE /SHARE 2 | SSLLIB:LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/openssl_ia64.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:LIBCRYPTO.EXE /SHARE 2 | SSLLIB:LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/openssl_ssl_alpha.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:SSL_LIBCRYPTO.EXE /SHARE 2 | SSLLIB:SSL_LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/openssl_ssl_ia64.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:SSL_LIBCRYPTO.EXE /SHARE 2 | SSLLIB:SSL_LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/openssl_ssl_vax.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:SSL_LIBCRYPTO.EXE /SHARE 2 | SSLLIB:SSL_LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /packages/vms/openssl_vax.opt: -------------------------------------------------------------------------------- 1 | SSLLIB:LIBCRYPTO.EXE /SHARE 2 | SSLLIB:LIBSSL.EXE /SHARE 3 | -------------------------------------------------------------------------------- /perl/Makefile.am: -------------------------------------------------------------------------------- 1 | SUBDIRS = Curl_easy 2 | 3 | EXTRA_DIST = README 4 | -------------------------------------------------------------------------------- /src/.gitignore: -------------------------------------------------------------------------------- 1 | curl 2 | curl_config.h 3 | curl_config.h.in 4 | hugehelp.c 5 | stamp-h2 6 | Makefile.vc8.dist 7 | Makefile.vc9.dist 8 | version.h.dist 9 | Makefile.vc10.dist 10 | -------------------------------------------------------------------------------- /src/curl.rc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/src/curl.rc -------------------------------------------------------------------------------- /src/hugehelp.c.cvs: -------------------------------------------------------------------------------- 1 | #include 2 | void hugehelp(void) 3 | { 4 | puts ( "This is a silly replacement for the actual file."); 5 | } 6 | -------------------------------------------------------------------------------- /src/makefile.amiga: -------------------------------------------------------------------------------- 1 | # 2 | # $VER: cURL Makefile for AmigaOS ... 3 | # 4 | 5 | # change the follow to where you have the AmiTCP SDK v4.3 includes: 6 | 7 | ATCPSDKI= /GG/netinclude 8 | 9 | 10 | CC = m68k-amigaos-gcc 11 | CFLAGS = -I$(ATCPSDKI) -m68020-60 -O2 -msoft-float -noixemul -g -I. -I../include -W -Wall 12 | LIBS = ../lib/libcurl.a -lssl -lcrypto -lz 13 | MANPAGE = ../docs/curl.1 14 | README = ../docs/MANUAL 15 | MKHELP = ../src/mkhelp.pl 16 | 17 | top_srcdir = .. 18 | 19 | include Makefile.inc 20 | 21 | OBJS = $(CURL_CFILES:.c=.o) $(CURLX_ONES:.c=.o) 22 | 23 | all: hugehelp.c $(OBJS) 24 | $(CC) $(CFLAGS) -o cURL $(OBJS) $(LIBS) -Wl,-Map,cURL.map,--cref 25 | 26 | hugehelp.c: $(README) $(MANPAGE) mkhelp.pl 27 | rm -f hugehelp.c 28 | /bin/nroff -man $(MANPAGE) | /bin/perl $(MKHELP) -c $(README) > hugehelp.c 29 | 30 | install: 31 | $(INSTALL) -c cURL /c/cURL 32 | 33 | -------------------------------------------------------------------------------- /src/vc6curlsrc.dsw: -------------------------------------------------------------------------------- 1 | Microsoft Developer Studio Workspace File, Format Version 6.00 2 | # WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! 3 | 4 | ############################################################################### 5 | 6 | Project: "curlsrc"=".\vc6curlsrc.dsp" - Package Owner=<4> 7 | 8 | Package=<5> 9 | {{{ 10 | }}} 11 | 12 | Package=<4> 13 | {{{ 14 | }}} 15 | 16 | ############################################################################### 17 | 18 | Global: 19 | 20 | Package=<5> 21 | {{{ 22 | }}} 23 | 24 | Package=<3> 25 | {{{ 26 | }}} 27 | 28 | ############################################################################### 29 | 30 | -------------------------------------------------------------------------------- /tests/.gitignore: -------------------------------------------------------------------------------- 1 | log 2 | curl_client_key 3 | curl_client_key.pub 4 | curl_client_knownhosts 5 | curl_host_dsa_key 6 | curl_host_dsa_key.pub 7 | curl_sftp_cmds 8 | curl_sftp_config 9 | curl_ssh_config 10 | curl_sshd_config 11 | *pid 12 | stunnel.conf 13 | runtests.html 14 | runtests.pdf 15 | testcurl.html 16 | testcurl.pdf 17 | configurehelp.pm 18 | -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- 1 | add_subdirectory(libtest) 2 | add_subdirectory(server) 3 | -------------------------------------------------------------------------------- /tests/certs/EdelCurlRoot-ca.cnf: -------------------------------------------------------------------------------- 1 | [ ca ] 2 | default_ca = EdelCurlRoot 3 | 4 | [ EdelCurlRoot ] 5 | database = EdelCurlRoot-ca.db 6 | certificate = EdelCurlRoot-ca.crt 7 | private_key = EdelCurlRoot-ca.key 8 | crlnumber = EdelCurlRoot-ca.cnt 9 | default_md = sha1 10 | default_days = 365 11 | default_crl_days = 30 12 | -------------------------------------------------------------------------------- /tests/certs/EdelCurlRoot-ca.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/EdelCurlRoot-ca.der -------------------------------------------------------------------------------- /tests/certs/EdelCurlRoot-ca.prm: -------------------------------------------------------------------------------- 1 | extensions = x509v3 2 | [ req ] 3 | default_bits = 2048 4 | distinguished_name = req_DN 5 | default_md = sha256 6 | string_mask = utf8only 7 | [ req_DN ] 8 | countryName = "Country Name" 9 | countryName_value = NN 10 | organizationName = "Organization Name" 11 | organizationName_value = Edel Curl Arctic Illudium Research Cloud 12 | commonName = "Common Name" 13 | commonName_value = Nothern Nowhere Trust Anchor 14 | [ x509v3 ] 15 | basicConstraints = critical,CA:true 16 | keyUsage = critical,keyCertSign,cRLSign 17 | subjectKeyIdentifier = hash 18 | 19 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.crl: -------------------------------------------------------------------------------- 1 | -----BEGIN X509 CRL----- 2 | MIIB2zCBxAIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE 3 | CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG 4 | A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzEx 5 | WhcNMTAwNjI2MjEzNzExWjAZMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWqAOMAww 6 | CgYDVR0UBAMCAQEwDQYJKoZIhvcNAQEFBQADggEBAFuPZJ/cNNCeAzkSxVvPPPRX 7 | Wsv9T6Dt61C5Fmq9eSNN2kRf7/dq5A5nqTIlHbXXiLdj3UqNhUHXe2oA1UpbdHz9 8 | 0JlfwWm1Y/gMr1fh1n0oFebEtCuOgDRpd07Uiz8AqOUBykDNDUlMvVwR9raHL8hj 9 | NRwzugsfIxl0CvLLqrBpUWMxW3qemk4cWW39yrDdZgKo6eOZAOR3FQYlLIrw6Jcr 10 | Kmm0PjdcJIfRgJvNysgyx1dIIKe7QXvFTR/QzdHWIWTkiYIW7wUKSzSICvDCr094 11 | eo3nr3n9BtOqT61Z1m6FGCP6Mm0wFl6xLTCNd6ygfFo7pcAdWlUsdBgKzics0Kc= 12 | -----END X509 CRL----- 13 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.csr: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE REQUEST----- 2 | MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy 3 | Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0 4 | MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCwJ3kmLLnk0YEKCdJ2/prhBWgB 5 | s3J3lzjkYBxxnZn3JnshtW2qnxR2B2ykKi197vZviljEk97+oSUP/1dJwNmU2Qd5 6 | v4xt+vEYgmegP9cxA4LsuTlpB+zskxdbGnKRk7JrmGZj/mEp562GDgS6v4tVV2Gl 7 | SvbK58bRuGVCq2dkFwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAlIivGkhU8iph 8 | eZQAaiwakIwPx1TPA3+Dl4tbStTr3Ludd8rjZMGPRXKU+wjvfhCmDlyk90yOun2C 9 | lPIT8W/ibXNgRF1vz+eFofjM0hZtNPOX4G18wwD5y0OTr7obyqJPKAZsJZh6L3YE 10 | aARr27RCoFv92hFwVr181wAU+bVCekA= 11 | -----END CERTIFICATE REQUEST----- 12 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/Server-localhost-sv.der -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.dhp: -------------------------------------------------------------------------------- 1 | -----BEGIN DH PARAMETERS----- 2 | MIGHAoGBAP5mA7oYimErFUulbvNC8V0HwyB62NCj6TZb6YXJwElCksQc8RyHnkrY 3 | 9Wx2+lduFqHjUWalgVF7Gma7CfR/pt+fiU6Jn2vWR2v7KT6hYeRKsJrONJlth+NK 4 | V7/d4zyvleJ/VSp0TuuSxmMMQ6hG3i5YhSGXyCh4h0pl4Wu/hdVTAgEC 5 | -----END DH PARAMETERS----- 6 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/Server-localhost-sv.p12 -------------------------------------------------------------------------------- /tests/certs/Server-localhost-sv.prm: -------------------------------------------------------------------------------- 1 | extensions = x509v3 2 | [ x509v3 ] 3 | subjectAltName = DNS:localhost 4 | keyUsage = keyEncipherment 5 | extendedKeyUsage = serverAuth 6 | subjectKeyIdentifier = hash 7 | authorityKeyIdentifier = keyid 8 | basicConstraints = critical,CA:false 9 | [ req ] 10 | default_bits = 1024 11 | distinguished_name = req_DN 12 | default_md = sha256 13 | string_mask = utf8only 14 | [ req_DN ] 15 | countryName = "Country Name is Northern Nowhere" 16 | countryName_value = NN 17 | organizationName = "Organization Name" 18 | organizationName_value = Edel Curl Arctic Illudium Research Cloud 19 | commonName = "Common Name" 20 | commonName_value = localhost 21 | 22 | [something] 23 | # The key 24 | # the certficate 25 | # some dhparam 26 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost.nn-sv.crl: -------------------------------------------------------------------------------- 1 | -----BEGIN X509 CRL----- 2 | MIIB9DCB3QIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE 3 | CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG 4 | A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzI0 5 | WhcNMTAwNjI2MjEzNzI0WjAyMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWjAXAgYL 6 | mJT7eF8XDTEwMDUyNzIxMzcyNFqgDjAMMAoGA1UdFAQDAgEBMA0GCSqGSIb3DQEB 7 | BQUAA4IBAQCo8mBpkZqiYWJMkJsZ1qqqOqVRne4iWhPOJSDGDgxoCTA4RgN1sQUv 8 | /MxO2LgSEyo9GopCpgWlhig+wzQmYCUf7HDw8sLzClUG4XUKRSW2Uq6q5BF5fwIu 9 | vHksi/RIPdcMx/+3dGIFeoccZZd5o7xgryGySAN6wHy6lY7LeeW7acpaDU43D7yi 10 | wQipBczrlH/jJDy6ja5FFBrAvvyRc4zC2X1/Rh3f0vNqnX9PLC524HxRmasCKYM8 11 | vgcPbvJ7Z/HRGOYRu9vTp5X0+lPPj24WE8vX3AZdjyI6qpinHzrsYen/qs6c0v3k 12 | FKYuzuVlUAy+5aZDhx+GHr+KW+y2T/ol 13 | -----END X509 CRL----- 14 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost.nn-sv.csr: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE REQUEST----- 2 | MIIBlzCCAQACAQAwVzELMAkGA1UEBhMCTk4xMTAvBgNVBAoMKEVkZWwgQ3VybCBB 3 | cmN0aWMgSWxsdWRpdW0gUmVzZWFyY2ggQ2xvdWQxFTATBgNVBAMMDGxvY2FsaG9z 4 | dC5ubjCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEA09RO22NcPzo6XjgJlOZN 5 | cJ0Nr0nmgl0Ht/XNoN+vcfHPv9Wava98eF1VPxS9uywOc53WgprV5vYhXQiSonFf 6 | gF9czvDCNzd5D0091PKAbUc2RdHSi3ouEnFLR4b1jJmv5w7PtclNenX3snQMQeOr 7 | uyydb1QIE1o673wn9z8LC3ECAwEAAaAAMA0GCSqGSIb3DQEBCwUAA4GBAM5PenDC 8 | AtDhzdVKrX6DcJINWck5XFEnvWQksSYU7iDeiQVycQxR+LYKGZiy04u+9C+MN7eq 9 | JmHAIi+88r7/ZaGJLujqSUOJn8ocZ+vwhJOwh2XBhhLaCjIW/H05g0aNlk80Ye6m 10 | OA9DCIZUINF0lDQaJCpKXxwNVcz4Rifp5/9T 11 | -----END CERTIFICATE REQUEST----- 12 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost.nn-sv.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/Server-localhost.nn-sv.der -------------------------------------------------------------------------------- /tests/certs/Server-localhost.nn-sv.dhp: -------------------------------------------------------------------------------- 1 | -----BEGIN DH PARAMETERS----- 2 | MIGHAoGBAPrtEVPhZfEczB9JnWXbln79YnTh/V6ehXMWe414wyn/VT1ow25sLEev 3 | H2+eT84aDp5e+TfBSFjA6or96/lyQvsgAE+cE6f6uuw9ApVG2MK+BCn4snxHBb6G 4 | LFQf+9qHZ4BEkpBL60p1fkGu8BM1wXGXEaeYhgGumNA9fm5YJrl7AgEC 5 | -----END DH PARAMETERS----- 6 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost.nn-sv.prm: -------------------------------------------------------------------------------- 1 | extensions = x509v3 2 | [ x509v3 ] 3 | subjectAltName = DNS:localhost.nn 4 | keyUsage = keyEncipherment 5 | extendedKeyUsage = serverAuth 6 | subjectKeyIdentifier = hash 7 | authorityKeyIdentifier = keyid 8 | basicConstraints = critical,CA:false 9 | [ req ] 10 | default_bits = 1024 11 | distinguished_name = req_DN 12 | default_md = sha256 13 | string_mask = utf8only 14 | [ req_DN ] 15 | countryName = "Country Name is Northern Nowhere" 16 | countryName_value = NN 17 | organizationName = "Organization Name" 18 | organizationName_value = Edel Curl Arctic Illudium Research Cloud 19 | commonName = "Common Name" 20 | commonName_value = localhost.nn 21 | 22 | [something] 23 | # The key 24 | # the certficate 25 | # some dhparam 26 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost0h-sv.crl: -------------------------------------------------------------------------------- 1 | -----BEGIN X509 CRL----- 2 | MIICDTCB9gIBATANBgkqhkiG9w0BAQUFADBnMQswCQYDVQQGEwJOTjExMC8GA1UE 3 | CgwoRWRlbCBDdXJsIEFyY3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDElMCMG 4 | A1UEAwwcTm90aGVybiBOb3doZXJlIFRydXN0IEFuY2hvchcNMTAwNTI3MjEzNzU0 5 | WhcNMTAwNjI2MjEzNzU0WjBLMBcCBguYlPl8ahcNMTAwNTI3MjEzNzExWjAXAgYL 6 | mJT7eF8XDTEwMDUyNzIxMzcyNFowFwIGC5iVAAx+Fw0xMDA1MjcyMTM3NTRaoA4w 7 | DDAKBgNVHRQEAwIBATANBgkqhkiG9w0BAQUFAAOCAQEAWBL4VhArwJkUv91oyMIo 8 | xyyRmVl+1oY5IjEpLGd+mNIgqXuljQmbp8cS8A+jWinJPOWZqvsHa+mLCl4OuwhP 9 | JbAtIQ22OQRaVqWRuguG2T1sh3Dd7a1GcupIGKc/zgnY45D4pY4UNZv+KmY3bF0S 10 | 83zn6YoQtBTzF9y2Nq5R0UTdxl6+j5swpo1ttvQPz40yqIlmjmW/llkaD4UBaegl 11 | zSxmnR5xCjAR7nYm+HyWW9SLSWGptUOd32B9TPJPLDhJa9lfBb8H9l5k7kx9ECJG 12 | LyujleeXIucfqOgE2cB0zCjExqrGWRp8ZgEWfpdSkDEpXBCDo88TA3dIr2f3Zxwp 13 | QA== 14 | -----END X509 CRL----- 15 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost0h-sv.csr: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE REQUEST----- 2 | MIIBkzCB/QIBADBUMQswCQYDVQQGEwJOTjExMC8GA1UECgwoRWRlbCBDdXJsIEFy 3 | Y3RpYyBJbGx1ZGl1bSBSZXNlYXJjaCBDbG91ZDESMBAGA1UEAwwJbG9jYWxob3N0 4 | MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDMqZErIuiQK+VM3K5t2kzzMsyl 5 | aGdaO7mGo5WIPuhjw+0AYBkDK11bVoraIV5xXNHj3lEYwRcUsTOQAFya5XMLqIic 6 | 0AtUvOo6Od32ZYFLKZlMcdP3aX+A6OhtYUGDh+usLL0P6xv9ojeXbTFWuktR3bEB 7 | 64n4Jd5bo+WyP0x3UwIDAQABoAAwDQYJKoZIhvcNAQELBQADgYEAPor+2apn3kPJ 8 | ZdjyyT/iXETRTrN87PuBaujcV+oVeVSWW+YgGUzDHi+RkEKTxWdz3leW2goE41X9 9 | 2D/n66ASQGs1x8wXwIMIX83MjkWtjqdfcrJVi1l6T7NjzZt6EyJdvreRntCUu8zc 10 | J5tK3rl/tIeudKUE2COc0Ngu9JUB1j8= 11 | -----END CERTIFICATE REQUEST----- 12 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost0h-sv.der: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/Server-localhost0h-sv.der -------------------------------------------------------------------------------- /tests/certs/Server-localhost0h-sv.dhp: -------------------------------------------------------------------------------- 1 | -----BEGIN DH PARAMETERS----- 2 | MIGHAoGBAL/3hRxvWX+Mdyu/aBPU1JeeA5sg4nXtA7B24eCql9Tq53Lks1/HJ5B+ 3 | xSapGAFd+22xhBsNkJihf74oiPEVr9nNoLjFV/DZe259+JYgs+pBTFN+Cp13ALUi 4 | CeZxX2mlxlstD1SBRTKgxA/j4ttR1Chn8knn+RVdFE9YFKCYPyLrAgEC 5 | -----END DH PARAMETERS----- 6 | -------------------------------------------------------------------------------- /tests/certs/Server-localhost0h-sv.p12: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/certs/Server-localhost0h-sv.p12 -------------------------------------------------------------------------------- /tests/certs/srp-verifier-conf: -------------------------------------------------------------------------------- 1 | 1:Ewl2hcjiutMd3Fu2lgFnUXWSc67TVyy2vwYCKoS9MLsrdJVT9RgWTCuEqWJrfB6uE3LsE9GkOlaZabS7M29sj5TnzUqOLJMjiwEzArfiLr9WbMRANlF68N5AVLcPWvNx6Zjl3m5Scp0BzJBz9TkgfhzKJZ.WtP3Mv/67I/0wmRZ:2 2 | 2:dUyyhxav9tgnyIg65wHxkzkb7VIPh4o0lkwfOKiPp4rVJrzLRYVBtb76gKlaO7ef5LYGEw3G.4E0jbMxcYBetDy2YdpiP/3GWJInoBbvYHIRO9uBuxgsFKTKWu7RnR7yTau/IrFTdQ4LY/q.AvoCzMxV0PKvD9Odso/LFIItn8PbTov3VMn/ZEH2SqhtpBUkWtmcIkEflhX/YY/fkBKfBbe27/zUaKUUZEUYZ2H2nlCL60.JIPeZJSzsu/xHDVcx:2 3 | 3:2iQzj1CagQc/5ctbuJYLWlhtAsPHc7xWVyCPAKFRLWKADpASkqe9djWPFWTNTdeJtL8nAhImCn3Sr/IAdQ1FrGw0WvQUstPx3FO9KNcXOwisOQ1VlL.gheAHYfbYyBaxXL.NcJx9TUwgWDT0hRzFzqSrdGGTN3FgSTA1v4QnHtEygNj3eZ.u0MThqWUaDiP87nqha7XnT66bkTCkQ8.7T8L4KZjIImrNrUftedTTBi.WCi.zlrBxDuOM0da0JbUkQlXqvp0yvJAPpC11nxmmZOAbQOywZGmu9nhZNuwTlxjfIro0FOdthaDTuZRL9VL7MRPUDo/DQEyW.d4H.UIlzp:2 4 | -------------------------------------------------------------------------------- /tests/certs/srp-verifier-db: -------------------------------------------------------------------------------- 1 | jsmith:34fPk7u.w3R/M1k2sQ9F.04GZqLKAsqDn44CHGu7ML0M8VWwu1p79OLxi6jRhSNdSM46Kx9GRVyJLXz7eok53..A6X5p3NdnMSYX8WwYrDmuseHDr.eua7gjd04S4EoY4ZuKix2.WGAsMTwk86AmTvcqyzqsH7GDhGOHEhjP5zs:lTjBBoK04K9vTKiL10rI/:1 2 | alice:3IIP1g1HDTN6VEUr8DUkMleocoC1cpuFZnmunDaGhMyIsw8LAwCc7ZapWaC66gZSyis4ezSuCqvhsJdwdc.0es2UrH6PBkBQflcQDuC.dEpjhWgAcH2Dw.2qU.E0ApQzLkcKOjXMQ2R6jMBL14kEUPjjHS3aa16yB.Afj3bNPdf:1JxU4GkweUEii6.b0grkzU:1 3 | -------------------------------------------------------------------------------- /tests/data/.gitattributes: -------------------------------------------------------------------------------- 1 | test* -crlf 2 | -------------------------------------------------------------------------------- /tests/data/DISABLED: -------------------------------------------------------------------------------- 1 | # This file can be used to specify test cases that should not run when all 2 | # test cases are run by runtests.pl. Just add the plain test case numbers, one 3 | # per line. 4 | # Lines starting with '#' letters are treated as comments. 5 | 811 6 | -------------------------------------------------------------------------------- /tests/data/test1000: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | LIST 7 | NOBODY 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | ftp 22 | 23 | 24 | FTP dir list PASV with -I 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/1000/ -I 28 | 29 | 30 | 31 | # 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | CWD 1000 39 | QUIT 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test1007: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP WRQ 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | tftp 15 | 16 | 17 | TFTP send with invalid permission on server 18 | 19 | 20 | -T log/test1007.txt tftp://%HOSTIP:%TFTPPORT//invalid-file --trace-ascii log/traceit 21 | 22 | 23 | This data will not be sent 24 | 25 | 26 | 27 | # 28 | # Verify pseudo protocol after the test has been "shot" 29 | 30 | 31 | 69 32 | 33 | 34 | opcode: 2 35 | filename: /invalid-file 36 | mode: octet 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1009: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | --local-port 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | a chunk of 15 | data 16 | returned 17 | to client 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | tftp 26 | 27 | 28 | TFTP retrieve with --local-port 29 | 30 | 31 | tftp://%HOSTIP:%TFTPPORT//1009 --local-port 44444-45444 32 | 33 | 34 | 35 | # 36 | # Verify pseudo protocol after the test has been "shot" 37 | 38 | 39 | opcode: 1 40 | filename: /1009 41 | mode: octet 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test1013: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | curl-config 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | Compare curl --version with curl-config --protocols 21 | 22 | 23 | --version 24 | 25 | 26 | %SRCDIR/libtest/test1013.pl ../curl-config log/stdout1013 protocols 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 0 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test1014: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | curl-config 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | Compare curl --version with curl-config --features 21 | 22 | 23 | --version 24 | 25 | 26 | %SRCDIR/libtest/test1013.pl ../curl-config log/stdout1014 features 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 0 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test1016: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | file 21 | 22 | 23 | X-Y range on a file:// URL to stdout 24 | 25 | 26 | -r 1-4 file://localhost/%PWD/log/test1016.txt 27 | 28 | 29 | 1234567890 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 2345 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1017: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | none 19 | 20 | 21 | file 22 | 23 | 24 | 0-Y range on a file:// URL to stdout 25 | 26 | 27 | -r 0-3 file://localhost/%PWD/log/test1017.txt 28 | 29 | 30 | 1234567890 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | 1234 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test1018: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | file 21 | 22 | 23 | X-X range on a file:// URL to stdout 24 | 25 | 26 | -r 4-4 file://localhost/%PWD/log/test1018.txt 27 | 28 | 29 | 1234567890 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 5 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1019: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | none 19 | 20 | 21 | file 22 | 23 | 24 | X- range on a file:// URL to stdout 25 | 26 | 27 | -r 7- file://localhost/%PWD/log/test1019.txt 28 | 29 | 30 | 1234567890 31 | 1234567890 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 890 39 | 1234567890 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test102: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | data 13 | to 14 | see 15 | that FTP 16 | works 17 | so does it? 18 | 19 | 20 | REPLY EPSV 500 no such command 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP RETR PASV 31 | 32 | 33 | ftp://%HOSTIP:%FTPPORT/102 34 | 35 | 36 | 37 | 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | USER anonymous 42 | PASS ftp@example.com 43 | PWD 44 | EPSV 45 | PASV 46 | TYPE I 47 | SIZE 102 48 | RETR 102 49 | QUIT 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test1020: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | none 19 | 20 | 21 | file 22 | 23 | 24 | -Y range on a file:// URL to stdout 25 | 26 | 27 | -r -9 file://localhost/%PWD/log/test1020.txt 28 | 29 | 30 | 1234567890 31 | 1234567890 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 34567890 39 | 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test1022: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | curl-config 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | Compare curl --version with curl-config --version 21 | 22 | 23 | --version 24 | 25 | 26 | %SRCDIR/libtest/test1022.pl ../curl-config log/stdout1022 version 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 0 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test1023: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | curl-config 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | Compare curl --version with curl-config --vernum 21 | 22 | 23 | --version 24 | 25 | 26 | %SRCDIR/libtest/test1022.pl ../curl-config log/stdout1023 vernum 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 0 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test1026: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | --manual 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | curl --manual 21 | 22 | 23 | --manual 24 | 25 | # Search for these two sentinel lines in the manual output; if they are found, 26 | # then chances are good the entire manual is there. 27 | 28 | perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(a\s*tool\s*to\s*transfer\s*data)|(mailing\s*lists\s*to\s*discuss\s*curl)/, ); exit ($lines != 2); # Let this file pass an XML syntax check: ' log/stdout1026 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 0 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1027: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | --help 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | none 18 | 19 | 20 | curl --help 21 | 22 | 23 | --help 24 | 25 | # Search for these two sentinel lines in the help output; if they are found, 26 | # then chances are good the entire help is there. 27 | 28 | perl -e 'open(IN,$ARGV[0]); my $lines=grep(/(Usage: curl )|(--version\s*Show version)/, ); exit ($lines != 2); # Let this file pass an XML syntax check: ' log/stdout1027 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 0 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1034: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/data/test1034 -------------------------------------------------------------------------------- /tests/data/test1035: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/data/test1035 -------------------------------------------------------------------------------- /tests/data/test1038: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | APPE 7 | Resume 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 17 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP PASV upload resume from end of file 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/1038 -T log/upload1038 -C - 27 | 28 | 29 | this is the *****cr@p******** that we're gonna upload 30 | 31 | worx? 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | USER anonymous 39 | PASS ftp@example.com 40 | PWD 41 | EPSV 42 | TYPE I 43 | SIZE 1038 44 | APPE 1038 45 | QUIT 46 | 47 | 48 | cr@p******** that we're gonna upload 49 | 50 | worx? 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /tests/data/test104: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | NOBODY 6 | 7 | 8 | # Server-side 9 | 10 | 11 | 51 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP --head to get file size only 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/a/path/104 --head 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | USER anonymous 32 | PASS ftp@example.com 33 | PWD 34 | CWD a 35 | CWD path 36 | MDTM 104 37 | TYPE I 38 | SIZE 104 39 | REST 0 40 | QUIT 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test1045: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | --interface 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | HTTP/1.1 200 OK 15 | Date: Mon, 28 Jul 2008 14:49:00 GMT 16 | Server: test-server/fake 17 | Content-Length: 6 18 | Connection: close 19 | Content-Type: text/plain 20 | 21 | -foo- 22 | 23 | 24 | 25 | # 26 | # Client-side 27 | 28 | 29 | http 30 | 31 | 32 | HTTP GET with numeric localhost --interface 33 | 34 | 35 | http://%HOSTIP:%HTTPPORT/1045 --interface %CLIENTIP 36 | 37 | 38 | 39 | # 40 | # Verify data after the test has been "shot" 41 | 42 | 43 | ^User-Agent:.* 44 | 45 | 46 | GET /1045 HTTP/1.1 47 | Host: %HOSTIP:%HTTPPORT 48 | Accept: */* 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test1049: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | --interface 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | a chunk of 15 | data 16 | returned 17 | to client 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | tftp 26 | 27 | 28 | TFTP retrieve with localhost --interface 29 | 30 | 31 | tftp://%HOSTIP:%TFTPPORT//1049 --trace-ascii log/traceit --interface %CLIENTIP 32 | 33 | 34 | 35 | # 36 | # Verify pseudo protocol after the test has been "shot" 37 | 38 | 39 | opcode: 1 40 | filename: /1049 41 | mode: octet 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test105: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | TYPE A 7 | RETR 8 | 9 | 10 | # Server-side 11 | 12 | 13 | data 14 | to 15 | see 16 | that FTP 17 | works 18 | so does it? 19 | 20 | 21 | REPLY EPSV 500 no such command 22 | REPLY SIZE 500 no such command 23 | 24 | 25 | 26 | # Client-side 27 | 28 | 29 | ftp 30 | 31 | 32 | FTP user+password in URL and ASCII transfer 33 | 34 | 35 | ftp://userdude:passfellow@%HOSTIP:%FTPPORT/105 --use-ascii 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | USER userdude 43 | PASS passfellow 44 | PWD 45 | EPSV 46 | PASV 47 | TYPE A 48 | SIZE 105 49 | RETR 105 50 | QUIT 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /tests/data/test1057: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | Range 8 | 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 456789abcdef 15 | 16 | 17 | 456789abcdef 18 | 19 | 20 | 64 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP retrieve a byte-range relative to end of file 31 | 32 | 33 | -r -12 ftp://%HOSTIP:%FTPPORT/1057 34 | 35 | 36 | 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | USER anonymous 41 | PASS ftp@example.com 42 | PWD 43 | EPSV 44 | TYPE I 45 | SIZE 1057 46 | REST 52 47 | RETR 1057 48 | ABOR 49 | QUIT 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test106: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | TYPE A 7 | RETR 8 | type= 9 | 10 | 11 | # Server-side 12 | 13 | 14 | data 15 | to 16 | see 17 | that FTP 18 | works 19 | so does it? 20 | 21 | 22 | 23 | # Client-side 24 | 25 | 26 | ftp 27 | 28 | 29 | FTP GET with type=A style ASCII URL using %20 codes 30 | 31 | 32 | "ftp://%HOSTIP:%FTPPORT//path%20with%20%20spaces//and%20things2/106;type=A" 33 | 34 | 35 | 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | USER anonymous 40 | PASS ftp@example.com 41 | PWD 42 | CWD /path with spaces 43 | CWD and things2 44 | EPSV 45 | TYPE A 46 | SIZE 106 47 | RETR 106 48 | QUIT 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /tests/data/test1063: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | Range 6 | FAILURE 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | none 20 | 21 | 22 | file 23 | large_file 24 | 25 | 26 | Invalid large X- range on a file:// 27 | 28 | # This range value is 2**32+7, which will be truncated to the valid value 7 29 | # if the large file support is not working correctly 30 | 31 | -r 4294967303- file://localhost/%PWD/log/test1063.txt 32 | 33 | 34 | 1234567890 35 | 1234567890 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | 36 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test1069: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP PUT 6 | HTTP/1.0 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | http 18 | 19 | 20 | HTTP 1.0 PUT from stdin with no content length 21 | 22 | 23 | http://%HOSTIP:%HTTPPORT/bzz/1069 -T - -0 24 | 25 | 26 | this data can't be sent 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 25 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/data/test107: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | STOR 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | ftp 14 | 15 | 16 | FTP PASV upload file 17 | 18 | 19 | data 20 | to 21 | see 22 | that FTP 23 | works 24 | so does it? 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/107 -T log/test107.txt 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | data 35 | to 36 | see 37 | that FTP 38 | works 39 | so does it? 40 | 41 | 42 | USER anonymous 43 | PASS ftp@example.com 44 | PWD 45 | EPSV 46 | TYPE I 47 | STOR 107 48 | QUIT 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /tests/data/test1084: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | --interface 7 | FAILURE 8 | non-existing host 9 | 10 | 11 | 12 | # 13 | # Server-side 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | http 22 | 23 | 24 | none 25 | 26 | 27 | HTTP GET with invalid --interface 28 | 29 | 30 | http://%HOSTIP:%HTTPPORT/1084 --interface non-existing-host.haxx.se. 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 45 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test109: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | APPE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP PASV upload append 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/109 -T log/upload109 --append 25 | 26 | 27 | Moooooooooooo 28 | upload this 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | EPSV 39 | TYPE I 40 | APPE 109 41 | QUIT 42 | 43 | 44 | Moooooooooooo 45 | upload this 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test1091: -------------------------------------------------------------------------------- 1 | 2 | # based on test 143 3 | 4 | 5 | FTP 6 | RETR 7 | type= 8 | 9 | 10 | 11 | # Server-side 12 | 13 | 14 | bla bla bla 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | ftp 22 | 23 | 24 | FTP URL with type=i 25 | 26 | 27 | "ftp://%HOSTIP:%FTPPORT/%2ftmp/moo/1091;type=i" --use-ascii 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | CWD /tmp 38 | CWD moo 39 | EPSV 40 | TYPE I 41 | SIZE 1091 42 | RETR 1091 43 | QUIT 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test1093: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | mode= 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | a chunk of 15 | data 16 | returned 17 | to client 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | tftp 26 | 27 | 28 | TFTP retrieve with mode=i 29 | 30 | 31 | "tftp://%HOSTIP:%TFTPPORT//1093;mode=i" --use-ascii --trace-ascii log/traceit 32 | 33 | 34 | 35 | # 36 | # Verify pseudo protocol after the test has been "shot" 37 | 38 | 39 | opcode: 1 40 | filename: /1093 41 | mode: octet 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test1094: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | mode= 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | a chunk of 15 | data 16 | returned 17 | to client 18 | 19 | 20 | a chunk of 21 | data 22 | returned 23 | to client 24 | 25 | 26 | 27 | # 28 | # Client-side 29 | 30 | 31 | tftp 32 | 33 | 34 | TFTP retrieve with mode=netascii 35 | 36 | 37 | "tftp://%HOSTIP:%TFTPPORT//1094;mode=netascii" --trace-ascii log/traceit 38 | 39 | 40 | 41 | # 42 | # Verify pseudo protocol after the test has been "shot" 43 | 44 | 45 | opcode: 1 46 | filename: /1094 47 | mode: netascii 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test1096: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | FAILURE 8 | 9 | 10 | # Server-side 11 | 12 | 13 | REPLY RETR 550 no such file! 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | Two FTP downloads, with failed RETR but re-used control connection 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/dir/1096 ftp://%HOSTIP:%FTPPORT/dir/1096 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 78 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | CWD dir 40 | EPSV 41 | TYPE I 42 | SIZE 1096 43 | RETR 1096 44 | EPSV 45 | SIZE 1096 46 | RETR 1096 47 | QUIT 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test1099: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | FAILURE 7 | 8 | 9 | 10 | 11 | 12 | data for 1099 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | tftp 21 | 22 | 23 | TFTP get first a non-existing file then an existing 24 | 25 | 26 | tftp://%HOSTIP:%TFTPPORT/an/invalid-file tftp://%HOSTIP:%TFTPPORT//1099 --trace-ascii log/traceit 27 | 28 | 29 | 30 | # 31 | # Verify pseudo protocol after the test has been "shot" 32 | 33 | 34 | opcode: 1 35 | filename: an/invalid-file 36 | mode: octet 37 | opcode: 1 38 | filename: /1099 39 | mode: octet 40 | 41 | 42 | data for 1099 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test110: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | Resume 8 | 9 | 10 | # Server-side 11 | 12 | 13 | expected to be a file without the first part 14 | but we emulate that 15 | 16 | 17 | 85 18 | 19 | 20 | REPLY EPSV 500 no such command 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP download resume with set limit 31 | 32 | 33 | ftp://%HOSTIP:%FTPPORT/110 -C 20 34 | 35 | 36 | 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | USER anonymous 41 | PASS ftp@example.com 42 | PWD 43 | EPSV 44 | PASV 45 | TYPE I 46 | SIZE 110 47 | REST 20 48 | RETR 110 49 | QUIT 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test1102: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | SYST 6 | SITE 7 | OS400 8 | 9 | 10 | # Server-side 11 | 12 | 13 | blabla 14 | 15 | 16 | REPLY PWD 257 "QGPL" is the current library 17 | REPLY SYST 215 OS/400 runs this server 18 | REPLY SITE 250 Name format set to 1 19 | 20 | 21 | 22 | # Client-side 23 | 24 | 25 | ftp 26 | 27 | 28 | FTP OS/400 server name format check 29 | 30 | 31 | ftp://%HOSTIP:%FTPPORT/1102 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | USER anonymous 39 | PASS ftp@example.com 40 | PWD 41 | SYST 42 | SITE NAMEFMT 1 43 | PWD 44 | EPSV 45 | TYPE I 46 | SIZE 1102 47 | RETR 1102 48 | QUIT 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /tests/data/test1103: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | SYST 6 | SITE 7 | OS400 8 | 9 | 10 | # Server-side 11 | 12 | 13 | blabla 14 | 15 | 16 | REPLY PWD 257 "C:/somedir" is the current directory 17 | REPLY SYST 215 unknown-OS runs this server 18 | 19 | 20 | 21 | # Client-side 22 | 23 | 24 | ftp 25 | 26 | 27 | FTP non-OS/400 server 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/1103 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | USER anonymous 38 | PASS ftp@example.com 39 | PWD 40 | SYST 41 | EPSV 42 | TYPE I 43 | SIZE 1103 44 | RETR 1103 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test1107: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | PRET 8 | 9 | 10 | # Server-side 11 | 12 | 13 | data 14 | to 15 | see 16 | that FTP 17 | works 18 | so does it? 19 | 20 | 21 | REPLY PRET 200 fine 22 | 23 | 24 | 25 | # Client-side 26 | 27 | 28 | ftp 29 | 30 | 31 | FTP RETR PASV with PRET 32 | 33 | 34 | ftp://%HOSTIP:%FTPPORT/1107 --ftp-pret 35 | 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | USER anonymous 43 | PASS ftp@example.com 44 | PWD 45 | PRET RETR 1107 46 | EPSV 47 | TYPE I 48 | SIZE 1107 49 | RETR 1107 50 | QUIT 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /tests/data/test1108: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | PRET 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 14 | REPLY PRET 550 unkown command 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | ftp 22 | 23 | 24 | FTP RETR PASV with PRET not supported 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/1108 --ftp-pret 28 | 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | PRET RETR 1108 39 | 40 | # we expect that the server doesn't understand PRET 41 | 42 | 84 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test1109: -------------------------------------------------------------------------------- 1 | 2 | # Test that the fragment is not send as part of the path. 3 | 4 | 5 | HTTP 6 | CURLOPT_URL 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK 14 | Content-Length: 6 15 | 16 | hello 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | http 24 | 25 | 26 | HTTP GET with URL that contains fragment after the path 27 | 28 | 29 | http://%HOSTIP:%HTTPPORT/1109#test 30 | 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | ^User-Agent:.* 38 | 39 | 40 | GET /1109 HTTP/1.1 41 | Host: %HOSTIP:%HTTPPORT 42 | Accept: */* 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test111: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | Resume 7 | FAILURE 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 85 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP download resume beyond file size 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/111 -C 2000 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 36 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | EPSV 40 | TYPE I 41 | SIZE 111 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test1110: -------------------------------------------------------------------------------- 1 | 2 | # Test that the fragment is not send as part of the path 3 | # when it contains a query. 4 | 5 | 6 | HTTP 7 | CURLOPT_URL 8 | 9 | 10 | 11 | # Server-side 12 | 13 | 14 | HTTP/1.1 200 OK 15 | Content-Length: 6 16 | 17 | hello 18 | 19 | 20 | 21 | # Client-side 22 | 23 | 24 | http 25 | 26 | 27 | HTTP GET with URL that contains a fragment after the query part 28 | 29 | 30 | http://%HOSTIP:%HTTPPORT/1110?q=foobar#fragment 31 | 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | ^User-Agent:.* 39 | 40 | 41 | GET /1110?q=foobar HTTP/1.1 42 | Host: %HOSTIP:%HTTPPORT 43 | Accept: */* 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test1119: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | symbols-in-versions 5 | 6 | 7 | 8 | # 9 | # Client-side 10 | 11 | 12 | none 13 | 14 | 15 | 16 | Verify that symbols-in-versions and headers are in sync 17 | 18 | 19 | 20 | %SRCDIR/symbol-scan.pl %SRCDIR/.. ../include/curl 21 | 22 | 23 | 24 | 25 | -------------------------------------------------------------------------------- /tests/data/test112: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | APPE 7 | Resume 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | ftp 18 | 19 | 20 | FTP PASV upload resume 21 | 22 | 23 | ftp://%HOSTIP:%FTPPORT/112 -T log/upload112 -C 40 24 | 25 | 26 | this is the *****crap******** that we're gonna upload 27 | 28 | worx? 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | EPSV 39 | TYPE I 40 | APPE 112 41 | QUIT 42 | 43 | 44 | gonna upload 45 | 46 | worx? 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /tests/data/test1120: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PORT 6 | RETR 7 | 421 8 | 9 | 10 | # Server-side 11 | 12 | 13 | REPLY CWD 421 Timeout! 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP with 421 timeout response 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/a/path/1120 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | # Strip all valid kinds of PORT and EPRT that curl can send 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | CWD a 38 | 39 | # CURLE_OPERATION_TIMEDOUT is 28 40 | 41 | 28 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test1121: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | 6 | 7 | # 8 | # Server-side 9 | 10 | 11 | HTTP/1.0 200 OK 12 | Server: test-server/fake 13 | Content-Type: text/html 14 | Content-Length: 6 15 | 16 | blaha 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | http 25 | 26 | 27 | HTTP multiple provided Host: headers 28 | 29 | 30 | -H "Host: host1" -H "Host: host2" -H "Host: host3" http://%HOSTIP:%HTTPPORT/1121 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | ^User-Agent:.* 39 | 40 | 41 | GET /1121 HTTP/1.1 42 | Accept: */* 43 | Host: host1 44 | Host: host2 45 | Host: host3 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /tests/data/test113: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | # Server-side 9 | 10 | 11 | REPLY USER 314 bluah you fewl! 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP download, failed login: USER not valid 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/113 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 67 32 | 33 | 34 | USER anonymous 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test114: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | # Server-side 9 | 10 | 11 | REPLY PASS 314 bluah you f00l! 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP download, failed login: PASS not valid 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/114 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 67 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /tests/data/test115: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | FAILURE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | REPLY PASV 314 bluah you f00l! 13 | REPLY EPSV 314 bluah you f00l! 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP download, failed PASV 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/115 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 13 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | EPSV 40 | PASV 41 | QUIT 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test117: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | # Server-side 9 | 10 | 11 | REPLY EPSV 314 bluah you f00l! 12 | REPLY TYPE 314 bluah you f00l! 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | ftp 20 | 21 | 22 | FTP download, failed TYPE 23 | 24 | 25 | ftp://%HOSTIP:%FTPPORT/117 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | 17 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | EPSV 39 | PASV 40 | TYPE I 41 | QUIT 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test118: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | FAILURE 8 | 9 | 10 | # Server-side 11 | 12 | 13 | REPLY RETR 314 bluah you f00l! 14 | REPLY EPSV 314 bluah you f00l! 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | ftp 22 | 23 | 24 | FTP download, failed RETR 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/118 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 19 35 | 36 | 37 | USER anonymous 38 | PASS ftp@example.com 39 | PWD 40 | EPSV 41 | PASV 42 | TYPE I 43 | SIZE 118 44 | RETR 118 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test120: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | post-quote 8 | 9 | 10 | # Server-side 11 | 12 | 13 | data 14 | to 15 | see 16 | that FTP 17 | works 18 | so does it? 19 | 20 | 21 | REPLY EPSV 314 bluah you f00l! 22 | 23 | 24 | 25 | # Client-side 26 | 27 | 28 | ftp 29 | 30 | 31 | ftp download with post-quote delete operation 32 | 33 | 34 | ftp://%HOSTIP:%FTPPORT/120 -Q "-DELE file" 35 | 36 | 37 | 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | USER anonymous 42 | PASS ftp@example.com 43 | PWD 44 | EPSV 45 | PASV 46 | TYPE I 47 | SIZE 120 48 | RETR 120 49 | DELE file 50 | QUIT 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /tests/data/test1200: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | GOPHER 5 | INDEX 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | iMenu results error.host 1 14 | 0Selector /bar bar.foo.invalid 70 15 | . 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | gopher 23 | 24 | 25 | Gopher index 26 | 27 | 28 | gopher://%HOSTIP:%GOPHERPORT/1/1200 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | /1200 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1201: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | GOPHER 5 | SELECTOR 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | iMenu results error.host 1 14 | 0Selector /selector/SELECTOR /bar bar.foo.invalid 70 15 | . 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | gopher 23 | 24 | 25 | Gopher selector 26 | 27 | 28 | gopher://%HOSTIP:%GOPHERPORT/1/selector/SELECTOR/1201 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | /selector/SELECTOR/1201 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test1202: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | GOPHER 5 | QUERY 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | iSearch results error.host 1 14 | 0Query query succeeded /foo foo.bar.invalid 70 15 | 0Selector /the/search/engine /bar bar.foo.invalid 70 16 | . 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | gopher 24 | 25 | 26 | Gopher query 27 | 28 | 29 | "gopher://%HOSTIP:%GOPHERPORT/7/the/search/engine?query%20succeeded/1202" 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | /the/search/engine query succeeded/1202 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test1203: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | GOPHER-ipv6 5 | IPv6 6 | INDEX 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | iMenu results error.host 1 15 | 0Selector /bar bar.foo.invalid 70 16 | . 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | ipv6 24 | 25 | 26 | gopher-ipv6 27 | 28 | 29 | Gopher IPv6 index 30 | 31 | 32 | -g gopher://%HOST6IP:%GOPHER6PORT/1/moo/1203 33 | 34 | 35 | 36 | # 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | /moo/1203 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test121: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | post-quote 8 | pre-quote 9 | 10 | 11 | # Server-side 12 | 13 | 14 | data 15 | to 16 | see 17 | that FTP 18 | works 19 | so does it? 20 | 21 | 22 | 23 | # Client-side 24 | 25 | 26 | ftp 27 | 28 | 29 | ftp download with post- and pre-transfer delete operations 30 | 31 | 32 | ftp://%HOSTIP:%FTPPORT/121 -Q "-DELE after_transfer" -Q "DELE before_transfer" 33 | 34 | 35 | 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | USER anonymous 40 | PASS ftp@example.com 41 | PWD 42 | DELE before_transfer 43 | EPSV 44 | TYPE I 45 | SIZE 121 46 | RETR 121 47 | DELE after_transfer 48 | QUIT 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /tests/data/test122: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | Resume 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 5 13 | 14 | 15 | REPLY EPSV 500 no such command 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP download resume with whole file already downloaded 26 | 27 | 28 | ftp://%HOSTIP:%FTPPORT/122 -C 5 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | EPSV 39 | PASV 40 | TYPE I 41 | SIZE 122 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test123: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | Resume 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | # Client-side 14 | 15 | 16 | ftp 17 | 18 | 19 | FTP upload resume with whole file already downloaded 20 | 21 | 22 | ftp://%HOSTIP:%FTPPORT/123 -T log/upload123 -C 51 23 | 24 | 25 | -------------------------------------------------- 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | USER anonymous 33 | PASS ftp@example.com 34 | PWD 35 | EPSV 36 | TYPE I 37 | QUIT 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test124: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | we can still send data even if pwd fails! 13 | 14 | 15 | REPLY PWD 314 bluah you f00l! 16 | REPLY EPSV 314 bluah you f00l! 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | ftp 24 | 25 | 26 | FTP download, failed PWD 27 | 28 | 29 | ftp://%HOSTIP:%FTPPORT/124 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | EPSV 40 | PASV 41 | TYPE I 42 | SIZE 124 43 | RETR 124 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test125: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | # Server-side 9 | 10 | 11 | REPLY CWD 314 bluah you f00l! 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP download, failed CWD 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/path/to/file/125 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 9 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | CWD path 38 | QUIT 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test126: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | RETRWEIRDO 8 | 9 | 10 | # Server-side 11 | 12 | 13 | this is file contents 14 | 15 | 16 | RETRWEIRDO 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | ftp 24 | 25 | 26 | FTP download with multiple replies at once in RETR 27 | 28 | 29 | ftp://%HOSTIP:%FTPPORT/blalbla/lululul/126 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | CWD blalbla 40 | CWD lululul 41 | EPSV 42 | TYPE I 43 | SIZE 126 44 | RETR 126 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test127: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | --disable-epsv 8 | 9 | 10 | # Server-side 11 | 12 | 13 | moooooooo 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP --disable-epsv 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/path/to/file/127 --disable-epsv 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | USER anonymous 34 | PASS ftp@example.com 35 | PWD 36 | CWD path 37 | CWD to 38 | CWD file 39 | PASV 40 | TYPE I 41 | SIZE 127 42 | RETR 127 43 | QUIT 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test129: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | TYPE A 7 | RETR 8 | type= 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 37 15 | 16 | 17 | data 18 | to 19 | see 20 | that FTP 21 | works 22 | so does it? 23 | 24 | 25 | 26 | # Client-side 27 | 28 | 29 | ftp 30 | 31 | 32 | FTP GET with type=A style ASCII URL and understated server SIZE 33 | 34 | 35 | "ftp://%HOSTIP:%FTPPORT/129;type=A" 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | USER anonymous 43 | PASS ftp@example.com 44 | PWD 45 | EPSV 46 | TYPE A 47 | SIZE 129 48 | RETR 129 49 | QUIT 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test13: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP custom request 6 | 7 | 8 | # Server-side 9 | 10 | 11 | HTTP/1.1 200 Read you 12 | Content-Length: 29 13 | Deleted: suppose we got a header like this! ;-) 14 | 15 | blabla custom request result 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | http 23 | 24 | 25 | HTTP custom request 'DELETE' 26 | 27 | 28 | http://%HOSTIP:%HTTPPORT/want/13 -X DELETE 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | ^User-Agent:.* 36 | 37 | 38 | DELETE /want/13 HTTP/1.1 39 | Host: %HOSTIP:%HTTPPORT 40 | Accept: */* 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test1300: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unittest 5 | llist 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | none 14 | 15 | 16 | unittest 17 | 18 | 19 | llist unit tests 20 | 21 | 22 | unit1300 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /tests/data/test1301: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unittest 5 | curl_strequal 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | none 14 | 15 | 16 | unittest 17 | 18 | 19 | curl_strequal unit tests 20 | 21 | 22 | unit1301 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /tests/data/test1302: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unittest 5 | base64 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | none 14 | 15 | 16 | unittest 17 | 18 | 19 | base64 encode/decode unit tests 20 | 21 | 22 | unit1302 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /tests/data/test1303: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unittest 5 | Curl_timeleft 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | none 14 | 15 | 16 | unittest 17 | 18 | 19 | Curl_timeleft unit tests 20 | 21 | 22 | unit1303 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /tests/data/test1304: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unittest 5 | netrc 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | none 14 | 15 | 16 | unittest 17 | 18 | 19 | netrc parsing unit tests 20 | 21 | 22 | unit1304 23 | 24 | 25 | machine example.com login admin password passwd 26 | machine curl.example.com login none password none 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /tests/data/test1305: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | unittest 6 | hash 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | none 15 | 16 | 17 | unittest 18 | 19 | 20 | internal hash create/destroy testing 21 | 22 | 23 | unit1305 24 | 25 | 26 | 1305 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /tests/data/test1306: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | unittest 6 | hash 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | none 15 | 16 | 17 | unittest 18 | 19 | 20 | internal hash create/add/destroy testing 21 | 22 | 23 | unit1305 24 | 25 | 26 | 1306 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /tests/data/test1307: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | unittest 6 | wildcardmatch 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | none 15 | 16 | 17 | unittest 18 | 19 | 20 | internal Curl_fnmatch() testing 21 | 22 | 23 | unit1307 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /tests/data/test135: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | Range 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 0123456789abcdef 14 | 0123456789abcdef 15 | 0123456789abcdef 16 | 0123456789abcdef 17 | 18 | 19 | 0123456789abc 20 | 21 | 22 | 64 23 | 24 | 25 | 26 | # Client-side 27 | 28 | 29 | ftp 30 | 31 | 32 | FTP retrieve a byte-range 33 | 34 | 35 | -r 4-16 ftp://%HOSTIP:%FTPPORT/135 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | USER anonymous 43 | PASS ftp@example.com 44 | PWD 45 | EPSV 46 | TYPE I 47 | SIZE 135 48 | REST 4 49 | RETR 135 50 | ABOR 51 | QUIT 52 | 53 | 54 | 55 | -------------------------------------------------------------------------------- /tests/data/test136: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 0123456789abcdef 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | ftp 20 | 21 | 22 | FTP with user and no password 23 | 24 | 25 | -u user: ftp://%HOSTIP:%FTPPORT/136 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | USER user 33 | PASS 34 | PWD 35 | EPSV 36 | TYPE I 37 | SIZE 136 38 | RETR 136 39 | QUIT 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test137: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | RETR 6 | --data-binary 7 | 8 | 9 | # Server-side 10 | 11 | 12 | this is file contents 13 | 14 | 15 | RETRNOSIZE 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP download without size in RETR string 26 | 27 | 28 | ftp://%HOSTIP:%FTPPORT/blalbla/lululul/137 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | CWD blalbla 39 | CWD lululul 40 | EPSV 41 | TYPE I 42 | SIZE 137 43 | RETR 137 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test138: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | RETR 6 | 7 | 8 | # Server-side 9 | 10 | 11 | this is file contents 12 | 13 | 14 | -1 15 | 16 | 17 | RETRNOSIZE 18 | 19 | 20 | 21 | # Client-side 22 | 23 | 24 | ftp 25 | 26 | 27 | FTP download without size in RETR string and no SIZE command 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/blalbla/lululul/138 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | USER anonymous 38 | PASS ftp@example.com 39 | PWD 40 | CWD blalbla 41 | CWD lululul 42 | EPSV 43 | TYPE I 44 | SIZE 138 45 | RETR 138 46 | QUIT 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /tests/data/test139: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | RETR 6 | -z 7 | 8 | 9 | # Server-side 10 | 11 | 12 | this is file contents 13 | 14 | 15 | 213 20030409102659 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP download a newer file with -z 26 | 27 | 28 | ftp://%HOSTIP:%FTPPORT/blalbla/139 -z "1 jan 1989" 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | CWD blalbla 39 | MDTM 139 40 | EPSV 41 | TYPE I 42 | SIZE 139 43 | RETR 139 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test14: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP HEAD 6 | 7 | 8 | # Server-side 9 | 10 | 11 | HTTP/1.1 200 OK 12 | Server: thebest/1.0 13 | Connection: close 14 | 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | http 22 | 23 | 24 | HTTP HEAD with Connection: close 25 | 26 | 27 | http://%HOSTIP:%HTTPPORT/want/14 -i --head 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | ^User-Agent:.* 35 | 36 | 37 | HEAD /want/14 HTTP/1.1 38 | User-Agent: curl/7.4.2-pre4 (sparc-sun-solaris2.7) libcurl 7.4.2-pre4 39 | Host: %HOSTIP:%HTTPPORT 40 | Accept: */* 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test140: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | -z 6 | --data-binary 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 213 20030409102659 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | ftp 22 | 23 | 24 | FTP download file with -z, expected to not transfer 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/blalbla/140 -z "1 jan 2004" 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | CWD blalbla 38 | MDTM 140 39 | QUIT 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test141: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | NOBODY 6 | 7 | 8 | # Server-side 9 | 10 | 11 | 12 | 13 | 42 14 | 15 | 16 | 213 20030409102659 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | ftp 24 | 25 | 26 | FTP download info with -I 27 | 28 | 29 | ftp://%HOSTIP:%FTPPORT/blalbla/141 -I 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | CWD blalbla 40 | MDTM 141 41 | TYPE I 42 | SIZE 141 43 | REST 0 44 | QUIT 45 | 46 | 47 | Last-Modified: Wed, 09 Apr 2003 10:26:59 GMT 48 | Content-Length: 42 49 | Accept-ranges: bytes 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test143: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | RETR 6 | type= 7 | 8 | 9 | # Server-side 10 | 11 | 12 | bla bla bla 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | ftp 20 | 21 | 22 | FTP URL with type=a 23 | 24 | 25 | "ftp://%HOSTIP:%FTPPORT/%2ftmp/moo/143;type=a" 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | USER anonymous 33 | PASS ftp@example.com 34 | PWD 35 | CWD /tmp 36 | CWD moo 37 | EPSV 38 | TYPE A 39 | SIZE 143 40 | RETR 143 41 | QUIT 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test157: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | HTTP/1.1 200 No Authorization Required swsclose 6 | Server: Apache/1.3.27 (Darwin) PHP/4.1.2 7 | Content-Type: text/html; charset=iso-8859-1 8 | Connection: close 9 | 10 | GET received and served just fine. Thank you very much 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | http 18 | 19 | 20 | HTTP GET with --anyauth (when the server requires none) 21 | 22 | 23 | http://%HOSTIP:%HTTPPORT/157 -u testuser:testpass --anyauth 24 | 25 | 26 | 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | ^User-Agent:.* 31 | 32 | 33 | GET /157 HTTP/1.1 34 | Host: %HOSTIP:%HTTPPORT 35 | Accept: */* 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test16: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/data/test16 -------------------------------------------------------------------------------- /tests/data/test161: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 1oooooooooooooooooooooooooooooooooooooooooo2 6 | 7 | 8 | 10928 9 | 10 | 11 | 12 | # Client-side 13 | 14 | 15 | ftp 16 | 17 | 18 | FTP RETR PASV 19 | 20 | 21 | ftp://%HOSTIP:%FTPPORT/161 22 | 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | USER anonymous 30 | PASS ftp@example.com 31 | PWD 32 | EPSV 33 | TYPE I 34 | SIZE 161 35 | RETR 161 36 | 37 | 38 | 18 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test165: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/jahrome/curl-android/f83c36934faf25c43f577f96664a4380468bf01f/tests/data/test165 -------------------------------------------------------------------------------- /tests/data/test178: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | HTTP/1.1 200 OK swsclose 7 | Date: Thu, 09 Nov 2010 14:49:00 GMT 8 | Content-Length: -6 9 | Content-Type: text/html 10 | Funny-head: yesyes 11 | 12 | moooooooooooo 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | http 21 | 22 | 23 | simple HTTP GET with negative Content-Length 24 | 25 | 26 | http://%HOSTIP:%HTTPPORT/178 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | ^User-Agent:.* 35 | 36 | 37 | GET /178 HTTP/1.1 38 | Host: %HOSTIP:%HTTPPORT 39 | Accept: */* 40 | 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test182: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | 7 | 0 8 | 9 | 10 | 11 | # Client-side 12 | 13 | 14 | ftp 15 | 16 | 17 | FTP download an empty file 18 | 19 | 20 | ftp://%HOSTIP:%FTPPORT/182 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | USER anonymous 28 | PASS ftp@example.com 29 | PWD 30 | EPSV 31 | TYPE I 32 | SIZE 182 33 | RETR 182 34 | QUIT 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test19: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | connect to non-listen 6 | FAILURE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | none 19 | 20 | 21 | http 22 | 23 | 24 | attempt connect to non-listening socket 25 | 26 | 27 | %HOSTIP:60000 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 7 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test190: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | DELAY CWD 60 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | ftp 13 | 14 | 15 | ftp 16 | 17 | 18 | FTP download with strict timeout and slow CWD 19 | 20 | 21 | ftp://%HOSTIP:%FTPPORT/path/to/file/190 -m %FTPTIME2 22 | 23 | 24 | 25 | # Verify data after the test has been "shot" 26 | 27 | # 28 is CURLE_OPERATION_TIMEDOUT 28 | 29 | 28 30 | 31 | 32 | USER anonymous 33 | PASS ftp@example.com 34 | PWD 35 | CWD path 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /tests/data/test191: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | data in file 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | ftp 13 | 14 | 15 | FTP URL with ?-letters in username and password 16 | 17 | 18 | "ftp://use%3fr:pass%3fword@%HOSTIP:%FTPPORT/191" 19 | 20 | 21 | 22 | # Verify data after the test has been "shot" 23 | 24 | 25 | USER use?r 26 | PASS pass?word 27 | PWD 28 | EPSV 29 | TYPE I 30 | SIZE 191 31 | RETR 191 32 | QUIT 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /tests/data/test195: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | REPLY PASS 530 temporarily not available 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | ftp 13 | 14 | 15 | FTP response 530 after PASS, temporarily not allowed access 16 | 17 | 18 | ftp://%HOSTIP:%FTPPORT/195 19 | 20 | 21 | 22 | # Verify data after the test has been "shot" 23 | 24 | 25 | 67 26 | 27 | 28 | USER anonymous 29 | PASS ftp@example.com 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /tests/data/test196: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | REPLY PASS 430 temporarily not available 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | ftp 13 | 14 | 15 | FTP transient error, retry request once 16 | 17 | 18 | ftp://%HOSTIP:%FTPPORT/196 --retry 1 19 | 20 | 21 | 22 | # Verify data after the test has been "shot" 23 | 24 | # 67 is CURLE_LOGIN_DENIED 25 | 26 | 67 27 | 28 | 29 | USER anonymous 30 | PASS ftp@example.com 31 | USER anonymous 32 | PASS ftp@example.com 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /tests/data/test20: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | FAILURE 6 | non-existing host 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | none 20 | 21 | 22 | http 23 | 24 | 25 | attempt connect to non-existing host name 26 | 27 | 28 | non-existing-host.haxx.se. 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | 6 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /tests/data/test200: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | 6 | 7 | 8 | 9 | 10 | foo 11 | bar 12 | bar 13 | foo 14 | moo 15 | 16 | 17 | 18 | # Client-side 19 | 20 | 21 | file 22 | 23 | 24 | basic file:// file 25 | 26 | 27 | file://localhost/%PWD/log/test200.txt 28 | 29 | 30 | foo 31 | bar 32 | bar 33 | foo 34 | moo 35 | 36 | 37 | 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test201: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | 7 | 8 | # Client-side 9 | 10 | 11 | file 12 | 13 | 14 | missing file:// file 15 | 16 | 17 | file://localhost/%PWD/log/non-existant-file.txt 18 | 19 | 20 | 21 | # Verify data after the test has been "shot" 22 | 23 | 24 | 37 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /tests/data/test202: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | 7 | 8 | # Client-side 9 | 10 | 11 | file 12 | 13 | 14 | two file:// URLs to stdout 15 | 16 | 17 | file://localhost/%PWD/log/test202.txt FILE://localhost/%PWD/log/test202.txt 18 | 19 | 20 | contents in a single file 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | contents in a single file 28 | contents in a single file 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /tests/data/test203: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | foo 6 | bar 7 | bar 8 | foo 9 | moo 10 | 11 | 12 | 13 | # Client-side 14 | 15 | 16 | file 17 | 18 | 19 | file:/path URL with a single slash 20 | 21 | 22 | file:%PWD/log/test203.txt 23 | 24 | 25 | foo 26 | bar 27 | bar 28 | foo 29 | moo 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/data/test204: -------------------------------------------------------------------------------- 1 | 2 | # no Server-side 3 | 4 | # Client-side 5 | 6 | 7 | file 8 | 9 | 10 | "upload" with file:// 11 | 12 | 13 | file://localhost/%PWD/log/result204.txt -T log/upload204.txt 14 | 15 | 16 | data 17 | in 18 | file 19 | to 20 | write 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | data 28 | in 29 | file 30 | to 31 | write 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test205: -------------------------------------------------------------------------------- 1 | 2 | # no Server-side 3 | 4 | # Client-side 5 | 6 | 7 | file 8 | 9 | 10 | "upload" with file:// 11 | 12 | 13 | file://localhost/%PWD/log/nonexisting/result205.txt -T log/upload205.txt 14 | 15 | 16 | data 17 | in 18 | file 19 | to 20 | write 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | # 23 => CURLE_WRITE_ERROR 27 | 28 | 23 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /tests/data/test21: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FAILURE 5 | multiple HTTP requests 6 | 7 | 8 | # Server-side 9 | 10 | 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | http 18 | 19 | 20 | use curl with multiple request methods 21 | 22 | 23 | -I -d FOOO -F moo=moo localhost 24 | 25 | 26 | 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | 2 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test210: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | data blobb 6 | 7 | 8 | # data is sent to stdout 9 | 10 | 11 | # Client-side 12 | 13 | 14 | ftp 15 | 16 | 17 | Get two FTP files from the same remote dir: no second CWD 18 | 19 | 20 | ftp://%HOSTIP:%FTPPORT/a/path/210 ftp://%HOSTIP:%FTPPORT/a/path/210 21 | 22 | 23 | data blobb 24 | data blobb 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | USER anonymous 32 | PASS ftp@example.com 33 | PWD 34 | CWD a 35 | CWD path 36 | EPSV 37 | TYPE I 38 | SIZE 210 39 | RETR 210 40 | EPSV 41 | SIZE 210 42 | RETR 210 43 | QUIT 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test211: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | data blobb 6 | 7 | 8 | REPLY EPSV 500 no such command 9 | 10 | 11 | 12 | # Client-side 13 | 14 | 15 | ftp 16 | 17 | 18 | Get two FTP files with no remote EPSV support 19 | 20 | 21 | ftp://%HOSTIP:%FTPPORT/a/path/211 ftp://%HOSTIP:%FTPPORT/a/path/211 22 | 23 | 24 | data blobb 25 | data blobb 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | USER anonymous 33 | PASS ftp@example.com 34 | PWD 35 | CWD a 36 | CWD path 37 | EPSV 38 | PASV 39 | TYPE I 40 | SIZE 211 41 | RETR 211 42 | PASV 43 | SIZE 211 44 | RETR 211 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test214: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | HTTP/1.1 200 OK 7 | Date: Thu, 09 Nov 2010 14:49:00 GMT 8 | Content-Length: 6 9 | Content-Type: text/html 10 | Funny-head: yesyes 11 | 12 | -foo- 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | http 21 | 22 | 23 | HTTP URL with escaped { and } 24 | 25 | 26 | "http://%HOSTIP:%HTTPPORT/\{\}\/214" 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | ^User-Agent:.* 35 | 36 | 37 | GET /{}\/214 HTTP/1.1 38 | Host: %HOSTIP:%HTTPPORT 39 | Accept: */* 40 | 41 | 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test216: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | # Client-side 7 | 8 | 9 | ftp 10 | 11 | 12 | FTP upload two files to the same dir 13 | 14 | 15 | -T log/upload.216 ftp://%HOSTIP:%FTPPORT/a/path/216/ -T log/upload.216 ftp://%HOSTIP:%FTPPORT/a/path/216/%2e%2eanotherup 16 | 17 | 18 | upload this file twice 19 | 20 | 21 | 22 | # Verify data after the test has been "shot" 23 | 24 | 25 | USER anonymous 26 | PASS ftp@example.com 27 | PWD 28 | CWD a 29 | CWD path 30 | CWD 216 31 | EPSV 32 | TYPE I 33 | STOR upload.216 34 | EPSV 35 | STOR ..anotherup 36 | QUIT 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test225: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | # Client-side 9 | 10 | 11 | ftp 12 | 13 | 14 | FTP %0a-code in URL's name part 15 | 16 | 17 | ftp://bad%0auser:passwd@%HOSTIP:%FTPPORT/225%0a 18 | 19 | 20 | 21 | # Verify data after the test has been "shot" 22 | 23 | # 3 == CURLE_URL_MALFORMAT 24 | 25 | 3 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /tests/data/test226: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | ftp 13 | 14 | 15 | FTP %0d-code in URL's CWD part 16 | 17 | 18 | ftp://%HOSTIP:%FTPPORT/226%0d 19 | 20 | 21 | 22 | # Verify data after the test has been "shot" 23 | 24 | # 3 == CURLE_URL_MALFORMAT 25 | 26 | 3 27 | 28 | 29 | 30 | -------------------------------------------------------------------------------- /tests/data/test228: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | ACCT 6 | 7 | 8 | # Server-side 9 | 10 | 11 | data 12 | to 13 | see 14 | that FTP 15 | works 16 | so does it? 17 | 18 | 19 | REPLY PASS 332 please provide account name 20 | REPLY ACCT 230 thank you 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP RETR with ACCT 31 | 32 | 33 | ftp://%HOSTIP:%FTPPORT/228 --ftp-account "one count" 34 | 35 | 36 | 37 | 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | USER anonymous 42 | PASS ftp@example.com 43 | ACCT one count 44 | PWD 45 | EPSV 46 | TYPE I 47 | SIZE 228 48 | RETR 228 49 | QUIT 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test229: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | ACCT 6 | FAILURE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | REPLY PASS 332 please provide account name 13 | REPLY ACCT 532 bluah! 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | 23 | FTP RETR with bad ACCT 24 | 25 | 26 | ftp://%HOSTIP:%FTPPORT/229 --ftp-account "one count" 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | USER anonymous 34 | PASS ftp@example.com 35 | ACCT one count 36 | 37 | 38 | 11 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test23: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | unsupported protocol 5 | FAILURE 6 | 7 | 8 | # Server-side 9 | 10 | 11 | 12 | 13 | 14 | # Client-side 15 | 16 | 17 | http 18 | 19 | 20 | unsupported protocol:// URL 21 | 22 | 23 | htfp://%HOSTIP:%HTTPPORT/none.htfml 24 | 25 | 26 | 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | 1 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test231: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | # 16 bytes to check 5 | 6 | B01234567 7 | C01234567 8 | 9 | 10 | 11 | # Client-side 12 | 13 | 14 | file 15 | 16 | 17 | file:// with resume 18 | 19 | 20 | file://localhost/%PWD/log/test231.txt -C 10- 21 | 22 | 23 | A01234567 24 | B01234567 25 | C01234567 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /tests/data/test235: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | # Client-side 7 | 8 | 9 | ftp 10 | 11 | 12 | FTP resumed upload but no file present remotely 13 | 14 | 15 | ftp://%HOSTIP:%FTPPORT/235 -T log/upload235 -C - 16 | 17 | 18 | this is the *****crap******** that we're gonna upload 19 | 20 | worx? 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | USER anonymous 28 | PASS ftp@example.com 29 | PWD 30 | EPSV 31 | TYPE I 32 | SIZE 235 33 | STOR 235 34 | QUIT 35 | 36 | 37 | this is the *****crap******** that we're gonna upload 38 | 39 | worx? 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test247: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 213 20030409102659 5 | 6 | 7 | 8 | # Client-side 9 | 10 | 11 | ftp 12 | 13 | 14 | FTP upload time condition evaluates TRUE => skip upload 15 | 16 | 17 | data 18 | to 19 | see 20 | that FTP 21 | works 22 | so does it? 23 | 24 | 25 | ftp://%HOSTIP:%FTPPORT/247 -T log/test247.txt -z "apr 1 2005 08:00:00" 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | MDTM 247 38 | QUIT 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test248: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 213 20050409102659 5 | 6 | 7 | 8 | # Client-side 9 | 10 | 11 | ftp 12 | 13 | 14 | FTP upload time condition evaluates FALSE => upload anyway 15 | 16 | 17 | data 18 | to 19 | see 20 | that FTP 21 | works 22 | so does it? 23 | 24 | 25 | ftp://%HOSTIP:%FTPPORT/248 -T log/test248.txt -z "apr 1 2005 08:00:00" 26 | 27 | 28 | 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | data 33 | to 34 | see 35 | that FTP 36 | works 37 | so does it? 38 | 39 | 40 | USER anonymous 41 | PASS ftp@example.com 42 | PWD 43 | MDTM 248 44 | EPSV 45 | TYPE I 46 | STOR 248 47 | QUIT 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test26: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | 7 | 8 | # Server-side 9 | 10 | 11 | HTTP/1.0 200 Mooo swsclose 12 | Server: test-server/fake 13 | Connection: close 14 | 15 | *flopp* 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | http 23 | 24 | 25 | specify more -o than URLs 26 | 27 | 28 | http://%HOSTIP:%HTTPPORT/want/26 -o - -o - 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | ^User-Agent: curl.* 36 | 37 | 38 | GET /want/26 HTTP/1.1 39 | User-Agent: curl/7.8.1-pre3 (sparc-sun-solaris2.7) libcurl 7.8.1-pre3 (OpenSSL 0.9.6a) (krb4 enabled) 40 | Host: %HOSTIP:%HTTPPORT 41 | Accept: */* 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test261: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | EPSV 6 | RETR 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | hepp 14 | 15 | 16 | REPLY TYPE 226 Kind of on the positive side! 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | ftp 25 | 26 | 27 | FTP RETR with 226 response code to TYPE 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/261 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | USER anonymous 39 | PASS ftp@example.com 40 | PWD 41 | EPSV 42 | TYPE I 43 | SIZE 261 44 | RETR 261 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test270: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | data 13 | to 14 | see 15 | that FTP 16 | works 17 | so does it? 18 | 19 | 20 | PASVBADIP 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP RETR PASV --ftp-skip-pasv-ip 31 | 32 | 33 | ftp://%HOSTIP:%FTPPORT/270 --ftp-skip-pasv-ip --disable-epsv 34 | 35 | 36 | 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | USER anonymous 41 | PASS ftp@example.com 42 | PWD 43 | PASV 44 | TYPE I 45 | SIZE 270 46 | RETR 270 47 | QUIT 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test271: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | a chunk of 14 | data 15 | returned 16 | to client 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | tftp 25 | 26 | 27 | TFTP retrieve 28 | 29 | 30 | tftp://%HOSTIP:%TFTPPORT//271 --trace-ascii log/traceit 31 | 32 | 33 | 34 | # 35 | # Verify pseudo protocol after the test has been "shot" 36 | 37 | 38 | opcode: 1 39 | filename: /271 40 | mode: octet 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test272: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 213 20040101121212 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | ftp 20 | 21 | 22 | FTP timed conditioned get file with identical time stamp 23 | 24 | 25 | ftp://%HOSTIP:%FTPPORT/272 -z "2004 jan 1 12:12:12 UTC" 26 | 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | USER anonymous 34 | PASS ftp@example.com 35 | PWD 36 | MDTM 272 37 | QUIT 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test282: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK swsclose 14 | 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | http 23 | 24 | 25 | HTTP GET with no response body or headers 26 | 27 | 28 | http://%HOSTIP:%HTTPPORT/282 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | ^User-Agent:.* 37 | 38 | 39 | GET /282 HTTP/1.1 40 | Host: %HOSTIP:%HTTPPORT 41 | Accept: */* 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test283: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP RRQ 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | tftp 15 | 16 | 17 | TFTP retrieve on invalid file 18 | 19 | 20 | tftp://%HOSTIP:%TFTPPORT//invalid-file --trace-ascii log/traceit 21 | 22 | 23 | 24 | # 25 | # Verify pseudo protocol after the test has been "shot" 26 | 27 | 28 | 69 29 | 30 | 31 | opcode: 1 32 | filename: /invalid-file 33 | mode: octet 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/data/test285: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | TFTP 5 | TFTP WRQ 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | tftp 14 | 15 | 16 | TFTP send 17 | 18 | 19 | -T log/test285.txt tftp://%HOSTIP:%TFTPPORT// --trace-ascii log/traceit 20 | 21 | 22 | a chunk of 23 | data 24 | sent 25 | to server 26 | 27 | 28 | 29 | # 30 | # Verify pseudo protocol after the test has been "shot" 31 | 32 | 33 | a chunk of 34 | data 35 | sent 36 | to server 37 | 38 | 39 | opcode: 2 40 | filename: /test285.txt 41 | mode: octet 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test288: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | foo 6 | bar 7 | bar 8 | foo 9 | moo 10 | 11 | 12 | 13 | # Client-side 14 | 15 | 16 | none 17 | 18 | 19 | file 20 | 21 | 22 | file:// with (unsupported) proxy, authentication and range 23 | 24 | 25 | all_proxy=http://fake:user@%HOSTIP:%HTTPPORT/ 26 | 27 | 28 | file://localhost/%PWD/log/test288.txt 29 | 30 | 31 | foo 32 | bar 33 | bar 34 | foo 35 | moo 36 | 37 | 38 | 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test289: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | STOR 6 | Resume 7 | FAILURE 8 | 9 | 10 | 11 | # Client-side 12 | 13 | 14 | ftp 15 | 16 | 17 | FTP resume upload but denied access to local file 18 | 19 | 20 | ftp://%HOSTIP:%FTPPORT/289 -T log/illegal-nonexistent-file -C - 21 | 22 | 23 | 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 26 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /tests/data/test29: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | timeout 7 | FAILURE 8 | 9 | 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK swsclose 14 | Date: Thu, 09 Nov 2010 14:49:00 GMT 15 | Connection: close 16 | 17 | _data_result_data_ 18 | 19 | 20 | wait 10 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | http 28 | 29 | 30 | HTTP with 2 secs timeout 31 | 32 | 33 | http://%HOSTIP:%HTTPPORT/want/29 -m 2 34 | 35 | 36 | 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | ^User-Agent:.* 41 | 42 | 43 | GET /want/29 HTTP/1.1 44 | Host: %HOSTIP:%HTTPPORT 45 | Accept: */* 46 | 47 | 48 | 49 | 28 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test290: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | --max-filesize 6 | 7 | 8 | # Server-side 9 | 10 | 11 | 85 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | FTP download maximum filesize exceeded 22 | 23 | 24 | ftp://%HOSTIP:%FTPPORT/290 --max-filesize 30 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 63 32 | 33 | 34 | USER anonymous 35 | PASS ftp@example.com 36 | PWD 37 | EPSV 38 | TYPE I 39 | SIZE 290 40 | QUIT 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test291: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | RETR 6 | --max-filesize 7 | 8 | 9 | # Server-side 10 | 11 | 12 | data 13 | to 14 | see 15 | that FTP 16 | works 17 | so does it? 18 | 19 | 20 | 21 | # Client-side 22 | 23 | 24 | ftp 25 | 26 | 27 | FTP download maximum filesize not exceeded 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/291 --max-filesize 100 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | USER anonymous 38 | PASS ftp@example.com 39 | PWD 40 | EPSV 41 | TYPE I 42 | SIZE 291 43 | RETR 291 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test295: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | LIST 7 | ACCT 8 | FAILURE 9 | 10 | 11 | # 12 | # Server-side 13 | 14 | 15 | REPLY PASS 332 Give me an ACCT now 16 | REPLY PWD 530 No ACCT, go away 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | ftp 25 | 26 | 27 | FTP ACCT request without --ftp-account 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/295/ 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 67 39 | 40 | 41 | USER anonymous 42 | PASS ftp@example.com 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test296: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | CWD 7 | --ftp-method 8 | multicwd 9 | 10 | 11 | # 12 | # Server-side 13 | 14 | 15 | bla bla bla 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP CWD with --ftp-method multicwd 26 | 27 | 28 | --ftp-method multicwd ftp://%HOSTIP:%FTPPORT/first/second/third/296 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | CWD first 39 | CWD second 40 | CWD third 41 | EPSV 42 | TYPE I 43 | SIZE 296 44 | RETR 296 45 | QUIT 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test297: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | CWD 7 | --ftp-method 8 | singlecwd 9 | 10 | 11 | # 12 | # Server-side 13 | 14 | 15 | bla bla bla 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP CWD with --ftp-method singlecwd 26 | 27 | 28 | --ftp-method singlecwd ftp://%HOSTIP:%FTPPORT/first/second/third/297 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | CWD first/second/third 39 | EPSV 40 | TYPE I 41 | SIZE 297 42 | RETR 297 43 | QUIT 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test298: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | CWD 7 | --ftp-method 8 | nocwd 9 | 10 | 11 | # 12 | # Server-side 13 | 14 | 15 | bla bla bla 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | ftp 23 | 24 | 25 | FTP CWD with --ftp-method nocwd 26 | 27 | 28 | --ftp-method nocwd ftp://%HOSTIP:%FTPPORT/first/second/third/298 29 | 30 | 31 | 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER anonymous 36 | PASS ftp@example.com 37 | PWD 38 | EPSV 39 | TYPE I 40 | SIZE first/second/third/298 41 | RETR first/second/third/298 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test30: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | FAILURE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | http 19 | 20 | 21 | HTTP with no data in server reply 22 | 23 | 24 | http://%HOSTIP:%HTTPPORT/want/30 25 | 26 | 27 | 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | ^User-Agent:.* 32 | 33 | 34 | GET /want/30 HTTP/1.1 35 | Host: %HOSTIP:%HTTPPORT 36 | Accept: */* 37 | 38 | 39 | 40 | 52 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test300: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK 14 | Date: Thu, 09 Nov 2010 14:49:00 GMT 15 | Server: test-server/fake 16 | Content-Length: 7 17 | 18 | MooMoo 19 | 20 | 21 | 22 | # 23 | # Client-side 24 | 25 | 26 | SSL 27 | 28 | 29 | https 30 | 31 | 32 | simple HTTPS GET 33 | 34 | 35 | -k https://%HOSTIP:%HTTPSPORT/300 36 | 37 | 38 | 39 | # 40 | # Verify data after the test has been "shot" 41 | 42 | 43 | ^User-Agent:.* 44 | 45 | 46 | GET /300 HTTP/1.1 47 | Host: %HOSTIP:%HTTPSPORT 48 | Accept: */* 49 | 50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /tests/data/test302: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | HTTP CONNECT 7 | HTTP proxy 8 | FAILURE 9 | 10 | 11 | 12 | # Client-side 13 | 14 | 15 | SSL 16 | 17 | 18 | https 19 | 20 | 21 | HTTPS GET over HTTP proxy fails 22 | 23 | 24 | -k -U fake:user -x %HOSTIP:%HTTPPORT https://bad.fakeurl-to.test/slash/302 25 | 26 | 27 | 28 | # 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | 56 33 | 34 | 35 | ^User-Agent:.* 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test305: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | FAILURE 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | SSL 14 | 15 | 16 | https 17 | 18 | 19 | insecure HTTPS without permission 20 | 21 | 22 | https://%HOSTIP:%HTTPSPORT/want/305 --cacert moooo 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | ^User-Agent:.* 30 | 31 | 32 | 77 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /tests/data/test308: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | OpenSSL 15 | 16 | 17 | https 18 | 19 | 20 | simple HTTPS GET with invalid crypto engine 21 | 22 | 23 | --engine invalid-crypto-engine-xyzzy -k https://%HOSTIP:%HTTPSPORT/308 24 | 25 | 26 | 27 | # 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 53 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test311: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | PEM certificate 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | # 16 | # Client-side 17 | 18 | 19 | SSL 20 | 21 | 22 | https Server-localhost0h-sv.pem 23 | 24 | 25 | HTTPS wrong subjectAltName but right CN 26 | 27 | 28 | --cacert %SRCDIR/certs/EdelCurlRoot-ca.crt https://localhost:%HTTPSPORT/311 29 | 30 | # Ensure that we're running on localhost because we're checking the host name 31 | 32 | perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );" 33 | 34 | 35 | 36 | # 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | 51 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test312: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | PEM certificate 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | # 16 | # Client-side 17 | 18 | 19 | SSL 20 | 21 | 22 | https Server-localhost.nn-sv.pem 23 | 24 | 25 | HTTPS GET to localhost and null-prefixed CN cert 26 | 27 | 28 | --cacert %SRCDIR/certs/EdelCurlRoot-ca.crt https://localhost:%HTTPSPORT/312 29 | 30 | # Ensure that we're running on localhost because we're checking the host name 31 | 32 | perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );" 33 | 34 | 35 | 36 | # 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | 51 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test313: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | PEM certificate 7 | CRL 8 | 9 | 10 | 11 | # 12 | # Client-side 13 | 14 | 15 | SSL 16 | 17 | 18 | https Server-localhost-sv.pem 19 | 20 | 21 | CRL test 22 | 23 | 24 | --cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --crlfile %SRCDIR/certs/Server-localhost-sv.crl https://localhost:%HTTPSPORT/313 25 | 26 | # Ensure that we're running on localhost because we're checking the host name 27 | 28 | perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );" 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 60 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test321: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | TLS-SRP 6 | FAILURE 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | http+tls-srp 14 | 15 | 16 | TLS-SRP 17 | 18 | 19 | TLS-SRP with bad username and password 20 | 21 | 22 | --insecure --tlsauthtype SRP --tlsuser baduser --tlspassword badpass https://%HOSTIP:%HTTPTLSSRPPORT 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | 35 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test322: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | TLS-SRP 6 | FAILURE 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | http+tls-srp 14 | 15 | 16 | TLS-SRP 17 | 18 | 19 | TLS-SRP with bad password 20 | 21 | 22 | --insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword badpass https://%HOSTIP:%HTTPTLSSRPPORT 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | 35 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test323: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | TLS-SRP 6 | FAILURE 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | https 14 | 15 | 16 | TLS-SRP 17 | 18 | 19 | TLS-SRP to non-TLS-SRP server 20 | 21 | 22 | --insecure --tlsauthtype SRP --tlsuser jsmith --tlspassword badpass https://%HOSTIP:%HTTPSPORT/want/323 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | 35 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test324: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | TLS-SRP 6 | FAILURE 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | http+tls-srp 14 | 15 | 16 | TLS-SRP 17 | 18 | 19 | TLS-SRP with server cert checking 20 | 21 | # no --insecure 22 | --tlsauthtype SRP --tlsuser jsmith --tlspassword abc https://%HOSTIP:%HTTPTLSSRPPORT/want/323 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | 51 30 | 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test354: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | PASV 6 | RETR 7 | 8 | 9 | # Server-side 10 | 11 | 12 | data 13 | to 14 | see 15 | that FTP 16 | works 17 | so does it? 18 | 19 | 20 | REPLY USER 200 fine, proceed without password 21 | 22 | 23 | 24 | # Client-side 25 | 26 | 27 | ftp 28 | 29 | 30 | FTP without password 31 | 32 | 33 | ftp://%HOSTIP:%FTPPORT/354 34 | 35 | 36 | 37 | 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | USER anonymous 42 | PWD 43 | EPSV 44 | TYPE I 45 | SIZE 354 46 | RETR 354 47 | QUIT 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test37: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | FAILURE 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | http 21 | 22 | 23 | HTTP GET with nothing returned from server 24 | 25 | 26 | http://%HOSTIP:%HTTPPORT/37 27 | 28 | 29 | 30 | # 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 52 35 | 36 | 37 | ^User-Agent:.* 38 | 39 | 40 | GET /37 HTTP/1.1 41 | Host: %HOSTIP:%HTTPPORT 42 | Accept: */* 43 | 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test401: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTPS 5 | EPSV 6 | STOR 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | SSL 14 | 15 | 16 | ftps 17 | 18 | 19 | FTPS PASV upload file 20 | 21 | 22 | data 23 | to 24 | see 25 | that FTPS 26 | works 27 | so does it? 28 | 29 | 30 | -k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/401 -T log/test401.txt 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | data 38 | to 39 | see 40 | that FTPS 41 | works 42 | so does it? 43 | 44 | 45 | USER anonymous 46 | PASS ftp@example.com 47 | PBSZ 0 48 | PROT C 49 | PWD 50 | EPSV 51 | TYPE I 52 | STOR 401 53 | QUIT 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /tests/data/test402: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTPS 5 | FAILURE 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | SSL 13 | 14 | 15 | ftp 16 | 17 | 18 | FTP SSL required on non-SSL server 19 | 20 | 21 | -k --ftp-ssl-reqd ftp://%HOSTIP:%FTPPORT/402 22 | 23 | 24 | 25 | # Verify data after the test has been "shot" 26 | 27 | 28 | 64 29 | 30 | 31 | AUTH SSL 32 | AUTH TLS 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /tests/data/test404: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTPS 5 | FAILURE 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | SSL 13 | 14 | 15 | ftps 16 | 17 | 18 | FTPS with invalid cacert 19 | 20 | 21 | --ftp-ssl-control --cacert moooo ftps://%HOSTIP:%FTPSPORT/ 22 | 23 | 24 | 25 | # Verify data after the test has been "shot" 26 | 27 | 28 | 77 29 | 30 | 31 | 32 | -------------------------------------------------------------------------------- /tests/data/test405: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTPS 5 | FAILURE 6 | 7 | 8 | 9 | # Client-side 10 | 11 | 12 | SSL 13 | 14 | 15 | ftp 16 | 17 | 18 | FTPS operation to FTP port 19 | 20 | 21 | -m 5 -k ftps://%HOSTIP:%FTPPORT/path/to/file/405 22 | 23 | 24 | 25 | # Verify data after the test has been "shot" 26 | 27 | # error code 35 is CURLE_SSL_CONNECT_ERROR 28 | # GnuTLS seems to not fail on its handshake but instead times out which gives 29 | # error 28 30 | 31 | 35,28 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test409: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTPS 5 | EPSV 6 | STOR 7 | 8 | 9 | 10 | # Client-side 11 | 12 | 13 | SSL 14 | 15 | 16 | ftps 17 | 18 | 19 | FTPS PASV upload file 20 | 21 | 22 | data 23 | to 24 | see 25 | that FTP 26 | works 27 | so does it? 28 | 29 | 30 | -k --ftp-ssl-control ftps://%HOSTIP:%FTPSPORT/409 -T log/test409.txt 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | data 38 | to 39 | see 40 | that FTP 41 | works 42 | so does it? 43 | 44 | 45 | USER anonymous 46 | PASS ftp@example.com 47 | PBSZ 0 48 | PROT C 49 | PWD 50 | EPSV 51 | TYPE I 52 | STOR 409 53 | QUIT 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /tests/data/test41: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP FORMPOST 6 | FAILURE 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | # Client-side 14 | 15 | 16 | http 17 | 18 | 19 | HTTP formpost with missing file 20 | 21 | 22 | http://%HOSTIP:%HTTPPORT/want/41 -F moo=@boo 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | 26 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /tests/data/test47: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | HTTP/1.0 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | HTTP/1.0 200 OK swsclose 14 | Date: Thu, 09 Nov 2010 14:49:00 GMT 15 | Server: test-server/fake 16 | 17 | -foo- within foo -!foo- 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | http 26 | 27 | 28 | simple HTTP 1.0 GET 29 | 30 | 31 | http://%HOSTIP:%HTTPPORT/47 -0 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | ^User-Agent:.* 40 | 41 | 42 | GET /47 HTTP/1.0 43 | Host: %HOSTIP:%HTTPPORT 44 | Accept: */* 45 | 46 | 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /tests/data/test48: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP HEAD 6 | -G 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK 14 | Date: Thu, 09 Nov 2010 14:49:00 GMT 15 | Connection: close 16 | 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | http 25 | 26 | 27 | HTTP with -d and -G and -I 28 | 29 | 30 | -d "foo=moo&moo=poo" http://%HOSTIP:%HTTPPORT/48 -G -I 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | ^User-Agent:.* 39 | 40 | 41 | HEAD /48?foo=moo&moo=poo HTTP/1.1 42 | Host: %HOSTIP:%HTTPPORT 43 | Accept: */* 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test501: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | missing URL 5 | 6 | 7 | # 8 | # Server-side 9 | 10 | 11 | 12 | # Client-side 13 | 14 | 15 | none 16 | 17 | 18 | http 19 | 20 | # tool is what to use instead of 'curl' 21 | 22 | lib501 23 | 24 | 25 | 26 | simple libcurl attempt operation without URL set 27 | 28 | 29 | http://%HOSTIP:%HTTPPORT/501 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | 3 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /tests/data/test502: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FILE 5 | 6 | 7 | # 8 | # Server-side 9 | 10 | 11 | foo 12 | bar swsclose 13 | bar 14 | foo 15 | moo 16 | 17 | 18 | 19 | # Client-side 20 | 21 | 22 | file 23 | 24 | # tool is what to use instead of 'curl' 25 | 26 | lib502 27 | 28 | 29 | 30 | simple multi file:// get 31 | 32 | 33 | file://%PWD/log/test502.txt 34 | 35 | 36 | foo 37 | bar swsclose 38 | bar 39 | foo 40 | moo 41 | 42 | 43 | 44 | # Verify data after the test has been "shot" 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test504: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | HTTP proxy 7 | multi 8 | FAILURE 9 | 10 | 11 | 12 | # Server-side 13 | 14 | 15 | 16 | # Client-side 17 | 18 | 19 | none 20 | 21 | 22 | http 23 | 24 | # tool is what to use instead of 'curl' 25 | 26 | lib504 27 | 28 | 29 | 30 | simple multi through local proxy without listener 31 | 32 | 33 | http://%HOSTIP:%HTTPSPORT/504 %HOSTIP:55555 34 | 35 | 36 | 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | 100 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test507: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | multi 6 | FAILURE 7 | non-existing host 8 | 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | http 19 | 20 | 21 | multi interface get with non-existing host name 22 | 23 | 24 | lib507 25 | 26 | 27 | http://non-existing-host.haxx.se/ 28 | 29 | 30 | 31 | # Verify data after the test has been "shot" 32 | 33 | 34 | 6 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /tests/data/test511: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | REPLY MDTM 550 bluah you f00l! 7 | REPLY SIZE 550 bluah you f00l! 8 | 9 | 10 | 11 | # Client-side 12 | 13 | 14 | ftp 15 | 16 | # tool is what to use instead of 'curl' 17 | 18 | lib511 19 | 20 | 21 | 22 | FTP with FILETIME and NOBODY but missing file 23 | 24 | 25 | ftp://%HOSTIP:%FTPPORT/511 26 | 27 | 28 | 29 | # 30 | # Verify data after the test has been "shot" 31 | 32 | # CURLE_FTP_COULDNT_RETR_FILE 33 | 34 | 19 35 | 36 | 37 | USER anonymous 38 | PASS ftp@example.com 39 | PWD 40 | MDTM 511 41 | QUIT 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test512: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | HTTP/1.1 200 OK swsclose 7 | Date: Thu, 09 Nov 2010 14:49:00 GMT 8 | Server: yes 9 | Connection: close 10 | 11 | hello 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | http 19 | 20 | # tool is what to use instead of 'curl' 21 | 22 | lib512 23 | 24 | 25 | 26 | simple curl_easy_duplicate() test 27 | 28 | 29 | http://%HOSTIP:%HTTPPORT/512 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | ^User-Agent:.* 38 | 39 | 40 | GET /512 HTTP/1.1 41 | Host: %HOSTIP:%HTTPPORT 42 | Accept: */* 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test513: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | 7 | # Client-side 8 | 9 | 10 | http 11 | 12 | # tool is what to use instead of 'curl' 13 | 14 | lib513 15 | 16 | 17 | 18 | send HTTP POST using read callback that returns CURL_READFUNC_ABORT 19 | 20 | # the 1s post-command delay helps to prevent a spurious failure on s390 21 | 22 | http://%HOSTIP:%HTTPPORT/513 23 | 24 | 25 | 26 | # 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | POST /513 HTTP/1.1 31 | Host: %HOSTIP:%HTTPPORT 32 | Accept: */* 33 | Content-Length: 1 34 | Content-Type: application/x-www-form-urlencoded 35 | 36 | 37 | # 42 - aborted by callback 38 | 39 | 42 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test516: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | HTTP/1.1 200 OK swsclose 7 | Date: Thu, 09 Nov 2010 14:49:00 GMT 8 | Server: test-server/fake 9 | Content-Length: 3 10 | 11 | OK 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | http 19 | 20 | # tool is what to use instead of 'curl' 21 | 22 | lib516 23 | 24 | 25 | 26 | make a HTTPPOST set to NULL 27 | 28 | 29 | http://%HOSTIP:%HTTPPORT/516 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | ^User-Agent:.* 38 | 39 | 40 | POST /516 HTTP/1.1 41 | Host: %HOSTIP:%HTTPPORT 42 | Accept: */* 43 | Content-Length: 0 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test520: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | contents of file 7 | 8 | 9 | REPLY MDTM 213 20030405060708 10 | 11 | 12 | 13 | # Client-side 14 | 15 | 16 | ftp 17 | 18 | # tool is what to use instead of 'curl' 19 | 20 | lib520 21 | 22 | 23 | 24 | FTP RETR with FILETIME 25 | 26 | 27 | ftp://%HOSTIP:%FTPPORT/520 28 | 29 | 30 | 31 | # 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | MDTM 520 40 | EPSV 41 | TYPE I 42 | SIZE 520 43 | RETR 520 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test524: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | UPLOAD 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | # 15 | # Client-side 16 | 17 | 18 | ftp 19 | 20 | 21 | lib524 22 | 23 | 24 | FTP upload with target URL ending with slash 25 | 26 | # first URL then proxy 27 | 28 | ftp://%HOSTIP:%FTPPORT/path/to/ 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | USER anonymous 37 | PASS ftp@example.com 38 | PWD 39 | 40 | 41 | # 3 is CURLE_URL_MALFORMAT 42 | 43 | 3 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test538: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FTP 5 | FAILURE 6 | multi 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | REPLY PASS 314 bluah you f00l! 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | ftp 21 | 22 | # NOTE that we use the 504 tool for this case 23 | 24 | lib504 25 | 26 | 27 | FTP multi-interface download, failed login: PASS not valid 28 | 29 | 30 | ftp://%HOSTIP:%FTPPORT/538 31 | 32 | 33 | 34 | # Verify data after the test has been "shot" 35 | 36 | # ok, the error code here is supposed to be 100 for the fine case since 37 | # that's just how lib504.c is written 38 | 39 | 100 40 | 41 | 42 | USER anonymous 43 | PASS ftp@example.com 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test54: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | followlocation 7 | 8 | 9 | # Server-side 10 | 11 | 12 | HTTP/1.1 302 This is a weirdo text message swsclose 13 | Connection: close 14 | Location: 15 | 16 | This server reply is for testing 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | http 24 | 25 | 26 | HTTP with blank Location: 27 | 28 | 29 | http://%HOSTIP:%HTTPPORT/want/54 -L 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | ^User-Agent:.* 37 | 38 | 39 | GET /want/54 HTTP/1.1 40 | Host: %HOSTIP:%HTTPPORT 41 | Accept: */* 42 | 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test541: -------------------------------------------------------------------------------- 1 | 2 | # Server-side 3 | 4 | 5 | 6 | # Client-side 7 | 8 | 9 | ftp 10 | 11 | # tool is what to use instead of 'curl' 12 | 13 | lib541 14 | 15 | 16 | 17 | FTP upload and upload same file again without rewind 18 | 19 | 20 | ftp://%HOSTIP:%FTPPORT/541 log/upload541 21 | 22 | 23 | Contents 24 | of 25 | a file 26 | to verify 27 | ftp 28 | upload 29 | 30 | 31 | works? 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 39 | 40 | USER anonymous 41 | PASS ftp@example.com 42 | PWD 43 | EPSV 44 | TYPE I 45 | STOR 541 46 | EPSV 47 | STOR 541 48 | QUIT 49 | 50 | 51 | 52 | -------------------------------------------------------------------------------- /tests/data/test543: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | curl_easy_escape 5 | 6 | 7 | # Server-side 8 | 9 | # Client-side 10 | 11 | 12 | none 13 | 14 | 15 | lib543 16 | 17 | 18 | curl_easy_escape 19 | 20 | 21 | - 22 | 23 | 24 | 25 | 26 | # Verify data after the test has been "shot" 27 | # 28 | # There's no MTDM in the protocol here since this code doesn't ask for the 29 | # time/date of the file 30 | 31 | 32 | %9C%26K%3DI%04%A1%01%E0%D8%7C%20%B7%EFS%29%FA%1DW%E1 33 | 34 | 35 | 36 | -------------------------------------------------------------------------------- /tests/data/test556: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | 7 | 8 | 9 | 10 | 11 | HTTP/1.1 200 OK 12 | Server: test-server/fake 13 | Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT 14 | Content-Length: 6 15 | Connection: close 16 | 17 | -foo- 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | http 26 | 27 | 28 | lib556 29 | 30 | 31 | send and recv HTTP 32 | 33 | 34 | http://%HOSTIP:%HTTPPORT 35 | 36 | 37 | 38 | # 39 | # Verify data after the test has been "shot" 40 | 41 | 42 | ^User-Agent:.* 43 | 44 | 45 | GET /556 HTTP/1.2 46 | Host: ninja 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test557: -------------------------------------------------------------------------------- 1 | 2 | # 3 | # Server-side 4 | 5 | 6 | 7 | # Client-side 8 | 9 | 10 | none 11 | 12 | # tool is what to use instead of 'curl' 13 | 14 | lib557 15 | 16 | 17 | 18 | curl_mprintf() testing 19 | 20 | 21 | nothing 22 | 23 | 24 | 25 | # 26 | # Verify data after the test has been "shot" 27 | 28 | 29 | All curl_mprintf() unsigned short tests OK! 30 | All curl_mprintf() signed short tests OK! 31 | All curl_mprintf() unsigned int tests OK! 32 | All curl_mprintf() signed int tests OK! 33 | All curl_mprintf() unsigned long tests OK! 34 | All curl_mprintf() signed long tests OK! 35 | All curl_mprintf() curl_off_t tests OK! 36 | 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test560: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTPS 5 | HTTP GET 6 | multi 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | HTTP/1.1 200 OK 15 | Date: Thu, 09 Nov 2010 14:49:00 GMT 16 | Server: test-server/fake 17 | Content-Length: 7 18 | 19 | MooMoo 20 | 21 | 22 | 23 | # 24 | # Client-side 25 | 26 | 27 | SSL 28 | 29 | 30 | https 31 | 32 | 33 | lib560 34 | 35 | 36 | simple HTTPS GET with multi interface 37 | 38 | 39 | https://%HOSTIP:%HTTPSPORT/560 40 | 41 | 42 | 43 | # 44 | # Verify data after the test has been "shot" 45 | 46 | 47 | ^User-Agent:.* 48 | 49 | 50 | GET /560 HTTP/1.1 51 | Host: %HOSTIP:%HTTPSPORT 52 | Accept: */* 53 | 54 | 55 | 56 | 57 | -------------------------------------------------------------------------------- /tests/data/test567: -------------------------------------------------------------------------------- 1 | 2 | 3 | #Informational 4 | 5 | 6 | RTSP 7 | OPTIONS 8 | 9 | 10 | 11 | # Server-side 12 | 13 | 14 | RTSP/1.0 200 OK 15 | Server: RTSPD/libcurl-test 16 | CSeq: 1 17 | Public: DESCRIBE, OPTIONS, SETUP, TEARDOWN, PLAY, PAUSE 18 | Curl-Private: swsclose 19 | 20 | 21 | 22 | # Client-Side 23 | 24 | 25 | rtsp 26 | 27 | 28 | lib567 29 | 30 | 31 | 32 | simple RTSP OPTIONS command 33 | 34 | 35 | rtsp://%HOSTIP:%RTSPPORT/567 36 | 37 | 38 | 39 | 40 | 41 | OPTIONS rtsp://%HOSTIP:%RTSPPORT/567 RTSP/1.0 42 | CSeq: 1 43 | User-Agent: test567 44 | Test-Number: 567 45 | 46 | 47 | 48 | 49 | 50 | 51 | -------------------------------------------------------------------------------- /tests/data/test57: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | --write-out 7 | 8 | 9 | 10 | # Server-side 11 | 12 | 13 | HTTP/1.1 200 OK swsclose 14 | Funny-head: yesyes 15 | Content-Type: text/html; charset=ISO-8859-4 16 | 17 | 18 | 19 | 20 | # Client-side 21 | 22 | 23 | http 24 | 25 | 26 | HTTP content-type with spaces in 27 | 28 | 29 | -w "%{content_type}\n" http://%HOSTIP:%HTTPPORT/57 -o log/out57 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | text/html; charset=ISO-8859-4 37 | 38 | 39 | ^User-Agent:.* 40 | 41 | 42 | GET /57 HTTP/1.1 43 | Host: %HOSTIP:%HTTPPORT 44 | Accept: */* 45 | 46 | 47 | 48 | 49 | -------------------------------------------------------------------------------- /tests/data/test582: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | multi 6 | 7 | 8 | 9 | # Server-side 10 | 11 | 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | sftp 19 | 20 | 21 | lib582 22 | 23 | 24 | SFTP upload using multi interface 25 | 26 | 27 | Sftp://%HOSTIP:%SSHPORT%PWD/log/upload582.txt %PWD/log/file582.txt %USER: 28 | 29 | 30 | Moooooooooooo 31 | upload this 32 | 33 | 34 | 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 39 | 40 | 41 | 42 | Moooooooooooo 43 | upload this 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test59: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | HTTP/1.0 200 OK swsclose 13 | Date: Thu, 09 Nov 2010 14:49:00 GMT 14 | Server: test-server/fake 15 | 16 | hej 17 | 18 | 19 | 20 | # 21 | # Client-side 22 | 23 | 24 | http 25 | 26 | 27 | HTTP URL with slash but with "parameter" 28 | 29 | 30 | "http://%HOSTIP:%HTTPPORT?mooo/59" 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | ^User-Agent:.* 39 | 40 | 41 | GET /?mooo/59 HTTP/1.1 42 | Host: %HOSTIP:%HTTPPORT 43 | Accept: */* 44 | 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test600: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | Test data 13 | for ssh test 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | sftp 22 | 23 | 24 | SFTP retrieval 25 | 26 | 27 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file600.txt --insecure 28 | 29 | 30 | Test data 31 | for ssh test 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | disable 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test601: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | Test data 13 | for ssh test 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | scp 22 | 23 | 24 | SCP retrieval 25 | 26 | 27 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file601.txt --insecure 28 | 29 | 30 | Test data 31 | for ssh test 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | disable 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test602: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | SFTP put 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | # 15 | # Client-side 16 | 17 | 18 | sftp 19 | 20 | 21 | SFTP put 22 | 23 | 24 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file602.txt sftp://%HOSTIP:%SSHPORT%PWD/log/upload.602 --insecure 25 | 26 | 27 | Test data 28 | for ssh upload test 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | Test data 37 | for ssh upload test 38 | 39 | 40 | disable 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test603: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | SCP upload 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | # 15 | # Client-side 16 | 17 | 18 | scp 19 | 20 | 21 | SCP upload 22 | 23 | 24 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file603.txt scp://%HOSTIP:%SSHPORT%PWD/log/upload.603 --insecure 25 | 26 | 27 | Test data 28 | for ssh upload test 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | Test data 37 | for ssh upload test 38 | 39 | 40 | disable 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test604: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | sftp 14 | 15 | 16 | SFTP retrieval of nonexistent file 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 78 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /tests/data/test605: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | scp 14 | 15 | 16 | SCP retrieval of nonexistent file 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 79 28 | 29 | 30 | disable 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test606: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | sftp 14 | 15 | 16 | SFTP invalid user login 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u not-a-valid-user: sftp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 67 28 | 29 | 30 | disable 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test607: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | scp 14 | 15 | 16 | SCP invalid user login 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u not-a-valid-user: scp://%HOSTIP:%SSHPORT%PWD/not-a-valid-file-moooo --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 67 28 | 29 | 30 | disable 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test609: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | post-quote 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | Test file for mkdir test 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | sftp 23 | 24 | 25 | SFTP post-quote mkdir failure 26 | 27 | 28 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "-mkdir %PWD/log/file609.txt" sftp://%HOSTIP:%SSHPORT%PWD/log/file609.txt --insecure 29 | 30 | 31 | Test file for mkdir test 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | 21 40 | 41 | 42 | disable 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test616: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | zero-length 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | sftp 21 | 22 | 23 | SFTP retrieval of empty file 24 | 25 | 26 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file616.txt --insecure 27 | 28 | 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | disable 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test617: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | zero-length 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | scp 21 | 22 | 23 | SCP retrieval of empty file 24 | 25 | 26 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file617.txt --insecure 27 | 28 | 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | disable 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test618: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | 6 | 7 | 8 | # 9 | # Client-side 10 | 11 | 12 | sftp 13 | 14 | 15 | SFTP retrieval of two files 16 | 17 | 18 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file618.txt sftp://%HOSTIP:%SSHPORT%PWD/log/file618.txt --insecure 19 | 20 | 21 | Test data 22 | for ssh test 23 | 24 | 25 | 26 | # 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | disable 31 | 32 | 33 | Test data 34 | for ssh test 35 | Test data 36 | for ssh test 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test619: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | 6 | 7 | 8 | # 9 | # Client-side 10 | 11 | 12 | scp 13 | 14 | 15 | SCP retrieval of two files 16 | 17 | 18 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/file619.txt scp://%HOSTIP:%SSHPORT%PWD/log/file619.txt --insecure 19 | 20 | 21 | Test data 22 | for ssh test 23 | 24 | 25 | 26 | # 27 | # Verify data after the test has been "shot" 28 | 29 | 30 | disable 31 | 32 | 33 | Test data 34 | for ssh test 35 | Test data 36 | for ssh test 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test620: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | sftp 14 | 15 | 16 | SFTP retrieval of missing file followed by good file 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/not-a-valid-file-moooo sftp://%HOSTIP:%SSHPORT%PWD/log/file620.txt --insecure 20 | 21 | 22 | Test data 23 | for ssh test 24 | 25 | 26 | 27 | # 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | disable 32 | 33 | 34 | Test data 35 | for ssh test 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /tests/data/test621: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | scp 14 | 15 | 16 | SCP retrieval of missing file followed by good file 17 | 18 | 19 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/not-a-valid-file-moooo scp://%HOSTIP:%SSHPORT%PWD/log/file621.txt --insecure 20 | 21 | 22 | Test data 23 | for ssh test 24 | 25 | 26 | 27 | # 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | disable 32 | 33 | 34 | Test data 35 | for ssh test 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /tests/data/test622: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | SFTP put 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | # 16 | # Client-side 17 | 18 | 19 | sftp 20 | 21 | 22 | SFTP put failure 23 | 24 | 25 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file622.txt sftp://%HOSTIP:%SSHPORT%PWD/log/nonexistent-directory/nonexistent-file --insecure 26 | 27 | 28 | Test data 29 | for ssh upload test 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | 78 38 | 39 | 40 | disable 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test623: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | SCP upload 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | # 16 | # Client-side 17 | 18 | 19 | scp 20 | 21 | 22 | SCP upload failure 23 | 24 | 25 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -T log/file623.txt scp://%HOSTIP:%SSHPORT%PWD/log/nonexistent-directory/nonexistent-file --insecure 26 | 27 | 28 | Test data 29 | for ssh upload test 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | 79 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test626: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | pre-quote 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | # 16 | # Client-side 17 | 18 | 19 | sftp 20 | 21 | 22 | SFTP invalid quote command 23 | 24 | 25 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -Q "invalid-command foo bar" sftp://%HOSTIP:%SSHPORT%PWD/log/file626.txt --insecure 26 | 27 | 28 | Test file for rename test 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 21 37 | 38 | 39 | disable 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test627: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | quote 6 | NOBODY 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | sftp 22 | 23 | 24 | SFTP quote remove file with NOBODY 25 | 26 | 27 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: -I -Q "rm %PWD/log/file627.txt" sftp://%HOSTIP:%SSHPORT --insecure 28 | 29 | 30 | perl %SRCDIR/libtest/test610.pl gone %PWD/log/test627.txt 31 | 32 | 33 | Dummy test file for remove test 34 | 35 | 36 | 37 | # 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | disable 42 | 43 | 44 | 45 | 46 | 47 | -------------------------------------------------------------------------------- /tests/data/test628: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | sftp 14 | 15 | 16 | SFTP invalid user login (password authentication) 17 | 18 | 19 | -u not-a-valid-user: sftp://%HOSTIP:%SSHPORT%PWD/irrelevant-file --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 67 28 | 29 | 30 | disable 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test629: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Client-side 11 | 12 | 13 | scp 14 | 15 | 16 | SCP invalid user login (password authentication) 17 | 18 | 19 | -u not-a-valid-user: scp://%HOSTIP:%SSHPORT%PWD/irrelevant-file --insecure 20 | 21 | 22 | 23 | # 24 | # Verify data after the test has been "shot" 25 | 26 | 27 | 67 28 | 29 | 30 | disable 31 | 32 | 33 | 34 | -------------------------------------------------------------------------------- /tests/data/test630: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | server key check 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | sftp 15 | 16 | 17 | SFTP incorrect host key 18 | 19 | 20 | --hostpubmd5 00000000000000000000000000000000 --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure 21 | 22 | 23 | 24 | # 25 | # Verify data after the test has been "shot" 26 | 27 | 28 | 51 29 | 30 | 31 | disable 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test631: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SCP 5 | FAILURE 6 | server key check 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | scp 15 | 16 | 17 | SCP incorrect host key 18 | 19 | 20 | --hostpubmd5 00000000000000000000000000000000 --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure 21 | 22 | 23 | 24 | # 25 | # Verify data after the test has been "shot" 26 | 27 | 28 | 51 29 | 30 | 31 | disable 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test632: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | FAILURE 6 | server key check 7 | 8 | 9 | 10 | # 11 | # Client-side 12 | 13 | 14 | none 15 | 16 | 17 | sftp 18 | 19 | 20 | SFTP syntactically invalid host key 21 | 22 | 23 | --hostpubmd5 00 --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/irrelevant-file --insecure 24 | 25 | 26 | 27 | # 28 | # Verify data after the test has been "shot" 29 | 30 | 31 | 2 32 | 33 | 34 | 35 | -------------------------------------------------------------------------------- /tests/data/test633: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | Range 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | data 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | sftp 22 | 23 | 24 | SFTP retrieval with byte range 25 | 26 | 27 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file633.txt -r 5-9 --insecure 28 | 29 | 30 | Test data 31 | for ssh test 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | disable 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test634: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | Range 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | data 14 | for ssh test 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | sftp 23 | 24 | 25 | SFTP retrieval with byte range past end of file 26 | 27 | 28 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file634.txt -r 5-99 --insecure 29 | 30 | 31 | Test data 32 | for ssh test 33 | 34 | 35 | 36 | # 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | disable 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test635: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | Range 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | ssh test 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | sftp 22 | 23 | 24 | SFTP retrieval with byte range relative to end of file 25 | 26 | 27 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file635.txt -r -9 --insecure 28 | 29 | 30 | Test data 31 | for ssh test 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | disable 40 | 41 | 42 | 43 | -------------------------------------------------------------------------------- /tests/data/test636: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | Range 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | data 14 | for ssh test 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | sftp 23 | 24 | 25 | SFTP retrieval with X- byte range 26 | 27 | 28 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file636.txt -r 5- --insecure 29 | 30 | 31 | Test data 32 | for ssh test 33 | 34 | 35 | 36 | # 37 | # Verify data after the test has been "shot" 38 | 39 | 40 | disable 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test637: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SFTP 5 | Range 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | 14 | 15 | 16 | # 17 | # Client-side 18 | 19 | 20 | sftp 21 | 22 | 23 | SFTP retrieval with invalid X- range 24 | 25 | 26 | --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%PWD/log/file637.txt -r 99- --insecure 27 | 28 | 29 | Test data 30 | for ssh test 31 | 32 | 33 | 34 | # 35 | # Verify data after the test has been "shot" 36 | 37 | 38 | 36 39 | 40 | 41 | disable 42 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /tests/data/test66: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | HTTP 5 | HTTP GET 6 | 7 | 8 | # Server-side 9 | 10 | 11 | no headers swsclose 12 | 13 | 14 | 15 | # Client-side 16 | 17 | 18 | http 19 | 20 | 21 | HTTP GET without headers in the response 22 | 23 | 24 | http://%HOSTIP:%HTTPPORT/66 25 | 26 | 27 | 28 | # 29 | # Verify data after the test has been "shot" 30 | 31 | 32 | ^User-Agent:.* 33 | 34 | 35 | GET /66 HTTP/1.1 36 | Host: %HOSTIP:%HTTPPORT 37 | Accept: */* 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test702: -------------------------------------------------------------------------------- 1 | 2 | #based off 19 3 | 4 | 5 | HTTP 6 | SOCKS4 7 | connect to non-listen 8 | FAILURE 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | socks4 21 | 22 | 23 | http 24 | 25 | 26 | Attempt connect to non-listening HTTP server via SOCKS4 proxy 27 | 28 | 29 | --socks4 %HOSTIP:%SOCKSPORT http://%HOSTIP:60000 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 7 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test703: -------------------------------------------------------------------------------- 1 | 2 | #based off 19 3 | 4 | 5 | HTTP 6 | SOCKS5 7 | connect to non-listen 8 | FAILURE 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | socks5 21 | 22 | 23 | http 24 | 25 | 26 | Attempt connect to non-listening HTTP server via SOCKS5 proxy 27 | 28 | 29 | --socks5 %HOSTIP:%SOCKSPORT http://%HOSTIP:60000 30 | 31 | 32 | 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 7 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test704: -------------------------------------------------------------------------------- 1 | 2 | #based off 19 3 | 4 | 5 | HTTP 6 | SOCKS4 7 | connect to non-listen 8 | FAILURE 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | http 21 | 22 | 23 | Attempt connect to non-listening SOCKS4 proxy 24 | 25 | 26 | --socks4 %HOSTIP:60000 http://%HOSTIP:%HTTPPORT/704 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 7 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/data/test705: -------------------------------------------------------------------------------- 1 | 2 | #based off 19 3 | 4 | 5 | HTTP 6 | SOCKS5 7 | connect to non-listen 8 | FAILURE 9 | 10 | 11 | # Server-side 12 | 13 | 14 | 15 | 16 | 17 | # Client-side 18 | 19 | 20 | http 21 | 22 | 23 | Attempt connect to non-listening SOCKS5 proxy 24 | 25 | 26 | --socks5 %HOSTIP:60000 http://%HOSTIP:%HTTPPORT/705 27 | 28 | 29 | 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 7 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/data/test76: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | FAILURE 5 | 6 | 7 | # 8 | # Server-side 9 | 10 | 11 | 12 | # 13 | # Client-side 14 | 15 | 16 | none 17 | 18 | 19 | http 20 | 21 | 22 | HTTP, -O with no file name part in the URL 23 | 24 | 25 | http://%HOSTIP:%HTTPPORT/76/ -O 26 | 27 | 28 | 29 | # 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | ^User-Agent:.* 34 | 35 | 36 | 23 37 | 38 | 39 | 40 | -------------------------------------------------------------------------------- /tests/data/test800: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | RETR 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | From: me@somewhere 14 | To: fake@nowhere 15 | 16 | body 17 | 18 | -- 19 | yours sincerely 20 | 21 | 22 | 23 | # 24 | # Client-side 25 | 26 | 27 | pop3 28 | 29 | 30 | POP3 RETR 31 | 32 | 33 | pop3://%HOSTIP:%POP3PORT/800 -u user:secret 34 | 35 | 36 | 37 | # 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | USER user 42 | PASS secret 43 | RETR 800 44 | QUIT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test801: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | IMAP 5 | FETCH 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | From: me@somewhere 14 | To: fake@nowhere 15 | 16 | body 17 | 18 | -- 19 | yours sincerely 20 | 21 | 22 | 23 | # 24 | # Client-side 25 | 26 | 27 | imap 28 | 29 | 30 | IMAP FETCH 31 | 32 | 33 | imap://%HOSTIP:%IMAPPORT/801 -u user:secret 34 | 35 | 36 | 37 | # 38 | # Verify data after the test has been "shot" 39 | 40 | 41 | B LOGIN user secret 42 | C SELECT 801 43 | D FETCH 1 BODY[TEXT] 44 | A LOGOUT 45 | 46 | 47 | 48 | -------------------------------------------------------------------------------- /tests/data/test802: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | SMTP 5 | 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | 13 | # 14 | # Client-side 15 | 16 | 17 | smtp 18 | 19 | 20 | SMTP 21 | 22 | 23 | From: different 24 | To: another 25 | 26 | body 27 | 28 | 29 | smtp://%HOSTIP:%SMTPPORT/user --mail-rcpt 802@foo --mail-rcpt 802@foobar.example --mail-from 802@from -T - 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | EHLO user 38 | MAIL FROM:<802@from> 39 | RCPT TO:<802@foo> 40 | RCPT TO:<802@foobar.example> 41 | DATA 42 | QUIT 43 | 44 | 45 | From: different 46 | To: another 47 | 48 | body 49 | 50 | . 51 | 52 | 53 | 54 | -------------------------------------------------------------------------------- /tests/data/test808: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | LIST 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | REPLY LIST +OK 808 100 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | pop3 22 | 23 | 24 | POP3 LIST one message 25 | 26 | 27 | pop3://%HOSTIP:%POP3PORT/808 -l -u user:secret 28 | 29 | 30 | 31 | # 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | USER user 36 | PASS secret 37 | LIST 808 38 | QUIT 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /tests/data/test809: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | LIST 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | REPLY LIST -ERR no such message 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | pop3 23 | 24 | 25 | POP3 LIST invalid message 26 | 27 | 28 | pop3://%HOSTIP:%POP3PORT/809 -l -u user:secret 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 78 37 | 38 | 39 | USER user 40 | PASS secret 41 | LIST 809 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test810: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | LIST 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | # When doing LIST, we get the default list output hard-coded in the test 13 | # POP3 server 14 | 15 | 1 100 16 | 2 4294967400 17 | 4 200 18 | 19 | 20 | 21 | # 22 | # Client-side 23 | 24 | 25 | pop3 26 | 27 | 28 | POP3 LIST messages 29 | 30 | 31 | pop3://%HOSTIP:%POP3PORT/ -u user:secret 32 | 33 | 34 | 35 | # 36 | # Verify data after the test has been "shot" 37 | 38 | 39 | USER user 40 | PASS secret 41 | LIST 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test811: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | LIST 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | REPLY LIST +OK but no messages\r\n. 14 | 15 | 16 | 17 | 18 | 19 | # 20 | # Client-side 21 | 22 | 23 | pop3 24 | 25 | 26 | POP3 LIST no messages available 27 | 28 | 29 | pop3://%HOSTIP:%POP3PORT/ -u user:secret 30 | 31 | 32 | 33 | # 34 | # Verify data after the test has been "shot" 35 | 36 | 37 | USER user 38 | PASS secret 39 | LIST 40 | QUIT 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test812: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | RETR 6 | FAILURE 7 | 8 | 9 | 10 | # 11 | # Server-side 12 | 13 | 14 | REPLY RETR -ERR no such message 15 | 16 | 17 | 18 | # 19 | # Client-side 20 | 21 | 22 | pop3 23 | 24 | 25 | POP3 RETR invalid message 26 | 27 | 28 | pop3://%HOSTIP:%POP3PORT/812 -u user:secret 29 | 30 | 31 | 32 | # 33 | # Verify data after the test has been "shot" 34 | 35 | 36 | 56 37 | 38 | 39 | USER user 40 | PASS secret 41 | RETR 812 42 | QUIT 43 | 44 | 45 | 46 | -------------------------------------------------------------------------------- /tests/data/test813: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | POP3 5 | FAILURE 6 | 7 | 8 | 9 | # 10 | # Server-side 11 | 12 | 13 | REPLY PASS -ERR invalid login 14 | 15 | 16 | 17 | # 18 | # Client-side 19 | 20 | 21 | pop3 22 | 23 | 24 | POP3 invalid login 25 | 26 | 27 | pop3://%HOSTIP:%POP3PORT/813 -u user:wrong 28 | 29 | 30 | 31 | # 32 | # Verify data after the test has been "shot" 33 | 34 | 35 | 67 36 | 37 | 38 | USER user 39 | PASS wrong 40 | QUIT 41 | 42 | 43 | 44 | -------------------------------------------------------------------------------- /tests/data/test87: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | [] range 5 | FAILURE 6 | 7 | 8 | # 9 | # Server-side 10 | 11 | 12 | # 13 | # Client-side 14 | 15 | 16 | none 17 | 18 | 19 | http 20 | 21 | 22 | urlglob with bad -o #[num] usage 23 | 24 | 25 | "http://%HOSTIP:%HTTPPORT/[870001-870003]" -o "log/dumpit#2.dump" 26 | 27 | 28 | 29 | # 30 | # Verify data after the test has been "shot" 31 | 32 | 33 | 2 34 | 35 | 36 | 37 | -------------------------------------------------------------------------------- /tests/libtest/.gitignore: -------------------------------------------------------------------------------- 1 | chkhostname 2 | lib5[0-9][0-9] 3 | 4 | -------------------------------------------------------------------------------- /tests/libtest/test307.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env perl 2 | # Determine if the given curl executable supports the 'openssl' SSL engine 3 | if ( $#ARGV != 0 ) 4 | { 5 | print "Usage: $0 curl-executable\n"; 6 | exit 3; 7 | } 8 | if (!open(CURL, "@ARGV[0] -s --engine list|")) 9 | { 10 | print "Can't get SSL engine list\n"; 11 | exit 2; 12 | } 13 | while( ) 14 | { 15 | exit 0 if ( /openssl/ ); 16 | } 17 | close CURL; 18 | print "openssl engine not supported\n"; 19 | exit 1; 20 | -------------------------------------------------------------------------------- /tests/libtest/test75.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env perl 2 | # Check that the length of a given URL is correct 3 | if ( $#ARGV != 1 ) 4 | { 5 | print "Usage: $0 string length\n"; 6 | exit 3; 7 | } 8 | if (length(@ARGV[0]) != @ARGV[1]) 9 | { 10 | print "Given host IP and port not supported\n"; 11 | exit 1; 12 | } 13 | exit 0; 14 | -------------------------------------------------------------------------------- /tests/server/.gitignore: -------------------------------------------------------------------------------- 1 | getpart 2 | resolve 3 | rtspd 4 | sockfilt 5 | sws 6 | tftpd 7 | -------------------------------------------------------------------------------- /tests/server/base64.pl: -------------------------------------------------------------------------------- 1 | #!/usr/bin/perl 2 | 3 | use MIME::Base64 qw(encode_base64); 4 | 5 | my $buf; 6 | while(read(STDIN, $buf, 60*57)) { 7 | my $enc = encode_base64($buf); 8 | print "$enc"; 9 | } 10 | -------------------------------------------------------------------------------- /tests/unit/.gitignore: -------------------------------------------------------------------------------- 1 | unit13[0-9][0-9] 2 | -------------------------------------------------------------------------------- /tests/unit/Makefile.inc: -------------------------------------------------------------------------------- 1 | # these files are used in every single unit test program 2 | 3 | UNITFILES = curlcheck.h 4 | 5 | # These are all unit test programs 6 | noinst_PROGRAMS = unit1300 unit1301 unit1302 unit1303 unit1304 unit1305 unit1307 7 | 8 | unit1300_SOURCES = unit1300.c $(UNITFILES) 9 | unit1301_SOURCES = unit1301.c $(UNITFILES) 10 | unit1302_SOURCES = unit1302.c $(UNITFILES) 11 | unit1303_SOURCES = unit1303.c $(UNITFILES) 12 | unit1304_SOURCES = unit1304.c $(UNITFILES) 13 | unit1305_SOURCES = unit1305.c $(UNITFILES) 14 | unit1307_SOURCES = unit1307.c $(UNITFILES) 15 | -------------------------------------------------------------------------------- /winbuild/gen_resp_file.bat: -------------------------------------------------------------------------------- 1 | @echo OFF 2 | @del %OUTFILE% 3 | @echo %MACRO_NAME% = \> %OUTFILE% 4 | @for %%i in (%*) do @echo %LIBCURL_DIROBJ%/%%i \>> %OUTFILE% 5 | @echo. >> %OUTFILE% 6 | :END 7 | --------------------------------------------------------------------------------